@cdx-ui/components 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/coverage.svg +1 -1
  2. package/docs/components/bottom-sheet/content.md +2 -2
  3. package/docs/components/currency-input/content.md +94 -5
  4. package/docs/llms.txt +1 -0
  5. package/docs/resources/release-notes/0.3.1/content.md +13 -0
  6. package/docs/resources/release-notes/content.md +1 -0
  7. package/lib/commonjs/components/BottomSheet/index.js +63 -16
  8. package/lib/commonjs/components/BottomSheet/index.js.map +1 -1
  9. package/lib/commonjs/components/CurrencyInput/index.js +35 -10
  10. package/lib/commonjs/components/CurrencyInput/index.js.map +1 -1
  11. package/lib/commonjs/components/CurrencyInput/styles.js +40 -3
  12. package/lib/commonjs/components/CurrencyInput/styles.js.map +1 -1
  13. package/lib/commonjs/figma/CurrencyInput.figma.js +8 -8
  14. package/lib/commonjs/figma/CurrencyInput.figma.js.map +1 -1
  15. package/lib/module/components/BottomSheet/index.js +64 -17
  16. package/lib/module/components/BottomSheet/index.js.map +1 -1
  17. package/lib/module/components/CurrencyInput/index.js +37 -12
  18. package/lib/module/components/CurrencyInput/index.js.map +1 -1
  19. package/lib/module/components/CurrencyInput/styles.js +38 -3
  20. package/lib/module/components/CurrencyInput/styles.js.map +1 -1
  21. package/lib/module/figma/CurrencyInput.figma.js +8 -8
  22. package/lib/module/figma/CurrencyInput.figma.js.map +1 -1
  23. package/lib/typescript/components/BottomSheet/index.d.ts.map +1 -1
  24. package/lib/typescript/components/CurrencyInput/index.d.ts +4 -1
  25. package/lib/typescript/components/CurrencyInput/index.d.ts.map +1 -1
  26. package/lib/typescript/components/CurrencyInput/styles.d.ts +17 -6
  27. package/lib/typescript/components/CurrencyInput/styles.d.ts.map +1 -1
  28. package/lib/typescript/figma/CurrencyInput.figma.d.ts.map +1 -1
  29. package/package.json +5 -5
  30. package/src/components/BottomSheet/index.tsx +88 -13
  31. package/src/components/CurrencyInput/index.tsx +36 -12
  32. package/src/components/CurrencyInput/styles.ts +51 -4
package/coverage.svg CHANGED
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="108" height="20" role="img" aria-label="coverage: 92.7%"><title>coverage: 92.7%</title><filter id="blur"><feGaussianBlur stdDeviation="16"/></filter><linearGradient id="s" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="r"><rect width="108" height="20" rx="3"/></clipPath><g clip-path="url(#r)"><rect width="61" height="20" fill="#555"/><rect x="61" width="47" height="20" fill="#4b0"/><rect width="108" height="20" fill="url(#s)"/></g><g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" text-rendering="geometricPrecision" font-size="110"><g transform="scale(.1)"><g aria-hidden="true" fill="#010101"><text x="315" y="150" fill-opacity=".8" filter="url(#blur)" textLength="510">coverage</text><text x="315" y="150" fill-opacity=".3" textLength="510">coverage</text></g><text x="315" y="140" textLength="510">coverage</text></g><g transform="scale(.1)"><g aria-hidden="true" fill="#010101"><text x="835" y="150" fill-opacity=".8" filter="url(#blur)" textLength="370">92.7%</text><text x="835" y="150" fill-opacity=".3" textLength="370">92.7%</text></g><text x="835" y="140" textLength="370">92.7%</text></g></g></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="108" height="20" role="img" aria-label="coverage: 92.6%"><title>coverage: 92.6%</title><filter id="blur"><feGaussianBlur stdDeviation="16"/></filter><linearGradient id="s" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="r"><rect width="108" height="20" rx="3"/></clipPath><g clip-path="url(#r)"><rect width="61" height="20" fill="#555"/><rect x="61" width="47" height="20" fill="#4b0"/><rect width="108" height="20" fill="url(#s)"/></g><g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" text-rendering="geometricPrecision" font-size="110"><g transform="scale(.1)"><g aria-hidden="true" fill="#010101"><text x="315" y="150" fill-opacity=".8" filter="url(#blur)" textLength="510">coverage</text><text x="315" y="150" fill-opacity=".3" textLength="510">coverage</text></g><text x="315" y="140" textLength="510">coverage</text></g><g transform="scale(.1)"><g aria-hidden="true" fill="#010101"><text x="835" y="150" fill-opacity=".8" filter="url(#blur)" textLength="370">92.6%</text><text x="835" y="150" fill-opacity=".3" textLength="370">92.6%</text></g><text x="835" y="140" textLength="370">92.6%</text></g></g></svg>
@@ -310,11 +310,11 @@ Required once at the app root. Wraps the tree to enable modal presentation.
310
310
 
311
311
  ### BottomSheet.ScrollView
312
312
 
313
- Scrollable content wrapper for sheets with long content. Enables footer margin adjustment by default.
313
+ Scrollable content wrapper for sheets with long content. Enables footer margin adjustment by default when the sheet has a footer.
314
314
 
315
315
  ### BottomSheet.View
316
316
 
317
- Non-scrollable content wrapper for fit-to-content sheets. Enables footer margin adjustment by default.
317
+ Non-scrollable content wrapper for fit-to-content sheets. Enables footer margin adjustment by default when the sheet has a footer.
318
318
 
