@oxyhq/bloom 0.32.0 → 0.32.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.
- package/lib/commonjs/button/Button.web.js +6 -29
- package/lib/commonjs/button/Button.web.js.map +1 -1
- package/lib/commonjs/fab/Fab.web.js +11 -2
- package/lib/commonjs/fab/Fab.web.js.map +1 -1
- package/lib/commonjs/styles/flatten-web-style.js +49 -0
- package/lib/commonjs/styles/flatten-web-style.js.map +1 -0
- package/lib/module/button/Button.web.js +6 -29
- package/lib/module/button/Button.web.js.map +1 -1
- package/lib/module/fab/Fab.web.js +11 -2
- package/lib/module/fab/Fab.web.js.map +1 -1
- package/lib/module/styles/flatten-web-style.js +45 -0
- package/lib/module/styles/flatten-web-style.js.map +1 -0
- package/lib/typescript/commonjs/button/Button.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/fab/Fab.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/styles/flatten-web-style.d.ts +6 -0
- package/lib/typescript/commonjs/styles/flatten-web-style.d.ts.map +1 -0
- package/lib/typescript/module/button/Button.web.d.ts.map +1 -1
- package/lib/typescript/module/fab/Fab.web.d.ts.map +1 -1
- package/lib/typescript/module/styles/flatten-web-style.d.ts +6 -0
- package/lib/typescript/module/styles/flatten-web-style.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/__tests__/Fab.web.test.tsx +62 -0
- package/src/button/Button.web.tsx +6 -36
- package/src/fab/Fab.web.tsx +11 -2
- package/src/styles/flatten-web-style.ts +58 -0
|
@@ -7,6 +7,7 @@ exports.TextButton = exports.SecondaryButton = exports.PrimaryButton = exports.O
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _useTheme = require("../theme/use-theme.js");
|
|
9
9
|
var _SpinnerIconWeb = require("../loading/SpinnerIcon.web.js");
|
|
10
|
+
var _flattenWebStyle = require("../styles/flatten-web-style.js");
|
|
10
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
12
13
|
// ---------------------------------------------------------------------------
|
|
@@ -214,32 +215,6 @@ function resolveVariantStyle(variant, size, theme) {
|
|
|
214
215
|
}
|
|
215
216
|
}
|
|
216
217
|
|
|
217
|
-
// ---------------------------------------------------------------------------
|
|
218
|
-
// Style normalization
|
|
219
|
-
//
|
|
220
|
-
// Callers idiomatically pass `style` as a React-Native `StyleProp` — most
|
|
221
|
-
// often an ARRAY (`style={[base, cond && override]}`, possibly nested and
|
|
222
|
-
// containing falsy holes from `cond && {...}`). The DOM `<button>` below needs
|
|
223
|
-
// a SINGLE plain object: spreading a raw array into an object literal produces
|
|
224
|
-
// numeric keys (`"0"`, `"1"`, …), which React then assigns onto the real
|
|
225
|
-
// `CSSStyleDeclaration`, throwing
|
|
226
|
-
// `Failed to set an indexed property [0] on 'CSSStyleDeclaration'`. Flatten the
|
|
227
|
-
// StyleProp into one object here, once, before it reaches either merge site.
|
|
228
|
-
// Later entries win, mirroring React-Native array-style precedence.
|
|
229
|
-
//
|
|
230
|
-
// `StyleNode` is a readonly-closed recursion type (RN's own `StyleProp` array
|
|
231
|
-
// member yields `readonly` sub-arrays that aren't assignable back to
|
|
232
|
-
// `StyleProp`, so it can't be recursed over directly). `ButtonProps['style']`
|
|
233
|
-
// is assignable to it, so call sites pass `style` with no cast.
|
|
234
|
-
// ---------------------------------------------------------------------------
|
|
235
|
-
|
|
236
|
-
function flattenStyle(style) {
|
|
237
|
-
if (Array.isArray(style)) {
|
|
238
|
-
return style.reduce((merged, entry) => Object.assign(merged, flattenStyle(entry)), {});
|
|
239
|
-
}
|
|
240
|
-
return style && typeof style === 'object' ? style : {};
|
|
241
|
-
}
|
|
242
|
-
|
|
243
218
|
// ---------------------------------------------------------------------------
|
|
244
219
|
// Component
|
|
245
220
|
// ---------------------------------------------------------------------------
|
|
@@ -323,9 +298,11 @@ const ButtonWebComponent = ({
|
|
|
323
298
|
const composedClassName = ['bloom-btn'].concat(resolvedVariant === 'link' ? ['bloom-btn--link'] : []).concat(className ? [className] : []).join(' ');
|
|
324
299
|
const spinnerColor = loadingColor ?? variantStyle.textColor;
|
|
325
300
|
|
|
326
|
-
// Normalize the caller's `style` (single object, array, or falsy)
|
|
327
|
-
// flat plain object
|
|
328
|
-
|
|
301
|
+
// Normalize the caller's `style` (single object, StyleProp array, or falsy)
|
|
302
|
+
// into ONE flat plain object here, once, so neither raw-DOM merge site below
|
|
303
|
+
// spreads a StyleProp array (which would leak numeric keys onto the button's
|
|
304
|
+
// CSSStyleDeclaration). See `flattenWebStyle` for the full rationale.
|
|
305
|
+
const resolvedStyle = (0, _flattenWebStyle.flattenWebStyle)(style);
|
|
329
306
|
const content = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
330
307
|
children: [iconPosition === 'left' && icon, children != null && (typeof children === 'string' || typeof children === 'number' ? /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
331
308
|
children: children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_useTheme","_SpinnerIconWeb","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZE_CONFIG","small","paddingVertical","paddingHorizontal","fontSize","minHeight","medium","large","SIZE_ALIAS","sm","md","lg","icon","PILL_RADIUS","ICON_RADIUS","PRESS_SCALE","SCALE_VARIANTS","Set","STYLE_ID","BLOOM_BUTTON_CSS","useButtonCss","useEffect","document","getElementById","style","createElement","id","textContent","head","appendChild","resolveVariantStyle","variant","size","theme","c","colors","sizeConfig","container","backgroundColor","primary","borderRadius","textColor","primaryForeground","ringColor","negative","negativeForeground","borderWidth","borderStyle","borderColor","border","text","background","padding","width","height","flattenStyle","Array","isArray","reduce","merged","entry","assign","ButtonWebComponent","onPress","onClick","children","disabled","sizeProp","iconPosition","loading","loadingColor","accessibilityLabel","ariaLabelProp","accessibilityHint","testID","className","type","asChild","name","value","title","autoFocus","tabIndex","fullWidth","useTheme","reactId","useId","resolvedId","resolvedVariant","isIcon","isInteractionBlocked","variantStyle","useMemo","containerStyle","base","fontWeight","color","undefined","paddingTop","paddingBottom","paddingLeft","paddingRight","handleClick","useCallback","event","preventDefault","ariaLabel","composedClassName","concat","join","spinnerColor","resolvedStyle","content","jsxs","Fragment","jsx","body","display","alignItems","justifyContent","gap","opacity","pointerEvents","position","inset","SpinnerIcon","Math","round","React","isValidElement","child","childProps","props","cloneElement","filter","Boolean","Button","exports","memo","displayName","PrimaryButton","SecondaryButton","IconButton","GhostButton","InverseButton","TextButton","OutlineButton","LinkButton","DestructiveButton"],"sourceRoot":"../../../src","sources":["button/Button.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_useTheme","_SpinnerIconWeb","_flattenWebStyle","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZE_CONFIG","small","paddingVertical","paddingHorizontal","fontSize","minHeight","medium","large","SIZE_ALIAS","sm","md","lg","icon","PILL_RADIUS","ICON_RADIUS","PRESS_SCALE","SCALE_VARIANTS","Set","STYLE_ID","BLOOM_BUTTON_CSS","useButtonCss","useEffect","document","getElementById","style","createElement","id","textContent","head","appendChild","resolveVariantStyle","variant","size","theme","c","colors","sizeConfig","container","backgroundColor","primary","borderRadius","textColor","primaryForeground","ringColor","negative","negativeForeground","borderWidth","borderStyle","borderColor","border","text","background","padding","width","height","ButtonWebComponent","onPress","onClick","children","disabled","sizeProp","iconPosition","loading","loadingColor","accessibilityLabel","ariaLabelProp","accessibilityHint","testID","className","type","asChild","name","value","title","autoFocus","tabIndex","fullWidth","useTheme","reactId","useId","resolvedId","resolvedVariant","isIcon","isInteractionBlocked","variantStyle","useMemo","containerStyle","base","fontWeight","color","undefined","paddingTop","paddingBottom","paddingLeft","paddingRight","handleClick","useCallback","event","preventDefault","ariaLabel","composedClassName","concat","join","spinnerColor","resolvedStyle","flattenWebStyle","content","jsxs","Fragment","jsx","body","display","alignItems","justifyContent","gap","opacity","pointerEvents","position","inset","SpinnerIcon","Math","round","React","isValidElement","child","childProps","props","cloneElement","filter","Boolean","Button","exports","memo","displayName","PrimaryButton","SecondaryButton","IconButton","GhostButton","InverseButton","TextButton","OutlineButton","LinkButton","DestructiveButton"],"sourceRoot":"../../../src","sources":["button/Button.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.Fab = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _useTheme = require("../theme/use-theme.js");
|
|
9
|
+
var _flattenWebStyle = require("../styles/flatten-web-style.js");
|
|
9
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
11
12
|
// Material-style FAB scale. `small` (40px) keeps a full 24px icon box so the
|
|
@@ -244,13 +245,21 @@ const FabWebComponent = ({
|
|
|
244
245
|
}, [disabled, onClick, onPress]);
|
|
245
246
|
const ariaLabel = ariaLabelProp ?? accessibilityLabel ?? label;
|
|
246
247
|
const composedClassName = ['bloom-fab'].concat(className ? [className] : []).join(' ');
|
|
248
|
+
|
|
249
|
+
// Normalize `style`/`labelStyle` (single object, StyleProp array — the native
|
|
250
|
+
// fork passes `style={[placementStyle(...), {...}, style]}` — or falsy) into
|
|
251
|
+
// ONE flat plain object each, so neither raw-DOM merge site below spreads a
|
|
252
|
+
// StyleProp array (which would leak numeric keys onto the element's
|
|
253
|
+
// CSSStyleDeclaration). See `flattenWebStyle` for the full rationale.
|
|
254
|
+
const resolvedStyle = (0, _flattenWebStyle.flattenWebStyle)(style);
|
|
255
|
+
const resolvedLabelStyle = (0, _flattenWebStyle.flattenWebStyle)(labelStyle);
|
|
247
256
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("button", {
|
|
248
257
|
id: resolvedId,
|
|
249
258
|
type: type,
|
|
250
259
|
className: composedClassName,
|
|
251
260
|
style: {
|
|
252
261
|
...containerStyle,
|
|
253
|
-
...
|
|
262
|
+
...resolvedStyle
|
|
254
263
|
},
|
|
255
264
|
onClick: handleClick,
|
|
256
265
|
disabled: disabled,
|
|
@@ -269,7 +278,7 @@ const FabWebComponent = ({
|
|
|
269
278
|
},
|
|
270
279
|
children: content
|
|
271
280
|
}), isExtended && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
272
|
-
style:
|
|
281
|
+
style: resolvedLabelStyle,
|
|
273
282
|
children: label
|
|
274
283
|
})]
|
|
275
284
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_useTheme","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZE_CONFIG","small","diameter","iconBox","fontSize","medium","large","MIN_NUMERIC_ICON_BOX","resolveSize","size","Math","max","round","PILL_RADIUS","PRESS_SCALE","DEFAULT_OFFSET","DEFAULT_Z_INDEX","STYLE_ID","BLOOM_FAB_CSS","useFabCss","useEffect","document","getElementById","style","createElement","id","textContent","head","appendChild","placementStyle","placement","offset","position","isBottom","bottom","marginTop","top","alignSelf","marginRight","marginLeft","resolveVariant","variant","c","background","card","foreground","text","ring","primary","primaryForeground","FabWebComponent","onPress","onClick","icon","children","label","disabled","accessibilityLabel","ariaLabelProp","accessibilityHint","labelStyle","className","testID","zIndex","title","type","theme","useTheme","reactId","useId","resolvedId","sizeConfig","useMemo","isExtended","length","content","variantColors","colors","restShadow","shadow","hoverShadow","containerStyle","base","backgroundColor","color","borderRadius","height","boxShadow","fontWeight","pad","paddingLeft","paddingRight","width","handleClick","useCallback","event","preventDefault","ariaLabel","composedClassName","concat","join","jsxs","undefined","jsx","display","alignItems","justifyContent","Fab","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["fab/Fab.web.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAUA,IAAAC,SAAA,GAAAD,OAAA;
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_useTheme","_flattenWebStyle","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZE_CONFIG","small","diameter","iconBox","fontSize","medium","large","MIN_NUMERIC_ICON_BOX","resolveSize","size","Math","max","round","PILL_RADIUS","PRESS_SCALE","DEFAULT_OFFSET","DEFAULT_Z_INDEX","STYLE_ID","BLOOM_FAB_CSS","useFabCss","useEffect","document","getElementById","style","createElement","id","textContent","head","appendChild","placementStyle","placement","offset","position","isBottom","bottom","marginTop","top","alignSelf","marginRight","marginLeft","resolveVariant","variant","c","background","card","foreground","text","ring","primary","primaryForeground","FabWebComponent","onPress","onClick","icon","children","label","disabled","accessibilityLabel","ariaLabelProp","accessibilityHint","labelStyle","className","testID","zIndex","title","type","theme","useTheme","reactId","useId","resolvedId","sizeConfig","useMemo","isExtended","length","content","variantColors","colors","restShadow","shadow","hoverShadow","containerStyle","base","backgroundColor","color","borderRadius","height","boxShadow","fontWeight","pad","paddingLeft","paddingRight","width","handleClick","useCallback","event","preventDefault","ariaLabel","composedClassName","concat","join","resolvedStyle","flattenWebStyle","resolvedLabelStyle","jsxs","undefined","jsx","display","alignItems","justifyContent","Fab","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["fab/Fab.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.flattenWebStyle = flattenWebStyle;
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
// flattenWebStyle — StyleProp → plain CSSProperties, for raw-DOM web forks.
|
|
9
|
+
//
|
|
10
|
+
// A handful of Bloom's `.web.tsx` forks (`Button.web.tsx`, `Fab.web.tsx`)
|
|
11
|
+
// render REAL HTML elements through react-dom (`<button>`, `<span>`), NOT
|
|
12
|
+
// react-native-web components. Their `style` prop is therefore a single plain
|
|
13
|
+
// `CSSProperties` object that React commits straight to a live
|
|
14
|
+
// `CSSStyleDeclaration`.
|
|
15
|
+
//
|
|
16
|
+
// Callers, however, pass `style` as a React-Native `StyleProp` — most often an
|
|
17
|
+
// ARRAY (`style={[base, cond && override]}`, possibly nested, with falsy holes
|
|
18
|
+
// from `cond && {...}`). Spreading a raw array into an object literal produces
|
|
19
|
+
// numeric keys ("0", "1", …), which React then assigns onto the DOM node's
|
|
20
|
+
// `CSSStyleDeclaration`, throwing:
|
|
21
|
+
// `Failed to set an indexed property [0] on 'CSSStyleDeclaration'`.
|
|
22
|
+
//
|
|
23
|
+
// Why NOT `StyleSheet.flatten` (the convention the RNW-component forks such as
|
|
24
|
+
// `list/index.web.tsx` use): these raw-DOM forks have NO other react-native
|
|
25
|
+
// runtime dependency. Reaching for `StyleSheet.flatten` would couple them to
|
|
26
|
+
// the `react-native` → `react-native-web` bundler alias they otherwise never
|
|
27
|
+
// need — a coupling the jsdom test environment does not provide (its
|
|
28
|
+
// `react-native` mock stubs `flatten` as an identity no-op, so an array would
|
|
29
|
+
// pass through unflattened and the raw-DOM render would crash under test). A
|
|
30
|
+
// dependency-free flatten is provably correct in every bundling/test context,
|
|
31
|
+
// so it is the right convention for THIS sub-class of forks specifically.
|
|
32
|
+
//
|
|
33
|
+
// `StyleNode` is a readonly-closed recursion type: RN's own `StyleProp` array
|
|
34
|
+
// members are `readonly` and its `RegisteredStyle` members are branded numbers,
|
|
35
|
+
// neither of which is assignable back to `StyleProp` for direct recursion.
|
|
36
|
+
// `StyleProp<ViewStyle>` / `StyleProp<TextStyle>` ARE assignable to it, so call
|
|
37
|
+
// sites pass `style` / `labelStyle` with no cast. Later entries win, mirroring
|
|
38
|
+
// React-Native array-style precedence; falsy holes and unresolved registered-
|
|
39
|
+
// style ids (bare numbers — not resolvable without the RN runtime, and never
|
|
40
|
+
// passed to a raw-DOM fork in practice) are skipped.
|
|
41
|
+
// ---------------------------------------------------------------------------
|
|
42
|
+
|
|
43
|
+
function flattenWebStyle(style) {
|
|
44
|
+
if (Array.isArray(style)) {
|
|
45
|
+
return style.reduce((merged, entry) => Object.assign(merged, flattenWebStyle(entry)), {});
|
|
46
|
+
}
|
|
47
|
+
return style && typeof style === 'object' ? style : {};
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=flatten-web-style.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["flattenWebStyle","style","Array","isArray","reduce","merged","entry","Object","assign"],"sourceRoot":"../../../src","sources":["styles/flatten-web-style.ts"],"mappings":";;;;;;AAGA;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;;AAYO,SAASA,eAAeA,CAACC,KAAgB,EAAiB;EAC/D,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;IACxB,OAAOA,KAAK,CAACG,MAAM,CACjB,CAACC,MAAM,EAAEC,KAAK,KAAKC,MAAM,CAACC,MAAM,CAACH,MAAM,EAAEL,eAAe,CAACM,KAAK,CAAC,CAAC,EAChE,CAAC,CACH,CAAC;EACH;EACA,OAAOL,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,GAAIA,KAAK,GAAqB,CAAC,CAAC;AAC3E","ignoreList":[]}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import React, { memo, useCallback, useEffect, useId, useMemo } from 'react';
|
|
4
4
|
import { useTheme } from "../theme/use-theme.js";
|
|
5
5
|
import { SpinnerIcon } from "../loading/SpinnerIcon.web.js";
|
|
6
|
+
import { flattenWebStyle } from "../styles/flatten-web-style.js";
|
|
6
7
|
|
|
7
8
|
// ---------------------------------------------------------------------------
|
|
8
9
|
// Geometry — mirrors the native (`Button.tsx`) impl exactly so the web button
|
|
@@ -209,32 +210,6 @@ function resolveVariantStyle(variant, size, theme) {
|
|
|
209
210
|
}
|
|
210
211
|
}
|
|
211
212
|
|
|
212
|
-
// ---------------------------------------------------------------------------
|
|
213
|
-
// Style normalization
|
|
214
|
-
//
|
|
215
|
-
// Callers idiomatically pass `style` as a React-Native `StyleProp` — most
|
|
216
|
-
// often an ARRAY (`style={[base, cond && override]}`, possibly nested and
|
|
217
|
-
// containing falsy holes from `cond && {...}`). The DOM `<button>` below needs
|
|
218
|
-
// a SINGLE plain object: spreading a raw array into an object literal produces
|
|
219
|
-
// numeric keys (`"0"`, `"1"`, …), which React then assigns onto the real
|
|
220
|
-
// `CSSStyleDeclaration`, throwing
|
|
221
|
-
// `Failed to set an indexed property [0] on 'CSSStyleDeclaration'`. Flatten the
|
|
222
|
-
// StyleProp into one object here, once, before it reaches either merge site.
|
|
223
|
-
// Later entries win, mirroring React-Native array-style precedence.
|
|
224
|
-
//
|
|
225
|
-
// `StyleNode` is a readonly-closed recursion type (RN's own `StyleProp` array
|
|
226
|
-
// member yields `readonly` sub-arrays that aren't assignable back to
|
|
227
|
-
// `StyleProp`, so it can't be recursed over directly). `ButtonProps['style']`
|
|
228
|
-
// is assignable to it, so call sites pass `style` with no cast.
|
|
229
|
-
// ---------------------------------------------------------------------------
|
|
230
|
-
|
|
231
|
-
function flattenStyle(style) {
|
|
232
|
-
if (Array.isArray(style)) {
|
|
233
|
-
return style.reduce((merged, entry) => Object.assign(merged, flattenStyle(entry)), {});
|
|
234
|
-
}
|
|
235
|
-
return style && typeof style === 'object' ? style : {};
|
|
236
|
-
}
|
|
237
|
-
|
|
238
213
|
// ---------------------------------------------------------------------------
|
|
239
214
|
// Component
|
|
240
215
|
// ---------------------------------------------------------------------------
|
|
@@ -318,9 +293,11 @@ const ButtonWebComponent = ({
|
|
|
318
293
|
const composedClassName = ['bloom-btn'].concat(resolvedVariant === 'link' ? ['bloom-btn--link'] : []).concat(className ? [className] : []).join(' ');
|
|
319
294
|
const spinnerColor = loadingColor ?? variantStyle.textColor;
|
|
320
295
|
|
|
321
|
-
// Normalize the caller's `style` (single object, array, or falsy)
|
|
322
|
-
// flat plain object
|
|
323
|
-
|
|
296
|
+
// Normalize the caller's `style` (single object, StyleProp array, or falsy)
|
|
297
|
+
// into ONE flat plain object here, once, so neither raw-DOM merge site below
|
|
298
|
+
// spreads a StyleProp array (which would leak numeric keys onto the button's
|
|
299
|
+
// CSSStyleDeclaration). See `flattenWebStyle` for the full rationale.
|
|
300
|
+
const resolvedStyle = flattenWebStyle(style);
|
|
324
301
|
const content = /*#__PURE__*/_jsxs(_Fragment, {
|
|
325
302
|
children: [iconPosition === 'left' && icon, children != null && (typeof children === 'string' || typeof children === 'number' ? /*#__PURE__*/_jsx("span", {
|
|
326
303
|
children: children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","memo","useCallback","useEffect","useId","useMemo","useTheme","SpinnerIcon","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SIZE_CONFIG","small","paddingVertical","paddingHorizontal","fontSize","minHeight","medium","large","SIZE_ALIAS","sm","md","lg","icon","PILL_RADIUS","ICON_RADIUS","PRESS_SCALE","SCALE_VARIANTS","Set","STYLE_ID","BLOOM_BUTTON_CSS","useButtonCss","document","getElementById","style","createElement","id","textContent","head","appendChild","resolveVariantStyle","variant","size","theme","c","colors","sizeConfig","container","backgroundColor","primary","borderRadius","textColor","primaryForeground","ringColor","negative","negativeForeground","borderWidth","borderStyle","borderColor","border","text","background","padding","width","height","flattenStyle","Array","isArray","reduce","merged","entry","Object","assign","ButtonWebComponent","onPress","onClick","children","disabled","sizeProp","iconPosition","loading","loadingColor","accessibilityLabel","ariaLabelProp","accessibilityHint","testID","className","type","asChild","name","value","title","autoFocus","tabIndex","fullWidth","reactId","resolvedId","resolvedVariant","isIcon","isInteractionBlocked","variantStyle","containerStyle","base","fontWeight","color","undefined","has","paddingTop","paddingBottom","paddingLeft","paddingRight","handleClick","event","preventDefault","ariaLabel","composedClassName","concat","join","spinnerColor","resolvedStyle","content","body","display","alignItems","justifyContent","gap","opacity","pointerEvents","position","inset","Math","round","isValidElement","child","childProps","props","cloneElement","filter","Boolean","Button","displayName","PrimaryButton","SecondaryButton","IconButton","GhostButton","InverseButton","TextButton","OutlineButton","LinkButton","DestructiveButton"],"sourceRoot":"../../../src","sources":["button/Button.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","memo","useCallback","useEffect","useId","useMemo","useTheme","SpinnerIcon","flattenWebStyle","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SIZE_CONFIG","small","paddingVertical","paddingHorizontal","fontSize","minHeight","medium","large","SIZE_ALIAS","sm","md","lg","icon","PILL_RADIUS","ICON_RADIUS","PRESS_SCALE","SCALE_VARIANTS","Set","STYLE_ID","BLOOM_BUTTON_CSS","useButtonCss","document","getElementById","style","createElement","id","textContent","head","appendChild","resolveVariantStyle","variant","size","theme","c","colors","sizeConfig","container","backgroundColor","primary","borderRadius","textColor","primaryForeground","ringColor","negative","negativeForeground","borderWidth","borderStyle","borderColor","border","text","background","padding","width","height","ButtonWebComponent","onPress","onClick","children","disabled","sizeProp","iconPosition","loading","loadingColor","accessibilityLabel","ariaLabelProp","accessibilityHint","testID","className","type","asChild","name","value","title","autoFocus","tabIndex","fullWidth","reactId","resolvedId","resolvedVariant","isIcon","isInteractionBlocked","variantStyle","containerStyle","base","fontWeight","color","undefined","has","paddingTop","paddingBottom","paddingLeft","paddingRight","handleClick","event","preventDefault","ariaLabel","composedClassName","concat","join","spinnerColor","resolvedStyle","content","body","display","alignItems","justifyContent","gap","opacity","pointerEvents","position","inset","Math","round","isValidElement","child","childProps","props","cloneElement","filter","Boolean","Button","displayName","PrimaryButton","SecondaryButton","IconButton","GhostButton","InverseButton","TextButton","OutlineButton","LinkButton","DestructiveButton"],"sourceRoot":"../../../src","sources":["button/Button.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import React, { memo, useCallback, useEffect, useId, useMemo } from 'react';
|
|
4
4
|
import { useTheme } from "../theme/use-theme.js";
|
|
5
|
+
import { flattenWebStyle } from "../styles/flatten-web-style.js";
|
|
5
6
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
7
|
// Material-style FAB scale. `small` (40px) keeps a full 24px icon box so the
|
|
7
8
|
// glyph reads clearly; `medium` (56px) is the canonical FAB; `large` (64px) is
|
|
@@ -239,13 +240,21 @@ const FabWebComponent = ({
|
|
|
239
240
|
}, [disabled, onClick, onPress]);
|
|
240
241
|
const ariaLabel = ariaLabelProp ?? accessibilityLabel ?? label;
|
|
241
242
|
const composedClassName = ['bloom-fab'].concat(className ? [className] : []).join(' ');
|
|
243
|
+
|
|
244
|
+
// Normalize `style`/`labelStyle` (single object, StyleProp array — the native
|
|
245
|
+
// fork passes `style={[placementStyle(...), {...}, style]}` — or falsy) into
|
|
246
|
+
// ONE flat plain object each, so neither raw-DOM merge site below spreads a
|
|
247
|
+
// StyleProp array (which would leak numeric keys onto the element's
|
|
248
|
+
// CSSStyleDeclaration). See `flattenWebStyle` for the full rationale.
|
|
249
|
+
const resolvedStyle = flattenWebStyle(style);
|
|
250
|
+
const resolvedLabelStyle = flattenWebStyle(labelStyle);
|
|
242
251
|
return /*#__PURE__*/_jsxs("button", {
|
|
243
252
|
id: resolvedId,
|
|
244
253
|
type: type,
|
|
245
254
|
className: composedClassName,
|
|
246
255
|
style: {
|
|
247
256
|
...containerStyle,
|
|
248
|
-
...
|
|
257
|
+
...resolvedStyle
|
|
249
258
|
},
|
|
250
259
|
onClick: handleClick,
|
|
251
260
|
disabled: disabled,
|
|
@@ -264,7 +273,7 @@ const FabWebComponent = ({
|
|
|
264
273
|
},
|
|
265
274
|
children: content
|
|
266
275
|
}), isExtended && /*#__PURE__*/_jsx("span", {
|
|
267
|
-
style:
|
|
276
|
+
style: resolvedLabelStyle,
|
|
268
277
|
children: label
|
|
269
278
|
})]
|
|
270
279
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","memo","useCallback","useEffect","useId","useMemo","useTheme","jsx","_jsx","jsxs","_jsxs","SIZE_CONFIG","small","diameter","iconBox","fontSize","medium","large","MIN_NUMERIC_ICON_BOX","resolveSize","size","Math","max","round","PILL_RADIUS","PRESS_SCALE","DEFAULT_OFFSET","DEFAULT_Z_INDEX","STYLE_ID","BLOOM_FAB_CSS","useFabCss","document","getElementById","style","createElement","id","textContent","head","appendChild","placementStyle","placement","offset","position","isBottom","bottom","marginTop","top","alignSelf","marginRight","marginLeft","resolveVariant","variant","c","background","card","foreground","text","ring","primary","primaryForeground","FabWebComponent","onPress","onClick","icon","children","label","disabled","accessibilityLabel","ariaLabelProp","accessibilityHint","labelStyle","className","testID","zIndex","title","type","theme","reactId","resolvedId","sizeConfig","isExtended","length","content","variantColors","colors","restShadow","shadow","hoverShadow","containerStyle","base","backgroundColor","color","borderRadius","height","boxShadow","fontWeight","pad","paddingLeft","paddingRight","width","handleClick","event","preventDefault","ariaLabel","composedClassName","concat","join","undefined","display","alignItems","justifyContent","Fab","displayName"],"sourceRoot":"../../../src","sources":["fab/Fab.web.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IACVC,IAAI,EACJC,WAAW,EACXC,SAAS,EACTC,KAAK,EACLC,OAAO,QAGF,OAAO;AAEd,SAASC,QAAQ,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;
|
|
1
|
+
{"version":3,"names":["React","memo","useCallback","useEffect","useId","useMemo","useTheme","flattenWebStyle","jsx","_jsx","jsxs","_jsxs","SIZE_CONFIG","small","diameter","iconBox","fontSize","medium","large","MIN_NUMERIC_ICON_BOX","resolveSize","size","Math","max","round","PILL_RADIUS","PRESS_SCALE","DEFAULT_OFFSET","DEFAULT_Z_INDEX","STYLE_ID","BLOOM_FAB_CSS","useFabCss","document","getElementById","style","createElement","id","textContent","head","appendChild","placementStyle","placement","offset","position","isBottom","bottom","marginTop","top","alignSelf","marginRight","marginLeft","resolveVariant","variant","c","background","card","foreground","text","ring","primary","primaryForeground","FabWebComponent","onPress","onClick","icon","children","label","disabled","accessibilityLabel","ariaLabelProp","accessibilityHint","labelStyle","className","testID","zIndex","title","type","theme","reactId","resolvedId","sizeConfig","isExtended","length","content","variantColors","colors","restShadow","shadow","hoverShadow","containerStyle","base","backgroundColor","color","borderRadius","height","boxShadow","fontWeight","pad","paddingLeft","paddingRight","width","handleClick","event","preventDefault","ariaLabel","composedClassName","concat","join","resolvedStyle","resolvedLabelStyle","undefined","display","alignItems","justifyContent","Fab","displayName"],"sourceRoot":"../../../src","sources":["fab/Fab.web.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IACVC,IAAI,EACJC,WAAW,EACXC,SAAS,EACTC,KAAK,EACLC,OAAO,QAGF,OAAO;AAEd,SAASC,QAAQ,QAAQ,uBAAoB;AAE7C,SAASC,eAAe,QAAQ,gCAA6B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAW9D;AACA;AACA;AACA,MAAMC,WAA0C,GAAG;EACjDC,KAAK,EAAE;IAAEC,QAAQ,EAAE,EAAE;IAAEC,OAAO,EAAE,EAAE;IAAEC,QAAQ,EAAE;EAAG,CAAC;EAClDC,MAAM,EAAE;IAAEH,QAAQ,EAAE,EAAE;IAAEC,OAAO,EAAE,EAAE;IAAEC,QAAQ,EAAE;EAAG,CAAC;EACnDE,KAAK,EAAE;IAAEJ,QAAQ,EAAE,EAAE;IAAEC,OAAO,EAAE,EAAE;IAAEC,QAAQ,EAAE;EAAG;AACnD,CAAC;AAED,MAAMG,oBAAoB,GAAG,EAAE;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,WAAWA,CAACC,IAAsB,EAAgB;EACzD,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IAC5B,OAAO;MACLP,QAAQ,EAAEO,IAAI;MACdN,OAAO,EAAEO,IAAI,CAACC,GAAG,CAACJ,oBAAoB,EAAEG,IAAI,CAACE,KAAK,CAACH,IAAI,GAAG,GAAG,CAAC,CAAC;MAC/DL,QAAQ,EAAEM,IAAI,CAACC,GAAG,CAAC,EAAE,EAAED,IAAI,CAACE,KAAK,CAACH,IAAI,GAAG,IAAI,CAAC;IAChD,CAAC;EACH;EACA,OAAOT,WAAW,CAACS,IAAI,CAAC;AAC1B;AAEA,MAAMI,WAAW,GAAG,GAAG;AACvB,MAAMC,WAAW,GAAG,IAAI;AACxB,MAAMC,cAAc,GAAG,EAAE;AACzB,MAAMC,eAAe,GAAG,EAAE;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,QAAQ,GAAG,mBAAmB;AAEpC,MAAMC,aAAa,GAAG;AACtB;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,CAAC;AAED,SAASC,SAASA,CAAA,EAAS;EACzB5B,SAAS,CAAC,MAAM;IACd,IAAI,OAAO6B,QAAQ,KAAK,WAAW,EAAE;IACrC,IAAIA,QAAQ,CAACC,cAAc,CAACJ,QAAQ,CAAC,EAAE;IACvC,MAAMK,KAAK,GAAGF,QAAQ,CAACG,aAAa,CAAC,OAAO,CAAC;IAC7CD,KAAK,CAACE,EAAE,GAAGP,QAAQ;IACnBK,KAAK,CAACG,WAAW,GAAGP,aAAa;IACjCE,QAAQ,CAACM,IAAI,CAACC,WAAW,CAACL,KAAK,CAAC;EAClC,CAAC,EAAE,EAAE,CAAC;AACR;;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,SAASM,cAAcA,CAACC,SAAuB,EAAEC,MAAc,EAAiB;EAC9E,IAAID,SAAS,KAAK,QAAQ,EAAE,OAAO,CAAC,CAAC;EACrC,MAAMP,KAAoB,GAAG;IAAES,QAAQ,EAAE;EAAS,CAAC;EACnD,MAAMC,QAAQ,GAAGH,SAAS,KAAK,cAAc,IAAIA,SAAS,KAAK,aAAa;EAC5E,IAAIG,QAAQ,EAAE;IACZV,KAAK,CAACW,MAAM,GAAGH,MAAM;IACrB;IACA;IACAR,KAAK,CAACY,SAAS,GAAG,MAAM;EAC1B,CAAC,MAAM;IACLZ,KAAK,CAACa,GAAG,GAAGL,MAAM;EACpB;EACA,IAAID,SAAS,KAAK,cAAc,IAAIA,SAAS,KAAK,WAAW,EAAE;IAC7DP,KAAK,CAACc,SAAS,GAAG,UAAU;IAC5Bd,KAAK,CAACe,WAAW,GAAGP,MAAM;EAC5B,CAAC,MAAM;IACLR,KAAK,CAACc,SAAS,GAAG,YAAY;IAC9Bd,KAAK,CAACgB,UAAU,GAAGR,MAAM;EAC3B;EACA,OAAOR,KAAK;AACd;AAEA,SAASiB,cAAcA,CACrBC,OAAmB,EACnBC,CAAkB,EACwC;EAC1D,QAAQD,OAAO;IACb,KAAK,WAAW;IAChB,KAAK,SAAS;MACZ,OAAO;QAAEE,UAAU,EAAED,CAAC,CAACE,IAAI;QAAEC,UAAU,EAAEH,CAAC,CAACI,IAAI;QAAEC,IAAI,EAAEL,CAAC,CAACM;MAAQ,CAAC;IACpE,KAAK,SAAS;IACd;MACE,OAAO;QAAEL,UAAU,EAAED,CAAC,CAACM,OAAO;QAAEH,UAAU,EAAEH,CAAC,CAACO,iBAAiB;QAAEF,IAAI,EAAEL,CAAC,CAACM;MAAQ,CAAC;EACtF;AACF;AAEA,MAAME,eAAmC,GAAGA,CAAC;EAC3CC,OAAO;EACPC,OAAO;EACPC,IAAI;EACJC,QAAQ;EACRC,KAAK;EACLd,OAAO,GAAG,SAAS;EACnB/B,IAAI,GAAG,QAAQ;EACfoB,SAAS,GAAG,cAAc;EAC1BC,MAAM,GAAGf,cAAc;EACvBwC,QAAQ,GAAG,KAAK;EAChBC,kBAAkB;EAClB,YAAY,EAAEC,aAAa;EAC3BC,iBAAiB;EACjBpC,KAAK;EACLqC,UAAU;EACVC,SAAS;EACTC,MAAM;EACNC,MAAM,GAAG9C,eAAe;EACxBQ,EAAE;EACFuC,KAAK;EACLC,IAAI,GAAG;AACT,CAAC,KAAK;EACJ7C,SAAS,CAAC,CAAC;EACX,MAAM8C,KAAK,GAAGvE,QAAQ,CAAC,CAAC;EACxB,MAAMwE,OAAO,GAAG1E,KAAK,CAAC,CAAC;EACvB,MAAM2E,UAAU,GAAG3C,EAAE,IAAI,aAAa0C,OAAO,EAAE;EAE/C,MAAME,UAAU,GAAG3E,OAAO,CAAC,MAAMe,WAAW,CAACC,IAAI,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAC3D,MAAM4D,UAAU,GAAGf,KAAK,IAAI,IAAI,IAAIA,KAAK,CAACgB,MAAM,GAAG,CAAC;EACpD,MAAMC,OAAO,GAAGnB,IAAI,IAAIC,QAAQ;EAChC,MAAMmB,aAAa,GAAG/E,OAAO,CAAC,MAAM8C,cAAc,CAACC,OAAO,EAAEyB,KAAK,CAACQ,MAAM,CAAC,EAAE,CAACjC,OAAO,EAAEyB,KAAK,CAACQ,MAAM,CAAC,CAAC;;EAEnG;EACA;EACA,MAAMC,UAAU,GAAG,cAAcT,KAAK,CAACQ,MAAM,CAACE,MAAM,EAAE;EACtD,MAAMC,WAAW,GAAG,cAAcX,KAAK,CAACQ,MAAM,CAACE,MAAM,EAAE;EAEvD,MAAME,cAAc,GAAGpF,OAAO,CAAC,MAAqB;IAClD,MAAMqF,IAAmB,GAAG;MAC1BC,eAAe,EAAEP,aAAa,CAAC9B,UAAU;MACzCsC,KAAK,EAAER,aAAa,CAAC5B,UAAU;MAC/BqC,YAAY,EAAEpE,WAAW;MACzBqE,MAAM,EAAEd,UAAU,CAAClE,QAAQ;MAC3B4D,MAAM;MACNqB,SAAS,EAAET,UAAU;MACrBtE,QAAQ,EAAEgE,UAAU,CAAChE,QAAQ;MAC7BgF,UAAU,EAAE,GAAG;MACf,CAAC,kBAAkB,GAAaZ,aAAa,CAAC1B,IAAI;MAClD,CAAC,0BAA0B,GAAa8B,WAAW;MACnD,CAAC,yBAAyB,GAAa9D,WAAW;MAClD,GAAGc,cAAc,CAACC,SAAS,EAAEC,MAAM;IACrC,CAAC;IACD,IAAIuC,UAAU,EAAE;MACd,MAAMgB,GAAG,GAAGjB,UAAU,CAAClE,QAAQ,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;MAC/C4E,IAAI,CAACQ,WAAW,GAAGD,GAAG;MACtBP,IAAI,CAACS,YAAY,GAAGF,GAAG;IACzB,CAAC,MAAM;MACLP,IAAI,CAACU,KAAK,GAAGpB,UAAU,CAAClE,QAAQ;IAClC;IACA,OAAO4E,IAAI;EACb,CAAC,EAAE,CACDN,aAAa,EACbJ,UAAU,CAAClE,QAAQ,EACnBkE,UAAU,CAAChE,QAAQ,EACnB0D,MAAM,EACNY,UAAU,EACVE,WAAW,EACX/C,SAAS,EACTC,MAAM,EACNuC,UAAU,CACX,CAAC;EAEF,MAAMoB,WAAW,GAAGnG,WAAW,CAC5BoG,KAAoC,IAAK;IACxC,IAAInC,QAAQ,EAAE;MACZmC,KAAK,CAACC,cAAc,CAAC,CAAC;MACtB;IACF;IACAxC,OAAO,GAAGuC,KAAK,CAAC;IAChBxC,OAAO,GAAG,CAAC;EACb,CAAC,EACD,CAACK,QAAQ,EAAEJ,OAAO,EAAED,OAAO,CAC7B,CAAC;EAED,MAAM0C,SAAS,GAAGnC,aAAa,IAAID,kBAAkB,IAAIF,KAAK;EAC9D,MAAMuC,iBAAiB,GAAG,CAAC,WAAW,CAAC,CAACC,MAAM,CAAClC,SAAS,GAAG,CAACA,SAAS,CAAC,GAAG,EAAE,CAAC,CAACmC,IAAI,CAAC,GAAG,CAAC;;EAEtF;EACA;EACA;EACA;EACA;EACA,MAAMC,aAAa,GAAGrG,eAAe,CAAC2B,KAAK,CAAC;EAC5C,MAAM2E,kBAAkB,GAAGtG,eAAe,CAACgE,UAAU,CAAC;EAEtD,oBACE5D,KAAA;IACEyB,EAAE,EAAE2C,UAAW;IACfH,IAAI,EAAEA,IAAK;IACXJ,SAAS,EAAEiC,iBAAkB;IAC7BvE,KAAK,EAAE;MAAE,GAAGuD,cAAc;MAAE,GAAGmB;IAAc,CAAE;IAC/C7C,OAAO,EAAEsC,WAAY;IACrBlC,QAAQ,EAAEA,QAAS;IACnB,iBAAeA,QAAQ,IAAI2C,SAAU;IACrC,cAAYN,SAAU;IACtB7B,KAAK,EAAEA,KAAK,IAAIL,iBAAkB;IAClC,eAAaG,MAAO;IAAAR,QAAA,GAEnBkB,OAAO,IAAI,IAAI,iBACd1E,IAAA;MACE,eAAawE,UAAU,GAAG,MAAM,GAAG6B,SAAU;MAC7C5E,KAAK,EAAE;QACL6E,OAAO,EAAE,aAAa;QACtBC,UAAU,EAAE,QAAQ;QACpBC,cAAc,EAAE,QAAQ;QACxBb,KAAK,EAAEpB,UAAU,CAACjE,OAAO;QACzB+E,MAAM,EAAEd,UAAU,CAACjE;MACrB,CAAE;MAAAkD,QAAA,EAEDkB;IAAO,CACJ,CACP,EACAF,UAAU,iBAAIxE,IAAA;MAAMyB,KAAK,EAAE2E,kBAAmB;MAAA5C,QAAA,EAAEC;IAAK,CAAO,CAAC;EAAA,CACxD,CAAC;AAEb,CAAC;AAED,OAAO,MAAMgD,GAAG,gBAAGjH,IAAI,CAAC4D,eAAe,CAAC;AACxCqD,GAAG,CAACC,WAAW,GAAG,KAAK","ignoreList":[]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// flattenWebStyle — StyleProp → plain CSSProperties, for raw-DOM web forks.
|
|
5
|
+
//
|
|
6
|
+
// A handful of Bloom's `.web.tsx` forks (`Button.web.tsx`, `Fab.web.tsx`)
|
|
7
|
+
// render REAL HTML elements through react-dom (`<button>`, `<span>`), NOT
|
|
8
|
+
// react-native-web components. Their `style` prop is therefore a single plain
|
|
9
|
+
// `CSSProperties` object that React commits straight to a live
|
|
10
|
+
// `CSSStyleDeclaration`.
|
|
11
|
+
//
|
|
12
|
+
// Callers, however, pass `style` as a React-Native `StyleProp` — most often an
|
|
13
|
+
// ARRAY (`style={[base, cond && override]}`, possibly nested, with falsy holes
|
|
14
|
+
// from `cond && {...}`). Spreading a raw array into an object literal produces
|
|
15
|
+
// numeric keys ("0", "1", …), which React then assigns onto the DOM node's
|
|
16
|
+
// `CSSStyleDeclaration`, throwing:
|
|
17
|
+
// `Failed to set an indexed property [0] on 'CSSStyleDeclaration'`.
|
|
18
|
+
//
|
|
19
|
+
// Why NOT `StyleSheet.flatten` (the convention the RNW-component forks such as
|
|
20
|
+
// `list/index.web.tsx` use): these raw-DOM forks have NO other react-native
|
|
21
|
+
// runtime dependency. Reaching for `StyleSheet.flatten` would couple them to
|
|
22
|
+
// the `react-native` → `react-native-web` bundler alias they otherwise never
|
|
23
|
+
// need — a coupling the jsdom test environment does not provide (its
|
|
24
|
+
// `react-native` mock stubs `flatten` as an identity no-op, so an array would
|
|
25
|
+
// pass through unflattened and the raw-DOM render would crash under test). A
|
|
26
|
+
// dependency-free flatten is provably correct in every bundling/test context,
|
|
27
|
+
// so it is the right convention for THIS sub-class of forks specifically.
|
|
28
|
+
//
|
|
29
|
+
// `StyleNode` is a readonly-closed recursion type: RN's own `StyleProp` array
|
|
30
|
+
// members are `readonly` and its `RegisteredStyle` members are branded numbers,
|
|
31
|
+
// neither of which is assignable back to `StyleProp` for direct recursion.
|
|
32
|
+
// `StyleProp<ViewStyle>` / `StyleProp<TextStyle>` ARE assignable to it, so call
|
|
33
|
+
// sites pass `style` / `labelStyle` with no cast. Later entries win, mirroring
|
|
34
|
+
// React-Native array-style precedence; falsy holes and unresolved registered-
|
|
35
|
+
// style ids (bare numbers — not resolvable without the RN runtime, and never
|
|
36
|
+
// passed to a raw-DOM fork in practice) are skipped.
|
|
37
|
+
// ---------------------------------------------------------------------------
|
|
38
|
+
|
|
39
|
+
export function flattenWebStyle(style) {
|
|
40
|
+
if (Array.isArray(style)) {
|
|
41
|
+
return style.reduce((merged, entry) => Object.assign(merged, flattenWebStyle(entry)), {});
|
|
42
|
+
}
|
|
43
|
+
return style && typeof style === 'object' ? style : {};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=flatten-web-style.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["flattenWebStyle","style","Array","isArray","reduce","merged","entry","Object","assign"],"sourceRoot":"../../../src","sources":["styles/flatten-web-style.ts"],"mappings":";;AAGA;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;;AAYA,OAAO,SAASA,eAAeA,CAACC,KAAgB,EAAiB;EAC/D,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;IACxB,OAAOA,KAAK,CAACG,MAAM,CACjB,CAACC,MAAM,EAAEC,KAAK,KAAKC,MAAM,CAACC,MAAM,CAACH,MAAM,EAAEL,eAAe,CAACM,KAAK,CAAC,CAAC,EAChE,CAAC,CACH,CAAC;EACH;EACA,OAAOL,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,GAAIA,KAAK,GAAqB,CAAC,CAAC;AAC3E","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.web.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KASN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Button.web.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KASN,MAAM,OAAO,CAAC;AAMf,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,SAAS,CAAC;AAEtE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA+ZtE,eAAO,MAAM,MAAM,yCAA2B,CAAC;AAG/C,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,eAAe,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEtE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,WAAW,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAElE,CAAC;AAGH,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,iBAAiB,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAExE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fab.web.d.ts","sourceRoot":"","sources":["../../../../src/fab/Fab.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Fab.web.d.ts","sourceRoot":"","sources":["../../../../src/fab/Fab.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAKf,OAAO,KAAK,EAAgB,QAAQ,EAAuB,MAAM,SAAS,CAAC;AAE3E,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAiS3E,eAAO,MAAM,GAAG,sCAAwB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CSSProperties } from 'react';
|
|
2
|
+
import type { TextStyle, ViewStyle } from 'react-native';
|
|
3
|
+
type StyleNode = ViewStyle | TextStyle | number | false | null | undefined | '' | ReadonlyArray<StyleNode>;
|
|
4
|
+
export declare function flattenWebStyle(style: StyleNode): CSSProperties;
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=flatten-web-style.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flatten-web-style.d.ts","sourceRoot":"","sources":["../../../../src/styles/flatten-web-style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAsCzD,KAAK,SAAS,GACV,SAAS,GACT,SAAS,GACT,MAAM,GACN,KAAK,GACL,IAAI,GACJ,SAAS,GACT,EAAE,GACF,aAAa,CAAC,SAAS,CAAC,CAAC;AAE7B,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa,CAQ/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.web.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KASN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Button.web.d.ts","sourceRoot":"","sources":["../../../../src/button/Button.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KASN,MAAM,OAAO,CAAC;AAMf,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,SAAS,CAAC;AAEtE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA+ZtE,eAAO,MAAM,MAAM,yCAA2B,CAAC;AAG/C,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,eAAe,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEtE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,WAAW,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAElE,CAAC;AAGH,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,aAAa,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEpE,CAAC;AAGH,eAAO,MAAM,UAAU,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAEjE,CAAC;AAGH,eAAO,MAAM,iBAAiB,oCAAgB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,6CAExE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fab.web.d.ts","sourceRoot":"","sources":["../../../../src/fab/Fab.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Fab.web.d.ts","sourceRoot":"","sources":["../../../../src/fab/Fab.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAKf,OAAO,KAAK,EAAgB,QAAQ,EAAuB,MAAM,SAAS,CAAC;AAE3E,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAiS3E,eAAO,MAAM,GAAG,sCAAwB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CSSProperties } from 'react';
|
|
2
|
+
import type { TextStyle, ViewStyle } from 'react-native';
|
|
3
|
+
type StyleNode = ViewStyle | TextStyle | number | false | null | undefined | '' | ReadonlyArray<StyleNode>;
|
|
4
|
+
export declare function flattenWebStyle(style: StyleNode): CSSProperties;
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=flatten-web-style.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flatten-web-style.d.ts","sourceRoot":"","sources":["../../../../src/styles/flatten-web-style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAsCzD,KAAK,SAAS,GACV,SAAS,GACT,SAAS,GACT,MAAM,GACN,KAAK,GACL,IAAI,GACJ,SAAS,GACT,EAAE,GACF,aAAa,CAAC,SAAS,CAAC,CAAC;AAE7B,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa,CAQ/D"}
|
package/package.json
CHANGED
|
@@ -138,4 +138,66 @@ describe('Fab.web', () => {
|
|
|
138
138
|
expect(fab.style.width).toBe('56px');
|
|
139
139
|
expect(fab.style.height).toBe('56px');
|
|
140
140
|
});
|
|
141
|
+
|
|
142
|
+
// Regression: `style` / `labelStyle` are React-Native `StyleProp`s (array-
|
|
143
|
+
// capable — the native fork passes `style={[placementStyle(...), {...}, style]}`).
|
|
144
|
+
// Spreading a raw array into the DOM element's inline style used to produce
|
|
145
|
+
// numeric keys and throw at runtime:
|
|
146
|
+
// "Failed to set an indexed property [0] on 'CSSStyleDeclaration'".
|
|
147
|
+
describe('style prop flattening', () => {
|
|
148
|
+
it('renders without crashing when style is an array with a falsy hole', () => {
|
|
149
|
+
const showBorder = false;
|
|
150
|
+
const c = mount(
|
|
151
|
+
<Fab
|
|
152
|
+
accessibilityLabel="Add"
|
|
153
|
+
icon={<span>+</span>}
|
|
154
|
+
style={[{ marginBottom: 10 }, showBorder && { borderColor: 'rgb(9, 9, 9)' }]}
|
|
155
|
+
/>,
|
|
156
|
+
);
|
|
157
|
+
const fab = getByRole(c, 'button');
|
|
158
|
+
expect(fab.tagName).toBe('BUTTON');
|
|
159
|
+
// The array is flattened onto the button; falsy entries are skipped.
|
|
160
|
+
expect(fab.style.marginBottom).toBe('10px');
|
|
161
|
+
// The crash signature: a leaked numeric ("0") style key.
|
|
162
|
+
expect(fab.getAttribute('style') ?? '').not.toMatch(/(^|;)\s*0\s*:/);
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
it('later array entries win, mirroring RN precedence, and override the base container style', () => {
|
|
166
|
+
const c = mount(
|
|
167
|
+
<Fab
|
|
168
|
+
accessibilityLabel="Add"
|
|
169
|
+
icon={<span>+</span>}
|
|
170
|
+
// `zIndex: 7` overrides the container's default zIndex (50).
|
|
171
|
+
style={[{ zIndex: 3 }, { zIndex: 7, backgroundColor: 'rgb(1, 2, 3)' }]}
|
|
172
|
+
/>,
|
|
173
|
+
);
|
|
174
|
+
const fab = getByRole(c, 'button');
|
|
175
|
+
expect(fab.style.zIndex).toBe('7');
|
|
176
|
+
// Caller style is spread after the variant container style, so it wins.
|
|
177
|
+
expect(fab.style.backgroundColor).toBe('rgb(1, 2, 3)');
|
|
178
|
+
});
|
|
179
|
+
|
|
180
|
+
it('accepts a single style object', () => {
|
|
181
|
+
const c = mount(
|
|
182
|
+
<Fab accessibilityLabel="Add" icon={<span>+</span>} style={{ marginBottom: 5 }} />,
|
|
183
|
+
);
|
|
184
|
+
expect(getByRole(c, 'button').style.marginBottom).toBe('5px');
|
|
185
|
+
});
|
|
186
|
+
|
|
187
|
+
it('flattens an array labelStyle onto the extended-FAB label span', () => {
|
|
188
|
+
const c = mount(
|
|
189
|
+
<Fab
|
|
190
|
+
label="Compose"
|
|
191
|
+
icon={<span>+</span>}
|
|
192
|
+
labelStyle={[{ fontWeight: '700' }, false, { letterSpacing: 2 }]}
|
|
193
|
+
/>,
|
|
194
|
+
);
|
|
195
|
+
const label = getByText(c, 'Compose');
|
|
196
|
+
expect(label.tagName).toBe('SPAN');
|
|
197
|
+
expect(label.style.fontWeight).toBe('700');
|
|
198
|
+
expect(label.style.letterSpacing).toBe('2px');
|
|
199
|
+
// No leaked numeric style key from the array spread.
|
|
200
|
+
expect(label.getAttribute('style') ?? '').not.toMatch(/(^|;)\s*0\s*:/);
|
|
201
|
+
});
|
|
202
|
+
});
|
|
141
203
|
});
|
|
@@ -9,11 +9,10 @@ import React, {
|
|
|
9
9
|
type ReactElement,
|
|
10
10
|
} from 'react';
|
|
11
11
|
|
|
12
|
-
import type { ViewStyle } from 'react-native';
|
|
13
|
-
|
|
14
12
|
import { useTheme } from '../theme/use-theme';
|
|
15
13
|
import type { Theme } from '../theme/types';
|
|
16
14
|
import { SpinnerIcon } from '../loading/SpinnerIcon.web';
|
|
15
|
+
import { flattenWebStyle } from '../styles/flatten-web-style';
|
|
17
16
|
import type { ButtonProps, ButtonSize, ButtonVariant } from './types';
|
|
18
17
|
|
|
19
18
|
export type { ButtonProps, ButtonVariant, ButtonSize } from './types';
|
|
@@ -218,37 +217,6 @@ function resolveVariantStyle(
|
|
|
218
217
|
}
|
|
219
218
|
}
|
|
220
219
|
|
|
221
|
-
// ---------------------------------------------------------------------------
|
|
222
|
-
// Style normalization
|
|
223
|
-
//
|
|
224
|
-
// Callers idiomatically pass `style` as a React-Native `StyleProp` — most
|
|
225
|
-
// often an ARRAY (`style={[base, cond && override]}`, possibly nested and
|
|
226
|
-
// containing falsy holes from `cond && {...}`). The DOM `<button>` below needs
|
|
227
|
-
// a SINGLE plain object: spreading a raw array into an object literal produces
|
|
228
|
-
// numeric keys (`"0"`, `"1"`, …), which React then assigns onto the real
|
|
229
|
-
// `CSSStyleDeclaration`, throwing
|
|
230
|
-
// `Failed to set an indexed property [0] on 'CSSStyleDeclaration'`. Flatten the
|
|
231
|
-
// StyleProp into one object here, once, before it reaches either merge site.
|
|
232
|
-
// Later entries win, mirroring React-Native array-style precedence.
|
|
233
|
-
//
|
|
234
|
-
// `StyleNode` is a readonly-closed recursion type (RN's own `StyleProp` array
|
|
235
|
-
// member yields `readonly` sub-arrays that aren't assignable back to
|
|
236
|
-
// `StyleProp`, so it can't be recursed over directly). `ButtonProps['style']`
|
|
237
|
-
// is assignable to it, so call sites pass `style` with no cast.
|
|
238
|
-
// ---------------------------------------------------------------------------
|
|
239
|
-
|
|
240
|
-
type StyleNode = ViewStyle | false | null | undefined | '' | ReadonlyArray<StyleNode>;
|
|
241
|
-
|
|
242
|
-
function flattenStyle(style: StyleNode): CSSProperties {
|
|
243
|
-
if (Array.isArray(style)) {
|
|
244
|
-
return style.reduce<CSSProperties>(
|
|
245
|
-
(merged, entry) => Object.assign(merged, flattenStyle(entry)),
|
|
246
|
-
{},
|
|
247
|
-
);
|
|
248
|
-
}
|
|
249
|
-
return style && typeof style === 'object' ? (style as CSSProperties) : {};
|
|
250
|
-
}
|
|
251
|
-
|
|
252
220
|
// ---------------------------------------------------------------------------
|
|
253
221
|
// Component
|
|
254
222
|
// ---------------------------------------------------------------------------
|
|
@@ -350,9 +318,11 @@ const ButtonWebComponent: React.FC<ButtonProps> = ({
|
|
|
350
318
|
|
|
351
319
|
const spinnerColor = loadingColor ?? variantStyle.textColor;
|
|
352
320
|
|
|
353
|
-
// Normalize the caller's `style` (single object, array, or falsy)
|
|
354
|
-
// flat plain object
|
|
355
|
-
|
|
321
|
+
// Normalize the caller's `style` (single object, StyleProp array, or falsy)
|
|
322
|
+
// into ONE flat plain object here, once, so neither raw-DOM merge site below
|
|
323
|
+
// spreads a StyleProp array (which would leak numeric keys onto the button's
|
|
324
|
+
// CSSStyleDeclaration). See `flattenWebStyle` for the full rationale.
|
|
325
|
+
const resolvedStyle = flattenWebStyle(style);
|
|
356
326
|
|
|
357
327
|
const content = (
|
|
358
328
|
<>
|
package/src/fab/Fab.web.tsx
CHANGED
|
@@ -10,6 +10,7 @@ import React, {
|
|
|
10
10
|
|
|
11
11
|
import { useTheme } from '../theme/use-theme';
|
|
12
12
|
import type { Theme } from '../theme/types';
|
|
13
|
+
import { flattenWebStyle } from '../styles/flatten-web-style';
|
|
13
14
|
import type { FabPlacement, FabProps, FabSize, FabVariant } from './types';
|
|
14
15
|
|
|
15
16
|
export type { FabProps, FabVariant, FabSize, FabPlacement } from './types';
|
|
@@ -261,12 +262,20 @@ const FabWebComponent: React.FC<FabProps> = ({
|
|
|
261
262
|
const ariaLabel = ariaLabelProp ?? accessibilityLabel ?? label;
|
|
262
263
|
const composedClassName = ['bloom-fab'].concat(className ? [className] : []).join(' ');
|
|
263
264
|
|
|
265
|
+
// Normalize `style`/`labelStyle` (single object, StyleProp array — the native
|
|
266
|
+
// fork passes `style={[placementStyle(...), {...}, style]}` — or falsy) into
|
|
267
|
+
// ONE flat plain object each, so neither raw-DOM merge site below spreads a
|
|
268
|
+
// StyleProp array (which would leak numeric keys onto the element's
|
|
269
|
+
// CSSStyleDeclaration). See `flattenWebStyle` for the full rationale.
|
|
270
|
+
const resolvedStyle = flattenWebStyle(style);
|
|
271
|
+
const resolvedLabelStyle = flattenWebStyle(labelStyle);
|
|
272
|
+
|
|
264
273
|
return (
|
|
265
274
|
<button
|
|
266
275
|
id={resolvedId}
|
|
267
276
|
type={type}
|
|
268
277
|
className={composedClassName}
|
|
269
|
-
style={{ ...containerStyle, ...
|
|
278
|
+
style={{ ...containerStyle, ...resolvedStyle }}
|
|
270
279
|
onClick={handleClick}
|
|
271
280
|
disabled={disabled}
|
|
272
281
|
aria-disabled={disabled || undefined}
|
|
@@ -288,7 +297,7 @@ const FabWebComponent: React.FC<FabProps> = ({
|
|
|
288
297
|
{content}
|
|
289
298
|
</span>
|
|
290
299
|
)}
|
|
291
|
-
{isExtended && <span style={
|
|
300
|
+
{isExtended && <span style={resolvedLabelStyle}>{label}</span>}
|
|
292
301
|
</button>
|
|
293
302
|
);
|
|
294
303
|
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { CSSProperties } from 'react';
|
|
2
|
+
import type { TextStyle, ViewStyle } from 'react-native';
|
|
3
|
+
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// flattenWebStyle — StyleProp → plain CSSProperties, for raw-DOM web forks.
|
|
6
|
+
//
|
|
7
|
+
// A handful of Bloom's `.web.tsx` forks (`Button.web.tsx`, `Fab.web.tsx`)
|
|
8
|
+
// render REAL HTML elements through react-dom (`<button>`, `<span>`), NOT
|
|
9
|
+
// react-native-web components. Their `style` prop is therefore a single plain
|
|
10
|
+
// `CSSProperties` object that React commits straight to a live
|
|
11
|
+
// `CSSStyleDeclaration`.
|
|
12
|
+
//
|
|
13
|
+
// Callers, however, pass `style` as a React-Native `StyleProp` — most often an
|
|
14
|
+
// ARRAY (`style={[base, cond && override]}`, possibly nested, with falsy holes
|
|
15
|
+
// from `cond && {...}`). Spreading a raw array into an object literal produces
|
|
16
|
+
// numeric keys ("0", "1", …), which React then assigns onto the DOM node's
|
|
17
|
+
// `CSSStyleDeclaration`, throwing:
|
|
18
|
+
// `Failed to set an indexed property [0] on 'CSSStyleDeclaration'`.
|
|
19
|
+
//
|
|
20
|
+
// Why NOT `StyleSheet.flatten` (the convention the RNW-component forks such as
|
|
21
|
+
// `list/index.web.tsx` use): these raw-DOM forks have NO other react-native
|
|
22
|
+
// runtime dependency. Reaching for `StyleSheet.flatten` would couple them to
|
|
23
|
+
// the `react-native` → `react-native-web` bundler alias they otherwise never
|
|
24
|
+
// need — a coupling the jsdom test environment does not provide (its
|
|
25
|
+
// `react-native` mock stubs `flatten` as an identity no-op, so an array would
|
|
26
|
+
// pass through unflattened and the raw-DOM render would crash under test). A
|
|
27
|
+
// dependency-free flatten is provably correct in every bundling/test context,
|
|
28
|
+
// so it is the right convention for THIS sub-class of forks specifically.
|
|
29
|
+
//
|
|
30
|
+
// `StyleNode` is a readonly-closed recursion type: RN's own `StyleProp` array
|
|
31
|
+
// members are `readonly` and its `RegisteredStyle` members are branded numbers,
|
|
32
|
+
// neither of which is assignable back to `StyleProp` for direct recursion.
|
|
33
|
+
// `StyleProp<ViewStyle>` / `StyleProp<TextStyle>` ARE assignable to it, so call
|
|
34
|
+
// sites pass `style` / `labelStyle` with no cast. Later entries win, mirroring
|
|
35
|
+
// React-Native array-style precedence; falsy holes and unresolved registered-
|
|
36
|
+
// style ids (bare numbers — not resolvable without the RN runtime, and never
|
|
37
|
+
// passed to a raw-DOM fork in practice) are skipped.
|
|
38
|
+
// ---------------------------------------------------------------------------
|
|
39
|
+
|
|
40
|
+
type StyleNode =
|
|
41
|
+
| ViewStyle
|
|
42
|
+
| TextStyle
|
|
43
|
+
| number
|
|
44
|
+
| false
|
|
45
|
+
| null
|
|
46
|
+
| undefined
|
|
47
|
+
| ''
|
|
48
|
+
| ReadonlyArray<StyleNode>;
|
|
49
|
+
|
|
50
|
+
export function flattenWebStyle(style: StyleNode): CSSProperties {
|
|
51
|
+
if (Array.isArray(style)) {
|
|
52
|
+
return style.reduce<CSSProperties>(
|
|
53
|
+
(merged, entry) => Object.assign(merged, flattenWebStyle(entry)),
|
|
54
|
+
{},
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
return style && typeof style === 'object' ? (style as CSSProperties) : {};
|
|
58
|
+
}
|