@oxyhq/bloom 0.9.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/admonition/index.js +2 -2
- package/lib/commonjs/admonition/index.js.map +1 -1
- package/lib/commonjs/alert-dialog/AlertDialog.js +5 -5
- package/lib/commonjs/alert-dialog/AlertDialog.js.map +1 -1
- package/lib/commonjs/button/Button.js +60 -7
- package/lib/commonjs/button/Button.js.map +1 -1
- package/lib/commonjs/button/Button.web.js +427 -0
- package/lib/commonjs/button/Button.web.js.map +1 -0
- package/lib/commonjs/button/index.js +25 -1
- package/lib/commonjs/button/index.js.map +1 -1
- package/lib/commonjs/button/index.web.js +67 -0
- package/lib/commonjs/button/index.web.js.map +1 -0
- package/lib/commonjs/index.js +70 -70
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +84 -84
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/menu/index.js +2 -2
- package/lib/commonjs/menu/index.js.map +1 -1
- package/lib/commonjs/search-input/index.js +2 -2
- package/lib/commonjs/search-input/index.js.map +1 -1
- package/lib/commonjs/select/index.js +4 -4
- package/lib/commonjs/select/index.js.map +1 -1
- package/lib/module/admonition/index.js +1 -1
- package/lib/module/admonition/index.js.map +1 -1
- package/lib/module/alert-dialog/AlertDialog.js +1 -1
- package/lib/module/alert-dialog/AlertDialog.js.map +1 -1
- package/lib/module/button/Button.js +59 -6
- package/lib/module/button/Button.js.map +1 -1
- package/lib/module/button/Button.web.js +422 -0
- package/lib/module/button/Button.web.js.map +1 -0
- package/lib/module/button/index.js +1 -1
- package/lib/module/button/index.js.map +1 -1
- package/lib/module/button/index.web.js +17 -0
- package/lib/module/button/index.web.js.map +1 -0
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +1 -1
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/menu/index.js +1 -1
- package/lib/module/menu/index.js.map +1 -1
- package/lib/module/search-input/index.js +1 -1
- package/lib/module/search-input/index.js.map +1 -1
- package/lib/module/select/index.js +1 -1
- package/lib/module/select/index.js.map +1 -1
- package/lib/typescript/commonjs/button/Button.d.ts +3 -0
- package/lib/typescript/commonjs/button/Button.d.ts.map +1 -1
- package/lib/typescript/commonjs/button/Button.web.d.ts +14 -0
- package/lib/typescript/commonjs/button/Button.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/button/index.d.ts +1 -1
- package/lib/typescript/commonjs/button/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/button/index.web.d.ts +3 -0
- package/lib/typescript/commonjs/button/index.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/button/types.d.ts +72 -2
- package/lib/typescript/commonjs/button/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.web.d.ts +1 -1
- package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
- package/lib/typescript/module/button/Button.d.ts +3 -0
- package/lib/typescript/module/button/Button.d.ts.map +1 -1
- package/lib/typescript/module/button/Button.web.d.ts +14 -0
- package/lib/typescript/module/button/Button.web.d.ts.map +1 -0
- package/lib/typescript/module/button/index.d.ts +1 -1
- package/lib/typescript/module/button/index.d.ts.map +1 -1
- package/lib/typescript/module/button/index.web.d.ts +3 -0
- package/lib/typescript/module/button/index.web.d.ts.map +1 -0
- package/lib/typescript/module/button/types.d.ts +72 -2
- package/lib/typescript/module/button/types.d.ts.map +1 -1
- package/lib/typescript/module/index.web.d.ts +1 -1
- package/lib/typescript/module/index.web.d.ts.map +1 -1
- package/package.json +8 -1
- package/src/__tests__/Button.web.test.tsx +201 -0
- package/src/button/Button.tsx +66 -7
- package/src/button/Button.web.tsx +469 -0
- package/src/button/index.ts +4 -0
- package/src/button/index.web.ts +27 -0
- package/src/button/types.ts +98 -2
- package/src/index.web.ts +1 -1
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TextButton = exports.SecondaryButton = exports.PrimaryButton = exports.OutlineButton = exports.LinkButton = exports.InverseButton = exports.IconButton = exports.GhostButton = exports.DestructiveButton = exports.Button = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _useTheme = require("../theme/use-theme.js");
|
|
9
|
+
var _SpinnerIconWeb = require("../loading/SpinnerIcon.web.js");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
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); }
|
|
12
|
+
// ---------------------------------------------------------------------------
|
|
13
|
+
// Geometry — mirrors the native (`Button.tsx`) impl exactly so the web button
|
|
14
|
+
// is pixel-consistent with native. Sizes below are the resolved primitives;
|
|
15
|
+
// the shadcn-style aliases (`sm | md | lg | icon`) are normalized first.
|
|
16
|
+
// ---------------------------------------------------------------------------
|
|
17
|
+
|
|
18
|
+
const SIZE_CONFIG = {
|
|
19
|
+
small: {
|
|
20
|
+
paddingVertical: 6,
|
|
21
|
+
paddingHorizontal: 12,
|
|
22
|
+
fontSize: 14,
|
|
23
|
+
minHeight: 32
|
|
24
|
+
},
|
|
25
|
+
medium: {
|
|
26
|
+
paddingVertical: 8,
|
|
27
|
+
paddingHorizontal: 16,
|
|
28
|
+
fontSize: 15,
|
|
29
|
+
minHeight: 40
|
|
30
|
+
},
|
|
31
|
+
large: {
|
|
32
|
+
paddingVertical: 12,
|
|
33
|
+
paddingHorizontal: 20,
|
|
34
|
+
fontSize: 16,
|
|
35
|
+
minHeight: 48
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
const SIZE_ALIAS = {
|
|
39
|
+
small: 'small',
|
|
40
|
+
medium: 'medium',
|
|
41
|
+
large: 'large',
|
|
42
|
+
sm: 'small',
|
|
43
|
+
md: 'medium',
|
|
44
|
+
lg: 'large',
|
|
45
|
+
icon: 'medium'
|
|
46
|
+
};
|
|
47
|
+
const PILL_RADIUS = 20;
|
|
48
|
+
const GHOST_RADIUS = 8;
|
|
49
|
+
const ICON_RADIUS = 100;
|
|
50
|
+
const PRESS_SCALE = 0.97;
|
|
51
|
+
|
|
52
|
+
/** Variants that get a tactile press-scale (matches native `SCALE_VARIANTS`). */
|
|
53
|
+
const SCALE_VARIANTS = new Set(['primary', 'secondary', 'inverse', 'destructive']);
|
|
54
|
+
|
|
55
|
+
// ---------------------------------------------------------------------------
|
|
56
|
+
// Per-state CSS injection
|
|
57
|
+
//
|
|
58
|
+
// Inline styles cannot express `:hover` / `:focus-visible` / `:active` /
|
|
59
|
+
// `:disabled`, and the keyboard-focus ring MUST be a `:focus-visible` rule
|
|
60
|
+
// (not always-on) for correct mouse-vs-keyboard behavior. We inject one static
|
|
61
|
+
// stylesheet (keyed by id, once) that defines the interaction behavior for the
|
|
62
|
+
// base `bloom-btn` class; per-instance resolved colors stay inline.
|
|
63
|
+
// ---------------------------------------------------------------------------
|
|
64
|
+
|
|
65
|
+
const STYLE_ID = 'bloom-button-web-css';
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* The focus ring color is read from a CSS custom property the component sets
|
|
69
|
+
* inline per-instance (`--bloom-btn-ring`), so the static rule can theme itself
|
|
70
|
+
* from the resolved token without a per-instance stylesheet.
|
|
71
|
+
*/
|
|
72
|
+
const BLOOM_BUTTON_CSS = `
|
|
73
|
+
.bloom-btn {
|
|
74
|
+
appearance: none;
|
|
75
|
+
-webkit-appearance: none;
|
|
76
|
+
box-sizing: border-box;
|
|
77
|
+
display: inline-flex;
|
|
78
|
+
align-items: center;
|
|
79
|
+
justify-content: center;
|
|
80
|
+
flex-direction: row;
|
|
81
|
+
gap: 8px;
|
|
82
|
+
position: relative;
|
|
83
|
+
margin: 0;
|
|
84
|
+
border: none;
|
|
85
|
+
background: transparent;
|
|
86
|
+
font-family: inherit;
|
|
87
|
+
text-decoration: none;
|
|
88
|
+
cursor: pointer;
|
|
89
|
+
user-select: none;
|
|
90
|
+
outline: none;
|
|
91
|
+
transition: opacity 120ms ease, transform 120ms ease, background-color 120ms ease, border-color 120ms ease;
|
|
92
|
+
}
|
|
93
|
+
.bloom-btn:disabled,
|
|
94
|
+
.bloom-btn[aria-disabled="true"] {
|
|
95
|
+
cursor: default;
|
|
96
|
+
opacity: 0.5;
|
|
97
|
+
}
|
|
98
|
+
.bloom-btn:not(:disabled):not([aria-disabled="true"]):hover {
|
|
99
|
+
opacity: 0.9;
|
|
100
|
+
}
|
|
101
|
+
.bloom-btn:not(:disabled):not([aria-disabled="true"]):active {
|
|
102
|
+
transform: scale(var(--bloom-btn-press-scale, 1));
|
|
103
|
+
}
|
|
104
|
+
.bloom-btn:focus-visible {
|
|
105
|
+
outline: 2px solid var(--bloom-btn-ring, currentColor);
|
|
106
|
+
outline-offset: 2px;
|
|
107
|
+
}
|
|
108
|
+
.bloom-btn--link:not(:disabled):not([aria-disabled="true"]):hover {
|
|
109
|
+
opacity: 1;
|
|
110
|
+
text-decoration: underline;
|
|
111
|
+
}
|
|
112
|
+
`;
|
|
113
|
+
function useButtonCss() {
|
|
114
|
+
(0, _react.useEffect)(() => {
|
|
115
|
+
if (typeof document === 'undefined') return;
|
|
116
|
+
if (document.getElementById(STYLE_ID)) return;
|
|
117
|
+
const style = document.createElement('style');
|
|
118
|
+
style.id = STYLE_ID;
|
|
119
|
+
style.textContent = BLOOM_BUTTON_CSS;
|
|
120
|
+
document.head.appendChild(style);
|
|
121
|
+
}, []);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// ---------------------------------------------------------------------------
|
|
125
|
+
// Variant styling — all colors come from the SAME Bloom theme tokens native
|
|
126
|
+
// uses, so primary/secondary/etc. look identical across platforms. The added
|
|
127
|
+
// web variants (`outline | link | destructive`) are styled from those tokens
|
|
128
|
+
// too (no new palette).
|
|
129
|
+
// ---------------------------------------------------------------------------
|
|
130
|
+
|
|
131
|
+
function resolveVariantStyle(variant, size, theme) {
|
|
132
|
+
const c = theme.colors;
|
|
133
|
+
const sizeConfig = SIZE_CONFIG[size];
|
|
134
|
+
switch (variant) {
|
|
135
|
+
case 'primary':
|
|
136
|
+
return {
|
|
137
|
+
container: {
|
|
138
|
+
backgroundColor: c.primary,
|
|
139
|
+
borderRadius: PILL_RADIUS
|
|
140
|
+
},
|
|
141
|
+
textColor: c.primaryForeground,
|
|
142
|
+
ringColor: c.primary
|
|
143
|
+
};
|
|
144
|
+
case 'destructive':
|
|
145
|
+
return {
|
|
146
|
+
container: {
|
|
147
|
+
backgroundColor: c.negative,
|
|
148
|
+
borderRadius: PILL_RADIUS
|
|
149
|
+
},
|
|
150
|
+
textColor: c.negativeForeground,
|
|
151
|
+
ringColor: c.negative
|
|
152
|
+
};
|
|
153
|
+
case 'inverse':
|
|
154
|
+
return {
|
|
155
|
+
container: {
|
|
156
|
+
backgroundColor: '#FFFFFF',
|
|
157
|
+
borderRadius: PILL_RADIUS
|
|
158
|
+
},
|
|
159
|
+
textColor: '#000000',
|
|
160
|
+
ringColor: c.primary
|
|
161
|
+
};
|
|
162
|
+
case 'secondary':
|
|
163
|
+
case 'outline':
|
|
164
|
+
return {
|
|
165
|
+
container: {
|
|
166
|
+
backgroundColor: 'transparent',
|
|
167
|
+
borderWidth: 1,
|
|
168
|
+
borderStyle: 'solid',
|
|
169
|
+
borderColor: c.border,
|
|
170
|
+
borderRadius: PILL_RADIUS
|
|
171
|
+
},
|
|
172
|
+
textColor: c.text,
|
|
173
|
+
ringColor: c.primary
|
|
174
|
+
};
|
|
175
|
+
case 'ghost':
|
|
176
|
+
return {
|
|
177
|
+
container: {
|
|
178
|
+
backgroundColor: 'transparent',
|
|
179
|
+
borderRadius: GHOST_RADIUS
|
|
180
|
+
},
|
|
181
|
+
textColor: c.primary,
|
|
182
|
+
ringColor: c.primary
|
|
183
|
+
};
|
|
184
|
+
case 'icon':
|
|
185
|
+
return {
|
|
186
|
+
container: {
|
|
187
|
+
backgroundColor: c.background,
|
|
188
|
+
borderWidth: 1,
|
|
189
|
+
borderStyle: 'solid',
|
|
190
|
+
borderColor: c.border,
|
|
191
|
+
borderRadius: ICON_RADIUS,
|
|
192
|
+
padding: 8,
|
|
193
|
+
width: sizeConfig.minHeight,
|
|
194
|
+
height: sizeConfig.minHeight
|
|
195
|
+
},
|
|
196
|
+
textColor: c.text,
|
|
197
|
+
ringColor: c.primary
|
|
198
|
+
};
|
|
199
|
+
case 'text':
|
|
200
|
+
case 'link':
|
|
201
|
+
default:
|
|
202
|
+
return {
|
|
203
|
+
container: {
|
|
204
|
+
backgroundColor: 'transparent',
|
|
205
|
+
borderRadius: 0
|
|
206
|
+
},
|
|
207
|
+
textColor: c.primary,
|
|
208
|
+
ringColor: c.primary
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
// ---------------------------------------------------------------------------
|
|
214
|
+
// Component
|
|
215
|
+
// ---------------------------------------------------------------------------
|
|
216
|
+
|
|
217
|
+
const ButtonWebComponent = ({
|
|
218
|
+
onPress,
|
|
219
|
+
onClick,
|
|
220
|
+
children,
|
|
221
|
+
disabled = false,
|
|
222
|
+
variant = 'primary',
|
|
223
|
+
size: sizeProp = 'medium',
|
|
224
|
+
style,
|
|
225
|
+
icon,
|
|
226
|
+
iconPosition = 'left',
|
|
227
|
+
loading = false,
|
|
228
|
+
loadingColor,
|
|
229
|
+
accessibilityLabel,
|
|
230
|
+
'aria-label': ariaLabelProp,
|
|
231
|
+
accessibilityHint,
|
|
232
|
+
testID,
|
|
233
|
+
className,
|
|
234
|
+
type = 'button',
|
|
235
|
+
asChild = false,
|
|
236
|
+
id,
|
|
237
|
+
name,
|
|
238
|
+
value,
|
|
239
|
+
title,
|
|
240
|
+
autoFocus,
|
|
241
|
+
tabIndex,
|
|
242
|
+
fullWidth = false
|
|
243
|
+
}) => {
|
|
244
|
+
useButtonCss();
|
|
245
|
+
const theme = (0, _useTheme.useTheme)();
|
|
246
|
+
const reactId = (0, _react.useId)();
|
|
247
|
+
const resolvedId = id ?? `bloom-btn-${reactId}`;
|
|
248
|
+
|
|
249
|
+
// `size="icon"` shorthand also selects the icon variant unless the caller
|
|
250
|
+
// explicitly picked one — mirrors native + shadcn behavior.
|
|
251
|
+
const resolvedVariant = sizeProp === 'icon' && variant === 'primary' ? 'icon' : variant;
|
|
252
|
+
const size = SIZE_ALIAS[sizeProp];
|
|
253
|
+
const isIcon = resolvedVariant === 'icon';
|
|
254
|
+
const isInteractionBlocked = disabled || loading;
|
|
255
|
+
const variantStyle = (0, _react.useMemo)(() => resolveVariantStyle(resolvedVariant, size, theme), [resolvedVariant, size, theme]);
|
|
256
|
+
const sizeConfig = SIZE_CONFIG[size];
|
|
257
|
+
const containerStyle = (0, _react.useMemo)(() => {
|
|
258
|
+
const base = {
|
|
259
|
+
fontSize: sizeConfig.fontSize,
|
|
260
|
+
fontWeight: 'bold',
|
|
261
|
+
color: variantStyle.textColor,
|
|
262
|
+
width: fullWidth ? '100%' : undefined,
|
|
263
|
+
// CSS custom props consumed by the static stylesheet.
|
|
264
|
+
['--bloom-btn-ring']: variantStyle.ringColor,
|
|
265
|
+
['--bloom-btn-press-scale']: SCALE_VARIANTS.has(resolvedVariant) ? PRESS_SCALE : 1,
|
|
266
|
+
...variantStyle.container
|
|
267
|
+
};
|
|
268
|
+
if (!isIcon) {
|
|
269
|
+
base.paddingTop = sizeConfig.paddingVertical;
|
|
270
|
+
base.paddingBottom = sizeConfig.paddingVertical;
|
|
271
|
+
base.paddingLeft = sizeConfig.paddingHorizontal;
|
|
272
|
+
base.paddingRight = sizeConfig.paddingHorizontal;
|
|
273
|
+
base.minHeight = sizeConfig.minHeight;
|
|
274
|
+
}
|
|
275
|
+
if (resolvedVariant === 'text' || resolvedVariant === 'link') {
|
|
276
|
+
base.paddingTop = 4;
|
|
277
|
+
base.paddingBottom = 4;
|
|
278
|
+
base.paddingLeft = 8;
|
|
279
|
+
base.paddingRight = 8;
|
|
280
|
+
base.minHeight = undefined;
|
|
281
|
+
}
|
|
282
|
+
return base;
|
|
283
|
+
}, [sizeConfig, variantStyle, fullWidth, isIcon, resolvedVariant]);
|
|
284
|
+
const handleClick = (0, _react.useCallback)(event => {
|
|
285
|
+
if (isInteractionBlocked) {
|
|
286
|
+
event.preventDefault();
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
289
|
+
onClick?.(event);
|
|
290
|
+
onPress?.();
|
|
291
|
+
}, [isInteractionBlocked, onClick, onPress]);
|
|
292
|
+
const ariaLabel = ariaLabelProp ?? accessibilityLabel;
|
|
293
|
+
const composedClassName = ['bloom-btn'].concat(resolvedVariant === 'link' ? ['bloom-btn--link'] : []).concat(className ? [className] : []).join(' ');
|
|
294
|
+
const spinnerColor = loadingColor ?? variantStyle.textColor;
|
|
295
|
+
const content = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
296
|
+
children: [iconPosition === 'left' && icon, children != null && (typeof children === 'string' || typeof children === 'number' ? /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
297
|
+
children: children
|
|
298
|
+
}) : children), iconPosition === 'right' && icon]
|
|
299
|
+
});
|
|
300
|
+
const body = loading ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
301
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
302
|
+
"aria-hidden": "true",
|
|
303
|
+
style: {
|
|
304
|
+
display: 'inline-flex',
|
|
305
|
+
alignItems: 'center',
|
|
306
|
+
justifyContent: 'center',
|
|
307
|
+
gap: 8,
|
|
308
|
+
opacity: 0,
|
|
309
|
+
pointerEvents: 'none'
|
|
310
|
+
},
|
|
311
|
+
children: content
|
|
312
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
313
|
+
"aria-hidden": "true",
|
|
314
|
+
style: {
|
|
315
|
+
position: 'absolute',
|
|
316
|
+
inset: 0,
|
|
317
|
+
display: 'inline-flex',
|
|
318
|
+
alignItems: 'center',
|
|
319
|
+
justifyContent: 'center',
|
|
320
|
+
pointerEvents: 'none'
|
|
321
|
+
},
|
|
322
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SpinnerIconWeb.SpinnerIcon, {
|
|
323
|
+
size: Math.round(sizeConfig.fontSize * 1.2),
|
|
324
|
+
color: spinnerColor
|
|
325
|
+
})
|
|
326
|
+
})]
|
|
327
|
+
}) : content;
|
|
328
|
+
|
|
329
|
+
// asChild: render the provided child element (e.g. <a> / router <Link>) with
|
|
330
|
+
// the button styling and handlers merged in. Used for link-buttons.
|
|
331
|
+
if (asChild && /*#__PURE__*/_react.default.isValidElement(children)) {
|
|
332
|
+
const child = children;
|
|
333
|
+
const childProps = child.props;
|
|
334
|
+
return /*#__PURE__*/_react.default.cloneElement(child, {
|
|
335
|
+
className: [composedClassName, childProps.className].filter(Boolean).join(' '),
|
|
336
|
+
style: {
|
|
337
|
+
...containerStyle,
|
|
338
|
+
...style,
|
|
339
|
+
...childProps.style
|
|
340
|
+
},
|
|
341
|
+
onClick: event => {
|
|
342
|
+
if (isInteractionBlocked) {
|
|
343
|
+
event.preventDefault();
|
|
344
|
+
return;
|
|
345
|
+
}
|
|
346
|
+
childProps.onClick?.(event);
|
|
347
|
+
onClick?.(event);
|
|
348
|
+
onPress?.();
|
|
349
|
+
},
|
|
350
|
+
'aria-disabled': isInteractionBlocked || undefined,
|
|
351
|
+
'aria-busy': loading || undefined,
|
|
352
|
+
'aria-label': ariaLabel ?? childProps['aria-label'],
|
|
353
|
+
title: title ?? childProps.title,
|
|
354
|
+
id: childProps.id ?? resolvedId,
|
|
355
|
+
tabIndex: isInteractionBlocked ? -1 : childProps.tabIndex
|
|
356
|
+
});
|
|
357
|
+
}
|
|
358
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
359
|
+
id: resolvedId,
|
|
360
|
+
type: type,
|
|
361
|
+
name: name,
|
|
362
|
+
value: value,
|
|
363
|
+
className: composedClassName,
|
|
364
|
+
style: {
|
|
365
|
+
...containerStyle,
|
|
366
|
+
...style
|
|
367
|
+
},
|
|
368
|
+
onClick: handleClick,
|
|
369
|
+
disabled: disabled && !loading,
|
|
370
|
+
"aria-disabled": isInteractionBlocked || undefined,
|
|
371
|
+
"aria-busy": loading || undefined,
|
|
372
|
+
"aria-label": ariaLabel,
|
|
373
|
+
title: title ?? accessibilityHint,
|
|
374
|
+
autoFocus: autoFocus,
|
|
375
|
+
tabIndex: tabIndex,
|
|
376
|
+
"data-testid": testID,
|
|
377
|
+
children: body
|
|
378
|
+
});
|
|
379
|
+
};
|
|
380
|
+
const Button = exports.Button = /*#__PURE__*/(0, _react.memo)(ButtonWebComponent);
|
|
381
|
+
Button.displayName = 'Button';
|
|
382
|
+
const PrimaryButton = exports.PrimaryButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
383
|
+
...props,
|
|
384
|
+
variant: "primary"
|
|
385
|
+
}));
|
|
386
|
+
PrimaryButton.displayName = 'PrimaryButton';
|
|
387
|
+
const SecondaryButton = exports.SecondaryButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
388
|
+
...props,
|
|
389
|
+
variant: "secondary"
|
|
390
|
+
}));
|
|
391
|
+
SecondaryButton.displayName = 'SecondaryButton';
|
|
392
|
+
const IconButton = exports.IconButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
393
|
+
...props,
|
|
394
|
+
variant: "icon"
|
|
395
|
+
}));
|
|
396
|
+
IconButton.displayName = 'IconButton';
|
|
397
|
+
const GhostButton = exports.GhostButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
398
|
+
...props,
|
|
399
|
+
variant: "ghost"
|
|
400
|
+
}));
|
|
401
|
+
GhostButton.displayName = 'GhostButton';
|
|
402
|
+
const InverseButton = exports.InverseButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
403
|
+
...props,
|
|
404
|
+
variant: "inverse"
|
|
405
|
+
}));
|
|
406
|
+
InverseButton.displayName = 'InverseButton';
|
|
407
|
+
const TextButton = exports.TextButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
408
|
+
...props,
|
|
409
|
+
variant: "text"
|
|
410
|
+
}));
|
|
411
|
+
TextButton.displayName = 'TextButton';
|
|
412
|
+
const OutlineButton = exports.OutlineButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
413
|
+
...props,
|
|
414
|
+
variant: "outline"
|
|
415
|
+
}));
|
|
416
|
+
OutlineButton.displayName = 'OutlineButton';
|
|
417
|
+
const LinkButton = exports.LinkButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
418
|
+
...props,
|
|
419
|
+
variant: "link"
|
|
420
|
+
}));
|
|
421
|
+
LinkButton.displayName = 'LinkButton';
|
|
422
|
+
const DestructiveButton = exports.DestructiveButton = /*#__PURE__*/(0, _react.memo)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(Button, {
|
|
423
|
+
...props,
|
|
424
|
+
variant: "destructive"
|
|
425
|
+
}));
|
|
426
|
+
DestructiveButton.displayName = 'DestructiveButton';
|
|
427
|
+
//# sourceMappingURL=Button.web.js.map
|
|
@@ -0,0 +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","GHOST_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","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":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAWA,IAAAC,SAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AAAyD,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,CAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAKzD;AACA;AACA;AACA;AACA;;AAWA,MAAMkB,WAA2C,GAAG;EAClDC,KAAK,EAAE;IAAEC,eAAe,EAAE,CAAC;IAAEC,iBAAiB,EAAE,EAAE;IAAEC,QAAQ,EAAE,EAAE;IAAEC,SAAS,EAAE;EAAG,CAAC;EACjFC,MAAM,EAAE;IAAEJ,eAAe,EAAE,CAAC;IAAEC,iBAAiB,EAAE,EAAE;IAAEC,QAAQ,EAAE,EAAE;IAAEC,SAAS,EAAE;EAAG,CAAC;EAClFE,KAAK,EAAE;IAAEL,eAAe,EAAE,EAAE;IAAEC,iBAAiB,EAAE,EAAE;IAAEC,QAAQ,EAAE,EAAE;IAAEC,SAAS,EAAE;EAAG;AACnF,CAAC;AAED,MAAMG,UAA0C,GAAG;EACjDP,KAAK,EAAE,OAAO;EACdK,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE,OAAO;EACdE,EAAE,EAAE,OAAO;EACXC,EAAE,EAAE,QAAQ;EACZC,EAAE,EAAE,OAAO;EACXC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,WAAW,GAAG,EAAE;AACtB,MAAMC,YAAY,GAAG,CAAC;AACtB,MAAMC,WAAW,GAAG,GAAG;AACvB,MAAMC,WAAW,GAAG,IAAI;;AAExB;AACA,MAAMC,cAAc,GAAG,IAAIC,GAAG,CAAgB,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;;AAEjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,QAAQ,GAAG,sBAAsB;;AAEvC;AACA;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,GAAG;AACzB;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;AACA;AACA;AACA;AACA,CAAC;AAED,SAASC,YAAYA,CAAA,EAAS;EAC5B,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;IACrC,IAAIA,QAAQ,CAACC,cAAc,CAACL,QAAQ,CAAC,EAAE;IACvC,MAAMM,KAAK,GAAGF,QAAQ,CAACG,aAAa,CAAC,OAAO,CAAC;IAC7CD,KAAK,CAACE,EAAE,GAAGR,QAAQ;IACnBM,KAAK,CAACG,WAAW,GAAGR,gBAAgB;IACpCG,QAAQ,CAACM,IAAI,CAACC,WAAW,CAACL,KAAK,CAAC;EAClC,CAAC,EAAE,EAAE,CAAC;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAWA,SAASM,mBAAmBA,CAC1BC,OAAsB,EACtBC,IAAgB,EAChBC,KAAY,EACE;EACd,MAAMC,CAAC,GAAGD,KAAK,CAACE,MAAM;EACtB,MAAMC,UAAU,GAAGrC,WAAW,CAACiC,IAAI,CAAC;EAEpC,QAAQD,OAAO;IACb,KAAK,SAAS;MACZ,OAAO;QACLM,SAAS,EAAE;UAAEC,eAAe,EAAEJ,CAAC,CAACK,OAAO;UAAEC,YAAY,EAAE5B;QAAY,CAAC;QACpE6B,SAAS,EAAEP,CAAC,CAACQ,iBAAiB;QAC9BC,SAAS,EAAET,CAAC,CAACK;MACf,CAAC;IACH,KAAK,aAAa;MAChB,OAAO;QACLF,SAAS,EAAE;UAAEC,eAAe,EAAEJ,CAAC,CAACU,QAAQ;UAAEJ,YAAY,EAAE5B;QAAY,CAAC;QACrE6B,SAAS,EAAEP,CAAC,CAACW,kBAAkB;QAC/BF,SAAS,EAAET,CAAC,CAACU;MACf,CAAC;IACH,KAAK,SAAS;MACZ,OAAO;QACLP,SAAS,EAAE;UAAEC,eAAe,EAAE,SAAS;UAAEE,YAAY,EAAE5B;QAAY,CAAC;QACpE6B,SAAS,EAAE,SAAS;QACpBE,SAAS,EAAET,CAAC,CAACK;MACf,CAAC;IACH,KAAK,WAAW;IAChB,KAAK,SAAS;MACZ,OAAO;QACLF,SAAS,EAAE;UACTC,eAAe,EAAE,aAAa;UAC9BQ,WAAW,EAAE,CAAC;UACdC,WAAW,EAAE,OAAO;UACpBC,WAAW,EAAEd,CAAC,CAACe,MAAM;UACrBT,YAAY,EAAE5B;QAChB,CAAC;QACD6B,SAAS,EAAEP,CAAC,CAACgB,IAAI;QACjBP,SAAS,EAAET,CAAC,CAACK;MACf,CAAC;IACH,KAAK,OAAO;MACV,OAAO;QACLF,SAAS,EAAE;UAAEC,eAAe,EAAE,aAAa;UAAEE,YAAY,EAAE3B;QAAa,CAAC;QACzE4B,SAAS,EAAEP,CAAC,CAACK,OAAO;QACpBI,SAAS,EAAET,CAAC,CAACK;MACf,CAAC;IACH,KAAK,MAAM;MACT,OAAO;QACLF,SAAS,EAAE;UACTC,eAAe,EAAEJ,CAAC,CAACiB,UAAU;UAC7BL,WAAW,EAAE,CAAC;UACdC,WAAW,EAAE,OAAO;UACpBC,WAAW,EAAEd,CAAC,CAACe,MAAM;UACrBT,YAAY,EAAE1B,WAAW;UACzBsC,OAAO,EAAE,CAAC;UACVC,KAAK,EAAEjB,UAAU,CAAChC,SAAS;UAC3BkD,MAAM,EAAElB,UAAU,CAAChC;QACrB,CAAC;QACDqC,SAAS,EAAEP,CAAC,CAACgB,IAAI;QACjBP,SAAS,EAAET,CAAC,CAACK;MACf,CAAC;IACH,KAAK,MAAM;IACX,KAAK,MAAM;IACX;MACE,OAAO;QACLF,SAAS,EAAE;UAAEC,eAAe,EAAE,aAAa;UAAEE,YAAY,EAAE;QAAE,CAAC;QAC9DC,SAAS,EAAEP,CAAC,CAACK,OAAO;QACpBI,SAAS,EAAET,CAAC,CAACK;MACf,CAAC;EACL;AACF;;AAEA;AACA;AACA;;AAEA,MAAMgB,kBAAyC,GAAGA,CAAC;EACjDC,OAAO;EACPC,OAAO;EACPC,QAAQ;EACRC,QAAQ,GAAG,KAAK;EAChB5B,OAAO,GAAG,SAAS;EACnBC,IAAI,EAAE4B,QAAQ,GAAG,QAAQ;EACzBpC,KAAK;EACLb,IAAI;EACJkD,YAAY,GAAG,MAAM;EACrBC,OAAO,GAAG,KAAK;EACfC,YAAY;EACZC,kBAAkB;EAClB,YAAY,EAAEC,aAAa;EAC3BC,iBAAiB;EACjBC,MAAM;EACNC,SAAS;EACTC,IAAI,GAAG,QAAQ;EACfC,OAAO,GAAG,KAAK;EACf5C,EAAE;EACF6C,IAAI;EACJC,KAAK;EACLC,KAAK;EACLC,SAAS;EACTC,QAAQ;EACRC,SAAS,GAAG;AACd,CAAC,KAAK;EACJxD,YAAY,CAAC,CAAC;EACd,MAAMa,KAAK,GAAG,IAAA4C,kBAAQ,EAAC,CAAC;EACxB,MAAMC,OAAO,GAAG,IAAAC,YAAK,EAAC,CAAC;EACvB,MAAMC,UAAU,GAAGtD,EAAE,IAAI,aAAaoD,OAAO,EAAE;;EAE/C;EACA;EACA,MAAMG,eAA8B,GAClCrB,QAAQ,KAAK,MAAM,IAAI7B,OAAO,KAAK,SAAS,GAAG,MAAM,GAAGA,OAAO;EACjE,MAAMC,IAAgB,GAAGzB,UAAU,CAACqD,QAAQ,CAAC;EAC7C,MAAMsB,MAAM,GAAGD,eAAe,KAAK,MAAM;EACzC,MAAME,oBAAoB,GAAGxB,QAAQ,IAAIG,OAAO;EAEhD,MAAMsB,YAAY,GAAG,IAAAC,cAAO,EAC1B,MAAMvD,mBAAmB,CAACmD,eAAe,EAAEjD,IAAI,EAAEC,KAAK,CAAC,EACvD,CAACgD,eAAe,EAAEjD,IAAI,EAAEC,KAAK,CAC/B,CAAC;EAED,MAAMG,UAAU,GAAGrC,WAAW,CAACiC,IAAI,CAAC;EAEpC,MAAMsD,cAAc,GAAG,IAAAD,cAAO,EAAC,MAAqB;IAClD,MAAME,IAAmB,GAAG;MAC1BpF,QAAQ,EAAEiC,UAAU,CAACjC,QAAQ;MAC7BqF,UAAU,EAAE,MAAM;MAClBC,KAAK,EAAEL,YAAY,CAAC3C,SAAS;MAC7BY,KAAK,EAAEuB,SAAS,GAAG,MAAM,GAAGc,SAAS;MACrC;MACA,CAAC,kBAAkB,GAAaN,YAAY,CAACzC,SAAS;MACtD,CAAC,yBAAyB,GAAa3B,cAAc,CAACzB,GAAG,CAAC0F,eAAe,CAAC,GACtElE,WAAW,GACX,CAAC;MACL,GAAGqE,YAAY,CAAC/C;IAClB,CAAC;IACD,IAAI,CAAC6C,MAAM,EAAE;MACXK,IAAI,CAACI,UAAU,GAAGvD,UAAU,CAACnC,eAAe;MAC5CsF,IAAI,CAACK,aAAa,GAAGxD,UAAU,CAACnC,eAAe;MAC/CsF,IAAI,CAACM,WAAW,GAAGzD,UAAU,CAAClC,iBAAiB;MAC/CqF,IAAI,CAACO,YAAY,GAAG1D,UAAU,CAAClC,iBAAiB;MAChDqF,IAAI,CAACnF,SAAS,GAAGgC,UAAU,CAAChC,SAAS;IACvC;IACA,IAAI6E,eAAe,KAAK,MAAM,IAAIA,eAAe,KAAK,MAAM,EAAE;MAC5DM,IAAI,CAACI,UAAU,GAAG,CAAC;MACnBJ,IAAI,CAACK,aAAa,GAAG,CAAC;MACtBL,IAAI,CAACM,WAAW,GAAG,CAAC;MACpBN,IAAI,CAACO,YAAY,GAAG,CAAC;MACrBP,IAAI,CAACnF,SAAS,GAAGsF,SAAS;IAC5B;IACA,OAAOH,IAAI;EACb,CAAC,EAAE,CAACnD,UAAU,EAAEgD,YAAY,EAAER,SAAS,EAAEM,MAAM,EAAED,eAAe,CAAC,CAAC;EAElE,MAAMc,WAAW,GAAG,IAAAC,kBAAW,EAC5BC,KAAoC,IAAK;IACxC,IAAId,oBAAoB,EAAE;MACxBc,KAAK,CAACC,cAAc,CAAC,CAAC;MACtB;IACF;IACAzC,OAAO,GAAGwC,KAAK,CAAC;IAChBzC,OAAO,GAAG,CAAC;EACb,CAAC,EACD,CAAC2B,oBAAoB,EAAE1B,OAAO,EAAED,OAAO,CACzC,CAAC;EAED,MAAM2C,SAAS,GAAGlC,aAAa,IAAID,kBAAkB;EACrD,MAAMoC,iBAAiB,GAAG,CAAC,WAAW,CAAC,CACpCC,MAAM,CAACpB,eAAe,KAAK,MAAM,GAAG,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,CAC7DoB,MAAM,CAACjC,SAAS,GAAG,CAACA,SAAS,CAAC,GAAG,EAAE,CAAC,CACpCkC,IAAI,CAAC,GAAG,CAAC;EAEZ,MAAMC,YAAY,GAAGxC,YAAY,IAAIqB,YAAY,CAAC3C,SAAS;EAE3D,MAAM+D,OAAO,gBACX,IAAA7H,WAAA,CAAA8H,IAAA,EAAA9H,WAAA,CAAA+H,QAAA;IAAAhD,QAAA,GACGG,YAAY,KAAK,MAAM,IAAIlD,IAAI,EAC/B+C,QAAQ,IAAI,IAAI,KACd,OAAOA,QAAQ,KAAK,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,gBAC3D,IAAA/E,WAAA,CAAAgI,GAAA;MAAAjD,QAAA,EAAOA;IAAQ,CAAO,CAAC,GAEvBA,QACD,CAAC,EACHG,YAAY,KAAK,OAAO,IAAIlD,IAAI;EAAA,CACjC,CACH;EAED,MAAMiG,IAAI,GAAG9C,OAAO,gBAClB,IAAAnF,WAAA,CAAA8H,IAAA,EAAA9H,WAAA,CAAA+H,QAAA;IAAAhD,QAAA,gBAEE,IAAA/E,WAAA,CAAAgI,GAAA;MACE,eAAY,MAAM;MAClBnF,KAAK,EAAE;QACLqF,OAAO,EAAE,aAAa;QACtBC,UAAU,EAAE,QAAQ;QACpBC,cAAc,EAAE,QAAQ;QACxBC,GAAG,EAAE,CAAC;QACNC,OAAO,EAAE,CAAC;QACVC,aAAa,EAAE;MACjB,CAAE;MAAAxD,QAAA,EAED8C;IAAO,CACJ,CAAC,eACP,IAAA7H,WAAA,CAAAgI,GAAA;MACE,eAAY,MAAM;MAClBnF,KAAK,EAAE;QACL2F,QAAQ,EAAE,UAAU;QACpBC,KAAK,EAAE,CAAC;QACRP,OAAO,EAAE,aAAa;QACtBC,UAAU,EAAE,QAAQ;QACpBC,cAAc,EAAE,QAAQ;QACxBG,aAAa,EAAE;MACjB,CAAE;MAAAxD,QAAA,eAEF,IAAA/E,WAAA,CAAAgI,GAAA,EAACjI,eAAA,CAAA2I,WAAW;QAACrF,IAAI,EAAEsF,IAAI,CAACC,KAAK,CAACnF,UAAU,CAACjC,QAAQ,GAAG,GAAG,CAAE;QAACsF,KAAK,EAAEc;MAAa,CAAE;IAAC,CAC7E,CAAC;EAAA,CACP,CAAC,GAEHC,OACD;;EAED;EACA;EACA,IAAIlC,OAAO,iBAAIkD,cAAK,CAACC,cAAc,CAAC/D,QAAQ,CAAC,EAAE;IAC7C,MAAMgE,KAAK,GAAGhE,QAUZ;IACF,MAAMiE,UAAU,GAAGD,KAAK,CAACE,KAAK;IAC9B,oBAAOJ,cAAK,CAACK,YAAY,CAACH,KAAK,EAAE;MAC/BtD,SAAS,EAAE,CAACgC,iBAAiB,EAAEuB,UAAU,CAACvD,SAAS,CAAC,CAAC0D,MAAM,CAACC,OAAO,CAAC,CAACzB,IAAI,CAAC,GAAG,CAAC;MAC9E9E,KAAK,EAAE;QAAE,GAAG8D,cAAc;QAAE,GAAI9D,KAAuB;QAAE,GAAGmG,UAAU,CAACnG;MAAM,CAAC;MAC9EiC,OAAO,EAAGwC,KAA8B,IAAK;QAC3C,IAAId,oBAAoB,EAAE;UACxBc,KAAK,CAACC,cAAc,CAAC,CAAC;UACtB;QACF;QACAyB,UAAU,CAAClE,OAAO,GAAGwC,KAAK,CAAC;QAC3BxC,OAAO,GAAGwC,KAAsC,CAAC;QACjDzC,OAAO,GAAG,CAAC;MACb,CAAC;MACD,eAAe,EAAE2B,oBAAoB,IAAIO,SAAS;MAClD,WAAW,EAAE5B,OAAO,IAAI4B,SAAS;MACjC,YAAY,EAAES,SAAS,IAAIwB,UAAU,CAAC,YAAY,CAAC;MACnDlD,KAAK,EAAEA,KAAK,IAAIkD,UAAU,CAAClD,KAAK;MAChC/C,EAAE,EAAEiG,UAAU,CAACjG,EAAE,IAAIsD,UAAU;MAC/BL,QAAQ,EAAEQ,oBAAoB,GAAG,CAAC,CAAC,GAAGwC,UAAU,CAAChD;IACnD,CAAC,CAAC;EACJ;EAEA,oBACE,IAAAhG,WAAA,CAAAgI,GAAA;IACEjF,EAAE,EAAEsD,UAAW;IACfX,IAAI,EAAEA,IAAK;IACXE,IAAI,EAAEA,IAAK;IACXC,KAAK,EAAEA,KAAM;IACbJ,SAAS,EAAEgC,iBAAkB;IAC7B5E,KAAK,EAAE;MAAE,GAAG8D,cAAc;MAAE,GAAI9D;IAAwB,CAAE;IAC1DiC,OAAO,EAAEsC,WAAY;IACrBpC,QAAQ,EAAEA,QAAQ,IAAI,CAACG,OAAQ;IAC/B,iBAAeqB,oBAAoB,IAAIO,SAAU;IACjD,aAAW5B,OAAO,IAAI4B,SAAU;IAChC,cAAYS,SAAU;IACtB1B,KAAK,EAAEA,KAAK,IAAIP,iBAAkB;IAClCQ,SAAS,EAAEA,SAAU;IACrBC,QAAQ,EAAEA,QAAS;IACnB,eAAaR,MAAO;IAAAT,QAAA,EAEnBkD;EAAI,CACC,CAAC;AAEb,CAAC;AAEM,MAAMoB,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAG,IAAAE,WAAI,EAAC3E,kBAAkB,CAAC;AAC9CyE,MAAM,CAACG,WAAW,GAAG,QAAQ;AAEtB,MAAMC,aAAa,GAAAH,OAAA,CAAAG,aAAA,gBAAG,IAAAF,WAAI,EAAEN,KAAmC,iBACpE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAS,CAAE,CACvC,CAAC;AACFqG,aAAa,CAACD,WAAW,GAAG,eAAe;AAEpC,MAAME,eAAe,GAAAJ,OAAA,CAAAI,eAAA,gBAAG,IAAAH,WAAI,EAAEN,KAAmC,iBACtE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAW,CAAE,CACzC,CAAC;AACFsG,eAAe,CAACF,WAAW,GAAG,iBAAiB;AAExC,MAAMG,UAAU,GAAAL,OAAA,CAAAK,UAAA,gBAAG,IAAAJ,WAAI,EAAEN,KAAmC,iBACjE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAM,CAAE,CACpC,CAAC;AACFuG,UAAU,CAACH,WAAW,GAAG,YAAY;AAE9B,MAAMI,WAAW,GAAAN,OAAA,CAAAM,WAAA,gBAAG,IAAAL,WAAI,EAAEN,KAAmC,iBAClE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAO,CAAE,CACrC,CAAC;AACFwG,WAAW,CAACJ,WAAW,GAAG,aAAa;AAEhC,MAAMK,aAAa,GAAAP,OAAA,CAAAO,aAAA,gBAAG,IAAAN,WAAI,EAAEN,KAAmC,iBACpE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAS,CAAE,CACvC,CAAC;AACFyG,aAAa,CAACL,WAAW,GAAG,eAAe;AAEpC,MAAMM,UAAU,GAAAR,OAAA,CAAAQ,UAAA,gBAAG,IAAAP,WAAI,EAAEN,KAAmC,iBACjE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAM,CAAE,CACpC,CAAC;AACF0G,UAAU,CAACN,WAAW,GAAG,YAAY;AAE9B,MAAMO,aAAa,GAAAT,OAAA,CAAAS,aAAA,gBAAG,IAAAR,WAAI,EAAEN,KAAmC,iBACpE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAS,CAAE,CACvC,CAAC;AACF2G,aAAa,CAACP,WAAW,GAAG,eAAe;AAEpC,MAAMQ,UAAU,GAAAV,OAAA,CAAAU,UAAA,gBAAG,IAAAT,WAAI,EAAEN,KAAmC,iBACjE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAM,CAAE,CACpC,CAAC;AACF4G,UAAU,CAACR,WAAW,GAAG,YAAY;AAE9B,MAAMS,iBAAiB,GAAAX,OAAA,CAAAW,iBAAA,gBAAG,IAAAV,WAAI,EAAEN,KAAmC,iBACxE,IAAAjJ,WAAA,CAAAgI,GAAA,EAACqB,MAAM;EAAA,GAAKJ,KAAK;EAAE7F,OAAO,EAAC;AAAa,CAAE,CAC3C,CAAC;AACF6G,iBAAiB,CAACT,WAAW,GAAG,mBAAmB","ignoreList":[]}
|
|
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "Button", {
|
|
|
9
9
|
return _Button.Button;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "DestructiveButton", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _Button.DestructiveButton;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
12
18
|
Object.defineProperty(exports, "GhostButton", {
|
|
13
19
|
enumerable: true,
|
|
14
20
|
get: function () {
|
|
@@ -21,6 +27,24 @@ Object.defineProperty(exports, "IconButton", {
|
|
|
21
27
|
return _Button.IconButton;
|
|
22
28
|
}
|
|
23
29
|
});
|
|
30
|
+
Object.defineProperty(exports, "InverseButton", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _Button.InverseButton;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "LinkButton", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _Button.LinkButton;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "OutlineButton", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _Button.OutlineButton;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
24
48
|
Object.defineProperty(exports, "PrimaryButton", {
|
|
25
49
|
enumerable: true,
|
|
26
50
|
get: function () {
|
|
@@ -39,5 +63,5 @@ Object.defineProperty(exports, "TextButton", {
|
|
|
39
63
|
return _Button.TextButton;
|
|
40
64
|
}
|
|
41
65
|
});
|
|
42
|
-
var _Button = require("./Button
|
|
66
|
+
var _Button = require("./Button");
|
|
43
67
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Button","require"],"sourceRoot":"../../../src","sources":["button/index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_Button","require"],"sourceRoot":"../../../src","sources":["button/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Button", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ButtonWeb.Button;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "DestructiveButton", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ButtonWeb.DestructiveButton;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "GhostButton", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _ButtonWeb.GhostButton;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "IconButton", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _ButtonWeb.IconButton;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "InverseButton", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _ButtonWeb.InverseButton;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "LinkButton", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _ButtonWeb.LinkButton;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "OutlineButton", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _ButtonWeb.OutlineButton;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(exports, "PrimaryButton", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _ButtonWeb.PrimaryButton;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
Object.defineProperty(exports, "SecondaryButton", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _ButtonWeb.SecondaryButton;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(exports, "TextButton", {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () {
|
|
63
|
+
return _ButtonWeb.TextButton;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
var _ButtonWeb = require("./Button.web.js");
|
|
67
|
+
//# sourceMappingURL=index.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_ButtonWeb","require"],"sourceRoot":"../../../src","sources":["button/index.web.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,IAAAA,UAAA,GAAAC,OAAA","ignoreList":[]}
|