319
319
  ## Hook
320
320
 
@@ -23,9 +23,50 @@ export default function CurrencyInputBasicDemo() {
23
23
  }
24
24
  ```
25
25
 
26
+ ## Variants
27
+
28
+ Use the default `ghost` variant for a large, centered amount that is the focus of the screen. Use `outline` when the amount sits in a form next to other fields: it renders the same bordered shell as `Input`, with the currency symbol as a separate prefix.
29
+
30
+ ```tsx
31
+ import { useState } from 'react';
32
+ import { Box, CurrencyInput, Text, type CurrencyInputProps } from '@cdx-ui/components';
33
+
34
+ const variants = ['ghost', 'outline'] as const satisfies readonly NonNullable<
35
+ CurrencyInputProps['variant']
36
+ >[];
37
+
38
+ function VariantRow({ variant }: { variant: NonNullable<CurrencyInputProps['variant']> }) {
39
+ const [amount, setAmount] = useState(4890);
40
+
41
+ return (
42
+ <Box className="gap-2">
43
+ <Text size="sm" color="secondary">
44
+ {variant}
45
+ </Text>
46
+ <CurrencyInput
47
+ accessibilityLabel={`${variant} transfer amount`}
48
+ variant={variant}
49
+ value={amount}
50
+ onChangeValue={setAmount}
51
+ />
52
+ </Box>
53
+ );
54
+ }
55
+
56
+ export default function CurrencyInputVariantsDemo() {
57
+ return (
58
+ <Box className="w-full gap-4">
59
+ {variants.map((variant) => (
60
+ <VariantRow key={variant} variant={variant} />
61
+ ))}
62
+ </Box>
63
+ );
64
+ }
65
+ ```
66
+
26
67
  ## Sizes
27
68
 
28
- Use `size="small"` when the amount appears alongside other form fields.
69
+ Use `size="small"` for a more compact amount. When the amount appears alongside other form fields, use `variant="outline"` instead so it matches them.
29
70
 
30
71
  ```tsx
31
72
  import { useState } from 'react';
