@oxyhq/bloom 0.15.0 → 0.16.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 (208) hide show
  1. package/lib/commonjs/alert-dialog/AlertDialog.js +35 -27
  2. package/lib/commonjs/alert-dialog/AlertDialog.js.map +1 -1
  3. package/lib/commonjs/alert-dialog/index.js +1 -1
  4. package/lib/commonjs/alert-dialog/index.js.map +1 -1
  5. package/lib/commonjs/alert-dialog/index.web.js +1 -1
  6. package/lib/commonjs/alert-dialog/index.web.js.map +1 -1
  7. package/lib/commonjs/command/Command.js +27 -16
  8. package/lib/commonjs/command/Command.js.map +1 -1
  9. package/lib/commonjs/command/index.js +1 -1
  10. package/lib/commonjs/command/index.js.map +1 -1
  11. package/lib/commonjs/command/index.web.js +1 -1
  12. package/lib/commonjs/command/index.web.js.map +1 -1
  13. package/lib/commonjs/dialog/Dialog.js +39 -152
  14. package/lib/commonjs/dialog/Dialog.js.map +1 -1
  15. package/lib/commonjs/dialog/Dialog.web.js +61 -196
  16. package/lib/commonjs/dialog/Dialog.web.js.map +1 -1
  17. package/lib/commonjs/dialog/DialogBottomSheet.js +205 -0
  18. package/lib/commonjs/dialog/DialogBottomSheet.js.map +1 -0
  19. package/lib/commonjs/dialog/DialogContent.js +155 -0
  20. package/lib/commonjs/dialog/DialogContent.js.map +1 -0
  21. package/lib/commonjs/dialog/index.js +0 -13
  22. package/lib/commonjs/dialog/index.js.map +1 -1
  23. package/lib/commonjs/dialog/index.web.js +0 -19
  24. package/lib/commonjs/dialog/index.web.js.map +1 -1
  25. package/lib/commonjs/index.js +0 -29
  26. package/lib/commonjs/index.js.map +1 -1
  27. package/lib/commonjs/index.web.js +6 -35
  28. package/lib/commonjs/index.web.js.map +1 -1
  29. package/lib/module/alert-dialog/AlertDialog.js +35 -27
  30. package/lib/module/alert-dialog/AlertDialog.js.map +1 -1
  31. package/lib/module/alert-dialog/index.js +2 -2
  32. package/lib/module/alert-dialog/index.js.map +1 -1
  33. package/lib/module/alert-dialog/index.web.js +2 -2
  34. package/lib/module/alert-dialog/index.web.js.map +1 -1
  35. package/lib/module/command/Command.js +27 -16
  36. package/lib/module/command/Command.js.map +1 -1
  37. package/lib/module/command/index.js +2 -2
  38. package/lib/module/command/index.js.map +1 -1
  39. package/lib/module/command/index.web.js +2 -2
  40. package/lib/module/command/index.web.js.map +1 -1
  41. package/lib/module/dialog/Dialog.js +42 -155
  42. package/lib/module/dialog/Dialog.js.map +1 -1
  43. package/lib/module/dialog/Dialog.web.js +63 -198
  44. package/lib/module/dialog/Dialog.web.js.map +1 -1
  45. package/lib/module/dialog/DialogBottomSheet.js +200 -0
  46. package/lib/module/dialog/DialogBottomSheet.js.map +1 -0
  47. package/lib/module/dialog/DialogContent.js +148 -0
  48. package/lib/module/dialog/DialogContent.js.map +1 -0
  49. package/lib/module/dialog/index.js +0 -1
  50. package/lib/module/dialog/index.js.map +1 -1
  51. package/lib/module/dialog/index.web.js +0 -1
  52. package/lib/module/dialog/index.web.js.map +1 -1
  53. package/lib/module/index.js +1 -3
  54. package/lib/module/index.js.map +1 -1
  55. package/lib/module/index.web.js +1 -3
  56. package/lib/module/index.web.js.map +1 -1
  57. package/lib/typescript/commonjs/alert-dialog/AlertDialog.d.ts +13 -12
  58. package/lib/typescript/commonjs/alert-dialog/AlertDialog.d.ts.map +1 -1
  59. package/lib/typescript/commonjs/alert-dialog/index.d.ts.map +1 -1
  60. package/lib/typescript/commonjs/alert-dialog/index.web.d.ts.map +1 -1
  61. package/lib/typescript/commonjs/command/Command.d.ts +8 -8
  62. package/lib/typescript/commonjs/command/Command.d.ts.map +1 -1
  63. package/lib/typescript/commonjs/command/index.d.ts.map +1 -1
  64. package/lib/typescript/commonjs/command/index.web.d.ts.map +1 -1
  65. package/lib/typescript/commonjs/dialog/Dialog.d.ts +2 -3
  66. package/lib/typescript/commonjs/dialog/Dialog.d.ts.map +1 -1
  67. package/lib/typescript/commonjs/dialog/Dialog.web.d.ts +11 -8
  68. package/lib/typescript/commonjs/dialog/Dialog.web.d.ts.map +1 -1
  69. package/lib/typescript/commonjs/dialog/DialogBottomSheet.d.ts +29 -0
  70. package/lib/typescript/commonjs/dialog/DialogBottomSheet.d.ts.map +1 -0
  71. package/lib/typescript/commonjs/dialog/DialogContent.d.ts +32 -0
  72. package/lib/typescript/commonjs/dialog/DialogContent.d.ts.map +1 -0
  73. package/lib/typescript/commonjs/dialog/index.d.ts +0 -2
  74. package/lib/typescript/commonjs/dialog/index.d.ts.map +1 -1
  75. package/lib/typescript/commonjs/dialog/index.web.d.ts +0 -2
  76. package/lib/typescript/commonjs/dialog/index.web.d.ts.map +1 -1
  77. package/lib/typescript/commonjs/index.d.ts +2 -4
  78. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  79. package/lib/typescript/commonjs/index.web.d.ts +2 -4
  80. package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
  81. package/lib/typescript/module/alert-dialog/AlertDialog.d.ts +13 -12
  82. package/lib/typescript/module/alert-dialog/AlertDialog.d.ts.map +1 -1
  83. package/lib/typescript/module/alert-dialog/index.d.ts.map +1 -1
  84. package/lib/typescript/module/alert-dialog/index.web.d.ts.map +1 -1
  85. package/lib/typescript/module/command/Command.d.ts +8 -8
  86. package/lib/typescript/module/command/Command.d.ts.map +1 -1
  87. package/lib/typescript/module/command/index.d.ts.map +1 -1
  88. package/lib/typescript/module/command/index.web.d.ts.map +1 -1
  89. package/lib/typescript/module/dialog/Dialog.d.ts +2 -3
  90. package/lib/typescript/module/dialog/Dialog.d.ts.map +1 -1
  91. package/lib/typescript/module/dialog/Dialog.web.d.ts +11 -8
  92. package/lib/typescript/module/dialog/Dialog.web.d.ts.map +1 -1
  93. package/lib/typescript/module/dialog/DialogBottomSheet.d.ts +29 -0
  94. package/lib/typescript/module/dialog/DialogBottomSheet.d.ts.map +1 -0
  95. package/lib/typescript/module/dialog/DialogContent.d.ts +32 -0
  96. package/lib/typescript/module/dialog/DialogContent.d.ts.map +1 -0
  97. package/lib/typescript/module/dialog/index.d.ts +0 -2
  98. package/lib/typescript/module/dialog/index.d.ts.map +1 -1
  99. package/lib/typescript/module/dialog/index.web.d.ts +0 -2
  100. package/lib/typescript/module/dialog/index.web.d.ts.map +1 -1
  101. package/lib/typescript/module/index.d.ts +2 -4
  102. package/lib/typescript/module/index.d.ts.map +1 -1
  103. package/lib/typescript/module/index.web.d.ts +2 -4
  104. package/lib/typescript/module/index.web.d.ts.map +1 -1
  105. package/package.json +1 -18
  106. package/src/__tests__/AlertDialog.test.tsx +122 -0
  107. package/src/__tests__/BottomSheetGesture.test.tsx +135 -0
  108. package/src/__tests__/Command.test.tsx +107 -0
  109. package/src/__tests__/DialogBottomSheet.test.tsx +130 -0
  110. package/src/alert-dialog/AlertDialog.tsx +46 -36
  111. package/src/alert-dialog/index.ts +2 -2
  112. package/src/alert-dialog/index.web.ts +2 -2
  113. package/src/command/Command.tsx +30 -19
  114. package/src/command/index.ts +2 -2
  115. package/src/command/index.web.ts +2 -2
  116. package/src/dialog/Dialog.tsx +35 -168
  117. package/src/dialog/Dialog.web.tsx +52 -209
  118. package/src/dialog/DialogBottomSheet.tsx +235 -0
  119. package/src/dialog/DialogContent.tsx +157 -0
  120. package/src/dialog/index.ts +0 -2
  121. package/src/dialog/index.web.ts +0 -6
  122. package/src/index.ts +0 -11
  123. package/src/index.web.ts +0 -11
  124. package/lib/commonjs/dialog/CenteredDialog.js +0 -252
  125. package/lib/commonjs/dialog/CenteredDialog.js.map +0 -1
  126. package/lib/commonjs/dialog/CenteredDialog.web.js +0 -330
  127. package/lib/commonjs/dialog/CenteredDialog.web.js.map +0 -1
  128. package/lib/commonjs/dialog/centered-dialog-tokens.js +0 -62
  129. package/lib/commonjs/dialog/centered-dialog-tokens.js.map +0 -1
  130. package/lib/commonjs/dialog/centered-dialog-types.js +0 -6
  131. package/lib/commonjs/dialog/centered-dialog-types.js.map +0 -1
  132. package/lib/commonjs/responsive-sheet/ResponsiveSheet.js +0 -97
  133. package/lib/commonjs/responsive-sheet/ResponsiveSheet.js.map +0 -1
  134. package/lib/commonjs/responsive-sheet/ResponsiveSheet.web.js +0 -84
  135. package/lib/commonjs/responsive-sheet/ResponsiveSheet.web.js.map +0 -1
  136. package/lib/commonjs/responsive-sheet/index.js +0 -19
  137. package/lib/commonjs/responsive-sheet/index.js.map +0 -1
  138. package/lib/commonjs/responsive-sheet/index.web.js +0 -19
  139. package/lib/commonjs/responsive-sheet/index.web.js.map +0 -1
  140. package/lib/commonjs/responsive-sheet/types.js +0 -6
  141. package/lib/commonjs/responsive-sheet/types.js.map +0 -1
  142. package/lib/module/dialog/CenteredDialog.js +0 -246
  143. package/lib/module/dialog/CenteredDialog.js.map +0 -1
  144. package/lib/module/dialog/CenteredDialog.web.js +0 -324
  145. package/lib/module/dialog/CenteredDialog.web.js.map +0 -1
  146. package/lib/module/dialog/centered-dialog-tokens.js +0 -58
  147. package/lib/module/dialog/centered-dialog-tokens.js.map +0 -1
  148. package/lib/module/dialog/centered-dialog-types.js +0 -4
  149. package/lib/module/dialog/centered-dialog-types.js.map +0 -1
  150. package/lib/module/responsive-sheet/ResponsiveSheet.js +0 -90
  151. package/lib/module/responsive-sheet/ResponsiveSheet.js.map +0 -1
  152. package/lib/module/responsive-sheet/ResponsiveSheet.web.js +0 -77
  153. package/lib/module/responsive-sheet/ResponsiveSheet.web.js.map +0 -1
  154. package/lib/module/responsive-sheet/index.js +0 -4
  155. package/lib/module/responsive-sheet/index.js.map +0 -1
  156. package/lib/module/responsive-sheet/index.web.js +0 -12
  157. package/lib/module/responsive-sheet/index.web.js.map +0 -1
  158. package/lib/module/responsive-sheet/types.js +0 -4
  159. package/lib/module/responsive-sheet/types.js.map +0 -1
  160. package/lib/typescript/commonjs/dialog/CenteredDialog.d.ts +0 -22
  161. package/lib/typescript/commonjs/dialog/CenteredDialog.d.ts.map +0 -1
  162. package/lib/typescript/commonjs/dialog/CenteredDialog.web.d.ts +0 -31
  163. package/lib/typescript/commonjs/dialog/CenteredDialog.web.d.ts.map +0 -1
  164. package/lib/typescript/commonjs/dialog/centered-dialog-tokens.d.ts +0 -47
  165. package/lib/typescript/commonjs/dialog/centered-dialog-tokens.d.ts.map +0 -1
  166. package/lib/typescript/commonjs/dialog/centered-dialog-types.d.ts +0 -74
  167. package/lib/typescript/commonjs/dialog/centered-dialog-types.d.ts.map +0 -1
  168. package/lib/typescript/commonjs/responsive-sheet/ResponsiveSheet.d.ts +0 -22
  169. package/lib/typescript/commonjs/responsive-sheet/ResponsiveSheet.d.ts.map +0 -1
  170. package/lib/typescript/commonjs/responsive-sheet/ResponsiveSheet.web.d.ts +0 -16
  171. package/lib/typescript/commonjs/responsive-sheet/ResponsiveSheet.web.d.ts.map +0 -1
  172. package/lib/typescript/commonjs/responsive-sheet/index.d.ts +0 -3
  173. package/lib/typescript/commonjs/responsive-sheet/index.d.ts.map +0 -1
  174. package/lib/typescript/commonjs/responsive-sheet/index.web.d.ts +0 -3
  175. package/lib/typescript/commonjs/responsive-sheet/index.web.d.ts.map +0 -1
  176. package/lib/typescript/commonjs/responsive-sheet/types.d.ts +0 -58
  177. package/lib/typescript/commonjs/responsive-sheet/types.d.ts.map +0 -1
  178. package/lib/typescript/module/dialog/CenteredDialog.d.ts +0 -22
  179. package/lib/typescript/module/dialog/CenteredDialog.d.ts.map +0 -1
  180. package/lib/typescript/module/dialog/CenteredDialog.web.d.ts +0 -31
  181. package/lib/typescript/module/dialog/CenteredDialog.web.d.ts.map +0 -1
  182. package/lib/typescript/module/dialog/centered-dialog-tokens.d.ts +0 -47
  183. package/lib/typescript/module/dialog/centered-dialog-tokens.d.ts.map +0 -1
  184. package/lib/typescript/module/dialog/centered-dialog-types.d.ts +0 -74
  185. package/lib/typescript/module/dialog/centered-dialog-types.d.ts.map +0 -1
  186. package/lib/typescript/module/responsive-sheet/ResponsiveSheet.d.ts +0 -22
  187. package/lib/typescript/module/responsive-sheet/ResponsiveSheet.d.ts.map +0 -1
  188. package/lib/typescript/module/responsive-sheet/ResponsiveSheet.web.d.ts +0 -16
  189. package/lib/typescript/module/responsive-sheet/ResponsiveSheet.web.d.ts.map +0 -1
  190. package/lib/typescript/module/responsive-sheet/index.d.ts +0 -3
  191. package/lib/typescript/module/responsive-sheet/index.d.ts.map +0 -1
  192. package/lib/typescript/module/responsive-sheet/index.web.d.ts +0 -3
  193. package/lib/typescript/module/responsive-sheet/index.web.d.ts.map +0 -1
  194. package/lib/typescript/module/responsive-sheet/types.d.ts +0 -58
  195. package/lib/typescript/module/responsive-sheet/types.d.ts.map +0 -1
  196. package/src/__tests__/CenteredDialog.test.tsx +0 -108
  197. package/src/__tests__/ResponsiveSheet.test.tsx +0 -88
  198. package/src/dialog/CenteredDialog.stories.tsx +0 -125
  199. package/src/dialog/CenteredDialog.tsx +0 -305
  200. package/src/dialog/CenteredDialog.web.tsx +0 -374
  201. package/src/dialog/centered-dialog-tokens.ts +0 -68
  202. package/src/dialog/centered-dialog-types.ts +0 -74
  203. package/src/responsive-sheet/ResponsiveSheet.stories.tsx +0 -54
  204. package/src/responsive-sheet/ResponsiveSheet.tsx +0 -88
  205. package/src/responsive-sheet/ResponsiveSheet.web.tsx +0 -76
  206. package/src/responsive-sheet/index.ts +0 -6
  207. package/src/responsive-sheet/index.web.ts +0 -14
  208. package/src/responsive-sheet/types.ts +0 -60
