@industry-theme/file-city-panel 0.5.60 → 0.5.62
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.d.ts +13 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/FileCitySequenceExplorer.d.ts +6 -0
- package/dist/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/FileCitySequenceExplorer.d.ts.map +1 -1
- package/dist/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/styles.d.ts +1 -2
- package/dist/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/styles.d.ts.map +1 -1
- package/dist/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorerPanel.d.ts +5 -0
- package/dist/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorerPanel.d.ts.map +1 -1
- package/dist/panels/FileCityTrailExplorerPanel/FileCityTrailExplorerPanel.d.ts +23 -0
- package/dist/panels/FileCityTrailExplorerPanel/FileCityTrailExplorerPanel.d.ts.map +1 -0
- package/dist/panels/FileCityTrailExplorerPanel/buildSequenceViewInputs.d.ts +29 -0
- package/dist/panels/FileCityTrailExplorerPanel/buildSequenceViewInputs.d.ts.map +1 -0
- package/dist/panels/FileCityTrailExplorerPanel/cameraFraming.d.ts +42 -0
- package/dist/panels/FileCityTrailExplorerPanel/cameraFraming.d.ts.map +1 -0
- package/dist/panels/FileCityTrailExplorerPanel/index.d.ts +2 -0
- package/dist/panels/FileCityTrailExplorerPanel/index.d.ts.map +1 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailDiffSnippetView.d.ts +45 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailDiffSnippetView.d.ts.map +1 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailLeaderLine.d.ts +39 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailLeaderLine.d.ts.map +1 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailMarkdownOverlay.d.ts +50 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailMarkdownOverlay.d.ts.map +1 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailSnippetView.d.ts +35 -0
- package/dist/panels/FileCityTrailExplorerPanel/overlays/TrailSnippetView.d.ts.map +1 -0
- package/dist/panels/utils/styles.d.ts +22 -0
- package/dist/panels/utils/styles.d.ts.map +1 -0
- package/dist/panels.bundle.js +1904 -250
- package/dist/panels.bundle.js.map +1 -1
- package/dist/types/FileCityTrailExplorerPanel.d.ts +83 -0
- package/dist/types/FileCityTrailExplorerPanel.d.ts.map +1 -0
- package/dist/types/Trail.d.ts +508 -0
- package/dist/types/Trail.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { PanelDefinition, PanelActions, CodeCityPanelContext, FeedCodeCityPanelContext, FileCitySequenceExplorerPanelActions, FileCitySequenceExplorerPanelContext } from './types';
|
|
1
|
+
import type { PanelDefinition, PanelActions, CodeCityPanelContext, FeedCodeCityPanelContext, FileCitySequenceExplorerPanelActions, FileCitySequenceExplorerPanelContext, FileCityTrailExplorerPanelActions, FileCityTrailExplorerPanelContext } from './types';
|
|
2
2
|
/**
|
|
3
3
|
* Export array of panel definitions.
|
|
4
4
|
* This is the required export for panel extensions.
|
|
5
5
|
* Using generic types for v0.4.2+ typed actions and context.
|
|
6
6
|
*/
|
|
7
|
-
export declare const panels: (PanelDefinition<PanelActions, CodeCityPanelContext> | PanelDefinition<PanelActions, FeedCodeCityPanelContext> | PanelDefinition<FileCitySequenceExplorerPanelActions, FileCitySequenceExplorerPanelContext>)[];
|
|
7
|
+
export declare const panels: (PanelDefinition<PanelActions, CodeCityPanelContext> | PanelDefinition<PanelActions, FeedCodeCityPanelContext> | PanelDefinition<FileCitySequenceExplorerPanelActions, FileCitySequenceExplorerPanelContext> | PanelDefinition<FileCityTrailExplorerPanelActions, FileCityTrailExplorerPanelContext>)[];
|
|
8
8
|
/**
|
|
9
9
|
* Optional: Called once when the entire package is loaded.
|
|
10
10
|
* Use this for package-level initialization.
|
|
@@ -23,7 +23,7 @@ export { codeCityPanelTools, codeCityPanelToolsMetadata, focusBuildingTool, sele
|
|
|
23
23
|
/**
|
|
24
24
|
* Export types for host applications to create the fileCityColorModes slice.
|
|
25
25
|
*/
|
|
26
|
-
export type { FileCityColorModesSliceData, QualitySliceData, ColorMode, ColorModeConfig, FileMetricData, HighlightLayer, CodeCityPanelPropsTyped, CodeCityPanelContext, CommitFilesSliceData, PrFilesSliceData, PackagesSliceData, AlexandriaEntry, ActivityDay, ActivityHeatmapSliceData, ForkTourSliceData, LineCountsSliceData, SequenceEvent, SequenceEdge, SliceSnippet, DiffSnippet, SequenceEventSnippet, FileCitySequenceEventDef, SequenceLayoutOptions, SliceRange, SnippetSliceAnchor, SnippetDiffAnchor, SequenceSnippetNote, MarkdownTextQuoteAnchor, MarkdownNoteScope, SequenceMarkdownNote, SequenceNote, SequenceNoteDraft, SequenceDiagramPayload, BaseSequenceDiagramIndexEntry, NodePosition, EventAttributeSchema, EventRecord, NamespaceRecord, ScopeRecord, ScopeWorkspace, AddScopeInput, AddNamespaceInput, AddPathToNamespaceInput, AddEventInput, LatestCommitFileEntry, LatestCommitSliceData, AreaWorkspace, FileCitySequenceExplorerRepository, FileCitySequenceExplorerPanelContext, AddToScopeActionInput, AddAreaActionInput, AddPathToAreaActionInput, FileCitySequenceExplorerPanelActions, FileCitySequenceExplorerPanelPropsTyped, } from './types';
|
|
26
|
+
export type { FileCityColorModesSliceData, QualitySliceData, ColorMode, ColorModeConfig, FileMetricData, HighlightLayer, CodeCityPanelPropsTyped, CodeCityPanelContext, CommitFilesSliceData, PrFilesSliceData, PackagesSliceData, AlexandriaEntry, ActivityDay, ActivityHeatmapSliceData, ForkTourSliceData, LineCountsSliceData, SequenceEvent, SequenceEdge, SliceSnippet, DiffSnippet, SequenceEventSnippet, FileCitySequenceEventDef, SequenceLayoutOptions, SliceRange, SnippetSliceAnchor, SnippetDiffAnchor, SequenceSnippetNote, MarkdownTextQuoteAnchor, MarkdownNoteScope, SequenceMarkdownNote, SequenceNote, SequenceNoteDraft, SequenceDiagramPayload, BaseSequenceDiagramIndexEntry, NodePosition, EventAttributeSchema, EventRecord, NamespaceRecord, ScopeRecord, ScopeWorkspace, AddScopeInput, AddNamespaceInput, AddPathToNamespaceInput, AddEventInput, LatestCommitFileEntry, LatestCommitSliceData, AreaWorkspace, FileCitySequenceExplorerRepository, FileCitySequenceExplorerPanelContext, AddToScopeActionInput, AddAreaActionInput, AddPathToAreaActionInput, FileCitySequenceExplorerPanelActions, FileCitySequenceExplorerPanelPropsTyped, TrailRepo, TrailSliceSnippet, TrailDiffSnippet, TrailMarkerSnippet, TrailMarker, SequenceMarkerRef, SequenceViewActor, SequenceViewLayout, TrailView, TrailSequenceView, TrailLinearView, TrailGraphView, TrailTreeView, TrailTimelineView, TrailSliceRange, TrailSnippetSliceAnchor, TrailSnippetDiffAnchor, TrailSnippetNote, TrailMarkdownTextQuoteAnchor, TrailMarkdownNoteScope, TrailMarkdownNote, TrailNote, TrailNoteDraft, TrailPayload, BaseTrailIndexEntry, FileCityTrailExplorerRepository, FileCityTrailExplorerPanelContext, FileCityTrailExplorerPanelActions, FileCityTrailExplorerPanelPropsTyped, } from './types';
|
|
27
27
|
/**
|
|
28
28
|
* Export color mode constants for host applications.
|
|
29
29
|
*/
|
|
@@ -45,9 +45,19 @@ export type { FeedProjectSliceData, FeedCodeCityPanelPropsTyped, FeedCodeCityPan
|
|
|
45
45
|
* Hosts wire it via FileCitySequenceExplorerPanelContext (slices) and
|
|
46
46
|
* FileCitySequenceExplorerPanelActions (required actions). See
|
|
47
47
|
* docs/FILE_CITY_EXPLORER_PORT.md for the full alignment doc.
|
|
48
|
+
*
|
|
49
|
+
* @deprecated Use {@link FileCityTrailExplorerPanel} instead. The trail medium
|
|
50
|
+
* supersedes the sequence-diagram panel; this surface is retained for existing
|
|
51
|
+
* hosts but should not be wired into new integrations.
|
|
48
52
|
*/
|
|
49
53
|
export { FileCitySequenceExplorerPanel, FileCitySequenceExplorer, buildCityDataFromContext, stripRootPath, } from './panels/FileCitySequenceExplorerPanel';
|
|
50
54
|
export type { FileCitySequenceExplorerProps, BuildCityDataInput, } from './panels/FileCitySequenceExplorerPanel';
|
|
55
|
+
/**
|
|
56
|
+
* FileCityTrailExplorerPanel — explorer for the new trail medium (parallel
|
|
57
|
+
* to the sequence-diagram panel above; not a replacement). See
|
|
58
|
+
* docs/TRAIL_RENAME.md for the medium design.
|
|
59
|
+
*/
|
|
60
|
+
export { FileCityTrailExplorerPanel } from './panels/FileCityTrailExplorerPanel';
|
|
51
61
|
export { FileCardList } from './panels/components/FileCardList';
|
|
52
62
|
export type { FileCardItem } from './panels/components/FileCardList';
|
|
53
63
|
export { GitChangesCardList } from './panels/components/GitChangesCardList';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -82,6 +82,12 @@ export interface FileCitySequenceExplorerProps {
|
|
|
82
82
|
addArea: (input: AddAreaActionInput) => Promise<void>;
|
|
83
83
|
addPathToArea: (input: AddPathToAreaActionInput) => Promise<void>;
|
|
84
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* @deprecated Use the trail explorer (`FileCityTrailExplorerPanel` /
|
|
87
|
+
* `FileCityTrailExplorer`) instead. The trail medium supersedes the
|
|
88
|
+
* sequence-diagram explorer; this component is retained for existing hosts
|
|
89
|
+
* but should not be wired into new integrations.
|
|
90
|
+
*/
|
|
85
91
|
export declare const FileCitySequenceExplorer: React.FC<FileCitySequenceExplorerProps>;
|
|
86
92
|
export {};
|
|
87
93
|
//# sourceMappingURL=FileCitySequenceExplorer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileCitySequenceExplorer.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/FileCitySequenceExplorer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,OAAO,EAIL,KAAK,QAAQ,EAId,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC;;;GAGG;AACH,KAAK,aAAa,GAAG,CACnB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,KACpC,IAAI,CAAC;AACV,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAErE,OAAO,KAAK,EAEV,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,8CAA8C,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AA6F/E,MAAM,WAAW,6BAA6B;IAC5C,4CAA4C;IAC5C,QAAQ,EAAE,QAAQ,CAAC;IACnB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAClD;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IAC/C;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAI9B,iEAAiE;IACjE,YAAY,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC3C,iEAAiE;IACjE,kBAAkB,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC9C;kCAC8B;IAC9B,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,IAAI,CAAC;IACtC,8DAA8D;IAC9D,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,IAAI,CAAC;IAIrC,aAAa,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C,UAAU,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,OAAO,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,aAAa,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE;AAOD,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CA++D5E,CAAC"}
|
|
1
|
+
{"version":3,"file":"FileCitySequenceExplorer.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/FileCitySequenceExplorer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,OAAO,EAIL,KAAK,QAAQ,EAId,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC;;;GAGG;AACH,KAAK,aAAa,GAAG,CACnB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,KACpC,IAAI,CAAC;AACV,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAErE,OAAO,KAAK,EAEV,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,8CAA8C,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AA6F/E,MAAM,WAAW,6BAA6B;IAC5C,4CAA4C;IAC5C,QAAQ,EAAE,QAAQ,CAAC;IACnB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAClD;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IAC/C;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAI9B,iEAAiE;IACjE,YAAY,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC3C,iEAAiE;IACjE,kBAAkB,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC9C;kCAC8B;IAC9B,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,IAAI,CAAC;IACtC,8DAA8D;IAC9D,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,IAAI,CAAC;IAIrC,aAAa,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C,UAAU,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,OAAO,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,aAAa,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE;AAOD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CA++D5E,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
import type { Theme } from '@principal-ade/industry-theme';
|
|
3
|
-
|
|
4
|
-
export declare const withAlpha: (color: string, percent: number) => string;
|
|
3
|
+
export { withAlpha } from '../../utils/styles';
|
|
5
4
|
/** Reused across overlays, modals, and the selected-folder card. */
|
|
6
5
|
export declare const makeSectionLabelStyle: (theme: Theme) => React.CSSProperties;
|
|
7
6
|
/** Frame style for the right-side info overlay. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAE3D
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorer/styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,oEAAoE;AACpE,eAAO,MAAM,qBAAqB,GAAI,OAAO,KAAK,KAAG,KAAK,CAAC,aAKzD,CAAC;AAEH,mDAAmD;AACnD,eAAO,MAAM,gBAAgB,GAAI,OAAO,KAAK,KAAG,KAAK,CAAC,aAiBpD,CAAC"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { FileCitySequenceExplorerPanelPropsTyped } from '../../types/FileCitySequenceExplorerPanel';
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated Use `FileCityTrailExplorerPanel` instead. The trail medium
|
|
5
|
+
* supersedes the sequence-diagram panel; this component is retained for
|
|
6
|
+
* existing hosts but should not be wired into new integrations.
|
|
7
|
+
*/
|
|
3
8
|
export declare const FileCitySequenceExplorerPanel: React.FC<FileCitySequenceExplorerPanelPropsTyped>;
|
|
4
9
|
//# sourceMappingURL=FileCitySequenceExplorerPanel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileCitySequenceExplorerPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorerPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAmC1B,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAC;AAoCzG,eAAO,MAAM,6BAA6B,EAAE,KAAK,CAAC,EAAE,CAAC,uCAAuC,CA00B3F,CAAC"}
|
|
1
|
+
{"version":3,"file":"FileCitySequenceExplorerPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/FileCitySequenceExplorerPanel/FileCitySequenceExplorerPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAmC1B,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAC;AAoCzG;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,EAAE,KAAK,CAAC,EAAE,CAAC,uCAAuC,CA00B3F,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import '@xyflow/react/dist/style.css';
|
|
3
|
+
import type { FileCityTrailExplorerPanelPropsTyped } from '../../types/FileCityTrailExplorerPanel';
|
|
4
|
+
/**
|
|
5
|
+
* FileCityTrailExplorerPanel — explorer for the new **trail** medium.
|
|
6
|
+
*
|
|
7
|
+
* Renders a single panel scoped to one repo (per the host's
|
|
8
|
+
* panel→repo-id registry) and surfaces a `TrailPayload` from
|
|
9
|
+
* `context.trail`. v1 only registers a renderer for
|
|
10
|
+
* `views[].kind:'sequence'`; other view kinds render an
|
|
11
|
+
* "unsupported view" placeholder.
|
|
12
|
+
*
|
|
13
|
+
* Layout (when a trail is loaded):
|
|
14
|
+
* ┌─ TrailHeader ─────────────────────────────────────┐
|
|
15
|
+
* │ Markdown overlay (left) │ FileCity3D │ Snippet pane│
|
|
16
|
+
* │ • trail.summary idle │ + leader │ (right, │
|
|
17
|
+
* │ • marker.description │ line │ on select) │
|
|
18
|
+
* │ when selected │ │ │
|
|
19
|
+
* ├─ SequenceDiagramRenderer (drawer) ────────────────┤
|
|
20
|
+
* └────────────────────────────────────────────────────┘
|
|
21
|
+
*/
|
|
22
|
+
export declare const FileCityTrailExplorerPanel: React.FC<FileCityTrailExplorerPanelPropsTyped>;
|
|
23
|
+
//# sourceMappingURL=FileCityTrailExplorerPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileCityTrailExplorerPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/FileCityTrailExplorerPanel/FileCityTrailExplorerPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,OAAO,8BAA8B,CAAC;AAatC,OAAO,KAAK,EAEV,oCAAoC,EAErC,MAAM,wCAAwC,CAAC;AAqBhD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAC/C,oCAAoC,CA+ErC,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { SequenceEdge, SequenceEvent, UseSequenceLayoutOptions } from '@principal-ai/principal-view-react';
|
|
2
|
+
import type { TrailPayload, TrailSequenceView } from '../../types/Trail';
|
|
3
|
+
export interface SequenceViewInputs {
|
|
4
|
+
events: SequenceEvent[];
|
|
5
|
+
edges: SequenceEdge[];
|
|
6
|
+
layoutOptions: UseSequenceLayoutOptions;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Build the upstream `SequenceDiagramRenderer` inputs (events, edges,
|
|
10
|
+
* layoutOptions) from a trail payload and one of its sequence views.
|
|
11
|
+
*
|
|
12
|
+
* The trail's content lives in `payload.markers` (id, label, sourcePath,
|
|
13
|
+
* snippet, description); the sequence view's `markers: SequenceMarkerRef[]`
|
|
14
|
+
* carries the per-marker structural fields the swimlane renderer needs
|
|
15
|
+
* (name namespace, participant override, move-event flag, type styling).
|
|
16
|
+
*
|
|
17
|
+
* This helper joins them on `markerId` and produces the upstream
|
|
18
|
+
* `SequenceEvent[]` shape. Refs that point at non-existent markers are
|
|
19
|
+
* dropped (with a warning); markers absent from the view are not
|
|
20
|
+
* rendered (the view's `markers[]` is the authority for which markers
|
|
21
|
+
* appear in this view, in what order).
|
|
22
|
+
*
|
|
23
|
+
* Multi-repo trails: every panel renders the *full* sequence view (a
|
|
24
|
+
* cross-service flow is more useful complete than partial). Per-panel
|
|
25
|
+
* filtering happens at the highlight layer (only markers whose `repo`
|
|
26
|
+
* matches the panel's repo light up a building) — not here.
|
|
27
|
+
*/
|
|
28
|
+
export declare function buildSequenceViewInputs(payload: TrailPayload, view: TrailSequenceView): SequenceViewInputs;
|
|
29
|
+
//# sourceMappingURL=buildSequenceViewInputs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildSequenceViewInputs.d.ts","sourceRoot":"","sources":["../../../src/panels/FileCityTrailExplorerPanel/buildSequenceViewInputs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAEV,YAAY,EACZ,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,aAAa,EAAE,wBAAwB,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,iBAAiB,GACtB,kBAAkB,CA6CpB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Camera-framing math for the trail explorer panel.
|
|
3
|
+
*
|
|
4
|
+
* `FileCity3D` mounts in flat (top-down) mode and uses a 50° vertical
|
|
5
|
+
* FOV. When overlays cover part of the canvas, we want the city to fit
|
|
6
|
+
* the *visible* sub-rect — not the full canvas — so the user doesn't
|
|
7
|
+
* have to manually pan to see the buildings under the markdown overlay
|
|
8
|
+
* or the snippet pane.
|
|
9
|
+
*
|
|
10
|
+
* The output is fed straight to `setCameraFlatView(targetX, targetZ,
|
|
11
|
+
* height, { duration })`. Mirrors the math in
|
|
12
|
+
* `docs/CAMERA_OFFSET_FOR_OVERLAYS.md` and the existing sequence
|
|
13
|
+
* panel's implementation.
|
|
14
|
+
*/
|
|
15
|
+
import type { CityData } from '@principal-ai/file-city-react';
|
|
16
|
+
export interface CameraFramingInputs {
|
|
17
|
+
/** Canvas width in CSS pixels. */
|
|
18
|
+
canvasW: number;
|
|
19
|
+
/** Canvas height in CSS pixels. */
|
|
20
|
+
canvasH: number;
|
|
21
|
+
cityBounds: CityData['bounds'];
|
|
22
|
+
/** Left overlay inset in CSS pixels (markdown overlay + outer gutter). */
|
|
23
|
+
leftInset: number;
|
|
24
|
+
/** Right overlay inset in CSS pixels (snippet pane + outer gutter). */
|
|
25
|
+
rightInset: number;
|
|
26
|
+
/** Top inset in CSS pixels. */
|
|
27
|
+
topInset: number;
|
|
28
|
+
/** Bottom inset in CSS pixels (sequence drawer height). */
|
|
29
|
+
bottomInset: number;
|
|
30
|
+
}
|
|
31
|
+
export interface CameraFramingResult {
|
|
32
|
+
targetX: number;
|
|
33
|
+
targetZ: number;
|
|
34
|
+
height: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Compute the `setCameraFlatView` arguments that frame the city in the
|
|
38
|
+
* canvas sub-rect not covered by overlays. Returns `null` when the
|
|
39
|
+
* inputs would produce a degenerate (zero or negative) visible rect.
|
|
40
|
+
*/
|
|
41
|
+
export declare function computeCameraFraming(inputs: CameraFramingInputs): CameraFramingResult | null;
|
|
42
|
+
//# sourceMappingURL=cameraFraming.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cameraFraming.d.ts","sourceRoot":"","sources":["../../../src/panels/FileCityTrailExplorerPanel/cameraFraming.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE9D,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/B,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAQD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,mBAAmB,GAC1B,mBAAmB,GAAG,IAAI,CAuC5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/panels/FileCityTrailExplorerPanel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type TrailDiffStyle = 'unified' | 'split';
|
|
3
|
+
/**
|
|
4
|
+
* Diff snippet renderer for the trail panel.
|
|
5
|
+
*
|
|
6
|
+
* Takes pre-change contents directly (always required on
|
|
7
|
+
* `TrailDiffSnippet.oldContents`). Post-change contents come from the
|
|
8
|
+
* snippet when set, otherwise the host's `readFile` action resolves
|
|
9
|
+
* them — that's the seam future content sources (baked content,
|
|
10
|
+
* historic fetch) plug into without changing the panel.
|
|
11
|
+
*
|
|
12
|
+
* Slicing logic mirrors `TrailSnippetView`: optional `startLine`/
|
|
13
|
+
* `endLine` window, `contextLines` of padding, optional `focusLine`.
|
|
14
|
+
*/
|
|
15
|
+
export interface TrailDiffSnippetViewProps {
|
|
16
|
+
/** Repo-relative path; passed to `readFile` when newContents resolution is needed. */
|
|
17
|
+
filePath: string;
|
|
18
|
+
/** Display name (drives Pierre's syntax-highlight language detection). */
|
|
19
|
+
fileName: string;
|
|
20
|
+
/** Pre-change file contents. Pass the full file or a pre-sliced window. */
|
|
21
|
+
oldContents: string;
|
|
22
|
+
/**
|
|
23
|
+
* Post-change file contents. When omitted, resolved via `readFile`
|
|
24
|
+
* (working tree in v1).
|
|
25
|
+
*/
|
|
26
|
+
newContents?: string;
|
|
27
|
+
/** Host-supplied file reader (the panel's `readFile` action). */
|
|
28
|
+
readFile: (path: string) => Promise<string>;
|
|
29
|
+
/**
|
|
30
|
+
* Optional snippet window applied to both contents before diffing
|
|
31
|
+
* (1-based, inclusive). When omitted, the entire diff is rendered.
|
|
32
|
+
*/
|
|
33
|
+
startLine?: number;
|
|
34
|
+
endLine?: number;
|
|
35
|
+
/** Line in the post-change window to call out (1-based, relative to the new file). */
|
|
36
|
+
focusLine?: number;
|
|
37
|
+
/** Lines of unchanged context kept above/below the snippet. Default 2. */
|
|
38
|
+
contextLines?: number;
|
|
39
|
+
/** Override Pierre's container background. Any CSS color string. */
|
|
40
|
+
background?: string;
|
|
41
|
+
/** Side-by-side or unified rendering. Defaults to `'unified'`. */
|
|
42
|
+
diffStyle?: TrailDiffStyle;
|
|
43
|
+
}
|
|
44
|
+
export declare const TrailDiffSnippetView: React.FC<TrailDiffSnippetViewProps>;
|
|
45
|
+
//# sourceMappingURL=TrailDiffSnippetView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrailDiffSnippetView.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCityTrailExplorerPanel/overlays/TrailDiffSnippetView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,yBAAyB;IACxC,sFAAsF;IACtF,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B;AA+CD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA6IpE,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import * as THREE from 'three';
|
|
3
|
+
import type { CityBuilding } from '@principal-ai/file-city-react';
|
|
4
|
+
/**
|
|
5
|
+
* Mirror of `OnCameraFrame` from `@principal-ai/file-city-react`'s internals;
|
|
6
|
+
* not re-exported from the package's public surface.
|
|
7
|
+
*/
|
|
8
|
+
export type OnCameraFrame = (camera: THREE.Camera, size: {
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
}) => void;
|
|
12
|
+
export interface TrailLeaderLineHandle {
|
|
13
|
+
/** Pass this through to `<FileCity3D onCameraFrame={...}>`. */
|
|
14
|
+
onCameraFrame: OnCameraFrame;
|
|
15
|
+
}
|
|
16
|
+
export interface TrailLeaderLineProps {
|
|
17
|
+
/** Container the SVG sits inside; used to convert client-rect coords to local. */
|
|
18
|
+
containerRef: React.RefObject<HTMLDivElement | null>;
|
|
19
|
+
/** Building the line points to. `null` hides the line. */
|
|
20
|
+
building: CityBuilding | null;
|
|
21
|
+
/**
|
|
22
|
+
* `FileCity3D` re-centers the city around the world origin, so building
|
|
23
|
+
* positions need this offset subtracted before projecting through the
|
|
24
|
+
* camera. Compute as `(bounds.minX + bounds.maxX) / 2` etc.
|
|
25
|
+
*/
|
|
26
|
+
cityCenter: {
|
|
27
|
+
x: number;
|
|
28
|
+
z: number;
|
|
29
|
+
} | null;
|
|
30
|
+
/** Element the line lands on (the snippet pane). `null` hides the line. */
|
|
31
|
+
targetRef: React.RefObject<HTMLElement | null>;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Single leader-line from the building of the selected trail marker to the
|
|
35
|
+
* matching snippet pane. SVG attrs are written imperatively inside
|
|
36
|
+
* `onCameraFrame` so we don't trigger React reconciliation 60×/sec.
|
|
37
|
+
*/
|
|
38
|
+
export declare const TrailLeaderLine: React.ForwardRefExoticComponent<TrailLeaderLineProps & React.RefAttributes<TrailLeaderLineHandle>>;
|
|
39
|
+
//# sourceMappingURL=TrailLeaderLine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrailLeaderLine.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCityTrailExplorerPanel/overlays/TrailLeaderLine.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,KACpC,IAAI,CAAC;AAEV,MAAM,WAAW,qBAAqB;IACpC,+DAA+D;IAC/D,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,kFAAkF;IAClF,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,0DAA0D;IAC1D,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;IAC9B;;;;OAIG;IACH,UAAU,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC5C,2EAA2E;IAC3E,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CAChD;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,oGA6K1B,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Left-edge markdown overlay for the trail panel.
|
|
4
|
+
*
|
|
5
|
+
* Renders `trail.summary` (idle) or `marker.description` (when a marker
|
|
6
|
+
* is selected) as themed markdown. The reader can drag the right edge
|
|
7
|
+
* to widen the panel. Note-annotation pills from the original
|
|
8
|
+
* sequence-panel overlay are dropped — trail v1 doesn't need them.
|
|
9
|
+
*
|
|
10
|
+
* Optionally renders a footer with marker navigation: a "Start trail"
|
|
11
|
+
* button when no marker is selected, and prev/next chevrons + position
|
|
12
|
+
* counter once the trail is active.
|
|
13
|
+
*/
|
|
14
|
+
export interface TrailMarkerNav {
|
|
15
|
+
/** -1 = idle (no marker selected); >= 0 = active marker index. */
|
|
16
|
+
position: number;
|
|
17
|
+
/** Total markers walkable in this panel's repo. */
|
|
18
|
+
total: number;
|
|
19
|
+
/** Selects the first marker. Called when the user clicks "Start trail". */
|
|
20
|
+
onStart: () => void;
|
|
21
|
+
/** Steps to the previous marker. No-op at the start of the trail. */
|
|
22
|
+
onPrev: () => void;
|
|
23
|
+
/** Steps to the next marker. No-op at the end of the trail. */
|
|
24
|
+
onNext: () => void;
|
|
25
|
+
}
|
|
26
|
+
export interface TrailMarkdownOverlayProps {
|
|
27
|
+
/** Small caps label shown above the title (e.g. "Overview", "Marker"). */
|
|
28
|
+
eyebrow: string;
|
|
29
|
+
/** Bold heading shown under the eyebrow. */
|
|
30
|
+
title: string;
|
|
31
|
+
/** Markdown body. The overlay short-circuits to `null` when this is empty. */
|
|
32
|
+
markdown: string;
|
|
33
|
+
/** Stable prefix used by `IndustryMarkdownSlide` for slide ids. */
|
|
34
|
+
slideIdPrefix: string;
|
|
35
|
+
/** Bottom inset (number → px, string → CSS) so the panel sits above the sequence drawer. */
|
|
36
|
+
bottomOffset: number | string;
|
|
37
|
+
/**
|
|
38
|
+
* Notified when the panel container element mounts or unmounts.
|
|
39
|
+
* Accepts either a mutable ref object or a callback ref — siblings
|
|
40
|
+
* (e.g. the camera-framing effect) use this to observe width changes.
|
|
41
|
+
*/
|
|
42
|
+
containerRef?: React.Ref<HTMLDivElement>;
|
|
43
|
+
/**
|
|
44
|
+
* Optional marker navigation footer. When omitted (e.g. trail has no
|
|
45
|
+
* markers in this repo), the footer is not rendered.
|
|
46
|
+
*/
|
|
47
|
+
nav?: TrailMarkerNav;
|
|
48
|
+
}
|
|
49
|
+
export declare const TrailMarkdownOverlay: React.FC<TrailMarkdownOverlayProps>;
|
|
50
|
+
//# sourceMappingURL=TrailMarkdownOverlay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrailMarkdownOverlay.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCityTrailExplorerPanel/overlays/TrailMarkdownOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qEAAqE;IACrE,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,+DAA+D;IAC/D,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,aAAa,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B;;;;OAIG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACzC;;;OAGG;IACH,GAAG,CAAC,EAAE,cAAc,CAAC;CACtB;AAQD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA+MpE,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Slice snippet renderer for the trail panel.
|
|
4
|
+
*
|
|
5
|
+
* Reads the file via the host's `readFile` action, slices it to the
|
|
6
|
+
* requested window with `contextLines` of padding above/below, and hands
|
|
7
|
+
* the slice to Pierre's `<File>` for syntax-highlighted rendering. Gutter
|
|
8
|
+
* line numbers are rewritten on post-render so they show the original
|
|
9
|
+
* file range (e.g. 320..334) instead of Pierre's default 1..N over the
|
|
10
|
+
* slice.
|
|
11
|
+
*
|
|
12
|
+
* v1 doesn't surface notes — `TrailSnippetNote` is in the schema but
|
|
13
|
+
* the panel has no notes UI yet. Add line annotations when notes UI
|
|
14
|
+
* lands.
|
|
15
|
+
*/
|
|
16
|
+
export interface TrailSnippetViewProps {
|
|
17
|
+
/** Repo-relative path; passed to `readFile`. */
|
|
18
|
+
filePath: string;
|
|
19
|
+
/** Display name (drives Pierre's syntax-highlight language detection). */
|
|
20
|
+
fileName: string;
|
|
21
|
+
/** First line of the snippet (1-based, inclusive). */
|
|
22
|
+
startLine: number;
|
|
23
|
+
/** Last line of the snippet (1-based, inclusive). */
|
|
24
|
+
endLine: number;
|
|
25
|
+
/** Line to call out as the focus point; defaults to `startLine`. */
|
|
26
|
+
focusLine?: number;
|
|
27
|
+
/** Lines of context above/below the snippet; defaults to 2. */
|
|
28
|
+
contextLines?: number;
|
|
29
|
+
/** Host-supplied file reader (the panel's `readFile` action). */
|
|
30
|
+
readFile: (path: string) => Promise<string>;
|
|
31
|
+
/** Override Pierre's container background. Any CSS color string. */
|
|
32
|
+
background?: string;
|
|
33
|
+
}
|
|
34
|
+
export declare const TrailSnippetView: React.FC<TrailSnippetViewProps>;
|
|
35
|
+
//# sourceMappingURL=TrailSnippetView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrailSnippetView.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCityTrailExplorerPanel/overlays/TrailSnippetView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA+I5D,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Theme-aware style helpers shared across panels.
|
|
3
|
+
*
|
|
4
|
+
* Keep this file medium-agnostic — anything specific to a single panel
|
|
5
|
+
* (sequence, trail, code-city) belongs next to that panel. The pattern
|
|
6
|
+
* established by the sequence explorer is to compose translucent
|
|
7
|
+
* surfaces from theme color tokens via `withAlpha` rather than writing
|
|
8
|
+
* raw `rgba(...)` literals, so panels stay theme-portable.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Build a translucent variant of a theme color.
|
|
12
|
+
*
|
|
13
|
+
* Uses `color-mix(in oklab, …)` so the input can be any valid CSS color
|
|
14
|
+
* (hex, named, oklch, etc.) — callers don't have to convert tokens to
|
|
15
|
+
* rgb before mixing.
|
|
16
|
+
*
|
|
17
|
+
* @param color - Source color (typically a `theme.colors.*` token).
|
|
18
|
+
* @param percent - Opacity percentage (0–100). 100 returns the color
|
|
19
|
+
* unchanged; 0 returns fully transparent.
|
|
20
|
+
*/
|
|
21
|
+
export declare const withAlpha: (color: string, percent: number) => string;
|
|
22
|
+
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/panels/utils/styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,EAAE,SAAS,MAAM,KAAG,MACD,CAAC"}
|