@oxyhq/bloom 0.68.0 → 0.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/lib/commonjs/animated-check/AnimatedCheck.js +22 -93
  2. package/lib/commonjs/animated-check/AnimatedCheck.js.map +1 -1
  3. package/lib/commonjs/avatar/Avatar.js +6 -24
  4. package/lib/commonjs/avatar/Avatar.js.map +1 -1
  5. package/lib/commonjs/avatar/AvatarRing.js +14 -30
  6. package/lib/commonjs/avatar/AvatarRing.js.map +1 -1
  7. package/lib/commonjs/bottom-sheet/index.js +9 -4
  8. package/lib/commonjs/bottom-sheet/index.js.map +1 -1
  9. package/lib/commonjs/connection-status/index.js +16 -7
  10. package/lib/commonjs/connection-status/index.js.map +1 -1
  11. package/lib/commonjs/connection-status/netinfo.js +119 -0
  12. package/lib/commonjs/connection-status/netinfo.js.map +1 -0
  13. package/lib/commonjs/hooks/haptics-module.js +109 -0
  14. package/lib/commonjs/hooks/haptics-module.js.map +1 -0
  15. package/lib/commonjs/hooks/useHaptics.js +6 -8
  16. package/lib/commonjs/hooks/useHaptics.js.map +1 -1
  17. package/lib/commonjs/loading/SpinnerIcon.js +22 -55
  18. package/lib/commonjs/loading/SpinnerIcon.js.map +1 -1
  19. package/lib/commonjs/theme/adaptive-colors.js +20 -4
  20. package/lib/commonjs/theme/adaptive-colors.js.map +1 -1
  21. package/lib/commonjs/theme/color-scope/style-builder.js +107 -6
  22. package/lib/commonjs/theme/color-scope/style-builder.js.map +1 -1
  23. package/lib/commonjs/theme/init-css-interop.js +13 -11
  24. package/lib/commonjs/theme/init-css-interop.js.map +1 -1
  25. package/lib/module/animated-check/AnimatedCheck.js +22 -91
  26. package/lib/module/animated-check/AnimatedCheck.js.map +1 -1
  27. package/lib/module/avatar/Avatar.js +1 -19
  28. package/lib/module/avatar/Avatar.js.map +1 -1
  29. package/lib/module/avatar/AvatarRing.js +7 -23
  30. package/lib/module/avatar/AvatarRing.js.map +1 -1
  31. package/lib/module/bottom-sheet/index.js +9 -4
  32. package/lib/module/bottom-sheet/index.js.map +1 -1
  33. package/lib/module/connection-status/index.js +16 -6
  34. package/lib/module/connection-status/index.js.map +1 -1
  35. package/lib/module/connection-status/netinfo.js +114 -0
  36. package/lib/module/connection-status/netinfo.js.map +1 -0
  37. package/lib/module/hooks/haptics-module.js +104 -0
  38. package/lib/module/hooks/haptics-module.js.map +1 -0
  39. package/lib/module/hooks/useHaptics.js +7 -11
  40. package/lib/module/hooks/useHaptics.js.map +1 -1
  41. package/lib/module/loading/SpinnerIcon.js +13 -46
  42. package/lib/module/loading/SpinnerIcon.js.map +1 -1
  43. package/lib/module/loading/index.web.js +2 -2
  44. package/lib/module/theme/adaptive-colors.js +20 -4
  45. package/lib/module/theme/adaptive-colors.js.map +1 -1
  46. package/lib/module/theme/color-scope/style-builder.js +107 -6
  47. package/lib/module/theme/color-scope/style-builder.js.map +1 -1
  48. package/lib/module/theme/init-css-interop.js +13 -11
  49. package/lib/module/theme/init-css-interop.js.map +1 -1
  50. package/lib/typescript/commonjs/animated-check/AnimatedCheck.d.ts.map +1 -1
  51. package/lib/typescript/commonjs/avatar/Avatar.d.ts.map +1 -1
  52. package/lib/typescript/commonjs/avatar/AvatarRing.d.ts.map +1 -1
  53. package/lib/typescript/commonjs/bottom-sheet/index.d.ts.map +1 -1
  54. package/lib/typescript/commonjs/connection-status/index.d.ts.map +1 -1
  55. package/lib/typescript/commonjs/connection-status/netinfo.d.ts +69 -0
  56. package/lib/typescript/commonjs/connection-status/netinfo.d.ts.map +1 -0
  57. package/lib/typescript/commonjs/hooks/haptics-module.d.ts +58 -0
  58. package/lib/typescript/commonjs/hooks/haptics-module.d.ts.map +1 -0
  59. package/lib/typescript/commonjs/hooks/useHaptics.d.ts.map +1 -1
  60. package/lib/typescript/commonjs/loading/SpinnerIcon.d.ts +9 -2
  61. package/lib/typescript/commonjs/loading/SpinnerIcon.d.ts.map +1 -1
  62. package/lib/typescript/commonjs/theme/adaptive-colors.d.ts.map +1 -1
  63. package/lib/typescript/commonjs/theme/color-scope/style-builder.d.ts.map +1 -1
  64. package/lib/typescript/commonjs/theme/init-css-interop.d.ts.map +1 -1
  65. package/lib/typescript/module/animated-check/AnimatedCheck.d.ts.map +1 -1
  66. package/lib/typescript/module/avatar/Avatar.d.ts.map +1 -1
  67. package/lib/typescript/module/avatar/AvatarRing.d.ts.map +1 -1
  68. package/lib/typescript/module/bottom-sheet/index.d.ts.map +1 -1
  69. package/lib/typescript/module/connection-status/index.d.ts.map +1 -1
  70. package/lib/typescript/module/connection-status/netinfo.d.ts +69 -0
  71. package/lib/typescript/module/connection-status/netinfo.d.ts.map +1 -0
  72. package/lib/typescript/module/hooks/haptics-module.d.ts +58 -0
  73. package/lib/typescript/module/hooks/haptics-module.d.ts.map +1 -0
  74. package/lib/typescript/module/hooks/useHaptics.d.ts.map +1 -1
  75. package/lib/typescript/module/loading/SpinnerIcon.d.ts +9 -2
  76. package/lib/typescript/module/loading/SpinnerIcon.d.ts.map +1 -1
  77. package/lib/typescript/module/theme/adaptive-colors.d.ts.map +1 -1
  78. package/lib/typescript/module/theme/color-scope/style-builder.d.ts.map +1 -1
  79. package/lib/typescript/module/theme/init-css-interop.d.ts.map +1 -1
  80. package/package.json +2 -2
  81. package/src/__tests__/color-scope-nativewind.test.ts +135 -0
  82. package/src/__tests__/connection-status-netinfo.test.tsx +203 -0
  83. package/src/__tests__/optional-peer-imports.test.ts +406 -0
  84. package/src/__tests__/svg-required-peer.test.tsx +75 -0
  85. package/src/__tests__/useHaptics.test.tsx +203 -16
  86. package/src/animated-check/AnimatedCheck.tsx +19 -86
  87. package/src/avatar/Avatar.tsx +1 -11
  88. package/src/avatar/AvatarRing.tsx +7 -15
  89. package/src/bottom-sheet/index.tsx +9 -4
  90. package/src/connection-status/index.tsx +16 -6
  91. package/src/connection-status/netinfo.ts +131 -0
  92. package/src/hooks/haptics-module.ts +118 -0
  93. package/src/hooks/useHaptics.tsx +6 -9
  94. package/src/loading/SpinnerIcon.tsx +13 -52
  95. package/src/loading/index.web.ts +2 -2
  96. package/src/theme/adaptive-colors.ts +20 -4
  97. package/src/theme/color-scope/style-builder.ts +118 -6
  98. package/src/theme/init-css-interop.ts +13 -11
  99. package/lib/commonjs/avatar/svg-module.js +0 -15
  100. package/lib/commonjs/avatar/svg-module.js.map +0 -1
  101. package/lib/commonjs/utils/lazy-require.js +0 -37
  102. package/lib/commonjs/utils/lazy-require.js.map +0 -1
  103. package/lib/module/avatar/svg-module.js +0 -11
  104. package/lib/module/avatar/svg-module.js.map +0 -1
  105. package/lib/module/utils/lazy-require.js +0 -33
  106. package/lib/module/utils/lazy-require.js.map +0 -1
  107. package/lib/typescript/commonjs/avatar/svg-module.d.ts +0 -8
  108. package/lib/typescript/commonjs/avatar/svg-module.d.ts.map +0 -1
  109. package/lib/typescript/commonjs/utils/lazy-require.d.ts +0 -15
  110. package/lib/typescript/commonjs/utils/lazy-require.d.ts.map +0 -1
  111. package/lib/typescript/module/avatar/svg-module.d.ts +0 -8
  112. package/lib/typescript/module/avatar/svg-module.d.ts.map +0 -1
  113. package/lib/typescript/module/utils/lazy-require.d.ts +0 -15
  114. package/lib/typescript/module/utils/lazy-require.d.ts.map +0 -1
  115. package/src/avatar/svg-module.ts +0 -11
  116. package/src/utils/lazy-require.ts +0 -31
