@oxyhq/bloom 1.14.0 → 1.14.2

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 (68) hide show
  1. package/docs/bottom-sheet.mdx +1 -0
  2. package/docs/media-flight.mdx +15 -6
  3. package/lib/commonjs/bottom-sheet/BottomSheetBase.js +4 -0
  4. package/lib/commonjs/bottom-sheet/BottomSheetBase.js.map +1 -1
  5. package/lib/commonjs/media-flight/MediaSurface.js +51 -10
  6. package/lib/commonjs/media-flight/MediaSurface.js.map +1 -1
  7. package/lib/commonjs/media-flight/constants.js +32 -7
  8. package/lib/commonjs/media-flight/constants.js.map +1 -1
  9. package/lib/commonjs/tab-bar/TabBarBase.js +34 -6
  10. package/lib/commonjs/tab-bar/TabBarBase.js.map +1 -1
  11. package/lib/commonjs/theme/color-scope/ColorScope.js +42 -12
  12. package/lib/commonjs/theme/color-scope/ColorScope.js.map +1 -1
  13. package/lib/commonjs/theme/color-scope/ColorScope.web.js +2 -8
  14. package/lib/commonjs/theme/color-scope/ColorScope.web.js.map +1 -1
  15. package/lib/module/bottom-sheet/BottomSheetBase.js +5 -1
  16. package/lib/module/bottom-sheet/BottomSheetBase.js.map +1 -1
  17. package/lib/module/media-flight/MediaSurface.js +52 -11
  18. package/lib/module/media-flight/MediaSurface.js.map +1 -1
  19. package/lib/module/media-flight/constants.js +31 -6
  20. package/lib/module/media-flight/constants.js.map +1 -1
  21. package/lib/module/tab-bar/TabBarBase.js +35 -7
  22. package/lib/module/tab-bar/TabBarBase.js.map +1 -1
  23. package/lib/module/theme/color-scope/ColorScope.js +45 -13
  24. package/lib/module/theme/color-scope/ColorScope.js.map +1 -1
  25. package/lib/module/theme/color-scope/ColorScope.web.js +3 -9
  26. package/lib/module/theme/color-scope/ColorScope.web.js.map +1 -1
  27. package/lib/typescript/commonjs/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  28. package/lib/typescript/commonjs/bottom-sheet/types.d.ts +6 -0
  29. package/lib/typescript/commonjs/bottom-sheet/types.d.ts.map +1 -1
  30. package/lib/typescript/commonjs/media-flight/MediaSurface.d.ts.map +1 -1
  31. package/lib/typescript/commonjs/media-flight/constants.d.ts +30 -6
  32. package/lib/typescript/commonjs/media-flight/constants.d.ts.map +1 -1
  33. package/lib/typescript/commonjs/media-flight/types.d.ts +7 -2
  34. package/lib/typescript/commonjs/media-flight/types.d.ts.map +1 -1
  35. package/lib/typescript/commonjs/tab-bar/TabBarBase.d.ts.map +1 -1
  36. package/lib/typescript/commonjs/theme/color-scope/ColorScope.d.ts +36 -2
  37. package/lib/typescript/commonjs/theme/color-scope/ColorScope.d.ts.map +1 -1
  38. package/lib/typescript/commonjs/theme/color-scope/ColorScope.web.d.ts +6 -2
  39. package/lib/typescript/commonjs/theme/color-scope/ColorScope.web.d.ts.map +1 -1
  40. package/lib/typescript/module/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  41. package/lib/typescript/module/bottom-sheet/types.d.ts +6 -0
  42. package/lib/typescript/module/bottom-sheet/types.d.ts.map +1 -1
  43. package/lib/typescript/module/media-flight/MediaSurface.d.ts.map +1 -1
  44. package/lib/typescript/module/media-flight/constants.d.ts +30 -6
  45. package/lib/typescript/module/media-flight/constants.d.ts.map +1 -1
  46. package/lib/typescript/module/media-flight/types.d.ts +7 -2
  47. package/lib/typescript/module/media-flight/types.d.ts.map +1 -1
  48. package/lib/typescript/module/tab-bar/TabBarBase.d.ts.map +1 -1
  49. package/lib/typescript/module/theme/color-scope/ColorScope.d.ts +36 -2
  50. package/lib/typescript/module/theme/color-scope/ColorScope.d.ts.map +1 -1
  51. package/lib/typescript/module/theme/color-scope/ColorScope.web.d.ts +6 -2
  52. package/lib/typescript/module/theme/color-scope/ColorScope.web.d.ts.map +1 -1
  53. package/package.json +1 -1
  54. package/src/__tests__/support/collision-fixture-barrel.ts +20 -0
  55. package/src/__tests__/support/constructed-style-sheets.ts +68 -0
  56. package/src/__tests__/support/press-host.ts +30 -0
  57. package/src/__tests__/support/rendered-style.ts +99 -0
  58. package/src/__tests__/support/unread-hook-fixture.ts +33 -0
  59. package/src/bottom-sheet/BottomSheetBase.tsx +13 -0
  60. package/src/bottom-sheet/types.ts +6 -0
  61. package/src/media-flight/MediaSurface.tsx +60 -14
  62. package/src/media-flight/constants.ts +31 -6
  63. package/src/media-flight/types.ts +7 -2
  64. package/src/tab-bar/TabBarBase.tsx +41 -7
  65. package/src/theme/__tests__/__fixtures__/golden-resolved-tokens.json +7682 -0
  66. package/src/theme/__tests__/fixtures/color-engine-golden.json +1 -0
  67. package/src/theme/color-scope/ColorScope.tsx +53 -12
  68. package/src/theme/color-scope/ColorScope.web.tsx +10 -8
