@ankhorage/studio 0.15.0 → 0.17.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 (79) hide show
  1. package/README.md +1 -1
  2. package/dist/contractGuards.d.ts.map +1 -1
  3. package/dist/contractGuards.js +4 -2
  4. package/dist/contractGuards.js.map +1 -1
  5. package/dist/core/StudioProvider.d.ts.map +1 -1
  6. package/dist/core/StudioProvider.js +87 -10
  7. package/dist/core/StudioProvider.js.map +1 -1
  8. package/dist/host/layout/auth/resolveAuthLayoutPlan.js +2 -2
  9. package/dist/host/layout/auth/resolveAuthLayoutPlan.js.map +1 -1
  10. package/dist/host/layout/layoutGenerator.js +3 -3
  11. package/dist/host/layout/layoutGenerator.js.map +1 -1
  12. package/dist/host/layout/templates/navigation.js +4 -10
  13. package/dist/host/layout/templates/navigation.js.map +1 -1
  14. package/dist/host/layout/templates/rootLayout.d.ts.map +1 -1
  15. package/dist/host/layout/templates/rootLayout.js +13 -8
  16. package/dist/host/layout/templates/rootLayout.js.map +1 -1
  17. package/dist/host/orchestrator/templates.d.ts.map +1 -1
  18. package/dist/host/orchestrator/templates.js +1 -11
  19. package/dist/host/orchestrator/templates.js.map +1 -1
  20. package/dist/host/templateRegistry/index.d.ts.map +1 -1
  21. package/dist/host/templateRegistry/index.js +2 -17
  22. package/dist/host/templateRegistry/index.js.map +1 -1
  23. package/dist/index.d.ts +6 -5
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/manifestState.d.ts +59 -2
  27. package/dist/manifestState.d.ts.map +1 -1
  28. package/dist/manifestState.js +336 -51
  29. package/dist/manifestState.js.map +1 -1
  30. package/dist/routeUtils.d.ts +1 -2
  31. package/dist/routeUtils.d.ts.map +1 -1
  32. package/dist/routeUtils.js +6 -44
  33. package/dist/routeUtils.js.map +1 -1
  34. package/dist/runtime/index.d.ts +0 -2
  35. package/dist/runtime/index.d.ts.map +1 -1
  36. package/dist/runtime/index.js +0 -2
  37. package/dist/runtime/index.js.map +1 -1
  38. package/dist/studioAdminRouteModel.d.ts +7 -1
  39. package/dist/studioAdminRouteModel.d.ts.map +1 -1
  40. package/dist/studioAdminRouteModel.js +54 -0
  41. package/dist/studioAdminRouteModel.js.map +1 -1
  42. package/dist/ui/admin/AnkhAdminPage.d.ts.map +1 -1
  43. package/dist/ui/admin/AnkhAdminPage.js +5 -1
  44. package/dist/ui/admin/AnkhAdminPage.js.map +1 -1
  45. package/dist/ui/admin/AnkhAdminShell.d.ts.map +1 -1
  46. package/dist/ui/admin/AnkhAdminShell.js +5 -2
  47. package/dist/ui/admin/AnkhAdminShell.js.map +1 -1
  48. package/dist/ui/admin/pages/ScreenDetailAdminPage.d.ts +6 -0
  49. package/dist/ui/admin/pages/ScreenDetailAdminPage.d.ts.map +1 -0
  50. package/dist/ui/admin/pages/ScreenDetailAdminPage.js +86 -0
  51. package/dist/ui/admin/pages/ScreenDetailAdminPage.js.map +1 -0
  52. package/dist/ui/admin/pages/ScreensAdminPage.d.ts +3 -0
  53. package/dist/ui/admin/pages/ScreensAdminPage.d.ts.map +1 -0
  54. package/dist/ui/admin/pages/ScreensAdminPage.js +99 -0
  55. package/dist/ui/admin/pages/ScreensAdminPage.js.map +1 -0
  56. package/dist/ui/admin/pages/screens/screensAdminActions.d.ts +28 -0
  57. package/dist/ui/admin/pages/screens/screensAdminActions.d.ts.map +1 -0
  58. package/dist/ui/admin/pages/screens/screensAdminActions.js +22 -0
  59. package/dist/ui/admin/pages/screens/screensAdminActions.js.map +1 -0
  60. package/dist/ui/studioAppBarModel.d.ts +10 -0
  61. package/dist/ui/studioAppBarModel.d.ts.map +1 -1
  62. package/dist/ui/studioAppBarModel.js +16 -1
  63. package/dist/ui/studioAppBarModel.js.map +1 -1
  64. package/dist/ui/useStudioAppBarAugmentation.d.ts.map +1 -1
  65. package/dist/ui/useStudioAppBarAugmentation.js +21 -3
  66. package/dist/ui/useStudioAppBarAugmentation.js.map +1 -1
  67. package/package.json +3 -15
  68. package/dist/manifestNavigatorPreviewModel.d.ts +0 -40
  69. package/dist/manifestNavigatorPreviewModel.d.ts.map +0 -1
  70. package/dist/manifestNavigatorPreviewModel.js +0 -191
  71. package/dist/manifestNavigatorPreviewModel.js.map +0 -1
  72. package/dist/runtime/previewRegistry.d.ts +0 -7
  73. package/dist/runtime/previewRegistry.d.ts.map +0 -1
  74. package/dist/runtime/previewRegistry.js +0 -6
  75. package/dist/runtime/previewRegistry.js.map +0 -1
  76. package/dist/runtime/previewRuntimeConfig.d.ts +0 -10
  77. package/dist/runtime/previewRuntimeConfig.d.ts.map +0 -1
  78. package/dist/runtime/previewRuntimeConfig.js +0 -13
  79. package/dist/runtime/previewRuntimeConfig.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AnkhAdminShell.js","sourceRoot":"","sources":["../../../src/ui/admin/AnkhAdminShell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnkhAdminShell.js","sourceRoot":"","sources":["../../../src/ui/admin/AnkhAdminShell.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export interface ScreenDetailAdminPageProps {
3
+ readonly screenId: string | null;
4
+ }
5
+ export declare function ScreenDetailAdminPage({ screenId }: ScreenDetailAdminPageProps): React.JSX.Element;
6
+ //# sourceMappingURL=ScreenDetailAdminPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScreenDetailAdminPage.d.ts","sourceRoot":"","sources":["../../../../src/ui/admin/pages/ScreenDetailAdminPage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAavC,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,0BAA0B,qBAgI7E"}
@@ -0,0 +1,86 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Button, ButtonGroup, Card, ListRow, ListSection, Text } from '@ankhorage/zora';
3
+ import { useRouter } from 'expo-router';
4
+ import React, { useMemo } from 'react';
5
+ import { StyleSheet, View } from 'react-native';
6
+ import { useStudio } from '../../../core/StudioContext';
7
+ import { deriveStudioScreenNavigationModel, resolveStudioScreenAppPath, } from '../../../manifestState';
8
+ import { createStudioAdminRoutePath } from '../../../studioAdminRouteModel';
9
+ import { AdminHeader, AdminScroll } from '../adminPagePrimitives';
10
+ export function ScreenDetailAdminPage({ screenId }) {
11
+ const studio = useStudio();
12
+ const router = useRouter();
13
+ const model = useMemo(() => (studio.manifest ? deriveStudioScreenNavigationModel(studio.manifest) : null), [studio.manifest]);
14
+ const screensPath = createStudioAdminRoutePath({ routeId: 'screens' });
15
+ const openScreens = () => {
16
+ if (screensPath)
17
+ router.push(screensPath);
18
+ };
19
+ if (!screenId) {
20
+ return (_jsxs(AdminScroll, { children: [_jsx(AdminHeader, { title: "Invalid screen route", description: "This URL does not contain one valid encoded ScreenSpec.id." }), _jsx(Button, { variant: "outline", onPress: openScreens, children: "Back to Screens" })] }));
21
+ }
22
+ if (!model) {
23
+ return (_jsxs(AdminScroll, { children: [_jsx(AdminHeader, { title: "Screen detail", description: "Canonical screen metadata is unavailable until the manifest loads." }), _jsx(Card, { compact: true, title: "Requested screen ID", children: _jsx(Text, { children: screenId }) })] }));
24
+ }
25
+ const matchingEntries = model.screens.filter((candidate) => candidate.screenId === screenId);
26
+ if (matchingEntries.length > 1) {
27
+ return (_jsxs(AdminScroll, { children: [_jsx(AdminHeader, { title: "Screen identity is ambiguous", description: "Multiple screen registry entries use this stable ScreenSpec.id. Studio will not select one arbitrarily." }), _jsx(Card, { compact: true, title: "Ambiguous stable screen ID", children: _jsx(Text, { children: screenId }) }), _jsx(Button, { variant: "outline", onPress: openScreens, children: "Back to Screens" })] }));
28
+ }
29
+ const [entry] = matchingEntries;
30
+ if (!entry) {
31
+ return (_jsxs(AdminScroll, { children: [_jsx(AdminHeader, { title: "Screen not found", description: "The requested screen is missing or was deleted from the canonical manifest." }), _jsx(Card, { compact: true, title: "Requested stable screen ID", children: _jsx(Text, { children: screenId }) }), _jsx(Button, { variant: "outline", onPress: openScreens, children: "Back to Screens" })] }));
32
+ }
33
+ const appPath = resolveStudioScreenAppPath(model, entry.screenId);
34
+ const label = entry.screen.title ?? entry.screen.name;
35
+ const openAppScreen = () => {
36
+ if (appPath)
37
+ router.replace(appPath);
38
+ };
39
+ return (_jsxs(AdminScroll, { children: [_jsx(AdminHeader, { title: label, description: "Canonical screen metadata and every manifest route reference for this stable screen ID." }), _jsxs(Card, { title: "Screen metadata", description: "Identity comes only from ScreenSpec.id.", children: [_jsx(MetadataFact, { label: "Stable screen ID", value: entry.screen.id }), _jsx(MetadataFact, { label: "Name", value: entry.screen.name }), _jsx(MetadataFact, { label: "Title", value: entry.screen.title ?? 'Not set' }), _jsx(MetadataFact, { label: "Description", value: entry.screen.description ?? 'Not set' })] }), _jsxs(ButtonGroup, { orientation: "responsive", align: "start", children: [_jsx(Button, { variant: "outline", onPress: openScreens, children: "Back to Screens" }), appPath ? _jsx(Button, { onPress: openAppScreen, children: "Open app screen" }) : null] }), !appPath ? _jsx(AppPathUnavailable, { entry: entry }) : null, _jsx(ListSection, { title: "Route references", description: formatRouteReferenceSummary(entry.routeReferences.length), children: entry.routeReferences.length === 0 ? (_jsx(ListRow, { title: "Unrouted screen", description: "This screen exists canonically but has no navigator route reference.", variant: "card" })) : (entry.routeReferences.map((reference, index) => (_jsx(RouteReferenceRow, { reference: reference, index: index }, `${formatRoutePath(reference.parentPath)}:${reference.route.name}:${index}`)))) })] }));
40
+ }
41
+ function MetadataFact(props) {
42
+ return (_jsxs(View, { style: styles.fact, children: [_jsx(Text, { color: "neutral", emphasis: "muted", variant: "caption", children: props.label }), _jsx(Text, { children: props.value })] }));
43
+ }
44
+ function AppPathUnavailable({ entry }) {
45
+ let description = 'This screen has no route reference, so there is no app pathname to open.';
46
+ if (entry.routeReferences.length > 1) {
47
+ description = `This screen has ${entry.routeReferences.length} route references. Studio will not choose one arbitrarily.`;
48
+ }
49
+ else if (entry.routeReferences.length === 1) {
50
+ description =
51
+ 'The canonical route reference does not resolve to one concrete, unambiguous app pathname because it is dynamic or collides with another route pattern.';
52
+ }
53
+ return _jsx(Card, { compact: true, title: "Open app screen unavailable", description: description });
54
+ }
55
+ function RouteReferenceRow(props) {
56
+ const { reference } = props;
57
+ const primaryVisibility = reference.isPrimaryNavigatorMember
58
+ ? `${reference.showInPrimaryNavigation ? 'Visible' : 'Hidden'}${reference.navigatorType === 'stack' ? ' (Stack has no primary-navigation chrome)' : ''}`
59
+ : 'Not applicable to this nested navigator reference';
60
+ const initialRoute = reference.isPrimaryNavigatorMember
61
+ ? reference.isPrimaryInitialRoute
62
+ ? 'Yes'
63
+ : 'No'
64
+ : 'Not applicable outside the primary navigator';
65
+ return (_jsx(ListRow, { title: reference.route.label ?? reference.route.name, meta: `Reference ${props.index + 1}`, variant: "card", description: _jsxs(View, { style: styles.referenceFacts, children: [_jsx(MetadataFact, { label: "Route key", value: reference.route.name }), _jsx(MetadataFact, { label: "Declared route path", value: reference.route.path ?? 'Derived from route key' }), _jsx(MetadataFact, { label: "Canonical pathname/pattern", value: reference.pathnamePattern }), _jsx(MetadataFact, { label: "Navigator parent", value: formatRoutePath(reference.parentPath) }), _jsx(MetadataFact, { label: "Navigator type", value: reference.navigatorType }), _jsx(MetadataFact, { label: "Sibling order", value: String(reference.siblingIndex + 1) }), _jsx(MetadataFact, { label: "Primary navigator member", value: reference.isPrimaryNavigatorMember ? 'Yes' : 'No' }), _jsx(MetadataFact, { label: "Primary-navigation visibility", value: primaryVisibility }), _jsx(MetadataFact, { label: "Primary initial route", value: initialRoute })] }) }));
66
+ }
67
+ function formatRouteReferenceSummary(count) {
68
+ if (count === 0)
69
+ return 'No route references resolve to this screen.';
70
+ if (count === 1)
71
+ return 'One canonical route reference resolves to this screen.';
72
+ return `${count} canonical route references resolve to this screen; each is shown separately.`;
73
+ }
74
+ function formatRoutePath(routePath) {
75
+ return routePath.length === 0 ? 'root' : routePath.join('/');
76
+ }
77
+ const styles = StyleSheet.create({
78
+ fact: {
79
+ gap: 2,
80
+ },
81
+ referenceFacts: {
82
+ gap: 10,
83
+ paddingTop: 4,
84
+ },
85
+ });
86
+ //# sourceMappingURL=ScreenDetailAdminPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScreenDetailAdminPage.js","sourceRoot":"","sources":["../../../../src/ui/admin/pages/ScreenDetailAdminPage.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare function ScreensAdminPage(): React.JSX.Element;
3
+ //# sourceMappingURL=ScreensAdminPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScreensAdminPage.d.ts","sourceRoot":"","sources":["../../../../src/ui/admin/pages/ScreensAdminPage.tsx"],"names":[],"mappings":"AAaA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAyBjD,wBAAgB,gBAAgB,sBAqI/B"}
@@ -0,0 +1,99 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { NAVIGATOR_TYPES } from '@ankhorage/contracts';
3
+ import { Button, ButtonGroup, Card, ConfirmDialog, Input, ListRow, ListSection, Select, SwitchField, Text, } from '@ankhorage/zora';
4
+ import React, { useMemo, useState } from 'react';
5
+ import { useRouter } from 'expo-router';
6
+ import { StyleSheet, View } from 'react-native';
7
+ import { useStudio } from '../../../core/StudioContext';
8
+ import { deriveStudioScreenNavigationModel, findNavigatorAtPath, } from '../../../manifestState';
9
+ import { createStudioScreenRoutePath } from '../../../studioAdminRouteModel';
10
+ import { AdminHeader, AdminScroll } from '../adminPagePrimitives';
11
+ import { applyScreensAdminAction } from './screens/screensAdminActions';
12
+ const NAVIGATOR_OPTIONS = NAVIGATOR_TYPES.map((value) => ({
13
+ value,
14
+ label: value[0]?.toUpperCase() + value.slice(1),
15
+ }));
16
+ export function ScreensAdminPage() {
17
+ const studio = useStudio();
18
+ const router = useRouter();
19
+ const [newScreenName, setNewScreenName] = useState('');
20
+ const [pendingDelete, setPendingDelete] = useState(null);
21
+ const model = useMemo(() => (studio.manifest ? deriveStudioScreenNavigationModel(studio.manifest) : null), [studio.manifest]);
22
+ const dispatch = (action) => applyScreensAdminAction(studio, action);
23
+ const createScreen = () => {
24
+ const name = newScreenName.trim();
25
+ if (!name)
26
+ return;
27
+ dispatch({ type: 'create-screen', name });
28
+ setNewScreenName('');
29
+ };
30
+ const confirmDelete = () => {
31
+ if (!pendingDelete)
32
+ return;
33
+ dispatch({ type: 'delete-screen', screenId: pendingDelete.screenId });
34
+ setPendingDelete(null);
35
+ };
36
+ if (!studio.manifest || !model) {
37
+ return (_jsx(AdminScroll, { children: _jsx(AdminHeader, { title: "Screens", description: "Screens and primary app navigation are unavailable until the manifest loads." }) }));
38
+ }
39
+ const manifest = studio.manifest;
40
+ return (_jsxs(_Fragment, { children: [_jsxs(AdminScroll, { children: [_jsx(AdminHeader, { title: "Screens", description: "Manage canonical screens and how direct routes participate in primary app navigation." }), _jsxs(Card, { title: "Primary navigator", description: "Changes preserve the existing nested route tree.", children: [_jsxs(View, { style: styles.field, children: [_jsx(Text, { variant: "bodySmall", weight: "semiBold", children: "Navigator type" }), _jsx(Select, { value: model.primaryNavigator.type, options: NAVIGATOR_OPTIONS, onValueChange: (navigatorType) => dispatch({ type: 'set-navigator-type', navigatorType }) })] }), _jsxs(Text, { color: "neutral", emphasis: "muted", variant: "caption", children: ["Primary navigator path: ", formatParentPath(model.primaryNavigatorPath)] })] }), _jsx(Card, { title: "Create screen", description: "New screens are routed in the primary navigator.", children: _jsxs(View, { style: styles.createRow, children: [_jsx(View, { style: styles.createInput, children: _jsx(Input, { accessibilityLabel: "New screen name", placeholder: "Screen name", value: newScreenName, onChangeText: setNewScreenName, onSubmitEditing: createScreen }) }), _jsx(Button, { disabled: !newScreenName.trim(), onPress: createScreen, children: "Create screen" })] }) }), model.diagnostics.length > 0 ? (_jsx(ListSection, { title: "Navigation diagnostics", description: "Resolve these manifest states before relying on ambiguous route mutations.", children: model.diagnostics.map((diagnostic, index) => (_jsx(ListRow, { title: diagnostic.code, description: diagnostic.message, meta: formatParentPath(diagnostic.parentPath), variant: "card" }, `${diagnostic.code}:${diagnostic.routeName ?? diagnostic.screenId ?? index}`))) })) : null, _jsx(ListSection, { title: "Screens", description: `${model.screens.length} canonical screen${model.screens.length === 1 ? '' : 's'}. Route existence and primary-navigation visibility are separate.`, children: model.screens.map((entry, index) => (_jsx(ScreenOverviewRow, { entry: entry, screenCount: model.screens.length, manifest: manifest, dispatch: dispatch, onOpenDetail: (screenId) => router.push(createStudioScreenRoutePath(screenId)), onRequestDelete: setPendingDelete }, `${entry.screenId}:${index}`))) })] }), _jsx(ConfirmDialog, { visible: pendingDelete !== null, title: "Delete screen?", description: pendingDelete
41
+ ? `Delete ${pendingDelete.label}, all of its route references, and bindings owned by its node tree?`
42
+ : undefined, confirmLabel: "Delete screen", confirmColor: "danger", onCancel: () => setPendingDelete(null), onConfirm: confirmDelete })] }));
43
+ }
44
+ function ScreenOverviewRow(props) {
45
+ const { entry } = props;
46
+ const label = entry.screen.title ?? entry.screen.name;
47
+ const canDelete = props.screenCount > 1;
48
+ return (_jsx(ListRow, { title: label, meta: entry.screenId, variant: "card", action: _jsxs(ButtonGroup, { orientation: "responsive", align: "end", children: [_jsx(Button, { variant: "outline", onPress: () => props.onOpenDetail(entry.screenId), children: "Details" }), _jsx(Button, { color: "danger", variant: "ghost", disabled: !canDelete, onPress: () => props.onRequestDelete({ screenId: entry.screenId, label }), children: "Delete" })] }), description: _jsxs(View, { style: styles.screenDetails, children: [entry.screen.name !== label ? (_jsxs(Text, { color: "neutral", variant: "bodySmall", children: ["Name: ", entry.screen.name] })) : null, !canDelete ? (_jsx(Text, { color: "neutral", emphasis: "muted", variant: "caption", children: "The final remaining screen cannot be deleted." })) : null, entry.routeReferences.length === 0 ? (_jsx(Text, { color: "neutral", emphasis: "muted", variant: "bodySmall", children: "Unrouted screen" })) : (entry.routeReferences.map((reference) => (_jsx(ScreenRouteReferenceControls, { reference: reference, siblingCount: findNavigatorAtPath(props.manifest.navigator, reference.parentPath)?.routes
49
+ .length ?? 0, dispatch: props.dispatch }, `${formatParentPath(reference.parentPath)}:${reference.route.name}`))))] }) }));
50
+ }
51
+ function ScreenRouteReferenceControls(props) {
52
+ const { reference } = props;
53
+ const routeContext = `${formatParentPath(reference.parentPath)} · ${reference.navigatorType}`;
54
+ return (_jsxs(Card, { compact: true, title: reference.route.label ?? reference.route.name, description: routeContext, children: [_jsxs(View, { style: styles.routeFacts, children: [_jsxs(Text, { color: "neutral", variant: "bodySmall", children: ["Path: ", reference.pathnamePattern] }), _jsxs(Text, { color: "neutral", variant: "bodySmall", children: ["Route key: ", reference.route.name, " \u00B7 Order ", reference.siblingIndex + 1] })] }), reference.isPrimaryNavigatorMember ? (_jsxs(_Fragment, { children: [_jsx(SwitchField, { label: "Visible in primary navigation", description: "Hidden routes remain valid and programmatically navigable.", value: reference.showInPrimaryNavigation, onValueChange: (showInPrimaryNavigation) => props.dispatch({
55
+ type: 'set-primary-navigation-visibility',
56
+ parentPath: reference.parentPath,
57
+ routeName: reference.route.name,
58
+ showInPrimaryNavigation,
59
+ }) }), _jsxs(ButtonGroup, { orientation: "responsive", align: "start", children: [_jsx(Button, { variant: "outline", disabled: reference.isPrimaryInitialRoute, onPress: () => props.dispatch({
60
+ type: 'set-initial-route',
61
+ routeName: reference.route.name,
62
+ }), children: reference.isPrimaryInitialRoute ? 'Initial route' : 'Set as initial' }), _jsx(Button, { color: "neutral", variant: "ghost", disabled: reference.siblingIndex === 0, onPress: () => props.dispatch({
63
+ type: 'move-route',
64
+ parentPath: reference.parentPath,
65
+ routeName: reference.route.name,
66
+ toIndex: reference.siblingIndex - 1,
67
+ }), children: "Move up" }), _jsx(Button, { color: "neutral", variant: "ghost", disabled: reference.siblingIndex >= props.siblingCount - 1, onPress: () => props.dispatch({
68
+ type: 'move-route',
69
+ parentPath: reference.parentPath,
70
+ routeName: reference.route.name,
71
+ toIndex: reference.siblingIndex + 1,
72
+ }), children: "Move down" })] })] })) : (_jsx(Text, { color: "neutral", emphasis: "muted", variant: "caption", children: "Nested route reference. ADM 8 does not provide arbitrary nested navigator editing." }))] }));
73
+ }
74
+ function formatParentPath(parentPath) {
75
+ return parentPath.length === 0 ? 'root' : parentPath.join('/');
76
+ }
77
+ const styles = StyleSheet.create({
78
+ createRow: {
79
+ alignItems: 'center',
80
+ flexDirection: 'row',
81
+ flexWrap: 'wrap',
82
+ gap: 12,
83
+ },
84
+ createInput: {
85
+ flexGrow: 1,
86
+ minWidth: 220,
87
+ },
88
+ field: {
89
+ gap: 8,
90
+ },
91
+ routeFacts: {
92
+ gap: 4,
93
+ },
94
+ screenDetails: {
95
+ gap: 10,
96
+ paddingTop: 4,
97
+ },
98
+ });
99
+ //# sourceMappingURL=ScreensAdminPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScreensAdminPage.js","sourceRoot":"","sources":["../../../../src/ui/admin/pages/ScreensAdminPage.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type { NavigatorType } from '@ankhorage/contracts';
2
+ import type { StudioContextValue } from '../../../../index';
3
+ export type ScreensAdminAction = {
4
+ type: 'create-screen';
5
+ name: string;
6
+ } | {
7
+ type: 'delete-screen';
8
+ screenId: string;
9
+ } | {
10
+ type: 'set-navigator-type';
11
+ navigatorType: NavigatorType;
12
+ } | {
13
+ type: 'set-initial-route';
14
+ routeName: string;
15
+ } | {
16
+ type: 'set-primary-navigation-visibility';
17
+ parentPath: string[];
18
+ routeName: string;
19
+ showInPrimaryNavigation: boolean;
20
+ } | {
21
+ type: 'move-route';
22
+ parentPath: string[];
23
+ routeName: string;
24
+ toIndex: number;
25
+ };
26
+ export type ScreensAdminMutationTarget = Pick<StudioContextValue, 'addScreen' | 'deleteScreen' | 'moveRoute' | 'setNavigatorInitialRoute' | 'setNavigatorType' | 'setRoutePrimaryNavigationVisibility'>;
27
+ export declare function applyScreensAdminAction(target: ScreensAdminMutationTarget, action: ScreensAdminAction): void;
28
+ //# sourceMappingURL=screensAdminActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screensAdminActions.d.ts","sourceRoot":"","sources":["../../../../../src/ui/admin/pages/screens/screensAdminActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,aAAa,EAAE,aAAa,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAChD;IACE,IAAI,EAAE,mCAAmC,CAAC;IAC1C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB,EAAE,OAAO,CAAC;CAClC,GACD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAErF,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,kBAAkB,EAChB,WAAW,GACX,cAAc,GACd,WAAW,GACX,0BAA0B,GAC1B,kBAAkB,GAClB,qCAAqC,CACxC,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,0BAA0B,EAClC,MAAM,EAAE,kBAAkB,GACzB,IAAI,CAwBN"}
@@ -0,0 +1,22 @@
1
+ export function applyScreensAdminAction(target, action) {
2
+ switch (action.type) {
3
+ case 'create-screen':
4
+ target.addScreen(action.name);
5
+ return;
6
+ case 'delete-screen':
7
+ target.deleteScreen(action.screenId);
8
+ return;
9
+ case 'set-navigator-type':
10
+ target.setNavigatorType(action.navigatorType);
11
+ return;
12
+ case 'set-initial-route':
13
+ target.setNavigatorInitialRoute(action.routeName);
14
+ return;
15
+ case 'set-primary-navigation-visibility':
16
+ target.setRoutePrimaryNavigationVisibility(action.parentPath, action.routeName, action.showInPrimaryNavigation);
17
+ return;
18
+ case 'move-route':
19
+ target.moveRoute(action.parentPath, action.routeName, action.toIndex);
20
+ }
21
+ }
22
+ //# sourceMappingURL=screensAdminActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screensAdminActions.js","sourceRoot":"","sources":["../../../../../src/ui/admin/pages/screens/screensAdminActions.ts"],"names":[],"mappings":"AA2BA,MAAM,UAAU,uBAAuB,CACrC,MAAkC,EAClC,MAA0B;IAE1B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,eAAe;YAClB,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,OAAO;QACT,KAAK,eAAe;YAClB,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrC,OAAO;QACT,KAAK,oBAAoB;YACvB,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC9C,OAAO;QACT,KAAK,mBAAmB;YACtB,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClD,OAAO;QACT,KAAK,mCAAmC;YACtC,MAAM,CAAC,mCAAmC,CACxC,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,uBAAuB,CAC/B,CAAC;YACF,OAAO;QACT,KAAK,YAAY;YACf,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC"}
@@ -8,6 +8,16 @@ export interface ResolveStudioAppBarContextActionsArgs {
8
8
  readonly canInsert: boolean;
9
9
  readonly canInsertInside: boolean;
10
10
  readonly canDelete: boolean;
11
+ readonly previewMode?: boolean;
11
12
  }
