@oxyhq/bloom 1.9.2 → 1.10.1

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 (130) hide show
  1. package/docs/layout.mdx +79 -0
  2. package/lib/commonjs/bottom-sheet/BottomSheetBase.js +14 -4
  3. package/lib/commonjs/bottom-sheet/BottomSheetBase.js.map +1 -1
  4. package/lib/commonjs/fab/Fab.js +12 -3
  5. package/lib/commonjs/fab/Fab.js.map +1 -1
  6. package/lib/commonjs/fab/Fab.web.js +12 -4
  7. package/lib/commonjs/fab/Fab.web.js.map +1 -1
  8. package/lib/commonjs/index.js +137 -101
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/index.web.js +137 -101
  11. package/lib/commonjs/index.web.js.map +1 -1
  12. package/lib/commonjs/layout/bottom-edge.js +148 -0
  13. package/lib/commonjs/layout/bottom-edge.js.map +1 -0
  14. package/lib/commonjs/layout/edge.js +67 -0
  15. package/lib/commonjs/layout/edge.js.map +1 -0
  16. package/lib/commonjs/layout/index.js +38 -0
  17. package/lib/commonjs/layout/index.js.map +1 -0
  18. package/lib/commonjs/provider/BloomProvider.js +5 -2
  19. package/lib/commonjs/provider/BloomProvider.js.map +1 -1
  20. package/lib/commonjs/tab-bar/TabBarBase.js +11 -1
  21. package/lib/commonjs/tab-bar/TabBarBase.js.map +1 -1
  22. package/lib/commonjs/tab-bar/shared.js +0 -22
  23. package/lib/commonjs/tab-bar/shared.js.map +1 -1
  24. package/lib/commonjs/tab-bar/use-footprint.js +17 -8
  25. package/lib/commonjs/tab-bar/use-footprint.js.map +1 -1
  26. package/lib/commonjs/theme/color-scope/ColorScope.web.js +25 -13
  27. package/lib/commonjs/theme/color-scope/ColorScope.web.js.map +1 -1
  28. package/lib/commonjs/toast/Positioner.js +6 -1
  29. package/lib/commonjs/toast/Positioner.js.map +1 -1
  30. package/lib/commonjs/toast/container-geometry.js +19 -13
  31. package/lib/commonjs/toast/container-geometry.js.map +1 -1
  32. package/lib/module/bottom-sheet/BottomSheetBase.js +14 -4
  33. package/lib/module/bottom-sheet/BottomSheetBase.js.map +1 -1
  34. package/lib/module/fab/Fab.js +12 -3
  35. package/lib/module/fab/Fab.js.map +1 -1
  36. package/lib/module/fab/Fab.web.js +12 -4
  37. package/lib/module/fab/Fab.web.js.map +1 -1
  38. package/lib/module/index.js +1 -0
  39. package/lib/module/index.js.map +1 -1
  40. package/lib/module/index.web.js +1 -0
  41. package/lib/module/index.web.js.map +1 -1
  42. package/lib/module/layout/bottom-edge.js +141 -0
  43. package/lib/module/layout/bottom-edge.js.map +1 -0
  44. package/lib/module/layout/edge.js +62 -0
  45. package/lib/module/layout/edge.js.map +1 -0
  46. package/lib/module/layout/index.js +11 -0
  47. package/lib/module/layout/index.js.map +1 -0
  48. package/lib/module/provider/BloomProvider.js +5 -2
  49. package/lib/module/provider/BloomProvider.js.map +1 -1
  50. package/lib/module/tab-bar/TabBarBase.js +12 -2
  51. package/lib/module/tab-bar/TabBarBase.js.map +1 -1
  52. package/lib/module/tab-bar/shared.js +0 -21
  53. package/lib/module/tab-bar/shared.js.map +1 -1
  54. package/lib/module/tab-bar/use-footprint.js +18 -9
  55. package/lib/module/tab-bar/use-footprint.js.map +1 -1
  56. package/lib/module/theme/color-scope/ColorScope.web.js +25 -13
  57. package/lib/module/theme/color-scope/ColorScope.web.js.map +1 -1
  58. package/lib/module/toast/Positioner.js +6 -1
  59. package/lib/module/toast/Positioner.js.map +1 -1
  60. package/lib/module/toast/container-geometry.js +20 -13
  61. package/lib/module/toast/container-geometry.js.map +1 -1
  62. package/lib/typescript/commonjs/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  63. package/lib/typescript/commonjs/fab/Fab.d.ts.map +1 -1
  64. package/lib/typescript/commonjs/fab/Fab.web.d.ts.map +1 -1
  65. package/lib/typescript/commonjs/index.d.ts +1 -0
  66. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  67. package/lib/typescript/commonjs/index.web.d.ts +1 -0
  68. package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
  69. package/lib/typescript/commonjs/layout/bottom-edge.d.ts +77 -0
  70. package/lib/typescript/commonjs/layout/bottom-edge.d.ts.map +1 -0
  71. package/lib/typescript/commonjs/layout/edge.d.ts +56 -0
  72. package/lib/typescript/commonjs/layout/edge.d.ts.map +1 -0
  73. package/lib/typescript/commonjs/layout/index.d.ts +9 -0
  74. package/lib/typescript/commonjs/layout/index.d.ts.map +1 -0
  75. package/lib/typescript/commonjs/provider/BloomProvider.d.ts.map +1 -1
  76. package/lib/typescript/commonjs/tab-bar/TabBarBase.d.ts.map +1 -1
  77. package/lib/typescript/commonjs/tab-bar/shared.d.ts +0 -9
  78. package/lib/typescript/commonjs/tab-bar/shared.d.ts.map +1 -1
  79. package/lib/typescript/commonjs/tab-bar/use-footprint.d.ts +11 -7
  80. package/lib/typescript/commonjs/tab-bar/use-footprint.d.ts.map +1 -1
  81. package/lib/typescript/commonjs/theme/color-scope/ColorScope.web.d.ts.map +1 -1
  82. package/lib/typescript/commonjs/toast/Positioner.d.ts.map +1 -1
  83. package/lib/typescript/commonjs/toast/container-geometry.d.ts +14 -5
  84. package/lib/typescript/commonjs/toast/container-geometry.d.ts.map +1 -1
  85. package/lib/typescript/module/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  86. package/lib/typescript/module/fab/Fab.d.ts.map +1 -1
  87. package/lib/typescript/module/fab/Fab.web.d.ts.map +1 -1
  88. package/lib/typescript/module/index.d.ts +1 -0
  89. package/lib/typescript/module/index.d.ts.map +1 -1
  90. package/lib/typescript/module/index.web.d.ts +1 -0
  91. package/lib/typescript/module/index.web.d.ts.map +1 -1
  92. package/lib/typescript/module/layout/bottom-edge.d.ts +77 -0
  93. package/lib/typescript/module/layout/bottom-edge.d.ts.map +1 -0
  94. package/lib/typescript/module/layout/edge.d.ts +56 -0
  95. package/lib/typescript/module/layout/edge.d.ts.map +1 -0
  96. package/lib/typescript/module/layout/index.d.ts +9 -0
  97. package/lib/typescript/module/layout/index.d.ts.map +1 -0
  98. package/lib/typescript/module/provider/BloomProvider.d.ts.map +1 -1
  99. package/lib/typescript/module/tab-bar/TabBarBase.d.ts.map +1 -1
  100. package/lib/typescript/module/tab-bar/shared.d.ts +0 -9
  101. package/lib/typescript/module/tab-bar/shared.d.ts.map +1 -1
  102. package/lib/typescript/module/tab-bar/use-footprint.d.ts +11 -7
  103. package/lib/typescript/module/tab-bar/use-footprint.d.ts.map +1 -1
  104. package/lib/typescript/module/theme/color-scope/ColorScope.web.d.ts.map +1 -1
  105. package/lib/typescript/module/toast/Positioner.d.ts.map +1 -1
  106. package/lib/typescript/module/toast/container-geometry.d.ts +14 -5
  107. package/lib/typescript/module/toast/container-geometry.d.ts.map +1 -1
  108. package/package.json +15 -1
  109. package/src/__tests__/support/collision-fixture-barrel.ts +20 -0
  110. package/src/__tests__/support/constructed-style-sheets.ts +68 -0
  111. package/src/__tests__/support/press-host.ts +30 -0
  112. package/src/__tests__/support/rendered-style.ts +99 -0
  113. package/src/__tests__/support/unread-hook-fixture.ts +33 -0
  114. package/src/bottom-sheet/BottomSheetBase.tsx +14 -4
  115. package/src/fab/Fab.tsx +16 -3
  116. package/src/fab/Fab.web.tsx +16 -4
  117. package/src/index.ts +7 -0
  118. package/src/index.web.ts +7 -0
  119. package/src/layout/bottom-edge.tsx +162 -0
  120. package/src/layout/edge.ts +59 -0
  121. package/src/layout/index.ts +8 -0
  122. package/src/provider/BloomProvider.tsx +11 -1
  123. package/src/tab-bar/TabBarBase.tsx +11 -2
  124. package/src/tab-bar/shared.ts +0 -20
  125. package/src/tab-bar/use-footprint.ts +18 -9
  126. package/src/theme/__tests__/__fixtures__/golden-resolved-tokens.json +7682 -0
  127. package/src/theme/__tests__/fixtures/color-engine-golden.json +1 -0
  128. package/src/theme/color-scope/ColorScope.web.tsx +23 -13
  129. package/src/toast/Positioner.tsx +5 -0
  130. package/src/toast/container-geometry.ts +20 -8
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * The bottom edge's OCCUPANCY — how much of it is already claimed by a floating
5
+ * surface, so the next surface can stack above it instead of underneath it.
6
+ *
7
+ * ## The problem
8
+ *
9
+ * `windowEdgeGap` tells a surface where the window edge is. It cannot tell it
10
+ * that a tab bar is already parked there. Nothing could, so nothing did: Bloom's
11
+ * `Fab` anchored itself 16px off the edge and landed squarely behind the
12
+ * floating tab bar, and every app that hit it patched around Bloom instead —
13
+ * Mention grew a `BottomBarAwareFab` that read `useTabBarFootprint()` and lifted
14
+ * the FAB by hand, on web only, leaving native broken across seven screens.
15
+ *
16
+ * A z-index cannot rescue that placement either. The tab bar host is the last
17
+ * sibling of the app shell, so it paints above every descendant regardless of
18
+ * what they claim; the FAB has to be somewhere ELSE, not merely on top.
19
+ *
20
+ * ## The model
21
+ *
22
+ * A surface that parks at the bottom edge CLAIMS its footprint. A surface that
23
+ * wants to avoid it READS the total and offsets itself. Neither one imports the
24
+ * other, so a consumer composes them in any combination — a tab bar with no FAB,
25
+ * a FAB with no tab bar, both, or a third surface written later — and the
26
+ * geometry still resolves.
27
+ *
28
+ * Claims combine with MAX, not sum. Every claim is measured from the same window
29
+ * edge, so two surfaces at that edge overlap rather than stack; the tallest is
30
+ * what a new surface has to clear. Summing would strand it at twice the height.
31
+ *
32
+ * ## Why an external store
33
+ *
34
+ * The claim set is mutable state living outside React. Reading it in a memoized
35
+ * position is exactly the stale-read the React Compiler produces, so it is read
36
+ * through `useSyncExternalStore` and never touched directly. The store is
37
+ * created per provider (not at module scope) so tests, and any app mounting two
38
+ * roots, stay isolated from each other.
39
+ */
40
+ import { createContext, useContext, useEffect, useId, useState, useSyncExternalStore } from 'react';
41
+ import { jsx as _jsx } from "react/jsx-runtime";
42
+ function createBottomEdgeStore() {
43
+ const claims = new Map();
44
+ const listeners = new Set();
45
+ let inset = 0;
46
+ const recompute = () => {
47
+ let next = 0;
48
+ for (const height of claims.values()) {
49
+ if (height > next) next = height;
50
+ }
51
+ // Bail before notifying: a re-registration at an unchanged height (every
52
+ // render of a claimant whose footprint did not move) must not re-render
53
+ // every reader.
54
+ if (next === inset) return;
55
+ inset = next;
56
+ for (const listener of listeners) listener();
57
+ };
58
+ return {
59
+ subscribe(onChange) {
60
+ listeners.add(onChange);
61
+ return () => {
62
+ listeners.delete(onChange);
63
+ };
64
+ },
65
+ getInset: () => inset,
66
+ claim(id, height) {
67
+ if (claims.get(id) === height) return;
68
+ claims.set(id, height);
69
+ recompute();
70
+ },
71
+ release(id) {
72
+ if (!claims.delete(id)) return;
73
+ recompute();
74
+ }
75
+ };
76
+ }
77
+ const BottomEdgeContext = /*#__PURE__*/createContext(null);
78
+
79
+ /**
80
+ * Wrap the app once — `BloomProvider` already does. Rendering a second one
81
+ * scopes a nested subtree to its own claims, which is a real (if rare) thing to
82
+ * want: a bottom-edge surface inside a full-screen modal should not be offset by
83
+ * the tab bar the modal is covering.
84
+ */
85
+ export function BottomEdgeProvider({
86
+ children
87
+ }) {
88
+ const [store] = useState(createBottomEdgeStore);
89
+ return /*#__PURE__*/_jsx(BottomEdgeContext.Provider, {
90
+ value: store,
91
+ children: children
92
+ });
93
+ }
94
+ BottomEdgeProvider.displayName = 'BottomEdgeProvider';
95
+
96
+ // Stable module-scope identities for the no-provider path. Fresh closures here
97
+ // would resubscribe `useSyncExternalStore` on every render.
98
+ const NO_SUBSCRIPTION = () => () => {};
99
+ const NO_INSET = () => 0;
100
+
101
+ /**
102
+ * How much of the bottom edge is already occupied, in px.
103
+ *
104
+ * Add it to whatever offset the surface would otherwise use:
105
+ *
106
+ * ```tsx
107
+ * const occupied = useBottomEdgeInset();
108
+ * <View style={{ position: 'absolute', bottom: windowEdgeGap(insets.bottom) + occupied }} />
109
+ * ```
110
+ *
111
+ * `0` outside a provider, and `0` on the first commit even inside one — a claim
112
+ * registers in an effect, so a reader mounted in the same commit as its claimant
113
+ * settles one frame later. That is a layout offset rather than a measurement, so
114
+ * the settle is invisible in practice; nothing here waits on a real layout pass.
115
+ */
116
+ export function useBottomEdgeInset() {
117
+ const store = useContext(BottomEdgeContext);
118
+ return useSyncExternalStore(store?.subscribe ?? NO_SUBSCRIPTION, store?.getInset ?? NO_INSET, store?.getInset ?? NO_INSET);
119
+ }
120
+
121
+ /**
122
+ * Claim `height` px of the bottom edge for as long as the caller is mounted.
123
+ *
124
+ * The claimant owns its own placement — claiming does not move it. It declares
125
+ * the space it occupies so that everything reading `useBottomEdgeInset()` stays
126
+ * off it. Pass the FULL footprint (the surface's height plus the gap it holds
127
+ * off the window edge), which is the same number the surface positions itself
128
+ * with.
129
+ *
130
+ * A no-op outside a provider, so a surface stays usable standalone.
131
+ */
132
+ export function useClaimBottomEdge(height) {
133
+ const store = useContext(BottomEdgeContext);
134
+ const id = useId();
135
+ useEffect(() => {
136
+ if (!store) return;
137
+ store.claim(id, height);
138
+ return () => store.release(id);
139
+ }, [store, id, height]);
140
+ }
141
+ //# sourceMappingURL=bottom-edge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useContext","useEffect","useId","useState","useSyncExternalStore","jsx","_jsx","createBottomEdgeStore","claims","Map","listeners","Set","inset","recompute","next","height","values","listener","subscribe","onChange","add","delete","getInset","claim","id","get","set","release","BottomEdgeContext","BottomEdgeProvider","children","store","Provider","value","displayName","NO_SUBSCRIPTION","NO_INSET","useBottomEdgeInset","useClaimBottomEdge"],"sourceRoot":"../../../src","sources":["layout/bottom-edge.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SACEA,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,KAAK,EACLC,QAAQ,EACRC,oBAAoB,QAEf,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAcf,SAASC,qBAAqBA,CAAA,EAAoB;EAChD,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAAiB,CAAC;EACxC,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAa,CAAC;EACvC,IAAIC,KAAK,GAAG,CAAC;EAEb,MAAMC,SAAS,GAAGA,CAAA,KAAM;IACtB,IAAIC,IAAI,GAAG,CAAC;IACZ,KAAK,MAAMC,MAAM,IAAIP,MAAM,CAACQ,MAAM,CAAC,CAAC,EAAE;MACpC,IAAID,MAAM,GAAGD,IAAI,EAAEA,IAAI,GAAGC,MAAM;IAClC;IACA;IACA;IACA;IACA,IAAID,IAAI,KAAKF,KAAK,EAAE;IACpBA,KAAK,GAAGE,IAAI;IACZ,KAAK,MAAMG,QAAQ,IAAIP,SAAS,EAAEO,QAAQ,CAAC,CAAC;EAC9C,CAAC;EAED,OAAO;IACLC,SAASA,CAACC,QAAQ,EAAE;MAClBT,SAAS,CAACU,GAAG,CAACD,QAAQ,CAAC;MACvB,OAAO,MAAM;QACXT,SAAS,CAACW,MAAM,CAACF,QAAQ,CAAC;MAC5B,CAAC;IACH,CAAC;IACDG,QAAQ,EAAEA,CAAA,KAAMV,KAAK;IACrBW,KAAKA,CAACC,EAAE,EAAET,MAAM,EAAE;MAChB,IAAIP,MAAM,CAACiB,GAAG,CAACD,EAAE,CAAC,KAAKT,MAAM,EAAE;MAC/BP,MAAM,CAACkB,GAAG,CAACF,EAAE,EAAET,MAAM,CAAC;MACtBF,SAAS,CAAC,CAAC;IACb,CAAC;IACDc,OAAOA,CAACH,EAAE,EAAE;MACV,IAAI,CAAChB,MAAM,CAACa,MAAM,CAACG,EAAE,CAAC,EAAE;MACxBX,SAAS,CAAC,CAAC;IACb;EACF,CAAC;AACH;AAEA,MAAMe,iBAAiB,gBAAG7B,aAAa,CAAyB,IAAI,CAAC;;AAErE;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAS8B,kBAAkBA,CAAC;EAAEC;AAA4B,CAAC,EAAE;EAClE,MAAM,CAACC,KAAK,CAAC,GAAG5B,QAAQ,CAACI,qBAAqB,CAAC;EAC/C,oBAAOD,IAAA,CAACsB,iBAAiB,CAACI,QAAQ;IAACC,KAAK,EAAEF,KAAM;IAAAD,QAAA,EAAEA;EAAQ,CAA6B,CAAC;AAC1F;AAEAD,kBAAkB,CAACK,WAAW,GAAG,oBAAoB;;AAErD;AACA;AACA,MAAMC,eAAe,GAAGA,CAAA,KAAM,MAAM,CAAC,CAAC;AACtC,MAAMC,QAAQ,GAAGA,CAAA,KAAM,CAAC;;AAExB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAW;EAC3C,MAAMN,KAAK,GAAG/B,UAAU,CAAC4B,iBAAiB,CAAC;EAC3C,OAAOxB,oBAAoB,CACzB2B,KAAK,EAAEb,SAAS,IAAIiB,eAAe,EACnCJ,KAAK,EAAET,QAAQ,IAAIc,QAAQ,EAC3BL,KAAK,EAAET,QAAQ,IAAIc,QACrB,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,kBAAkBA,CAACvB,MAAc,EAAQ;EACvD,MAAMgB,KAAK,GAAG/B,UAAU,CAAC4B,iBAAiB,CAAC;EAC3C,MAAMJ,EAAE,GAAGtB,KAAK,CAAC,CAAC;EAElBD,SAAS,CAAC,MAAM;IACd,IAAI,CAAC8B,KAAK,EAAE;IACZA,KAAK,CAACR,KAAK,CAACC,EAAE,EAAET,MAAM,CAAC;IACvB,OAAO,MAAMgB,KAAK,CAACJ,OAAO,CAACH,EAAE,CAAC;EAChC,CAAC,EAAE,CAACO,KAAK,EAAEP,EAAE,EAAET,MAAM,CAAC,CAAC;AACzB","ignoreList":[]}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * How far a floating surface sits from a window edge.
5
+ *
6
+ * ## The rule this file encodes
7
+ *
8
+ * A floating surface CLEARS THE OS'S RESERVED BAND IN FULL. The safe-area inset
9
+ * is the space the platform has reserved for its own affordance — the iOS home
10
+ * indicator, the Android gesture handle — and a surface that sits inside it is
11
+ * sitting on top of a system control.
12
+ *
13
+ * Bloom used to answer this question three times, differently:
14
+ *
15
+ * - a detached `BottomSheet` `insets.bottom + 16`
16
+ * - the toast stack `bottom > 0 ? bottom + 8 : 16`
17
+ * - the floating tab bar `max(bottom - 16, 12)`
18
+ *
19
+ * The tab bar was the only one that SUBTRACTED, and subtracting is what put it
20
+ * on the Android gesture handle: a gesture-navigation device reserves ~24dp, the
21
+ * bar absorbed 16 of it, hit its own 12dp floor, and landed inside the band with
22
+ * the handle drawn through it. The other two were never reachable by that bug
23
+ * because they add.
24
+ *
25
+ * One function now answers it for all three, and the additive `gap` reproduces
26
+ * the sheet and the toast exactly — only the tab bar moves.
27
+ */
28
+
29
+ /**
30
+ * Breathing room from a window edge where the platform reserves nothing at all
31
+ * (web, a browser with no visual viewport inset, an Android device with the
32
+ * gesture bar hidden).
33
+ *
34
+ * It is also the FLOOR for every surface: a small-but-nonzero inset must never
35
+ * pull a surface closer to the edge than a device reporting no inset would.
36
+ */
37
+ export const EDGE_GAP = 16;
38
+
39
+ /**
40
+ * The distance a floating surface holds off a window edge, given that edge's
41
+ * safe-area inset.
42
+ *
43
+ * `gap` is the surface's own breathing room ON TOP of the reserved band, not an
44
+ * allowance to spend inside it — a bigger `gap` floats the surface further from
45
+ * the affordance, never closer. Pass `0` for a surface that should hug the safe
46
+ * area (the tab bar), a positive number for one that should stand clear of it (a
47
+ * detached sheet, a toast stack).
48
+ *
49
+ * ```ts
50
+ * windowEdgeGap(insets.bottom) // 34pt iOS · 24dp Android · 16 web
51
+ * windowEdgeGap(insets.bottom, 16) // 50pt iOS · 40dp Android · 16 web
52
+ * ```
53
+ *
54
+ * Anything laying out AROUND such a surface wants its total footprint (this gap
55
+ * plus the surface's own height) and must get it from the surface — never by
56
+ * adding `insets.bottom` to a hardcoded height, which double-counts the inset
57
+ * because the inset is already folded in here.
58
+ */
59
+ export function windowEdgeGap(inset, gap = 0) {
60
+ return Math.max(inset + gap, EDGE_GAP);
61
+ }
62
+ //# sourceMappingURL=edge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["EDGE_GAP","windowEdgeGap","inset","gap","Math","max"],"sourceRoot":"../../../src","sources":["layout/edge.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,QAAQ,GAAG,EAAE;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACC,KAAa,EAAEC,GAAG,GAAG,CAAC,EAAU;EAC5D,OAAOC,IAAI,CAACC,GAAG,CAACH,KAAK,GAAGC,GAAG,EAAEH,QAAQ,CAAC;AACxC","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Window-edge geometry, shared by every floating surface.
5
+ *
6
+ * `edge` answers "how far from the edge"; `bottom-edge` answers "what is already
7
+ * parked there". A surface that floats at the bottom needs both.
8
+ */
9
+ export { EDGE_GAP, windowEdgeGap } from "./edge.js";
10
+ export { BottomEdgeProvider, useBottomEdgeInset, useClaimBottomEdge } from "./bottom-edge.js";
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["EDGE_GAP","windowEdgeGap","BottomEdgeProvider","useBottomEdgeInset","useClaimBottomEdge"],"sourceRoot":"../../../src","sources":["layout/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,QAAQ,EAAEC,aAAa,QAAQ,WAAQ;AAChD,SAASC,kBAAkB,EAAEC,kBAAkB,EAAEC,kBAAkB,QAAQ,kBAAe","ignoreList":[]}
@@ -35,6 +35,7 @@
35
35
  */
