@vinyasa/navigation 1.0.26

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 (98) hide show
  1. package/README.md +45 -0
  2. package/dist/cjs/breadcrumbs.cjs +240 -0
  3. package/dist/cjs/breadcrumbs.css +58 -0
  4. package/dist/cjs/command-navigation.cjs +215 -0
  5. package/dist/cjs/command-navigation.css +46 -0
  6. package/dist/cjs/index.cjs +2681 -0
  7. package/dist/cjs/index.css +1162 -0
  8. package/dist/cjs/navigation-menu.cjs +302 -0
  9. package/dist/cjs/navigation-menu.css +197 -0
  10. package/dist/cjs/pagination.cjs +462 -0
  11. package/dist/cjs/pagination.css +79 -0
  12. package/dist/cjs/sidebar.cjs +476 -0
  13. package/dist/cjs/sidebar.css +171 -0
  14. package/dist/cjs/stepper.cjs +270 -0
  15. package/dist/cjs/stepper.css +153 -0
  16. package/dist/cjs/tabs.cjs +260 -0
  17. package/dist/cjs/tabs.css +122 -0
  18. package/dist/cjs/top-navigation.cjs +363 -0
  19. package/dist/cjs/top-navigation.css +127 -0
  20. package/dist/cjs/tree-view.cjs +373 -0
  21. package/dist/cjs/tree-view.css +109 -0
  22. package/dist/cjs/workspace-switcher.cjs +249 -0
  23. package/dist/cjs/workspace-switcher.css +100 -0
  24. package/dist/esm/217.css +79 -0
  25. package/dist/esm/217.js +202 -0
  26. package/dist/esm/294.css +100 -0
  27. package/dist/esm/294.js +114 -0
  28. package/dist/esm/375.css +153 -0
  29. package/dist/esm/375.js +120 -0
  30. package/dist/esm/555.css +171 -0
  31. package/dist/esm/555.js +232 -0
  32. package/dist/esm/655.css +58 -0
  33. package/dist/esm/655.js +87 -0
  34. package/dist/esm/66.css +46 -0
  35. package/dist/esm/66.js +92 -0
  36. package/dist/esm/694.css +109 -0
  37. package/dist/esm/694.js +227 -0
  38. package/dist/esm/814.css +197 -0
  39. package/dist/esm/814.js +146 -0
  40. package/dist/esm/862.css +127 -0
  41. package/dist/esm/862.js +130 -0
  42. package/dist/esm/913.css +119 -0
  43. package/dist/esm/913.js +121 -0
  44. package/dist/esm/953.js +87 -0
  45. package/dist/esm/breadcrumbs.d.ts +2 -0
  46. package/dist/esm/breadcrumbs.js +1 -0
  47. package/dist/esm/command-navigation.d.ts +2 -0
  48. package/dist/esm/command-navigation.js +1 -0
  49. package/dist/esm/components/breadcrumbs/Breadcrumbs.css.d.ts +6 -0
  50. package/dist/esm/components/breadcrumbs/Breadcrumbs.d.ts +58 -0
  51. package/dist/esm/components/breadcrumbs/index.d.ts +1 -0
  52. package/dist/esm/components/command-navigation/CommandNavigation.css.d.ts +4 -0
  53. package/dist/esm/components/command-navigation/CommandNavigation.d.ts +50 -0
  54. package/dist/esm/components/command-navigation/index.d.ts +1 -0
  55. package/dist/esm/components/navigation-menu/NavigationMenu.css.d.ts +13 -0
  56. package/dist/esm/components/navigation-menu/NavigationMenu.d.ts +69 -0
  57. package/dist/esm/components/navigation-menu/index.d.ts +1 -0
  58. package/dist/esm/components/pagination/Pagination.css.d.ts +13 -0
  59. package/dist/esm/components/pagination/Pagination.d.ts +69 -0
  60. package/dist/esm/components/pagination/getPaginationRange.d.ts +15 -0
  61. package/dist/esm/components/pagination/index.d.ts +2 -0
  62. package/dist/esm/components/sidebar/Sidebar.css.d.ts +60 -0
  63. package/dist/esm/components/sidebar/Sidebar.d.ts +82 -0
  64. package/dist/esm/components/sidebar/index.d.ts +1 -0
  65. package/dist/esm/components/stepper/Stepper.css.d.ts +10 -0
  66. package/dist/esm/components/stepper/Stepper.d.ts +57 -0
  67. package/dist/esm/components/stepper/index.d.ts +1 -0
  68. package/dist/esm/components/tabs/Tabs.css.d.ts +6 -0
  69. package/dist/esm/components/tabs/Tabs.d.ts +39 -0
  70. package/dist/esm/components/tabs/index.d.ts +1 -0
  71. package/dist/esm/components/top-navigation/TopNavigation.css.d.ts +13 -0
  72. package/dist/esm/components/top-navigation/TopNavigation.d.ts +67 -0
  73. package/dist/esm/components/top-navigation/index.d.ts +1 -0
  74. package/dist/esm/components/tree-view/TreeView.css.d.ts +8 -0
  75. package/dist/esm/components/tree-view/TreeView.d.ts +43 -0
  76. package/dist/esm/components/tree-view/index.d.ts +1 -0
  77. package/dist/esm/components/workspace-switcher/WorkspaceSwitcher.css.d.ts +9 -0
  78. package/dist/esm/components/workspace-switcher/WorkspaceSwitcher.d.ts +43 -0
  79. package/dist/esm/components/workspace-switcher/index.d.ts +1 -0
  80. package/dist/esm/index.d.ts +10 -0
  81. package/dist/esm/index.js +10 -0
  82. package/dist/esm/navigation-menu.d.ts +2 -0
  83. package/dist/esm/navigation-menu.js +1 -0
  84. package/dist/esm/pagination.d.ts +2 -0
  85. package/dist/esm/pagination.js +1 -0
  86. package/dist/esm/sidebar.d.ts +2 -0
  87. package/dist/esm/sidebar.js +1 -0
  88. package/dist/esm/stepper.d.ts +2 -0
  89. package/dist/esm/stepper.js +1 -0
  90. package/dist/esm/tabs.d.ts +2 -0
  91. package/dist/esm/tabs.js +1 -0
  92. package/dist/esm/top-navigation.d.ts +2 -0
  93. package/dist/esm/top-navigation.js +1 -0
  94. package/dist/esm/tree-view.d.ts +2 -0
  95. package/dist/esm/tree-view.js +1 -0
  96. package/dist/esm/workspace-switcher.d.ts +2 -0
  97. package/dist/esm/workspace-switcher.js +1 -0
  98. package/package.json +146 -0
