@oxyhq/bloom 0.2.0 → 0.2.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 (100) hide show
  1. package/lib/commonjs/accordion/Accordion.js +2 -1
  2. package/lib/commonjs/accordion/Accordion.js.map +1 -1
  3. package/lib/commonjs/checkbox/Checkbox.js +4 -3
  4. package/lib/commonjs/checkbox/Checkbox.js.map +1 -1
  5. package/lib/commonjs/collapsible/Collapsible.js +2 -1
  6. package/lib/commonjs/collapsible/Collapsible.js.map +1 -1
  7. package/lib/commonjs/context-menu/index.web.js +2 -2
  8. package/lib/commonjs/context-menu/index.web.js.map +1 -1
  9. package/lib/commonjs/dialog/Dialog.web.js +2 -2
  10. package/lib/commonjs/dialog/Dialog.web.js.map +1 -1
  11. package/lib/commonjs/hooks/usePressAnimation.js +3 -2
  12. package/lib/commonjs/hooks/usePressAnimation.js.map +1 -1
  13. package/lib/commonjs/index.js +59 -59
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/commonjs/index.web.js +59 -59
  16. package/lib/commonjs/index.web.js.map +1 -1
  17. package/lib/commonjs/menu/index.web.js +2 -2
  18. package/lib/commonjs/menu/index.web.js.map +1 -1
  19. package/lib/commonjs/portal/index.web.js +71 -0
  20. package/lib/commonjs/portal/index.web.js.map +1 -0
  21. package/lib/commonjs/prompt-input/PromptInput.js +2 -2
  22. package/lib/commonjs/prompt-input/PromptInput.js.map +1 -1
  23. package/lib/commonjs/select/index.web.js +2 -2
  24. package/lib/commonjs/select/index.web.js.map +1 -1
  25. package/lib/commonjs/skeleton/index.js +3 -2
  26. package/lib/commonjs/skeleton/index.js.map +1 -1
  27. package/lib/commonjs/styles/index.js +7 -0
  28. package/lib/commonjs/styles/index.js.map +1 -1
  29. package/lib/commonjs/styles/native-driver.js +23 -0
  30. package/lib/commonjs/styles/native-driver.js.map +1 -0
  31. package/lib/commonjs/tooltip/index.js +2 -2
  32. package/lib/commonjs/tooltip/index.js.map +1 -1
  33. package/lib/module/accordion/Accordion.js +2 -1
  34. package/lib/module/accordion/Accordion.js.map +1 -1
  35. package/lib/module/checkbox/Checkbox.js +4 -3
  36. package/lib/module/checkbox/Checkbox.js.map +1 -1
  37. package/lib/module/collapsible/Collapsible.js +2 -1
  38. package/lib/module/collapsible/Collapsible.js.map +1 -1
  39. package/lib/module/context-menu/index.web.js +1 -1
  40. package/lib/module/context-menu/index.web.js.map +1 -1
  41. package/lib/module/dialog/Dialog.web.js +1 -1
  42. package/lib/module/dialog/Dialog.web.js.map +1 -1
  43. package/lib/module/hooks/usePressAnimation.js +3 -2
  44. package/lib/module/hooks/usePressAnimation.js.map +1 -1
  45. package/lib/module/index.js +1 -1
  46. package/lib/module/index.js.map +1 -1
  47. package/lib/module/index.web.js +1 -1
  48. package/lib/module/index.web.js.map +1 -1
  49. package/lib/module/menu/index.web.js +1 -1
  50. package/lib/module/menu/index.web.js.map +1 -1
  51. package/lib/module/portal/index.web.js +65 -0
  52. package/lib/module/portal/index.web.js.map +1 -0
  53. package/lib/module/prompt-input/PromptInput.js +1 -1
  54. package/lib/module/prompt-input/PromptInput.js.map +1 -1
  55. package/lib/module/select/index.web.js +1 -1
  56. package/lib/module/select/index.web.js.map +1 -1
  57. package/lib/module/skeleton/index.js +3 -2
  58. package/lib/module/skeleton/index.js.map +1 -1
  59. package/lib/module/styles/index.js +1 -0
  60. package/lib/module/styles/index.js.map +1 -1
  61. package/lib/module/styles/native-driver.js +18 -0
  62. package/lib/module/styles/native-driver.js.map +1 -0
  63. package/lib/module/tooltip/index.js +1 -1
  64. package/lib/module/tooltip/index.js.map +1 -1
  65. package/lib/typescript/commonjs/accordion/Accordion.d.ts.map +1 -1
  66. package/lib/typescript/commonjs/checkbox/Checkbox.d.ts.map +1 -1
  67. package/lib/typescript/commonjs/collapsible/Collapsible.d.ts.map +1 -1
  68. package/lib/typescript/commonjs/hooks/usePressAnimation.d.ts.map +1 -1
  69. package/lib/typescript/commonjs/index.web.d.ts +1 -1
  70. package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
  71. package/lib/typescript/commonjs/portal/index.web.d.ts +20 -0
  72. package/lib/typescript/commonjs/portal/index.web.d.ts.map +1 -0
  73. package/lib/typescript/commonjs/skeleton/index.d.ts.map +1 -1
  74. package/lib/typescript/commonjs/styles/index.d.ts +1 -0
  75. package/lib/typescript/commonjs/styles/index.d.ts.map +1 -1
  76. package/lib/typescript/commonjs/styles/native-driver.d.ts +2 -0
  77. package/lib/typescript/commonjs/styles/native-driver.d.ts.map +1 -0
  78. package/lib/typescript/module/accordion/Accordion.d.ts.map +1 -1
  79. package/lib/typescript/module/checkbox/Checkbox.d.ts.map +1 -1
  80. package/lib/typescript/module/collapsible/Collapsible.d.ts.map +1 -1
  81. package/lib/typescript/module/hooks/usePressAnimation.d.ts.map +1 -1
  82. package/lib/typescript/module/index.web.d.ts +1 -1
  83. package/lib/typescript/module/index.web.d.ts.map +1 -1
  84. package/lib/typescript/module/portal/index.web.d.ts +20 -0
  85. package/lib/typescript/module/portal/index.web.d.ts.map +1 -0
  86. package/lib/typescript/module/skeleton/index.d.ts.map +1 -1
  87. package/lib/typescript/module/styles/index.d.ts +1 -0
  88. package/lib/typescript/module/styles/index.d.ts.map +1 -1
  89. package/lib/typescript/module/styles/native-driver.d.ts +2 -0
  90. package/lib/typescript/module/styles/native-driver.d.ts.map +1 -0
  91. package/package.json +12 -1
  92. package/src/accordion/Accordion.tsx +2 -1
  93. package/src/checkbox/Checkbox.tsx +4 -3
  94. package/src/collapsible/Collapsible.tsx +2 -1
  95. package/src/hooks/usePressAnimation.ts +3 -2
  96. package/src/index.web.ts +1 -1
  97. package/src/portal/index.web.tsx +59 -0
  98. package/src/skeleton/index.tsx +3 -2
  99. package/src/styles/index.ts +1 -0
  100. package/src/styles/native-driver.ts +16 -0
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Whether the running React Native target supports `Animated`'s native
5
+ * driver. On real native (`Platform.OS === 'ios' | 'android'`) it does,
6
+ * and animations can run on the UI thread off the JS thread. On
7
+ * `react-native-web` there is no native driver — opting in logs a
8
+ * runtime warning every time, with no performance benefit.
9
+ *
10
+ * Use this constant instead of hardcoding `useNativeDriver: true` so
11
+ * Bloom components animate smoothly on every platform and stay silent in
12
+ * web consoles.
13
+ *
14
+ * Resolved once at module load.
15
+ */
16
+ import { Platform } from 'react-native';
17
+ export const SUPPORTS_NATIVE_DRIVER = Platform.OS !== 'web';
18
+ //# sourceMappingURL=native-driver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","SUPPORTS_NATIVE_DRIVER","OS"],"sourceRoot":"../../../src","sources":["styles/native-driver.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,OAAO,MAAMC,sBAAsB,GAAGD,QAAQ,CAACE,EAAE,KAAK,KAAK","ignoreList":[]}
@@ -6,7 +6,7 @@ import Animated, { Easing, ZoomIn } from 'react-native-reanimated';
6
6
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
7
7
  import { useTheme } from "../theme/use-theme.js";
