@industry-theme/file-city-panel 0.5.72 → 0.5.74

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 CHANGED
@@ -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, 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';
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, TrailSignOff, TrailSignOffDraft, TrailPayload, BaseTrailIndexEntry, FileCityTrailExplorerRepository, FileCityTrailExplorerPanelContext, FileCityTrailExplorerPanelActions, FileCityTrailExplorerPanelPropsTyped, } from './types';
27
27
  /**
28
28
  * Export color mode constants for host applications.
29
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EACV,eAAe,EAEf,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,oCAAoC,EACpC,oCAAoC,EACpC,iCAAiC,EACjC,iCAAiC,EAClC,MAAM,SAAS,CAAC;AAGjB;;;;GAIG;AACH,eAAO,MAAM,MAAM,EAAE,CACjB,eAAe,CAAC,YAAY,EAAE,oBAAoB,CAAC,GACnD,eAAe,CAAC,YAAY,EAAE,wBAAwB,CAAC,GACvD,eAAe,CAAC,oCAAoC,EAAE,oCAAoC,CAAC,GAC3F,eAAe,CAAC,iCAAiC,EAAE,iCAAiC,CAAC,CACxF,EAoIA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,qBAGzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,qBAG3B,CAAC;AAEF;;;GAGG;AACH,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,YAAY,EACV,2BAA2B,EAC3B,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,cAAc,EACd,cAAc,EAEd,uBAAuB,EACvB,oBAAoB,EAEpB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EAInB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,6BAA6B,EAG7B,YAAY,EACZ,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EAEb,qBAAqB,EACrB,qBAAqB,EACrB,aAAa,EACb,kCAAkC,EAClC,oCAAoC,EACpC,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,oCAAoC,EACpC,uCAAuC,EAEvC,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,4BAA4B,EAC5B,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EAEnB,+BAA+B,EAC/B,iCAAiC,EACjC,iCAAiC,EACjC,oCAAoC,GACrC,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,8BAA8B,CAAC;AAEtC;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,YAAY,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AACrG,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAE7F,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAE3G;;;;;;;;;;;GAWG;AACH,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,wBAAwB,EACxB,aAAa,GACd,MAAM,wCAAwC,CAAC;AAChD,YAAY,EACV,6BAA6B,EAC7B,kBAAkB,GACnB,MAAM,wCAAwC,CAAC;AAEhD;;;;GAIG;AACH,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,YAAY,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAErE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,YAAY,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAEvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,YAAY,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAEpG,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,YAAY,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAE1F;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACzF,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,YAAY,EACV,mBAAmB,EACnB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
@@ -1 +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;AAiBtC,OAAO,KAAK,EAEV,oCAAoC,EAErC,MAAM,wCAAwC,CAAC;AAyChD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAC/C,oCAAoC,CAiFrC,CAAC"}
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;AAyBtC,OAAO,KAAK,EAEV,oCAAoC,EAErC,MAAM,wCAAwC,CAAC;AAyHhD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAC/C,oCAAoC,CA6FrC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { type Annotation } from 'themed-markdown';
2
3
  /**
3
4
  * Left-edge markdown overlay for the trail panel.
4
5
  *
@@ -87,6 +88,27 @@ export interface TrailMarkdownOverlayProps {
87
88
  * body. Empty / undefined hides the section entirely.
88
89
  */
89
90
  files?: TrailFileEntry[];
91
+ /** Inline annotations to render on the markdown body (highlights + badges). */
92
+ annotations?: Annotation[];
93
+ /** id of the annotation whose notes panel is currently open. */
94
+ activeAnnotationId?: string | null;
95
+ /** Click on a highlight → toggle its notes panel. */
96
+ onAnnotationClick?: (annotationId: string) => void;
97
+ /** Click the floating "Add note" pill on a fresh selection. */
98
+ onCreateNoteForSelection?: (anchor: {
99
+ exact: string;
100
+ prefix?: string;
101
+ suffix?: string;
102
+ }) => void;
103
+ /**
104
+ * While a composer is in progress the floating pill is suppressed —
105
+ * the selection highlight is owned by a draft annotation in
106
+ * `annotations`.
107
+ */
108
+ composerOpen?: boolean;
90
109
  }
