@anthusai/papyrus 5.46.0 → 5.47.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.
|
@@ -34,6 +34,10 @@ body:has(.newsroom-organizer)>[data-staging-banner]{flex-shrink:0}
|
|
|
34
34
|
.organizer-bottom-nav{display:none}
|
|
35
35
|
.organizer-bottom-nav button{appearance:none;border:0;background:transparent;color:inherit}
|
|
36
36
|
.organizer-main:has(.organizer-native-board){display:flex;overflow:hidden}
|
|
37
|
+
@media (min-width:768px){
|
|
38
|
+
.organizer-main:has(>[data-category-steering]>[data-news-desk-section=references]){display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}
|
|
39
|
+
.organizer-main>[data-category-steering]:has(>[data-news-desk-section=references]){display:flex;flex-direction:column;flex:1;min-height:0}
|
|
40
|
+
}
|
|
37
41
|
.organizer-native-board{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;gap:8px}
|
|
38
42
|
.organizer-board-view-toggle{display:flex;gap:4px;flex-shrink:0}
|
|
39
43
|
.organizer-header-button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 12px;border:1px solid var(--org-line);font:inherit;color:inherit;background:transparent;text-decoration:none;white-space:nowrap;cursor:pointer}
|
|
@@ -770,7 +770,7 @@ export function NewsroomReferencesView({
|
|
|
770
770
|
|
|
771
771
|
return (
|
|
772
772
|
<div
|
|
773
|
-
className="flex min-h-0 flex-1 flex-col gap-4 md:max-h-[
|
|
773
|
+
className="flex min-h-0 flex-1 flex-col gap-4 md:max-h-[100dvh] md:flex-row"
|
|
774
774
|
data-detail-reserved={view === "feed" ? "true" : undefined}
|
|
775
775
|
data-news-desk-section="references"
|
|
776
776
|
data-detail-open={selectedReference || routeLineageId ? "true" : "false"}
|
|
@@ -293,7 +293,7 @@ export function FeedCard({
|
|
|
293
293
|
</span>
|
|
294
294
|
</button>
|
|
295
295
|
|
|
296
|
-
<div className="relative bg-[var(--feed-footer)]
|
|
296
|
+
<div className="relative bg-[var(--feed-footer)] px-4 pb-4 pt-3" data-feed-actions>
|
|
297
297
|
<RatingGrid
|
|
298
298
|
answer={chosen}
|
|
299
299
|
decided={answer}
|
|
@@ -303,6 +303,7 @@ export function FeedCard({
|
|
|
303
303
|
note={reasonLabel ? `Reason: ${reasonLabel}` : null}
|
|
304
304
|
onChoose={(choice) => { if (!disabledReason) store.choose(item.lineageId, choice); }}
|
|
305
305
|
prediction={decision ? predictionFromDecision(decision) : predictionLoading ? { state: "loading" } : { state: "none" }}
|
|
306
|
+
statusOverlay
|
|
306
307
|
/>
|
|
307
308
|
{rating.askReason ? (
|
|
308
309
|
// Covers the footer rather than adding to it, so asking for a reason never pushes the cards below it down.
|
|
@@ -47,6 +47,7 @@ export function RatingGrid({
|
|
|
47
47
|
prediction,
|
|
48
48
|
showPrediction = true,
|
|
49
49
|
size = "compact",
|
|
50
|
+
statusOverlay = false,
|
|
50
51
|
surface = "footer",
|
|
51
52
|
}: {
|
|
52
53
|
/** The side the buttons show as chosen (it may be a pending choice that is still saving). */
|
|
@@ -63,6 +64,8 @@ export function RatingGrid({
|
|
|
63
64
|
/** False for a card with nothing to predict (an AI draft): the Cyclotron row and the "You" label are left out and only the two buttons remain. */
|
|
64
65
|
showPrediction?: boolean;
|
|
65
66
|
size?: "compact" | "large";
|
|
67
|
+
/** Lay the Saved / note line over the bottom padding of the nearest positioned ancestor, so it adds no height under the buttons. */
|
|
68
|
+
statusOverlay?: boolean;
|
|
66
69
|
/** The tone the grid sits on, so the bar's centre notch matches it. */
|
|
67
70
|
surface?: "footer" | "card";
|
|
68
71
|
}) {
|
|
@@ -78,7 +81,7 @@ export function RatingGrid({
|
|
|
78
81
|
return (
|
|
79
82
|
<div
|
|
80
83
|
className={cn(
|
|
81
|
-
"grid gap-x-2 gap-y-2
|
|
84
|
+
"grid gap-x-2 gap-y-2",
|
|
82
85
|
showPrediction ? "grid-cols-[4.5rem_minmax(0,1fr)_minmax(0,1fr)]" : "grid-cols-2",
|
|
83
86
|
showPrediction && size === "large" && "grid-cols-[5rem_minmax(0,1fr)_minmax(0,1fr)]",
|
|
84
87
|
)}
|
|
@@ -113,7 +116,7 @@ export function RatingGrid({
|
|
|
113
116
|
</span>
|
|
114
117
|
);
|
|
115
118
|
})}
|
|
116
|
-
<div className="col-span-2 col-start-2 flex flex-col
|
|
119
|
+
<div className="col-span-2 col-start-2 flex flex-col justify-center" data-confidence>
|
|
117
120
|
<div
|
|
118
121
|
aria-label={ready ? `Cyclotron confidence: leans ${leansAccept ? "Accept" : "Reject"}, ${Math.round(confidenceFillPercent(probability))} percent of the way` : "No confidence"}
|
|
119
122
|
className="relative h-2.5 w-full overflow-hidden rounded-full bg-[var(--feed-control)]"
|
|
@@ -131,9 +134,9 @@ export function RatingGrid({
|
|
|
131
134
|
) : null}
|
|
132
135
|
<span aria-hidden="true" className={cn("absolute inset-y-0 left-1/2 w-1 -translate-x-1/2", surface === "footer" ? "bg-[var(--feed-footer)]" : "bg-[var(--feed-card)]")} />
|
|
133
136
|
</div>
|
|
134
|
-
{/*
|
|
135
|
-
<small className="
|
|
136
|
-
{prediction.state === "ready" ? "
|
|
137
|
+
{/* Screen-reader status only: a visible line under the bar would push it off the middle between the Cyclotron and You rows. */}
|
|
138
|
+
<small className="sr-only" data-cyclotron-state={prediction.state === "ready" ? undefined : prediction.state}>
|
|
139
|
+
{prediction.state === "ready" ? "" : prediction.state === "loading" ? "Loading…" : prediction.state === "error" ? "Prediction unavailable" : "No prediction"}
|
|
137
140
|
</small>
|
|
138
141
|
</div>
|
|
139
142
|
</div> : null}
|
|
@@ -165,7 +168,7 @@ export function RatingGrid({
|
|
|
165
168
|
})}
|
|
166
169
|
</div>
|
|
167
170
|
|
|
168
|
-
<div className={cn("flex
|
|
171
|
+
<div className={cn("flex flex-wrap items-center gap-x-3 text-xs text-muted-foreground", statusOverlay ? "absolute inset-x-4 bottom-0 h-4 overflow-hidden leading-4" : cn("min-h-5", showPrediction ? "col-span-3" : "col-span-2"))} data-feed-saved role="status">
|
|
169
172
|
{note ? <span data-feed-reason>{note}</span> : null}
|
|
170
173
|
{feedback.phase === "saving" ? <span className="inline-flex items-center gap-1"><Loader2Icon aria-hidden="true" className="size-3.5 animate-spin" />Saving…</span> : null}
|
|
171
174
|
{feedback.phase === "saved" ? <span className="inline-flex items-center gap-1" data-review-saved><CheckIcon aria-hidden="true" className="size-3.5" />Saved</span> : null}
|
package/package.json
CHANGED
package/routes.manifest.json
CHANGED