jfs-components 0.0.4 → 0.0.6
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/Containers.js +16 -7
- package/lib/commonjs/Containers.js.map +1 -1
- package/lib/commonjs/components/Accordion/Accordion.mdx +1 -0
- package/lib/commonjs/components/ActionFooter/ActionFooter.mdx +1 -0
- package/lib/commonjs/components/ActionTile/ActionTile.js +10 -1
- package/lib/commonjs/components/ActionTile/ActionTile.js.map +1 -1
- package/lib/commonjs/components/AppBar/AppBar.js +18 -2
- package/lib/commonjs/components/AppBar/AppBar.js.map +1 -1
- package/lib/commonjs/components/BottomNav/BottomNav.js +9 -1
- package/lib/commonjs/components/BottomNav/BottomNav.js.map +1 -1
- package/lib/commonjs/components/BottomNavItem/BottomNavItem.js +9 -1
- package/lib/commonjs/components/BottomNavItem/BottomNavItem.js.map +1 -1
- package/lib/commonjs/components/CtaCard/CtaCard.js +10 -2
- package/lib/commonjs/components/CtaCard/CtaCard.js.map +1 -1
- package/lib/commonjs/components/CtaCard/CtaCard.mdx +1 -2
- package/lib/commonjs/components/Disclaimer/Disclaimer.js +9 -1
- package/lib/commonjs/components/Disclaimer/Disclaimer.js.map +1 -1
- package/lib/commonjs/components/IconCapsule/IconCapsule.js +9 -1
- package/lib/commonjs/components/IconCapsule/IconCapsule.js.map +1 -1
- package/lib/commonjs/components/Introduction.mdx +0 -1
- package/lib/commonjs/components/PageTitle/PageTitle.js +10 -1
- package/lib/commonjs/components/PageTitle/PageTitle.js.map +1 -1
- package/lib/commonjs/components/UpiHandle/UpiHandle.js +9 -1
- package/lib/commonjs/components/UpiHandle/UpiHandle.js.map +1 -1
- package/lib/commonjs/design-tokens/JFSThemeProvider.js +64 -0
- package/lib/commonjs/design-tokens/JFSThemeProvider.js.map +1 -0
- package/lib/commonjs/design-tokens/figma-variables-resolver.js +9 -3
- package/lib/commonjs/design-tokens/figma-variables-resolver.js.map +2 -1
- package/lib/commonjs/design-tokens/index.js +11 -0
- package/lib/commonjs/design-tokens/index.js.map +1 -1
- package/lib/commonjs/icons/registry.js +1 -1
- package/lib/module/Containers.js +15 -7
- package/lib/module/Containers.js.map +1 -1
- package/lib/module/components/Accordion/Accordion.mdx +1 -0
- package/lib/module/components/ActionFooter/ActionFooter.mdx +1 -0
- package/lib/module/components/ActionTile/ActionTile.js +10 -1
- package/lib/module/components/ActionTile/ActionTile.js.map +1 -1
- package/lib/module/components/AppBar/AppBar.js +18 -2
- package/lib/module/components/AppBar/AppBar.js.map +1 -1
- package/lib/module/components/BottomNav/BottomNav.js +9 -1
- package/lib/module/components/BottomNav/BottomNav.js.map +1 -1
- package/lib/module/components/BottomNavItem/BottomNavItem.js +9 -1
- package/lib/module/components/BottomNavItem/BottomNavItem.js.map +1 -1
- package/lib/module/components/CtaCard/CtaCard.js +10 -2
- package/lib/module/components/CtaCard/CtaCard.js.map +1 -1
- package/lib/module/components/CtaCard/CtaCard.mdx +1 -2
- package/lib/module/components/Disclaimer/Disclaimer.js +9 -1
- package/lib/module/components/Disclaimer/Disclaimer.js.map +1 -1
- package/lib/module/components/IconCapsule/IconCapsule.js +9 -1
- package/lib/module/components/IconCapsule/IconCapsule.js.map +1 -1
- package/lib/module/components/Introduction.mdx +0 -1
- package/lib/module/components/PageTitle/PageTitle.js +10 -1
- package/lib/module/components/PageTitle/PageTitle.js.map +1 -1
- package/lib/module/components/UpiHandle/UpiHandle.js +9 -1
- package/lib/module/components/UpiHandle/UpiHandle.js.map +1 -1
- package/lib/module/design-tokens/JFSThemeProvider.js +57 -0
- package/lib/module/design-tokens/JFSThemeProvider.js.map +1 -0
- package/lib/module/design-tokens/figma-variables-resolver.js +2 -2
- package/lib/module/design-tokens/index.js +1 -0
- package/lib/module/design-tokens/index.js.map +1 -1
- package/lib/module/icons/registry.js +1 -1
- package/lib/typescript/Containers.d.ts +2 -1
- package/lib/typescript/Containers.d.ts.map +1 -1
- package/lib/typescript/components/ActionTile/ActionTile.d.ts +1 -1
- package/lib/typescript/components/ActionTile/ActionTile.d.ts.map +1 -1
- package/lib/typescript/components/AppBar/AppBar.d.ts +2 -2
- package/lib/typescript/components/AppBar/AppBar.d.ts.map +1 -1
- package/lib/typescript/components/BottomNav/BottomNav.d.ts +1 -1
- package/lib/typescript/components/BottomNav/BottomNav.d.ts.map +1 -1
- package/lib/typescript/components/BottomNavItem/BottomNavItem.d.ts +1 -1
- package/lib/typescript/components/BottomNavItem/BottomNavItem.d.ts.map +1 -1
- package/lib/typescript/components/CtaCard/CtaCard.d.ts +1 -1
- package/lib/typescript/components/CtaCard/CtaCard.d.ts.map +1 -1
- package/lib/typescript/components/Disclaimer/Disclaimer.d.ts +1 -1
- package/lib/typescript/components/Disclaimer/Disclaimer.d.ts.map +1 -1
- package/lib/typescript/components/IconCapsule/IconCapsule.d.ts +1 -1
- package/lib/typescript/components/IconCapsule/IconCapsule.d.ts.map +1 -1
- package/lib/typescript/components/PageTitle/PageTitle.d.ts +1 -1
- package/lib/typescript/components/PageTitle/PageTitle.d.ts.map +1 -1
- package/lib/typescript/components/UpiHandle/UpiHandle.d.ts +1 -1
- package/lib/typescript/components/UpiHandle/UpiHandle.d.ts.map +1 -1
- package/lib/typescript/design-tokens/JFSThemeProvider.d.ts +44 -0
- package/lib/typescript/design-tokens/JFSThemeProvider.d.ts.map +1 -0
- package/lib/typescript/design-tokens/index.d.ts +1 -0
- package/lib/typescript/design-tokens/index.d.ts.map +1 -1
- package/lib/typescript/icons/registry.d.ts +1 -1
- package/package.json +3 -7
- package/src/Containers.tsx +15 -0
- package/src/components/Accordion/Accordion.mdx +1 -0
- package/src/components/ActionFooter/ActionFooter.mdx +1 -0
- package/src/components/ActionTile/ActionTile.tsx +5 -1
- package/src/components/AppBar/AppBar.tsx +18 -11
- package/src/components/BottomNav/BottomNav.tsx +6 -3
- package/src/components/BottomNavItem/BottomNavItem.tsx +19 -16
- package/src/components/CtaCard/CtaCard.mdx +1 -2
- package/src/components/CtaCard/CtaCard.tsx +5 -2
- package/src/components/Disclaimer/Disclaimer.tsx +6 -3
- package/src/components/Divider/Divider.tsx +1 -0
- package/src/components/IconCapsule/IconCapsule.tsx +10 -7
- package/src/components/Introduction.mdx +0 -1
- package/src/components/NavArrow/NavArrow.tsx +1 -0
- package/src/components/PageTitle/PageTitle.tsx +8 -4
- package/src/components/UpiHandle/UpiHandle.tsx +4 -1
- package/src/design-tokens/JFSThemeProvider.tsx +79 -0
- package/src/design-tokens/index.ts +1 -0
- package/src/icons/registry.ts +1 -1
- package/src/Containers.ts +0 -8
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
1
|
+
import { type ViewProps } from 'react-native';
|
|
2
|
+
export declare const storyContainer: (props: ViewProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
3
|
//# sourceMappingURL=Containers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Containers.d.ts","sourceRoot":"","sources":["../../src/Containers.
|
|
1
|
+
{"version":3,"file":"Containers.d.ts","sourceRoot":"","sources":["../../src/Containers.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEhE,eAAO,MAAM,cAAc,GAAI,OAAO,SAAS,4CAE9C,CAAC"}
|
|
@@ -22,5 +22,5 @@ export type ActionTileProps = {
|
|
|
22
22
|
*
|
|
23
23
|
* @component
|
|
24
24
|
*/
|
|
25
|
-
export default function ActionTile({ label, icon, modes, style, onPress, }: ActionTileProps): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
export default function ActionTile({ label, icon, modes: propModes, style, onPress, }: ActionTileProps): import("react/jsx-runtime").JSX.Element;
|
|
26
26
|
//# sourceMappingURL=ActionTile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionTile.d.ts","sourceRoot":"","sources":["../../../../src/components/ActionTile/ActionTile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAc,KAAK,SAAS,EAAoC,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"ActionTile.d.ts","sourceRoot":"","sources":["../../../../src/components/ActionTile/ActionTile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAc,KAAK,SAAS,EAAoC,MAAM,cAAc,CAAA;AAK3F,MAAM,MAAM,eAAe,GAAG;IAC1B,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,+BAA+B;IAC/B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAC/B,KAAe,EACf,IAAI,EACJ,KAAK,EAAE,SAAc,EACrB,KAAK,EACL,OAAO,GACV,EAAE,eAAe,2CAoEjB"}
|
|
@@ -36,7 +36,7 @@ type AppBarProps = {
|
|
|
36
36
|
accessibilityLabel?: string;
|
|
37
37
|
accessibilityHint?: string;
|
|
38
38
|
} & Omit<React.ComponentProps<typeof View>, 'style' | 'accessibilityRole' | 'accessibilityLabel' | 'accessibilityHint'>;
|
|
39
|
-
declare function AppBar({ leading, middleSlot, actionsSlot, modes, onLeadingPress, style, accessibilityLabel, accessibilityHint, ...rest }: AppBarProps): import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
declare function AppBar({ leading, middleSlot, actionsSlot, modes: propModes, onLeadingPress, style, accessibilityLabel, accessibilityHint, ...rest }: AppBarProps): import("react/jsx-runtime").JSX.Element;
|
|
40
40
|
/**
|
|
41
41
|
* AppBarHome component that mirrors the Figma "AppBar.home" component.
|
|
42
42
|
*
|
|
@@ -73,7 +73,7 @@ type AppBarHomeProps = {
|
|
|
73
73
|
accessibilityLabel?: string;
|
|
74
74
|
accessibilityHint?: string;
|
|
75
75
|
} & Omit<React.ComponentProps<typeof View>, 'style' | 'accessibilityRole' | 'accessibilityLabel' | 'accessibilityHint'>;
|
|
76
|
-
declare function AppBarHome({ leading, actionsSlot, modes, onLeadingPress, leadingIconName, avatarProps, style, accessibilityLabel, accessibilityHint, ...rest }: AppBarHomeProps): import("react/jsx-runtime").JSX.Element;
|
|
76
|
+
declare function AppBarHome({ leading, actionsSlot, modes: propModes, onLeadingPress, leadingIconName, avatarProps, style, accessibilityLabel, accessibilityHint, ...rest }: AppBarHomeProps): import("react/jsx-runtime").JSX.Element;
|
|
77
77
|
export default AppBar;
|
|
78
78
|
export { AppBarHome };
|
|
79
79
|
//# sourceMappingURL=AppBar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppBar.d.ts","sourceRoot":"","sources":["../../../../src/components/AppBar/AppBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"AppBar.d.ts","sourceRoot":"","sources":["../../../../src/components/AppBar/AppBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAInE,OAAO,MAAM,MAAM,kBAAkB,CAAA;AA6CrC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,OAAO,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,mBAAmB,CAAC,CAAC;AAExH,iBAAS,MAAM,CAAC,EACd,OAAO,EACP,UAAU,EACV,WAAW,EACX,KAAK,EAAE,SAAc,EACrB,cAAc,EACd,KAAK,EACL,kBAA8B,EAC9B,iBAAiB,EACjB,GAAG,IAAI,EACR,EAAE,WAAW,2CA8Hb;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,KAAK,eAAe,GAAG;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC;IAClD,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,OAAO,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,mBAAmB,CAAC,CAAC;AAExH,iBAAS,UAAU,CAAC,EAClB,OAAO,EACP,WAAW,EACX,KAAK,EAAE,SAAc,EACrB,cAAc,EACd,eAA+B,EAC/B,WAAW,EACX,KAAK,EACL,kBAAmC,EACnC,iBAAiB,EACjB,GAAG,IAAI,EACR,EAAE,eAAe,2CA0FjB;AAED,eAAe,MAAM,CAAA;AACrB,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -41,6 +41,6 @@ type BottomNavProps = {
|
|
|
41
41
|
* @param {string} [props.accessibilityLabel] - Accessibility label for the navigation bar
|
|
42
42
|
* @param {string} [props.accessibilityHint] - Additional accessibility hint for screen readers
|
|
43
43
|
*/
|
|
44
|
-
declare function BottomNav({ items, modes, onItemPress, style, accessibilityLabel, accessibilityHint, ...rest }: BottomNavProps): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
declare function BottomNav({ items, modes: propModes, onItemPress, style, accessibilityLabel, accessibilityHint, ...rest }: BottomNavProps): import("react/jsx-runtime").JSX.Element;
|
|
45
45
|
export default BottomNav;
|
|
46
46
|
//# sourceMappingURL=BottomNav.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomNav.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomNav/BottomNav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"BottomNav.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomNav/BottomNav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAKnE,KAAK,iBAAiB,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAChD,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,OAAO,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,mBAAmB,CAAC,CAAC;AAExH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,SAAS,CAAC,EACjB,KAMC,EACD,KAAK,EAAE,SAAc,EACrB,WAAW,EACX,KAAK,EACL,kBAAwC,EACxC,iBAAiB,EACjB,GAAG,IAAI,EACR,EAAE,cAAc,2CAyEhB;AAED,eAAe,SAAS,CAAA"}
|
|
@@ -40,6 +40,6 @@ type BottomNavItemProps = SafePressableProps & {
|
|
|
40
40
|
* @param {string} [props.accessibilityHint] - Additional accessibility hint for screen readers
|
|
41
41
|
* @param {Object} [props.accessibilityState] - Additional accessibility state information
|
|
42
42
|
*/
|
|
43
|
-
declare function BottomNavItem({ iconName, label, modes, onPress, disabled, style, labelStyle, iconColor: iconColorOverride, iconSize: iconSizeOverride, accessibilityLabel, accessibilityHint, accessibilityState, webAccessibilityProps, ...rest }: BottomNavItemProps): import("react/jsx-runtime").JSX.Element;
|
|
43
|
+
declare function BottomNavItem({ iconName, label, modes: propModes, onPress, disabled, style, labelStyle, iconColor: iconColorOverride, iconSize: iconSizeOverride, accessibilityLabel, accessibilityHint, accessibilityState, webAccessibilityProps, ...rest }: BottomNavItemProps): import("react/jsx-runtime").JSX.Element;
|
|
44
44
|
export default BottomNavItem;
|
|
45
45
|
//# sourceMappingURL=BottomNavItem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomNavItem.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomNavItem/BottomNavItem.tsx"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"BottomNavItem.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomNavItem/BottomNavItem.tsx"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAA;AAIrB,OAAO,EAA0B,KAAK,kBAAkB,EAAE,KAAK,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAE5H,KAAK,kBAAkB,GAAG,kBAAkB,GAAG;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;OAEG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,iBAAS,aAAa,CAAC,EACrB,QAAoB,EACpB,KAAc,EACd,KAAK,EAAE,SAAc,EACrB,OAAO,EACP,QAAgB,EAChB,KAAK,EACL,UAAU,EACV,SAAS,EAAE,iBAAiB,EAC5B,QAAQ,EAAE,gBAAgB,EAC1B,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,GAAG,IAAI,EACR,EAAE,kBAAkB,2CAwIpB;AAED,eAAe,aAAa,CAAA"}
|
|
@@ -56,6 +56,6 @@ type CtaCardProps = {
|
|
|
56
56
|
*
|
|
57
57
|
* @component
|
|
58
58
|
*/
|
|
59
|
-
declare function CtaCard({ title, body, iconName, buttonLabel, onPressButton, modes, iconSlot, titleSlot, bodySlot, buttonSlot, style, }: CtaCardProps): import("react/jsx-runtime").JSX.Element;
|
|
59
|
+
declare function CtaCard({ title, body, iconName, buttonLabel, onPressButton, modes: propModes, iconSlot, titleSlot, bodySlot, buttonSlot, style, }: CtaCardProps): import("react/jsx-runtime").JSX.Element;
|
|
60
60
|
export default CtaCard;
|
|
61
61
|
//# sourceMappingURL=CtaCard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CtaCard.d.ts","sourceRoot":"","sources":["../../../../src/components/CtaCard/CtaCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAkB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"CtaCard.d.ts","sourceRoot":"","sources":["../../../../src/components/CtaCard/CtaCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAkB,MAAM,cAAc,CAAC;AAM1F,KAAK,YAAY,GAAG;IAChB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE7B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAChC,CAAC;AAEF;;;;GAIG;AACH,iBAAS,OAAO,CAAC,EACb,KAAiC,EACjC,IAAyC,EACzC,QAA0B,EAC1B,WAA2B,EAC3B,aAAa,EACb,KAAK,EAAE,SAAc,EACrB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,UAAU,EACV,KAAK,GACR,EAAE,YAAY,2CA4Gd;AAED,eAAe,OAAO,CAAC"}
|
|
@@ -29,6 +29,6 @@ type DisclaimerProps = {
|
|
|
29
29
|
* @param {string} [props.accessibilityLabel] - Accessibility label for screen readers. If not provided, uses disclaimer text
|
|
30
30
|
* @param {string} [props.accessibilityHint] - Additional accessibility hint for screen readers
|
|
31
31
|
*/
|
|
32
|
-
declare function Disclaimer({ disclaimer, modes, style, textStyle, accessibilityLabel, accessibilityHint, ...rest }: DisclaimerProps): import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
declare function Disclaimer({ disclaimer, modes: propModes, style, textStyle, accessibilityLabel, accessibilityHint, ...rest }: DisclaimerProps): import("react/jsx-runtime").JSX.Element;
|
|
33
33
|
export default Disclaimer;
|
|
34
34
|
//# sourceMappingURL=Disclaimer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Disclaimer.d.ts","sourceRoot":"","sources":["../../../../src/components/Disclaimer/Disclaimer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"Disclaimer.d.ts","sourceRoot":"","sources":["../../../../src/components/Disclaimer/Disclaimer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAIzF,KAAK,eAAe,GAAG;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,UAAU,CAAC,EAClB,UAAiF,EACjF,KAAK,EAAE,SAAc,EACrB,KAAK,EACL,SAAS,EACT,kBAAkB,EAClB,iBAAiB,EACjB,GAAG,IAAI,EACR,EAAE,eAAe,2CAwDjB;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -34,6 +34,6 @@ type IconCapsuleProps = {
|
|
|
34
34
|
* <IconCapsule iconName="ic_card" accessibilityLabel="Credit card icon" />
|
|
35
35
|
* ```
|
|
36
36
|
*/
|
|
37
|
-
declare function IconCapsule({ iconName, modes, accessibilityLabel, accessibilityRole, ...rest }: IconCapsuleProps): import("react/jsx-runtime").JSX.Element;
|
|
37
|
+
declare function IconCapsule({ iconName, modes: propModes, accessibilityLabel, accessibilityRole, ...rest }: IconCapsuleProps): import("react/jsx-runtime").JSX.Element;
|
|
38
38
|
export default IconCapsule;
|
|
39
39
|
//# sourceMappingURL=IconCapsule.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconCapsule.d.ts","sourceRoot":"","sources":["../../../../src/components/IconCapsule/IconCapsule.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAkC,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"IconCapsule.d.ts","sourceRoot":"","sources":["../../../../src/components/IconCapsule/IconCapsule.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAkC,MAAM,cAAc,CAAA;AAKnE,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,iBAAS,WAAW,CAAC,EACnB,QAAoB,EACpB,KAAK,EAAE,SAAc,EACrB,kBAAkB,EAClB,iBAA2B,EAC3B,GAAG,IAAI,EACR,EAAE,gBAAgB,2CA+ClB;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -24,6 +24,6 @@ type PageTitleProps = {
|
|
|
24
24
|
* @param {string} [props.accessibilityLabel] - Accessibility label for screen readers. If not provided, uses title
|
|
25
25
|
* @param {string} [props.accessibilityHint] - Additional accessibility hint for screen readers
|
|
26
26
|
*/
|
|
27
|
-
declare function PageTitle({ title, modes, style, textStyle, numberOfLines, accessibilityLabel, accessibilityHint, ...rest }: PageTitleProps): import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
declare function PageTitle({ title, modes: propModes, style, textStyle, numberOfLines, accessibilityLabel, accessibilityHint, ...rest }: PageTitleProps): import("react/jsx-runtime").JSX.Element;
|
|
28
28
|
export default PageTitle;
|
|
29
29
|
//# sourceMappingURL=PageTitle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageTitle.d.ts","sourceRoot":"","sources":["../../../../src/components/PageTitle/PageTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"PageTitle.d.ts","sourceRoot":"","sources":["../../../../src/components/PageTitle/PageTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAIzF,KAAK,cAAc,GAAG;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,CAAC;AAEtC;;;;;;;;;;;;;;GAcG;AACH,iBAAS,SAAS,CAAC,EACjB,KAAoB,EACpB,KAAK,EAAE,SAAc,EACrB,KAAK,EACL,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,GAAG,IAAI,EACR,EAAE,cAAc,2CA+DhB;AAED,eAAe,SAAS,CAAA"}
|
|
@@ -30,6 +30,6 @@ type UpiHandleProps = {
|
|
|
30
30
|
* @param {string} [props.accessibilityLabel] - Accessibility label for screen readers. If not provided, uses label
|
|
31
31
|
* @param {string} [props.accessibilityHint] - Additional accessibility hint for screen readers
|
|
32
32
|
*/
|
|
33
|
-
declare function UpiHandle({ label, modes, showIcon, iconName, onPress, disabled, accessibilityLabel, accessibilityHint, ...rest }: UpiHandleProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
declare function UpiHandle({ label, modes: propModes, showIcon, iconName, onPress, disabled, accessibilityLabel, accessibilityHint, ...rest }: UpiHandleProps): import("react/jsx-runtime").JSX.Element;
|
|
34
34
|
export default UpiHandle;
|
|
35
35
|
//# sourceMappingURL=UpiHandle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpiHandle.d.ts","sourceRoot":"","sources":["../../../../src/components/UpiHandle/UpiHandle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAa,IAAI,EAAgE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"UpiHandle.d.ts","sourceRoot":"","sources":["../../../../src/components/UpiHandle/UpiHandle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAa,IAAI,EAAgE,MAAM,cAAc,CAAA;AAS5G,KAAK,cAAc,GAAG;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,OAAO,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,mBAAmB,CAAC,CAAC;AAExH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,iBAAS,SAAS,CAAC,EACjB,KAAe,EACf,KAAK,EAAE,SAAc,EACrB,QAAe,EACf,QAA4B,EAC5B,OAAO,EACP,QAAQ,EACR,kBAAkB,EAClB,iBAAiB,EACjB,GAAG,IAAI,EACR,EAAE,cAAc,2CA0IhB;AAED,eAAe,SAAS,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Shape of the TokenContext
|
|
4
|
+
*/
|
|
5
|
+
interface TokenContextType {
|
|
6
|
+
/**
|
|
7
|
+
* Current active modes map
|
|
8
|
+
* @example { 'Color Mode': 'Dark', 'Platform': 'mobile' }
|
|
9
|
+
*/
|
|
10
|
+
modes: Record<string, any>;
|
|
11
|
+
/**
|
|
12
|
+
* Helper to resolve variable by name using the current context modes.
|
|
13
|
+
*/
|
|
14
|
+
getVariable: (name: string) => any;
|
|
15
|
+
}
|
|
16
|
+
interface JFSThemeProviderProps {
|
|
17
|
+
/**
|
|
18
|
+
* Modes to apply globally.
|
|
19
|
+
* Can be used to set 'Color Mode', 'Platform', 'Density', etc.
|
|
20
|
+
*/
|
|
21
|
+
modes?: Record<string, any>;
|
|
22
|
+
children: ReactNode;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Provider component for the JFS Design System.
|
|
26
|
+
* Wraps your application or a subtree to provide global configuration for design tokens.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* <JFSThemeProvider modes={{ 'Color Mode': 'Dark', 'Platform': 'web' }}>
|
|
30
|
+
* <App />
|
|
31
|
+
* </JFSThemeProvider>
|
|
32
|
+
*/
|
|
33
|
+
export declare const JFSThemeProvider: React.FC<JFSThemeProviderProps>;
|
|
34
|
+
/**
|
|
35
|
+
* Hook to access the current design token context.
|
|
36
|
+
*
|
|
37
|
+
* returns {
|
|
38
|
+
* modes: Record<string, any> - The current active modes
|
|
39
|
+
* getVariable: (name: string) => any - Function to resolve a token value
|
|
40
|
+
* }
|
|
41
|
+
*/
|
|
42
|
+
export declare const useTokens: () => TokenContextType;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=JFSThemeProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JFSThemeProvider.d.ts","sourceRoot":"","sources":["../../../src/design-tokens/JFSThemeProvider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAA6B,SAAS,EAAW,MAAM,OAAO,CAAC;AAG7E;;GAEG;AACH,UAAU,gBAAgB;IACtB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B;;OAEG;IACH,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,CAAC;CACtC;AAID,UAAU,qBAAqB;IAC3B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAmB5D,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,QAAO,gBAU5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/design-tokens/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/design-tokens/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Auto-generated from SVG files in src/icons/
|
|
5
5
|
* DO NOT EDIT MANUALLY - Run "npm run icons:generate" to regenerate
|
|
6
6
|
*
|
|
7
|
-
* Generated: 2026-01-
|
|
7
|
+
* Generated: 2026-01-22T12:09:47.639Z
|
|
8
8
|
*/
|
|
9
9
|
export declare const iconRegistry: Record<string, {
|
|
10
10
|
path: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jfs-components",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"description": "React Native Jio Finance Components Library",
|
|
5
5
|
"author": "sunshuaiqi@gmail.com",
|
|
6
6
|
"license": "MIT",
|
|
@@ -77,8 +77,7 @@
|
|
|
77
77
|
},
|
|
78
78
|
"peerDependencies": {
|
|
79
79
|
"react": "*",
|
|
80
|
-
"react-native": "*"
|
|
81
|
-
"styled-components": "*"
|
|
80
|
+
"react-native": "*"
|
|
82
81
|
},
|
|
83
82
|
"devDependencies": {
|
|
84
83
|
"@babel/core": "^7.28.5",
|
|
@@ -102,11 +101,9 @@
|
|
|
102
101
|
"@types/jest": "^30.0.0",
|
|
103
102
|
"@types/react": "^19.2.7",
|
|
104
103
|
"@types/react-native": "^0.73.0",
|
|
105
|
-
"@types/styled-components": "^5.1.36",
|
|
106
104
|
"@typescript-eslint/eslint-plugin": "^8.50.0",
|
|
107
105
|
"@typescript-eslint/parser": "^8.50.0",
|
|
108
106
|
"babel-loader": "^10.0.0",
|
|
109
|
-
"babel-plugin-styled-components": "^2.1.4",
|
|
110
107
|
"eslint": "^9.39.1",
|
|
111
108
|
"eslint-plugin-import": "^2.32.0",
|
|
112
109
|
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
@@ -126,7 +123,6 @@
|
|
|
126
123
|
"react-test-renderer": "19.1.1",
|
|
127
124
|
"remark-gfm": "^4.0.1",
|
|
128
125
|
"storybook": "^10.0.8",
|
|
129
|
-
"styled-components": "^6.3.8",
|
|
130
126
|
"ts-migrate": "^0.1.35",
|
|
131
127
|
"ts-node": "^10.9.2",
|
|
132
128
|
"typescript": "^5.9.3",
|
|
@@ -136,4 +132,4 @@
|
|
|
136
132
|
"jest": {
|
|
137
133
|
"preset": "react-native"
|
|
138
134
|
}
|
|
139
|
-
}
|
|
135
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { View, StyleSheet, type ViewProps } from 'react-native';
|
|
3
|
+
|
|
4
|
+
export const storyContainer = (props: ViewProps) => (
|
|
5
|
+
<View style= { styles.container } { ...props } />
|
|
6
|
+
);
|
|
7
|
+
|
|
8
|
+
const styles = StyleSheet.create({
|
|
9
|
+
container: {
|
|
10
|
+
height: '100%',
|
|
11
|
+
width: '100%',
|
|
12
|
+
alignItems: 'center',
|
|
13
|
+
justifyContent: 'center',
|
|
14
|
+
},
|
|
15
|
+
});
|
|
@@ -99,3 +99,4 @@ All tokens support mode-based theming through the `modes` prop.
|
|
|
99
99
|
|
|
100
100
|
The ActionFooter uses `accessibilityRole="toolbar"` to indicate it contains a group of action controls. Provide a meaningful `accessibilityLabel` to describe the footer's purpose to screen reader users.
|
|
101
101
|
|
|
102
|
+
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import { View, Text, type ViewStyle, type TextStyle, TouchableOpacity } from 'react-native'
|
|
3
3
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
4
|
+
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
4
5
|
import IconCapsule from '../IconCapsule/IconCapsule'
|
|
5
6
|
|
|
6
7
|
export type ActionTileProps = {
|
|
@@ -29,10 +30,13 @@ export type ActionTileProps = {
|
|
|
29
30
|
export default function ActionTile({
|
|
30
31
|
label = 'Cards',
|
|
31
32
|
icon,
|
|
32
|
-
modes = {},
|
|
33
|
+
modes: propModes = {},
|
|
33
34
|
style,
|
|
34
35
|
onPress,
|
|
35
36
|
}: ActionTileProps) {
|
|
37
|
+
const { modes: globalModes } = useTokens()
|
|
38
|
+
const modes = { ...globalModes, ...propModes }
|
|
39
|
+
|
|
36
40
|
// Resolve tokens
|
|
37
41
|
const backgroundColor = getVariableByName('actionTile/background', modes) || '#ffffff'
|
|
38
42
|
const gap = Number(getVariableByName('actionTile/gap', modes)) || 8
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { useState } from 'react'
|
|
2
2
|
import { View, type StyleProp, type ViewStyle } from 'react-native'
|
|
3
3
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
4
|
+
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
4
5
|
import IconButton from '../IconButton/IconButton'
|
|
5
6
|
import Avatar from '../Avatar/Avatar'
|
|
6
7
|
|
|
@@ -30,9 +31,9 @@ function cloneChildrenWithModes(
|
|
|
30
31
|
// Recursively process children if they exist
|
|
31
32
|
const processedChildren: React.ReactNode | undefined = hasChildren
|
|
32
33
|
? cloneChildrenWithModes(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
React.Children.toArray(childChildren),
|
|
35
|
+
modes
|
|
36
|
+
)
|
|
36
37
|
: undefined
|
|
37
38
|
|
|
38
39
|
// Clone element with modes and processed children
|
|
@@ -87,13 +88,16 @@ function AppBar({
|
|
|
87
88
|
leading,
|
|
88
89
|
middleSlot,
|
|
89
90
|
actionsSlot,
|
|
90
|
-
modes = {},
|
|
91
|
+
modes: propModes = {},
|
|
91
92
|
onLeadingPress,
|
|
92
93
|
style,
|
|
93
94
|
accessibilityLabel = "App bar",
|
|
94
95
|
accessibilityHint,
|
|
95
96
|
...rest
|
|
96
97
|
}: AppBarProps) {
|
|
98
|
+
const { modes: globalModes } = useTokens()
|
|
99
|
+
const modes = { ...globalModes, ...propModes }
|
|
100
|
+
|
|
97
101
|
const [childFocused, setChildFocused] = useState(false)
|
|
98
102
|
|
|
99
103
|
function injectFocusHandlers(node: React.ReactNode): React.ReactNode {
|
|
@@ -149,14 +153,14 @@ function AppBar({
|
|
|
149
153
|
<IconButton
|
|
150
154
|
iconName="ic_hellojio"
|
|
151
155
|
modes={modes}
|
|
152
|
-
onPress={() => {}}
|
|
156
|
+
onPress={() => { }}
|
|
153
157
|
accessibilityLabel="Hello Jio"
|
|
154
158
|
accessibilityHint="Opens Hello Jio menu"
|
|
155
159
|
/>
|
|
156
160
|
<IconButton
|
|
157
161
|
iconName="ic_more_horizontal"
|
|
158
162
|
modes={modes}
|
|
159
|
-
onPress={() => {}}
|
|
163
|
+
onPress={() => { }}
|
|
160
164
|
accessibilityLabel="More options"
|
|
161
165
|
accessibilityHint="Opens additional options menu"
|
|
162
166
|
/>
|
|
@@ -178,7 +182,7 @@ function AppBar({
|
|
|
178
182
|
: defaultLeading
|
|
179
183
|
|
|
180
184
|
return (
|
|
181
|
-
<View
|
|
185
|
+
<View
|
|
182
186
|
style={[
|
|
183
187
|
containerStyle,
|
|
184
188
|
childFocused ? { borderBottomWidth: 2, borderBottomColor: '#222' } : null,
|
|
@@ -258,7 +262,7 @@ type AppBarHomeProps = {
|
|
|
258
262
|
function AppBarHome({
|
|
259
263
|
leading,
|
|
260
264
|
actionsSlot,
|
|
261
|
-
modes = {},
|
|
265
|
+
modes: propModes = {},
|
|
262
266
|
onLeadingPress,
|
|
263
267
|
leadingIconName = 'ic_hellojio',
|
|
264
268
|
avatarProps,
|
|
@@ -267,6 +271,9 @@ function AppBarHome({
|
|
|
267
271
|
accessibilityHint,
|
|
268
272
|
...rest
|
|
269
273
|
}: AppBarHomeProps) {
|
|
274
|
+
const { modes: globalModes } = useTokens()
|
|
275
|
+
const modes = { ...globalModes, ...propModes }
|
|
276
|
+
|
|
270
277
|
// Resolve container tokens
|
|
271
278
|
const paddingHorizontal = getVariableByName('appBarHome/padding/horizontal', modes) ?? 16
|
|
272
279
|
const paddingVertical = getVariableByName('appBarHome/padding/vertical', modes) ?? 16
|
|
@@ -305,14 +312,14 @@ function AppBarHome({
|
|
|
305
312
|
<IconButton
|
|
306
313
|
iconName="ic_search"
|
|
307
314
|
modes={modes}
|
|
308
|
-
onPress={() => {}}
|
|
315
|
+
onPress={() => { }}
|
|
309
316
|
accessibilityLabel="Search"
|
|
310
317
|
accessibilityHint="Opens search screen"
|
|
311
318
|
/>
|
|
312
319
|
<IconButton
|
|
313
320
|
iconName="ic_notification"
|
|
314
321
|
modes={modes}
|
|
315
|
-
onPress={() => {}}
|
|
322
|
+
onPress={() => { }}
|
|
316
323
|
accessibilityLabel="Notifications"
|
|
317
324
|
accessibilityHint="Opens notifications"
|
|
318
325
|
/>
|
|
@@ -339,7 +346,7 @@ function AppBarHome({
|
|
|
339
346
|
)
|
|
340
347
|
|
|
341
348
|
return (
|
|
342
|
-
<View
|
|
349
|
+
<View
|
|
343
350
|
style={[containerStyle, style]}
|
|
344
351
|
accessibilityRole="header"
|
|
345
352
|
accessibilityLabel={accessibilityLabel}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import { View, type StyleProp, type ViewStyle } from 'react-native'
|
|
3
3
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
4
|
+
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
4
5
|
import BottomNavItem from '../BottomNavItem/BottomNavItem'
|
|
5
6
|
|
|
6
7
|
type BottomNavItemType = {
|
|
@@ -54,13 +55,15 @@ function BottomNav({
|
|
|
54
55
|
{ key: 'invest', label: 'Invest', iconName: 'ic_rupee_coin' },
|
|
55
56
|
{ key: 'explore', label: 'Explore', iconName: 'ic_search' },
|
|
56
57
|
],
|
|
57
|
-
modes = {},
|
|
58
|
+
modes: propModes = {},
|
|
58
59
|
onItemPress,
|
|
59
60
|
style,
|
|
60
61
|
accessibilityLabel = "Bottom navigation",
|
|
61
62
|
accessibilityHint,
|
|
62
63
|
...rest
|
|
63
64
|
}: BottomNavProps) {
|
|
65
|
+
const { modes: globalModes } = useTokens()
|
|
66
|
+
const modes = { ...globalModes, ...propModes }
|
|
64
67
|
// Resolve container styling tokens
|
|
65
68
|
const backgroundColor = getVariableByName('bottomNav/background', modes) || '#ffffff'
|
|
66
69
|
const borderColor = getVariableByName('bottomNav/border/color', modes) || '#cccfd1'
|
|
@@ -108,7 +111,7 @@ function BottomNav({
|
|
|
108
111
|
if (key === 'Enter' || key === ' ' || key === 'Spacebar') {
|
|
109
112
|
handlePress()
|
|
110
113
|
}
|
|
111
|
-
;(item as any)?.onKeyPress?.(e)
|
|
114
|
+
; (item as any)?.onKeyPress?.(e)
|
|
112
115
|
},
|
|
113
116
|
} : {})}
|
|
114
117
|
{...(item.disabled !== undefined ? { disabled: item.disabled } : {})}
|
|
@@ -121,7 +124,7 @@ function BottomNav({
|
|
|
121
124
|
}
|
|
122
125
|
|
|
123
126
|
return (
|
|
124
|
-
<View
|
|
127
|
+
<View
|
|
125
128
|
style={[containerStyle, style]}
|
|
126
129
|
accessibilityRole="tablist"
|
|
127
130
|
accessibilityLabel={accessibilityLabel}
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
type ViewStyle,
|
|
10
10
|
} from 'react-native'
|
|
11
11
|
import { getVariableByName } from '../../design-tokens/figma-variables-resolver'
|
|
12
|
+
import { useTokens } from '../../design-tokens/JFSThemeProvider'
|
|
12
13
|
import Icon from '../../icons/Icon'
|
|
13
14
|
import { usePressableWebSupport, type SafePressableProps, type WebAccessibilityProps } from '../../utils/web-platform-utils'
|
|
14
15
|
|
|
@@ -56,7 +57,7 @@ type BottomNavItemProps = SafePressableProps & {
|
|
|
56
57
|
function BottomNavItem({
|
|
57
58
|
iconName = 'ic_home',
|
|
58
59
|
label = 'Home',
|
|
59
|
-
modes = {},
|
|
60
|
+
modes: propModes = {},
|
|
60
61
|
onPress,
|
|
61
62
|
disabled = false,
|
|
62
63
|
style,
|
|
@@ -69,6 +70,8 @@ function BottomNavItem({
|
|
|
69
70
|
webAccessibilityProps,
|
|
70
71
|
...rest
|
|
71
72
|
}: BottomNavItemProps) {
|
|
73
|
+
const { modes: globalModes } = useTokens()
|
|
74
|
+
const modes = { ...globalModes, ...propModes }
|
|
72
75
|
const [isFocused, setIsFocused] = useState(false)
|
|
73
76
|
const [isHovered, setIsHovered] = useState(false)
|
|
74
77
|
const pressedStyle = { opacity: 0.7 }
|
|
@@ -119,14 +122,14 @@ function BottomNavItem({
|
|
|
119
122
|
|
|
120
123
|
const renderContent = () => (
|
|
121
124
|
<>
|
|
122
|
-
<Icon
|
|
123
|
-
name={iconName}
|
|
124
|
-
size={resolvedIconSize}
|
|
125
|
+
<Icon
|
|
126
|
+
name={iconName}
|
|
127
|
+
size={resolvedIconSize}
|
|
125
128
|
color={resolvedIconColor}
|
|
126
129
|
accessibilityElementsHidden={true}
|
|
127
130
|
importantForAccessibility="no"
|
|
128
131
|
/>
|
|
129
|
-
<Text
|
|
132
|
+
<Text
|
|
130
133
|
style={[textStyle, labelStyle]}
|
|
131
134
|
accessibilityElementsHidden={true}
|
|
132
135
|
importantForAccessibility="no"
|
|
@@ -138,14 +141,14 @@ function BottomNavItem({
|
|
|
138
141
|
|
|
139
142
|
if (!onPress) {
|
|
140
143
|
return (
|
|
141
|
-
<View
|
|
144
|
+
<View
|
|
142
145
|
style={[baseContainerStyle, style]}
|
|
143
146
|
accessibilityRole="tab"
|
|
144
147
|
accessibilityLabel={defaultAccessibilityLabel}
|
|
145
148
|
accessibilityHint={accessibilityHint}
|
|
146
|
-
accessibilityState={{
|
|
149
|
+
accessibilityState={{
|
|
147
150
|
disabled,
|
|
148
|
-
...accessibilityState
|
|
151
|
+
...accessibilityState
|
|
149
152
|
}}
|
|
150
153
|
{...rest}
|
|
151
154
|
>
|
|
@@ -159,34 +162,34 @@ function BottomNavItem({
|
|
|
159
162
|
accessibilityRole="tab"
|
|
160
163
|
accessibilityLabel={defaultAccessibilityLabel}
|
|
161
164
|
accessibilityHint={accessibilityHint}
|
|
162
|
-
accessibilityState={{
|
|
165
|
+
accessibilityState={{
|
|
163
166
|
disabled,
|
|
164
167
|
selected: accessibilityState?.selected,
|
|
165
|
-
...accessibilityState
|
|
168
|
+
...accessibilityState
|
|
166
169
|
}}
|
|
167
170
|
onPress={onPress}
|
|
168
171
|
disabled={disabled}
|
|
169
172
|
onPressIn={(e: any) => {
|
|
170
|
-
;(rest as any)?.onPressIn?.(e)
|
|
173
|
+
; (rest as any)?.onPressIn?.(e)
|
|
171
174
|
}}
|
|
172
175
|
onPressOut={(e: any) => {
|
|
173
|
-
;(rest as any)?.onPressOut?.(e)
|
|
176
|
+
; (rest as any)?.onPressOut?.(e)
|
|
174
177
|
}}
|
|
175
178
|
onFocus={(e: any) => {
|
|
176
179
|
setIsFocused(true)
|
|
177
|
-
|
|
180
|
+
; (rest as any)?.onFocus?.(e)
|
|
178
181
|
}}
|
|
179
182
|
onBlur={(e: any) => {
|
|
180
183
|
setIsFocused(false)
|
|
181
|
-
|
|
184
|
+
; (rest as any)?.onBlur?.(e)
|
|
182
185
|
}}
|
|
183
186
|
onHoverIn={(e: any) => {
|
|
184
187
|
setIsHovered(true)
|
|
185
|
-
|
|
188
|
+
; (rest as any)?.onHoverIn?.(e)
|
|
186
189
|
}}
|
|
187
190
|
onHoverOut={(e: any) => {
|
|
188
191
|
setIsHovered(false)
|
|
189
|
-
|
|
192
|
+
; (rest as any)?.onHoverOut?.(e)
|
|
190
193
|
}}
|
|
191
194
|
style={({ pressed }) =>
|
|
192
195
|
[
|
|
@@ -62,5 +62,4 @@ This component uses the following design tokens, resolved through `getVariableBy
|
|
|
62
62
|
- **`ctaCard/title/fontSize`**
|
|
63
63
|
- **`ctaCard/title/lineHeight`**
|
|
64
64
|
|
|
65
|
-
All tokens support mode-based theming through the `modes` prop.
|
|
66
|
-
|
|
65
|
+
All tokens support mode-based theming through the `modes` prop.
|