@aivenio/aquarium 6.1.0 → 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 (38) 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.d.ts +5 -0
  12. package/dist/src/molecules/CommandPalette/CommandPaletteProvider.js +102 -27
  13. package/dist/src/molecules/CommandPalette/findSubCommands.d.ts +13 -0
  14. package/dist/src/molecules/CommandPalette/findSubCommands.js +65 -0
  15. package/dist/src/molecules/CommandPalette/types.d.ts +31 -1
  16. package/dist/src/molecules/CommandPalette/types.js +10 -1
  17. package/dist/src/molecules/DataList/DataList.d.ts +5 -1
  18. package/dist/src/molecules/DataList/DataList.js +3 -3
  19. package/dist/src/molecules/Popover/Popover.d.ts +3 -0
  20. package/dist/src/molecules/Popover/Popover.js +1 -1
  21. package/dist/src/molecules/Section/Section.d.ts +9 -0
  22. package/dist/src/molecules/Section/Section.js +13 -6
  23. package/dist/src/molecules/SegmentedControl/SegmentedControl.js +3 -3
  24. package/dist/src/molecules/Table/Table.d.ts +3 -0
  25. package/dist/src/molecules/Table/Table.js +4 -1
  26. package/dist/src/molecules/Tabs/Tabs.d.ts +4 -0
  27. package/dist/src/molecules/Tabs/Tabs.js +3 -3
  28. package/dist/src/molecules/TagLabel/TagLabel.d.ts +1 -1
  29. package/dist/src/molecules/TagLabel/TagLabel.js +1 -1
  30. package/dist/src/molecules/Typography/Typography.d.ts +3 -0
  31. package/dist/src/molecules/Typography/Typography.js +1 -1
  32. package/dist/src/tokens/tokens.json +3 -3
  33. package/dist/styles.css +40 -28
  34. package/dist/system.cjs +838 -673
  35. package/dist/system.mjs +793 -626
  36. package/dist/tokens.json +3 -3
  37. package/dist/tsconfig.module.tsbuildinfo +1 -1
  38. 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9sZWN1bGVzL0NvbW1hbmRQYWxldHRlL0NvbW1hbmRQYWxldHRlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxVQUFVLElBQUksY0FBYyxFQUM1QixrQkFBa0IsRUFDbEIsTUFBTSxJQUFJLFVBQVUsRUFDcEIsUUFBUSxJQUFJLFlBQVksRUFFeEIsV0FBVyxJQUFJLGVBQWUsR0FFL0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRHLE9BQU8sWUFBWSxNQUFNLHdCQUF3QixDQUFDO0FBRWxELE9BQU8sRUFDTCxzQkFBc0IsRUFHdEIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0Qiw0QkFBNEIsR0FDN0IsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBVTNFLE1BQU0sUUFBUSxHQUE0QixDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTtJQUN6RCxNQUFNLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUNuQixNQUFNLENB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
@@ -27,6 +27,11 @@ export type CommandPaletteProviderProps = {
27
27
  placeholder?: string;
28
28
  /** Content to show when no commands match the search query. */
29
29
  emptyState?: React.ReactNode;
30
+ /**
31
+ * When true, the palette is disabled: the global shortcut is ignored, `open()` and `toggle()`
32
+ * from `useCommandPalette` become no-ops, and the overlay is not rendered.
33
+ */
34
+ isDisabled?: boolean;
30
35
  /** Called when the palette opens or closes. */
31
36
  onOpenChange?: (isOpen: boolean) => void;
32
37
  /** Called when the search input value changes. */
@@ -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
  }
@@ -50,10 +76,21 @@ const CommandPaletteQueryContext = createContext('');
50
76
  export const useCommandPaletteQuery = () => useContext(CommandPaletteQueryContext);
51
77
  export { CommandPaletteQueryContext };
52
78
  const DEFAULT_SHORTCUT = { key: 'k', metaKey: true };