@@ -8,7 +8,48 @@ exports.buildScopeVars = buildScopeVars;
8
8
  exports.getVariableContextProvider = getVariableContextProvider;
9
9
  var _reactNative = require("react-native");
10
10
  var _tokenRegistry = require("../token-registry.js");
11
- var _lazyRequire = require("../../utils/lazy-require.js");
11
+ /**
12
+ * The optional-peer boundary for `nativewind`.
13
+ *
14
+ * The consumer's OWN nativewind has to be the one that answers: its version
15
+ * decides which var mechanism exists (`VariableContextProvider` under
16
+ * NativeWind 5 / react-native-css@3, `vars()` before it), and a scope built
17
+ * against a second copy would publish into a context nothing reads. That rules
18
+ * out reaching for Bloom's own `react-native-css` dependency, and an optional
19
+ * peer rules out a static import — Metro resolves those eagerly, so an app
20
+ * without nativewind would fail to BUILD rather than degrade.
21
+ *
22
+ * What is left is the one dynamic shape Metro understands: `require()` of a
23
+ * STRING LITERAL as a DIRECT statement of a `try` block, collected as an
24
+ * optional dependency. Both halves matter, and both were verified against metro
25
+ * 0.83.5's own `collectDependencies`:
26
+ *
27
+ * - The shape this replaced — the deleted `utils/lazy-require.ts`, which took
28
+ * the specifier as a function PARAMETER — is not statically evaluable, so
29
+ * Metro collected no dependency at all and rewrote the call into a thrower
30
+ * ("Dynamic require defined at line N; not supported by Metro"). It resolved
31
+ * NOTHING from a consumer's `node_modules` whether or not nativewind was
32
+ * installed, and `BloomColorScope` could never scope NativeWind classes on a
33
+ * device.
34
+ * - `isOptionalDependency` returns at the first BlockStatement above the call,
35
+ * so one `if`/`else` of nesting inside the try loses the optional marking and
36
+ * an absent nativewind fails the BUILD. Hence the `typeof require` guard
37
+ * below sits outside the try.
38
+ *
39
+ * `require` may not exist at all (this file also backs the `import` condition,
40
+ * i.e. an ESM build under Node), hence that guard. Both callers below return
41
+ * before loading on web, where the vars are written to `document.documentElement`
42
+ * instead.
43
+ *
44
+ * @see connection-status/netinfo.ts — the same boundary for netinfo.
45
+ */
46
+
47
+ /**
48
+ * Declared locally rather than taken from the ambient `NodeRequire`, which
49
+ * returns `any`: `unknown` forces the module handle to be narrowed below instead
50
+ * of leaking an untyped value into the caller.
51
+ */
52
+
12
53
  /**
13
54
  * Component that provides inline CSS variables to a subtree via NativeWind's
14
55
  * (react-native-css's) real `VariableContext`. The runtime strips the leading
@@ -16,7 +57,57 @@ var _lazyRequire = require("../../utils/lazy-require.js");
16
57
  * record produced by `buildScopeVars`.
17
58
  */
18
59
 
19
- const getNativeWindVars = (0, _lazyRequire.lazyRequire)('nativewind');
60
+ /**
61
+ * The slice of nativewind's surface Bloom uses. Hand-written so no nativewind
62
+ * type reaches Bloom's emitted declarations — a consumer that skips the optional
63
+ * peer must not inherit a TS7016 from Bloom's own `.d.ts`.
64
+ */
65
+
66
+ /** `undefined` until the first load attempt, then the module or `null`. */
67
+ let nativeWindModule;
68
+ /** Why the scope cannot be applied, quoted verbatim in the dev warning. */
69
+ let unavailableReason = '';
70
+ let hasWarned = false;
71
+
72
+ /** The nativewind module, or `null` when the optional peer is not installed. */
73
+ function loadNativeWindVars() {
74
+ if (nativeWindModule !== undefined) return nativeWindModule;
75
+ nativeWindModule = null;
76
+
77
+ // The `typeof require` guard sits OUTSIDE the try on purpose — see the second
78
+ // constraint above. Nested one `if`/`else` deeper, the require stops counting
79
+ // as optional and an app without nativewind fails to BUILD.
80
+ if (typeof require === 'undefined') {
81
+ unavailableReason = 'this bundle has no CommonJS `require`';
82
+ return nativeWindModule;
83
+ }
84
+ try {
85
+ const loaded = require('nativewind');
86
+ if (typeof loaded?.vars === 'function') {
87
+ nativeWindModule = loaded;
88
+ } else {
89
+ unavailableReason = 'the module resolved without a `vars` export';
90
+ }
91
+ } catch (error) {
92
+ unavailableReason = error instanceof Error ? error.message : String(error);
93
+ }
94
+ return nativeWindModule;
95
+ }
96
+
97
+ /**
98
+ * One warning per module lifetime, and none in production — the same mechanism
99
+ * as `connection-status/netinfo.ts`. A scope that does not scope is invisible:
100
+ * the subtree keeps rendering, just in the app-wide palette instead of the
101
+ * requested one.
102
+ */
103
+ function warnScopeInert(detail) {
104
+ if (process.env.NODE_ENV === 'production' || hasWarned) return;
105
+ hasWarned = true;
106
+ // Internal Bloom diagnostic: only the consumer's package.json can fix this,
107
+ // so it names the package and the install command.
108
+ // eslint-disable-next-line no-console
109
+ console.warn(`[Bloom] BloomColorScope cannot scope NativeWind classes on native: ${detail} ` + 'Descendants keep resolving `var(--primary)` and friends against the ' + 'app-wide preset. Install the optional peer (`npx expo install nativewind`) ' + `to enable scoped presets. Reason: ${unavailableReason}`);
110
+ }
20
111
 