91
110
  export declare const TrailMarkdownOverlay: React.FC<TrailMarkdownOverlayProps>;
111
+ export declare const TrailFilesList: React.FC<{
112
+ files: TrailFileEntry[];
113
+ }>;
92
114
  //# sourceMappingURL=TrailMarkdownOverlay.d.ts.map
@@ -1 +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;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,QAAQ,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,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,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;CAC1B;AAQD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAgQpE,CAAC"}
1
+ {"version":3,"file":"TrailMarkdownOverlay.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCityTrailExplorerPanel/overlays/TrailMarkdownOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,iBAAiB,CAAC;AAIzB;;;;;;;;;;;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;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,QAAQ,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,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,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IAEzB,+EAA+E;IAC/E,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,qDAAqD;IACrD,iBAAiB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,+DAA+D;IAC/D,wBAAwB,CAAC,EAAE,CAAC,MAAM,EAAE;QAClC,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAQD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA4TpE,CAAC;AAUF,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,EAAE,cAAc,EAAE,CAAA;CAAE,CAgIhE,CAAC"}
@@ -0,0 +1,145 @@
1
+ import React from 'react';
2
+ import { type Theme } from '@principal-ade/industry-theme';
3
+ import type { TrailSignOff } from '../../../types/Trail';
4
+ /**
5
+ * Intro modal that focuses the reader on the trail's claim before
6
+ * they engage with markers, the city, or the sequence drawer. Mounts
7
+ * over the panel with a backdrop, renders `body` as markdown, and
8
+ * dismisses via the action button, the close affordance, the
9
+ * backdrop, or `Escape`.
10
+ *
11
+ * Visibility is owned by the parent — this component is unconditional
12
+ * once mounted. The parent should mount it on first paint per
13
+ * trail.id and unmount on dismiss so it doesn't re-trigger as the
14
+ * reader navigates within the same trail.
15
+ */
16
+ export interface TrailRequestIntroModalProps {
17
+ /**
18
+ * Markdown body — same content the idle left overlay shows
19
+ * (typically the trail's `summary`). The modal renders it in a
20
+ * focused, opaque presentation so the reader engages with it
21
+ * before walking markers; the overlay then keeps it visible as
22
+ * ambient reference after dismissal.
23
+ */
24
+ body: string;
25
+ /**
26
+ * Short verb phrase shown as the modal's main heading after
27
+ * the `REQUEST` eyebrow (e.g. `"Verify Direction"`). When unset
28
+ * the modal flips to informative framing — eyebrow becomes
29
+ * `LIGHT READING?` and the heading falls back to `title`.
30
+ */
31
+ request?: string;
32
+ /**
33
+ * Trail title — used as the modal heading when `request` is
34
+ * unset (informative trail). Required so informative trails
35
+ * always have a visible heading line.
36
+ */
37
+ title: string;
38
+ /**
39
+ * Display name of the trail author. Rendered in the manifest strip
40
+ * as `FROM <author>` so the reader sees who's making the ask.
41
+ */
42
+ author?: string;
43
+ /**
44
+ * ISO 8601 timestamp the trail was authored. Rendered as a `YYYY-MM-DD`
45
+ * stamp in the manifest strip — part of the delivery-slip framing.
46
+ */
47
+ createdAt?: string;
48
+ /** Number of markers in the trail. Drives the manifest line. */
49
+ markerCount: number;
50
+ /** Number of repos the trail spans. Hidden when 0 or 1 (single-repo trail). */
51
+ repoCount?: number;
52
+ /** Distinct files the trail touches. Hidden when 0. */
53
+ fileCount?: number;
54
+ /**
55
+ * Step rundown surfaced when the reader clicks MANIFEST to glean the
56
+ * trail without opening it. One entry per marker, in display order;
57
+ * `label` falls back to a `Step N` placeholder upstream.
58
+ */
59
+ steps?: {
60
+ id?: string;
61
+ label: string;
62
+ sourcePath?: string;
63
+ }[];
64
+ /** Stable id prefix for `IndustryMarkdownSlide`. */
65
+ slideIdPrefix?: string;
66
+ /**
67
+ * Current default view mode — used to decide which "Begin" button
68
+ * gets primary styling + autofocus. Matches the layout's `viewMode`
69
+ * state so the modal stays in sync if the host opens the panel in
70
+ * `'doc'` instead of `'city'`.
71
+ */
72
+ defaultMode: 'city' | 'doc';
73
+ /**
74
+ * Called when the reader picks a mode and dismisses. Parent should
75
+ * commit the mode (`setViewMode(mode)`) and clear the modal.
76
+ */
77
+ onBegin: (mode: 'city' | 'doc') => void;
78
+ /**
79
+ * Called when the reader clicks a step in the manifest overlay to
80
+ * jump straight there. Parent commits the chosen mode, selects the
81
+ * marker at `stepIndex`, and clears the modal. The mode is the
82
+ * one currently picked in the modal's Doc/Walkthrough switch — so
83
+ * a step-click respects whatever the reader just toggled to.
84
+ */
85
+ onBeginAtStep?: (stepIndex: number, mode: 'city' | 'doc') => void;
86
+ /** Called on close ×, backdrop click, or Escape — no mode change. */
87
+ onDismiss: () => void;
88
+ /**
89
+ * Persisted reviewer LGTMs. Surfaced as an avatar strip below the
90
+ * modal card — one circular avatar per signer, each with a tooltip
91
+ * showing `author · signedAt` (and the optional comment).
92
+ */
93
+ signOffs?: TrailSignOff[];
94
+ /**
95
+ * Whether the *current viewer* is one of the signers in `signOffs`.
96
+ * Drives the modal placeholder slot: if true the placeholder gets
97
+ * a stamp graphic; if false the dashed `TRAIL UNREVIEWED` square
98
+ * stays. Other signers are surfaced via the avatar strip — the
99
+ * placeholder is reserved for the current user's gesture.
100
+ */
101
+ signedByCurrentUser?: boolean;
102
+ /**
103
+ * Display names of distinct note-authors (engaged with the trail).
104
+ * Rendered as the `SEEN BY` avatar strip below the modal — its
105
+ * own row, separate from `REVIEWED BY`. People who both signed
106
+ * and noted appear in both rows; each row communicates a distinct
107
+ * facet of engagement.
108
+ */
109
+ seenBy?: string[];
110
+ /**
111
+ * Optional `author → markerIds[]` map. When present, avatars in
112
+ * either strip become clickable: clicking one opens the manifest
113
+ * with that author's marker-scoped notes highlighted on the
114
+ * matching step rows. Authors with no entry in this map (or whose
115
+ * entry is empty) render as non-clickable.
116
+ */
117
+ notesByAuthor?: Record<string, string[]>;
118
+ }
119
+ export declare const TrailRequestIntroModal: React.FC<TrailRequestIntroModalProps>;
120
+ /**
121
+ * Reusable sign-off stamp — rotated, double-bordered, ink-colored.
122
+ * Used both as the small in-modal mark (replacing the dashed `SIGN`
123
+ * placeholder once the trail is signed off) and as the large center-
124
+ * screen graphic in the sign-off animation overlay.
125
+ *
126
+ * Sized via `size` (px) so the same component reads consistently at
127
+ * both scales. Rotation and border thickness scale relative to size.
128
+ *
129
+ * `text` lets callers swap the inked word — `LGTM` for review-style
130
+ * trails (ones with a `request`), `ACK` for informative trails where
131
+ * the stamp is a passive acknowledgment rather than an approval.
132
+ */
133
+ export declare const LgtmStamp: React.FC<{
134
+ theme: Theme;
135
+ size: number;
136
+ /** Rotate the stamp -8° for the classic hand-stamped look. The
137
+ * modal slot wants flat (the dashed outline already implies the
138
+ * slot's orientation); the animation overlay keeps it true since
139
+ * the rotation reads as motion + impact there. */
140
+ rotated?: boolean;
141
+ /** Inked word. Defaults to `LGTM`; pass `ACK` (or similar) for
142
+ * informative trails. */
143
+ text?: string;
144
+ }>;
145
+ //# sourceMappingURL=TrailRequestIntroModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrailRequestIntroModal.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCityTrailExplorerPanel/overlays/TrailRequestIntroModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAY,KAAK,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAmCzD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;;OAMG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC9D,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B;;;OAGG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,KAAK,IAAI,CAAC;IACxC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,KAAK,IAAI,CAAC;IAClE,qEAAqE;IACrE,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CA8oBxE,CAAC;AA2JF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb;;;uDAGmD;IACnD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;8BAC0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CA6CA,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { type SnippetNote } from '../../FileCitySequenceExplorerPanel/overlays/SnippetNotes';
2
3
  /**
3
4
  * Slice snippet renderer for the trail panel.
4
5
  *
@@ -9,9 +10,11 @@ import React from 'react';
9
10
  * file range (e.g. 320..334) instead of Pierre's default 1..N over the
10
11
  * slice.
11
12
  *
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.
13
+ * Notes are surfaced as `SnippetNoteIndicator` pills anchored to the
14
+ * note's absolute file line, with Pierre's gutter-utility "+" wired
15
+ * through `onOpenComposer` so a reader can drag-select a range and add
16
+ * a new note. Slice anchors only — diff-anchor notes route through
17
+ * `TrailDiffSnippetView`.
15
18
  */