@@ -1 +0,0 @@
1
- {"version":3,"names":["borderRadius","space","DEFAULT_MAX_WIDTH","MAX_HEIGHT_FRACTION","CARD_RADIUS","lg","VIEWPORT_GUTTER","COMPACT_SPACING","pad","md","headerGap","sm","footerGap","contentGap","COZY_SPACING","xl","resolveSpacing","compact"],"sourceRoot":"../../../src","sources":["dialog/centered-dialog-tokens.ts"],"mappings":";;AAAA,SAASA,YAAY,EAAEC,KAAK,QAAQ,qBAAkB;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,OAAO,MAAMC,iBAAiB,GAAG,GAAG;;AAEpC;AACA,OAAO,MAAMC,mBAAmB,GAAG,GAAG;;AAEtC;AACA,OAAO,MAAMC,WAAW,GAAGJ,YAAY,CAACK,EAAE;;AAE1C;AACA,OAAO,MAAMC,eAAe,GAAGL,KAAK,CAACI,EAAE;AAavC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAME,eAA8B,GAAG;EAC5CC,GAAG,EAAEP,KAAK,CAACQ,EAAE;EACbC,SAAS,EAAET,KAAK,CAACU,EAAE;EACnBC,SAAS,EAAEX,KAAK,CAACQ,EAAE;EACnBI,UAAU,EAAEZ,KAAK,CAACU;AACpB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMG,YAA2B,GAAG;EACzCN,GAAG,EAAEP,KAAK,CAACc,EAAE;EACbL,SAAS,EAAET,KAAK,CAACQ,EAAE;EACnBG,SAAS,EAAEX,KAAK,CAACI,EAAE;EACnBQ,UAAU,EAAEZ,KAAK,CAACQ;AACpB,CAAC;AAED,OAAO,SAASO,cAAcA,CAACC,OAAgB,EAAiB;EAC9D,OAAOA,OAAO,GAAGV,eAAe,GAAGO,YAAY;AACjD","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- "use strict";
2
-
3
- export {};
4
- //# sourceMappingURL=centered-dialog-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["dialog/centered-dialog-types.ts"],"mappings":"","ignoreList":[]}
@@ -1,90 +0,0 @@
1
- "use strict";
2
-
3
- import React from 'react';
4
- import { Dialog } from '../dialog';
5
- import { BREAKPOINT_LG, BREAKPOINT_MD, BREAKPOINT_SM, BREAKPOINT_XL, DIALOG_SHEET_BACKDROP_TESTID } from "../dialog/placement.js";
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- /**
8
- * @deprecated Use `<Dialog placement={{ base: 'bottom', md: 'left' }}>` instead.
9
- *
10
- * `ResponsiveSheet` is now a thin wrapper that configures the canonical
11
- * `<Dialog>` — an anchored side-sheet on wide screens collapsing to a
12
- * bottom-sheet below the breakpoint. It holds ZERO motion/layout logic of its
13
- * own; it maps its props onto a responsive `Dialog` `placement`. The
14
- * `@oxyhq/bloom/responsive-sheet` subpath is retained for the migration window.
15
- *
16
- * This file is BOTH the package default entry (resolved by downstream `tsc`
17
- * and non-Metro web bundlers via the `browser` condition through `index.web`)
18
- * AND a clean delegation, so it carries no platform-specific imports.
19
- */
20
- export function ResponsiveSheet({
21
- open,
22
- onClose,
23
- side = 'left',
24
- breakpoint = BREAKPOINT_MD,
25
- width,
26
- maxHeightRatio,
27
- inset,
28
- showHandle,
29
- dismissOnBackdrop,
30
- panelStyle,
31
- panelClassName,
32
- containerStyle,
33
- containerClassName,
34
- label,
35
- children
36
- }) {
37
- return /*#__PURE__*/_jsx(Dialog, {
38
- open: open,
39
- onClose: onClose,
40
- placement: placementForSide(side, breakpoint),
41
- width: width,
42
- maxHeightRatio: maxHeightRatio,
43
- inset: inset,
44
- showHandle: showHandle,
45
- dismissOnBackdrop: dismissOnBackdrop,
46
- panelStyle: panelStyle,
47
- panelClassName: panelClassName,
48
- containerStyle: containerStyle,
49
- containerClassName: containerClassName,
50
- label: label,
51
- children: children
52
- });
53
- }
54
-
55
- /**
56
- * Build the `Dialog` `placement` map for a `ResponsiveSheet`: a bottom-sheet
57
- * below `breakpoint`, the anchored `side` at and above it. The `breakpoint`
58
- * (px) is bucketed to the nearest Tailwind key so the side-sheet engages at the
59
- * matching width.
60
- */
61
- function placementForSide(side, breakpoint) {
62
- if (breakpoint <= BREAKPOINT_SM) return {
63
- base: 'bottom',
64
- sm: side
65
- };
66
- if (breakpoint <= BREAKPOINT_MD) return {
67
- base: 'bottom',
68
- md: side
69
- };
70
- if (breakpoint <= BREAKPOINT_LG) return {
71
- base: 'bottom',
72
- lg: side
73
- };
74
- if (breakpoint <= BREAKPOINT_XL) return {
75
- base: 'bottom',
76
- xl: side
77
- };
78
- return {
79
- base: 'bottom',
80
- xl: side
81
- };
82
- }
83
-
84
- /**
85
- * @deprecated Stable testID for the dimmed backdrop dismiss button — now
86
- * provided by the underlying `<Dialog>`'s side/bottom backdrop.
87
- */
88
- export const RESPONSIVE_SHEET_BACKDROP_TESTID = DIALOG_SHEET_BACKDROP_TESTID;
89
- export default ResponsiveSheet;
90
- //# sourceMappingURL=ResponsiveSheet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Dialog","BREAKPOINT_LG","BREAKPOINT_MD","BREAKPOINT_SM","BREAKPOINT_XL","DIALOG_SHEET_BACKDROP_TESTID","jsx","_jsx","ResponsiveSheet","open","onClose","side","breakpoint","width","maxHeightRatio","inset","showHandle","dismissOnBackdrop","panelStyle","panelClassName","containerStyle","containerClassName","label","children","placement","placementForSide","base","sm","md","lg","xl","RESPONSIVE_SHEET_BACKDROP_TESTID"],"sourceRoot":"../../../src","sources":["responsive-sheet/ResponsiveSheet.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,MAAM,QAAQ,WAAW;AAClC,SACEC,aAAa,EACbC,aAAa,EACbC,aAAa,EACbC,aAAa,EACbC,4BAA4B,QAEvB,wBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAAC;EAC9BC,IAAI;EACJC,OAAO;EACPC,IAAI,GAAG,MAAM;EACbC,UAAU,GAAGV,aAAa;EAC1BW,KAAK;EACLC,cAAc;EACdC,KAAK;EACLC,UAAU;EACVC,iBAAiB;EACjBC,UAAU;EACVC,cAAc;EACdC,cAAc;EACdC,kBAAkB;EAClBC,KAAK;EACLC;AACoB,CAAC,EAAE;EACvB,oBACEhB,IAAA,CAACP,MAAM;IACLS,IAAI,EAAEA,IAAK;IACXC,OAAO,EAAEA,OAAQ;IACjBc,SAAS,EAAEC,gBAAgB,CAACd,IAAI,EAAEC,UAAU,CAAE;IAC9CC,KAAK,EAAEA,KAAM;IACbC,cAAc,EAAEA,cAAe;IAC/BC,KAAK,EAAEA,KAAM;IACbC,UAAU,EAAEA,UAAW;IACvBC,iBAAiB,EAAEA,iBAAkB;IACrCC,UAAU,EAAEA,UAAW;IACvBC,cAAc,EAAEA,cAAe;IAC/BC,cAAc,EAAEA,cAAe;IAC/BC,kBAAkB,EAAEA,kBAAmB;IACvCC,KAAK,EAAEA,KAAM;IAAAC,QAAA,EAEZA;EAAQ,CACH,CAAC;AAEb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,gBAAgBA,CACvBd,IAAsB,EACtBC,UAAkB,EACS;EAC3B,IAAIA,UAAU,IAAIT,aAAa,EAAE,OAAO;IAAEuB,IAAI,EAAE,QAAQ;IAAEC,EAAE,EAAEhB;EAAK,CAAC;EACpE,IAAIC,UAAU,IAAIV,aAAa,EAAE,OAAO;IAAEwB,IAAI,EAAE,QAAQ;IAAEE,EAAE,EAAEjB;EAAK,CAAC;EACpE,IAAIC,UAAU,IAAIX,aAAa,EAAE,OAAO;IAAEyB,IAAI,EAAE,QAAQ;IAAEG,EAAE,EAAElB;EAAK,CAAC;EACpE,IAAIC,UAAU,IAAIR,aAAa,EAAE,OAAO;IAAEsB,IAAI,EAAE,QAAQ;IAAEI,EAAE,EAAEnB;EAAK,CAAC;EACpE,OAAO;IAAEe,IAAI,EAAE,QAAQ;IAAEI,EAAE,EAAEnB;EAAK,CAAC;AACrC;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMoB,gCAAgC,GAAG1B,4BAA4B;AAE5E,eAAeG,eAAe","ignoreList":[]}
@@ -1,77 +0,0 @@
1
- "use strict";
2
-
3
- import React from 'react';
4
- import { Dialog } from "../dialog/index.web.js";
5
- import { BREAKPOINT_LG, BREAKPOINT_MD, BREAKPOINT_SM, BREAKPOINT_XL, DIALOG_SHEET_BACKDROP_TESTID } from "../dialog/placement.js";
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- /**
8
- * @deprecated Use `<Dialog placement={{ base: 'bottom', md: 'left' }}>` instead.
9
- *
10
- * Web fork of the deprecated `ResponsiveSheet` wrapper. Identical delegation to
11
- * the default fork, but imports the web `Dialog` explicitly so non-Metro web
12
- * bundlers never follow the native (reanimated) `Dialog` sibling.
13
- */
14
- export function ResponsiveSheet({
15
- open,
16
- onClose,
17
- side = 'left',
18
- breakpoint = BREAKPOINT_MD,
19
- width,
20
- maxHeightRatio,
21
- inset,
22
- showHandle,
23
- dismissOnBackdrop,
24
- panelStyle,
25
- panelClassName,
26
- containerStyle,
27
- containerClassName,
28
- label,
29
- children
30
- }) {
31
- return /*#__PURE__*/_jsx(Dialog, {
32
- open: open,
33
- onClose: onClose,
34
- placement: placementForSide(side, breakpoint),
35
- width: width,
36
- maxHeightRatio: maxHeightRatio,
37
- inset: inset,
38
- showHandle: showHandle,
39
- dismissOnBackdrop: dismissOnBackdrop,
40
- panelStyle: panelStyle,
41
- panelClassName: panelClassName,
42
- containerStyle: containerStyle,
43
- containerClassName: containerClassName,
44
- label: label,
45
- children: children
46
- });
47
- }
48
- function placementForSide(side, breakpoint) {
49
- if (breakpoint <= BREAKPOINT_SM) return {
50
- base: 'bottom',
51
- sm: side
52
- };
53
- if (breakpoint <= BREAKPOINT_MD) return {
54
- base: 'bottom',
55
- md: side
56
- };
57
- if (breakpoint <= BREAKPOINT_LG) return {
58
- base: 'bottom',
59
- lg: side
60
- };
61
- if (breakpoint <= BREAKPOINT_XL) return {
62
- base: 'bottom',
63
- xl: side
64
- };
65
- return {
66
- base: 'bottom',
67
- xl: side
68
- };
69
- }
70
-
71
- /**
72
- * @deprecated Stable testID for the dimmed backdrop dismiss button — now
73
- * provided by the underlying `<Dialog>`'s side/bottom backdrop.
74
- */
75
- export const RESPONSIVE_SHEET_BACKDROP_TESTID = DIALOG_SHEET_BACKDROP_TESTID;
76
- export default ResponsiveSheet;
77
- //# sourceMappingURL=ResponsiveSheet.web.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","Dialog","BREAKPOINT_LG","BREAKPOINT_MD","BREAKPOINT_SM","BREAKPOINT_XL","DIALOG_SHEET_BACKDROP_TESTID","jsx","_jsx","ResponsiveSheet","open","onClose","side","breakpoint","width","maxHeightRatio","inset","showHandle","dismissOnBackdrop","panelStyle","panelClassName","containerStyle","containerClassName","label","children","placement","placementForSide","base","sm","md","lg","xl","RESPONSIVE_SHEET_BACKDROP_TESTID"],"sourceRoot":"../../../src","sources":["responsive-sheet/ResponsiveSheet.web.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,MAAM,QAAQ,wBAAqB;AAC5C,SACEC,aAAa,EACbC,aAAa,EACbC,aAAa,EACbC,aAAa,EACbC,4BAA4B,QAEvB,wBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAAC;EAC9BC,IAAI;EACJC,OAAO;EACPC,IAAI,GAAG,MAAM;EACbC,UAAU,GAAGV,aAAa;EAC1BW,KAAK;EACLC,cAAc;EACdC,KAAK;EACLC,UAAU;EACVC,iBAAiB;EACjBC,UAAU;EACVC,cAAc;EACdC,cAAc;EACdC,kBAAkB;EAClBC,KAAK;EACLC;AACoB,CAAC,EAAE;EACvB,oBACEhB,IAAA,CAACP,MAAM;IACLS,IAAI,EAAEA,IAAK;IACXC,OAAO,EAAEA,OAAQ;IACjBc,SAAS,EAAEC,gBAAgB,CAACd,IAAI,EAAEC,UAAU,CAAE;IAC9CC,KAAK,EAAEA,KAAM;IACbC,cAAc,EAAEA,cAAe;IAC/BC,KAAK,EAAEA,KAAM;IACbC,UAAU,EAAEA,UAAW;IACvBC,iBAAiB,EAAEA,iBAAkB;IACrCC,UAAU,EAAEA,UAAW;IACvBC,cAAc,EAAEA,cAAe;IAC/BC,cAAc,EAAEA,cAAe;IAC/BC,kBAAkB,EAAEA,kBAAmB;IACvCC,KAAK,EAAEA,KAAM;IAAAC,QAAA,EAEZA;EAAQ,CACH,CAAC;AAEb;AAEA,SAASE,gBAAgBA,CACvBd,IAAsB,EACtBC,UAAkB,EACS;EAC3B,IAAIA,UAAU,IAAIT,aAAa,EAAE,OAAO;IAAEuB,IAAI,EAAE,QAAQ;IAAEC,EAAE,EAAEhB;EAAK,CAAC;EACpE,IAAIC,UAAU,IAAIV,aAAa,EAAE,OAAO;IAAEwB,IAAI,EAAE,QAAQ;IAAEE,EAAE,EAAEjB;EAAK,CAAC;EACpE,IAAIC,UAAU,IAAIX,aAAa,EAAE,OAAO;IAAEyB,IAAI,EAAE,QAAQ;IAAEG,EAAE,EAAElB;EAAK,CAAC;EACpE,IAAIC,UAAU,IAAIR,aAAa,EAAE,OAAO;IAAEsB,IAAI,EAAE,QAAQ;IAAEI,EAAE,EAAEnB;EAAK,CAAC;EACpE,OAAO;IAAEe,IAAI,EAAE,QAAQ;IAAEI,EAAE,EAAEnB;EAAK,CAAC;AACrC;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMoB,gCAAgC,GAAG1B,4BAA4B;AAE5E,eAAeG,eAAe","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- "use strict";
2
-
3
- export { ResponsiveSheet, RESPONSIVE_SHEET_BACKDROP_TESTID } from './ResponsiveSheet';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["ResponsiveSheet","RESPONSIVE_SHEET_BACKDROP_TESTID"],"sourceRoot":"../../../src","sources":["responsive-sheet/index.ts"],"mappings":";;AAAA,SAASA,eAAe,EAAEC,gCAAgC,QAAQ,mBAAmB","ignoreList":[]}
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- // Web variant of the `./responsive-sheet` barrel.
4
- //
5
- // `ResponsiveSheet` is now a deprecated thin wrapper over `<Dialog>`. The
6
- // default barrel (`./index.ts`) imports the default `Dialog`; THIS web barrel
7
- // re-exports from `./ResponsiveSheet.web`, which imports the web `Dialog`
8
- // explicitly so a non-Metro bundler never follows the native (reanimated)
9
- // `Dialog` sibling. Web bundlers select this file via the `"browser"` export
10
- // condition in `package.json`'s `exports['./responsive-sheet']`.
11
- export { ResponsiveSheet, RESPONSIVE_SHEET_BACKDROP_TESTID } from "./ResponsiveSheet.web.js";
12
- //# sourceMappingURL=index.web.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["ResponsiveSheet","RESPONSIVE_SHEET_BACKDROP_TESTID"],"sourceRoot":"../../../src","sources":["responsive-sheet/index.web.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,eAAe,EAAEC,gCAAgC,QAAQ,0BAAuB","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- "use strict";
2
-
3
- export {};
4
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["responsive-sheet/types.ts"],"mappings":"","ignoreList":[]}
@@ -1,22 +0,0 @@
1
- import type { CenteredDialogProps } from './centered-dialog-types';
2
- /** Stable testID for the dimmed backdrop. Overridden when a `testID` is set. */
3
- export declare const CENTERED_DIALOG_BACKDROP_TESTID = "bloom-centered-dialog-backdrop";
4
- /**
5
- * @deprecated Use `<Dialog placement="center">` instead.
6
- *
7
- * Native variant of `<CenteredDialog>`.
8
- *
9
- * A controlled, centered modal: a transparent RN `Modal` (fade animation,
10
- * own native window) hosting a dimmed full-screen backdrop and a centered,
11
- * rounded card styled entirely from Bloom theme tokens.
12
- *
13
- * The backdrop is a sibling `Pressable` rendered BEHIND the card (absolute
14
- * filled), never a parent of it — so a tap on the card never bubbles to the
15
- * backdrop's close handler and the card never ends up nested inside the
16
- * backdrop's pressable on web.
17
- *
18
- * Dismissal: backdrop tap (when `dismissible`), the header close button, and
19
- * the Android hardware back button (`onRequestClose`) all call `onClose`.
20
- */
21
- export declare function CenteredDialog({ visible, onClose, title, dismissible, maxWidth, compact, showClose, children, footer, accessibilityLabel, closeAccessibilityLabel, backdropAccessibilityLabel, cardStyle, contentStyle, testID, }: CenteredDialogProps): import("react/jsx-runtime").JSX.Element;
22
- //# sourceMappingURL=CenteredDialog.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CenteredDialog.d.ts","sourceRoot":"","sources":["../../../../src/dialog/CenteredDialog.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAWnE,gFAAgF;AAChF,eAAO,MAAM,+BAA+B,mCAAmC,CAAC;AAEhF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,OAAO,EACP,KAAK,EACL,WAAkB,EAClB,QAA4B,EAC5B,OAAc,EACd,SAAS,EACT,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,uBAAwC,EACxC,0BAA6C,EAC7C,SAAS,EACT,YAAY,EACZ,MAAM,GACP,EAAE,mBAAmB,2CAsGrB"}
@@ -1,31 +0,0 @@
1
- import type { CenteredDialogProps } from './centered-dialog-types';
2
- /** Stable testID for the dimmed backdrop. Overridden when a `testID` is set. */
3
- export declare const CENTERED_DIALOG_BACKDROP_TESTID = "bloom-centered-dialog-backdrop";
4
- /**
5
- * @deprecated Use `<Dialog placement="center">` instead.
6
- *
7
- * Web variant of `<CenteredDialog>`.
8
- *
9
- * A centered modal card rendered into the Bloom Portal at the end of
10
- * `document.body`. Identical prop surface to native — `visible`, `onClose`,
11
- * `title`, `compact`, etc. — so call sites are platform agnostic.
12
- *
13
- * Differences from the native fork (necessary, not behavioural):
14
- * - Portal + `RemoveScrollBar` lock the underlying page while open.
15
- * - `Escape` dismisses (when `dismissible`).
16
- * - A `role="dialog"` panel with `aria-label`/`aria-modal` for a11y.
17
- * - A CSS fade/zoom keyframe matches the native modal's `fade` animation;
18
- * the keyframes are injected once (idempotent) into `<head>`.
19
- *
20
- * The backdrop is a sibling element BEHIND the card, and the card stops
21
- * click/press propagation so a tap on the card never dismisses.
22
- */
23
- export declare function CenteredDialog({ visible, onClose, title, dismissible, maxWidth, compact, showClose, children, footer, accessibilityLabel, closeAccessibilityLabel, backdropAccessibilityLabel, cardStyle, contentStyle, testID, }: CenteredDialogProps): import("react/jsx-runtime").JSX.Element | null;
24
- /**
25
- * CSS keyframes powering the web enter/exit animation. Injected once into
26
- * `<head>` on first mount (keyed by id so re-mounts and multiple dialogs
27
- * don't duplicate the rule). Mirrors the native modal's `fade` feel with a
28
- * subtle zoom on the card.
29
- */
30
- export declare const BLOOM_CENTERED_DIALOG_CSS = "\n@keyframes bloomCenteredDialogFadeIn { from { opacity: 0; } to { opacity: 1; } }\n@keyframes bloomCenteredDialogFadeOut { from { opacity: 1; } to { opacity: 0; } }\n@keyframes bloomCenteredDialogZoomIn { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: scale(1); } }\n@keyframes bloomCenteredDialogZoomOut { from { opacity: 1; transform: scale(1); } to { opacity: 0; transform: scale(0.96); } }\n";
31
- //# sourceMappingURL=CenteredDialog.web.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CenteredDialog.web.d.ts","sourceRoot":"","sources":["../../../../src/dialog/CenteredDialog.web.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAanE,gFAAgF;AAChF,eAAO,MAAM,+BAA+B,mCAAmC,CAAC;AAIhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,OAAO,EACP,KAAK,EACL,WAAkB,EAClB,QAA4B,EAC5B,OAAc,EACd,SAAS,EACT,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,uBAAwC,EACxC,0BAA6C,EAC7C,SAAS,EACT,YAAY,EACZ,MAAM,GACP,EAAE,mBAAmB,kDAoIrB;AA4FD;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,2aAKrC,CAAC"}
@@ -1,47 +0,0 @@
1
- /**
2
- * Shared layout constants for `<CenteredDialog>`, kept in one module so the
3
- * native and web forks render identically. All values are Bloom theme tokens
4
- * (`styles/tokens`) — no ad-hoc magic numbers.
5
- *
6
- * COMPACT is the priority: the `compact` spacing set is the default and is
7
- * deliberately tight (≈`space.md`), so the card reads snug out of the box.
8
- * The `cozy` set is the opt-out (`compact={false}`) for roomier dialogs.
9
- */
10
- /** Default max card width — comfortable for a compact dialog. */
11
- export declare const DEFAULT_MAX_WIDTH = 440;
12
- /** Card height is capped at this fraction of the viewport; body scrolls. */
13
- export declare const MAX_HEIGHT_FRACTION = 0.8;
14
- /** Card corner radius (token: `borderRadius.lg` = 16). */
15
- export declare const CARD_RADIUS: 16;
16
- /** Outer gutter between the card edge and the viewport edge (token `space.lg`). */
17
- export declare const VIEWPORT_GUTTER: 16;
18
- export type DialogSpacing = {
19
- /** Card inner padding (horizontal + vertical). */
20
- pad: number;
21
- /** Gap between the header title row and the body. */
22
- headerGap: number;
23
- /** Gap between the body and the footer. */
24
- footerGap: number;
25
- /** Vertical gap between stacked body items (the content container `gap`). */
26
- contentGap: number;
27
- };
28
- /**
29
- * Compact (default) — tight, snug spacing built on `space.md` (12).
30
- *
31
- * pad = space.md (12)
32
- * headerGap = space.sm (8)
33
- * footerGap = space.md (12)
34
- * contentGap = space.sm (8)
35
- */
36
- export declare const COMPACT_SPACING: DialogSpacing;
37
- /**
38
- * Cozy (`compact={false}`) — roomier spacing built on `space.xl` (20).
39
- *
40
- * pad = space.xl (20)
41
- * headerGap = space.md (12)
42
- * footerGap = space.lg (16)
43
- * contentGap = space.md (12)
44
- */
45
- export declare const COZY_SPACING: DialogSpacing;
46
- export declare function resolveSpacing(compact: boolean): DialogSpacing;
47
- //# sourceMappingURL=centered-dialog-tokens.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"centered-dialog-tokens.d.ts","sourceRoot":"","sources":["../../../../src/dialog/centered-dialog-tokens.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,iEAAiE;AACjE,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,0DAA0D;AAC1D,eAAO,MAAM,WAAW,IAAkB,CAAC;AAE3C,mFAAmF;AACnF,eAAO,MAAM,eAAe,IAAW,CAAC;AAExC,MAAM,MAAM,aAAa,GAAG;IAC1B,kDAAkD;IAClD,GAAG,EAAE,MAAM,CAAC;IACZ,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,aAK7B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,aAK1B,CAAC;AAEF,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAE9D"}
@@ -1,74 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import type { StyleProp, ViewStyle } from 'react-native';
3
- /**
4
- * @deprecated Use `<Dialog placement="center">` instead. `CenteredDialog` is
5
- * superseded by the centered placement of the canonical `<Dialog>` and is
6
- * slated for removal in a future major.
7
- *
8
- * Props for the declarative `<CenteredDialog>` primitive.
9
- *
10
- * This is the simple, controlled centered-modal surface — distinct from the
11
- * imperative `useDialogControl()` + `<Dialog control={…}>` API in the same
12
- * module. Reach for `<CenteredDialog>` when you already own the open/closed
13
- * boolean (a `useState`, a query flag, a route param) and just want Bloom to
14
- * render the dimmed backdrop + a snug, theme-styled centered card.
15
- *
16
- * All spacing/colour/radius come from Bloom theme tokens — the card reads
17
- * compact out of the box (`compact` defaults to `true`).
18
- */
19
- export type CenteredDialogProps = {
20
- /** Whether the dialog is mounted + visible. */
21
- visible: boolean;
22
- /**
23
- * Close request — fired on backdrop tap (when `dismissible`), the close
24
- * button, the hardware back button (Android), and `Escape` (web). The
25
- * caller owns the visible state, so it must flip `visible` to `false` here.
26
- */
27
- onClose: () => void;
28
- /**
29
- * Optional header title. When set (or when `showClose` is `true`) Bloom
30
- * renders a tight header row above the content.
31
- */
32
- title?: string;
33
- /**
34
- * Tap-outside / back-button / Escape dismisses the dialog. Defaults to
35
- * `true`. Set `false` for blocking flows (e.g. a destructive confirm that
36
- * must be answered via an explicit action).
37
- */
38
- dismissible?: boolean;
39
- /** Max card width in px. Defaults to {@link DEFAULT_MAX_WIDTH} (440). */
40
- maxWidth?: number;
41
- /**
42
- * Tight, snug spacing (the Bloom default). Set `false` for a roomier card
43
- * with larger padding and header/footer gaps. Defaults to `true`.
44
- */
45
- compact?: boolean;
46
- /**
47
- * Render a close (✕) icon button in the header. Defaults to `true` when a
48
- * `title` is provided, otherwise `false` (a chromeless card owns its own
49
- * dismissal affordances).
50
- */
51
- showClose?: boolean;
52
- /** Card body. Scrolls within the height cap when it overflows. */
53
- children?: ReactNode;
54
- /**
55
- * Optional footer slot for actions (e.g. a Bloom `<Button>` row). Rendered
56
- * below the scrollable body with a hairline separator.
57
- */
58
- footer?: ReactNode;
59
- /**
60
- * Accessibility label for the dialog surface. Falls back to `title` when
61
- * omitted.
62
- */
63
- accessibilityLabel?: string;
64
- /** Accessibility label for the header close (✕) button. */
65
- closeAccessibilityLabel?: string;
66
- /** Accessibility label for the dimmed backdrop's tap-to-dismiss affordance. */
67
- backdropAccessibilityLabel?: string;
68
- /** Style overrides merged onto the centered card container. */
69
- cardStyle?: StyleProp<ViewStyle>;
70
- /** Style overrides merged onto the scrollable content container. */
71
- contentStyle?: StyleProp<ViewStyle>;
72
- testID?: string;
73
- };
74
- //# sourceMappingURL=centered-dialog-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"centered-dialog-types.d.ts","sourceRoot":"","sources":["../../../../src/dialog/centered-dialog-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,+CAA+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,2DAA2D;IAC3D,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,+EAA+E;IAC/E,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,+DAA+D;IAC/D,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,oEAAoE;IACpE,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}
@@ -1,22 +0,0 @@
1
- import type { ResponsiveSheetProps } from './types';
2
- /**
3
- * @deprecated Use `<Dialog placement={{ base: 'bottom', md: 'left' }}>` instead.
4
- *
5
- * `ResponsiveSheet` is now a thin wrapper that configures the canonical
6
- * `<Dialog>` — an anchored side-sheet on wide screens collapsing to a
7
- * bottom-sheet below the breakpoint. It holds ZERO motion/layout logic of its
8
- * own; it maps its props onto a responsive `Dialog` `placement`. The
9
- * `@oxyhq/bloom/responsive-sheet` subpath is retained for the migration window.
10
- *
11
- * This file is BOTH the package default entry (resolved by downstream `tsc`
12
- * and non-Metro web bundlers via the `browser` condition through `index.web`)
13
- * AND a clean delegation, so it carries no platform-specific imports.
14
- */
15
- export declare function ResponsiveSheet({ open, onClose, side, breakpoint, width, maxHeightRatio, inset, showHandle, dismissOnBackdrop, panelStyle, panelClassName, containerStyle, containerClassName, label, children, }: ResponsiveSheetProps): import("react/jsx-runtime").JSX.Element;
16
- /**
17
- * @deprecated Stable testID for the dimmed backdrop dismiss button — now
18
- * provided by the underlying `<Dialog>`'s side/bottom backdrop.
19
- */
20
- export declare const RESPONSIVE_SHEET_BACKDROP_TESTID = "bloom-dialog-sheet-backdrop";
21
- export default ResponsiveSheet;
22
- //# sourceMappingURL=ResponsiveSheet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ResponsiveSheet.d.ts","sourceRoot":"","sources":["../../../../src/responsive-sheet/ResponsiveSheet.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EACJ,OAAO,EACP,IAAa,EACb,UAA0B,EAC1B,KAAK,EACL,cAAc,EACd,KAAK,EACL,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,QAAQ,GACT,EAAE,oBAAoB,2CAoBtB;AAmBD;;;GAGG;AACH,eAAO,MAAM,gCAAgC,gCAA+B,CAAC;AAE7E,eAAe,eAAe,CAAC"}
@@ -1,16 +0,0 @@
1
- import type { ResponsiveSheetProps } from './types';
2
- /**
3
- * @deprecated Use `<Dialog placement={{ base: 'bottom', md: 'left' }}>` instead.
4
- *
5
- * Web fork of the deprecated `ResponsiveSheet` wrapper. Identical delegation to
6
- * the default fork, but imports the web `Dialog` explicitly so non-Metro web
7
- * bundlers never follow the native (reanimated) `Dialog` sibling.
8
- */
9
- export declare function ResponsiveSheet({ open, onClose, side, breakpoint, width, maxHeightRatio, inset, showHandle, dismissOnBackdrop, panelStyle, panelClassName, containerStyle, containerClassName, label, children, }: ResponsiveSheetProps): import("react/jsx-runtime").JSX.Element;
10
- /**
11
- * @deprecated Stable testID for the dimmed backdrop dismiss button — now
12
- * provided by the underlying `<Dialog>`'s side/bottom backdrop.
13
- */
14
- export declare const RESPONSIVE_SHEET_BACKDROP_TESTID = "bloom-dialog-sheet-backdrop";
15
- export default ResponsiveSheet;
16
- //# sourceMappingURL=ResponsiveSheet.web.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ResponsiveSheet.web.d.ts","sourceRoot":"","sources":["../../../../src/responsive-sheet/ResponsiveSheet.web.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EACJ,OAAO,EACP,IAAa,EACb,UAA0B,EAC1B,KAAK,EACL,cAAc,EACd,KAAK,EACL,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,QAAQ,GACT,EAAE,oBAAoB,2CAoBtB;AAaD;;;GAGG;AACH,eAAO,MAAM,gCAAgC,gCAA+B,CAAC;AAE7E,eAAe,eAAe,CAAC"}
@@ -1,3 +0,0 @@
1
- export { ResponsiveSheet, RESPONSIVE_SHEET_BACKDROP_TESTID } from './ResponsiveSheet';
2
- export type { ResponsiveSheetProps, ResponsiveSheetSide, ResponsiveSheetInset, } from './types';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/responsive-sheet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AACtF,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,SAAS,CAAC"}
@@ -1,3 +0,0 @@
1
- export { ResponsiveSheet, RESPONSIVE_SHEET_BACKDROP_TESTID } from './ResponsiveSheet.web';
2
- export type { ResponsiveSheetProps, ResponsiveSheetSide, ResponsiveSheetInset, } from './types';
3
- //# sourceMappingURL=index.web.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../../src/responsive-sheet/index.web.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,gCAAgC,EAAE,MAAM,uBAAuB,CAAC;AAC1F,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,SAAS,CAAC"}
@@ -1,58 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import type { StyleProp, ViewStyle } from 'react-native';
3
- /** Edge a wide-screen side-sheet anchors to. */
4
- export type ResponsiveSheetSide = 'left' | 'right';
5
- /**
6
- * Inset (px) of the wide-screen side-sheet from its container edges. Lets a
7
- * host place the sheet "inside its own shell" — e.g. offset from the top by a
8
- * header, or from the left by a nav rail — with margins on every side.
9
- */
10
- export interface ResponsiveSheetInset {
11
- top?: number;
12
- bottom?: number;
13
- left?: number;
14
- right?: number;
15
- }
16
- /**
17
- * @deprecated Use `<Dialog placement={{ base: 'bottom', md: 'left' }}>` from
18
- * `@oxyhq/bloom/dialog` instead. `ResponsiveSheet` is now a thin wrapper over
19
- * `<Dialog>` retained for the migration window.
20
- *
21
- * A responsive overlay sheet: an anchored side-sheet on wide screens and a
22
- * bottom-sheet (with drag handle) on small screens, switching by viewport
23
- * width. It is a plain controlled component — the host drives `open`/`onClose`
24
- * from its own state.
25
- */
26
- export interface ResponsiveSheetProps {
27
- /** Whether the sheet is open. Controlled by the host. */
28
- open: boolean;
29
- /** Fired when the sheet requests to close (backdrop tap, Escape on web). */
30
- onClose: () => void;
31
- /** Anchor edge on wide screens. Defaults to `'left'`. */
32
- side?: ResponsiveSheetSide;
33
- /** Viewport width (px) below which the sheet renders as a bottom-sheet. Defaults to `768`. */
34
- breakpoint?: number;
35
- /** Side-sheet width (px) on wide screens. Capped to fit. Defaults to `460`. */
36
- width?: number;
37
- /** Bottom-sheet max height as a fraction of the viewport height. Defaults to `0.9`. */
38
- maxHeightRatio?: number;
39
- /** Side-sheet inset (px) from the container edges. Defaults to `0` on all sides. */
40
- inset?: ResponsiveSheetInset;
41
- /** Whether to render the drag handle in bottom-sheet mode. Defaults to `true`. */
42
- showHandle?: boolean;
43
- /** Whether tapping the backdrop closes the sheet. Defaults to `true`. */
44
- dismissOnBackdrop?: boolean;
45
- /** Style for the panel surface (e.g. brand color). Composed after defaults. */
46
- panelStyle?: StyleProp<ViewStyle>;
47
- /** NativeWind classes for the panel surface. */
48
- panelClassName?: string;
49
- /** Style for the root overlay (theme-var scope, rail offset, etc.). */
50
- containerStyle?: StyleProp<ViewStyle>;
51
- /** NativeWind classes for the root overlay (e.g. `"md:left-[4.75rem]"`). */
52
- containerClassName?: string;
53
- /** Accessibility label for the sheet panel and the backdrop dismiss button. */
54
- label?: string;
55
- /** Sheet content. */
56
- children: ReactNode;
57
- }
58
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/responsive-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,gDAAgD;AAChD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,OAAO,CAAC;AAEnD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,yDAAyD;IACzD,IAAI,EAAE,OAAO,CAAC;IACd,4EAA4E;IAC5E,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,yDAAyD;IACzD,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,8FAA8F;IAC9F,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uFAAuF;IACvF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oFAAoF;IACpF,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,kFAAkF;IAClF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,+EAA+E;IAC/E,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,gDAAgD;IAChD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uEAAuE;IACvE,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,4EAA4E;IAC5E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB"}
@@ -1,22 +0,0 @@
1
- import type { CenteredDialogProps } from './centered-dialog-types';
2
- /** Stable testID for the dimmed backdrop. Overridden when a `testID` is set. */
3
- export declare const CENTERED_DIALOG_BACKDROP_TESTID = "bloom-centered-dialog-backdrop";
4
- /**
5
- * @deprecated Use `<Dialog placement="center">` instead.
6
- *
7
- * Native variant of `<CenteredDialog>`.
8
- *
9
- * A controlled, centered modal: a transparent RN `Modal` (fade animation,
10
- * own native window) hosting a dimmed full-screen backdrop and a centered,
11
- * rounded card styled entirely from Bloom theme tokens.
12
- *
13
- * The backdrop is a sibling `Pressable` rendered BEHIND the card (absolute
14
- * filled), never a parent of it — so a tap on the card never bubbles to the
15
- * backdrop's close handler and the card never ends up nested inside the
16
- * backdrop's pressable on web.
17
- *
18
- * Dismissal: backdrop tap (when `dismissible`), the header close button, and
19
- * the Android hardware back button (`onRequestClose`) all call `onClose`.
20
- */
21
- export declare function CenteredDialog({ visible, onClose, title, dismissible, maxWidth, compact, showClose, children, footer, accessibilityLabel, closeAccessibilityLabel, backdropAccessibilityLabel, cardStyle, contentStyle, testID, }: CenteredDialogProps): import("react/jsx-runtime").JSX.Element;
22
- //# sourceMappingURL=CenteredDialog.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CenteredDialog.d.ts","sourceRoot":"","sources":["../../../../src/dialog/CenteredDialog.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAWnE,gFAAgF;AAChF,eAAO,MAAM,+BAA+B,mCAAmC,CAAC;AAEhF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,OAAO,EACP,KAAK,EACL,WAAkB,EAClB,QAA4B,EAC5B,OAAc,EACd,SAAS,EACT,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,uBAAwC,EACxC,0BAA6C,EAC7C,SAAS,EACT,YAAY,EACZ,MAAM,GACP,EAAE,mBAAmB,2CAsGrB"}
@@ -1,31 +0,0 @@
1
- import type { CenteredDialogProps } from './centered-dialog-types';
2
- /** Stable testID for the dimmed backdrop. Overridden when a `testID` is set. */
3
- export declare const CENTERED_DIALOG_BACKDROP_TESTID = "bloom-centered-dialog-backdrop";
4
- /**
5
- * @deprecated Use `<Dialog placement="center">` instead.
6
- *
7
- * Web variant of `<CenteredDialog>`.
8
- *
9
- * A centered modal card rendered into the Bloom Portal at the end of
10
- * `document.body`. Identical prop surface to native — `visible`, `onClose`,
11
- * `title`, `compact`, etc. — so call sites are platform agnostic.
12
- *
13
- * Differences from the native fork (necessary, not behavioural):
14
- * - Portal + `RemoveScrollBar` lock the underlying page while open.
15
- * - `Escape` dismisses (when `dismissible`).
16
- * - A `role="dialog"` panel with `aria-label`/`aria-modal` for a11y.
17
- * - A CSS fade/zoom keyframe matches the native modal's `fade` animation;
18
- * the keyframes are injected once (idempotent) into `<head>`.
19
- *
20
- * The backdrop is a sibling element BEHIND the card, and the card stops
21
- * click/press propagation so a tap on the card never dismisses.
22
- */
23
- export declare function CenteredDialog({ visible, onClose, title, dismissible, maxWidth, compact, showClose, children, footer, accessibilityLabel, closeAccessibilityLabel, backdropAccessibilityLabel, cardStyle, contentStyle, testID, }: CenteredDialogProps): import("react/jsx-runtime").JSX.Element | null;
24
- /**
25
- * CSS keyframes powering the web enter/exit animation. Injected once into
26
- * `<head>` on first mount (keyed by id so re-mounts and multiple dialogs
27
- * don't duplicate the rule). Mirrors the native modal's `fade` feel with a
28
- * subtle zoom on the card.
29
- */
30
- export declare const BLOOM_CENTERED_DIALOG_CSS = "\n@keyframes bloomCenteredDialogFadeIn { from { opacity: 0; } to { opacity: 1; } }\n@keyframes bloomCenteredDialogFadeOut { from { opacity: 1; } to { opacity: 0; } }\n@keyframes bloomCenteredDialogZoomIn { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: scale(1); } }\n@keyframes bloomCenteredDialogZoomOut { from { opacity: 1; transform: scale(1); } to { opacity: 0; transform: scale(0.96); } }\n";
31
- //# sourceMappingURL=CenteredDialog.web.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CenteredDialog.web.d.ts","sourceRoot":"","sources":["../../../../src/dialog/CenteredDialog.web.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAanE,gFAAgF;AAChF,eAAO,MAAM,+BAA+B,mCAAmC,CAAC;AAIhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,OAAO,EACP,KAAK,EACL,WAAkB,EAClB,QAA4B,EAC5B,OAAc,EACd,SAAS,EACT,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,uBAAwC,EACxC,0BAA6C,EAC7C,SAAS,EACT,YAAY,EACZ,MAAM,GACP,EAAE,mBAAmB,kDAoIrB;AA4FD;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,2aAKrC,CAAC"}