@oxy.so/bloom 7.1.5 → 7.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/adoption-matrix.mdx +18 -17
- package/docs/app-shell.mdx +48 -2
- package/docs/appearance.mdx +16 -1
- package/docs/chip.mdx +5 -0
- package/docs/content-panel.mdx +9 -0
- package/docs/error-boundary.mdx +35 -0
- package/docs/mail-thread.mdx +8 -0
- package/docs/page-footer.mdx +60 -0
- package/docs/settings-modal.mdx +5 -0
- package/docs/sidebar.mdx +1 -1
- package/lib/commonjs/app-shell/AppShell.js +3 -2
- package/lib/commonjs/app-shell/AppShell.js.map +1 -1
- package/lib/commonjs/app-shell/AppShellBars.js +8 -5
- package/lib/commonjs/app-shell/AppShellBars.js.map +1 -1
- package/lib/commonjs/app-shell/AppShellEngine.js +81 -36
- package/lib/commonjs/app-shell/AppShellEngine.js.map +1 -1
- package/lib/commonjs/app-shell/AppShellSplit.js +26 -14
- package/lib/commonjs/app-shell/AppShellSplit.js.map +1 -1
- package/lib/commonjs/appearance/BloomScope.js +8 -3
- package/lib/commonjs/appearance/BloomScope.js.map +1 -1
- package/lib/commonjs/appearance/context.js.map +1 -1
- package/lib/commonjs/chip/Chip.js +51 -7
- package/lib/commonjs/chip/Chip.js.map +1 -1
- package/lib/commonjs/content-panel/ContentPanel.js +40 -24
- package/lib/commonjs/content-panel/ContentPanel.js.map +1 -1
- package/lib/commonjs/content-panel/ContentPanel.web.js +45 -18
- package/lib/commonjs/content-panel/ContentPanel.web.js.map +1 -1
- package/lib/commonjs/design-tokens/shapes.js +2 -2
- package/lib/commonjs/design-tokens/shapes.js.map +1 -1
- package/lib/commonjs/design-tokens/tokens.json +2 -2
- package/lib/commonjs/error-boundary/ErrorBoundary.js +10 -0
- package/lib/commonjs/error-boundary/ErrorBoundary.js.map +1 -1
- package/lib/commonjs/error-boundary/PanelErrorBoundary.js +64 -0
- package/lib/commonjs/error-boundary/PanelErrorBoundary.js.map +1 -0
- package/lib/commonjs/error-boundary/index.js +7 -0
- package/lib/commonjs/error-boundary/index.js.map +1 -1
- package/lib/commonjs/index.js +946 -927
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +946 -927
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/mail-thread/MailMessage.js +8 -14
- package/lib/commonjs/mail-thread/MailMessage.js.map +1 -1
- package/lib/commonjs/mail-thread/MailThread.js +6 -2
- package/lib/commonjs/mail-thread/MailThread.js.map +1 -1
- package/lib/commonjs/mail-thread/shared.js +2 -1
- package/lib/commonjs/mail-thread/shared.js.map +1 -1
- package/lib/commonjs/page-footer/PageFooter.js +137 -0
- package/lib/commonjs/page-footer/PageFooter.js.map +1 -0
- package/lib/commonjs/page-footer/PageFooterProvider.js +22 -0
- package/lib/commonjs/page-footer/PageFooterProvider.js.map +1 -0
- package/lib/commonjs/page-footer/context.js +11 -0
- package/lib/commonjs/page-footer/context.js.map +1 -0
- package/lib/commonjs/page-footer/index.js +27 -0
- package/lib/commonjs/page-footer/index.js.map +1 -0
- package/lib/commonjs/page-footer/types.js +6 -0
- package/lib/commonjs/page-footer/types.js.map +1 -0
- package/lib/commonjs/page-footer/use-page-footer-inset.js +19 -0
- package/lib/commonjs/page-footer/use-page-footer-inset.js.map +1 -0
- package/lib/commonjs/settings-modal/SettingsPlanCard.js +11 -7
- package/lib/commonjs/settings-modal/SettingsPlanCard.js.map +1 -1
- package/lib/commonjs/sidebar/Sidebar.js +6 -5
- package/lib/commonjs/sidebar/Sidebar.js.map +1 -1
- package/lib/commonjs/styles/panel-chrome.js +15 -1
- package/lib/commonjs/styles/panel-chrome.js.map +1 -1
- package/lib/module/app-shell/AppShell.js +3 -2
- package/lib/module/app-shell/AppShell.js.map +1 -1
- package/lib/module/app-shell/AppShellBars.js +8 -5
- package/lib/module/app-shell/AppShellBars.js.map +1 -1
- package/lib/module/app-shell/AppShellEngine.js +81 -36
- package/lib/module/app-shell/AppShellEngine.js.map +1 -1
- package/lib/module/app-shell/AppShellSplit.js +26 -14
- package/lib/module/app-shell/AppShellSplit.js.map +1 -1
- package/lib/module/appearance/BloomScope.js +8 -3
- package/lib/module/appearance/BloomScope.js.map +1 -1
- package/lib/module/appearance/context.js.map +1 -1
- package/lib/module/chip/Chip.js +51 -7
- package/lib/module/chip/Chip.js.map +1 -1
- package/lib/module/content-panel/ContentPanel.js +41 -25
- package/lib/module/content-panel/ContentPanel.js.map +1 -1
- package/lib/module/content-panel/ContentPanel.web.js +47 -20
- package/lib/module/content-panel/ContentPanel.web.js.map +1 -1
- package/lib/module/design-tokens/shapes.js +2 -2
- package/lib/module/design-tokens/shapes.js.map +1 -1
- package/lib/module/design-tokens/tokens.json +2 -2
- package/lib/module/error-boundary/ErrorBoundary.js +10 -0
- package/lib/module/error-boundary/ErrorBoundary.js.map +1 -1
- package/lib/module/error-boundary/PanelErrorBoundary.js +59 -0
- package/lib/module/error-boundary/PanelErrorBoundary.js.map +1 -0
- package/lib/module/error-boundary/index.js +1 -0
- package/lib/module/error-boundary/index.js.map +1 -1
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +2 -1
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/mail-thread/MailMessage.js +8 -14
- package/lib/module/mail-thread/MailMessage.js.map +1 -1
- package/lib/module/mail-thread/MailThread.js +6 -2
- package/lib/module/mail-thread/MailThread.js.map +1 -1
- package/lib/module/mail-thread/shared.js +2 -1
- package/lib/module/mail-thread/shared.js.map +1 -1
- package/lib/module/page-footer/PageFooter.js +132 -0
- package/lib/module/page-footer/PageFooter.js.map +1 -0
- package/lib/module/page-footer/PageFooterProvider.js +18 -0
- package/lib/module/page-footer/PageFooterProvider.js.map +1 -0
- package/lib/module/page-footer/context.js +7 -0
- package/lib/module/page-footer/context.js.map +1 -0
- package/lib/module/page-footer/index.js +6 -0
- package/lib/module/page-footer/index.js.map +1 -0
- package/lib/module/page-footer/types.js +4 -0
- package/lib/module/page-footer/types.js.map +1 -0
- package/lib/module/page-footer/use-page-footer-inset.js +16 -0
- package/lib/module/page-footer/use-page-footer-inset.js.map +1 -0
- package/lib/module/settings-modal/SettingsPlanCard.js +7 -3
- package/lib/module/settings-modal/SettingsPlanCard.js.map +1 -1
- package/lib/module/sidebar/Sidebar.js +6 -5
- package/lib/module/sidebar/Sidebar.js.map +1 -1
- package/lib/module/styles/panel-chrome.js +14 -1
- package/lib/module/styles/panel-chrome.js.map +1 -1
- package/lib/typescript/commonjs/app-shell/AppShellBars.d.ts +4 -0
- package/lib/typescript/commonjs/app-shell/AppShellBars.d.ts.map +1 -1
- package/lib/typescript/commonjs/app-shell/AppShellEngine.d.ts.map +1 -1
- package/lib/typescript/commonjs/app-shell/AppShellSplit.d.ts.map +1 -1
- package/lib/typescript/commonjs/app-shell/types.d.ts +16 -3
- package/lib/typescript/commonjs/app-shell/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/appearance/BloomScope.d.ts +1 -1
- package/lib/typescript/commonjs/appearance/BloomScope.d.ts.map +1 -1
- package/lib/typescript/commonjs/appearance/context.d.ts +2 -2
- package/lib/typescript/commonjs/appearance/context.d.ts.map +1 -1
- package/lib/typescript/commonjs/appearance/types.d.ts +4 -1
- package/lib/typescript/commonjs/appearance/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/chip/Chip.d.ts.map +1 -1
- package/lib/typescript/commonjs/content-panel/ContentPanel.d.ts +3 -4
- package/lib/typescript/commonjs/content-panel/ContentPanel.d.ts.map +1 -1
- package/lib/typescript/commonjs/content-panel/ContentPanel.web.d.ts +1 -1
- package/lib/typescript/commonjs/content-panel/ContentPanel.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/content-panel/types.d.ts +5 -2
- package/lib/typescript/commonjs/content-panel/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/design-tokens/shapes.d.ts +2 -2
- package/lib/typescript/commonjs/error-boundary/ErrorBoundary.d.ts +1 -0
- package/lib/typescript/commonjs/error-boundary/ErrorBoundary.d.ts.map +1 -1
- package/lib/typescript/commonjs/error-boundary/PanelErrorBoundary.d.ts +4 -0
- package/lib/typescript/commonjs/error-boundary/PanelErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/commonjs/error-boundary/index.d.ts +2 -1
- package/lib/typescript/commonjs/error-boundary/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/error-boundary/types.d.ts +16 -0
- package/lib/typescript/commonjs/error-boundary/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +3 -2
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.web.d.ts +3 -2
- package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/mail-thread/MailMessage.d.ts.map +1 -1
- package/lib/typescript/commonjs/mail-thread/MailThread.d.ts +1 -1
- package/lib/typescript/commonjs/mail-thread/MailThread.d.ts.map +1 -1
- package/lib/typescript/commonjs/mail-thread/shared.d.ts +1 -1
- package/lib/typescript/commonjs/mail-thread/shared.d.ts.map +1 -1
- package/lib/typescript/commonjs/mail-thread/types.d.ts +2 -0
- package/lib/typescript/commonjs/mail-thread/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/page-footer/PageFooter.d.ts +7 -0
- package/lib/typescript/commonjs/page-footer/PageFooter.d.ts.map +1 -0
- package/lib/typescript/commonjs/page-footer/PageFooterProvider.d.ts +4 -0
- package/lib/typescript/commonjs/page-footer/PageFooterProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/page-footer/context.d.ts +3 -0
- package/lib/typescript/commonjs/page-footer/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/page-footer/index.d.ts +5 -0
- package/lib/typescript/commonjs/page-footer/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/page-footer/types.d.ts +26 -0
- package/lib/typescript/commonjs/page-footer/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/page-footer/use-page-footer-inset.d.ts +7 -0
- package/lib/typescript/commonjs/page-footer/use-page-footer-inset.d.ts.map +1 -0
- package/lib/typescript/commonjs/settings-modal/SettingsPlanCard.d.ts.map +1 -1
- package/lib/typescript/commonjs/settings-modal/types.d.ts +3 -0
- package/lib/typescript/commonjs/settings-modal/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/Sidebar.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/types.d.ts +1 -1
- package/lib/typescript/commonjs/styles/panel-chrome.d.ts +5 -0
- package/lib/typescript/commonjs/styles/panel-chrome.d.ts.map +1 -1
- package/lib/typescript/module/app-shell/AppShellBars.d.ts +4 -0
- package/lib/typescript/module/app-shell/AppShellBars.d.ts.map +1 -1
- package/lib/typescript/module/app-shell/AppShellEngine.d.ts.map +1 -1
- package/lib/typescript/module/app-shell/AppShellSplit.d.ts.map +1 -1
- package/lib/typescript/module/app-shell/types.d.ts +16 -3
- package/lib/typescript/module/app-shell/types.d.ts.map +1 -1
- package/lib/typescript/module/appearance/BloomScope.d.ts +1 -1
- package/lib/typescript/module/appearance/BloomScope.d.ts.map +1 -1
- package/lib/typescript/module/appearance/context.d.ts +2 -2
- package/lib/typescript/module/appearance/context.d.ts.map +1 -1
- package/lib/typescript/module/appearance/types.d.ts +4 -1
- package/lib/typescript/module/appearance/types.d.ts.map +1 -1
- package/lib/typescript/module/chip/Chip.d.ts.map +1 -1
- package/lib/typescript/module/content-panel/ContentPanel.d.ts +3 -4
- package/lib/typescript/module/content-panel/ContentPanel.d.ts.map +1 -1
- package/lib/typescript/module/content-panel/ContentPanel.web.d.ts +1 -1
- package/lib/typescript/module/content-panel/ContentPanel.web.d.ts.map +1 -1
- package/lib/typescript/module/content-panel/types.d.ts +5 -2
- package/lib/typescript/module/content-panel/types.d.ts.map +1 -1
- package/lib/typescript/module/design-tokens/shapes.d.ts +2 -2
- package/lib/typescript/module/error-boundary/ErrorBoundary.d.ts +1 -0
- package/lib/typescript/module/error-boundary/ErrorBoundary.d.ts.map +1 -1
- package/lib/typescript/module/error-boundary/PanelErrorBoundary.d.ts +4 -0
- package/lib/typescript/module/error-boundary/PanelErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/module/error-boundary/index.d.ts +2 -1
- package/lib/typescript/module/error-boundary/index.d.ts.map +1 -1
- package/lib/typescript/module/error-boundary/types.d.ts +16 -0
- package/lib/typescript/module/error-boundary/types.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +3 -2
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/index.web.d.ts +3 -2
- package/lib/typescript/module/index.web.d.ts.map +1 -1
- package/lib/typescript/module/mail-thread/MailMessage.d.ts.map +1 -1
- package/lib/typescript/module/mail-thread/MailThread.d.ts +1 -1
- package/lib/typescript/module/mail-thread/MailThread.d.ts.map +1 -1
- package/lib/typescript/module/mail-thread/shared.d.ts +1 -1
- package/lib/typescript/module/mail-thread/shared.d.ts.map +1 -1
- package/lib/typescript/module/mail-thread/types.d.ts +2 -0
- package/lib/typescript/module/mail-thread/types.d.ts.map +1 -1
- package/lib/typescript/module/page-footer/PageFooter.d.ts +7 -0
- package/lib/typescript/module/page-footer/PageFooter.d.ts.map +1 -0
- package/lib/typescript/module/page-footer/PageFooterProvider.d.ts +4 -0
- package/lib/typescript/module/page-footer/PageFooterProvider.d.ts.map +1 -0
- package/lib/typescript/module/page-footer/context.d.ts +3 -0
- package/lib/typescript/module/page-footer/context.d.ts.map +1 -0
- package/lib/typescript/module/page-footer/index.d.ts +5 -0
- package/lib/typescript/module/page-footer/index.d.ts.map +1 -0
- package/lib/typescript/module/page-footer/types.d.ts +26 -0
- package/lib/typescript/module/page-footer/types.d.ts.map +1 -0
- package/lib/typescript/module/page-footer/use-page-footer-inset.d.ts +7 -0
- package/lib/typescript/module/page-footer/use-page-footer-inset.d.ts.map +1 -0
- package/lib/typescript/module/settings-modal/SettingsPlanCard.d.ts.map +1 -1
- package/lib/typescript/module/settings-modal/types.d.ts +3 -0
- package/lib/typescript/module/settings-modal/types.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/Sidebar.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/types.d.ts +1 -1
- package/lib/typescript/module/styles/panel-chrome.d.ts +5 -0
- package/lib/typescript/module/styles/panel-chrome.d.ts.map +1 -1
- package/package.json +18 -1
- package/src/__tests__/support/adoption-matrix.ts +683 -0
- package/src/__tests__/support/card-surface.ts +25 -0
- package/src/__tests__/support/collision-fixture-barrel.ts +20 -0
- package/src/__tests__/support/commerce-harness.tsx +97 -0
- package/src/__tests__/support/composite.ts +68 -0
- package/src/__tests__/support/constructed-style-sheets.ts +68 -0
- package/src/__tests__/support/messages-in.ts +10 -0
- package/src/__tests__/support/press-host.ts +30 -0
- package/src/__tests__/support/rendered-style.ts +99 -0
- package/src/__tests__/support/unread-hook-fixture.ts +33 -0
- package/src/__tests__/support/worklet-capture-fixture.tsx +28 -0
- package/src/agent-avatar/__tests__/artwork-golden.json +774 -0
- package/src/agent-creator/__tests__/support/character-runtime-fixture.tsx +26 -0
- package/src/app-shell/AppShell.tsx +2 -2
- package/src/app-shell/AppShellBars.tsx +6 -4
- package/src/app-shell/AppShellEngine.tsx +51 -18
- package/src/app-shell/AppShellSplit.tsx +16 -7
- package/src/app-shell/types.ts +16 -3
- package/src/appearance/BloomScope.tsx +5 -2
- package/src/appearance/context.ts +2 -2
- package/src/appearance/types.ts +4 -1
- package/src/chip/Chip.tsx +26 -5
- package/src/content-panel/ContentPanel.tsx +35 -26
- package/src/content-panel/ContentPanel.web.tsx +35 -24
- package/src/content-panel/types.ts +5 -2
- package/src/design-tokens/shapes.ts +1 -1
- package/src/design-tokens/tokens.json +2 -2
- package/src/error-boundary/ErrorBoundary.tsx +6 -0
- package/src/error-boundary/PanelErrorBoundary.tsx +38 -0
- package/src/error-boundary/index.ts +3 -0
- package/src/error-boundary/types.ts +18 -0
- package/src/index.ts +4 -1
- package/src/index.web.ts +4 -1
- package/src/mail-thread/MailMessage.tsx +9 -11
- package/src/mail-thread/MailThread.tsx +3 -1
- package/src/mail-thread/shared.ts +2 -1
- package/src/mail-thread/types.ts +2 -0
- package/src/page-footer/PageFooter.tsx +96 -0
- package/src/page-footer/PageFooterProvider.tsx +9 -0
- package/src/page-footer/context.ts +6 -0
- package/src/page-footer/index.ts +4 -0
- package/src/page-footer/types.ts +26 -0
- package/src/page-footer/use-page-footer-inset.ts +17 -0
- package/src/settings-modal/SettingsPlanCard.tsx +2 -0
- package/src/settings-modal/types.ts +3 -0
- package/src/sidebar/Sidebar.tsx +5 -4
- package/src/sidebar/types.ts +1 -1
- package/src/styles/panel-chrome.ts +9 -1
- package/src/theme/__tests__/__fixtures__/golden-resolved-tokens.json +9346 -0
- package/src/theme/__tests__/__fixtures__/tonal-glass-primary-failures.json +69 -0
- package/src/theme/__tests__/fixtures/color-engine-golden.json +1 -0
package/docs/adoption-matrix.mdx
CHANGED
|
@@ -32,13 +32,13 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
32
32
|
|
|
33
33
|
## Totals
|
|
34
34
|
|
|
35
|
-
- **
|
|
35
|
+
- **212 families** in `src/`, **210** published (a subpath, the root barrel, or both). **44** carry a web fork.
|
|
36
36
|
- Docs, stories and suites are gated as a standard by `src/__tests__/family-coverage.test.ts`; the per-family counts are in the table below.
|
|
37
37
|
|
|
38
38
|
| contract | applies to | reads | delegated | n/a¹ | adaptation |
|
|
39
39
|
| --- | --- | --- | --- | --- | --- |
|
|
40
40
|
| Field membership | 48 | 22 | 0 | 21 | 5 |
|
|
41
|
-
| Control presentation |
|
|
41
|
+
| Control presentation | 43 | 40 | 1 | 2 | 0 |
|
|
42
42
|
| Trigger composition | 10 | 8 | 0 | 2 | 0 |
|
|
43
43
|
| Controlled / uncontrolled state | 53 | 44 | 1 | 1 | 7 |
|
|
44
44
|
|
|
@@ -125,8 +125,8 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
125
125
|
| `alert-dialog` | `@oxy.so/bloom/alert-dialog` + barrel | web fork | `alert-dialog.mdx` | yes | 2 | | | | |
|
|
126
126
|
| `animated-check` | `@oxy.so/bloom/animated-check` + barrel | universal | `animated-check.mdx` | yes | 2 | | | | |
|
|
127
127
|
| `announcement` | `@oxy.so/bloom/announcement` + barrel | universal | `announcement.mdx` | yes | 2 | | | | |
|
|
128
|
-
| `app-shell` | `@oxy.so/bloom/app-shell` + barrel | web fork | `app-shell.mdx` | yes |
|
|
129
|
-
| `appearance` | `@oxy.so/bloom/appearance` + barrel | universal | `composition.mdx` | yes |
|
|
128
|
+
| `app-shell` | `@oxy.so/bloom/app-shell` + barrel | web fork | `app-shell.mdx` | yes | 7 | | | | reads |
|
|
129
|
+
| `appearance` | `@oxy.so/bloom/appearance` + barrel | universal | `composition.mdx` | yes | 11 | | reads | | |
|
|
130
130
|
| `aspect-ratio` | `@oxy.so/bloom/aspect-ratio` + barrel | universal | `aspect-ratio.mdx` | yes | 1 | | | | |
|
|
131
131
|
| `auth-card` | `@oxy.so/bloom/auth-card` + barrel | universal | `auth-card.mdx` | yes | 2 | | | | |
|
|
132
132
|
| `avatar` | `@oxy.so/bloom/avatar` + barrel | universal | `avatar.mdx` | yes | 7 | | reads | | |
|
|
@@ -136,7 +136,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
136
136
|
| `bottom-bar` | `@oxy.so/bloom/bottom-bar` + barrel | web fork | `bottom-bar.mdx` | yes | 2 | | | | |
|
|
137
137
|
| `bottom-sheet` | `@oxy.so/bloom/bottom-sheet` + barrel | web fork | `bottom-sheet.mdx` | yes | 8 | | | | |
|
|
138
138
|
| `breadcrumb` | `@oxy.so/bloom/breadcrumb` + barrel | universal | `breadcrumb.mdx` | yes | 2 | | | | |
|
|
139
|
-
| `button` | `@oxy.so/bloom/button` + barrel | web fork | `button.mdx` | yes |
|
|
139
|
+
| `button` | `@oxy.so/bloom/button` + barrel | web fork | `button.mdx` | yes | 41 | | reads | n/a¹ | |
|
|
140
140
|
| `button-group` | `@oxy.so/bloom/button-group` + barrel | web fork | `button-group.mdx` | yes | 8 | | reads | | |
|
|
141
141
|
| `calendar` | `@oxy.so/bloom/calendar` + barrel | universal | `calendar.mdx` | yes | 3 | | | | reads |
|
|
142
142
|
| `call-ui` | `@oxy.so/bloom/call-ui` + barrel | universal | `call-ui.mdx` | yes | 2 | | reads | | |
|
|
@@ -154,7 +154,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
154
154
|
| `chat-screen` | `@oxy.so/bloom/chat-screen` + barrel | universal | `chat-screen.mdx` | yes | 3 | | reads | | reads |
|
|
155
155
|
| `checkbox` | `@oxy.so/bloom/checkbox` + barrel | universal | `checkbox.mdx` | yes | 5 | reads | reads | | reads |
|
|
156
156
|
| `checkout-summary` | `@oxy.so/bloom/checkout-summary` + barrel | universal | `checkout-summary.mdx` | yes | 2 | | | | |
|
|
157
|
-
| `chip` | `@oxy.so/bloom/chip` + barrel | universal | `chip.mdx` | yes |
|
|
157
|
+
| `chip` | `@oxy.so/bloom/chip` + barrel | universal | `chip.mdx` | yes | 7 | | reads | | |
|
|
158
158
|
| `code` | `@oxy.so/bloom/code` + barrel | universal | `code.mdx` | yes | 4 | | | | |
|
|
159
159
|
| `command` | `@oxy.so/bloom/command` + barrel | web fork | `command.mdx` | yes | 2 | n/a¹ | | | reads |
|
|
160
160
|
| `composer-loader` | `@oxy.so/bloom/composer-loader` + barrel | web fork | `composer-loader.mdx` | yes | 1 | | | | |
|
|
@@ -163,7 +163,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
163
163
|
| `connection-dots` | `@oxy.so/bloom/connection-dots` + barrel | web fork | `connection-dots.mdx` | yes | 2 | | | | |
|
|
164
164
|
| `connection-status` | `@oxy.so/bloom/connection-status` + barrel | web fork | `connection-status.mdx` | yes | 1 | | | | |
|
|
165
165
|
| `contact-card` | `@oxy.so/bloom/contact-card` + barrel | universal | `contact-card.mdx` | yes | 2 | | | | |
|
|
166
|
-
| `content-panel` | `@oxy.so/bloom/content-panel` + barrel | web fork | `content-panel.mdx` | yes |
|
|
166
|
+
| `content-panel` | `@oxy.so/bloom/content-panel` + barrel | web fork | `content-panel.mdx` | yes | 10 | | | | |
|
|
167
167
|
| `context-menu` | `@oxy.so/bloom/context-menu` + barrel | web fork | `context-menu.mdx` | yes | 6 | | | reads | |
|
|
168
168
|
| `cover-header` | `@oxy.so/bloom/cover-header` + barrel | universal | `cover-header.mdx` | yes | 1 | | | | |
|
|
169
169
|
| `creator-studio` | `@oxy.so/bloom/creator-studio` + barrel | universal | `creator-studio.mdx` | yes | 4 | | n/a¹ | | **adaptation** |
|
|
@@ -177,7 +177,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
177
177
|
| `dropdown-menu` | `@oxy.so/bloom/dropdown-menu` + barrel | web fork | `dropdown-menu.mdx` | yes | 5 | | | reads | reads |
|
|
178
178
|
| `earnings` | `@oxy.so/bloom/earnings` + barrel | universal | `earnings.mdx` | yes | 2 | | | | reads |
|
|
179
179
|
| `empty-state` | `@oxy.so/bloom/empty-state` + barrel | universal | `empty-state.mdx` | yes | 1 | | | | |
|
|
180
|
-
| `error-boundary` | `@oxy.so/bloom/error-boundary` + barrel | universal | `error-boundary.mdx` | yes |
|
|
180
|
+
| `error-boundary` | `@oxy.so/bloom/error-boundary` + barrel | universal | `error-boundary.mdx` | yes | 3 | | | | |
|
|
181
181
|
| `eviction` | `@oxy.so/bloom/eviction` + barrel | universal | `eviction.mdx` | yes | 2 | | | | |
|
|
182
182
|
| `fab` | `@oxy.so/bloom/fab` + barrel | web fork | `fab.mdx` | yes | 4 | | reads | | |
|
|
183
183
|
| `field` | `@oxy.so/bloom/field` + barrel | universal | `field.mdx` | yes | 14 | reads | | | |
|
|
@@ -192,7 +192,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
192
192
|
| `hooks` | `@oxy.so/bloom/hooks` + barrel | universal | `hooks.mdx` | yes | 12 | | | | reads |
|
|
193
193
|
| `hover-card` | `@oxy.so/bloom/hover-card` + barrel | web fork | `hover-card.mdx` | yes | 4 | | | reads | reads |
|
|
194
194
|
| `icon-circle` | `@oxy.so/bloom/icon-circle` + barrel | universal | `icon-circle.mdx` | yes | 1 | | | | |
|
|
195
|
-
| `icons` | `@oxy.so/bloom/icons` + barrel | universal | `icons.mdx` | yes |
|
|
195
|
+
| `icons` | `@oxy.so/bloom/icons` + barrel | universal | `icons.mdx` | yes | 61 | | | | |
|
|
196
196
|
| `image-aspect-ratio-cache` | `@oxy.so/bloom/image-aspect-ratio-cache` + barrel | universal | `image-aspect-ratio-cache.mdx` | yes | 1 | | | | |
|
|
197
197
|
| `image-resolver` | `@oxy.so/bloom/image-resolver` + barrel | universal | `image-resolver.mdx` | yes | 8 | | | | |
|
|
198
198
|
| `important-alerts-card` | `@oxy.so/bloom/important-alerts-card` + barrel | universal | `important-alerts-card.mdx` | yes | 1 | | | | |
|
|
@@ -202,7 +202,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
202
202
|
| `job-board` | `@oxy.so/bloom/job-board` + barrel | universal | `job-board.mdx` | yes | 2 | n/a¹ | | | reads |
|
|
203
203
|
| `kbd` | `@oxy.so/bloom/kbd` + barrel | universal | `kbd.mdx` | yes | 1 | | reads | | |
|
|
204
204
|
| `label` | `@oxy.so/bloom/label` + barrel | universal | `label.mdx` | yes | 2 | | reads | | |
|
|
205
|
-
| `layout` | `@oxy.so/bloom/layout` + barrel | universal | `layout.mdx` | yes |
|
|
205
|
+
| `layout` | `@oxy.so/bloom/layout` + barrel | universal | `layout.mdx` | yes | 11 | | | | |
|
|
206
206
|
| `lead-score` | `@oxy.so/bloom/lead-score` + barrel | universal | `lead-score.mdx` | yes | 1 | | | | |
|
|
207
207
|
| `link-preview` | `@oxy.so/bloom/link-preview` + barrel | universal | `link-preview.mdx` | yes | 3 | | | | |
|
|
208
208
|
| `list` | `@oxy.so/bloom/list` + barrel | web fork | `list.mdx` | yes | 2 | | | | |
|
|
@@ -211,7 +211,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
211
211
|
| `listing-details` | `@oxy.so/bloom/listing-details` + barrel | universal | `listing-details.mdx` | yes | 5 | | | | reads |
|
|
212
212
|
| `listing-editor` | `@oxy.so/bloom/listing-editor` + barrel | universal | `listing-editor.mdx` | yes | 2 | **adaptation** | | | reads |
|
|
213
213
|
| `loading` | `@oxy.so/bloom/loading` + barrel | web fork | `loading.mdx` | yes | 3 | | reads | | |
|
|
214
|
-
| `locale` | `@oxy.so/bloom/locale` + barrel | universal | `locale.mdx` | — |
|
|
214
|
+
| `locale` | `@oxy.so/bloom/locale` + barrel | universal | `locale.mdx` | — | 25 | | | | |
|
|
215
215
|
| `location-puck` | `@oxy.so/bloom/location-puck` + barrel | universal | `location-puck.mdx` | yes | 2 | | | | |
|
|
216
216
|
| `lyrics` | `@oxy.so/bloom/lyrics` + barrel | universal | `lyrics.mdx` | yes | 3 | | | | |
|
|
217
217
|
| `mail-compose` | `@oxy.so/bloom/mail-compose` + barrel | universal | `mail-compose.mdx` | yes | 4 | reads | | | reads |
|
|
@@ -244,7 +244,8 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
244
244
|
| `order-status` | `@oxy.so/bloom/order-status` + barrel | universal | `order-status.mdx` | yes | 1 | | | | |
|
|
245
245
|
| `outline-nav` | `@oxy.so/bloom/outline-nav` + barrel | universal | `outline-nav.mdx` | yes | 2 | | | | |
|
|
246
246
|
| `overlay` | `@oxy.so/bloom/overlay` + barrel | universal | `overlay.mdx` | yes | 17 | | | | |
|
|
247
|
-
| `page-
|
|
247
|
+
| `page-footer` | `@oxy.so/bloom/page-footer` + barrel | universal | `page-footer.mdx` | yes | 1 | | | | |
|
|
248
|
+
| `page-header` | `@oxy.so/bloom/page-header` + barrel | universal | `page-header.mdx` | yes | 6 | | | | |
|
|
248
249
|
| `pagination` | `@oxy.so/bloom/pagination` + barrel | universal | `pagination.mdx` | yes | 2 | | | | |
|
|
249
250
|
| `patient-info-card` | `@oxy.so/bloom/patient-info-card` + barrel | universal | `patient-info-card.mdx` | yes | 1 | | | | |
|
|
250
251
|
| `payment-method` | `@oxy.so/bloom/payment-method` + barrel | universal | `payment-method.mdx` | yes | 3 | reads | | | |
|
|
@@ -278,10 +279,10 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
278
279
|
| `segmented-control` | `@oxy.so/bloom/segmented-control` + barrel | universal | `segmented-control.mdx` | yes | 4 | reads | reads | | |
|
|
279
280
|
| `select` | `@oxy.so/bloom/select` + barrel | web fork | `select.mdx` | yes | 11 | reads | reads | reads | reads |
|
|
280
281
|
| `settings-list` | `@oxy.so/bloom/settings-list` + barrel | universal | `settings-list.mdx` | yes | 5 | | | | |
|
|
281
|
-
| `settings-modal` | `@oxy.so/bloom/settings-modal` + barrel | universal | `settings-modal.mdx` | yes |
|
|
282
|
+
| `settings-modal` | `@oxy.so/bloom/settings-modal` + barrel | universal | `settings-modal.mdx` | yes | 11 | | | | reads |
|
|
282
283
|
| `shapes` | `@oxy.so/bloom/shapes` + barrel | universal | `shapes.mdx` | yes | 4 | | | | |
|
|
283
284
|
| `shipment-request` | `@oxy.so/bloom/shipment-request` + barrel | universal | `shipment-request.mdx` | yes | 1 | **adaptation** | | | |
|
|
284
|
-
| `sidebar` | `@oxy.so/bloom/sidebar` + barrel | universal | `sidebar.mdx` | yes |
|
|
285
|
+
| `sidebar` | `@oxy.so/bloom/sidebar` + barrel | universal | `sidebar.mdx` | yes | 12 | n/a¹ | reads | | reads |
|
|
285
286
|
| `skeleton` | `@oxy.so/bloom/skeleton` + barrel | universal | `skeleton.mdx` | yes | 1 | | | | |
|
|
286
287
|
| `slider` | `@oxy.so/bloom/slider` + barrel | universal | `slider.mdx` | yes | 5 | reads | reads | | |
|
|
287
288
|
| `social-button` | `@oxy.so/bloom/social-button` + barrel | web fork | `social-button.mdx` | yes | 2 | | reads | | |
|
|
@@ -292,9 +293,9 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
292
293
|
| `stay-search` | `@oxy.so/bloom/stay-search` + barrel | universal | `stay-search.mdx` | yes | 5 | | | | |
|
|
293
294
|
| `stepper` | `@oxy.so/bloom/stepper` + barrel | universal | `stepper.mdx` | yes | 4 | reads | reads | | |
|
|
294
295
|
| `sticker` | `@oxy.so/bloom/sticker` + barrel | web fork | `sticker.mdx` | yes | 1 | | | | |
|
|
295
|
-
| `styles` | `@oxy.so/bloom/styles` + barrel | universal | `styles.mdx` | yes |
|
|
296
|
+
| `styles` | `@oxy.so/bloom/styles` + barrel | universal | `styles.mdx` | yes | 87 | n/a¹ | reads | | |
|
|
296
297
|
| `subtle-hover` | `@oxy.so/bloom/subtle-hover` + barrel | universal | `subtle-hover.mdx` | yes | 1 | | | | |
|
|
297
|
-
| `surface` | `@oxy.so/bloom/surface` + barrel | web fork | `surface.mdx` | yes |
|
|
298
|
+
| `surface` | `@oxy.so/bloom/surface` + barrel | web fork | `surface.mdx` | yes | 40 | | | | |
|
|
298
299
|
| `surfaces` | `@oxy.so/bloom/surfaces` + barrel | web fork | `alert.mdx` | yes | 3 | | | | |
|
|
299
300
|
| `swipe-row` | `@oxy.so/bloom/swipe-row` + barrel | universal | `swipe-row.mdx` | yes | 2 | | | | |
|
|
300
301
|
| `switch` | `@oxy.so/bloom/switch` + barrel | universal | `switch.mdx` | yes | 7 | reads | reads | | reads |
|
|
@@ -307,7 +308,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
307
308
|
| `tenancy` | `@oxy.so/bloom/tenancy` + barrel | universal | `tenancy.mdx` | yes | 5 | | reads | | |
|
|
308
309
|
| `text-field` | `@oxy.so/bloom/text-field` + barrel | universal | `text-field.mdx` | yes | 17 | reads | reads | | |
|
|
309
310
|
| `textarea` | `@oxy.so/bloom/textarea` + barrel | universal | `textarea.mdx` | yes | 4 | reads | reads | | n/a¹ |
|
|
310
|
-
| `theme` | `@oxy.so/bloom/theme` + barrel | web fork | `theme.mdx` | yes |
|
|
311
|
+
| `theme` | `@oxy.so/bloom/theme` + barrel | web fork | `theme.mdx` | yes | 358 | | | n/a¹ | reads |
|
|
311
312
|
| `theme-toggle` | `@oxy.so/bloom/theme-toggle` + barrel | universal | `theme-toggle.mdx` | yes | 2 | n/a¹ | | | |
|
|
312
313
|
| `toast` | `@oxy.so/bloom/toast` + barrel | universal | `toast.mdx` | yes | 17 | | | | |
|
|
313
314
|
| `tooltip` | `@oxy.so/bloom/tooltip` + barrel | web fork | `tooltip.mdx` | yes | 1 | | | | |
|
package/docs/app-shell.mdx
CHANGED
|
@@ -219,14 +219,33 @@ phone, and a negative margin is wrong the moment the page's padding changes.
|
|
|
219
219
|
know its own width. It has no `compact`/`always` switch: a compose button is
|
|
220
220
|
not phone chrome, so it is drawn whenever it is given — pass `null` to drop it.
|
|
221
221
|
|
|
222
|
-
Both bars are MEASURED
|
|
223
|
-
the last row of a feed is never hidden behind them.
|
|
222
|
+
Both bars are MEASURED. By default the content column reserves their height, so
|
|
223
|
+
the last row of a feed is never hidden behind them. A dashboard with
|
|
224
|
+
`reserveBottomBarSpace={false}` keeps the bottom bar over the full-height content,
|
|
225
|
+
including with `scroll="fixed"`. Its scrollers should apply
|
|
226
|
+
`useBottomEdgeInset()` from `@oxy.so/bloom/layout` as bottom content padding, so
|
|
227
|
+
the final item can scroll clear while the page background continues underneath. Measured in Chrome at 390,
|
|
224
228
|
scrolled to the page end: last item bottom `768`, action top `784`, bar top `844`.
|
|
225
229
|
|
|
226
230
|
With a content panel, the reserved clearance stays inside its painted surface.
|
|
227
231
|
In the compact full-width layout, bottom chrome also inherits that panel fill,
|
|
228
232
|
so its fading backdrop does not introduce a strip of the outer page color.
|
|
229
233
|
|
|
234
|
+
|
|
235
|
+
**Native safe-area ownership.**
|
|
236
|
+
|
|
237
|
+
Use `<AppShell safeArea scroll="fixed" ...>` when the shell owns the whole
|
|
238
|
+
native screen. The frame protects its top and side edges, including landscape
|
|
239
|
+
notches, and keeps reveal navigation inside the same safe frame. Portaled
|
|
240
|
+
navigation drawers use the device's original insets. Web geometry is unchanged;
|
|
241
|
+
`safeArea` defaults to `false` for existing embedded shells.
|
|
242
|
+
|
|
243
|
+
When bottom chrome is visible, the bottom-bar slot or floating action retains
|
|
244
|
+
ownership of the bottom inset. Otherwise the frame reserves it. There is no
|
|
245
|
+
second bottom inset around a bar. Set `safeArea={false}` on descendant
|
|
246
|
+
`PageHeader` components because the shell already protects their top edge.
|
|
247
|
+
The real `SafeAreaInsetsContext` remains intact for fullscreen dialogs.
|
|
248
|
+
|
|
230
249
|
`topBarVisibility` / `bottomBarVisibility` are `compact` (the default — only
|
|
231
250
|
while the nav is a drawer, the phone case the slots exist for) or `always`, for
|
|
232
251
|
a bar that is part of the app at every width.
|
|
@@ -665,3 +684,30 @@ ProOfferCard retains its animated complementary host and decorative artwork, wit
|
|
|
665
684
|
The detail remains mounted while `showList` changes; hiding a pane explicitly unmounts that pane. Defaults match AppShell's split layout: list width 360 (range 280–520), info width 320, scrolling and resizing enabled. `showDetail` defaults to true; list/info visibility follows the supplied content. Set `paneScroll={false}` when routes or virtualized lists own their scrolling. The surrounding Bloom container must provide a bounded height.
|
|
666
685
|
|
|
667
686
|
Use `variant="separated"` when each pane supplies its own `AiChatContainer`. Bloom inserts 12px transparent gutters and centers the existing resize handle in the list gutter; there is no extra surface around the panels. A single visible pane has no gutter. The default `joined` variant retains hairline dividers for panes inside one shared surface.
|
|
687
|
+
|
|
688
|
+
To fill wide displays without a reading-column cap, set
|
|
689
|
+
`contentMaxWidth="none"`. The default remains 1300. Dashboard reveal layouts
|
|
690
|
+
honor an explicit `gutter`, including `gutter={0}` for edge-to-edge compact
|
|
691
|
+
content; omitting it preserves the existing 12px frame and wider-screen top gap.
|
|
692
|
+
|
|
693
|
+
### Pane error recovery
|
|
694
|
+
|
|
695
|
+
`AppShellSplitPanes` isolates list, detail and info rendering failures independently.
|
|
696
|
+
The default localized, themed EmptyState offers retry while the other panes and
|
|
697
|
+
shell navigation keep working. Pass options per pane to customize the presentation
|
|
698
|
+
and clear a failed pane when navigation changes:
|
|
699
|
+
|
|
700
|
+
```tsx
|
|
701
|
+
<AppShellSplitPanes
|
|
702
|
+
list={<MessageList />}
|
|
703
|
+
detail={<MessageRoute />}
|
|
704
|
+
detailErrorBoundary={{
|
|
705
|
+
resetKey: pathname,
|
|
706
|
+
emptyState: { illustration: <BrandSticker />, title: 'Cannot open this message' },
|
|
707
|
+
}}
|
|
708
|
+
/>
|
|
709
|
+
```
|
|
710
|
+
|
|
711
|
+
`listErrorBoundary`, `detailErrorBoundary` and `infoErrorBoundary` accept
|
|
712
|
+
`PanelErrorBoundaryOptions` or `false` to disable local recovery. These boundaries
|
|
713
|
+
catch render/lifecycle errors; expected request failures remain normal content state.
|
package/docs/appearance.mdx
CHANGED
|
@@ -37,7 +37,22 @@ import { Button } from '@oxy.so/bloom/button';
|
|
|
37
37
|
</BloomScope>
|
|
38
38
|
```
|
|
39
39
|
|
|
40
|
-
Explicit props win over the nearest scope, which wins over the family's defaults. A nested scope inherits unspecified values. Scopes render no layout node and never carry actions, selection, disabled state, or screen
|
|
40
|
+
Explicit props win over the nearest scope, which wins over the family's defaults. A nested scope inherits unspecified values. Scopes render no layout node and never carry actions, selection, disabled state, or screen placement. `appearance` remains explicit so a scope cannot silently turn every control into a filled primary action.
|
|
41
|
+
|
|
42
|
+
### Panel corners
|
|
43
|
+
|
|
44
|
+
`BloomScope panelRadius={28}` sets the shared corner radius for `Sidebar surface="card"`
|
|
45
|
+
and framed `ContentPanel` surfaces. The default is 28; any finite non-negative number
|
|
46
|
+
is accepted, including zero. Nested scopes inherit it independently of size and tone.
|
|
47
|
+
The surface, its material, the content clip and web frame/mask all use that radius.
|
|
48
|
+
Plain/docked sidebars and unframed panels remain square. Control corners are unchanged.
|
|
49
|
+
|
|
50
|
+
```tsx
|
|
51
|
+
<BloomScope size="md" panelRadius={20}>
|
|
52
|
+
<Sidebar items={items} />
|
|
53
|
+
<ContentPanel framed>{children}</ContentPanel>
|
|
54
|
+
</BloomScope>
|
|
55
|
+
```
|
|
41
56
|
|
|
42
57
|
## Actions and icons
|
|
43
58
|
|
package/docs/chip.mdx
CHANGED
|
@@ -165,3 +165,8 @@ In a flex row of chips — a filter bar, a tag list — each pill keeps its size
|
|
|
165
165
|
## Compatibility
|
|
166
166
|
|
|
167
167
|
The shared `size`, `tone` and `appearance` vocabulary coexists with the previously published family props. Explicit shared props take precedence over legacy spellings; existing size and state callbacks remain supported. New code should prefer the shared vocabulary.
|
|
168
|
+
|
|
169
|
+
When a chip provides both `onPress` (or `onCheckedChange`) and `onClose`, selection
|
|
170
|
+
and removal are two sibling controls inside one painted pill. Each is keyboard
|
|
171
|
+
focusable and has its own accessible name. Closing does not select the chip;
|
|
172
|
+
`disabled` disables both actions. The forwarded ref targets the selection control.
|
package/docs/content-panel.mdx
CHANGED
|
@@ -255,3 +255,12 @@ last content without nested vertical scroll containers.
|
|
|
255
255
|
### Shared surface paint
|
|
256
256
|
|
|
257
257
|
The painted host delegates its fill to Surface: a 90%-opacity body with a subtle refracted edge on web, plus the shared sheen and rim. The host itself stays transparent to avoid painting twice. Explicit alpha colours retain their alpha; descendants receive the corresponding composited fill. Plain or unframed content keeps its existing layout behavior.
|
|
258
|
+
|
|
259
|
+
Panel corners inherit `BloomScope panelRadius` (28 by default), matching card sidebars. Both preserve the circular corner shape of the content panel on web and native.
|
|
260
|
+
`chrome="none"` removes the border, shadow and material rim/sheen while retaining the
|
|
261
|
+
framed radius and content clipping. Use it for a reader pane that should have a plain fill.
|
|
262
|
+
|
|
263
|
+
For a page outside split panes, `errorBoundary` opts into themed local recovery inside
|
|
264
|
+
the existing surface: `errorBoundary={{ resetKey: pathname, emptyState: { title: 'Cannot open this page' } }}`.
|
|
265
|
+
The frame remains mounted while content retries. Omit it when `AppShellSplitPanes`
|
|
266
|
+
already owns the pane boundary. See [Error boundary](/docs/error-boundary).
|
package/docs/error-boundary.mdx
CHANGED
|
@@ -70,3 +70,38 @@ React error boundaries catch errors thrown **during render**. They do not catch:
|
|
|
70
70
|
|
|
71
71
|
So a boundary is a safety net for the unexpected, not the way you handle a
|
|
72
72
|
failed request. A request that can fail has a designed failure state.
|
|
73
|
+
|
|
74
|
+
## Recover one pane inside a healthy shell
|
|
75
|
+
|
|
76
|
+
Use `PanelErrorBoundary` for content beneath Bloom's providers. It renders a themed
|
|
77
|
+
`EmptyState` with localized error text and a retry button. `ErrorBoundary` remains
|
|
78
|
+
the provider-independent last line of defense for failures outside those providers.
|
|
79
|
+
|
|
80
|
+
```tsx
|
|
81
|
+
<PanelErrorBoundary
|
|
82
|
+
resetKey={pathname}
|
|
83
|
+
emptyState={{ illustration: <BrandSticker />, title: 'Cannot open this message' }}
|
|
84
|
+
>
|
|
85
|
+
<MessageContent />
|
|
86
|
+
</PanelErrorBoundary>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
The boundary catches render and lifecycle failures, not rejected requests or event
|
|
90
|
+
handler exceptions. Keep expected loading/error data states in the content API.
|
|
91
|
+
Changing `resetKey` clears a failed boundary; healthy content retains its state.
|
|
92
|
+
Retry affects only this boundary. A supplied `emptyState.action.onPress` runs before
|
|
93
|
+
retry, so it can clear local error data or request a refresh. Omitting `action`
|
|
94
|
+
preserves the default retry button. `fallback` accepts the same node/render callback
|
|
95
|
+
and error context as `ErrorBoundary`; a failing fallback escalates to the next outer
|
|
96
|
+
boundary instead of retrying itself.
|
|
97
|
+
|
|
98
|
+
The default fallback scrolls when space is short and clears the inherited occupied
|
|
99
|
+
bottom edge. Set `bottomInset={0}` when its parent already reserves that space.
|
|
100
|
+
An explicit `bottomInset` takes precedence over the inherited occupancy.
|
|
101
|
+
|
|
102
|
+
`AppShellSplitPanes` installs independent boundaries for its list, detail and info
|
|
103
|
+
panes by default. Configure each through `listErrorBoundary`, `detailErrorBoundary`
|
|
104
|
+
and `infoErrorBoundary`, using the same options as `PanelErrorBoundary`; pass `false`
|
|
105
|
+
to delegate that pane to an outer boundary. Shell navigation and healthy panes remain
|
|
106
|
+
mounted. `ContentPanel errorBoundary` provides the same recovery inside the framed
|
|
107
|
+
surface for pages outside a split; it is opt-in to avoid redundant boundaries.
|
package/docs/mail-thread.mdx
CHANGED
|
@@ -119,3 +119,11 @@ identically-named buttons is a thread a screen-reader user cannot navigate.
|
|
|
119
119
|
The star, the `menu` slot and the three replies are SIBLINGS of the disclosure,
|
|
120
120
|
never children. A button inside a button is invalid, and the press target would
|
|
121
121
|
be ambiguous.
|
|
122
|
+
|
|
123
|
+
## Message surfaces and spacing
|
|
124
|
+
|
|
125
|
+
Collapsed and expanded messages use the same solid `Card`, with radius-16,
|
|
126
|
+
no border and small elevation. Expanding changes the contents without replacing
|
|
127
|
+
the card host, so focus stays on the disclosure. `MailThread` separates the
|
|
128
|
+
cards and the earlier-messages control by `space.md` (12); `messageGap` can
|
|
129
|
+
adjust that spacing without wrapping or restyling individual messages.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# PageFooter
|
|
2
|
+
|
|
3
|
+
Page-local actions float over a bounded scroller, above the app's bottom
|
|
4
|
+
navigation. The background uses the same surface color and gradient as
|
|
5
|
+
`PageHeader`, mirrored upward. Content continues behind the footer; the measured
|
|
6
|
+
clearance lets the last item scroll fully above its controls.
|
|
7
|
+
|
|
8
|
+
```tsx
|
|
9
|
+
import { ScrollView, View } from 'react-native';
|
|
10
|
+
import { Button, PageFooter, PageFooterProvider, usePageFooterInset } from '@oxy.so/bloom';
|
|
11
|
+
|
|
12
|
+
function Message() {
|
|
13
|
+
const bottom = usePageFooterInset();
|
|
14
|
+
return (
|
|
15
|
+
<View style={{ flex: 1, minHeight: 0 }}>
|
|
16
|
+
<ScrollView contentContainerStyle={{ paddingBottom: bottom }}>
|
|
17
|
+
<MessageBody />
|
|
18
|
+
</ScrollView>
|
|
19
|
+
<PageFooter
|
|
20
|
+
actions={<><Button onPress={reply}>Reply</Button><Button onPress={forward}>Forward</Button></>}
|
|
21
|
+
/>
|
|
22
|
+
</View>
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export function MessagePane() {
|
|
27
|
+
return <PageFooterProvider><Message /></PageFooterProvider>;
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
The provider adds no layout and belongs around one pane. `usePageFooterInset()`
|
|
32
|
+
returns the footer's measured row height, its safe-area padding, and its bottom
|
|
33
|
+
offset. Use it **instead of** adding the bottom navigation inset again. It
|
|
34
|
+
starts with a 56px row estimate and updates when controls wrap or text scales;
|
|
35
|
+
the decorative gradient tail does not reserve layout. Removing the footer
|
|
36
|
+
(for example while replying) releases its clearance. If navigation still
|
|
37
|
+
overlaps the scroller then, retain its `useBottomEdgeInset()` as a fallback.
|
|
38
|
+
|
|
39
|
+
`bottomInset` defaults to Bloom's occupied bottom edge. `AppShell bottomBar`
|
|
40
|
+
publishes that measurement, including the safe area. Pass `bottomInset={0}`
|
|
41
|
+
when the containing frame already ends above navigation, or in a desktop pane
|
|
42
|
+
whose bottom edge differs from the app's. When the shell owns safe-area
|
|
43
|
+
handling, pass `safeArea={false}`. Otherwise the footer adds the native bottom
|
|
44
|
+
safe area only when its bottom offset is zero; web requires `safeArea` opt-in.
|
|
45
|
+
|
|
46
|
+
The footer reads the global bottom-edge registry but publishes its footprint
|
|
47
|
+
only in its local provider. It never increases the inset it uses to position
|
|
48
|
+
itself. Two panes have independent providers and measurements.
|
|
49
|
+
|
|
50
|
+
`actions` inherits the surrounding `BloomScope` size and supports wrapping.
|
|
51
|
+
`children` is an optional flexible slot before the actions. Group related
|
|
52
|
+
controls with `ButtonGroup` when desired. The scrim and the space between
|
|
53
|
+
controls let pointer events pass through. The gradient has no motion, including
|
|
54
|
+
when reduced motion is enabled. `scrim="none"` removes it; `scrimColor` overrides
|
|
55
|
+
the inherited opaque surface color. `style` and `testID` address the outer host.
|
|
56
|
+
|
|
57
|
+
This is page chrome, always absolutely positioned inside a bounded parent.
|
|
58
|
+
Place it beside the scroller, never inside its scrolling content. A purchase
|
|
59
|
+
summary with price and booking controls belongs to `ActionBar`, which has a
|
|
60
|
+
different opaque, in-flow layout contract.
|
package/docs/settings-modal.mdx
CHANGED
|
@@ -144,3 +144,8 @@ All surfaces come from the theme ramps (`button/shared`): background/secondary i
|
|
|
144
144
|
Use the imperative control for guarded flows. External changes to controlled `open` or `page`, and parent unmounts, remain the caller's authority and are not vetoed. Preserve the application's router leave guard as well when navigation can unmount the modal. The guard should read the application's completion state; the modal never stores recovery phrases or other sensitive content.
|
|
145
145
|
|
|
146
146
|
The modal uses the shared Surface gradient and rim over its existing full backing. It publishes that backing to nested controls through the surface context and web CSS variable; the navigation rail publishes its own secondary backing. Neither replaces the modal’s layout, scrolling or overlay behavior.
|
|
147
|
+
|
|
148
|
+
A `SettingsPageSection` can provide `emptyState: EmptyStateProps`. General and Profile
|
|
149
|
+
pages render that EmptyState inside the section card only when `rows` is empty,
|
|
150
|
+
retaining the section heading, description and action. The compact variant is the
|
|
151
|
+
default; the section can override it and supply its own illustration and actions.
|
package/docs/sidebar.mdx
CHANGED
|
@@ -148,7 +148,7 @@ Two apps with the same rows should not look like the same app. That difference i
|
|
|
148
148
|
|
|
149
149
|
| surface | what it draws |
|
|
150
150
|
| -------- | ------------------------------------------------------------------ |
|
|
151
|
-
| `card` | radius
|
|
151
|
+
| `card` | shared panel radius (28 by default), a hairline and the panel shadow, on the panel fill |
|
|
152
152
|
| `plain` | no radius, no border, no shadow — the rows sit straight on the page |
|
|
153
153
|
| `docked` | the panel fill, square corners, ONE hairline on the inner edge, full height |
|
|
154
154
|
|
|
@@ -176,9 +176,10 @@ function createAppShell(BottomBar, Fab, ...panelComponents) {
|
|
|
176
176
|
flex: 1
|
|
177
177
|
},
|
|
178
178
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
179
|
+
testID: testID ? `${testID}-content` : undefined,
|
|
179
180
|
style: {
|
|
180
181
|
width: '100%',
|
|
181
|
-
maxWidth: contentMaxWidth,
|
|
182
|
+
maxWidth: contentMaxWidth === 'none' ? undefined : contentMaxWidth,
|
|
182
183
|
alignSelf: 'center',
|
|
183
184
|
padding: 16,
|
|
184
185
|
gap: 16
|
|
@@ -286,7 +287,7 @@ function createAppShell(BottomBar, Fab, ...panelComponents) {
|
|
|
286
287
|
...props
|
|
287
288
|
});
|
|
288
289
|
const scroll = props.scroll ?? (_reactNative.Platform.OS === 'web' ? 'document' : 'auto');
|
|
289
|
-
const usesLayout = props.panel !== undefined || props.panelColorPreset !== undefined || props.variant !== undefined || props.aside !== undefined || props.list !== undefined || props.info !== undefined || props.contentWidth !== undefined || props.navigationAlign !== undefined || props.navigationGap !== undefined || props.drawer !== undefined || props.navFrom !== undefined || props.navExpandedFrom !== undefined || props.topBar !== undefined || props.bottomBar !== undefined || props.floatingAction !== undefined;
|
|
290
|
+
const usesLayout = props.safeArea !== undefined || props.panel !== undefined || props.panelColorPreset !== undefined || props.variant !== undefined || props.aside !== undefined || props.list !== undefined || props.info !== undefined || props.contentWidth !== undefined || props.navigationAlign !== undefined || props.navigationGap !== undefined || props.drawer !== undefined || props.navFrom !== undefined || props.navExpandedFrom !== undefined || props.topBar !== undefined || props.bottomBar !== undefined || props.floatingAction !== undefined;
|
|
290
291
|
return (scroll === 'auto' || scroll === 'external') && !usesLayout ? /*#__PURE__*/(0, _jsxRuntime.jsx)(AdaptiveAppShell, {
|
|
291
292
|
...props,
|
|
292
293
|
scroll: scroll
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_breakpoints","_index","_index2","_useTheme","_index3","_ResponsiveNavigation","_AppShellEngine","_layout","_AppShellMenuButton","_constants","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","resolveNavigationPlacement","width","placement","BREAKPOINTS","md","lg","createAppShell","BottomBar","Fab","panelComponents","AppShellEngine","createAppShellEngine","NavigationBottom","navigation","value","onValueChange","primaryAction","bottomActionBehavior","testID","collapseProgress","useScreen","jsx","actionBehavior","items","map","item","name","label","icon","minimizeProgress","action","undefined","AppShell","active","navigationPlacement","sidebar","scroll","title","breadcrumb","actions","header","children","contentMaxWidth","overlay","style","windowWidth","useWindowDimensions","containerWidth","setContainerWidth","useState","colors","useTheme","key","sidebarItems","useMemo","onPress","props","isValidElement","cloneElement","Fragment","selected","docked","surface","select","next","find","candidate","onNavigate","href","window","location","assign","shellProps","bottom","length","jsxs","View","onLayout","event","nativeEvent","layout","flex","minHeight","flexDirection","backgroundColor","background","ResponsiveNavigation","flexShrink","paddingTop","paddingBottom","paddingLeft","paddingRight","gap","shownPlacement","Sidebar","showSearch","showThemeToggle","variant","height","Screen","navigationScope","documentScroll","minWidth","PageHeader","subtitle","sticky","bottomBar","ScreenScrollView","maxWidth","alignSelf","padding","EngineNavigationShell","measuredWidth","setMeasuredWidth","navFrom","Number","MAX_SAFE_INTEGER","navExpandedFrom","breakpointPx","globalThis","mappedItems","iconProps","hasNavigation","compact","engineScroll","document","resolveScrollMode","mappedSidebar","leading","AppShellMenuButton","accessibilityLabel","drawerOpenLabel","bottomBarVisibility","floatingAction","AdaptiveAppShell","ComposedAppShell","adaptive","Platform","OS","usesLayout","panel","panelColorPreset","aside","list","info","contentWidth","navigationAlign","navigationGap","drawer","topBar","displayName"],"sourceRoot":"../../../src","sources":["app-shell/AppShell.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_breakpoints","_index","_index2","_useTheme","_index3","_ResponsiveNavigation","_AppShellEngine","_layout","_AppShellMenuButton","_constants","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","resolveNavigationPlacement","width","placement","BREAKPOINTS","md","lg","createAppShell","BottomBar","Fab","panelComponents","AppShellEngine","createAppShellEngine","NavigationBottom","navigation","value","onValueChange","primaryAction","bottomActionBehavior","testID","collapseProgress","useScreen","jsx","actionBehavior","items","map","item","name","label","icon","minimizeProgress","action","undefined","AppShell","active","navigationPlacement","sidebar","scroll","title","breadcrumb","actions","header","children","contentMaxWidth","overlay","style","windowWidth","useWindowDimensions","containerWidth","setContainerWidth","useState","colors","useTheme","key","sidebarItems","useMemo","onPress","props","isValidElement","cloneElement","Fragment","selected","docked","surface","select","next","find","candidate","onNavigate","href","window","location","assign","shellProps","bottom","length","jsxs","View","onLayout","event","nativeEvent","layout","flex","minHeight","flexDirection","backgroundColor","background","ResponsiveNavigation","flexShrink","paddingTop","paddingBottom","paddingLeft","paddingRight","gap","shownPlacement","Sidebar","showSearch","showThemeToggle","variant","height","Screen","navigationScope","documentScroll","minWidth","PageHeader","subtitle","sticky","bottomBar","ScreenScrollView","maxWidth","alignSelf","padding","EngineNavigationShell","measuredWidth","setMeasuredWidth","navFrom","Number","MAX_SAFE_INTEGER","navExpandedFrom","breakpointPx","globalThis","mappedItems","iconProps","hasNavigation","compact","engineScroll","document","resolveScrollMode","mappedSidebar","leading","AppShellMenuButton","accessibilityLabel","drawerOpenLabel","bottomBarVisibility","floatingAction","AdaptiveAppShell","ComposedAppShell","adaptive","Platform","OS","usesLayout","safeArea","panel","panelColorPreset","aside","list","info","contentWidth","navigationAlign","navigationGap","drawer","topBar","displayName"],"sourceRoot":"../../../src","sources":["app-shell/AppShell.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -50,9 +50,11 @@ function useShellInsets() {
|
|
|
50
50
|
// where making a previously-optional provider mandatory would be a breaking
|
|
51
51
|
// change for every consumer that never had a bar to inset.
|
|
52
52
|
const insets = (0, _react.useContext)(_reactNativeSafeAreaContext.SafeAreaInsetsContext);
|
|
53
|
-
return {
|
|
54
|
-
top:
|
|
55
|
-
|
|
53
|
+
return insets ?? {
|
|
54
|
+
top: 0,
|
|
55
|
+
right: 0,
|
|
56
|
+
bottom: 0,
|
|
57
|
+
left: 0
|
|
56
58
|
};
|
|
57
59
|
}
|
|
58
60
|
|
|
@@ -148,7 +150,8 @@ const AppShellTopBarComponent = ({
|
|
|
148
150
|
children,
|
|
149
151
|
doc,
|
|
150
152
|
testID,
|
|
151
|
-
onHeightChange
|
|
153
|
+
onHeightChange,
|
|
154
|
+
insetTop
|
|
152
155
|
}) => {
|
|
153
156
|
const insets = useShellInsets();
|
|
154
157
|
const pinned = doc ? {
|
|
@@ -160,7 +163,7 @@ const AppShellTopBarComponent = ({
|
|
|
160
163
|
onLayout: event => onHeightChange?.(event.nativeEvent.layout.height),
|
|
161
164
|
style: [{
|
|
162
165
|
zIndex: _zIndex.Z_INDEX.floating,
|
|
163
|
-
paddingTop: insets.top
|
|
166
|
+
paddingTop: insetTop ?? insets.top
|
|
164
167
|
}, pinned],
|
|
165
168
|
children: children
|
|
166
169
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_webViewStyle","_bottomBarSlot","_bottomEdge","_zIndex","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useShellInsets","insets","useContext","SafeAreaInsetsContext","top","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_webViewStyle","_bottomBarSlot","_bottomEdge","_zIndex","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useShellInsets","insets","useContext","SafeAreaInsetsContext","top","right","bottom","left","anchorBottom","doc","position","WEB_POSITION_FIXED","zIndex","Z_INDEX","floating","AppShellBottomBarComponent","children","onHeightChange","testID","height","setHeight","useState","measuredHeight","useRef","useClaimBottomEdge","onLayout","useCallback","event","rawHeight","nativeEvent","layout","Number","isFinite","next","Math","max","round","current","jsx","View","pointerEvents","style","paddingBottom","BottomBarSlotContext","Provider","value","AppShellBottomBar","exports","memo","displayName","AppShellFloatingActionComponent","offset","gutter","placement","paddingLeft","paddingRight","alignItems","AppShellFloatingAction","AppShellTopBarComponent","insetTop","pinned","WEB_POSITION_STICKY","paddingTop","AppShellTopBar"],"sourceRoot":"../../../src","sources":["app-shell/AppShellBars.tsx"],"mappings":"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","ignoreList":[]}
|