16
19
  export interface TrailSnippetViewProps {
17
20
  /** Repo-relative path; passed to `readFile`. */
@@ -30,6 +33,28 @@ export interface TrailSnippetViewProps {
30
33
  readFile: (path: string) => Promise<string>;
31
34
  /** Override Pierre's container background. Any CSS color string. */
32
35
  background?: string;
36
+ /** Notes anchored to absolute file ranges (slice-anchor only). */
37
+ notes?: SnippetNote[];
38
+ /** Thread whose side panel is currently open — drives `active` styling on its indicator. */
39
+ activeThreadKey?: string | null;
40
+ /** Composer is open — dim/disable existing indicators while it's up. */
41
+ composerOpen?: boolean;
42
+ /** Open the side panel in thread-view mode for the given threadKey. */
43
+ onOpenThread?: (threadKey: string) => void;
44
+ /** Close the side panel — wired to indicator clicks on the active thread. */
45
+ onCloseThread?: () => void;
46
+ /**
47
+ * Open or extend the side-panel composer with a range. Fired by
48
+ * Pierre's gutter "+" (with or without a multi-line drag-select).
49
+ * Captures line text endpoints so the consumer can persist them as
50
+ * re-anchor fingerprints on the note's anchor.
51
+ */
52
+ onOpenComposer?: (input: {
53
+ startLine: number;
54
+ endLine: number;
55
+ startLineText: string;
56
+ endLineText: string;
57
+ }) => void;
33
58
  }
34
59
  export declare const TrailSnippetView: React.FC<TrailSnippetViewProps>;
35
60
  //# sourceMappingURL=TrailSnippetView.d.ts.map
@@ -1 +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,CAiI5D,CAAC"}
1
+ {"version":3,"file":"TrailSnippetView.d.ts","sourceRoot":"","sources":["../../../../src/panels/FileCityTrailExplorerPanel/overlays/TrailSnippetView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,2DAA2D,CAAC;AAWnE;;;;;;;;;;;;;;;GAeG;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;IACpB,kEAAkE;IAClE,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,4FAA4F;IAC5F,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,wEAAwE;IACxE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB,KAAK,IAAI,CAAC;CACZ;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAoO5D,CAAC"}