53
- export const CommandPaletteProvider = ({ children, shortcut = DEFAULT_SHORTCUT, marginTop = '100px', placeholder = 'Search commands...', emptyState, onOpenChange, onInputChange, }) => {
54
- const [state, dispatch] = useReducer(reducer, { registrations: [], isOpen: false });
79
+ export const CommandPaletteProvider = ({ children, shortcut = DEFAULT_SHORTCUT, marginTop = '100px', placeholder = 'Search commands...', emptyState, isDisabled = false, onOpenChange, onInputChange, }) => {
80
+ const [state, dispatch] = useReducer(reducer, { registrations: [], isOpen: false, levelStack: [ROOT_LEVEL] });
81
+ const guardedDispatch = useCallback((action) => {
82
+ if (isDisabled && action.type === ActionTypes.Open) {
83
+ return;
84
+ }
85
+ dispatch(action);
86
+ }, [isDisabled]);
55
87
  useEffect(() => {
56
- if (shortcut === null) {
88
+ if (isDisabled && state.isOpen) {
89
+ dispatch({ type: ActionTypes.Close });
90
+ }
91
+ }, [isDisabled, state.isOpen]);
92
+ useEffect(() => {
93
+ if (shortcut === null || isDisabled) {
57
94
  return;
58
95
  }
59
96
  const handleKeyDown = (e) => {
@@ -64,7 +101,7 @@ export const CommandPaletteProvider = ({ children, shortcut = DEFAULT_SHORTCUT,
64
101
  };
65
102
  document.addEventListener('keydown', handleKeyDown);
66
103
  return () => document.removeEventListener('keydown', handleKeyDown);
67
- }, [shortcut, state.isOpen]);
104
+ }, [shortcut, state.isOpen, isDisabled]);
68
105
  const isInitialMount = useRef(true);
69
106
  useEffect(() => {
70
107
  if (isInitialMount.current) {
@@ -74,46 +111,84 @@ export const CommandPaletteProvider = ({ children, shortcut = DEFAULT_SHORTCUT,
74
111
  onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(state.isOpen);
75
112
  // eslint-disable-next-line react-hooks/exhaustive-deps
76
113
  }, [state.isOpen]);
77
- return (React.createElement(CommandPaletteContext.Provider, { value: [state, dispatch] },
114
+ return (React.createElement(CommandPaletteContext.Provider, { value: [state, guardedDispatch] },
78
115
  children,
79
- React.createElement(CommandPaletteOverlay, { marginTop: marginTop, placeholder: placeholder, emptyState: emptyState, onInputChange: onInputChange })));
116
+ !isDisabled && (React.createElement(CommandPaletteOverlay, { marginTop: marginTop, placeholder: placeholder, emptyState: emptyState, onInputChange: onInputChange }))));
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)));
80
123
  };
81
124
  const CommandPaletteOverlay = ({ marginTop, placeholder, emptyState, onInputChange, }) => {
125
+ var _a;
82
126
  const [state, dispatch] = useCommandPaletteRootContext();
83
- const [query, setQuery] = useState('');
84
127
  const styles = commandPaletteStyles();
85
128
  const { overlay, dialog } = modalStyles({ kind: 'dialog' });
86
- // Clear the query on every close so the next open starts fresh — regardless of
87
- // whether the close came from Escape, backdrop click, action selection, or Cmd+K.
88
- useEffect(() => {
89
- if (!state.isOpen) {
90
- 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)));
91
139
  }
92
- }, [state.isOpen]);
140
+ return findSubCommands(state.registrations, currentLevel.parentId);
141
+ }, [state.registrations, currentLevel.parentId]);
93
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
+ }
94
149
  dispatch(isOpen ? { type: ActionTypes.Open } : { type: ActionTypes.Close });
95
150
  };
96
- 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
+ }
97
169
  dispatch({ type: ActionTypes.Close });
98
170
  };
99
171
  const handleSearchChange = (value) => {
100
- setQuery(value);
172
+ dispatch({ type: ActionTypes.SetQuery, query: value });
101
173
  onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(value);
102
174
  };
103
175
  if (!state.isOpen) {
104
176
  return null;
105
177
  }
