@qontinui/navigation 0.1.2 → 0.1.4
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.
- package/dist/index.cjs +37 -8
- package/dist/index.d.cts +30 -2
- package/dist/index.d.ts +30 -2
- package/dist/index.js +35 -8
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -69,6 +69,7 @@ __export(index_exports, {
|
|
|
69
69
|
getNavigationGroups: () => getNavigationGroups,
|
|
70
70
|
getProductMode: () => getProductMode,
|
|
71
71
|
getRunnerNavigation: () => getRunnerNavigation,
|
|
72
|
+
getShowHiddenItems: () => getShowHiddenItems,
|
|
72
73
|
getWebNavigation: () => getWebNavigation,
|
|
73
74
|
isDevelopmentMode: () => isDevelopmentMode,
|
|
74
75
|
isGroupExpanded: () => isGroupExpanded,
|
|
@@ -82,6 +83,7 @@ __export(index_exports, {
|
|
|
82
83
|
serializeState: () => serializeState,
|
|
83
84
|
setDevelopmentMode: () => setDevelopmentMode,
|
|
84
85
|
setProductMode: () => setProductMode,
|
|
86
|
+
setShowHiddenItems: () => setShowHiddenItems,
|
|
85
87
|
useNavigationItem: () => useNavigationItem
|
|
86
88
|
});
|
|
87
89
|
module.exports = __toCommonJS(index_exports);
|
|
@@ -314,14 +316,18 @@ var AUTOMATE_ITEMS = [
|
|
|
314
316
|
label: "Scheduled Tasks",
|
|
315
317
|
icon: "Calendar",
|
|
316
318
|
description: "Manage scheduled automation",
|
|
317
|
-
productMode: "ai"
|
|
319
|
+
productMode: "ai",
|
|
320
|
+
// Runner-only feature — has no web page (web route 404s).
|
|
321
|
+
platforms: ["runner"]
|
|
318
322
|
},
|
|
319
323
|
{
|
|
320
324
|
id: "triggers",
|
|
321
325
|
label: "Triggers",
|
|
322
326
|
icon: "Zap",
|
|
323
327
|
description: "Event-driven workflow automation",
|
|
324
|
-
productMode: "ai"
|
|
328
|
+
productMode: "ai",
|
|
329
|
+
// Runner-only feature — has no web page (web route 404s).
|
|
330
|
+
platforms: ["runner"]
|
|
325
331
|
},
|
|
326
332
|
{
|
|
327
333
|
id: "watchers",
|
|
@@ -347,7 +353,11 @@ var BUILD_ITEMS = [
|
|
|
347
353
|
description: "Build phase-based automation workflows",
|
|
348
354
|
route: "/build/workflows",
|
|
349
355
|
color: "var(--brand-secondary)",
|
|
350
|
-
productMode: "ai"
|
|
356
|
+
productMode: "ai",
|
|
357
|
+
// Advanced surface — demoted from the default nav now that the Terminal is
|
|
358
|
+
// the primary entry point. Reached via the Terminal "save as workflow"
|
|
359
|
+
// disclosure or by opting into "Show advanced automation features".
|
|
360
|
+
hidden: true
|
|
351
361
|
},
|
|
352
362
|
{
|
|
353
363
|
id: "dag-workflow-editor",
|
|
@@ -357,7 +367,8 @@ var BUILD_ITEMS = [
|
|
|
357
367
|
route: "/build/dag-editor",
|
|
358
368
|
color: "#6366f1",
|
|
359
369
|
platforms: ["runner"],
|
|
360
|
-
productMode: "ai"
|
|
370
|
+
productMode: "ai",
|
|
371
|
+
hidden: true
|
|
361
372
|
},
|
|
362
373
|
{
|
|
363
374
|
id: "step-builders",
|
|
@@ -366,7 +377,8 @@ var BUILD_ITEMS = [
|
|
|
366
377
|
description: "Build and browse step templates",
|
|
367
378
|
route: "/build/templates",
|
|
368
379
|
color: "var(--brand-secondary)",
|
|
369
|
-
productMode: "ai"
|
|
380
|
+
productMode: "ai",
|
|
381
|
+
hidden: true
|
|
370
382
|
},
|
|
371
383
|
{
|
|
372
384
|
id: "library",
|
|
@@ -411,7 +423,9 @@ var BUILD_ITEMS = [
|
|
|
411
423
|
description: "Visual GUI automation \u2014 build state machines and inspect runs",
|
|
412
424
|
route: "/vga",
|
|
413
425
|
color: "var(--brand-secondary)",
|
|
414
|
-
|
|
426
|
+
// Visual GUI automation belongs to Visual mode, not AI Dev (removed from
|
|
427
|
+
// the AI Dev sidebar on both runner and web).
|
|
428
|
+
productMode: "visual"
|
|
415
429
|
},
|
|
416
430
|
{
|
|
417
431
|
id: "orchestration-loop",
|
|
@@ -420,7 +434,8 @@ var BUILD_ITEMS = [
|
|
|
420
434
|
description: "Iterative workflow loop with pipeline mode (build/reflect/fix)",
|
|
421
435
|
route: "/orchestration-loop",
|
|
422
436
|
color: "#8B5CF6",
|
|
423
|
-
platforms: ["runner"]
|
|
437
|
+
platforms: ["runner"],
|
|
438
|
+
hidden: true
|
|
424
439
|
},
|
|
425
440
|
{
|
|
426
441
|
id: "demo-video",
|
|
@@ -499,7 +514,9 @@ var INSIGHTS_ITEMS = [
|
|
|
499
514
|
label: "Reflection",
|
|
500
515
|
icon: "RotateCcw",
|
|
501
516
|
description: "Reflection fix effectiveness and history",
|
|
502
|
-
productMode: "ai"
|
|
517
|
+
productMode: "ai",
|
|
518
|
+
// Runner-only feature — has no web page (web route 404s).
|
|
519
|
+
platforms: ["runner"]
|
|
503
520
|
},
|
|
504
521
|
{
|
|
505
522
|
id: "architecture",
|
|
@@ -1016,10 +1033,20 @@ function setProductMode(mode) {
|
|
|
1016
1033
|
function getProductMode() {
|
|
1017
1034
|
return _productMode;
|
|
1018
1035
|
}
|
|
1036
|
+
var _showHiddenItems = false;
|
|
1037
|
+
function setShowHiddenItems(show) {
|
|
1038
|
+
_showHiddenItems = show;
|
|
1039
|
+
}
|
|
1040
|
+
function getShowHiddenItems() {
|
|
1041
|
+
return _showHiddenItems;
|
|
1042
|
+
}
|
|
1019
1043
|
function isItemAvailable(item, platform) {
|
|
1020
1044
|
if (item.hiddenInProd && !isDevelopmentMode()) {
|
|
1021
1045
|
return false;
|
|
1022
1046
|
}
|
|
1047
|
+
if (item.hidden && !_showHiddenItems) {
|
|
1048
|
+
return false;
|
|
1049
|
+
}
|
|
1023
1050
|
if (_productMode && item.productMode && item.productMode !== "both" && item.productMode !== _productMode) {
|
|
1024
1051
|
return false;
|
|
1025
1052
|
}
|
|
@@ -1357,6 +1384,7 @@ function NavigationItemShell({
|
|
|
1357
1384
|
getNavigationGroups,
|
|
1358
1385
|
getProductMode,
|
|
1359
1386
|
getRunnerNavigation,
|
|
1387
|
+
getShowHiddenItems,
|
|
1360
1388
|
getWebNavigation,
|
|
1361
1389
|
isDevelopmentMode,
|
|
1362
1390
|
isGroupExpanded,
|
|
@@ -1370,5 +1398,6 @@ function NavigationItemShell({
|
|
|
1370
1398
|
serializeState,
|
|
1371
1399
|
setDevelopmentMode,
|
|
1372
1400
|
setProductMode,
|
|
1401
|
+
setShowHiddenItems,
|
|
1373
1402
|
useNavigationItem
|
|
1374
1403
|
});
|
package/dist/index.d.cts
CHANGED
|
@@ -40,6 +40,16 @@ interface NavigationItem {
|
|
|
40
40
|
shortcut?: string;
|
|
41
41
|
/** Hide from navigation in production (visible in dev mode with a badge) */
|
|
42
42
|
hiddenInProd?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Hide from the default navigation as an "advanced" surface. Unlike
|
|
45
|
+
* `hiddenInProd` (which keys off dev/prod), `hidden` items stay out of the
|
|
46
|
+
* sidebar until the user opts in via the "Show advanced automation features"
|
|
47
|
+
* setting (wired through `setShowHiddenItems(true)`). The route/tab id is
|
|
48
|
+
* still registered, so deep-links and programmatic tab-activation continue
|
|
49
|
+
* to resolve. Used to demote the workflow-authoring surfaces (workflow
|
|
50
|
+
* builder, DAG editor, orchestration loop, step builders) now that the
|
|
51
|
+
* Terminal is the primary entry point. */
|
|
52
|
+
hidden?: boolean;
|
|
43
53
|
/** Product mode visibility - "ai", "visual", or "both" (default: shown in all modes) */
|
|
44
54
|
productMode?: "ai" | "visual" | "both";
|
|
45
55
|
/** URL path for web routing (e.g., "/build/workflows") */
|
|
@@ -144,10 +154,14 @@ type NavigationAction = {
|
|
|
144
154
|
* Shared navigation group definitions for Qontinui applications.
|
|
145
155
|
* These define the structure and hierarchy of the sidebar navigation.
|
|
146
156
|
*
|
|
147
|
-
* Each item can have
|
|
157
|
+
* Each item can have four orthogonal visibility dimensions:
|
|
148
158
|
* - platform: "runner" | "web" | both (default) — which app shows the item
|
|
149
159
|
* - productMode: "ai" | "visual" | "both" | undefined (default=both) — which product mode
|
|
150
160
|
* - hiddenInProd: true — dev-only items hidden in production
|
|
161
|
+
* - hidden: true — "advanced" surfaces (the workflow-authoring tools) kept
|
|
162
|
+
* out of the default sidebar until the user opts in via "Show advanced
|
|
163
|
+
* automation features" (setShowHiddenItems). Route/tab id stays registered,
|
|
164
|
+
* so deep-links (e.g. the Terminal "save as workflow" disclosure) resolve.
|
|
151
165
|
*
|
|
152
166
|
* ---------------------------------------------------------------------------
|
|
153
167
|
* Terminal-centric information architecture (2026-06).
|
|
@@ -259,6 +273,20 @@ declare function setProductMode(mode: ProductMode): void;
|
|
|
259
273
|
* Get the current product mode filter.
|
|
260
274
|
*/
|
|
261
275
|
declare function getProductMode(): ProductMode;
|
|
276
|
+
/**
|
|
277
|
+
* Set whether items flagged `hidden: true` should be shown.
|
|
278
|
+
*
|
|
279
|
+
* Defaults to false, so "advanced" surfaces (the workflow-authoring tools)
|
|
280
|
+
* are kept out of the default sidebar. Each app wires this to a persisted
|
|
281
|
+
* "Show advanced automation features" setting (Settings → General). Toggling
|
|
282
|
+
* it on restores the items without affecting their route/tab registration —
|
|
283
|
+
* deep-links resolve regardless of this flag.
|
|
284
|
+
*/
|
|
285
|
+
declare function setShowHiddenItems(show: boolean): void;
|
|
286
|
+
/**
|
|
287
|
+
* Whether `hidden` items are currently shown.
|
|
288
|
+
*/
|
|
289
|
+
declare function getShowHiddenItems(): boolean;
|
|
262
290
|
/**
|
|
263
291
|
* Filter a navigation item based on platform.
|
|
264
292
|
* Returns true if the item should be shown on the given platform.
|
|
@@ -437,4 +465,4 @@ interface NavigationItemShellProps {
|
|
|
437
465
|
*/
|
|
438
466
|
declare function NavigationItemShell({ item, onActivate, children, }: NavigationItemShellProps): React.ReactElement;
|
|
439
467
|
|
|
440
|
-
export { AUTOMATE_GROUP, AUTOMATE_ITEMS, BUILD_GROUP, BUILD_ITEMS, CHILDREN_MAP, CONFIGURE_GROUP, CONFIGURE_ITEMS, DEV_GROUP, DEV_ITEMS, ICON_NAMES, INSIGHTS_GROUP, INSIGHTS_ITEMS, type IconName, NAVIGATION_GROUPS, type NavigationAction, type NavigationBadge, type NavigationGroup, type NavigationItem, type NavigationItemLike, NavigationItemShell, type NavigationItemShellProps, type NavigationState, type Platform, REVIEW_GROUP, REVIEW_ITEMS, RUNS_ITEMS, SESSION_ITEMS, SETTINGS_ITEMS, SPEND_GROUP, SPEND_ITEMS, STORAGE_KEYS, SYSTEM_GROUP, SYSTEM_ITEMS, type SecondarySidebarState, WORKSPACE_GROUP, WORKSPACE_ITEMS, createInitialState, deserializeState, filterGroupForPlatform, filterGroupsForPlatform, filterItemsForPlatform, findItemById, getAllItems, getChildrenForPlatform, getChildrenItems, getItemGroup, getNavigationGroups, getProductMode, getRunnerNavigation, getWebNavigation, isDevelopmentMode, isGroupExpanded, isItemActive, isItemAvailable, isItemExpanded, isSecondaryOpenFor, isValidIconName, navigationActions, navigationReducer, serializeState, setDevelopmentMode, setProductMode, useNavigationItem };
|
|
468
|
+
export { AUTOMATE_GROUP, AUTOMATE_ITEMS, BUILD_GROUP, BUILD_ITEMS, CHILDREN_MAP, CONFIGURE_GROUP, CONFIGURE_ITEMS, DEV_GROUP, DEV_ITEMS, ICON_NAMES, INSIGHTS_GROUP, INSIGHTS_ITEMS, type IconName, NAVIGATION_GROUPS, type NavigationAction, type NavigationBadge, type NavigationGroup, type NavigationItem, type NavigationItemLike, NavigationItemShell, type NavigationItemShellProps, type NavigationState, type Platform, REVIEW_GROUP, REVIEW_ITEMS, RUNS_ITEMS, SESSION_ITEMS, SETTINGS_ITEMS, SPEND_GROUP, SPEND_ITEMS, STORAGE_KEYS, SYSTEM_GROUP, SYSTEM_ITEMS, type SecondarySidebarState, WORKSPACE_GROUP, WORKSPACE_ITEMS, createInitialState, deserializeState, filterGroupForPlatform, filterGroupsForPlatform, filterItemsForPlatform, findItemById, getAllItems, getChildrenForPlatform, getChildrenItems, getItemGroup, getNavigationGroups, getProductMode, getRunnerNavigation, getShowHiddenItems, getWebNavigation, isDevelopmentMode, isGroupExpanded, isItemActive, isItemAvailable, isItemExpanded, isSecondaryOpenFor, isValidIconName, navigationActions, navigationReducer, serializeState, setDevelopmentMode, setProductMode, setShowHiddenItems, useNavigationItem };
|
package/dist/index.d.ts
CHANGED
|
@@ -40,6 +40,16 @@ interface NavigationItem {
|
|
|
40
40
|
shortcut?: string;
|
|
41
41
|
/** Hide from navigation in production (visible in dev mode with a badge) */
|
|
42
42
|
hiddenInProd?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Hide from the default navigation as an "advanced" surface. Unlike
|
|
45
|
+
* `hiddenInProd` (which keys off dev/prod), `hidden` items stay out of the
|
|
46
|
+
* sidebar until the user opts in via the "Show advanced automation features"
|
|
47
|
+
* setting (wired through `setShowHiddenItems(true)`). The route/tab id is
|
|
48
|
+
* still registered, so deep-links and programmatic tab-activation continue
|
|
49
|
+
* to resolve. Used to demote the workflow-authoring surfaces (workflow
|
|
50
|
+
* builder, DAG editor, orchestration loop, step builders) now that the
|
|
51
|
+
* Terminal is the primary entry point. */
|
|
52
|
+
hidden?: boolean;
|
|
43
53
|
/** Product mode visibility - "ai", "visual", or "both" (default: shown in all modes) */
|
|
44
54
|
productMode?: "ai" | "visual" | "both";
|
|
45
55
|
/** URL path for web routing (e.g., "/build/workflows") */
|
|
@@ -144,10 +154,14 @@ type NavigationAction = {
|
|
|
144
154
|
* Shared navigation group definitions for Qontinui applications.
|
|
145
155
|
* These define the structure and hierarchy of the sidebar navigation.
|
|
146
156
|
*
|
|
147
|
-
* Each item can have
|
|
157
|
+
* Each item can have four orthogonal visibility dimensions:
|
|
148
158
|
* - platform: "runner" | "web" | both (default) — which app shows the item
|
|
149
159
|
* - productMode: "ai" | "visual" | "both" | undefined (default=both) — which product mode
|
|
150
160
|
* - hiddenInProd: true — dev-only items hidden in production
|
|
161
|
+
* - hidden: true — "advanced" surfaces (the workflow-authoring tools) kept
|
|
162
|
+
* out of the default sidebar until the user opts in via "Show advanced
|
|
163
|
+
* automation features" (setShowHiddenItems). Route/tab id stays registered,
|
|
164
|
+
* so deep-links (e.g. the Terminal "save as workflow" disclosure) resolve.
|
|
151
165
|
*
|
|
152
166
|
* ---------------------------------------------------------------------------
|
|
153
167
|
* Terminal-centric information architecture (2026-06).
|
|
@@ -259,6 +273,20 @@ declare function setProductMode(mode: ProductMode): void;
|
|
|
259
273
|
* Get the current product mode filter.
|
|
260
274
|
*/
|
|
261
275
|
declare function getProductMode(): ProductMode;
|
|
276
|
+
/**
|
|
277
|
+
* Set whether items flagged `hidden: true` should be shown.
|
|
278
|
+
*
|
|
279
|
+
* Defaults to false, so "advanced" surfaces (the workflow-authoring tools)
|
|
280
|
+
* are kept out of the default sidebar. Each app wires this to a persisted
|
|
281
|
+
* "Show advanced automation features" setting (Settings → General). Toggling
|
|
282
|
+
* it on restores the items without affecting their route/tab registration —
|
|
283
|
+
* deep-links resolve regardless of this flag.
|
|
284
|
+
*/
|
|
285
|
+
declare function setShowHiddenItems(show: boolean): void;
|
|
286
|
+
/**
|
|
287
|
+
* Whether `hidden` items are currently shown.
|
|
288
|
+
*/
|
|
289
|
+
declare function getShowHiddenItems(): boolean;
|
|
262
290
|
/**
|
|
263
291
|
* Filter a navigation item based on platform.
|
|
264
292
|
* Returns true if the item should be shown on the given platform.
|
|
@@ -437,4 +465,4 @@ interface NavigationItemShellProps {
|
|
|
437
465
|
*/
|
|
438
466
|
declare function NavigationItemShell({ item, onActivate, children, }: NavigationItemShellProps): React.ReactElement;
|
|
439
467
|
|
|
440
|
-
export { AUTOMATE_GROUP, AUTOMATE_ITEMS, BUILD_GROUP, BUILD_ITEMS, CHILDREN_MAP, CONFIGURE_GROUP, CONFIGURE_ITEMS, DEV_GROUP, DEV_ITEMS, ICON_NAMES, INSIGHTS_GROUP, INSIGHTS_ITEMS, type IconName, NAVIGATION_GROUPS, type NavigationAction, type NavigationBadge, type NavigationGroup, type NavigationItem, type NavigationItemLike, NavigationItemShell, type NavigationItemShellProps, type NavigationState, type Platform, REVIEW_GROUP, REVIEW_ITEMS, RUNS_ITEMS, SESSION_ITEMS, SETTINGS_ITEMS, SPEND_GROUP, SPEND_ITEMS, STORAGE_KEYS, SYSTEM_GROUP, SYSTEM_ITEMS, type SecondarySidebarState, WORKSPACE_GROUP, WORKSPACE_ITEMS, createInitialState, deserializeState, filterGroupForPlatform, filterGroupsForPlatform, filterItemsForPlatform, findItemById, getAllItems, getChildrenForPlatform, getChildrenItems, getItemGroup, getNavigationGroups, getProductMode, getRunnerNavigation, getWebNavigation, isDevelopmentMode, isGroupExpanded, isItemActive, isItemAvailable, isItemExpanded, isSecondaryOpenFor, isValidIconName, navigationActions, navigationReducer, serializeState, setDevelopmentMode, setProductMode, useNavigationItem };
|
|
468
|
+
export { AUTOMATE_GROUP, AUTOMATE_ITEMS, BUILD_GROUP, BUILD_ITEMS, CHILDREN_MAP, CONFIGURE_GROUP, CONFIGURE_ITEMS, DEV_GROUP, DEV_ITEMS, ICON_NAMES, INSIGHTS_GROUP, INSIGHTS_ITEMS, type IconName, NAVIGATION_GROUPS, type NavigationAction, type NavigationBadge, type NavigationGroup, type NavigationItem, type NavigationItemLike, NavigationItemShell, type NavigationItemShellProps, type NavigationState, type Platform, REVIEW_GROUP, REVIEW_ITEMS, RUNS_ITEMS, SESSION_ITEMS, SETTINGS_ITEMS, SPEND_GROUP, SPEND_ITEMS, STORAGE_KEYS, SYSTEM_GROUP, SYSTEM_ITEMS, type SecondarySidebarState, WORKSPACE_GROUP, WORKSPACE_ITEMS, createInitialState, deserializeState, filterGroupForPlatform, filterGroupsForPlatform, filterItemsForPlatform, findItemById, getAllItems, getChildrenForPlatform, getChildrenItems, getItemGroup, getNavigationGroups, getProductMode, getRunnerNavigation, getShowHiddenItems, getWebNavigation, isDevelopmentMode, isGroupExpanded, isItemActive, isItemAvailable, isItemExpanded, isSecondaryOpenFor, isValidIconName, navigationActions, navigationReducer, serializeState, setDevelopmentMode, setProductMode, setShowHiddenItems, useNavigationItem };
|
package/dist/index.js
CHANGED
|
@@ -226,14 +226,18 @@ var AUTOMATE_ITEMS = [
|
|
|
226
226
|
label: "Scheduled Tasks",
|
|
227
227
|
icon: "Calendar",
|
|
228
228
|
description: "Manage scheduled automation",
|
|
229
|
-
productMode: "ai"
|
|
229
|
+
productMode: "ai",
|
|
230
|
+
// Runner-only feature — has no web page (web route 404s).
|
|
231
|
+
platforms: ["runner"]
|
|
230
232
|
},
|
|
231
233
|
{
|
|
232
234
|
id: "triggers",
|
|
233
235
|
label: "Triggers",
|
|
234
236
|
icon: "Zap",
|
|
235
237
|
description: "Event-driven workflow automation",
|
|
236
|
-
productMode: "ai"
|
|
238
|
+
productMode: "ai",
|
|
239
|
+
// Runner-only feature — has no web page (web route 404s).
|
|
240
|
+
platforms: ["runner"]
|
|
237
241
|
},
|
|
238
242
|
{
|
|
239
243
|
id: "watchers",
|
|
@@ -259,7 +263,11 @@ var BUILD_ITEMS = [
|
|
|
259
263
|
description: "Build phase-based automation workflows",
|
|
260
264
|
route: "/build/workflows",
|
|
261
265
|
color: "var(--brand-secondary)",
|
|
262
|
-
productMode: "ai"
|
|
266
|
+
productMode: "ai",
|
|
267
|
+
// Advanced surface — demoted from the default nav now that the Terminal is
|
|
268
|
+
// the primary entry point. Reached via the Terminal "save as workflow"
|
|
269
|
+
// disclosure or by opting into "Show advanced automation features".
|
|
270
|
+
hidden: true
|
|
263
271
|
},
|
|
264
272
|
{
|
|
265
273
|
id: "dag-workflow-editor",
|
|
@@ -269,7 +277,8 @@ var BUILD_ITEMS = [
|
|
|
269
277
|
route: "/build/dag-editor",
|
|
270
278
|
color: "#6366f1",
|
|
271
279
|
platforms: ["runner"],
|
|
272
|
-
productMode: "ai"
|
|
280
|
+
productMode: "ai",
|
|
281
|
+
hidden: true
|
|
273
282
|
},
|
|
274
283
|
{
|
|
275
284
|
id: "step-builders",
|
|
@@ -278,7 +287,8 @@ var BUILD_ITEMS = [
|
|
|
278
287
|
description: "Build and browse step templates",
|
|
279
288
|
route: "/build/templates",
|
|
280
289
|
color: "var(--brand-secondary)",
|
|
281
|
-
productMode: "ai"
|
|
290
|
+
productMode: "ai",
|
|
291
|
+
hidden: true
|
|
282
292
|
},
|
|
283
293
|
{
|
|
284
294
|
id: "library",
|
|
@@ -323,7 +333,9 @@ var BUILD_ITEMS = [
|
|
|
323
333
|
description: "Visual GUI automation \u2014 build state machines and inspect runs",
|
|
324
334
|
route: "/vga",
|
|
325
335
|
color: "var(--brand-secondary)",
|
|
326
|
-
|
|
336
|
+
// Visual GUI automation belongs to Visual mode, not AI Dev (removed from
|
|
337
|
+
// the AI Dev sidebar on both runner and web).
|
|
338
|
+
productMode: "visual"
|
|
327
339
|
},
|
|
328
340
|
{
|
|
329
341
|
id: "orchestration-loop",
|
|
@@ -332,7 +344,8 @@ var BUILD_ITEMS = [
|
|
|
332
344
|
description: "Iterative workflow loop with pipeline mode (build/reflect/fix)",
|
|
333
345
|
route: "/orchestration-loop",
|
|
334
346
|
color: "#8B5CF6",
|
|
335
|
-
platforms: ["runner"]
|
|
347
|
+
platforms: ["runner"],
|
|
348
|
+
hidden: true
|
|
336
349
|
},
|
|
337
350
|
{
|
|
338
351
|
id: "demo-video",
|
|
@@ -411,7 +424,9 @@ var INSIGHTS_ITEMS = [
|
|
|
411
424
|
label: "Reflection",
|
|
412
425
|
icon: "RotateCcw",
|
|
413
426
|
description: "Reflection fix effectiveness and history",
|
|
414
|
-
productMode: "ai"
|
|
427
|
+
productMode: "ai",
|
|
428
|
+
// Runner-only feature — has no web page (web route 404s).
|
|
429
|
+
platforms: ["runner"]
|
|
415
430
|
},
|
|
416
431
|
{
|
|
417
432
|
id: "architecture",
|
|
@@ -928,10 +943,20 @@ function setProductMode(mode) {
|
|
|
928
943
|
function getProductMode() {
|
|
929
944
|
return _productMode;
|
|
930
945
|
}
|
|
946
|
+
var _showHiddenItems = false;
|
|
947
|
+
function setShowHiddenItems(show) {
|
|
948
|
+
_showHiddenItems = show;
|
|
949
|
+
}
|
|
950
|
+
function getShowHiddenItems() {
|
|
951
|
+
return _showHiddenItems;
|
|
952
|
+
}
|
|
931
953
|
function isItemAvailable(item, platform) {
|
|
932
954
|
if (item.hiddenInProd && !isDevelopmentMode()) {
|
|
933
955
|
return false;
|
|
934
956
|
}
|
|
957
|
+
if (item.hidden && !_showHiddenItems) {
|
|
958
|
+
return false;
|
|
959
|
+
}
|
|
935
960
|
if (_productMode && item.productMode && item.productMode !== "both" && item.productMode !== _productMode) {
|
|
936
961
|
return false;
|
|
937
962
|
}
|
|
@@ -1268,6 +1293,7 @@ export {
|
|
|
1268
1293
|
getNavigationGroups,
|
|
1269
1294
|
getProductMode,
|
|
1270
1295
|
getRunnerNavigation,
|
|
1296
|
+
getShowHiddenItems,
|
|
1271
1297
|
getWebNavigation,
|
|
1272
1298
|
isDevelopmentMode,
|
|
1273
1299
|
isGroupExpanded,
|
|
@@ -1281,5 +1307,6 @@ export {
|
|
|
1281
1307
|
serializeState,
|
|
1282
1308
|
setDevelopmentMode,
|
|
1283
1309
|
setProductMode,
|
|
1310
|
+
setShowHiddenItems,
|
|
1284
1311
|
useNavigationItem
|
|
1285
1312
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qontinui/navigation",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Shared navigation structure for Qontinui applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.cjs",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"dist"
|
|
11
11
|
],
|
|
12
12
|
"scripts": {
|
|
13
|
-
"build": "tsup src/index.ts --format cjs,esm --dts &&
|
|
13
|
+
"build": "tsup src/index.ts --format cjs,esm --dts && node -e \"if(!require('fs').statSync('dist/index.d.ts').size)process.exit(1)\"",
|
|
14
14
|
"dev": "tsup src/index.ts --format cjs,esm --dts --watch",
|
|
15
15
|
"typecheck": "tsc --noEmit",
|
|
16
16
|
"lint": "eslint src/",
|