13
+ export interface StudioAppBarModeAction {
14
+ readonly label: 'Edit' | 'Preview';
15
+ readonly icon: {
16
+ readonly name: 'create-outline' | 'eye-outline';
17
+ };
18
+ readonly color: 'neutral' | 'primary';
19
+ readonly variant: 'ghost' | 'solid';
20
+ }
21
+ export declare function resolveStudioAppBarModeAction(previewMode: boolean): StudioAppBarModeAction;
12
22
  export declare function resolveStudioAppBarContextActions(args: ResolveStudioAppBarContextActionsArgs): StudioAppBarContextAction[];
13
23
  //# sourceMappingURL=studioAppBarModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"studioAppBarModel.d.ts","sourceRoot":"","sources":["../../src/ui/studioAppBarModel.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,EAAE,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,cAAc,GAAG,gBAAgB,CAAC;IACjG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qCAAqC;IACpD,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,qCAAqC,GAC1C,yBAAyB,EAAE,CAwB7B"}
1
+ {"version":3,"file":"studioAppBarModel.d.ts","sourceRoot":"","sources":["../../src/ui/studioAppBarModel.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,EAAE,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,cAAc,GAAG,gBAAgB,CAAC;IACjG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qCAAqC;IACpD,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,aAAa,CAAA;KAAE,CAAC;IACnE,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;CACrC;AAED,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,OAAO,GAAG,sBAAsB,CAc1F;AAED,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,qCAAqC,GAC1C,yBAAyB,EAAE,CAwB7B"}
@@ -1,5 +1,20 @@
1
+ export function resolveStudioAppBarModeAction(previewMode) {
2
+ return previewMode
3
+ ? {
4
+ label: 'Edit',
5
+ icon: { name: 'create-outline' },
6
+ color: 'primary',
7
+ variant: 'solid',
8
+ }
9
+ : {
10
+ label: 'Preview',
11
+ icon: { name: 'eye-outline' },
12
+ color: 'neutral',
13
+ variant: 'ghost',
14
+ };
15
+ }
1
16
  export function resolveStudioAppBarContextActions(args) {
2
- if (!args.selectedNodeId) {
17
+ if (args.previewMode || !args.selectedNodeId) {
3
18
  return [];
4
19
  }
5
20
  const actions = [
@@ -1 +1 @@
1
- {"version":3,"file":"studioAppBarModel.js","sourceRoot":"","sources":["../../src/ui/studioAppBarModel.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,iCAAiC,CAC/C,IAA2C;IAE3C,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAgC;QAC3C,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;QACzC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;KACtC,CAAC;IAEF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"studioAppBarModel.js","sourceRoot":"","sources":["../../src/ui/studioAppBarModel.ts"],"names":[],"mappings":"AAqBA,MAAM,UAAU,6BAA6B,CAAC,WAAoB;IAChE,OAAO,WAAW;QAChB,CAAC,CAAC;YACE,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;YAChC,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,OAAO;SACjB;QACH,CAAC,CAAC;YACE,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;YAC7B,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,OAAO;SACjB,CAAC;AACR,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,IAA2C;IAE3C,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAgC;QAC3C,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;QACzC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;KACtC,CAAC;IAEF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useStudioAppBarAugmentation.d.ts","sourceRoot":"","sources":["../../src/ui/useStudioAppBarAugmentation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAsB3C,MAAM,WAAW,wBAAwB;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAWD,wBAAgB,2BAA2B,IAAI,wBAAwB,CA4JtE"}
1
+ {"version":3,"file":"useStudioAppBarAugmentation.d.ts","sourceRoot":"","sources":["../../src/ui/useStudioAppBarAugmentation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAyB3C,MAAM,WAAW,wBAAwB;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAWD,wBAAgB,2BAA2B,IAAI,wBAAwB,CA+KtE"}
@@ -6,7 +6,7 @@ import { buildInsertCatalogEntries, findNodeById, resolveInsertCatalogEntries, }
6
6
  import { resolveNodeLabel } from '../insertModalModel';
7
7
  import { createStudioBindingsRoutePath, createStudioPropertiesRoutePath, isStudioAdminPath, resolveStudioLastNonAdminLocation, resolveStudioNavigableLocation, } from '../studioAdminRouteModel';
8
8
  import { createStudioSelectionContext } from '../studioSelectionModel';
9
- import { resolveStudioAppBarContextActions } from './studioAppBarModel';
9
+ import { resolveStudioAppBarContextActions, resolveStudioAppBarModeAction, } from './studioAppBarModel';
10
10
  import { StudioDeleteDialog } from './StudioDeleteDialog';
11
11
  import { StudioInsertDialog } from './StudioInsertDialog';
12
12
  function resolveContextActionIcon(id) {
@@ -28,6 +28,14 @@ export function useStudioAppBarAugmentation() {
28
28
  const router = useRouter();
29
29
  const [insertVisible, setInsertVisible] = React.useState(false);
30
30
  const [deleteCandidateId, setDeleteCandidateId] = React.useState(null);
31
+ const isAdminPath = isStudioAdminPath(pathname);
32
+ React.useEffect(() => {
33
+ if (!studio.previewMode)
34
+ return;
35
+ setInsertVisible(false);
36
+ setDeleteCandidateId(null);
37
+ studio.setActivePanelId(null);
38
+ }, [studio.previewMode, studio.setActivePanelId]);
31
39
  const openAdministration = useCallback(() => {
32
40
  const appLocation = resolveStudioLastNonAdminLocation({
33
41
  pathname,
@@ -82,7 +90,9 @@ export function useStudioAppBarAugmentation() {
82
90
  canInsert,
83
91
  canInsertInside,
84
92
  canDelete,
93
+ previewMode: studio.previewMode,
85
94
  });
95
+ const modeAction = resolveStudioAppBarModeAction(studio.previewMode);
86
96
  const openInsert = useCallback(() => setInsertVisible(true), []);
87
97
  const openDelete = useCallback(() => {
88
98
  if (selection.selectedNodeId)
@@ -106,7 +116,7 @@ export function useStudioAppBarAugmentation() {
106
116
  return selectParent;
107
117
  return clearSelection;
108
118
  }, [clearSelection, openBindings, openDelete, openInsert, openProperties, selectParent]);
109
- const actions = isStudioAdminPath(pathname)
119
+ const actions = isAdminPath
110
120
  ? null
111
121
  : [
112
122
  React.createElement(IconButton, {
@@ -117,6 +127,14 @@ export function useStudioAppBarAugmentation() {
117
127
  color: 'neutral',
118
128
  onPress: openAdministration,
119
129
  }),
130
+ React.createElement(IconButton, {
131
+ key: 'preview-mode',
132
+ icon: modeAction.icon,
133
+ label: modeAction.label,
134
+ variant: modeAction.variant,
135
+ color: modeAction.color,
136
+ onPress: studio.togglePreviewMode,
137
+ }),
120
138
  ...contextActions.map((action) => {
121
139
  return React.createElement(IconButton, {
122
140
  key: action.id,
@@ -130,7 +148,7 @@ export function useStudioAppBarAugmentation() {
130
148
  ];
131
149
  return {
132
150
  actions,
133
- overlays: isStudioAdminPath(pathname)
151
+ overlays: isAdminPath || studio.previewMode
134
152
  ? null
135
153
  : React.createElement(React.Fragment, null, React.createElement(StudioInsertDialog, {
136
154
  componentMeta: studio.componentMeta,
@@ -1 +1 @@
1
- {"version":3,"file":"useStudioAppBarAugmentation.js","sourceRoot":"","sources":["../../src/ui/useStudioAppBarAugmentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useStudioAppBarAugmentation.js","sourceRoot":"","sources":["../../src/ui/useStudioAppBarAugmentation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ankhorage/studio",
3
- "version": "0.15.0",
3
+ "version": "0.17.0",
4
4
  "description": "Studio authoring package for Ankhorage apps",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/ankhorage/studio#readme",
@@ -56,14 +56,6 @@
56
56
  "types": "./dist/runtime/localizationPreview.d.ts",
57
57
  "import": "./dist/runtime/localizationPreview.js"
58
58
  },
59
- "./runtime/previewRegistry": {
60
- "types": "./dist/runtime/previewRegistry.d.ts",
61
- "import": "./dist/runtime/previewRegistry.js"
62
- },
63
- "./runtime/previewRuntimeConfig": {
64
- "types": "./dist/runtime/previewRuntimeConfig.d.ts",
65
- "import": "./dist/runtime/previewRuntimeConfig.js"
66
- },
67
59
  "./runtime/registry": {
68
60
  "types": "./dist/runtime/registry.d.ts",
69
61
  "import": "./dist/runtime/registry.js"
@@ -120,10 +112,6 @@
120
112
  "types": "./dist/localizationPanelModel.d.ts",
121
113
  "import": "./dist/localizationPanelModel.js"
122
114
  },
123
- "./manifestNavigatorPreviewModel": {
124
- "types": "./dist/manifestNavigatorPreviewModel.d.ts",
125
- "import": "./dist/manifestNavigatorPreviewModel.js"
126
- },
127
115
  "./manifestState": {
128
116
  "types": "./dist/manifestState.d.ts",
129
117
  "import": "./dist/manifestState.js"
@@ -231,7 +219,7 @@
231
219
  ],
232
220
  "dependencies": {
233
221
  "@ankhorage/color-theory": "^0.0.8",
234
- "@ankhorage/contracts": "^4.0.2",
222
+ "@ankhorage/contracts": "^5.0.0",
235
223
  "@ankhorage/data-sources": "^1.0.1",
236
224
  "@ankhorage/expo-runtime": "^1.0.0",
237
225
  "@ankhorage/infra": "^2.0.1",
@@ -242,7 +230,7 @@
242
230
  "@ankhorage/runtime": "^1.0.0",
243
231
  "@ankhorage/supabase-auth": "^1.1.2",
244
232
  "@ankhorage/supabase-vault": "^0.2.4",
245
- "@ankhorage/templates": "^4.0.0",
233
+ "@ankhorage/templates": "^5.0.0",
246
234
  "@ankhorage/zora": "^2.9.3",
247
235
  "@ankhorage/zora-chess": "^0.1.2",
248
236
  "@ankhorage/zora-tabletop": "^0.0.5",
@@ -1,40 +0,0 @@
1
- import { type AppManifest, type IconSpec, type NavigatorSpec, type RouteDefinition } from '@ankhorage/contracts';
2
- export interface PreviewNavigationDiagnostic {
3
- kind: 'icon';
4
- severity: 'warning';
5
- message: string;
6
- routeName: string;
7
- provider?: string;
8
- iconName?: string;
9
- }
10
- export interface PreviewNavigationRoute {
11
- name: string;
12
- label: string;
13
- icon?: IconSpec;
14
- route: RouteDefinition;
15
- }
16
- export interface StudioNavigationRouteMapEntry {
17
- label: string;
18
- icon?: IconSpec;
19
- }
20
- export type StudioNavigationRouteMap = Record<string, StudioNavigationRouteMapEntry>;
21
- export interface ManifestNavigatorPreviewModel {
22
- navigator: NavigatorSpec;
23
- visibleRoutes: readonly PreviewNavigationRoute[];
24
- routeMap: StudioNavigationRouteMap;
25
- activeRouteIndex: number;
26
- activeRouteName: string | null;
27
- resolvedActiveScreenId: string | null;
28
- iconDiagnostics: readonly PreviewNavigationDiagnostic[];
29
- }
30
- export declare function resolveLeafScreenIdForRoute(route: RouteDefinition): string | null;
31
- export declare function resolveLeafScreenIdForChromeRouteName(args: {
32
- navigator: NavigatorSpec;
33
- visibleRoutes: readonly PreviewNavigationRoute[];
34
- routeName: string;
35
- }): string | null;
36
- export declare function buildManifestNavigatorPreviewModel(args: {
37
- manifest: AppManifest;
38
- activeScreenId?: string | undefined;
39
- }): ManifestNavigatorPreviewModel;
40
- //# sourceMappingURL=manifestNavigatorPreviewModel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifestNavigatorPreviewModel.d.ts","sourceRoot":"","sources":["../src/manifestNavigatorPreviewModel.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,aAAa,EAElB,KAAK,eAAe,EACrB,MAAM,sBAAsB,CAAC;AAQ9B,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,eAAe,CAAC;CACxB;AAED,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;AAErF,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,aAAa,CAAC;IACzB,aAAa,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACjD,QAAQ,EAAE,wBAAwB,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,eAAe,EAAE,SAAS,2BAA2B,EAAE,CAAC;CACzD;AA4FD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAYjF;AAED,wBAAgB,qCAAqC,CAAC,IAAI,EAAE;IAC1D,SAAS,EAAE,aAAa,CAAC;IACzB,aAAa,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,GAAG,IAAI,CAKhB;AAsFD,wBAAgB,kCAAkC,CAAC,IAAI,EAAE;IACvD,QAAQ,EAAE,WAAW,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC,GAAG,6BAA6B,CAyChC"}