36
36
 
37
37
  import { GlassBlurTargetProvider } from "../glass/blur-target.js";
38
+ import { BottomEdgeProvider } from "../layout/bottom-edge.js";
38
39
  import { ImageResolverProvider } from "../image-resolver/index.js";
39
40
  import { BloomHapticsProvider } from "../hooks/use-haptics.js";
40
41
  import { TabBarMinimizeProvider } from "../tab-bar/context.js";
@@ -61,8 +62,10 @@ export function BloomProvider({
61
62
  children: /*#__PURE__*/_jsx(BloomHapticsProvider, {
62
63
  enabled: haptics,
63
64
  children: /*#__PURE__*/_jsx(GlassBlurTargetProvider, {
64
- children: /*#__PURE__*/_jsx(TabBarMinimizeProvider, {
65
- children: children
65
+ children: /*#__PURE__*/_jsx(BottomEdgeProvider, {
66
+ children: /*#__PURE__*/_jsx(TabBarMinimizeProvider, {
67
+ children: children
68
+ })
66
69
  })
67
70
  })
68
71
  })
@@ -1 +1 @@
1
- {"version":3,"names":["GlassBlurTargetProvider","ImageResolverProvider","BloomHapticsProvider","TabBarMinimizeProvider","BloomThemeProvider","ScrollRestorationProvider","expoRouterScrollAdapter","jsx","_jsx","BloomProvider","children","imageResolver","haptics","themeProps","value","adapter","enabled","displayName"],"sourceRoot":"../../../src","sources":["provider/BloomProvider.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,uBAAuB,QAAQ,yBAAsB;AAC9D,SAASC,qBAAqB,QAA4B,4BAAmB;AAC7E,SAASC,oBAAoB,QAAQ,yBAAsB;AAC3D,SAASC,sBAAsB,QAAQ,uBAAoB;AAC3D,SAASC,kBAAkB,QAAsC,UAAU;AAC3E,SAASC,yBAAyB,QAAQ,sBAAmB;AAC7D,SAASC,uBAAuB,QAAQ,gCAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGhE,OAAO,SAASC,aAAaA,CAAC;EAC5BC,QAAQ;EACRC,aAAa;EACbC,OAAO,GAAG,IAAI;EACd,GAAGC;AACe,CAAC,EAAE;EACrB;IAAA;IACE;IACA;IACAL,IAAA,CAACP,qBAAqB;MAACa,KAAK,EAAEH,aAAa,IAAI,IAAK;MAAAD,QAAA,eAClDF,IAAA,CAACJ,kBAAkB;QAAA,GAAKS,UAAU;QAAAH,QAAA,eAChCF,IAAA,CAACH,yBAAyB;UAACU,OAAO,EAAET,uBAAwB;UAAAI,QAAA,eAC1DF,IAAA,CAACN,oBAAoB;YAACc,OAAO,EAAEJ,OAAQ;YAAAF,QAAA,eAYrCF,IAAA,CAACR,uBAAuB;cAAAU,QAAA,eACtBF,IAAA,CAACL,sBAAsB;gBAAAO,QAAA,EAAEA;cAAQ,CAAyB;YAAC,CACpC;UAAC,CACN;QAAC,CACE;MAAC,CACV;IAAC,CACA;EAAC;AAE5B;AAEAD,aAAa,CAACQ,WAAW,GAAG,eAAe","ignoreList":[]}
1
+ {"version":3,"names":["GlassBlurTargetProvider","BottomEdgeProvider","ImageResolverProvider","BloomHapticsProvider","TabBarMinimizeProvider","BloomThemeProvider","ScrollRestorationProvider","expoRouterScrollAdapter","jsx","_jsx","BloomProvider","children","imageResolver","haptics","themeProps","value","adapter","enabled","displayName"],"sourceRoot":"../../../src","sources":["provider/BloomProvider.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,uBAAuB,QAAQ,yBAAsB;AAC9D,SAASC,kBAAkB,QAAQ,0BAAuB;AAC1D,SAASC,qBAAqB,QAA4B,4BAAmB;AAC7E,SAASC,oBAAoB,QAAQ,yBAAsB;AAC3D,SAASC,sBAAsB,QAAQ,uBAAoB;AAC3D,SAASC,kBAAkB,QAAsC,UAAU;AAC3E,SAASC,yBAAyB,QAAQ,sBAAmB;AAC7D,SAASC,uBAAuB,QAAQ,gCAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGhE,OAAO,SAASC,aAAaA,CAAC;EAC5BC,QAAQ;EACRC,aAAa;EACbC,OAAO,GAAG,IAAI;EACd,GAAGC;AACe,CAAC,EAAE;EACrB;IAAA;IACE;IACA;IACAL,IAAA,CAACP,qBAAqB;MAACa,KAAK,EAAEH,aAAa,IAAI,IAAK;MAAAD,QAAA,eAClDF,IAAA,CAACJ,kBAAkB;QAAA,GAAKS,UAAU;QAAAH,QAAA,eAChCF,IAAA,CAACH,yBAAyB;UAACU,OAAO,EAAET,uBAAwB;UAAAI,QAAA,eAC1DF,IAAA,CAACN,oBAAoB;YAACc,OAAO,EAAEJ,OAAQ;YAAAF,QAAA,eAYrCF,IAAA,CAACT,uBAAuB;cAAAW,QAAA,eAQtBF,IAAA,CAACR,kBAAkB;gBAAAU,QAAA,eACjBF,IAAA,CAACL,sBAAsB;kBAAAO,QAAA,EAAEA;gBAAQ,CAAyB;cAAC,CACzC;YAAC,CACE;UAAC,CACN;QAAC,CACE;MAAC,CACV;IAAC,CACA;EAAC;AAE5B;AAEAD,aAAa,CAACQ,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -21,8 +21,10 @@ import { Gesture, GestureDetector } from 'react-native-gesture-handler';
21
21
  import Animated, { Extrapolation, interpolate, interpolateColor, runOnJS, useAnimatedStyle, useSharedValue, withSpring, withTiming } from 'react-native-reanimated';
22
22
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
23
23
  import { useHaptics } from "../hooks/use-haptics.js";
24
+ import { useClaimBottomEdge } from "../layout/bottom-edge.js";
25
+ import { windowEdgeGap } from "../layout/edge.js";
24
26
  import { setMinimized, useMinimizeState } from "./context.js";
25
- import { 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, tabBarBottomGap, useTabBarTheme } from "./shared.js";
27
+ import { 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 } from "./shared.js";
26
28
 
27
29
  /**
28
30
  * What a `TabBarButton` needs from the bar it sits in. `null` when a button is
@@ -300,7 +302,15 @@ function TabBarBody({
300
302
 
301
303
  // Shared with `useTabBarFootprint`, so a consumer accounting for the bar in
302
304
  // its own layout can never drift from where the bar actually sits.
303
- const bottomOffset = tabBarBottomGap(insets.bottom);
305
+ const bottomOffset = windowEdgeGap(insets.bottom);
306
+
307
+ // Publish what the bar occupies so anything else at this edge stacks above it
308
+ // rather than behind it. Same number `useTabBarFootprint` reports, derived from
309
+ // the same two values, so a consumer reading either can never disagree with
310
+ // where the bar actually sits. The EXPANDED height on purpose: the bar
311
+ // minimizes on scroll and re-expands, so claiming the minimized height would
312
+ // drop a FAB onto the pill the moment the user scrolled back up.
313
+ useClaimBottomEdge(bottomOffset + EXPANDED_HEIGHT);
304
314
 
305
315
  // How centring and the animated inset compose: centring is STATIC and belongs
306
316
  // to the wrap, the inset stays ANIMATED on the pill inside it. The wrap is
@@ -1 +1 @@
1
- {"version":3,"names":["Children","createContext","useCallback","useContext","useEffect","useMemo","Pressable","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","Animated","Extrapolation","interpolate","interpolateColor","runOnJS","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useHaptics","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","tabBarBottomGap","useTabBarTheme","jsx","_jsx","jsxs","_jsxs","BarContext","TabBarBody","Surface","Blur","children","activeIndex","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","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","Pressable","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","Animated","Extrapolation","interpolate","interpolateColor","runOnJS","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","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","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":[]}
@@ -47,27 +47,6 @@ export const BLUR_BLEED = 44;
47
47
  /** Label type size. Small by design — the icon carries the meaning. */
48
48
  export const LABEL_FONT_SIZE = 9.5;
49
49
 
50
- /**
51
- * How much of the bottom safe-area inset the bar's own gap absorbs. The pill
52
- * already floats clear of the content, so sitting the FULL inset below it
53
- * strands it in the middle of the screen on a home-indicator device.
54
- */
55
- const SAFE_AREA_ABSORBED = 16;
56
- /** Gap floor, for a device (or a browser) reporting no bottom inset at all. */
57
- const MIN_BOTTOM_GAP = 12;
58
-
59
- /**
60
- * Vertical gap between the bottom of the pill and the bottom of the window.
61
- *
62
- * The safe-area inset is folded in HERE, which is why anything accounting for
63
- * the bar in its own layout must go through `useTabBarFootprint` (which derives
64
- * its number from this same function) rather than adding `insets.bottom` to a
65
- * hardcoded height — that double-counts the inset.
66
- */
67
- export function tabBarBottomGap(bottomInset) {
68
- return Math.max(bottomInset - SAFE_AREA_ABSORBED, MIN_BOTTOM_GAP);
69
- }
70
-
71
50
  /**
72
51
  * Slide spring: interruptible by design — rapid tab-hopping retargets with
73
52
  * preserved velocity. Slight under-damping gives the pill a tiny settle, safe
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","withAlpha","useTheme","EXPANDED_HEIGHT","MINIMIZED_HEIGHT","MINIMIZED_INSET","BAR_MARGIN","ROW_PAD_H","LABEL_HEIGHT","ICON_SIZE","ITEM_GAP","LABEL_BLOCK","ITEM_PAD_V","HIGHLIGHT_EXPANDED","HIGHLIGHT_MINIMIZED","BLUR_BLEED","LABEL_FONT_SIZE","SAFE_AREA_ABSORBED","MIN_BOTTOM_GAP","tabBarBottomGap","bottomInset","Math","max","SLIDE_SPRING","duration","dampingRatio","HIGHLIGHT_FADE","LONG_PRESS_MIN_DURATION","resolveTabBarTheme","colors","overrides","activeTint","text","inactiveTint","textSecondary","highlight","contrast50","glassTint","background","solidFallback","backgroundSecondary","useTabBarTheme"],"sourceRoot":"../../../src","sources":["tab-bar/shared.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","withAlpha","useTheme","EXPANDED_HEIGHT","MINIMIZED_HEIGHT","MINIMIZED_INSET","BAR_MARGIN","ROW_PAD_H","LABEL_HEIGHT","ICON_SIZE","ITEM_GAP","LABEL_BLOCK","ITEM_PAD_V","HIGHLIGHT_EXPANDED","HIGHLIGHT_MINIMIZED","BLUR_BLEED","LABEL_FONT_SIZE","SLIDE_SPRING","duration","dampingRatio","HIGHLIGHT_FADE","LONG_PRESS_MIN_DURATION","resolveTabBarTheme","colors","overrides","activeTint","text","inactiveTint","textSecondary","highlight","contrast50","glassTint","background","solidFallback","backgroundSecondary","useTabBarTheme"],"sourceRoot":"../../../src","sources":["tab-bar/shared.ts"],"mappings":"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","ignoreList":[]}
@@ -14,7 +14,8 @@
14
14
  * is already a required Bloom peer and is what the bar itself measures with.
15
15
  */
16
16
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
17
- import { EXPANDED_HEIGHT, tabBarBottomGap } from "./shared.js";
17
+ import { windowEdgeGap } from "../layout/edge.js";
18
+ import { EXPANDED_HEIGHT } from "./shared.js";
18
19
 
19
20
  /**
20
21
  * The vertical space the tab bar OCCUPIES above the bottom of the window, in
@@ -31,15 +32,19 @@ import { EXPANDED_HEIGHT, tabBarBottomGap } from "./shared.js";
31
32
  * const footprint = useTabBarFootprint();
32
33
  *
33
34
  * <Animated.ScrollView contentContainerStyle={{ paddingBottom: footprint + 12 }} />
34
- * <Fab style={{ position: 'absolute', right: 16, bottom: footprint }} />
35
35
  * ```
36
36
  *
37
- * The value ALREADY INCLUDES the bottom safe-area inset — the bar folds the
38
- * inset into its own gap, so this is measured from the true window edge, not
39
- * from the safe area. Never write `footprint + insets.bottom`: that counts the
40
- * home indicator twice and strands a visible band of dead space under every
41
- * list (114px accounted for a 76px bar on an iOS device or PWA). Whatever you
42
- * add on top is your own clearance — never the inset a second time.
37
+ * A FAB no longer needs this hook at all `Fab` reads the bottom edge's
38
+ * occupancy itself (see `layout/bottom-edge`), which is what the bar publishes
39
+ * this exact number to. Reach for the hook when laying out something that is not
40
+ * a Bloom surface.
41
+ *
42
+ * The value ALREADY INCLUDES the bottom safe-area inset `windowEdgeGap` clears
43
+ * the OS's reserved band in full — so this is measured from the true window
44
+ * edge, not from the safe area. Never write `footprint + insets.bottom`: that
45
+ * counts the home indicator twice and strands a visible band of dead space under
46
+ * every list. Whatever you add on top is your own clearance, never the inset a
47
+ * second time.
43
48
  *
44
49
  * It is the EXPANDED height, deliberately. The bar minimizes while scrolling
45
50
  * down and re-expands on the way up, so measuring the minimized height would
@@ -47,6 +52,10 @@ import { EXPANDED_HEIGHT, tabBarBottomGap } from "./shared.js";
47
52
  */
48
53
  export function useTabBarFootprint() {
49
54
  const insets = useSafeAreaInsets();
50
- return tabBarBottomGap(insets.bottom) + EXPANDED_HEIGHT;
55
+ // Gap 0: the bar hugs the safe area, the tightest any Bloom surface floats. It
56
+ // is a compact pill, not a panel, and a detached-sheet-sized gap under it would
57
+ // strand it mid-screen. It used to ABSORB 16px of the inset and clamp at a 12px
58
+ // floor, which is how it ended up drawn through the Android gesture handle.
59
+ return windowEdgeGap(insets.bottom) + EXPANDED_HEIGHT;
51
60
  }
52
61
  //# sourceMappingURL=use-footprint.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useSafeAreaInsets","EXPANDED_HEIGHT","tabBarBottomGap","useTabBarFootprint","insets","bottom"],"sourceRoot":"../../../src","sources":["tab-bar/use-footprint.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,iBAAiB,QAAQ,gCAAgC;AAElE,SAASC,eAAe,EAAEC,eAAe,QAAQ,aAAU;;AAE3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAW;EAC3C,MAAMC,MAAM,GAAGJ,iBAAiB,CAAC,CAAC;EAClC,OAAOE,eAAe,CAACE,MAAM,CAACC,MAAM,CAAC,GAAGJ,eAAe;AACzD","ignoreList":[]}
1
+ {"version":3,"names":["useSafeAreaInsets","windowEdgeGap","EXPANDED_HEIGHT","useTabBarFootprint","insets","bottom"],"sourceRoot":"../../../src","sources":["tab-bar/use-footprint.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,iBAAiB,QAAQ,gCAAgC;AAElE,SAASC,aAAa,QAAQ,mBAAgB;AAC9C,SAASC,eAAe,QAAQ,aAAU;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAW;EAC3C,MAAMC,MAAM,GAAGJ,iBAAiB,CAAC,CAAC;EAClC;EACA;EACA;EACA;EACA,OAAOC,aAAa,CAACG,MAAM,CAACC,MAAM,CAAC,GAAGH,eAAe;AACvD","ignoreList":[]}
@@ -17,13 +17,21 @@ function buildWebScopeVars(colorPreset, mode) {
17
17
  }
18
18
 
19
19
  /**
20
- * On web, the single `asChild` child is frequently a react-native-web
21
- * component (e.g. RN `<View>`) whose `style` prop is a *style array* (or a
22
- * numeric registered-style id), not a plain `React.CSSProperties` object.
23
- * react-native-web flattens nested style arrays, so the cloned child must
24
- * receive an array spreading an array into an object literal would copy its
25
- * numeric indices as keys and crash RNW when it commits them to the DOM
26
- * (`Failed to set an indexed property [0] on 'CSSStyleDeclaration'`).
20
+ * On web, the single `asChild` child can be either kind of element, and the two
21
+ * kinds want different `style` shapes:
22
+ *
23
+ * - A react-native-web component (RN `<View>`, `<Pressable>`) may already
24
+ * carry a style ARRAY or a numeric registered-style id. Spreading that into
25
+ * an object literal copies its numeric indices as keys, and RNW then commits
26
+ * `0`, `1`, to the DOM. RNW flattens arrays, so it gets an array.
27
+ * - Anything that ends on a DOM element — an `<a>`, a router `<Link>`, any
28
+ * component that forwards `style` to its host node — hands the prop straight
29
+ * to React DOM, which walks the own keys of whatever it is given. An array
30
+ * there throws `Failed to set an indexed property [0] on
31
+ * 'CSSStyleDeclaration'` during commit, blanking the tree.
32
+ *
33
+ * So the array form is used only when the child's own style is already
34
+ * RN-shaped; every other child gets a plain object, which both runtimes accept.
27
35
  */
28
36
 
29
37
  export function BloomColorScope({
@@ -64,13 +72,17 @@ export function BloomColorScope({
64
72
  if (! /*#__PURE__*/isValidElement(child)) {
65
73
  throw new Error('BloomColorScope with `asChild` requires a single React element child that accepts a `style` prop.');
66
74
  }
67
- // Merge as a style ARRAY (the RNW-safe form): scope vars first, then the
68
- // caller's `style`, then the child's own `style` last so its explicit
69
- // styles win. react-native-web flattens nested arrays correctly; spreading
70
- // the child's style (which is often an RN style array or numeric id) into an
71
- // object literal would copy numeric indices as keys and crash RNW.
75
+ // Scope vars first, then the caller's `style`, then the child's own so its
76
+ // explicit styles win. The shape follows the child: an array only when the
77
+ // child's style is already RN-shaped (see the note above), an object
78
+ // otherwise an array reaching a DOM node throws on commit.
72
79
  const childStyle = child.props.style;
73
- const mergedStyle = [varsStyle, style, childStyle];
80
+ const childIsRnStyled = Array.isArray(childStyle) || typeof childStyle === 'number';
81
+ const mergedStyle = childIsRnStyled ? [varsStyle, style, childStyle] : {
82
+ ...varsStyle,
83
+ ...style,
84
+ ...(childStyle || undefined)
85
+ };
74
86
  content = /*#__PURE__*/cloneElement(child, {
75
87
  style: mergedStyle
76
88
  });
@@ -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","mergedStyle","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","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":[]}
@@ -24,6 +24,7 @@
24
24
  import * as React from 'react';
25
25
  import { Platform, Pressable, View } from 'react-native';
26
26
  import { SafeAreaInsetsContext, initialWindowMetrics } from 'react-native-safe-area-context';
27
+ import { useBottomEdgeInset } from "../layout/bottom-edge.js";
27
28
  import { useDynamicToastContext, useToastContext } from "./context.js";
28
29
  import { calculateOutsidePressableArea, getContainerStyle, getInsetValues } from "./container-geometry.js";
29
30
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
@@ -66,13 +67,17 @@ export const Positioner = ({
66
67
  } = useDynamicToastContext();
67
68
  const insets = React.useContext(SafeAreaInsetsContext) ?? FALLBACK_INSETS;
68
69
  const resolvedPosition = position ?? 'bottom-center';
70
+ // Whatever already owns the bottom edge — a floating tab bar, typically. The
71
+ // stack stacks above it instead of on it.
72
+ const bottomEdgeInset = useBottomEdgeInset();
69
73
  const insetValues = getInsetValues({
70
74
  position: resolvedPosition,
71
75
  offset,
72
76
  safeAreaInsets: {
73
77
  top: insets.top,
74
78
  bottom: insets.bottom
75
- }
79
+ },
80
+ bottomEdgeInset
76
81
  });
77
82
  const handleOutsidePress = React.useCallback(() => {
78
83
  if (isExpanded) {
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","Pressable","View","SafeAreaInsetsContext","initialWindowMetrics","useDynamicToastContext","useToastContext","calculateOutsidePressableArea","getContainerStyle","getInsetValues","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","FALLBACK_INSETS","insets","top","bottom","left","right","ANDROID_ELEVATION","androidElevationStyle","OS","elevation","Positioner","children","position","style","offset","gap","visibleToasts","isExpanded","collapse","toastHeights","useContext","resolvedPosition","insetValues","safeAreaInsets","handleOutsidePress","useCallback","shouldAllowCollapse","hasChildren","Children","count","onPress","pointerEvents","displayName"],"sourceRoot":"../../../src","sources":["toast/Positioner.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Platform","Pressable","View","SafeAreaInsetsContext","initialWindowMetrics","useBottomEdgeInset","useDynamicToastContext","useToastContext","calculateOutsidePressableArea","getContainerStyle","getInsetValues","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","FALLBACK_INSETS","insets","top","bottom","left","right","ANDROID_ELEVATION","androidElevationStyle","OS","elevation","Positioner","children","position","style","offset","gap","visibleToasts","isExpanded","collapse","toastHeights","useContext","resolvedPosition","bottomEdgeInset","insetValues","safeAreaInsets","handleOutsidePress","useCallback","shouldAllowCollapse","hasChildren","Children","count","onPress","pointerEvents","displayName"],"sourceRoot":"../../../src","sources":["toast/Positioner.tsx"],"mappings":"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","ignoreList":[]}