Unblock React Compiler for 23 components across ten small causes (#11542)

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Tomasz Zawadzki
2026-08-31 15:49:57 +02:00
committed by GitHub
parent 8bf5696d3c
commit f9cf58ea44
27 changed files with 201 additions and 148 deletions
@@ -186,12 +186,10 @@ export function TextInput({
}, [t, fonts])
const textDecorated = useMemo(() => {
let i = 0
return Array.from(richtext.segments()).map(segment => {
return Array.from(richtext.segments()).map((segment, i) => {
return (
<RNText
key={i++}
key={i}
style={[
inputTextStyle,
{
+6 -6
View File
@@ -64,12 +64,6 @@ export function Pager({
const dragProgress = useSharedValue(selectedPage)
const dragState = useSharedValue<'idle' | 'dragging' | 'settling'>('idle')
useImperativeHandle(ref, () => ({
setPage: (index: number) => {
onTabBarSelect(index)
},
}))
const onTabBarSelect = useCallback(
(index: number) => {
const scrollY = window.scrollY
@@ -104,6 +98,12 @@ export function Pager({
[selectedPage, setSelectedPage, onPageSelected, onTabPressed],
)
useImperativeHandle(ref, () => ({
setPage: (index: number) => {
onTabBarSelect(index)
},
}))
return (
<View testID={testID} style={s.hContentRegion}>
{renderTabBar({
+11 -13
View File
@@ -541,14 +541,12 @@ function useWebListTelemetry({
return
}
let taskCount = 0
let totalDurationMs = 0
let maxDurationMs = 0
const stats = {taskCount: 0, totalDurationMs: 0, maxDurationMs: 0}
const observer = new PerformanceObserver(list => {
for (const entry of list.getEntries()) {
taskCount++
totalDurationMs += entry.duration
maxDurationMs = Math.max(maxDurationMs, entry.duration)
stats.taskCount++
stats.totalDurationMs += entry.duration
stats.maxDurationMs = Math.max(stats.maxDurationMs, entry.duration)
}
})
@@ -560,18 +558,18 @@ function useWebListTelemetry({
}
const report = () => {
if (taskCount === 0) return
if (stats.taskCount === 0) return
ax.metric('web:list:longTasks', {
itemCount: itemCountRef.current,
taskCount,
totalDurationMs: Math.round(totalDurationMs),
maxDurationMs: Math.round(maxDurationMs),
taskCount: stats.taskCount,
totalDurationMs: Math.round(stats.totalDurationMs),
maxDurationMs: Math.round(stats.maxDurationMs),
intervalMs: LONG_TASK_REPORT_INTERVAL,
...getWebListDiagnostics(containerRef, rowNodesRef),
})
taskCount = 0
totalDurationMs = 0
maxDurationMs = 0
stats.taskCount = 0
stats.totalDurationMs = 0
stats.maxDurationMs = 0
}
const interval = setInterval(report, LONG_TASK_REPORT_INTERVAL)
return () => {
+2 -2
View File
@@ -567,11 +567,11 @@ let PreviewableUserAvatar = ({
unstableCacheProfileView(queryClient, profile)
}, [profile, queryClient, onBeforePress])
const onOpenLiveStatus = useCallback(() => {
const onOpenLiveStatus = () => {
playHaptic('Light')
ax.metric('live:card:open', {subject: profile.did, from: 'post'})
liveControl.open()
}, [liveControl, playHaptic, profile.did])
}
const avatarEl = (
<UserAvatar