106
- return (React.createElement(CommandPaletteQueryContext.Provider, { value: query },
178
+ return (React.createElement(CommandPaletteQueryContext.Provider, { value: currentLevel.query },
107
179
  React.createElement(AriaModalOverlay, { isOpen: state.isOpen, onOpenChange: handleOpenChange, isDismissable: true, className: overlay({ className: 'Aquarium-CommandPalette items-start' }) },
108
180
  React.createElement(BaseModal.BackDrop, null),
109
181
  React.createElement(AriaModal, { className: styles.modal(), style: marginTop ? { marginTop } : undefined },
110
182
  React.createElement(AriaDialog, { "aria-label": "Command palette", className: dialog({ className: styles.dialog() }) },
111
- React.createElement(AriaAutocomplete, { filter: autocompleteFilter },
112
- 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() },
113
185
  React.createElement(SearchIcon, { "aria-hidden": true }),
114
- React.createElement(AriaInput, { placeholder: placeholder, className: styles.searchInput() })),
115
- React.createElement(AriaMenu, { onAction: handleAction, className: dropdownMenuStyles({
186
+ React.createElement(AriaInput, { placeholder: levelPlaceholder, className: styles.searchInput() })),
187
+ React.createElement(AriaMenu, { onAction: handleMenuAction, className: dropdownMenuStyles({
116
188
  className: 'Aquarium-CommandPalette.List flex-1 min-h-0 p-3 overflow-y-auto',
117
- }), 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)))))));
118
193
  };
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGVQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvQ29tbWFuZFBhbGV0dGUvQ29tbWFuZFBhbGV0dGVQcm92aWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFDWixhQUFhLEVBRWIsV0FBVyxFQUNYLFVBQVUsRUFDVixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEdBQ1QsTUFBTSxPQUFPLENBQUM7QUFDZixPQUFPLEVBQ0wsWUFBWSxJQUFJLGdCQUFnQixFQUNoQyxNQUFNLElBQUksVUFBVSxFQUNwQixLQUFLLElBQUksU0FBUyxFQUNsQixJQUFJLElBQUksUUFBUSxFQUNoQixLQUFLLElBQUksU0FBUyxFQUNsQixZQUFZLElBQUksZ0JBQWdCLEVBQ2hDLFdBQVcsSUFBSSxlQUFlLEdBQy9CLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFckQsT0FBTyxFQUFFLGNBQWMsSUFBSSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN2RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsS0FBSyxJQUFJLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFnQixXQUFXLEVBQWMsTUFBTSxTQUFTLENBQUM7QUFFaEUsZ0JBQWdCO0FBRWhCLE1BQU0sT0FBTyxHQUFHLENBQUMsS0FBWSxFQUFFLE1BQWUsRUFBUyxFQUFFO0lBQ3ZELFFBQVEsTUFBTSxDQUFDLElBQUks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
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGVQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvQ29tbWFuZFBhbGV0dGUvQ29tbWFuZFBhbGV0dGVQcm92aWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFDWixhQUFhLEVBRWIsV0FBVyxFQUNYLFVBQVUsRUFDVixTQUFTLEVBQ1QsT0FBTyxFQUNQLFVBQVUsRUFDVixNQUFNLEdBQ1AsTUFBTSxPQUFPLENBQUM7QUFDZixPQUFPLEVBQ0wsWUFBWSxJQUFJLGdCQUFnQixFQUNoQyxNQUFNLElBQUksVUFBVSxFQUNwQixLQUFLLElBQUksU0FBUyxFQUNsQixJQUFJLElBQUksUUFBUSxFQUNoQixRQUFRLElBQUksWUFBWSxFQUN4QixXQUFXLElBQUksZUFBZSxFQUM5QixLQUFLLElBQUksU0FBUyxFQUNsQixZQUFZLElBQUksZ0JBQWdCLEVBQ2hDLFdBQVcsSUFBSSxlQUFlLEdBQy9CLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJELE9BQU8sRUFBRSxjQUFjLElBQUksSUFBSSxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdkcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDakcsT0FBTyxFQUFFLEtBQUssSUFBSSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRTFFLE9BQU8sV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQUUsMEJBQTBCLEVBQUUsZUFBZSxFQUFF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