@@ -121,7 +162,26 @@ export default function CurrencyInputStatesDemo() {
121
162
 
122
163
  ## With field
123
164
 
124
- Compose with `Field` to provide a visible label, helper text, and required state.
165
+ Compose with `Field` to provide a visible label, helper text, and required state. In a form, use `variant="outline"` with the label and helper aligned to the start, as with `Input`.
166
+
167
+ ```tsx
168
+ import { useState } from 'react';
169
+ import { CurrencyInput, Field } from '@cdx-ui/components';
170
+
171
+ export default function CurrencyInputOutlineWithFieldDemo() {
172
+ const [amount, setAmount] = useState(0);
173
+
174
+ return (
175
+ <Field className="w-full" isRequired>
176
+ <Field.Label>Amount</Field.Label>
177
+ <CurrencyInput isRequired variant="outline" value={amount} onChangeValue={setAmount} />
178
+ <Field.Helper>Daily limit remaining: $1,200</Field.Helper>
179
+ </Field>
180
+ );
181
+ }
182
+ ```
183
+
184
+ For the `ghost` pattern, center the label and helper over the amount.
125
185
 
126
186
  ```tsx
127
187
  import { useState } from 'react';
@@ -150,6 +210,34 @@ import { CurrencyInput, Field } from '@cdx-ui/components';
150
210
 
151
211
  const DAILY_LIMIT = 1200;
152
212
 
213
+ export default function CurrencyInputOutlineWithFieldInvalidDemo() {
214
+ const [amount, setAmount] = useState(1500);
215
+ const isInvalid = amount > DAILY_LIMIT;
216
+
217
+ return (
218
+ <Field className="w-full" isRequired isInvalid={isInvalid}>
219
+ <Field.Label>Amount</Field.Label>
220
+ <CurrencyInput
221
+ isInvalid={isInvalid}
222
+ isRequired
223
+ variant="outline"
224
+ value={amount}
225
+ onChangeValue={setAmount}
226
+ />
227
+ <Field.Error>Amount exceeds your daily limit.</Field.Error>
228
+ </Field>
229
+ );
230
+ }
231
+ ```
232
+
233
+ The same validation in the `ghost` pattern, with a centered label and error.
234
+
235
+ ```tsx
236
+ import { useState } from 'react';
237
+ import { CurrencyInput, Field } from '@cdx-ui/components';
238
+
239
+ const DAILY_LIMIT = 1200;
240
+
153
241
  export default function CurrencyInputWithFieldInvalidDemo() {
154
242
  const [amount, setAmount] = useState(1500);
155
243
  const isInvalid = amount > DAILY_LIMIT;
@@ -181,14 +269,15 @@ Controlled calculator-style monetary entry. The numeric `value` is expressed in
181
269
  | `className?` | `string` | — | — |
182
270
  | `value?` | `number` | — | Current amount in major currency units, not cents. Renders a formatted zero when omitted or null. |
183
271
  | `style?` | `StyleProp<ViewStyle>` | — | — |
184
- | `size?` | `'default' \| 'small' \| null` | — | — |
185
272
  | `onChangeValue?` | `((value: number) => void)` | — | Called with the parsed amount in major currency units, not cents, when the user edits the field. |
186
- | `currencySymbol?` | `string` | — | Currency symbol rendered as an inline prefix. Defaults to `"$"`. |
273
+ | `currencySymbol?` | `string` | — | Currency symbol shown before the amount. Defaults to `"$"`. Part of the field text in `ghost`; a separate, non-editable prefix in `outline`. |
187
274
  | `isInvalid?` | `boolean` | — | If true, the input will indicate an error. |
188
275
  | `isDisabled?` | `boolean` | — | If true, the input will be disabled. |
189
276
  | `isRequired?` | `boolean` | — | Sets `aria-required="true"` on web when passed in form control. |
190
277
  | `isReadOnly?` | `boolean` | — | If true, prevents the value of the input from being edited. |
191
278
  | `isFullWidth?` | `boolean` | — | If true, the input element will span the full width of its parent. |
279
+ | `variant?` | `'ghost' \| 'outline'` | `'ghost'` | Visual style. `ghost` is the large, centered, borderless amount entry; `outline` renders the bordered `Input` shell with a leading currency-symbol prefix, for amounts that sit alongside other form fields. |
280
+ | `size?` | `'default' \| 'small'` | `'default'` | Height, padding, and text size. |
192
281
 
193
282
  Supports `accessibilityLabel`, `accessibilityHint`, `testID`, `onFocus`, `onBlur`, and `returnKeyType` from [`TextInputProps`](https://reactnative.dev/docs/textinput#props). `style` applies to the root container, and the forwarded ref targets the underlying `TextInput`.
194
283
 
@@ -201,5 +290,5 @@ Only digits contribute to the amount. Each new digit appends to the cents value,
201
290
  | Item | Behavior |
202
291
  | --------------- | ------------------------------------------------------------------------------------ |
203
292
  | Accessible name | Compose with `Field.Label` or pass `accessibilityLabel` directly. |
204
- | Value | `accessibilityValue.text` contains the fully formatted amount. |
293
+ | Value | `accessibilityValue.text` contains the fully formatted amount, including the symbol. |
205
294
  | Validation | Pair `isInvalid` with `Field.Error` so the error is not communicated by color alone. |
package/docs/llms.txt CHANGED
@@ -138,6 +138,7 @@ Links point at each page's `content.md`, which carries the page's prose, demo so
138
138
 
139
139
  ## Release notes
140
140
 
141
+ - [0.3.1](resources/release-notes/0.3.1/content.md): DataGrid adds filterMode for server-side search and filters; IconButton adds warning, success, and info color options.
141
142
  - [0.3.0](resources/release-notes/0.3.0/content.md): Calendar and MonthCalendar year pickers scroll the full selectable range; BottomSheet adds fullBleed and updated Content and Footer padding.
142
143
  - [0.2.5](resources/release-notes/0.2.5/content.md): Box is the supported layout primitive with hardened stacks; View from @cdx-ui/components is deprecated. Align Expo apps with SDK 57 and React Native 0.86.
143
144
  - [0.2.4](resources/release-notes/0.2.4/content.md): ScrollShadow fades scroll edges on iOS, Android, and web; ListItem.SectionHeader adds a gradient variant for account-style lists.
@@ -0,0 +1,13 @@
1
+ # 0.3.1 (https://design.candescent.com/docs/resources/release-notes/0.3.1)
2
+
3
+ DataGrid adds filterMode for server-side search and filters; IconButton adds warning, success, and info color options.
4
+
5
+ This release extends **DataGrid** for server-driven filtering and adds status-colored variants to **[IconButton](https://design.candescent.com/docs/components/icon-button/content.md)** and **[Toast](https://design.candescent.com/docs/components/toast/content.md)**.
6
+
7
+ ## What's new
8
+
9
+ **DataGrid** — Set `filterMode="server"` when pagination or sorting already runs on the server so quick search and column filters no longer run only against the rows on the current page. The grid emits `quickFilter` and `filterModel` changes and leaves filtering to your data source; `filterMode` defaults to match `paginationMode`, so server pagination does not silently filter a single page. `GridFilterItem.operator` is optional and defaults to `contains` ([#813](https://github.com/dfh-candescent/forge-design-system/pull/813)).
10
+
11
+ **[IconButton](https://design.candescent.com/docs/components/icon-button/content.md)** — `color` accepts `warning`, `success`, and `info` across solid, subtle, and ghost variants so icon actions can match semantic status without custom styling ([#793](https://github.com/dfh-candescent/forge-design-system/pull/793)).
12
+
13
+ **[Toast](https://design.candescent.com/docs/components/toast/content.md)** — The close control uses the toast’s semantic color so dismiss actions stay visually aligned with warning, success, info, and error toasts ([#793](https://github.com/dfh-candescent/forge-design-system/pull/793)).
@@ -8,6 +8,7 @@ Notes are generated from the release commit itself, so the versions and commit r
8
8
  each entry are exact. Releases that contained nothing but backlog or dependency bookkeeping
9
9
  are omitted.
10
10
 
11
+ - [0.3.1](https://design.candescent.com/docs/resources/release-notes/0.3.1/content.md) — 2026-10-13 — DataGrid adds filterMode for server-side search and filters; IconButton adds warning, success, and info color options.
11
12
  - [0.3.0](https://design.candescent.com/docs/resources/release-notes/0.3.0/content.md) — 2026-10-13 — Calendar and MonthCalendar year pickers scroll the full selectable range; BottomSheet adds fullBleed and updated Content and Footer padding.
12
13
  - [0.2.5](https://design.candescent.com/docs/resources/release-notes/0.2.5/content.md) — 2026-10-12 — Box is the supported layout primitive with hardened stacks; View from @cdx-ui/components is deprecated. Align Expo apps with SDK 57 and React Native 0.86.
13
14
  - [0.2.4](https://design.candescent.com/docs/resources/release-notes/0.2.4/content.md) — 2026-10-09 — ScrollShadow fades scroll edges on iOS, Android, and web; ListItem.SectionHeader adds a gradient variant for account-style lists.
@@ -18,7 +18,38 @@ var _styles = require("./styles");
18
18
  var _jsxRuntime = require("react/jsx-runtime");
19
19
  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); }
20
20
  const SCOPE = 'BOTTOM_SHEET';
21
- const useBottomSheetStyleContext = () => (0, _utils.useStyleContext)(SCOPE) ?? {};
21
+ const useBottomSheetScopeContext = () => (0, _utils.useStyleContext)(SCOPE);
22
+ const useBottomSheetStyleContext = () => useBottomSheetScopeContext() ?? {};
23
+ const IS_WEB = _reactNative.Platform.OS === 'web';
24
+
25
+ /**
26
+ * Resolves how a content wrapper reserves room for the footer.
27
+ *
28
+ * gorhom's footer margin adjustment is unsound on web: its reaction first runs with the
29
+ * unmeasured footer sentinel (-999) and adds it to `contentHeight`, then never adds the real
30
+ * footer height. Depending on whether content measures first, a dynamically sized sheet either
31
+ * parks below its container or opens with the footer covering its content. It cannot be fixed
32
+ * with padding because react-native-web only re-reports layout when the content box resizes.
33
+ *
34
+ * So on web, when the sheet's `footer` prop is measured here, a spacer child of the footer's
35
+ * height replaces gorhom's adjustment; its layout lands in the content measurement in any
36
+ * order. With no footer there is nothing to adjust. Otherwise (native, a raw gorhom
37
+ * `footerComponent`, or outside a `BottomSheet.Modal`) gorhom's adjustment is kept.
38
+ */
39
+ function useFooterMargin(enableFooterMarginAdjustment) {
40
+ const scope = useBottomSheetScopeContext();
41
+ const enabled = enableFooterMarginAdjustment ?? scope?.hasFooter ?? true;
42
+ const spacerHeight = enabled && IS_WEB ? scope?.footerHeight : undefined;
43
+ return {
44
+ enableFooterMarginAdjustment: enabled && spacerHeight === undefined,
45
+ spacer: spacerHeight ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
46
+ style: {
47
+ height: spacerHeight
48
+ },
49
+ pointerEvents: "none"
50
+ }) : null
51
+ };
52
+ }
22
53
  const ZERO_INSETS = {
23
54
  top: 0,
24
55
  bottom: 0,
@@ -137,16 +168,29 @@ const BottomSheetModalStyled = /*#__PURE__*/(0, _react.forwardRef)(({
137
168
  ...rest
138
169
  }, ref) => {
139
170
  const parent = (0, _utils.useParentContext)();
171
+ const hasFooter = footer != null || rest.footerComponent != null;
172
+ const measuresFooter = IS_WEB && footer != null;
173
+ const [measuredFooterHeight, setMeasuredFooterHeight] = (0, _react.useState)(0);
174
+ const footerHeight = measuresFooter ? measuredFooterHeight : undefined;
140
175
  const ctx = (0, _react.useMemo)(() => ({
141
176
  ...parent,
142
177
  [SCOPE]: {
143
- fullBleed
178
+ fullBleed,
179
+ hasFooter,
180
+ footerHeight
144
181
  }
145
- }), [parent, fullBleed]);
182
+ }), [parent, fullBleed, hasFooter, footerHeight]);
183
+ const handleFooterLayout = (0, _react.useCallback)(event => {
184
+ setMeasuredFooterHeight(event.nativeEvent.layout.height);
185
+ }, []);
146
186
  const renderFooter = (0, _react.useCallback)(props => /*#__PURE__*/(0, _jsxRuntime.jsx)(_bottomSheet.BottomSheetFooter, {
147
187
  ...props,
148
- children: footer
149
- }), [footer]);
188
+ children: measuresFooter ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
189
+ onLayout: handleFooterLayout,
190
+ pointerEvents: "box-none",
191
+ children: footer
192
+ }) : footer
193
+ }), [footer, handleFooterLayout, measuresFooter]);
150
194
  const modalRef = (0, _react.useRef)(null);
151
195
  const dismissedRef = (0, _react.useRef)(false);
152
196
  const sheetMountedRef = (0, _react.useRef)(false);
@@ -274,35 +318,37 @@ const BottomSheetModalStyled = /*#__PURE__*/(0, _react.forwardRef)(({
274
318
  BottomSheetModalStyled.displayName = 'BottomSheet.Modal';
275
319
 
276
320
  // =============================================================================
277
- // SCROLLVIEW WRAPPER (with footer margin adjustment enabled by default)
321
+ // SCROLLVIEW WRAPPER (reserves room for the sheet's footer by default)
278
322
  // =============================================================================
279
323
 
280
324
  function BottomSheetScrollViewStyled({
281
- enableFooterMarginAdjustment = true,
325
+ enableFooterMarginAdjustment,
282
326
  children,
283
327
  ...rest
284
328
  }) {
285
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_bottomSheet.BottomSheetScrollView, {
286
- enableFooterMarginAdjustment: enableFooterMarginAdjustment,
329
+ const footerMargin = useFooterMargin(enableFooterMarginAdjustment);
330
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_bottomSheet.BottomSheetScrollView, {
331
+ enableFooterMarginAdjustment: footerMargin.enableFooterMarginAdjustment,
287
332
  ...rest,
288
- children: children
333
+ children: [children, footerMargin.spacer]
289
334
  });
290
335
  }
291
336
  BottomSheetScrollViewStyled.displayName = 'BottomSheet.ScrollView';
292
337
 
293
338
  // =============================================================================
294
- // VIEW WRAPPER (with footer margin adjustment enabled by default)
339
+ // VIEW WRAPPER (reserves room for the sheet's footer by default)
295
340
  // =============================================================================
296
341
 
297
342
  function BottomSheetViewStyled({
298
- enableFooterMarginAdjustment = true,
343
+ enableFooterMarginAdjustment,
299
344
  children,
300
345
  ...rest
301
346
  }) {
302
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_bottomSheet.BottomSheetView, {
303
- enableFooterMarginAdjustment: enableFooterMarginAdjustment,
347
+ const footerMargin = useFooterMargin(enableFooterMarginAdjustment);
348
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_bottomSheet.BottomSheetView, {
349
+ enableFooterMarginAdjustment: footerMargin.enableFooterMarginAdjustment,
304
350
  ...rest,
305
- children: children
351
+ children: [children, footerMargin.spacer]
306
352
  });
307
353
  }
308
354
  BottomSheetViewStyled.displayName = 'BottomSheet.View';
@@ -360,8 +406,9 @@ function useBottomSheet() {
360
406
  * ```
361
407
  */
362
408
  function useBottomSheetScrollable() {
409
+ const enableFooterMarginAdjustment = useBottomSheetScopeContext()?.hasFooter ?? true;
363
410
  return (0, _bottomSheet.useBottomSheetScrollableCreator)({
364
- enableFooterMarginAdjustment: true
411
+ enableFooterMarginAdjustment
365
412
  });
366
413
  }
367
414
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_uniwind","_bottomSheet","_primitives","_utils","_sheetHeader","_styles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SCOPE","useBottomSheetStyleContext","useStyleContext","ZERO_INSETS","top","bottom","left","right","useSafeInsets","useContext","SafeAreaInsetsContext","BottomSheetHeader","forwardRef","title","subtitle","children","className","onClose","closeAccessibilityLabel","onBack","backAccessibilityLabel","ref","jsx","SheetHeader","displayName","BottomSheetContent","hasSafeAreaInset","fullBleed","style","insets","fullBleedFromContext","computedClassName","cn","bottomSheetContentVariants","View","paddingBottom","pointerEvents","BottomSheetFooter","bottomSheetFooterVariants","Math","max","MAX_DYNAMIC_CONTENT_SIZE","Dimensions","height","CustomBackdrop","props","BottomSheetBackdrop","disappearsOnIndex","appearsOnIndex","opacity","pressBehavior","CustomBackground","bottomSheetBackgroundClassName","BottomSheetModalStyled","handleVisible","footer","onDismiss","onChange","onAnimate","rest","parent","useParentContext","ctx","useMemo","renderFooter","useCallback","modalRef","useRef","dismissedRef","sheetMountedRef","mountPendingRef","pendingDismissRef","presented","setPresented","useState","setModalRef","instance","current","dismissSheet","args","dismiss","markSheetMounted","pendingDismiss","useImperativeHandle","present","snapToIndex","snapToPosition","expand","collapse","close","forceClose","handleDismiss","handleChange","handleAnimate","id","useId","overlayId","useEscapeKey","groupId","layer","isTopmost","useOverlayStackRegistration","active","Platform","OS","capabilities","useEffect","backHandler","BackHandler","addEventListener","remove","sheetContainerStyle","useResolveClassNames","bottomSheetModalContainerClassName","handleIndicatorStyle","BottomSheetModal","enableDynamicSizing","maxDynamicContentSize","handleComponent","undefined","backdropComponent","backgroundComponent","footerComponent","ParentContext","Provider","value","BottomSheetScrollViewStyled","enableFooterMarginAdjustment","BottomSheetScrollView","BottomSheetViewStyled","BottomSheetView","BottomSheetModalProvider","BottomSheet","exports","Modal","Header","Content","Footer","ScrollView","useBottomSheet","useBottomSheetScrollable","useBottomSheetScrollableCreator"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_uniwind","_bottomSheet","_primitives","_utils","_sheetHeader","_styles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SCOPE","useBottomSheetScopeContext","useStyleContext","useBottomSheetStyleContext","IS_WEB","Platform","OS","useFooterMargin","enableFooterMarginAdjustment","scope","enabled","hasFooter","spacerHeight","footerHeight","undefined","spacer","jsx","View","style","height","pointerEvents","ZERO_INSETS","top","bottom","left","right","useSafeInsets","useContext","SafeAreaInsetsContext","BottomSheetHeader","forwardRef","title","subtitle","children","className","onClose","closeAccessibilityLabel","onBack","backAccessibilityLabel","ref","SheetHeader","displayName","BottomSheetContent","hasSafeAreaInset","fullBleed","insets","fullBleedFromContext","computedClassName","cn","bottomSheetContentVariants","paddingBottom","BottomSheetFooter","bottomSheetFooterVariants","Math","max","MAX_DYNAMIC_CONTENT_SIZE","Dimensions","CustomBackdrop","props","BottomSheetBackdrop","disappearsOnIndex","appearsOnIndex","opacity","pressBehavior","CustomBackground","bottomSheetBackgroundClassName","BottomSheetModalStyled","handleVisible","footer","onDismiss","onChange","onAnimate","rest","parent","useParentContext","footerComponent","measuresFooter","measuredFooterHeight","setMeasuredFooterHeight","useState","ctx","useMemo","handleFooterLayout","useCallback","event","nativeEvent","layout","renderFooter","onLayout","modalRef","useRef","dismissedRef","sheetMountedRef","mountPendingRef","pendingDismissRef","presented","setPresented","setModalRef","instance","current","dismissSheet","args","dismiss","markSheetMounted","pendingDismiss","useImperativeHandle","present","snapToIndex","snapToPosition","expand","collapse","close","forceClose","handleDismiss","handleChange","handleAnimate","id","useId","overlayId","useEscapeKey","groupId","layer","isTopmost","useOverlayStackRegistration","active","capabilities","useEffect","backHandler","BackHandler","addEventListener","remove","sheetContainerStyle","useResolveClassNames","bottomSheetModalContainerClassName","handleIndicatorStyle","BottomSheetModal","enableDynamicSizing","maxDynamicContentSize","handleComponent","backdropComponent","backgroundComponent","ParentContext","Provider","value","BottomSheetScrollViewStyled","footerMargin","jsxs","BottomSheetScrollView","BottomSheetViewStyled","BottomSheetView","BottomSheetModalProvider","BottomSheet","exports","Modal","Header","Content","Footer","ScrollView","useBottomSheet","useBottomSheetScrollable","useBottomSheetScrollableCreator"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.CurrencyInput = void 0;
7
7
  var _react = require("react");
8
+ var _reactNative = require("react-native");
8
9
  var _primitives = require("@cdx-ui/primitives");
9
10
  var _utils = require("@cdx-ui/utils");
10
11
  var _styles = require("./styles");
@@ -29,6 +30,7 @@ const CurrencyInput = exports.CurrencyInput = /*#__PURE__*/(0, _react.forwardRef
29
30
  value,
30
31
  onChangeValue,
31
32
  currencySymbol = '$',
33
+ variant = 'ghost',
32
34
  size = 'default',
33
35
  isDisabled,
34
36
  isInvalid,
@@ -56,16 +58,24 @@ const CurrencyInput = exports.CurrencyInput = /*#__PURE__*/(0, _react.forwardRef
56
58
  // Controlled caret, pinned to the end of the formatted string. `undefined` in
57
59
  // display mode so we never fight the platform when the field is not being edited.
58
60
  const [selection, setSelection] = (0, _react.useState)();
61
+ const isOutline = variant === 'outline';
62
+
63
+ // `outline` renders the symbol as a separate prefix, so the TextInput holds only the
64
+ // amount. Every caret index is measured against this field text, never the full display.
65
+ const fieldTextFor = cents => {
66
+ const amount = centsToAmountDisplay(cents);
67
+ return isOutline ? amount : `${currencySymbol}${amount}`;
68
+ };
59
69
  const displayCents = editingCents !== null ? editingCents : valueToCents(value);
60
- const amountDisplay = centsToAmountDisplay(displayCents);
61
- const fullDisplay = `${currencySymbol}${amountDisplay}`;
70
+ const fullDisplay = `${currencySymbol}${centsToAmountDisplay(displayCents)}`;
71
+ const fieldText = fieldTextFor(displayCents);
62
72
  const isEmpty = displayCents === 0;
63
73
 
64
- // Index just past the last character of the formatted string for a given cents.
65
- // Computed from `cents` (not the render-closure `fullDisplay`) so the caret is
74
+ // Index just past the last character of the field text for a given cents.
75
+ // Computed from `cents` (not the render-closure `fieldText`) so the caret is
66
76
  // correct in the same commit as a value change, even when a reformat adds or
67
77
  // removes a grouping comma (e.g. 444.44 → 3,444.44) and changes the length.
68
- const caretIndexFor = cents => `${currencySymbol}${centsToAmountDisplay(cents)}`.length;
78
+ const caretIndexFor = cents => fieldTextFor(cents).length;
69
79
  const pinCaret = end => setSelection({
70
80
  start: end,
71
81
  end
@@ -110,7 +120,7 @@ const CurrencyInput = exports.CurrencyInput = /*#__PURE__*/(0, _react.forwardRef
110
120
  if (editingCents === null) {
111
121
  return;
112
122
  }
113
- const end = fullDisplay.length;
123
+ const end = fieldText.length;
114
124
  const {
115
125
  selection: current
116
126
  } = e.nativeEvent;
@@ -118,7 +128,7 @@ const CurrencyInput = exports.CurrencyInput = /*#__PURE__*/(0, _react.forwardRef
118
128
  pinCaret(end);
119
129
  }
120
130
  };
121
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.InputRoot, {
131
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.InputRoot, {
122
132
  isDisabled: isDisabled,
123
133
  isInvalid: isInvalid,
124
134
  isReadOnly: isReadOnly,
@@ -127,15 +137,29 @@ const CurrencyInput = exports.CurrencyInput = /*#__PURE__*/(0, _react.forwardRef
127
137
  isHovered: isHovered,
128
138
  isFullWidth: isFullWidth,
129
139
  className: (0, _utils.cn)((0, _styles.currencyInputRootVariants)({
140
+ variant,
130
141
  size
131
142
  }), className),
132
143
  style: style,
133
144
  ...(0, _primitives.dataAttributes)({
134
145
  slot: 'currency-input'
135
146
  }),
136
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.InputField, {
147
+ children: [isOutline ?
148
+ /*#__PURE__*/
149
+ // Hidden from assistive tech: `accessibilityValue` already announces the symbol.
150
+ (0, _jsxRuntime.jsx)(_reactNative.Text, {
151
+ className: (0, _styles.currencyInputPrefixVariants)({
152
+ size
153
+ }),
154
+ "aria-hidden": true,
155
+ importantForAccessibility: "no-hide-descendants",
156
+ ...(0, _primitives.dataAttributes)({
157
+ slot: 'currency-input-prefix'
158
+ }),
159
+ children: currencySymbol
160
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.InputField, {
137
161
  ref: ref,
138
- value: fullDisplay,
162
+ value: fieldText,
139
163
  selection: selection,
140
164
  onChangeText: handleChangeText,
141
165
  onSelectionChange: handleSelectionChange,
@@ -150,9 +174,10 @@ const CurrencyInput = exports.CurrencyInput = /*#__PURE__*/(0, _react.forwardRef
150
174
  onFocus: handleFocus,
151
175
  onBlur: handleBlur,
152
176
  className: (0, _utils.cn)((0, _styles.currencyInputFieldVariants)({
177
+ variant,
153
178
  size
154
179
  }), isEmpty ? 'text-content-tertiary' : 'text-content-primary')
155
- })
180
+ })]
156
181
  });
157
182
  });
158
183
  CurrencyInput.displayName = 'CurrencyInput';
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_primitives","_utils","_styles","_jsxRuntime","currencyFormatter","Intl","NumberFormat","minimumFractionDigits","maximumFractionDigits","MAX_DIGITS","centsToAmountDisplay","cents","format","valueToCents","value","Math","round","CurrencyInput","exports","forwardRef","onChangeValue","currencySymbol","size","isDisabled","isInvalid","isReadOnly","isRequired","isFocused","isHovered","isFullWidth","className","style","accessibilityLabel","accessibilityHint","testID","onFocus","onBlur","returnKeyType","ref","editingCents","setEditingCents","useState","selection","setSelection","displayCents","amountDisplay","fullDisplay","isEmpty","caretIndexFor","length","pinCaret","end","start","handleFocus","e","handleBlur","undefined","handleChangeText","text","digits","replace","slice","parseInt","handleSelectionChange","current","nativeEvent","jsx","InputRoot","cn","currencyInputRootVariants","dataAttributes","slot","children","InputField","onChangeText","onSelectionChange","keyboardType","accessibilityValue","currencyInputFieldVariants","displayName"],"sourceRoot":"../../../../src","sources":["components/CurrencyInput/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_primitives","_utils","_styles","_jsxRuntime","currencyFormatter","Intl","NumberFormat","minimumFractionDigits","maximumFractionDigits","MAX_DIGITS","centsToAmountDisplay","cents","format","valueToCents","value","Math","round","CurrencyInput","exports","forwardRef","onChangeValue","currencySymbol","variant","size","isDisabled","isInvalid","isReadOnly","isRequired","isFocused","isHovered","isFullWidth","className","style","accessibilityLabel","accessibilityHint","testID","onFocus","onBlur","returnKeyType","ref","editingCents","setEditingCents","useState","selection","setSelection","isOutline","fieldTextFor","amount","displayCents","fullDisplay","fieldText","isEmpty","caretIndexFor","length","pinCaret","end","start","handleFocus","e","handleBlur","undefined","handleChangeText","text","digits","replace","slice","parseInt","handleSelectionChange","current","nativeEvent","jsxs","InputRoot","cn","currencyInputRootVariants","dataAttributes","slot","children","jsx","Text","currencyInputPrefixVariants","importantForAccessibility","InputField","onChangeText","onSelectionChange","keyboardType","accessibilityValue","currencyInputFieldVariants","displayName"],"sourceRoot":"../../../../src","sources":["components/CurrencyInput/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,10 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.currencyInputRootVariants = exports.currencyInputFieldVariants = void 0;
6
+ exports.currencyInputRootVariants = exports.currencyInputPrefixVariants = exports.currencyInputFieldVariants = void 0;
7
7
  var _utils = require("@cdx-ui/utils");
8
8
  var _constants = require("../../styles/constants");
9
- const currencyInputRootVariants = exports.currencyInputRootVariants = (0, _utils.cva)(['w-full items-center justify-center', 'data-[disabled=true]:opacity-[var(--opacity-disabled)]', _constants.DISABLED_CURSOR, 'data-[readonly=true]:cursor-default'], {
9
+ var _styles = require("../Input/styles");
10
+ const currencyInputGhostRootVariants = (0, _utils.cva)(['w-full items-center justify-center', 'data-[disabled=true]:opacity-[var(--opacity-disabled)]', _constants.DISABLED_CURSOR, 'data-[readonly=true]:cursor-default'], {
10
11
  variants: {
11
12
  size: {
12
13
  default: 'py-1',
@@ -17,7 +18,7 @@ const currencyInputRootVariants = exports.currencyInputRootVariants = (0, _utils
17
18
  size: 'default'
18
19
  }
19
20
  });
20
- const currencyInputFieldVariants = exports.currencyInputFieldVariants = (0, _utils.cva)(['w-full bg-transparent p-0 text-center', 'placeholder:text-content-tertiary', 'web:outline-none', 'data-[invalid=true]:text-content-danger'], {
21
+ const currencyInputGhostFieldVariants = (0, _utils.cva)(['w-full bg-transparent p-0 text-center', 'placeholder:text-content-tertiary', 'web:outline-none', 'data-[invalid=true]:text-content-danger'], {
21
22
  variants: {
22
23
  size: {
23
24
  default: 'heading-xl',
@@ -28,4 +29,40 @@ const currencyInputFieldVariants = exports.currencyInputFieldVariants = (0, _uti
28
29
  size: 'default'
29
30
  }
30
31
  });
32
+
33
+ // `outline` delegates to the Input shell so border, focus, invalid, disabled, and read-only
34
+ // treatments (including the native `data-[field-state=...]` focus selectors) stay in one place.
35
+ // Figma `outlined` spaces the symbol 8px from the amount, tighter than Input's 16px slot gap.
36
+ const currencyInputRootVariants = ({
37
+ variant = 'ghost',
38
+ size = 'default'
39
+ } = {}) => variant === 'outline' ? (0, _utils.cn)((0, _styles.inputRootVariants)({
40
+ variant: 'outline',
41
+ size
42
+ }), size === 'default' && 'gap-2') : currencyInputGhostRootVariants({
43
+ size
44
+ });
45
+ exports.currencyInputRootVariants = currencyInputRootVariants;
46
+ const currencyInputFieldVariants = ({
47
+ variant = 'ghost',
48
+ size = 'default'
49
+ } = {}) => variant === 'outline' ? (0, _styles.inputFieldVariants)({
50
+ size
51
+ }) : currencyInputGhostFieldVariants({
52
+ size
53
+ });
54
+
55
+ // Figma keeps the symbol at body-md on every viewport; only the amount grows to 16px on web <600px.
56
+ exports.currencyInputFieldVariants = currencyInputFieldVariants;
57
+ const currencyInputPrefixVariants = exports.currencyInputPrefixVariants = (0, _utils.cva)(['shrink-0 font-medium text-content-secondary tracking-normal'], {
58
+ variants: {
59
+ size: {
60
+ default: 'text-[0.875rem]',
61
+ small: 'text-[0.75rem]'
62
+ }
63
+ },
64
+ defaultVariants: {
65
+ size: 'default'
66
+ }
67
+ });
31
68
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_utils","require","_constants","currencyInputRootVariants","exports","cva","DISABLED_CURSOR","variants","size","default","small","defaultVariants","currencyInputFieldVariants"],"sourceRoot":"../../../../src","sources":["components/CurrencyInput/styles.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAEO,MAAME,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,GAAG,IAAAE,UAAG,EAC1C,CACE,oCAAoC,EACpC,wDAAwD,EACxDC,0BAAe,EACf,qCAAqC,CACtC,EACD;EACEC,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,OAAO,EAAE,MAAM;MACfC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,IAAI,EAAE;EACR;AACF,CACF,CAAC;AAEM,MAAMI,0BAA0B,GAAAR,OAAA,CAAAQ,0BAAA,GAAG,IAAAP,UAAG,EAC3C,CACE,uCAAuC,EACvC,mCAAmC,EACnC,kBAAkB,EAClB,yCAAyC,CAC1C,EACD;EACEE,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,OAAO,EAAE,YAAY;MACrBC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,IAAI,EAAE;EACR;AACF,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_utils","require","_constants","_styles","currencyInputGhostRootVariants","cva","DISABLED_CURSOR","variants","size","default","small","defaultVariants","currencyInputGhostFieldVariants","currencyInputRootVariants","variant","cn","inputRootVariants","exports","currencyInputFieldVariants","inputFieldVariants","currencyInputPrefixVariants"],"sourceRoot":"../../../../src","sources":["components/CurrencyInput/styles.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAiBA,MAAMG,8BAA8B,GAAG,IAAAC,UAAG,EACxC,CACE,oCAAoC,EACpC,wDAAwD,EACxDC,0BAAe,EACf,qCAAqC,CACtC,EACD;EACEC,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,OAAO,EAAE,MAAM;MACfC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,IAAI,EAAE;EACR;AACF,CACF,CAAC;AAED,MAAMI,+BAA+B,GAAG,IAAAP,UAAG,EACzC,CACE,uCAAuC,EACvC,mCAAmC,EACnC,kBAAkB,EAClB,yCAAyC,CAC1C,EACD;EACEE,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,OAAO,EAAE,YAAY;MACrBC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,IAAI,EAAE;EACR;AACF,CACF,CAAC;;AAED;AACA;AACA;AACO,MAAMK,yBAAyB,GAAGA,CAAC;EACxCC,OAAO,GAAG,OAAO;EACjBN,IAAI,GAAG;AACkB,CAAC,GAAG,CAAC,CAAC,KAC/BM,OAAO,KAAK,SAAS,GACjB,IAAAC,SAAE,EAAC,IAAAC,yBAAiB,EAAC;EAAEF,OAAO,EAAE,SAAS;EAAEN;AAAK,CAAC,CAAC,EAAEA,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,GAClFJ,8BAA8B,CAAC;EAAEI;AAAK,CAAC,CAAC;AAACS,OAAA,CAAAJ,yBAAA,GAAAA,yBAAA;AAExC,MAAMK,0BAA0B,GAAGA,CAAC;EACzCJ,OAAO,GAAG,OAAO;EACjBN,IAAI,GAAG;AACkB,CAAC,GAAG,CAAC,CAAC,KAC/BM,OAAO,KAAK,SAAS,GAAG,IAAAK,0BAAkB,EAAC;EAAEX;AAAK,CAAC,CAAC,GAAGI,+BAA+B,CAAC;EAAEJ;AAAK,CAAC,CAAC;;AAElG;AAAAS,OAAA,CAAAC,0BAAA,GAAAA,0BAAA;AACO,MAAME,2BAA2B,GAAAH,OAAA,CAAAG,2BAAA,GAAG,IAAAf,UAAG,EAC5C,CAAC,6DAA6D,CAAC,EAC/D;EACEE,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,OAAO,EAAE,iBAAiB;MAC1BC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,IAAI,EAAE;EACR;AACF,CACF,CAAC","ignoreList":[]}