@butternutbox/pawprint-native 0.10.8 → 0.10.10

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.
@@ -7,12 +7,12 @@
7
7
  CJS Build start
8
8
  ESM Build start
9
9
  DTS Build start
10
- ESM dist/index.js 1.73 MB
10
+ ESM dist/index.js 1.72 MB
11
11
  ESM dist/index.js.map 2.70 MB
12
- ESM ⚡️ Build success in 11777ms
12
+ ESM ⚡️ Build success in 11267ms
13
13
  CJS dist/index.cjs 1.80 MB
14
14
  CJS dist/index.cjs.map 2.70 MB
15
- CJS ⚡️ Build success in 11782ms
16
- DTS ⚡️ Build success in 23549ms
15
+ CJS ⚡️ Build success in 11267ms
16
+ DTS ⚡️ Build success in 22659ms
17
17
  DTS dist/index.d.cts 91.44 KB
18
18
  DTS dist/index.d.ts 91.44 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,49 @@
1
1
  # @butternutbox/pawprint-native
2
2
 
3
+ ## 0.10.10
4
+
5
+ ### Patch Changes
6
+
7
+ - 8d9523c: Drawer: fix the body collapsing to zero height on native (regression in 0.10.9).
8
+
9
+ 0.10.9 made the panel wrap its content with no explicit height, relying on
10
+ `DrawerBody`'s `maxHeight` to size the `flex: 1` ScrollView. On native a
11
+ `ScrollView` has no intrinsic size and `flex: 1` (flexBasis 0) needs a
12
+ definite-height parent, so every drawer body collapsed to ~0 — only the header
13
+ and footer rendered. (It looked correct in the react-native-web Storybook, whose
14
+ flexbox sizes to content, which is why it slipped through.)
15
+
16
+ The panel now keeps an explicit height again (the pre-0.10.9 structure that
17
+ gives the ScrollView a bounded parent) AND re-fits it: `DrawerBody` reports its
18
+ natural scroll-content height via `onContentSizeChange` (measured in the
19
+ ScrollView's unbounded content container, so it's independent of the frame — no
20
+ feedback loop) through a new `DrawerMeasureContext`, and `DrawerContent` sizes
21
+ the panel to `chrome + min(content, windowHeight - 300)`, capped at 90% of the
22
+ window. `chrome` is locked once from the first, unbounded layout and is
23
+ invariant thereafter. Content that grows or shrinks after open (async load,
24
+ expanding sections) re-fits the panel; tall content caps and scrolls.
25
+
26
+ ## 0.10.9
27
+
28
+ ### Patch Changes
29
+
30
+ - 825e9bb: Drawer: fix the content-driven height re-fit so tall drawers no longer clip or
31
+ lose the ability to scroll (regression in 0.10.8).
32
+
33
+ The 0.10.8 implementation derived the panel height from the body content
34
+ measured _inside_ the height-constrained `ScrollView` and fed it back to size
35
+ the panel. For any drawer whose content height depends on the available height,
36
+ that coupling sized the panel too short and collapsed the scroll region, so tall
37
+ drawers clipped their content and could not scroll to the end.
38
+
39
+ The re-fit is now purely layout-driven: the panel wraps its content and caps at
40
+ 90% of the window height, while `DrawerBody` keeps its own `maxHeight` to bound
41
+ scrolling (and prevent the `ScrollView` from collapsing). When the body grows or
42
+ shrinks after open — async loading, expanding sections — the panel re-fits
43
+ itself through normal layout with no measurement feedback loop. Removes the
44
+ `DrawerMeasureContext` plumbing and adds a `DynamicContent` story as a
45
+ regression guard.
46
+
3
47
  ## 0.10.8
4
48
 
5
49
  ### Patch Changes