jfs-components 0.1.19 → 0.1.23

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 (40) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/lib/commonjs/components/CheckboxItem/CheckboxItem.js +31 -8
  3. package/lib/commonjs/components/ContentSheet/ContentSheet.js +131 -0
  4. package/lib/commonjs/components/HeroSection/HeroSection.js +165 -0
  5. package/lib/commonjs/components/Image/Image.js +33 -7
  6. package/lib/commonjs/components/Link/Link.js +115 -0
  7. package/lib/commonjs/components/ListItem/ListItem.js +16 -1
  8. package/lib/commonjs/components/index.js +21 -0
  9. package/lib/commonjs/design-tokens/Coin Variables-variables-full.json +1 -1
  10. package/lib/commonjs/design-tokens/figma-modes.generated.js +53 -43
  11. package/lib/commonjs/icons/registry.js +1 -1
  12. package/lib/module/components/CheckboxItem/CheckboxItem.js +31 -8
  13. package/lib/module/components/ContentSheet/ContentSheet.js +126 -0
  14. package/lib/module/components/HeroSection/HeroSection.js +159 -0
  15. package/lib/module/components/Image/Image.js +34 -7
  16. package/lib/module/components/Link/Link.js +110 -0
  17. package/lib/module/components/ListItem/ListItem.js +16 -1
  18. package/lib/module/components/index.js +3 -0
  19. package/lib/module/design-tokens/Coin Variables-variables-full.json +1 -1
  20. package/lib/module/design-tokens/figma-modes.generated.js +53 -43
  21. package/lib/module/icons/registry.js +1 -1
  22. package/lib/typescript/src/components/CheckboxItem/CheckboxItem.d.ts +26 -3
  23. package/lib/typescript/src/components/ContentSheet/ContentSheet.d.ts +71 -0
  24. package/lib/typescript/src/components/HeroSection/HeroSection.d.ts +80 -0
  25. package/lib/typescript/src/components/Image/Image.d.ts +27 -2
  26. package/lib/typescript/src/components/Link/Link.d.ts +73 -0
  27. package/lib/typescript/src/components/index.d.ts +3 -0
  28. package/lib/typescript/src/design-tokens/figma-modes.generated.d.ts +8 -0
  29. package/lib/typescript/src/icons/registry.d.ts +1 -1
  30. package/package.json +1 -1
  31. package/src/components/CheckboxItem/CheckboxItem.tsx +59 -14
  32. package/src/components/ContentSheet/ContentSheet.tsx +217 -0
  33. package/src/components/HeroSection/HeroSection.tsx +231 -0
  34. package/src/components/Image/Image.tsx +55 -3
  35. package/src/components/Link/Link.tsx +159 -0
  36. package/src/components/ListItem/ListItem.tsx +15 -0
  37. package/src/components/index.ts +3 -0
  38. package/src/design-tokens/Coin Variables-variables-full.json +1 -1
  39. package/src/design-tokens/figma-modes.generated.ts +53 -43
  40. package/src/icons/registry.ts +1 -1
@@ -107,6 +107,17 @@ function resolveListItemTokens(modes: Modes): ListItemTokens {
107
107
  const paddingRight = getVariableByName('listItem/padding/right', resolvedModes) ?? 0
108
108
  const textWrapGap = (getVariableByName('listItem/text wrap', resolvedModes) ?? 0) as number
109
109
 
110
+ // Container surface — driven by the `List Item Style` collection
111
+ // (Default | Boxed | Minimal) plus `ListItem State`, `Selectable`,
112
+ // `Page type` and `Color Mode`. In the default style these all resolve to a
113
+ // transparent background / no border / 0 radius, so existing usages are
114
+ // visually unchanged; the "Boxed" style paints a filled, rounded, bordered
115
+ // surface.
116
+ const backgroundColor = getVariableByName('listItem/background/color', resolvedModes)
117
+ const borderColor = getVariableByName('listItem/border/color', resolvedModes)
118
+ const borderWidth = (getVariableByName('listItem/borderWidth', resolvedModes) ?? 0) as number
119
+ const borderRadius = (getVariableByName('listItem/radius', resolvedModes) ?? 0) as number
120
+
110
121
  const titleColor = getVariableByName('listItem/title/color', textModes)
111
122
  const titleFontSize = getVariableByName('listItem/title/fontSize', textModes)
112
123
  const titleLineHeight = getVariableByName('listItem/title/lineHeight', textModes)
@@ -129,6 +140,10 @@ function resolveListItemTokens(modes: Modes): ListItemTokens {
129
140
  paddingBottom: paddingBottom as number,
130
141
  paddingLeft: paddingLeft as number,
131
142
  paddingRight: paddingRight as number,
143
+ backgroundColor: backgroundColor as string,
144
+ borderColor: borderColor as string,
145
+ borderWidth,
146
+ borderRadius,
132
147
  },
133
148
  horizontalLayoutStyle: {
134
149
  flexDirection: 'row',
@@ -36,6 +36,7 @@ export { default as FullscreenModal, type FullscreenModalProps } from './Fullscr
36
36
  export { default as Form, type FormProps } from './Form/Form';
37
37
  export { useFormContext } from './Form/Form';
38
38
  export { default as FormField, type FormFieldProps, type FormFieldType } from './FormField/FormField';
39
+ export { default as ContentSheet, type ContentSheetProps } from './ContentSheet/ContentSheet';
39
40
  export { default as CircularProgressBar, type CircularProgressBarProps } from './CircularProgressBar/CircularProgressBar'
40
41
  export { default as CircularProgressBarDoted, type CircularProgressBarDotedProps } from './CircularProgressBarDoted/CircularProgressBarDoted'
41
42
  export { default as CircularRating, type CircularRatingProps } from './CircularRating/CircularRating'
@@ -45,6 +46,7 @@ export { default as ComparisonBar, type ComparisonBarProps, type ComparisonBarIt
45
46
  export { default as AllocationComparisonChart, type AllocationComparisonChartProps, type AllocationSegment } from './AllocationComparisonChart/AllocationComparisonChart'
46
47
  export { default as MonthlyStatusGrid, CalendarGlyph, type MonthlyStatusGridProps, type MonthlyStatusGridMonth, type MonthlyStatus, type CalendarGlyphProps } from './MonthlyStatusGrid/MonthlyStatusGrid'
47
48
  export { default as Gauge, type GaugeProps } from './Gauge/Gauge';
49
+ export { default as HeroSection, type HeroSectionProps } from './HeroSection/HeroSection';
48
50
  export { default as HoldingsCard, type HoldingsCardProps } from './HoldingsCard/HoldingsCard';
49
51
  export { default as HStack, type HStackProps } from './HStack/HStack';
50
52
  export { default as Icon, type IconProps } from './Icon/Icon';
@@ -52,6 +54,7 @@ export { default as IconButton } from './IconButton/IconButton';
52
54
  export { default as IconCapsule } from './IconCapsule/IconCapsule';
53
55
  export { default as Image, type ImageProps } from './Image/Image';
54
56
  export { default as LazyList } from './LazyList/LazyList';
57
+ export { default as Link, type LinkProps } from './Link/Link';
55
58
  export { default as LinearMeter, type LinearMeterProps } from './LinearMeter/LinearMeter';
56
59
  export { default as LinearProgress, type LinearProgressProps } from './LinearProgress/LinearProgress';
57
60
  export { default as ListGroup } from './ListGroup/ListGroup';