package/README.md ADDED
@@ -0,0 +1,45 @@
1
+ # @vinyasa/navigation
2
+
3
+ Describe what Navigation does here.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ pnpm add @vinyasa/navigation @vinyasa/tokens react react-dom
9
+ ```
10
+
11
+ `@vinyasa/tokens` is a peer dependency: Navigation's styles reference the shared design-token contract, and rendering it requires a `VinyasaProvider` (from `@vinyasa/tokens`) somewhere above it in the tree. See [`@vinyasa/tokens`'s README](../tokens/README.md) for what that provider does.
12
+
13
+ No separate stylesheet import is needed — Navigation's CSS is bundled into its own JS entry and loads automatically when you import the component.
14
+
15
+ ## Usage
16
+
17
+ ```tsx
18
+ import { VinyasaProvider } from '@vinyasa/tokens';
19
+ import { Navigation } from '@vinyasa/navigation';
20
+
21
+ function App() {
22
+ return (
23
+ <VinyasaProvider>
24
+ <Navigation />
25
+ </VinyasaProvider>
26
+ );
27
+ }
28
+ ```
29
+
30
+ ## Subpath import
31
+
32
+ ```tsx
33
+ import Navigation from '@vinyasa/navigation/navigation';
34
+ ```
35
+
36
+ ## Development
37
+
38
+ From the repository root:
39
+
40
+ ```bash
41
+ pnpm --filter @vinyasa/navigation build
42
+ pnpm --filter @vinyasa/navigation test
43
+ pnpm --filter @vinyasa/navigation lint
44
+ pnpm storybook # Components/Navigation
45
+ ```
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ __webpack_require__.d(__webpack_exports__, {
31
+ Breadcrumbs: ()=>Breadcrumbs
32
+ });
33
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
34
+ const icons_namespaceObject = require("@vinyasa/icons");
35
+ const tokens_namespaceObject = require("@vinyasa/tokens");
36
+ const external_react_namespaceObject = require("react");
37
+ var item = '_48ex311';
38
+ var Breadcrumbs_css_link = '_48ex312';
39
+ var list = '_48ex310';
40
+ var page = '_48ex313';
41
+ var separator = '_48ex314';
42
+ var truncatedLabel = '_48ex315';
43
+ function _define_property(obj, key, value) {
44
+ if (key in obj) Object.defineProperty(obj, key, {
45
+ value: value,
46
+ enumerable: true,
47
+ configurable: true,
48
+ writable: true
49
+ });
50
+ else obj[key] = value;
51
+ return obj;
52
+ }
53
+ function _object_spread(target) {
54
+ for(var i = 1; i < arguments.length; i++){
55
+ var source = null != arguments[i] ? arguments[i] : {};
56
+ var ownKeys = Object.keys(source);
57
+ if ("function" == typeof Object.getOwnPropertySymbols) ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
58
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
59
+ }));
60
+ ownKeys.forEach(function(key) {
61
+ _define_property(target, key, source[key]);
62
+ });
63
+ }
64
+ return target;
65
+ }
66
+ function Breadcrumbs_ownKeys(object, enumerableOnly) {
67
+ var keys = Object.keys(object);
68
+ if (Object.getOwnPropertySymbols) {
69
+ var symbols = Object.getOwnPropertySymbols(object);
70
+ if (enumerableOnly) symbols = symbols.filter(function(sym) {
71
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
72
+ });
73
+ keys.push.apply(keys, symbols);
74
+ }
75
+ return keys;
76
+ }
77
+ function _object_spread_props(target, source) {
78
+ source = null != source ? source : {};
79
+ if (Object.getOwnPropertyDescriptors) Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
80
+ else Breadcrumbs_ownKeys(Object(source)).forEach(function(key) {
81
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
82
+ });
83
+ return target;
84
+ }
85
+ function _object_without_properties(source, excluded) {
86
+ if (null == source) return {};
87
+ var target = {}, sourceKeys, key, i;
88
+ if ("u" > typeof Reflect && Reflect.ownKeys) {
89
+ sourceKeys = Reflect.ownKeys(Object(source));
90
+ for(i = 0; i < sourceKeys.length; i++){
91
+ key = sourceKeys[i];
92
+ if (!(excluded.indexOf(key) >= 0)) {
93
+ if (Object.prototype.propertyIsEnumerable.call(source, key)) target[key] = source[key];
94
+ }
95
+ }
96
+ return target;
97
+ }
98
+ target = _object_without_properties_loose(source, excluded);
99
+ if (Object.getOwnPropertySymbols) {
100
+ sourceKeys = Object.getOwnPropertySymbols(source);
101
+ for(i = 0; i < sourceKeys.length; i++){
102
+ key = sourceKeys[i];
103
+ if (!(excluded.indexOf(key) >= 0)) {
104
+ if (Object.prototype.propertyIsEnumerable.call(source, key)) target[key] = source[key];
105
+ }
106
+ }
107
+ }
108
+ return target;
109
+ }
110
+ function _object_without_properties_loose(source, excluded) {
111
+ if (null == source) return {};
112
+ var target = {}, sourceKeys = Object.getOwnPropertyNames(source), key, i;
113
+ for(i = 0; i < sourceKeys.length; i++){
114
+ key = sourceKeys[i];
115
+ if (!(excluded.indexOf(key) >= 0)) {
116
+ if (Object.prototype.propertyIsEnumerable.call(source, key)) target[key] = source[key];
117
+ }
118
+ }
119
+ return target;
120
+ }
121
+ const BreadcrumbsRoot = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)((_0, _1)=>{
122
+ let _ref = [
123
+ _0,
124
+ _1
125
+ ], [_ref1, ..._rest] = _ref, { label = 'Breadcrumb' } = _ref1, rest = _object_without_properties(_ref1, [
126
+ "label"
127
+ ]), [ref] = _rest;
128
+ const themedRef = (0, tokens_namespaceObject.useThemedRef)(ref);
129
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("nav", _object_spread({
130
+ ref: themedRef,
131
+ "aria-label": label
132
+ }, rest));
133
+ });
134
+ BreadcrumbsRoot.displayName = 'BreadcrumbsRoot';
135
+ const BreadcrumbsList = (_0)=>{
136
+ let { className } = _0, rest = _object_without_properties(_0, [
137
+ "className"
138
+ ]);
139
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("ol", _object_spread({
140
+ className: className ? `${list} ${className}` : list
141
+ }, rest));
142
+ };
143
+ BreadcrumbsList.displayName = 'BreadcrumbsList';
144
+ const BreadcrumbsItem = (_0)=>{
145
+ let { className } = _0, rest = _object_without_properties(_0, [
146
+ "className"
147
+ ]);
148
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("li", _object_spread({
149
+ className: className ? `${item} ${className}` : item
150
+ }, rest));
151
+ };
152
+ BreadcrumbsItem.displayName = 'BreadcrumbsItem';
153
+ const BreadcrumbsLink = (_0)=>{
154
+ let { as: Component = 'a', className } = _0, rest = _object_without_properties(_0, [
155
+ "as",
156
+ "className"
157
+ ]);
158
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(Component, _object_spread({
159
+ className: className ? `${Breadcrumbs_css_link} ${className}` : Breadcrumbs_css_link
160
+ }, rest));
161
+ };
162
+ BreadcrumbsLink.displayName = 'BreadcrumbsLink';
163
+ const BreadcrumbsPage = (_0)=>{
164
+ let { className } = _0, rest = _object_without_properties(_0, [
165
+ "className"
166
+ ]);
167
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", _object_spread({
168
+ className: className ? `${page} ${className}` : page,
169
+ "aria-current": "page"
170
+ }, rest));
171
+ };
172
+ BreadcrumbsPage.displayName = 'BreadcrumbsPage';
173
+ const BreadcrumbsSeparator = (_0)=>{
174
+ let { className, children } = _0, rest = _object_without_properties(_0, [
175
+ "className",
176
+ "children"
177
+ ]);
178
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("li", _object_spread_props(_object_spread({
179
+ "aria-hidden": "true",
180
+ className: className ? `${separator} ${className}` : separator
181
+ }, rest), {
182
+ children: null != children ? children : /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(icons_namespaceObject.ChevronRightIcon, {})
183
+ }));
184
+ };
185
+ BreadcrumbsSeparator.displayName = 'BreadcrumbsSeparator';
186
+ const BreadcrumbsImpl = (_0)=>{
187
+ let { items, separator: separatorNode, linkComponent, label, className } = _0, rest = _object_without_properties(_0, [
188
+ "items",
189
+ "separator",
190
+ "linkComponent",
191
+ "label",
192
+ "className"
193
+ ]);
194
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(BreadcrumbsRoot, _object_spread_props(_object_spread({
195
+ label: label,
196
+ className: className
197
+ }, rest), {
198
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(BreadcrumbsList, {
199
+ children: items.map((itemSpec, index)=>{
200
+ var _itemSpec_key;
201
+ const isLast = index === items.length - 1;
202
+ const key = null != (_itemSpec_key = itemSpec.key) ? _itemSpec_key : 'string' == typeof itemSpec.label ? itemSpec.label : index;
203
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_react_namespaceObject.Fragment, {
204
+ children: [
205
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(BreadcrumbsItem, {
206
+ children: isLast ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(BreadcrumbsPage, {
207
+ className: truncatedLabel,
208
+ children: itemSpec.label
209
+ }) : /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(BreadcrumbsLink, {
210
+ as: null != linkComponent ? linkComponent : 'a',
211
+ href: itemSpec.href,
212
+ className: truncatedLabel,
213
+ children: itemSpec.label
214
+ })
215
+ }),
216
+ isLast ? null : /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(BreadcrumbsSeparator, {
217
+ children: separatorNode
218
+ })
219
+ ]
220
+ }, key);
221
+ })
222
+ })
223
+ }));
224
+ };
225
+ BreadcrumbsImpl.displayName = 'Breadcrumbs';
226
+ const Breadcrumbs = Object.assign(BreadcrumbsImpl, {
227
+ Root: BreadcrumbsRoot,
228
+ List: BreadcrumbsList,
229
+ Item: BreadcrumbsItem,
230
+ Link: BreadcrumbsLink,
231
+ Page: BreadcrumbsPage,
232
+ Separator: BreadcrumbsSeparator
233
+ });
234
+ exports.Breadcrumbs = __webpack_exports__.Breadcrumbs;
235
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
236
+ "Breadcrumbs"
237
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
238
+ Object.defineProperty(exports, '__esModule', {
239
+ value: true
240
+ });
@@ -0,0 +1,58 @@
1
+ ._48ex310 {
2
+ flex-wrap: wrap;
3
+ align-items: center;
4
+ margin: 0;
5
+ padding: 0;
6
+ list-style: none;
7
+ display: flex;
8
+ }
9
+
10
+ ._48ex311 {
11
+ align-items: center;
12
+ display: flex;
13
+ }
14
+
15
+ ._48ex312 {
16
+ color: var(--vinyasa-text-muted);
17
+ font-family: var(--vinyasa-font-family-sans);
18
+ font-size: var(--vinyasa-font-size-sm);
19
+ border-radius: var(--vinyasa-radius-sm);
20
+ transition: color var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard);
21
+ text-decoration: none;
22
+ }
23
+
24
+ ._48ex312:hover {
25
+ color: var(--vinyasa-text-default);
26
+ text-decoration: underline;
27
+ }
28
+
29
+ ._48ex312:focus-visible {
30
+ outline: 2px solid var(--vinyasa-focus);
31
+ outline-offset: 2px;
32
+ }
33
+
34
+ ._48ex313 {
35
+ color: var(--vinyasa-text-default);
36
+ font-family: var(--vinyasa-font-family-sans);
37
+ font-size: var(--vinyasa-font-size-sm);
38
+ font-weight: var(--vinyasa-font-weight-medium);
39
+ }
40
+
41
+ ._48ex314 {
42
+ margin: 0 var(--vinyasa-space1);
43
+ color: var(--vinyasa-text-muted);
44
+ justify-content: center;
45
+ align-items: center;
46
+ font-size: .875rem;
47
+ display: inline-flex;
48
+ }
49
+
50
+ ._48ex315 {
51
+ white-space: nowrap;
52
+ text-overflow: ellipsis;
53
+ vertical-align: bottom;
54
+ max-width: 16rem;
55
+ display: inline-block;
56
+ overflow: hidden;
57
+ }
58
+
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ __webpack_require__.d(__webpack_exports__, {
31
+ CommandNavigation: ()=>CommandNavigation
32
+ });
33
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
34
+ const icons_namespaceObject = require("@vinyasa/icons");
35
+ const command_palette_namespaceObject = require("@vinyasa/overlay/command-palette");
36
+ const typography_namespaceObject = require("@vinyasa/typography");
37
+ const external_react_namespaceObject = require("react");
38
+ var trigger = '_1pp4pc70';
39
+ var triggerIcon = '_1pp4pc71';
40
+ var triggerKbd = '_1pp4pc73';
41
+ var triggerText = '_1pp4pc72';
42
+ function _define_property(obj, key, value) {
43
+ if (key in obj) Object.defineProperty(obj, key, {
44
+ value: value,
45
+ enumerable: true,
46
+ configurable: true,
47
+ writable: true
48
+ });
49
+ else obj[key] = value;
50
+ return obj;
51
+ }
52
+ function _object_spread(target) {
53
+ for(var i = 1; i < arguments.length; i++){
54
+ var source = null != arguments[i] ? arguments[i] : {};
55
+ var ownKeys = Object.keys(source);
56
+ if ("function" == typeof Object.getOwnPropertySymbols) ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
57
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
58
+ }));
59
+ ownKeys.forEach(function(key) {
60
+ _define_property(target, key, source[key]);
61
+ });
62
+ }
63
+ return target;
64
+ }
65
+ function CommandNavigation_ownKeys(object, enumerableOnly) {
66
+ var keys = Object.keys(object);
67
+ if (Object.getOwnPropertySymbols) {
68
+ var symbols = Object.getOwnPropertySymbols(object);
69
+ if (enumerableOnly) symbols = symbols.filter(function(sym) {
70
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
71
+ });
72
+ keys.push.apply(keys, symbols);
73
+ }
74
+ return keys;
75
+ }
76
+ function _object_spread_props(target, source) {
77
+ source = null != source ? source : {};
78
+ if (Object.getOwnPropertyDescriptors) Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
79
+ else CommandNavigation_ownKeys(Object(source)).forEach(function(key) {
80
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
81
+ });
82
+ return target;
83
+ }
84
+ function _object_without_properties(source, excluded) {
85
+ if (null == source) return {};
86
+ var target = {}, sourceKeys, key, i;
87
+ if ("u" > typeof Reflect && Reflect.ownKeys) {
88
+ sourceKeys = Reflect.ownKeys(Object(source));
89
+ for(i = 0; i < sourceKeys.length; i++){
90
+ key = sourceKeys[i];
91
+ if (!(excluded.indexOf(key) >= 0)) {
92
+ if (Object.prototype.propertyIsEnumerable.call(source, key)) target[key] = source[key];
93
+ }
94
+ }
95
+ return target;
96
+ }
97
+ target = _object_without_properties_loose(source, excluded);
98
+ if (Object.getOwnPropertySymbols) {
99
+ sourceKeys = Object.getOwnPropertySymbols(source);
100
+ for(i = 0; i < sourceKeys.length; i++){
101
+ key = sourceKeys[i];
102
+ if (!(excluded.indexOf(key) >= 0)) {
103
+ if (Object.prototype.propertyIsEnumerable.call(source, key)) target[key] = source[key];
104
+ }
105
+ }
106
+ }
107
+ return target;
108
+ }
109
+ function _object_without_properties_loose(source, excluded) {
110
+ if (null == source) return {};
111
+ var target = {}, sourceKeys = Object.getOwnPropertyNames(source), key, i;
112
+ for(i = 0; i < sourceKeys.length; i++){
113
+ key = sourceKeys[i];
114
+ if (!(excluded.indexOf(key) >= 0)) {
115
+ if (Object.prototype.propertyIsEnumerable.call(source, key)) target[key] = source[key];
116
+ }
117
+ }
118
+ return target;
119
+ }
120
+ const defaultNavigate = (href)=>{
121
+ window.location.assign(href);
122
+ };
123
+ const CommandNavigationImpl = ({ groups, label = 'Command navigation', placeholder = 'Search or jump to...', emptyMessage, onNavigate = defaultNavigate, open: openProp, defaultOpen = false, onOpenChange, disableShortcut = false })=>{
124
+ const [internalOpen, setInternalOpen] = (0, external_react_namespaceObject.useState)(defaultOpen);
125
+ const isControlled = void 0 !== openProp;
126
+ const open = isControlled ? openProp : internalOpen;
127
+ const openRef = (0, external_react_namespaceObject.useRef)(open);
128
+ (0, external_react_namespaceObject.useEffect)(()=>{
129
+ openRef.current = open;
130
+ }, [
131
+ open
132
+ ]);
133
+ const setOpen = (next)=>{
134
+ if (!isControlled) setInternalOpen(next);
135
+ null == onOpenChange || onOpenChange(next);
136
+ };
137
+ (0, external_react_namespaceObject.useEffect)(()=>{
138
+ if (disableShortcut) return;
139
+ const handleKeyDown = (event)=>{
140
+ if ('k' === event.key.toLowerCase() && (event.metaKey || event.ctrlKey)) {
141
+ event.preventDefault();
142
+ setOpen(!openRef.current);
143
+ }
144
+ };
145
+ window.addEventListener('keydown', handleKeyDown);
146
+ return ()=>{
147
+ window.removeEventListener('keydown', handleKeyDown);
148
+ };
149
+ }, [
150
+ disableShortcut
151
+ ]);
152
+ const paletteGroups = groups.map((group)=>({
153
+ key: group.key,
154
+ heading: group.heading,
155
+ items: group.items.map((item)=>({
156
+ key: item.key,
157
+ label: item.label,
158
+ icon: item.icon,
159
+ shortcut: item.shortcut,
160
+ keywords: item.keywords,
161
+ disabled: item.disabled,
162
+ onSelect: ()=>{
163
+ setOpen(false);
164
+ if (item.onSelect) item.onSelect();
165
+ else if (item.href) onNavigate(item.href);
166
+ }
167
+ }))
168
+ }));
169
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(command_palette_namespaceObject.CommandPalette, {
170
+ label: label,
171
+ placeholder: placeholder,
172
+ emptyMessage: emptyMessage,
173
+ groups: paletteGroups,
174
+ open: open,
175
+ onOpenChange: setOpen
176
+ });
177
+ };
178
+ CommandNavigationImpl.displayName = 'CommandNavigation';
179
+ const CommandNavigationTrigger = (_0)=>{
180
+ let { placeholder = 'Search or jump to...', shortcutLabel = '⌘K', className, children } = _0, rest = _object_without_properties(_0, [
181
+ "placeholder",
182
+ "shortcutLabel",
183
+ "className",
184
+ "children"
185
+ ]);
186
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("button", _object_spread_props(_object_spread({
187
+ type: "button",
188
+ className: className ? `${trigger} ${className}` : trigger
189
+ }, rest), {
190
+ children: [
191
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(icons_namespaceObject.SearchIcon, {
192
+ className: triggerIcon
193
+ }),
194
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
195
+ className: triggerText,
196
+ children: null != children ? children : placeholder
197
+ }),
198
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(typography_namespaceObject.Kbd, {
199
+ className: triggerKbd,
200
+ children: shortcutLabel
201
+ })
202
+ ]
203
+ }));
204
+ };
205
+ CommandNavigationTrigger.displayName = 'CommandNavigationTrigger';
206
+ const CommandNavigation = Object.assign(CommandNavigationImpl, {
207
+ Trigger: CommandNavigationTrigger
208
+ });
209
+ exports.CommandNavigation = __webpack_exports__.CommandNavigation;
210
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
211
+ "CommandNavigation"
212
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
213
+ Object.defineProperty(exports, '__esModule', {
214
+ value: true
215
+ });
@@ -0,0 +1,46 @@
1
+ ._1pp4pc70 {
2
+ align-items: center;
3
+ gap: var(--vinyasa-space2);
4
+ width: 100%;
5
+ max-width: 20rem;
6
+ height: 2.25rem;
7
+ padding: 0 var(--vinyasa-space3);
8
+ border: var(--vinyasa-border-width-thin) solid var(--vinyasa-border-color-default);
9
+ border-radius: var(--vinyasa-radius-md);
10
+ background-color: var(--vinyasa-surface);
11
+ color: var(--vinyasa-text-muted);
12
+ font-family: var(--vinyasa-font-family-sans);
13
+ font-size: var(--vinyasa-font-size-sm);
14
+ cursor: pointer;
15
+ transition: background-color var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard), border-color var(--vinyasa-motion-duration-fast) var(--vinyasa-motion-easing-standard);
16
+ display: inline-flex;
17
+ }
18
+
19
+ ._1pp4pc70:hover {
20
+ background-color: var(--vinyasa-secondary);
21
+ }
22
+
23
+ ._1pp4pc70:focus-visible {
24
+ outline: 2px solid var(--vinyasa-focus);
25
+ outline-offset: 2px;
26
+ }
27
+
28
+ ._1pp4pc71 {
29
+ flex-shrink: 0;
30
+ font-size: 1rem;
31
+ display: inline-flex;
32
+ }
33
+
34
+ ._1pp4pc72 {
35
+ white-space: nowrap;
36
+ text-overflow: ellipsis;
37
+ text-align: left;
38
+ flex: 1;
39
+ min-width: 0;
40
+ overflow: hidden;
41
+ }
42
+
43
+ ._1pp4pc73 {
44
+ flex-shrink: 0;
45
+ }
46
+