8
8
  import { atoms as a } from "../styles/index.js";
9
- import { Portal } from "../portal/index.js";
9
+ import { Portal } from '../portal';
10
10
  import { ARROW_HALF_SIZE, ARROW_SIZE, BUBBLE_MAX_WIDTH, MIN_EDGE_SPACE } from "./const.js";
11
11
  import { createTextBubble } from "./TextBubble.js";
12
12
 
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","Pressable","StyleSheet","useWindowDimensions","View","Animated","Easing","ZoomIn","useSafeAreaInsets","useTheme","atoms","a","Portal","ARROW_HALF_SIZE","ARROW_SIZE","BUBBLE_MAX_WIDTH","MIN_EDGE_SPACE","createTextBubble","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","ARROW_VISUAL_OFFSET","BUBBLE_SHADOW_OFFSET","TooltipContext","position","visible","onVisibleChange","displayName","TargetContext","targetMeasurements","undefined","setTargetMeasurements","shouldMeasure","SheetCompatProvider","children","Outer","requestVisible","setVisible","ctx","targetCtx","Provider","value","Target","hasLayedOut","setHasLayedOut","targetRef","current","measure","_x","_y","width","height","x","y","collapsable","ref","onLayout","Content","label","requestClose","Bubble","theme","insets","dimensions","bubbleMeasurements","setBubbleMeasurements","bubbleBg","isDark","backgroundColor","colors","backgroundSecondary","background","coords","computedPosition","top","bottom","left","right","tipTop","tipLeft","ww","wh","maxTop","maxBottom","cw","ch","minLeft","maxLeft","Math","max","tipTranslate","positionTop","positionBottom","requestCloseWrapped","style","absoluteFill","onPress","accessibilityRole","accessible","role","accessibilityHint","accessibilityLabel","importantForAccessibility","accessibilityViewIsModal","absolute","align_start","opacity","entering","easing","out","exp","transformOrigin","opposite","top_0","z_10","borderTopLeftRadius","rounded_2xs","borderRadius","borderBottomRightRadius","transform","rotate","px_md","py_sm","rounded_sm","shadowColor","shadow","shadowOpacity","shadowRadius","shadowOffset","elevation","e","nativeEvent","layout","TextBubble"],"sourceRoot":"../../../src","sources":["tooltip/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","Pressable","StyleSheet","useWindowDimensions","View","Animated","Easing","ZoomIn","useSafeAreaInsets","useTheme","atoms","a","Portal","ARROW_HALF_SIZE","ARROW_SIZE","BUBBLE_MAX_WIDTH","MIN_EDGE_SPACE","createTextBubble","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","ARROW_VISUAL_OFFSET","BUBBLE_SHADOW_OFFSET","TooltipContext","position","visible","onVisibleChange","displayName","TargetContext","targetMeasurements","undefined","setTargetMeasurements","shouldMeasure","SheetCompatProvider","children","Outer","requestVisible","setVisible","ctx","targetCtx","Provider","value","Target","hasLayedOut","setHasLayedOut","targetRef","current","measure","_x","_y","width","height","x","y","collapsable","ref","onLayout","Content","label","requestClose","Bubble","theme","insets","dimensions","bubbleMeasurements","setBubbleMeasurements","bubbleBg","isDark","backgroundColor","colors","backgroundSecondary","background","coords","computedPosition","top","bottom","left","right","tipTop","tipLeft","ww","wh","maxTop","maxBottom","cw","ch","minLeft","maxLeft","Math","max","tipTranslate","positionTop","positionBottom","requestCloseWrapped","style","absoluteFill","onPress","accessibilityRole","accessible","role","accessibilityHint","accessibilityLabel","importantForAccessibility","accessibilityViewIsModal","absolute","align_start","opacity","entering","easing","out","exp","transformOrigin","opposite","top_0","z_10","borderTopLeftRadius","rounded_2xs","borderRadius","borderBottomRightRadius","transform","rotate","px_md","py_sm","rounded_sm","shadowColor","shadow","shadowOpacity","shadowRadius","shadowOffset","elevation","e","nativeEvent","layout","TextBubble"],"sourceRoot":"../../../src","sources":["tooltip/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../../../src/accordion/Accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmF,MAAM,OAAO,CAAC;AAKxG,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAEtB,MAAM,SAAS,CAAC;AA+OjB,eAAO,MAAM,SAAS,4CAA2B,CAAC;AAGlD,eAAO,MAAM,aAAa,gDAA+B,CAAC;AAG1D,eAAO,MAAM,gBAAgB,mDAAkC,CAAC;AAGhE,eAAO,MAAM,gBAAgB,mDAAkC,CAAC"}
1
+ {"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../../../src/accordion/Accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmF,MAAM,OAAO,CAAC;AAMxG,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAEtB,MAAM,SAAS,CAAC;AA+OjB,eAAO,MAAM,SAAS,4CAA2B,CAAC;AAGlD,eAAO,MAAM,aAAa,gDAA+B,CAAC;AAG1D,eAAO,MAAM,gBAAgB,mDAAkC,CAAC;AAGhE,eAAO,MAAM,gBAAgB,mDAAkC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAK7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AA+J7C,eAAO,MAAM,QAAQ,2CAA0B,CAAC"}
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAM7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AA+J7C,eAAO,MAAM,QAAQ,2CAA0B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8C,MAAM,OAAO,CAAC;AAKnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAiFhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
1
+ {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8C,MAAM,OAAO,CAAC;AAMnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAiFhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePressAnimation.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePressAnimation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAIxC;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,GAAE,MAAM,GAAG,SAAgB;;;;;EAuBtE"}
1
+ {"version":3,"file":"usePressAnimation.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePressAnimation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAKxC;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,GAAE,MAAM,GAAG,SAAgB;;;;;EAuBtE"}
@@ -8,7 +8,7 @@ export { useDelayedLoading } from './hooks/useDelayedLoading';
8
8
  export { useThrottledValue } from './hooks/useThrottledValue';
9
9
  export * as Icons from './icons';
10
10
  export { type Props as IconProps, sizes as iconSizes, useCommonSVGProps } from './icons/common';
11
- export * from './portal';
11
+ export * from './portal/index.web';
12
12
  export * as Dialog from './dialog/index.web';
13
13
  export * as Prompt from './prompt';
14
14
  export * from './button';
@@ -1 +1 @@
1
- {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../src/index.web.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGhG,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAG3C,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvE,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,cAAc,iBAAiB,CAAC;AAGhC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../src/index.web.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGhG,cAAc,oBAAoB,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAG3C,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvE,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,cAAc,iBAAiB,CAAC;AAGhC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Web variant of the Portal API.
3
+ *
4
+ * On native we keep the context-based portal group (the consumer mounts a
5
+ * `<Provider />` near the root and an `<Outlet />` to render portaled
6
+ * components inside the native view hierarchy). On web there's a stable
7
+ * `document.body`, so we portal directly there via `react-dom`'s native
8
+ * `createPortal` — no provider, no outlet, no setup. This matches how
9
+ * mature web component libraries (Radix, Mantine, Tamagui) ship their
10
+ * portals.
11
+ *
12
+ * The native and web APIs are kept identical: `Provider` and `Outlet` are
13
+ * still exported on web — they just become harmless no-op fragments so
14
+ * consumers that *do* mount them keep compiling.
15
+ */
16
+ import React from 'react';
17
+ export declare function Portal({ children }: React.PropsWithChildren<object>): React.ReactPortal | null;
18
+ export declare function Provider(props: React.PropsWithChildren<object>): import("react/jsx-runtime").JSX.Element;
19
+ export declare const Outlet: React.NamedExoticComponent<object>;
20
+ //# sourceMappingURL=index.web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../../src/portal/index.web.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAoD,MAAM,OAAO,CAAC;AAyBzE,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,4BAOnE;AAKD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,2CAE9D;AAED,eAAO,MAAM,MAAM,oCAEjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAiC1F,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CA0BA;yBAhCe,IAAI;;;AAmCpB,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAmBA;yBA7Be,MAAM;;;AAgCtB,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAkBA;yBA1Be,IAAI;;;AA6BpB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG;;;AAWnB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAkC1F,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CA0BA;yBAhCe,IAAI;;;AAmCpB,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAmBA;yBA7Be,MAAM;;;AAgCtB,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAkBA;yBA1Be,IAAI;;;AA6BpB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG;;;AAWnB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG"}
@@ -2,4 +2,5 @@ export { atoms, flatten } from './atoms';
2
2
  export type { ViewStyleProp, TextStyleProp } from './atoms';
3
3
  export * as tokens from './tokens';
4
4
  export { web, native, ios, android, platform, select } from './platform';
5
+ export { SUPPORTS_NATIVE_DRIVER } from './native-driver';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const SUPPORTS_NATIVE_DRIVER: boolean;
2
+ //# sourceMappingURL=native-driver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-driver.d.ts","sourceRoot":"","sources":["../../../../src/styles/native-driver.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,sBAAsB,SAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../../../src/accordion/Accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmF,MAAM,OAAO,CAAC;AAKxG,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAEtB,MAAM,SAAS,CAAC;AA+OjB,eAAO,MAAM,SAAS,4CAA2B,CAAC;AAGlD,eAAO,MAAM,aAAa,gDAA+B,CAAC;AAG1D,eAAO,MAAM,gBAAgB,mDAAkC,CAAC;AAGhE,eAAO,MAAM,gBAAgB,mDAAkC,CAAC"}
1
+ {"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../../../src/accordion/Accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmF,MAAM,OAAO,CAAC;AAMxG,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAEtB,MAAM,SAAS,CAAC;AA+OjB,eAAO,MAAM,SAAS,4CAA2B,CAAC;AAGlD,eAAO,MAAM,aAAa,gDAA+B,CAAC;AAG1D,eAAO,MAAM,gBAAgB,mDAAkC,CAAC;AAGhE,eAAO,MAAM,gBAAgB,mDAAkC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAK7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AA+J7C,eAAO,MAAM,QAAQ,2CAA0B,CAAC"}
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAM7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AA+J7C,eAAO,MAAM,QAAQ,2CAA0B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8C,MAAM,OAAO,CAAC;AAKnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAiFhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
1
+ {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8C,MAAM,OAAO,CAAC;AAMnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAiFhD,eAAO,MAAM,WAAW,8CAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePressAnimation.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePressAnimation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAIxC;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,GAAE,MAAM,GAAG,SAAgB;;;;;EAuBtE"}
1
+ {"version":3,"file":"usePressAnimation.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePressAnimation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAKxC;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,GAAE,MAAM,GAAG,SAAgB;;;;;EAuBtE"}
@@ -8,7 +8,7 @@ export { useDelayedLoading } from './hooks/useDelayedLoading';
8
8
  export { useThrottledValue } from './hooks/useThrottledValue';
9
9
  export * as Icons from './icons';
10
10
  export { type Props as IconProps, sizes as iconSizes, useCommonSVGProps } from './icons/common';
11
- export * from './portal';
11
+ export * from './portal/index.web';
12
12
  export * as Dialog from './dialog/index.web';
13
13
  export * as Prompt from './prompt';
14
14
  export * from './button';
@@ -1 +1 @@
1
- {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../src/index.web.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGhG,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAG3C,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvE,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,cAAc,iBAAiB,CAAC;AAGhC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../src/index.web.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGhG,cAAc,oBAAoB,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,cAAc,UAAU,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAG3C,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvE,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,cAAc,iBAAiB,CAAC;AAGhC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Web variant of the Portal API.
3
+ *
4
+ * On native we keep the context-based portal group (the consumer mounts a
5
+ * `<Provider />` near the root and an `<Outlet />` to render portaled
6
+ * components inside the native view hierarchy). On web there's a stable
7
+ * `document.body`, so we portal directly there via `react-dom`'s native
8
+ * `createPortal` — no provider, no outlet, no setup. This matches how
9
+ * mature web component libraries (Radix, Mantine, Tamagui) ship their
10
+ * portals.
11
+ *
12
+ * The native and web APIs are kept identical: `Provider` and `Outlet` are
13
+ * still exported on web — they just become harmless no-op fragments so
14
+ * consumers that *do* mount them keep compiling.
15
+ */
16
+ import React from 'react';
17
+ export declare function Portal({ children }: React.PropsWithChildren<object>): React.ReactPortal | null;
18
+ export declare function Provider(props: React.PropsWithChildren<object>): import("react/jsx-runtime").JSX.Element;
19
+ export declare const Outlet: React.NamedExoticComponent<object>;
20
+ //# sourceMappingURL=index.web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../../src/portal/index.web.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAoD,MAAM,OAAO,CAAC;AAyBzE,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,4BAOnE;AAKD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,2CAE9D;AAED,eAAO,MAAM,MAAM,oCAEjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAiC1F,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CA0BA;yBAhCe,IAAI;;;AAmCpB,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAmBA;yBA7Be,MAAM;;;AAgCtB,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAkBA;yBA1Be,IAAI;;;AA6BpB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG;;;AAWnB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/skeleton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAkC1F,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,KAAK,GACN,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CA0BA;yBAhCe,IAAI;;;AAmCpB,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAmBA;yBA7Be,MAAM;;;AAgCtB,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,KAAK,GACN,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAkBA;yBA1Be,IAAI;;;AA6BpB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG;;;AAWnB,wBAAgB,GAAG,CAAC,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACjC,2CAEA;yBARe,GAAG"}
@@ -2,4 +2,5 @@ export { atoms, flatten } from './atoms';
2
2
  export type { ViewStyleProp, TextStyleProp } from './atoms';
3
3
  export * as tokens from './tokens';
4
4
  export { web, native, ios, android, platform, select } from './platform';
5
+ export { SUPPORTS_NATIVE_DRIVER } from './native-driver';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const SUPPORTS_NATIVE_DRIVER: boolean;
2
+ //# sourceMappingURL=native-driver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-driver.d.ts","sourceRoot":"","sources":["../../../../src/styles/native-driver.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,sBAAsB,SAAwB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxyhq/bloom",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -63,6 +63,11 @@
63
63
  },
64
64
  "./portal": {
65
65
  "react-native": "./src/portal/index.tsx",
66
+ "browser": {
67
+ "types": "./lib/typescript/module/portal/index.web.d.ts",
68
+ "import": "./lib/module/portal/index.web.js",
69
+ "require": "./lib/commonjs/portal/index.web.js"
70
+ },
66
71
  "import": {
67
72
  "types": "./lib/typescript/module/portal/index.d.ts",
68
73
  "default": "./lib/module/portal/index.js"
@@ -572,9 +577,11 @@
572
577
  "@testing-library/react-native": "^13.3.3",
573
578
  "@types/jest": "^30.0.0",
574
579
  "@types/react": "~19.1.0",
580
+ "@types/react-dom": "^19.2.3",
575
581
  "@types/react-native": "*",
576
582
  "jest": "^30.3.0",
577
583
  "react": "19.2.0",
584
+ "react-dom": "19.2.0",
578
585
  "react-native": "0.83.2",
579
586
  "react-native-builder-bob": "^0.40.16",
580
587
  "react-native-gesture-handler": "^2.30.0",
@@ -591,6 +598,7 @@
591
598
  "peerDependencies": {
592
599
  "@gorhom/bottom-sheet": ">=5.0.0",
593
600
  "react": ">=18.0.0",
601
+ "react-dom": ">=18.0.0",
594
602
  "react-native": ">=0.73.0",
595
603
  "react-native-gesture-handler": ">=2.0.0",
596
604
  "react-native-reanimated": ">=3.0.0",
@@ -603,6 +611,9 @@
603
611
  "@gorhom/bottom-sheet": {
604
612
  "optional": true
605
613
  },
614
+ "react-dom": {
615
+ "optional": true
616
+ },
606
617
  "react-native-reanimated": {
607
618
  "optional": true
608
619
  },
@@ -3,6 +3,7 @@ import { View, Text, Pressable, Animated, type ViewStyle } from 'react-native';
3
3
 
4
4
  import { useTheme } from '../theme/use-theme';
5
5
  import { animation, borderRadius, space } from '../styles/tokens';
6
+ import { SUPPORTS_NATIVE_DRIVER } from '../styles/native-driver';
6
7
  import type {
7
8
  AccordionProps,
8
9
  AccordionItemProps,
@@ -135,7 +136,7 @@ const AccordionTriggerComponent: React.FC<AccordionTriggerProps> = ({
135
136
  useEffect(() => {
136
137
  Animated.spring(rotateAnim, {
137
138
  toValue: isExpanded ? 1 : 0,
138
- useNativeDriver: true,
139
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
139
140
  ...animation.spring.snappy,
140
141
  }).start();
141
142
  }, [isExpanded, rotateAnim]);
@@ -3,6 +3,7 @@ import { View, Text, Pressable, Animated, type ViewStyle } from 'react-native';
3
3
 
4
4
  import { useTheme } from '../theme/use-theme';
5
5
  import { animation, borderRadius, space } from '../styles/tokens';
6
+ import { SUPPORTS_NATIVE_DRIVER } from '../styles/native-driver';
6
7
  import type { CheckboxProps } from './types';
7
8
 
8
9
  const SIZE_CONFIG = {
@@ -34,7 +35,7 @@ const CheckboxComponent: React.FC<CheckboxProps> = ({
34
35
  useEffect(() => {
35
36
  Animated.spring(scaleAnim, {
36
37
  toValue: checked || indeterminate ? 1 : 0,
37
- useNativeDriver: true,
38
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
38
39
  ...animation.spring.snappy,
39
40
  }).start();
40
41
  }, [checked, indeterminate, scaleAnim]);
@@ -48,7 +49,7 @@ const CheckboxComponent: React.FC<CheckboxProps> = ({
48
49
  const onPressIn = useCallback(() => {
49
50
  Animated.spring(pressAnim, {
50
51
  toValue: 0.9,
51
- useNativeDriver: true,
52
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
52
53
  ...animation.spring.snappy,
53
54
  }).start();
54
55
  }, [pressAnim]);
@@ -56,7 +57,7 @@ const CheckboxComponent: React.FC<CheckboxProps> = ({
56
57
  const onPressOut = useCallback(() => {
57
58
  Animated.spring(pressAnim, {
58
59
  toValue: 1,
59
- useNativeDriver: true,
60
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
60
61
  ...animation.spring.gentle,
61
62
  }).start();
62
63
  }, [pressAnim]);
@@ -3,6 +3,7 @@ import { View, Text, TouchableOpacity, Animated, LayoutAnimation, Platform, UIMa
3
3
 
4
4
  import { useTheme } from '../theme/use-theme';
5
5
  import { animation } from '../styles/tokens';
6
+ import { SUPPORTS_NATIVE_DRIVER } from '../styles/native-driver';
6
7
  import type { CollapsibleProps } from './types';
7
8
 
8
9
  if (Platform.OS === 'android' && UIManager.setLayoutAnimationEnabledExperimental) {
@@ -31,7 +32,7 @@ const CollapsibleComponent: React.FC<CollapsibleProps> = ({
31
32
  // Animate chevron rotation in the event handler, not via useEffect
32
33
  Animated.spring(chevronAnim, {
33
34
  toValue: nextOpen ? 1 : 0,
34
- useNativeDriver: true,
35
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
35
36
  ...animation.spring.gentle,
36
37
  }).start();
37
38
 
@@ -2,6 +2,7 @@ import { useCallback, useRef } from 'react';
2
2
  import { Animated } from 'react-native';
3
3
 
4
4
  import { animation } from '../styles/tokens';
5
+ import { SUPPORTS_NATIVE_DRIVER } from '../styles/native-driver';
5
6
 
6
7
  /**
7
8
  * Hook that provides press-scale animation feedback.
@@ -19,7 +20,7 @@ export function usePressAnimation(pressScale: number | undefined = 0.97) {
19
20
  if (!enabled) return;
20
21
  Animated.spring(scaleAnim, {
21
22
  toValue: pressScale!,
22
- useNativeDriver: true,
23
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
23
24
  ...animation.spring.snappy,
24
25
  }).start();
25
26
  }, [scaleAnim, enabled, pressScale]);
@@ -28,7 +29,7 @@ export function usePressAnimation(pressScale: number | undefined = 0.97) {
28
29
  if (!enabled) return;
29
30
  Animated.spring(scaleAnim, {
30
31
  toValue: 1,
31
- useNativeDriver: true,
32
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
32
33
  ...animation.spring.gentle,
33
34
  }).start();
34
35
  }, [scaleAnim, enabled]);
package/src/index.web.ts CHANGED
@@ -22,7 +22,7 @@ export * as Icons from './icons';
22
22
  export { type Props as IconProps, sizes as iconSizes, useCommonSVGProps } from './icons/common';
23
23
 
24
24
  // Core components
25
- export * from './portal';
25
+ export * from './portal/index.web';
26
26
  export * as Dialog from './dialog/index.web';
27
27
  export * as Prompt from './prompt';
28
28
  export * from './button';
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Web variant of the Portal API.
3
+ *
4
+ * On native we keep the context-based portal group (the consumer mounts a
5
+ * `<Provider />` near the root and an `<Outlet />` to render portaled
6
+ * components inside the native view hierarchy). On web there's a stable
7
+ * `document.body`, so we portal directly there via `react-dom`'s native
8
+ * `createPortal` — no provider, no outlet, no setup. This matches how
9
+ * mature web component libraries (Radix, Mantine, Tamagui) ship their
10
+ * portals.
11
+ *
12
+ * The native and web APIs are kept identical: `Provider` and `Outlet` are
13
+ * still exported on web — they just become harmless no-op fragments so
14
+ * consumers that *do* mount them keep compiling.
15
+ */
16
+ import React, { Fragment, memo, useLayoutEffect, useState } from 'react';
17
+ import { createPortal } from 'react-dom';
18
+
19
+ /**
20
+ * Render children into a stable container at the end of `document.body`.
21
+ *
22
+ * Lazy-creates the container on first mount so SSR (where `document` does
23
+ * not exist) doesn't crash — the portal simply renders nothing on the
24
+ * server and snaps in on hydration.
25
+ */
26
+ function getPortalRoot(): HTMLElement | null {
27
+ if (typeof document === 'undefined') return null;
28
+ let root = document.getElementById('bloom-portal-root');
29
+ if (!root) {
30
+ root = document.createElement('div');
31
+ root.id = 'bloom-portal-root';
32
+ // Sits above the document flow; individual portaled components can use
33
+ // their own z-index for stacking among themselves.
34
+ root.style.position = 'relative';
35
+ root.style.zIndex = '999999';
36
+ document.body.appendChild(root);
37
+ }
38
+ return root;
39
+ }
40
+
41
+ export function Portal({ children }: React.PropsWithChildren<object>) {
42
+ const [root, setRoot] = useState<HTMLElement | null>(null);
43
+ useLayoutEffect(() => {
44
+ setRoot(getPortalRoot());
45
+ }, []);
46
+ if (!root) return null;
47
+ return createPortal(children, root);
48
+ }
49
+
50
+ // Native API parity — on web these are inert. Provider mounts its children
51
+ // inline; Outlet renders nothing. Consumers that mount them on web keep
52
+ // compiling without behaviour change.
53
+ export function Provider(props: React.PropsWithChildren<object>) {
54
+ return <Fragment>{props.children}</Fragment>;
55
+ }
56
+
57
+ export const Outlet = memo(function Outlet() {
58
+ return null;
59
+ });
@@ -2,6 +2,7 @@ import React, { useEffect, useRef } from 'react';
2
2
  import { Animated, View, type ViewStyle, type TextStyle, StyleSheet } from 'react-native';
3
3
 
4
4
  import { useTheme } from '../theme/use-theme';
5
+ import { SUPPORTS_NATIVE_DRIVER } from '../styles/native-driver';
5
6
 
6
7
  const SHIMMER_DURATION = 1500;
7
8
  const SHIMMER_MIN_OPACITY = 0.4;
@@ -16,12 +17,12 @@ function useShimmer() {
16
17
  Animated.timing(opacity, {
17
18
  toValue: SHIMMER_MIN_OPACITY,
18
19
  duration: SHIMMER_DURATION / 2,
19
- useNativeDriver: true,
20
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
20
21
  }),
21
22
  Animated.timing(opacity, {
22
23
  toValue: SHIMMER_MAX_OPACITY,
23
24
  duration: SHIMMER_DURATION / 2,
24
- useNativeDriver: true,
25
+ useNativeDriver: SUPPORTS_NATIVE_DRIVER,
25
26
  }),
26
27
  ]),
27
28
  );
@@ -2,3 +2,4 @@ export { atoms, flatten } from './atoms';
2
2
  export type { ViewStyleProp, TextStyleProp } from './atoms';
3
3
  export * as tokens from './tokens';
4
4
  export { web, native, ios, android, platform, select } from './platform';
5
+ export { SUPPORTS_NATIVE_DRIVER } from './native-driver';
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Whether the running React Native target supports `Animated`'s native
3
+ * driver. On real native (`Platform.OS === 'ios' | 'android'`) it does,
4
+ * and animations can run on the UI thread off the JS thread. On
5
+ * `react-native-web` there is no native driver — opting in logs a
6
+ * runtime warning every time, with no performance benefit.
7
+ *
8
+ * Use this constant instead of hardcoding `useNativeDriver: true` so
9
+ * Bloom components animate smoothly on every platform and stay silent in
10
+ * web consoles.
11
+ *
12
+ * Resolved once at module load.
13
+ */
14
+ import { Platform } from 'react-native';
15
+
16
+ export const SUPPORTS_NATIVE_DRIVER = Platform.OS !== 'web';