@@ -1 +1 @@
1
- {"version":3,"names":["Children","createContext","useCallback","useContext","useEffect","useMemo","Pressable","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","Animated","Extrapolation","interpolate","interpolateColor","runOnJS","useAnimatedReaction","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useHaptics","useClaimBottomEdge","windowEdgeGap","setMinimized","useMinimizeState","BAR_MARGIN","BLUR_BLEED","EXPANDED_HEIGHT","HIGHLIGHT_EXPANDED","HIGHLIGHT_FADE","HIGHLIGHT_MINIMIZED","ICON_SIZE","ITEM_GAP","ITEM_PAD_V","LABEL_FONT_SIZE","LONG_PRESS_MIN_DURATION","MINIMIZED_HEIGHT","MINIMIZED_INSET","ROW_PAD_H","SLIDE_SPRING","useTabBarTheme","jsx","_jsx","jsxs","_jsxs","BarContext","TabBarBody","Surface","Blur","children","activeIndex","activeProgress","onIndexChange","onIndexLongPress","theme","themeOverrides","haptics","blur","maxWidth","style","viewProps","insets","width","windowWidth","minimized","progress","tabCount","Math","max","count","hasSelection","undefined","Number","isInteger","slideIndex","highlightOpacity","isDragging","lastTicked","impact","barOuterWidth","min","tick","selectIndex","index","longPressIndex","hasLongPress","idleProgress","driven","source","value","gesture","indexAtX","x","minimizedValue","sideInset","CLAMP","barWidth","itemWidth","raw","pan","Pan","activeOffsetX","failOffsetY","onStart","event","round","onUpdate","rounded","onFinalize","tap","Tap","maxDistance","maxDuration","onEnd","success","Race","longPress","LongPress","minDuration","barStyle","height","inset","marginLeft","marginRight","shapeStyle","borderRadius","highlightStyle","barHeight","top","opacity","transform","translateX","bottomOffset","bottom","constrainedWrapStyle","alignSelf","barContext","pointerEvents","styles","root","direction","intensity","position","left","right","barWrap","marginBottom","highlight","backgroundColor","accessibilityRole","itemRow","Provider","TabBarButtonBody","Glyph","item","isFocused","onPress","pressableProps","bar","standaloneTheme","focused","activeGlyphStyle","proximity","abs","labelStyle","color","activeTint","inactiveTint","boxStyle","accessibilityLabel","label","state","button","itemBox","tint","size","active","absoluteFill","glyphLayer","Text","numberOfLines","createTabBar","TabBar","props","displayName","createTabBarButton","TabBarButton","create","marginHorizontal","borderCurve","flex","flexDirection","alignItems","paddingHorizontal","justifyContent","paddingTop","overflow","fontSize","fontWeight","marginTop"],"sourceRoot":"../../../src","sources":["tab-bar/TabBarBase.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Children","createContext","useCallback","useContext","useEffect","useMemo","Platform","Pressable","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","Animated","Extrapolation","interpolate","interpolateColor","runOnJS","useAnimatedReaction","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useHaptics","useClaimBottomEdge","windowEdgeGap","setMinimized","useMinimizeState","BAR_MARGIN","BLUR_BLEED","EXPANDED_HEIGHT","HIGHLIGHT_EXPANDED","HIGHLIGHT_FADE","HIGHLIGHT_MINIMIZED","ICON_SIZE","ITEM_GAP","ITEM_PAD_V","LABEL_FONT_SIZE","LONG_PRESS_MIN_DURATION","MINIMIZED_HEIGHT","MINIMIZED_INSET","ROW_PAD_H","SLIDE_SPRING","useTabBarTheme","jsx","_jsx","jsxs","_jsxs","BarContext","TabBarBody","Surface","Blur","children","activeIndex","activeProgress","onIndexChange","onIndexLongPress","theme","themeOverrides","haptics","blur","maxWidth","style","viewProps","insets","width","windowWidth","minimized","progress","tabCount","Math","max","count","hasSelection","undefined","Number","isInteger","slideIndex","highlightOpacity","isDragging","lastTicked","impact","barOuterWidth","min","tick","selectIndex","index","longPressIndex","hasLongPress","idleProgress","driven","source","value","gesture","indexAtX","x","minimizedValue","sideInset","CLAMP","barWidth","itemWidth","raw","pan","Pan","activeOffsetX","failOffsetY","onStart","event","round","onUpdate","rounded","onFinalize","tap","Tap","maxDistance","maxDuration","onEnd","success","Race","longPress","LongPress","minDuration","barStyle","height","inset","marginLeft","marginRight","shapeStyle","borderRadius","highlightStyle","barHeight","top","opacity","transform","translateX","bottomOffset","bottom","constrainedWrapStyle","alignSelf","barContext","pointerEvents","styles","root","direction","intensity","position","left","right","barWrap","marginBottom","highlight","backgroundColor","accessibilityRole","itemRow","Provider","ACTIVATE_ACTIONS","name","TabBarButtonBody","Glyph","item","isFocused","onPress","pressableProps","bar","standaloneTheme","focused","activeGlyphStyle","proximity","abs","labelStyle","color","activeTint","inactiveTint","boxStyle","accessibilityLabel","label","accessibilityActions","onAccessibilityAction","nativeEvent","actionName","OS","state","button","itemBox","tint","size","active","absoluteFill","glyphLayer","Text","numberOfLines","createTabBar","TabBar","props","displayName","createTabBarButton","TabBarButton","create","marginHorizontal","borderCurve","flex","flexDirection","alignItems","paddingHorizontal","justifyContent","paddingTop","overflow","fontSize","fontWeight","marginTop"],"sourceRoot":"../../../src","sources":["tab-bar/TabBarBase.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,46 @@ import { View } from 'react-native';
5
5
  import { BloomThemeContext } from "../BloomThemeProvider.js";
6
6
  import { buildTheme } from "../build-theme.js";
7
7
  import { buildNativePresetStyle, buildScopeVars, getVariableContextProvider } from "./style-builder.js";
8
- import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
8
+
9
+ /**
10
+ * The variables a scope publishes when it carries no preset of its own.
11
+ *
12
+ * Empty and shared at module scope, both deliberately: react-native-css's
13
+ * `VariableContextProvider` MERGES its value over the inherited one, so an empty
14
+ * record leaves the parent scope's variables exactly as they were, and one
15
+ * shared identity keeps that provider's `useMemo` from recomputing every render.
16
+ */
17
+ import { jsx as _jsx } from "react/jsx-runtime";
18
+ const NO_VARS = Object.freeze({});
19
+ /**
20
+ * A subtree themed by one color preset.
21
+ *
22
+ * THE SHAPE OF WHAT THIS RETURNS DOES NOT DEPEND ON `colorPreset`. Both
23
+ * providers are mounted unconditionally, and an absent preset is expressed as
24
+ * pass-through VALUES ({@link NO_VARS}, the parent's own theme) rather than as a
25
+ * shorter tree. That is a correctness requirement, not a tidiness one, and it
26
+ * cost a real bug to learn:
27
+ *
28
+ * The no-preset path used to be `return <>{children}</>` — two provider levels
29
+ * shallower than the preset path. React reconciles by POSITION, so the first
30
+ * render after a preset arrives finds different element types at that position
31
+ * and unmounts the whole subtree to mount a new one. Every consumer that resolves
32
+ * its preset asynchronously — a profile screen learning the account's color a
33
+ * few hundred milliseconds after it opens — therefore remounted everything below
34
+ * the scope, including its own navigator.
35
+ *
36
+ * In Mention that scope sits above the app's route stack: the remount rebuilt
37
+ * the `[username]` navigator from scratch, which dropped the pushed child route
38
+ * AND its `username` param, and the profile a reader had just tapped rendered
39
+ * itself as "Profile not found" (mention#…, reproduced from the reel on a Pixel
40
+ * 10 Pro; the A/B was pinning `colorPreset` and watching the collapse stop).
41
+ * Remounting also throws away scroll positions, video players and in-flight
42
+ * state, so the same bug was costing far more than the one visible symptom.
43
+ *
44
+ * If a future change wants the no-preset case to render less, it has to keep the
45
+ * element types at this position identical across a preset change, or the
46
+ * remount comes back.
47
+ */
9
48
  export function BloomColorScope({
10
49
  colorPreset,
11
50
  asChild = false,
@@ -13,10 +52,9 @@ export function BloomColorScope({
13
52
  children
14
53
  }) {
15
54
  // All hooks are called UNCONDITIONALLY, in the same order on every render —
16
- // never gate a hook behind an early return (rules of hooks). The conditional
17
- // no-op/throw behavior is applied AFTER every hook has run, using the values
18
- // the hooks produced. `resolvedMode` falls back harmlessly when the provider
19
- // is absent (that render path throws below anyway).
55
+ // never gate a hook behind an early return (rules of hooks). The throw below
56
+ // happens AFTER every hook has run. `resolvedMode` falls back harmlessly when
57
+ // the provider is absent (that render path throws anyway).
20
58
  const parent = useContext(BloomThemeContext);
21
59
  const resolvedMode = parent?.theme.mode ?? 'light';
22
60
  const contextValue = useMemo(() => {
@@ -37,12 +75,6 @@ export function BloomColorScope({
37
75
  if (!parent) {
38
76
  throw new Error('BloomColorScope must be used within a <BloomThemeProvider>');
39
77
  }
40
- // `colorPreset` undefined => the scope is a no-op; children inherit the
41
- // parent scope. With `parent` present, `contextValue`/`nativeVars` are null
42
- // iff `colorPreset` is absent, so this guard also narrows them to non-null.
43
- if (!contextValue || !nativeVars) return /*#__PURE__*/_jsx(_Fragment, {
44
- children: children
45
- });
46
78
  const VariableProvider = getVariableContextProvider();
47
79
  let content;
48
80
  if (asChild) {
@@ -69,11 +101,11 @@ export function BloomColorScope({
69
101
  // Wrap the subtree in the variable provider when NativeWind is available;
70
102
  // otherwise render as-is so we never crash on web/non-NativeWind hosts.
71
103
  const scoped = VariableProvider ? /*#__PURE__*/_jsx(VariableProvider, {
72
- value: nativeVars,
104
+ value: nativeVars ?? NO_VARS,
73
105
  children: content
74
106
  }) : content;
75
107
  return /*#__PURE__*/_jsx(BloomThemeContext.Provider, {
76
- value: contextValue,
108
+ value: contextValue ?? parent,
77
109
  children: scoped
78
110
  });
79
111
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Children","cloneElement","isValidElement","useContext","useMemo","View","BloomThemeContext","buildTheme","buildNativePresetStyle","buildScopeVars","getVariableContextProvider","Fragment","_Fragment","jsx","_jsx","BloomColorScope","colorPreset","asChild","style","children","parent","resolvedMode","theme","mode","contextValue","nativeVars","Error","VariableProvider","content","child","only","childStyle","props","mergedStyle","flex","scoped","value","Provider","useColorScopeStyle","scopeStyle"],"sourceRoot":"../../../../src","sources":["theme/color-scope/ColorScope.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Children","cloneElement","isValidElement","useContext","useMemo","View","BloomThemeContext","buildTheme","buildNativePresetStyle","buildScopeVars","getVariableContextProvider","jsx","_jsx","NO_VARS","Object","freeze","BloomColorScope","colorPreset","asChild","style","children","parent","resolvedMode","theme","mode","contextValue","nativeVars","Error","VariableProvider","content","child","only","childStyle","props","mergedStyle","flex","scoped","value","Provider","useColorScopeStyle","scopeStyle"],"sourceRoot":"../../../../src","sources":["theme/color-scope/ColorScope.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,7 +11,7 @@ import { buildScopeVars } from "./style-builder.js";
11
11
  * utilities. Scoped onto an element's inline `style`, profile-level NativeWind
12
12
  * classes resolve against the subtree preset instead of the document root.
13
13
  */
14
- import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
14
+ import { jsx as _jsx } from "react/jsx-runtime";
15
15
  function buildWebScopeVars(colorPreset, mode) {
16
16
  return buildScopeVars(colorPreset, mode);
17
17
  }
@@ -60,12 +60,6 @@ export function BloomColorScope({
60
60
  if (!parent) {
61
61
  throw new Error('BloomColorScope must be used within a <BloomThemeProvider>');
62
62
  }
63
- // `colorPreset` undefined => the scope is a no-op; children inherit the
64
- // parent scope. With `parent` present, `contextValue`/`varsStyle` are null
65
- // iff `colorPreset` is absent, so this guard also narrows them to non-null.
66
- if (!contextValue || !varsStyle) return /*#__PURE__*/_jsx(_Fragment, {
67
- children: children
68
- });
69
63
  let content;
70
64
  if (asChild) {
71
65
  const child = Children.only(children);
@@ -78,7 +72,7 @@ export function BloomColorScope({
78
72
  // otherwise — an array reaching a DOM node throws on commit.
79
73
  const childStyle = child.props.style;
80
74
  const childIsRnStyled = Array.isArray(childStyle) || typeof childStyle === 'number';
81
- const mergedStyle = childIsRnStyled ? [varsStyle, style, childStyle] : {
75
+ const mergedStyle = childIsRnStyled ? [varsStyle ?? undefined, style, childStyle] : {
82
76
  ...varsStyle,
83
77
  ...style,
84
78
  ...(childStyle || undefined)
@@ -99,7 +93,7 @@ export function BloomColorScope({
99
93
  });
100
94
  }
101
95
  return /*#__PURE__*/_jsx(BloomThemeContext.Provider, {
102
- value: contextValue,
96
+ value: contextValue ?? parent,
103
97
  children: content
104
98
  });
105
99
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Children","cloneElement","isValidElement","useContext","useMemo","BloomThemeContext","buildTheme","buildScopeVars","Fragment","_Fragment","jsx","_jsx","buildWebScopeVars","colorPreset","mode","BloomColorScope","asChild","style","children","parent","resolvedMode","theme","contextValue","varsStyle","Error","content","child","only","childStyle","props","childIsRnStyled","Array","isArray","mergedStyle","undefined","Provider","value","useColorScopeStyle","scopeStyle"],"sourceRoot":"../../../../src","sources":["theme/color-scope/ColorScope.web.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Children","cloneElement","isValidElement","useContext","useMemo","BloomThemeContext","buildTheme","buildScopeVars","jsx","_jsx","buildWebScopeVars","colorPreset","mode","BloomColorScope","asChild","style","children","parent","resolvedMode","theme","contextValue","varsStyle","Error","content","child","only","childStyle","props","childIsRnStyled","Array","isArray","mergedStyle","undefined","Provider","value","useColorScopeStyle","scopeStyle"],"sourceRoot":"../../../../src","sources":["theme/color-scope/ColorScope.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgC/B,OAAO,KAAK,EAAE,cAAc,EAA2C,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAsB7G,eAAO,MAAM,eAAe,6FAkpB1B,CAAC"}
1
+ {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiC/B,OAAO,KAAK,EAAE,cAAc,EAA2C,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAsB7G,eAAO,MAAM,eAAe,6FA8pB1B,CAAC"}
@@ -90,6 +90,12 @@ export interface BottomSheetProps {
90
90
  * Defaults to `false` (constant opacity during drag).
91
91
  */
92
92
  dynamicBackdrop?: boolean;
93
+ /**
94
+ * Optional UI-thread progress mirror for coordinating content behind the
95
+ * sheet. `0` means fully closed and `1` fully presented; dragging the sheet
96
+ * updates every intermediate value without crossing the JS bridge.
97
+ */
98
+ animatedProgress?: SharedValue<number>;
93
99
  /**
94
100
  * Custom handle slot. When provided, replaces the default drag handle
95
101
  * (the 36×5 pill). The rendered handle is wrapped in the dedicated handle
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaSurface.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/MediaSurface.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAkD,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5F,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAI/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;AASjE,MAAM,WAAW,iBAAiB;IAChC,2EAA2E;IAC3E,OAAO,EAAE,mBAAmB,CAAC;IAC7B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,kFAAkF;IAClF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC1D;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,yDAyGvB,CAAC;AAsBH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,UAAoB,EACpB,kBAAkB,GACnB,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,2CAaA;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;CAAE,2CAExE"}
1
+ {"version":3,"file":"MediaSurface.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/MediaSurface.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAkD,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5F,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAI/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;AASjE,MAAM,WAAW,iBAAiB;IAChC,2EAA2E;IAC3E,OAAO,EAAE,mBAAmB,CAAC;IAC7B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,kFAAkF;IAClF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC1D;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,yDAqJvB,CAAC;AAwBH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,UAAoB,EACpB,kBAAkB,GACnB,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,2CAaA;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;CAAE,2CAExE"}
@@ -16,15 +16,39 @@
16
16
  */
17
17
  export declare const SURFACE_MOUNT_TIMEOUT_MS = 250;
18
18
  /**
19
- * How many times a video slot may change identity before Bloom says so.
19
+ * How many CONSECUTIVE renders a video slot may arrive new on before Bloom says
20
+ * so.
20
21
  *
21
- * `renderVideo` is part of what a host publishes to the layer and is compared
22
- * by identity, so an unmemoised slot republishes on every render of the row it
23
- * lives in silently, and only under load. Five is well past any legitimate
24
- * cause (a mute toggle, a fit change) and far below the churn of a slot rebuilt
25
- * per render in a scrolling feed.
22
+ * `renderVideo` is compared by identity and on web it is part of what a host
23
+ * publishes to the layer — so an unmemoised slot re-renders the surface on
24
+ * every render of the row it lives in, silently and only under load.
25
+ *
26
+ * Consecutive, never a lifetime total. A correctly memoised slot changes
27
+ * identity whenever the state it reads changes (`isWatched` on a reel slide,
28
+ * say), so ANY fixed lifetime total is reached eventually by a consumer with
29
+ * nothing to fix — and the warning's own advice, `useCallback` over the props
30
+ * the slot reads, is what such a consumer already wrote. Five in a row is
31
+ * unreachable that way: it takes five commits where nothing the slot reads
32
+ * changed and the slot was rebuilt anyway.
26
33
  */
27
34
  export declare const SLOT_IDENTITY_CHURN_LIMIT = 5;
35
+ /**
36
+ * How long a run of {@link SLOT_IDENTITY_CHURN_LIMIT} new slots may take and
37
+ * still be reported (ms).
38
+ *
39
+ * "Consecutive" alone is not enough for the consumer who memoised the surface's
40
+ * other props as well: `memo` then skips every render where only the parent
41
+ * changed, so the surface commits ONLY when the slot changes and the run never
42
+ * breaks — with nothing to fix and, because the renders were skipped, no cost
43
+ * paid either.
44
+ *
45
+ * Rate is what separates them, and it is what the warning was always about. A
46
+ * slot rebuilt per render changes as fast as its row renders, which in a
47
+ * scrolling feed is five times in a fraction of a frame budget. A slot rebuilt
48
+ * when the state it reads changes moves at the speed of a finger, and half a
49
+ * second is far too short for five activations of ONE surface.
50
+ */
51
+ export declare const SLOT_IDENTITY_CHURN_WINDOW_MS = 500;
28
52
  /**
29
53
  * How far a media element may sit from the box it is supposed to fill, in px,
30
54
  * before Bloom says so.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAiB5C;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAiB5C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC"}
@@ -257,9 +257,14 @@ export interface MediaVideoSlotProps<P extends VideoPlayerLike = VideoPlayerLike
257
257
  * So the consumer may build the element instead, with Bloom deciding only what
258
258
  * it has to: which player, and a style that fills the box.
259
259
  *
260
- * MEMOISE IT (`useCallback`). The slot is part of what a host publishes to the
261
- * layer, compared by identity — a new function every render republishes every
260
+ * MEMOISE IT (`useCallback`), over the state the element actually reads. The
261
+ * slot is compared by identity — and on web it is part of what a host publishes
262
+ * to the layer — so a new function every render re-renders the surface every
262
263
  * render. Correct either way, wasteful if you skip it.
264
+ *
265
+ * It is expected to change when that state does; only a slot rebuilt on renders
266
+ * where nothing it reads changed is the mistake, and that is the only one Bloom
267
+ * warns about.
263
268
  */
264
269
  export type MediaVideoSlot<P extends VideoPlayerLike = VideoPlayerLike> = (props: MediaVideoSlotProps<P>) => ReactNode;
265
270
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TabBarBase.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/TabBarBase.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAOL,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AAoBf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAiBL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAe,MAAM,SAAS,CAAC;AAinB3E;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC1C,IAAI,EAAE,aAAa,CAAC,oBAAoB,CAAC;YAElB,WAAW;;EAGnC;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;YAC1C,iBAAiB;;EAG/C"}
1
+ {"version":3,"file":"TabBarBase.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/TabBarBase.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAOL,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AA2Bf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAiBL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAe,MAAM,SAAS,CAAC;AA4oB3E;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC1C,IAAI,EAAE,aAAa,CAAC,oBAAoB,CAAC;YAElB,WAAW;;EAGnC;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;YAC1C,iBAAiB;;EAG/C"}
@@ -3,8 +3,13 @@ import { type StyleProp, type ViewStyle } from 'react-native';
3
3
  import type { AppColorName } from '../color-presets';
4
4
  export interface BloomColorScopeProps {
5
5
  /**
6
- * Preset to apply within this subtree. When `undefined`, the scope is a
7
- * no-op and children inherit the parent scope's preset unchanged.
6
+ * Preset to apply within this subtree. When `undefined`, the scope publishes
7
+ * nothing of its own and children inherit the parent scope's preset unchanged.
8
+ *
9
+ * It is a no-op in what it PUBLISHES, never in what it RENDERS — see the
10
+ * component's own comment: the element tree this returns is identical whether
11
+ * or not a preset is set, because a preset that arrives late must not remount
12
+ * the subtree.
8
13
  */
9
14
  colorPreset: AppColorName | undefined;
10
15
  /**
@@ -16,6 +21,35 @@ export interface BloomColorScopeProps {
16
21
  style?: StyleProp<ViewStyle>;
17
22
  children: React.ReactNode;
18
23
  }
24
+ /**
25
+ * A subtree themed by one color preset.
26
+ *
27
+ * THE SHAPE OF WHAT THIS RETURNS DOES NOT DEPEND ON `colorPreset`. Both
28
+ * providers are mounted unconditionally, and an absent preset is expressed as
29
+ * pass-through VALUES ({@link NO_VARS}, the parent's own theme) rather than as a
30
+ * shorter tree. That is a correctness requirement, not a tidiness one, and it
31
+ * cost a real bug to learn:
32
+ *
33
+ * The no-preset path used to be `return <>{children}</>` — two provider levels
34
+ * shallower than the preset path. React reconciles by POSITION, so the first
35
+ * render after a preset arrives finds different element types at that position
36
+ * and unmounts the whole subtree to mount a new one. Every consumer that resolves
37
+ * its preset asynchronously — a profile screen learning the account's color a
38
+ * few hundred milliseconds after it opens — therefore remounted everything below
39
+ * the scope, including its own navigator.
40
+ *
41
+ * In Mention that scope sits above the app's route stack: the remount rebuilt
42
+ * the `[username]` navigator from scratch, which dropped the pushed child route
43
+ * AND its `username` param, and the profile a reader had just tapped rendered
44
+ * itself as "Profile not found" (mention#…, reproduced from the reel on a Pixel
45
+ * 10 Pro; the A/B was pinning `colorPreset` and watching the collapse stop).
46
+ * Remounting also throws away scroll positions, video players and in-flight
47
+ * state, so the same bug was costing far more than the one visible symptom.
48
+ *
49
+ * If a future change wants the no-preset case to render less, it has to keep the
50
+ * element types at this position identical across a preset change, or the
51
+ * remount comes back.
52
+ */
19
53
  export declare function BloomColorScope({ colorPreset, asChild, style, children, }: BloomColorScopeProps): import("react/jsx-runtime").JSX.Element;
20
54
  /**
21
55
  * Escape hatch for advanced cases where the wrapping element is owned by the
@@ -1 +1 @@
1
- {"version":3,"file":"ColorScope.d.ts","sourceRoot":"","sources":["../../../../../src/theme/color-scope/ColorScope.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsE,MAAM,OAAO,CAAC;AAC3F,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0GAA0G;IAC1G,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAMD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,OAAe,EACf,KAAK,EACL,QAAQ,GACT,EAAE,oBAAoB,2CA4DtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,CAYlF"}
1
+ {"version":3,"file":"ColorScope.d.ts","sourceRoot":"","sources":["../../../../../src/theme/color-scope/ColorScope.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsE,MAAM,OAAO,CAAC;AAC3F,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAarD,MAAM,WAAW,oBAAoB;IACnC;;;;;;;;OAQG;IACH,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0GAA0G;IAC1G,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,OAAe,EACf,KAAK,EACL,QAAQ,GACT,EAAE,oBAAoB,2CAyDtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,CAYlF"}
@@ -2,8 +2,12 @@ import React from 'react';
2
2
  import type { AppColorName } from '../color-presets';
3
3
  export interface BloomColorScopeProps {
4
4
  /**
5
- * Preset to apply within this subtree. When `undefined`, the scope is a
6
- * no-op and children inherit the parent scope's preset unchanged.
5
+ * Preset to apply within this subtree. When `undefined`, the scope publishes
6
+ * nothing of its own and children inherit the parent scope's preset unchanged.
7
+ *
8
+ * It is a no-op in what it PUBLISHES, never in what it RENDERS — the element
9
+ * tree is identical either way, so a preset that arrives late cannot remount
10
+ * the subtree. `ColorScope.tsx` carries the full account.
7
11
  */
8
12
  colorPreset: AppColorName | undefined;
9
13
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ColorScope.web.d.ts","sourceRoot":"","sources":["../../../../../src/theme/color-scope/ColorScope.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsE,MAAM,OAAO,CAAC;AAI3F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAgBrD,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yGAAyG;IACzG,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AA+BD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,OAAe,EACf,KAAK,EACL,QAAQ,GACT,EAAE,oBAAoB,2CAsDtB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,YAAY,GAAG,KAAK,CAAC,aAAa,CAYjF"}
1
+ {"version":3,"file":"ColorScope.web.d.ts","sourceRoot":"","sources":["../../../../../src/theme/color-scope/ColorScope.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsE,MAAM,OAAO,CAAC;AAI3F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAgBrD,MAAM,WAAW,oBAAoB;IACnC;;;;;;;OAOG;IACH,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yGAAyG;IACzG,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AA+BD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,OAAe,EACf,KAAK,EACL,QAAQ,GACT,EAAE,oBAAoB,2CAoDtB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,YAAY,GAAG,KAAK,CAAC,aAAa,CAYjF"}
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgC/B,OAAO,KAAK,EAAE,cAAc,EAA2C,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAsB7G,eAAO,MAAM,eAAe,6FAkpB1B,CAAC"}
1
+ {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiC/B,OAAO,KAAK,EAAE,cAAc,EAA2C,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAsB7G,eAAO,MAAM,eAAe,6FA8pB1B,CAAC"}
@@ -90,6 +90,12 @@ export interface BottomSheetProps {
90
90
  * Defaults to `false` (constant opacity during drag).
91
91
  */
92
92
  dynamicBackdrop?: boolean;
93
+ /**
94
+ * Optional UI-thread progress mirror for coordinating content behind the
95
+ * sheet. `0` means fully closed and `1` fully presented; dragging the sheet
96
+ * updates every intermediate value without crossing the JS bridge.
97
+ */
98
+ animatedProgress?: SharedValue<number>;
93
99
  /**
94
100
  * Custom handle slot. When provided, replaces the default drag handle
95
101
  * (the 36×5 pill). The rendered handle is wrapped in the dedicated handle
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaSurface.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/MediaSurface.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAkD,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5F,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAI/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;AASjE,MAAM,WAAW,iBAAiB;IAChC,2EAA2E;IAC3E,OAAO,EAAE,mBAAmB,CAAC;IAC7B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,kFAAkF;IAClF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC1D;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,yDAyGvB,CAAC;AAsBH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,UAAoB,EACpB,kBAAkB,GACnB,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,2CAaA;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;CAAE,2CAExE"}
1
+ {"version":3,"file":"MediaSurface.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/MediaSurface.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAkD,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5F,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAI/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;AASjE,MAAM,WAAW,iBAAiB;IAChC,2EAA2E;IAC3E,OAAO,EAAE,mBAAmB,CAAC;IAC7B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,kFAAkF;IAClF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC1D;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,yDAqJvB,CAAC;AAwBH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,UAAoB,EACpB,kBAAkB,GACnB,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,2CAaA;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;CAAE,2CAExE"}
@@ -16,15 +16,39 @@
16
16
  */
17
17
  export declare const SURFACE_MOUNT_TIMEOUT_MS = 250;
18
18
  /**
19
- * How many times a video slot may change identity before Bloom says so.
19
+ * How many CONSECUTIVE renders a video slot may arrive new on before Bloom says
20
+ * so.
20
21
  *
21
- * `renderVideo` is part of what a host publishes to the layer and is compared
22
- * by identity, so an unmemoised slot republishes on every render of the row it
23
- * lives in silently, and only under load. Five is well past any legitimate
24
- * cause (a mute toggle, a fit change) and far below the churn of a slot rebuilt
25
- * per render in a scrolling feed.
22
+ * `renderVideo` is compared by identity and on web it is part of what a host
23
+ * publishes to the layer — so an unmemoised slot re-renders the surface on
24
+ * every render of the row it lives in, silently and only under load.
25
+ *
26
+ * Consecutive, never a lifetime total. A correctly memoised slot changes
27
+ * identity whenever the state it reads changes (`isWatched` on a reel slide,
28
+ * say), so ANY fixed lifetime total is reached eventually by a consumer with
29
+ * nothing to fix — and the warning's own advice, `useCallback` over the props
30
+ * the slot reads, is what such a consumer already wrote. Five in a row is
31
+ * unreachable that way: it takes five commits where nothing the slot reads
32
+ * changed and the slot was rebuilt anyway.
26
33
  */
27
34
  export declare const SLOT_IDENTITY_CHURN_LIMIT = 5;
35
+ /**
36
+ * How long a run of {@link SLOT_IDENTITY_CHURN_LIMIT} new slots may take and
37
+ * still be reported (ms).
38
+ *
39
+ * "Consecutive" alone is not enough for the consumer who memoised the surface's
40
+ * other props as well: `memo` then skips every render where only the parent
41
+ * changed, so the surface commits ONLY when the slot changes and the run never
42
+ * breaks — with nothing to fix and, because the renders were skipped, no cost
43
+ * paid either.
44
+ *
45
+ * Rate is what separates them, and it is what the warning was always about. A
46
+ * slot rebuilt per render changes as fast as its row renders, which in a
47
+ * scrolling feed is five times in a fraction of a frame budget. A slot rebuilt
48
+ * when the state it reads changes moves at the speed of a finger, and half a
49
+ * second is far too short for five activations of ONE surface.
50
+ */
51
+ export declare const SLOT_IDENTITY_CHURN_WINDOW_MS = 500;
28
52
  /**
29
53
  * How far a media element may sit from the box it is supposed to fill, in px,
30
54
  * before Bloom says so.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAiB5C;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/media-flight/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAiB5C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC"}
@@ -257,9 +257,14 @@ export interface MediaVideoSlotProps<P extends VideoPlayerLike = VideoPlayerLike
257
257
  * So the consumer may build the element instead, with Bloom deciding only what
258
258
  * it has to: which player, and a style that fills the box.
259
259
  *
260
- * MEMOISE IT (`useCallback`). The slot is part of what a host publishes to the
261
- * layer, compared by identity — a new function every render republishes every
260
+ * MEMOISE IT (`useCallback`), over the state the element actually reads. The
261
+ * slot is compared by identity — and on web it is part of what a host publishes
262
+ * to the layer — so a new function every render re-renders the surface every
262
263
  * render. Correct either way, wasteful if you skip it.
264
+ *
265
+ * It is expected to change when that state does; only a slot rebuilt on renders
266
+ * where nothing it reads changed is the mistake, and that is the only one Bloom
267
+ * warns about.
263
268
  */
264
269
  export type MediaVideoSlot<P extends VideoPlayerLike = VideoPlayerLike> = (props: MediaVideoSlotProps<P>) => ReactNode;
265
270
  /**