21
112
  /**
22
113
  * Build the CSS custom-property map for a preset, ready to be applied to a
@@ -57,8 +148,15 @@ function buildScopeVars(colorPreset, mode, accents) {
57
148
  */
58
149
  function getVariableContextProvider() {
59
150
  if (_reactNative.Platform.OS === 'web') return null;
60
- const module = getNativeWindVars();
61
- if (!module || typeof module.VariableContextProvider !== 'function') return null;
151
+ const module = loadNativeWindVars();
152
+ if (!module) {
153
+ warnScopeInert('the optional peer `nativewind` could not be loaded.');
154
+ return null;
155
+ }
156
+ if (typeof module.VariableContextProvider !== 'function') {
157
+ warnScopeInert('the installed `nativewind` exports no `VariableContextProvider` (the ' + 'NativeWind 5 / react-native-css@3 API this needs).');
158
+ return null;
159
+ }
62
160
  return module.VariableContextProvider;
63
161
  }
64
162
 
@@ -77,8 +175,11 @@ function getVariableContextProvider() {
77
175
  */
78
176
  function buildNativePresetStyle(colorPreset, mode) {
79
177
  if (_reactNative.Platform.OS === 'web') return undefined;
80
- const module = getNativeWindVars();
81
- if (!module || typeof module.vars !== 'function') return undefined;
178
+ const module = loadNativeWindVars();
179
+ if (!module) {
180
+ warnScopeInert('the optional peer `nativewind` could not be loaded.');
181
+ return undefined;
182
+ }
82
183
  return module.vars(buildScopeVars(colorPreset, mode));
83
184
  }
84
185
  //# sourceMappingURL=style-builder.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_tokenRegistry","_lazyRequire","getNativeWindVars","lazyRequire","buildScopeVars","colorPreset","mode","accents","tokens","getResolvedTokens","vars","token","CANONICAL_TOKENS","value","undefined","getVariableContextProvider","Platform","OS","module","VariableContextProvider","buildNativePresetStyle"],"sourceRoot":"../../../../src","sources":["theme/color-scope/style-builder.ts"],"mappings":";;;;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,cAAA,GAAAD,OAAA;AAGA,IAAAE,YAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;;AAWA,MAAMG,iBAAiB,GAAG,IAAAC,wBAAW,EAAuB,YAAY,CAAC;;AAEzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAC5BC,WAAyB,EACzBC,IAAsB,EACtBC,OAAyB,EACD;EACxB,MAAMC,MAAM,GAAG,IAAAC,gCAAiB,EAACJ,WAAW,EAAEC,IAAI,EAAEC,OAAO,CAAC;EAC5D,MAAMG,IAA4B,GAAG;IAAE,GAAGF;EAAO,CAAC;EAElD,KAAK,MAAMG,KAAK,IAAIC,+BAAgB,EAAE;IACpC,MAAMC,KAAK,GAAGL,MAAM,CAAC,KAAKG,KAAK,EAAE,CAAC;IAClC,IAAIE,KAAK,KAAKC,SAAS,EAAE;MACvBJ,IAAI,CAAC,WAAWC,KAAK,EAAE,CAAC,GAAGE,KAAK;IAClC;EACF;EAEA,OAAOH,IAAI;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASK,0BAA0BA,CAAA,EAA4C;EACpF,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE,OAAO,IAAI;EACtC,MAAMC,MAAM,GAAGhB,iBAAiB,CAAC,CAAC;EAClC,IAAI,CAACgB,MAAM,IAAI,OAAOA,MAAM,CAACC,uBAAuB,KAAK,UAAU,EAAE,OAAO,IAAI;EAChF,OAAOD,MAAM,CAACC,uBAAuB;AACvC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,sBAAsBA,CACpCf,WAAyB,EACzBC,IAAsB,EACA;EACtB,IAAIU,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE,OAAOH,SAAS;EAC3C,MAAMI,MAAM,GAAGhB,iBAAiB,CAAC,CAAC;EAClC,IAAI,CAACgB,MAAM,IAAI,OAAOA,MAAM,CAACR,IAAI,KAAK,UAAU,EAAE,OAAOI,SAAS;EAClE,OAAOI,MAAM,CAACR,IAAI,CAACN,cAAc,CAACC,WAAW,EAAEC,IAAI,CAAC,CAAC;AACvD","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_tokenRegistry","nativeWindModule","unavailableReason","hasWarned","loadNativeWindVars","undefined","loaded","vars","error","Error","message","String","warnScopeInert","detail","process","env","NODE_ENV","console","warn","buildScopeVars","colorPreset","mode","accents","tokens","getResolvedTokens","token","CANONICAL_TOKENS","value","getVariableContextProvider","Platform","OS","module","VariableContextProvider","buildNativePresetStyle"],"sourceRoot":"../../../../src","sources":["theme/color-scope/style-builder.ts"],"mappings":"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","ignoreList":[]}
@@ -69,20 +69,22 @@ function tryCallSetFlag() {
69
69
  let mod;
70
70
  // `require` does not exist in an ES module, so guard before touching it —
71
71
  // an unguarded reference is a ReferenceError, not a resolution failure.
72
- // Matches the pattern used by every other optional-module load in Bloom
73
- // (`utils/lazy-require.ts`, `theme/adaptive-colors.ts`,
74
- // `bottom-sheet/index.tsx`).
75
72
  if (typeof require === 'undefined') return;
76
73
  try {
77
- // Dynamic require: css-interop is not a Bloom dependency. If the host
78
- // app ships it (via NativeWind or directly), this resolves. Otherwise
79
- // the require throws and we silently move on — there is nothing to
80
- // initialize because css-interop is not in the bundle.
74
+ // Dynamic require: css-interop is neither a Bloom dependency nor a declared
75
+ // peer. The specifier goes through a variable to keep a plain-text
76
+ // `require('react-native-css-interop')` out of the file, so bundlers that
77
+ // scan for one do not try to resolve (and warn about, or fail on) a module
78
+ // Bloom never asked for.
81
79
  //
82
- // The specifier goes through a variable on purpose: a literal
83
- // `require('react-native-css-interop')` is statically analysable, so
84
- // bundlers try to resolve (and warn about, or fail on) a module that is
85
- // intentionally absent. The indirection keeps this a pure runtime lookup.
80
+ // Metro is not among them: its dependency collector EVALUATES the argument,
81
+ // folds this `const`, and treats the call exactly as it would a literal —
82
+ // optional, because it is a direct statement of a `try` block. So the
83
+ // indirection buys nothing under Metro and costs nothing either. It is not a
84
+ // pattern to copy: a specifier Metro cannot evaluate (a function parameter,
85
+ // a computed value) collects no dependency at all and is rewritten into a
86
+ // thrower, which is how `lazyRequire` silently killed four subsystems. See
87
+ // `connection-status/netinfo.ts` for the shape a real peer must use.
86
88
  const moduleName = 'react-native-css-interop';
87
89
  // eslint-disable-next-line @typescript-eslint/no-require-imports
88
90
  mod = require(moduleName);
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","initialized","warned","CSS_VAR_NAME","CSS_VAR_VALUE","warnOnce","message","error","console","warn","setWebCssVariable","document","root","documentElement","current","style","getPropertyValue","setProperty","tryCallSetFlag","mod","moduleName","setFlag","StyleSheet","call","initCssInteropDarkMode","Platform","OS"],"sourceRoot":"../../../src","sources":["theme/init-css-interop.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAIC,WAAW,GAAG,KAAK;AACvB,IAAIC,MAAM,GAAG,KAAK;AAElB,MAAMC,YAAY,GAAG,wBAAwB;AAC7C,MAAMC,aAAa,GAAG,YAAY;AAUlC,SAASC,QAAQA,CAACC,OAAe,EAAEC,KAAe,EAAQ;EACxD,IAAIL,MAAM,EAAE;EACZA,MAAM,GAAG,IAAI;EACb;EACA;EACA;EACAM,OAAO,CAACC,IAAI,CAAC,WAAWH,OAAO,EAAE,EAAEC,KAAK,IAAI,EAAE,CAAC;AACjD;AAEA,SAASG,iBAAiBA,CAAA,EAAS;EACjC,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;EACrC,MAAMC,IAAI,GAAGD,QAAQ,CAACE,eAAe;EACrC,IAAI,CAACD,IAAI,EAAE;EACX;EACA;EACA;EACA,MAAME,OAAO,GAAGF,IAAI,CAACG,KAAK,CAACC,gBAAgB,CAACb,YAAY,CAAC;EACzD,IAAIW,OAAO,EAAE;EACbF,IAAI,CAACG,KAAK,CAACE,WAAW,CAACd,YAAY,EAAEC,aAAa,CAAC;AACrD;AAEA,SAASc,cAAcA,CAAA,EAAS;EAC9B,IAAIC,GAAiC;EACrC;EACA;EACA;EACA;EACA;EACA,IAAI,OAAOnB,OAAO,KAAK,WAAW,EAAE;EACpC,IAAI;IACF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMoB,UAAU,GAAG,0BAA0B;IAC7C;IACAD,GAAG,GAAGnB,OAAO,CAACoB,UAAU,CAAqB;EAC/C,CAAC,CAAC,MAAM;IACN;EACF;EAEA,MAAMC,OAAO,GAAGF,GAAG,EAAEG,UAAU,EAAED,OAAO;EACxC,IAAI,OAAOA,OAAO,KAAK,UAAU,EAAE;IACjC;IACA;IACA;IACA;IACA;EACF;EAEA,IAAI;IACFA,OAAO,CAACE,IAAI,CAACJ,GAAG,EAAEG,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC;EACpD,CAAC,CAAC,OAAOf,KAAK,EAAE;IACdF,QAAQ,CACN,0EAA0E,GACxE,kDAAkD,EACpDE,KACF,CAAC;EACH;AACF;;AAEA;AACA;AACA;AACA;AACO,SAASiB,sBAAsBA,CAAA,EAAS;EAC7C,IAAIvB,WAAW,EAAE;EACjBA,WAAW,GAAG,IAAI;EAElB,IAAIwB,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzBhB,iBAAiB,CAAC,CAAC;EACrB;EAEAQ,cAAc,CAAC,CAAC;AAClB;;AAEA;AACA;AACA;AACAM,sBAAsB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","initialized","warned","CSS_VAR_NAME","CSS_VAR_VALUE","warnOnce","message","error","console","warn","setWebCssVariable","document","root","documentElement","current","style","getPropertyValue","setProperty","tryCallSetFlag","mod","moduleName","setFlag","StyleSheet","call","initCssInteropDarkMode","Platform","OS"],"sourceRoot":"../../../src","sources":["theme/init-css-interop.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAIC,WAAW,GAAG,KAAK;AACvB,IAAIC,MAAM,GAAG,KAAK;AAElB,MAAMC,YAAY,GAAG,wBAAwB;AAC7C,MAAMC,aAAa,GAAG,YAAY;AAUlC,SAASC,QAAQA,CAACC,OAAe,EAAEC,KAAe,EAAQ;EACxD,IAAIL,MAAM,EAAE;EACZA,MAAM,GAAG,IAAI;EACb;EACA;EACA;EACAM,OAAO,CAACC,IAAI,CAAC,WAAWH,OAAO,EAAE,EAAEC,KAAK,IAAI,EAAE,CAAC;AACjD;AAEA,SAASG,iBAAiBA,CAAA,EAAS;EACjC,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;EACrC,MAAMC,IAAI,GAAGD,QAAQ,CAACE,eAAe;EACrC,IAAI,CAACD,IAAI,EAAE;EACX;EACA;EACA;EACA,MAAME,OAAO,GAAGF,IAAI,CAACG,KAAK,CAACC,gBAAgB,CAACb,YAAY,CAAC;EACzD,IAAIW,OAAO,EAAE;EACbF,IAAI,CAACG,KAAK,CAACE,WAAW,CAACd,YAAY,EAAEC,aAAa,CAAC;AACrD;AAEA,SAASc,cAAcA,CAAA,EAAS;EAC9B,IAAIC,GAAiC;EACrC;EACA;EACA,IAAI,OAAOnB,OAAO,KAAK,WAAW,EAAE;EACpC,IAAI;IACF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMoB,UAAU,GAAG,0BAA0B;IAC7C;IACAD,GAAG,GAAGnB,OAAO,CAACoB,UAAU,CAAqB;EAC/C,CAAC,CAAC,MAAM;IACN;EACF;EAEA,MAAMC,OAAO,GAAGF,GAAG,EAAEG,UAAU,EAAED,OAAO;EACxC,IAAI,OAAOA,OAAO,KAAK,UAAU,EAAE;IACjC;IACA;IACA;IACA;IACA;EACF;EAEA,IAAI;IACFA,OAAO,CAACE,IAAI,CAACJ,GAAG,EAAEG,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC;EACpD,CAAC,CAAC,OAAOf,KAAK,EAAE;IACdF,QAAQ,CACN,0EAA0E,GACxE,kDAAkD,EACpDE,KACF,CAAC;EACH;AACF;;AAEA;AACA;AACA;AACA;AACO,SAASiB,sBAAsBA,CAAA,EAAS;EAC7C,IAAIvB,WAAW,EAAE;EACjBA,WAAW,GAAG,IAAI;EAElB,IAAIwB,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzBhB,iBAAiB,CAAC,CAAC;EACrB;EAEAQ,cAAc,CAAC,CAAC;AAClB;;AAEA;AACA;AACA;AACAM,sBAAsB,CAAC,CAAC","ignoreList":[]}
@@ -1,14 +1,12 @@
1
1
  "use strict";
2
2
 
3
- import React, { forwardRef, useCallback, useImperativeHandle, useMemo } from 'react';
4
- import { StyleSheet, Text } from 'react-native';
3
+ import React, { forwardRef, useCallback, useImperativeHandle } from 'react';
5
4
  import Animated, { Easing, useAnimatedProps, useSharedValue, withDelay, withTiming } from 'react-native-reanimated';
6
- import { getSvgModule } from "../avatar/svg-module.js";
5
+ import Svg, { Circle, Path } from 'react-native-svg';
7
6
  import { useTheme } from "../theme/index.js";
8
7
 
9
- /** The resolved `react-native-svg` module (non-null branch). */
10
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
8
  /** Square viewBox the ring + check are drawn on. */
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
10
  const VIEW_BOX = 52;
13
11
  /** Ring radius within the viewBox. */
14
12
  const CIRCLE_RADIUS = 24;
@@ -24,33 +22,22 @@ const CIRCLE_DURATION = 500;
24
22
  /** Check draw-on duration (ms), started once the ring completes. */
25
23
  const CHECK_DURATION = 300;
26
24
  // `Animated.createAnimatedComponent` must be called once per underlying
27
- // component (calling it per-render would remount and break the animation).
28
- // react-native-svg is a lazy/optional peer, so we build the animated wrappers
29
- // the first time it resolves and cache them at module scope.
30
- function buildAnimatedSvg(svg) {
31
- return {
32
- Circle: Animated.createAnimatedComponent(svg.Circle),
33
- Path: Animated.createAnimatedComponent(svg.Path)
34
- };
35
- }
36
- let animatedSvgCache = null;
37
- function getAnimatedSvg(svg) {
38
- if (!animatedSvgCache) animatedSvgCache = buildAnimatedSvg(svg);
39
- return animatedSvgCache;
40
- }
41
- /** The animated SVG implementation, rendered only when react-native-svg exists. */
42
- const AnimatedCheckSvg = /*#__PURE__*/forwardRef(function AnimatedCheckSvg({
43
- size,
44
- color,
45
- svg
25
+ // component calling it per render would remount the element and break the
26
+ // animation so the wrappers are built once at module scope.
27
+ const AnimatedCircle = Animated.createAnimatedComponent(Circle);
28
+ const AnimatedPath = Animated.createAnimatedComponent(Path);
29
+
30
+ /**
31
+ * A draw-on checkmark: a ring strokes on, then the check strokes in. Expose a
32
+ * ref and call `ref.current?.play()` to (re)play — e.g. on a successful submit.
33
+ * Ported from Bluesky's `AnimatedCheck`.
34
+ */
35
+ export const AnimatedCheck = /*#__PURE__*/forwardRef(function AnimatedCheck({
36
+ size = 24,
37
+ color
46
38
  }, ref) {
47
- const {
48
- default: Svg
49
- } = svg;
50
- const {
51
- Circle,
52
- Path
53
- } = getAnimatedSvg(svg);
39
+ const theme = useTheme();
40
+ const resolvedColor = color ?? theme.colors.success;
54
41
  const circleProgress = useSharedValue(0);
55
42
  const checkProgress = useSharedValue(0);
56
43
 
@@ -85,79 +72,23 @@ const AnimatedCheckSvg = /*#__PURE__*/forwardRef(function AnimatedCheckSvg({
85
72
  viewBox: `0 0 ${VIEW_BOX} ${VIEW_BOX}`,
86
73
  width: size,
87
74
  height: size,
88
- children: [/*#__PURE__*/_jsx(Circle, {
75
+ children: [/*#__PURE__*/_jsx(AnimatedCircle, {
89
76
  animatedProps: circleAnimatedProps,
90
77
  cx: VIEW_BOX / 2,
91
78
  cy: VIEW_BOX / 2,
92
79
  r: CIRCLE_RADIUS,
93
80
  fill: "none",
94
- stroke: color,
81
+ stroke: resolvedColor,
95
82
  strokeWidth: STROKE_WIDTH,
96
83
  strokeDasharray: CIRCLE_LENGTH
97
- }), /*#__PURE__*/_jsx(Path, {
84
+ }), /*#__PURE__*/_jsx(AnimatedPath, {
98
85
  animatedProps: checkAnimatedProps,
99
86
  d: CHECK_PATH,
100
- stroke: color,
87
+ stroke: resolvedColor,
101
88
  strokeWidth: STROKE_WIDTH,
102
89
  strokeDasharray: CHECK_LENGTH
103
90
  })]
104
91
  });
105
92
  });
106
- /**
107
- * Static fallback rendered when react-native-svg is unavailable (e.g. a web
108
- * bundle that omits the optional peer). Draws a plain Unicode check so the
109
- * component still communicates "done"; `play()` is a no-op.
110
- */
111
- const StaticCheck = /*#__PURE__*/forwardRef(function StaticCheck({
112
- size,
113
- color
114
- }, ref) {
115
- useImperativeHandle(ref, () => ({
116
- play: () => undefined
117
- }), []);
118
- return /*#__PURE__*/_jsx(Text, {
119
- accessibilityElementsHidden: true,
120
- style: [styles.staticCheck, {
121
- width: size,
122
- fontSize: size * 0.8,
123
- lineHeight: size,
124
- color
125
- }],
126
- children: '✓'
127
- });
128
- });
129
-
130
- /**
131
- * A draw-on checkmark: a ring strokes on, then the check strokes in. Expose a
132
- * ref and call `ref.current?.play()` to (re)play — e.g. on a successful submit.
133
- * Ported from Bluesky's `AnimatedCheck`.
134
- */
135
- export const AnimatedCheck = /*#__PURE__*/forwardRef(function AnimatedCheck({
136
- size = 24,
137
- color
138
- }, ref) {
139
- const theme = useTheme();
140
- const resolvedColor = color ?? theme.colors.success;
141
- const svg = useMemo(() => getSvgModule(), []);
142
- if (!svg) {
143
- return /*#__PURE__*/_jsx(StaticCheck, {
144
- ref: ref,
145
- size: size,
146
- color: resolvedColor
147
- });
148
- }
149
- return /*#__PURE__*/_jsx(AnimatedCheckSvg, {
150
- ref: ref,
151
- size: size,
152
- color: resolvedColor,
153
- svg: svg
154
- });
155
- });
156
93
  AnimatedCheck.displayName = 'AnimatedCheck';
157
- const styles = StyleSheet.create({
158
- staticCheck: {
159
- textAlign: 'center',
160
- fontWeight: '700'
161
- }
162
- });
163
94
  //# sourceMappingURL=AnimatedCheck.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","useCallback","useImperativeHandle","useMemo","StyleSheet","Text","Animated","Easing","useAnimatedProps","useSharedValue","withDelay","withTiming","getSvgModule","useTheme","jsx","_jsx","jsxs","_jsxs","VIEW_BOX","CIRCLE_RADIUS","CIRCLE_LENGTH","CHECK_LENGTH","CHECK_PATH","STROKE_WIDTH","CIRCLE_DURATION","CHECK_DURATION","buildAnimatedSvg","svg","Circle","createAnimatedComponent","Path","animatedSvgCache","getAnimatedSvg","AnimatedCheckSvg","size","color","ref","default","Svg","circleProgress","checkProgress","circleAnimatedProps","strokeDashoffset","value","checkAnimatedProps","play","duration","easing","linear","fill","viewBox","width","height","children","animatedProps","cx","cy","r","stroke","strokeWidth","strokeDasharray","d","StaticCheck","undefined","accessibilityElementsHidden","style","styles","staticCheck","fontSize","lineHeight","AnimatedCheck","theme","resolvedColor","colors","success","displayName","create","textAlign","fontWeight"],"sourceRoot":"../../../src","sources":["animated-check/AnimatedCheck.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","forwardRef","useCallback","useImperativeHandle","Animated","Easing","useAnimatedProps","useSharedValue","withDelay","withTiming","Svg","Circle","Path","useTheme","jsx","_jsx","jsxs","_jsxs","VIEW_BOX","CIRCLE_RADIUS","CIRCLE_LENGTH","CHECK_LENGTH","CHECK_PATH","STROKE_WIDTH","CIRCLE_DURATION","CHECK_DURATION","AnimatedCircle","createAnimatedComponent","AnimatedPath","AnimatedCheck","size","color","ref","theme","resolvedColor","colors","success","circleProgress","checkProgress","circleAnimatedProps","strokeDashoffset","value","checkAnimatedProps","play","duration","easing","linear","fill","viewBox","width","height","children","animatedProps","cx","cy","r","stroke","strokeWidth","strokeDasharray","d","displayName"],"sourceRoot":"../../../src","sources":["animated-check/AnimatedCheck.tsx"],"mappings":"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","ignoreList":[]}
@@ -2,13 +2,13 @@
2
2
 
3
3
  import React, { memo, useMemo, useRef, useState } from 'react';
4
4
  import { View, Image, StyleSheet, Text, TouchableOpacity } from 'react-native';
5
+ import Svg, { ClipPath, Defs, Image as SvgImage, Path } from 'react-native-svg';
5
6
  import { useTheme } from "../theme/use-theme.js";
6
7
  import { useImageResolver } from "../image-resolver/context.js";
7
8
  import { Z_INDEX } from "../styles/z-index.js";
8
9
  import { useAvatarPlaceholder } from "./placeholder-context.js";
9
10
  import { LiveBadge } from "./LiveBadge.js";
10
11
  import { AvatarRing, getRingOuterSize } from "./AvatarRing.js";
11
- import { getSvgModule } from "./svg-module.js";
12
12
  import { SQUIRCLE_PATH } from "./squircle-path.js";
13
13
  // Google Contacts-inspired palette used to pick a deterministic background
14
14
  // color for name-based placeholder avatars.
@@ -46,24 +46,6 @@ function SquircleImage({
46
46
  onError
47
47
  }) {
48
48
  const clipId = useMemo(() => `bloom-sqc${clipIdCounter++}`, []);
49
- const svg = getSvgModule();
50
- if (!svg) {
51
- // Fallback to a circle if react-native-svg is not installed. The ring (if
52
- // any) is drawn separately by AvatarRing, which also degrades to a circle.
53
- return /*#__PURE__*/_jsx(CircleFallback, {
54
- size: size,
55
- fallbackColor: fallbackColor,
56
- icon: placeholderIcon,
57
- name: name
58
- });
59
- }
60
- const {
61
- default: Svg,
62
- Defs,
63
- ClipPath,
64
- Path,
65
- Image: SvgImage
66
- } = svg;
67
49
  const href = uri ? {
68
50
  uri
69
51
  } : fallbackSource;
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useMemo","useRef","useState","View","Image","StyleSheet","Text","TouchableOpacity","useTheme","useImageResolver","Z_INDEX","useAvatarPlaceholder","LiveBadge","AvatarRing","getRingOuterSize","getSvgModule","SQUIRCLE_PATH","NAME_AVATAR_COLORS","getInitial","name","trimmed","trim","firstCodePoint","toUpperCase","getNameColor","hash","i","length","charCodeAt","index","Math","abs","DEFAULT_AVATAR_IMAGE","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","clipIdCounter","SquircleImage","uri","fallbackSource","size","fallbackColor","placeholderIcon","onError","clipId","svg","CircleFallback","icon","default","Svg","Defs","ClipPath","Path","SvgImage","href","children","source","style","styles","errorDetector","width","height","viewBox","id","d","preserveAspectRatio","clipPath","radius","hasName","initialStyle","color","fontSize","round","fontWeight","lineHeight","textAlign","includeFontPadding","borderRadius","backgroundColor","justifyContent","alignItems","overflow","allowFontScaling","numberOfLines","resizeMode","AvatarComponent","variant","verified","verifiedIcon","shape","imageStyle","placeholderColor","onPress","live","hideLiveBadge","liveLabel","liveColor","ring","testID","errored","setErrored","theme","placeholderConfig","colors","backgroundTertiary","resolvedPlaceholderIcon","undefined","prevSourceRef","prevUriRef","prevVariantRef","current","imageResolver","resolvedUri","startsWith","resolvedImageSource","effectiveUri","imageSource","liveBadgeColor","negative","resolvedRing","gap","ringWidth","ringGap","outer","showLiveBadge","ringElement","gradientDirection","avatarBox","imageContainer","absoluteFill","verifiedBadge","label","textColor","negativeForeground","content","container","create","position","bottom","right","zIndex","raised","opacity","Avatar","displayName"],"sourceRoot":"../../../src","sources":["avatar/Avatar.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useMemo","useRef","useState","View","Image","StyleSheet","Text","TouchableOpacity","Svg","ClipPath","Defs","SvgImage","Path","useTheme","useImageResolver","Z_INDEX","useAvatarPlaceholder","LiveBadge","AvatarRing","getRingOuterSize","SQUIRCLE_PATH","NAME_AVATAR_COLORS","getInitial","name","trimmed","trim","firstCodePoint","toUpperCase","getNameColor","hash","i","length","charCodeAt","index","Math","abs","DEFAULT_AVATAR_IMAGE","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","clipIdCounter","SquircleImage","uri","fallbackSource","size","fallbackColor","placeholderIcon","onError","clipId","href","CircleFallback","icon","children","source","style","styles","errorDetector","width","height","viewBox","id","d","preserveAspectRatio","clipPath","radius","hasName","initialStyle","color","fontSize","round","fontWeight","lineHeight","textAlign","includeFontPadding","borderRadius","backgroundColor","justifyContent","alignItems","overflow","allowFontScaling","numberOfLines","resizeMode","AvatarComponent","variant","verified","verifiedIcon","shape","imageStyle","placeholderColor","onPress","live","hideLiveBadge","liveLabel","liveColor","ring","testID","errored","setErrored","theme","placeholderConfig","colors","backgroundTertiary","resolvedPlaceholderIcon","undefined","prevSourceRef","prevUriRef","prevVariantRef","current","imageResolver","resolvedUri","startsWith","resolvedImageSource","effectiveUri","imageSource","liveBadgeColor","negative","resolvedRing","gap","ringWidth","ringGap","outer","showLiveBadge","ringElement","gradientDirection","avatarBox","imageContainer","absoluteFill","verifiedBadge","label","textColor","negativeForeground","content","container","create","position","bottom","right","zIndex","raised","opacity","Avatar","displayName"],"sourceRoot":"../../../src","sources":["avatar/Avatar.tsx"],"mappings":"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","ignoreList":[]}
@@ -2,8 +2,8 @@
2
2
 
3
3
  import React, { memo, useMemo } from 'react';
4
4
  import { View, StyleSheet } from 'react-native';
5
+ import Svg, { Circle, Defs, LinearGradient, Path, Stop } from 'react-native-svg';
5
6
  import { Z_INDEX } from "../styles/z-index.js";
6
- import { getSvgModule } from "./svg-module.js";
7
7
  import { SQUIRCLE_PATH } from "./squircle-path.js";
8
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
9
  // Module counter for unique gradient element ids — mirrors the `clipIdCounter`
@@ -55,10 +55,7 @@ function gradientCoords(direction) {
55
55
  *
56
56
  * - Solid circle → a plain bordered `<View>` (no `react-native-svg` needed).
57
57
  * - Solid squircle → an SVG `<Path>` stroking the squircle outline.
58
- * - Gradient (either shape) → an SVG `<LinearGradient>` stroke; degrades to a
59
- * solid ring of the first color when `react-native-svg` is unavailable (a
60
- * squircle then degrades to a circle border, matching the avatar's own no-SVG
61
- * circle fallback).
58
+ * - Gradient (either shape) → an SVG `<LinearGradient>` stroke.
62
59
  *
63
60
  * Internal to the avatar family — not exported from the package.
64
61
  */
@@ -76,19 +73,14 @@ const AvatarRingComponent = ({
76
73
  const solidColor = colorList[0] ?? '#000000';
77
74
  const outer = getRingOuterSize(size, width, gap);
78
75
  // The ring's visible band is always the outermost `width` px inside the outer
79
- // box; when it degrades to a circle border it is a full circle → radius
80
- // `outer / 2`.
76
+ // box; drawn as a plain border it is a full circle → radius `outer / 2`.
81
77
  const ringRadius = outer / 2;
82
78
 
83
- // `react-native-svg` is required for gradients (both shapes) and for the
84
- // squircle outline. A solid circle ring is a plain border and never needs it.
79
+ // SVG is only needed for gradients (both shapes) and for the squircle
80
+ // outline. A solid circle ring is a plain bordered View cheaper, and it
81
+ // keeps the common case off the SVG renderer entirely.
85
82
  const needsSvg = wantsGradient || shape === 'squircle';
86
- const svg = needsSvg ? getSvgModule() : null;
87
-
88
- // No SVG available (or a solid circle, which never needs SVG): draw a plain
89
- // bordered View. A gradient degrades to its first color; a squircle degrades
90
- // to a circle border.
91
- if (!svg) {
83
+ if (!needsSvg) {
92
84
  return /*#__PURE__*/_jsx(View, {
93
85
  pointerEvents: "none",
94
86
  style: {
@@ -104,14 +96,6 @@ const AvatarRingComponent = ({
104
96
  }
105
97
  });
106
98
  }
107
- const {
108
- default: Svg,
109
- Defs,
110
- LinearGradient,
111
- Stop,
112
- Circle,
113
- Path
114
- } = svg;
115
99
  const stroke = wantsGradient ? `url(#${gradientId})` : solidColor;
116
100
  const coords = gradientCoords(gradientDirection);
117
101
  const gradientDefs = wantsGradient ? /*#__PURE__*/_jsx(Defs, {
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useMemo","View","StyleSheet","Z_INDEX","getSvgModule","SQUIRCLE_PATH","jsx","_jsx","jsxs","_jsxs","ringGradientIdCounter","getRingOuterSize","size","width","gap","gradientCoords","direction","x1","y1","x2","y2","AvatarRingComponent","shape","colors","gradientDirection","gradientId","colorList","Array","isArray","wantsGradient","length","solidColor","outer","ringRadius","needsSvg","svg","pointerEvents","style","position","top","left","height","borderRadius","borderColor","borderWidth","zIndex","base","raised","default","Svg","Defs","LinearGradient","Stop","Circle","Path","stroke","coords","gradientDefs","children","id","map","color","index","offset","stopColor","overlayStyle","absoluteFill","viewBox","d","fill","strokeWidth","cx","cy","r","AvatarRing","displayName"],"sourceRoot":"../../../src","sources":["avatar/AvatarRing.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useMemo","View","StyleSheet","Svg","Circle","Defs","LinearGradient","Path","Stop","Z_INDEX","SQUIRCLE_PATH","jsx","_jsx","jsxs","_jsxs","ringGradientIdCounter","getRingOuterSize","size","width","gap","gradientCoords","direction","x1","y1","x2","y2","AvatarRingComponent","shape","colors","gradientDirection","gradientId","colorList","Array","isArray","wantsGradient","length","solidColor","outer","ringRadius","needsSvg","pointerEvents","style","position","top","left","height","borderRadius","borderColor","borderWidth","zIndex","base","raised","stroke","coords","gradientDefs","children","id","map","color","index","offset","stopColor","overlayStyle","absoluteFill","viewBox","d","fill","strokeWidth","cx","cy","r","AvatarRing","displayName"],"sourceRoot":"../../../src","sources":["avatar/AvatarRing.tsx"],"mappings":"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","ignoreList":[]}
@@ -8,8 +8,14 @@ import { BottomSheetBase } from "./BottomSheetBase.js";
8
8
  // Keyboard handling — only on native platforms. On web, keyboard events are
9
9
  // handled by the browser (and the web build resolves to `index.web.tsx`, which
10
10
  // never imports this module). `react-native-keyboard-controller` is an OPTIONAL
11
- // dependency: it is lazily `require`d below and everything no-ops when it is
12
- // absent (or on web).
11
+ // dependency, loaded below through the shape Metro collects as an optional
12
+ // dependency: a `require()` of a STRING LITERAL as a direct statement of a `try`
13
+ // block — the real module when it is installed, `null` in the dependency map
14
+ // when it is not, so the failure lands in the `catch` and everything no-ops.
15
+ // The specifier used to be bound to a local `const` first, which also worked
16
+ // (Metro evaluates the constant); the literal is simply the form the rule can be
17
+ // checked as. See `connection-status/netinfo.ts` for the full rule, including
18
+ // the specifier shape that does NOT work.
13
19
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
20
  const noopKeyboardHandler = (_handlers, _deps) => {};
15
21
  let useKeyboardHandler = noopKeyboardHandler;
@@ -33,8 +39,7 @@ const PassthroughKeyboardProvider = ({
33
39
  let KeyboardProvider = PassthroughKeyboardProvider;
34
40
  if (Platform.OS !== 'web' && typeof require !== 'undefined') {
35
41
  try {
36
- const moduleName = 'react-native-keyboard-controller';
37
- const keyboardController = require(moduleName);
42
+ const keyboardController = require('react-native-keyboard-controller');
38
43
  useKeyboardHandler = keyboardController.useKeyboardHandler ?? noopKeyboardHandler;
39
44
  KeyboardProvider = keyboardController.KeyboardProvider ?? PassthroughKeyboardProvider;
40
45
  } catch {
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","Modal","Platform","StyleSheet","GestureHandlerRootView","BottomSheetBase","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","PassthroughKeyboardProvider","children","KeyboardProvider","OS","require","moduleName","keyboardController","SheetKeyboardSync","keyboardHeight","onMove","e","value","height","onEnd","NativeShell","visible","onRequestClose","transparent","animationType","statusBarTranslucent","style","styles","rootView","BottomSheet","props","ref","Shell","displayName","create","flex"],"sourceRoot":"../../../src","sources":["bottom-sheet/index.tsx"],"mappings":";;AACA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,QAAQ,cAAc;AAC1D,SAASC,sBAAsB,QAAQ,8BAA8B;AAErE,SACIC,eAAe,QAIZ,sBAAmB;;AAE1B;AACA;AACA;AACA;AACA;AAAA,SAAAC,QAAA,IAAAC,SAAA,EAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AACA,MAAMC,mBAAmB,GAAGA,CAACC,SAA0D,EAAEC,KAAgB,KAAK,CAAC,CAAC;AAChH,IAAIC,kBAAwG,GAAGH,mBAAmB;;AAElI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMI,2BAA2B,GAAGA,CAAC;EAAEC;AAAwC,CAAC,kBAAKR,IAAA,CAAAF,SAAA;EAAAU,QAAA,EAAGA;AAAQ,CAAG,CAAC;AACpG,IAAIC,gBAAoE,GAAGF,2BAA2B;AAEtG,IAAId,QAAQ,CAACiB,EAAE,KAAK,KAAK,IAAI,OAAOC,OAAO,KAAK,WAAW,EAAE;EACzD,IAAI;IACA,MAAMC,UAAU,GAAG,kCAAkC;IACrD,MAAMC,kBAAkB,GAAGF,OAAO,CAACC,UAAU,CAAC;IAC9CN,kBAAkB,GAAGO,kBAAkB,CAACP,kBAAkB,IAAIH,mBAAmB;IACjFM,gBAAgB,GAAGI,kBAAkB,CAACJ,gBAAgB,IAAIF,2BAA2B;EACzF,CAAC,CAAC,MAAM;IACJ;IACA;EAAA;AAER;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASO,iBAAiBA,CAAC;EAAEC;AAAwD,CAAC,EAAE;EACpFT,kBAAkB,CAAC;IACfU,MAAM,EAAGC,CAAC,IAAK;MACX,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC,CAAC;IACDC,KAAK,EAAGH,CAAC,IAAK;MACV,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC;EACJ,CAAC,EAAE,EAAE,CAAC;EACN,OAAO,IAAI;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,WAAWA,CAAC;EAAEC,OAAO;EAAEC,cAAc;EAAER,cAAc;EAAEP;AAAgC,CAAC,EAAE;EAC/F,oBACIR,IAAA,CAACR,KAAK;IAAC8B,OAAO,EAAEA,OAAQ;IAACE,WAAW;IAACC,aAAa,EAAC,MAAM;IAACC,oBAAoB;IAACH,cAAc,EAAEA,cAAe;IAAAf,QAAA,eAC1GN,KAAA,CAACO,gBAAgB;MAAAD,QAAA,gBACbR,IAAA,CAACc,iBAAiB;QAACC,cAAc,EAAEA;MAAe,CAAE,CAAC,eACrDf,IAAA,CAACL,sBAAsB;QAACgC,KAAK,EAAEC,MAAM,CAACC,QAAS;QAAArB,QAAA,EAAEA;MAAQ,CAAyB,CAAC;IAAA,CACrE;EAAC,CAChB,CAAC;AAEhB;AAEA,MAAMsB,WAAW,gBAAGvC,UAAU,CAAC,CAACwC,KAAuB,EAAEC,GAAuC,kBAC5FhC,IAAA,CAACJ,eAAe;EAAA,GAAKmC,KAAK;EAAEC,GAAG,EAAEA,GAAI;EAACC,KAAK,EAAEZ;AAAY,CAAE,CAC9D,CAAC;AAEFS,WAAW,CAACI,WAAW,GAAG,aAAa;AAEvC,MAAMN,MAAM,GAAGlC,UAAU,CAACyC,MAAM,CAAC;EAC7BN,QAAQ,EAAE;IACNO,IAAI,EAAE;EACV;AACJ,CAAC,CAAC;AAGF,eAAeN,WAAW;AAC1B,SAASA,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","Modal","Platform","StyleSheet","GestureHandlerRootView","BottomSheetBase","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","PassthroughKeyboardProvider","children","KeyboardProvider","OS","require","keyboardController","SheetKeyboardSync","keyboardHeight","onMove","e","value","height","onEnd","NativeShell","visible","onRequestClose","transparent","animationType","statusBarTranslucent","style","styles","rootView","BottomSheet","props","ref","Shell","displayName","create","flex"],"sourceRoot":"../../../src","sources":["bottom-sheet/index.tsx"],"mappings":";;AACA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,QAAQ,cAAc;AAC1D,SAASC,sBAAsB,QAAQ,8BAA8B;AAErE,SACIC,eAAe,QAIZ,sBAAmB;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,SAAAC,QAAA,IAAAC,SAAA,EAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AACA,MAAMC,mBAAmB,GAAGA,CAACC,SAA0D,EAAEC,KAAgB,KAAK,CAAC,CAAC;AAChH,IAAIC,kBAAwG,GAAGH,mBAAmB;;AAElI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMI,2BAA2B,GAAGA,CAAC;EAAEC;AAAwC,CAAC,kBAAKR,IAAA,CAAAF,SAAA;EAAAU,QAAA,EAAGA;AAAQ,CAAG,CAAC;AACpG,IAAIC,gBAAoE,GAAGF,2BAA2B;AAEtG,IAAId,QAAQ,CAACiB,EAAE,KAAK,KAAK,IAAI,OAAOC,OAAO,KAAK,WAAW,EAAE;EACzD,IAAI;IACA,MAAMC,kBAAkB,GAAGD,OAAO,CAAC,kCAAkC,CAAC;IACtEL,kBAAkB,GAAGM,kBAAkB,CAACN,kBAAkB,IAAIH,mBAAmB;IACjFM,gBAAgB,GAAGG,kBAAkB,CAACH,gBAAgB,IAAIF,2BAA2B;EACzF,CAAC,CAAC,MAAM;IACJ;IACA;EAAA;AAER;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASM,iBAAiBA,CAAC;EAAEC;AAAwD,CAAC,EAAE;EACpFR,kBAAkB,CAAC;IACfS,MAAM,EAAGC,CAAC,IAAK;MACX,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC,CAAC;IACDC,KAAK,EAAGH,CAAC,IAAK;MACV,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC;EACJ,CAAC,EAAE,EAAE,CAAC;EACN,OAAO,IAAI;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,WAAWA,CAAC;EAAEC,OAAO;EAAEC,cAAc;EAAER,cAAc;EAAEN;AAAgC,CAAC,EAAE;EAC/F,oBACIR,IAAA,CAACR,KAAK;IAAC6B,OAAO,EAAEA,OAAQ;IAACE,WAAW;IAACC,aAAa,EAAC,MAAM;IAACC,oBAAoB;IAACH,cAAc,EAAEA,cAAe;IAAAd,QAAA,eAC1GN,KAAA,CAACO,gBAAgB;MAAAD,QAAA,gBACbR,IAAA,CAACa,iBAAiB;QAACC,cAAc,EAAEA;MAAe,CAAE,CAAC,eACrDd,IAAA,CAACL,sBAAsB;QAAC+B,KAAK,EAAEC,MAAM,CAACC,QAAS;QAAApB,QAAA,EAAEA;MAAQ,CAAyB,CAAC;IAAA,CACrE;EAAC,CAChB,CAAC;AAEhB;AAEA,MAAMqB,WAAW,gBAAGtC,UAAU,CAAC,CAACuC,KAAuB,EAAEC,GAAuC,kBAC5F/B,IAAA,CAACJ,eAAe;EAAA,GAAKkC,KAAK;EAAEC,GAAG,EAAEA,GAAI;EAACC,KAAK,EAAEZ;AAAY,CAAE,CAC9D,CAAC;AAEFS,WAAW,CAACI,WAAW,GAAG,aAAa;AAEvC,MAAMN,MAAM,GAAGjC,UAAU,CAACwC,MAAM,CAAC;EAC7BN,QAAQ,EAAE;IACNO,IAAI,EAAE;EACV;AACJ,CAAC,CAAC;AAGF,eAAeN,WAAW;AAC1B,SAASA,WAAW","ignoreList":[]}