@fattureincloud-mobile/fic-mobile-ds 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -0
- package/README.md +31 -0
- package/lib/commonjs/components/Tag/Tag.js +44 -0
- package/lib/commonjs/components/Tag/Tag.js.map +1 -0
- package/lib/commonjs/components/Tag/index.js +14 -0
- package/lib/commonjs/components/Tag/index.js.map +1 -0
- package/lib/commonjs/components/Touchable/Touchable.js +79 -0
- package/lib/commonjs/components/Touchable/Touchable.js.map +1 -0
- package/lib/commonjs/components/Touchable/index.js +14 -0
- package/lib/commonjs/components/Touchable/index.js.map +1 -0
- package/lib/commonjs/components/base/DatePicker/DatePicker.js +257 -0
- package/lib/commonjs/components/base/DatePicker/DatePicker.js.map +1 -0
- package/lib/commonjs/components/base/DatePicker/index.js +14 -0
- package/lib/commonjs/components/base/DatePicker/index.js.map +1 -0
- package/lib/commonjs/components/base/HeaderArrows/HeaderArrows.js +77 -0
- package/lib/commonjs/components/base/HeaderArrows/HeaderArrows.js.map +1 -0
- package/lib/commonjs/components/base/HeaderArrows/index.js +14 -0
- package/lib/commonjs/components/base/HeaderArrows/index.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/FicButton.js +42 -0
- package/lib/commonjs/components/buttons/FicButton/FicButton.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/FicButton.types.js +6 -0
- package/lib/commonjs/components/buttons/FicButton/FicButton.types.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonIcon.js +104 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonIcon.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonPrimary.js +121 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonPrimary.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonSecondary.js +123 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonSecondary.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonTertiary.js +144 -0
- package/lib/commonjs/components/buttons/FicButton/FicButtonTertiary.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/constants.js +23 -0
- package/lib/commonjs/components/buttons/FicButton/constants.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/index.js +14 -0
- package/lib/commonjs/components/buttons/FicButton/index.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/themes/dark.js +291 -0
- package/lib/commonjs/components/buttons/FicButton/themes/dark.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/themes/index.js +14 -0
- package/lib/commonjs/components/buttons/FicButton/themes/index.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButton/themes/light.js +311 -0
- package/lib/commonjs/components/buttons/FicButton/themes/light.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButtonGroup/FicButtonGroup.js +54 -0
- package/lib/commonjs/components/buttons/FicButtonGroup/FicButtonGroup.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButtonGroup/FicButtonGroup.types.js +6 -0
- package/lib/commonjs/components/buttons/FicButtonGroup/FicButtonGroup.types.js.map +1 -0
- package/lib/commonjs/components/buttons/FicButtonGroup/index.js +14 -0
- package/lib/commonjs/components/buttons/FicButtonGroup/index.js.map +1 -0
- package/lib/commonjs/components/notifications/Banner/Banner.js +96 -0
- package/lib/commonjs/components/notifications/Banner/Banner.js.map +1 -0
- package/lib/commonjs/components/notifications/Banner/Banner.types.js +6 -0
- package/lib/commonjs/components/notifications/Banner/Banner.types.js.map +1 -0
- package/lib/commonjs/components/notifications/Banner/index.js +14 -0
- package/lib/commonjs/components/notifications/Banner/index.js.map +1 -0
- package/lib/commonjs/components/notifications/Banner/themes/dark.js +47 -0
- package/lib/commonjs/components/notifications/Banner/themes/dark.js.map +1 -0
- package/lib/commonjs/components/notifications/Banner/themes/index.js +21 -0
- package/lib/commonjs/components/notifications/Banner/themes/index.js.map +1 -0
- package/lib/commonjs/components/notifications/Banner/themes/light.js +47 -0
- package/lib/commonjs/components/notifications/Banner/themes/light.js.map +1 -0
- package/lib/commonjs/components/typographies/Body/Body.js +35 -0
- package/lib/commonjs/components/typographies/Body/Body.js.map +1 -0
- package/lib/commonjs/components/typographies/Body/index.js +14 -0
- package/lib/commonjs/components/typographies/Body/index.js.map +1 -0
- package/lib/commonjs/components/typographies/ButtonTitle/ButtonTitle.js +45 -0
- package/lib/commonjs/components/typographies/ButtonTitle/ButtonTitle.js.map +1 -0
- package/lib/commonjs/components/typographies/ButtonTitle/index.js +14 -0
- package/lib/commonjs/components/typographies/ButtonTitle/index.js.map +1 -0
- package/lib/commonjs/components/typographies/Callout/Callout.js +35 -0
- package/lib/commonjs/components/typographies/Callout/Callout.js.map +1 -0
- package/lib/commonjs/components/typographies/Callout/index.js +14 -0
- package/lib/commonjs/components/typographies/Callout/index.js.map +1 -0
- package/lib/commonjs/components/typographies/CaptionOne/CaptionOne.js +35 -0
- package/lib/commonjs/components/typographies/CaptionOne/CaptionOne.js.map +1 -0
- package/lib/commonjs/components/typographies/CaptionOne/index.js +14 -0
- package/lib/commonjs/components/typographies/CaptionOne/index.js.map +1 -0
- package/lib/commonjs/components/typographies/CaptionTwo/CaptionTwo.js +35 -0
- package/lib/commonjs/components/typographies/CaptionTwo/CaptionTwo.js.map +1 -0
- package/lib/commonjs/components/typographies/CaptionTwo/index.js +14 -0
- package/lib/commonjs/components/typographies/CaptionTwo/index.js.map +1 -0
- package/lib/commonjs/components/typographies/Footnote/Footnote.js +35 -0
- package/lib/commonjs/components/typographies/Footnote/Footnote.js.map +1 -0
- package/lib/commonjs/components/typographies/Footnote/index.js +14 -0
- package/lib/commonjs/components/typographies/Footnote/index.js.map +1 -0
- package/lib/commonjs/components/typographies/Headline/Headline.js +35 -0
- package/lib/commonjs/components/typographies/Headline/Headline.js.map +1 -0
- package/lib/commonjs/components/typographies/Headline/index.js +14 -0
- package/lib/commonjs/components/typographies/Headline/index.js.map +1 -0
- package/lib/commonjs/components/typographies/LargeTitle/LargeTitle.js +35 -0
- package/lib/commonjs/components/typographies/LargeTitle/LargeTitle.js.map +1 -0
- package/lib/commonjs/components/typographies/LargeTitle/index.js +14 -0
- package/lib/commonjs/components/typographies/LargeTitle/index.js.map +1 -0
- package/lib/commonjs/components/typographies/README.md +22 -0
- package/lib/commonjs/components/typographies/Subhead/Subhead.js +35 -0
- package/lib/commonjs/components/typographies/Subhead/Subhead.js.map +1 -0
- package/lib/commonjs/components/typographies/Subhead/index.js +14 -0
- package/lib/commonjs/components/typographies/Subhead/index.js.map +1 -0
- package/lib/commonjs/components/typographies/TitleOne/TitleOne.js +35 -0
- package/lib/commonjs/components/typographies/TitleOne/TitleOne.js.map +1 -0
- package/lib/commonjs/components/typographies/TitleOne/index.js +14 -0
- package/lib/commonjs/components/typographies/TitleOne/index.js.map +1 -0
- package/lib/commonjs/components/typographies/TitleThree/TitleThree.js +35 -0
- package/lib/commonjs/components/typographies/TitleThree/TitleThree.js.map +1 -0
- package/lib/commonjs/components/typographies/TitleThree/index.js +14 -0
- package/lib/commonjs/components/typographies/TitleThree/index.js.map +1 -0
- package/lib/commonjs/components/typographies/TitleTwo/TitleTwo.js +35 -0
- package/lib/commonjs/components/typographies/TitleTwo/TitleTwo.js.map +1 -0
- package/lib/commonjs/components/typographies/TitleTwo/index.js +14 -0
- package/lib/commonjs/components/typographies/TitleTwo/index.js.map +1 -0
- package/lib/commonjs/components/typographies/font.js +33 -0
- package/lib/commonjs/components/typographies/font.js.map +1 -0
- package/lib/commonjs/hooks/useTheme.js +24 -0
- package/lib/commonjs/hooks/useTheme.js.map +1 -0
- package/lib/commonjs/index.js +206 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/providers/DesignSystemProvider/DesignSystemProvider.js +30 -0
- package/lib/commonjs/providers/DesignSystemProvider/DesignSystemProvider.js.map +1 -0
- package/lib/commonjs/providers/DesignSystemProvider/index.js +14 -0
- package/lib/commonjs/providers/DesignSystemProvider/index.js.map +1 -0
- package/lib/commonjs/providers/IconProvider/IconProvider.js +35 -0
- package/lib/commonjs/providers/IconProvider/IconProvider.js.map +1 -0
- package/lib/commonjs/providers/IconProvider/index.js +20 -0
- package/lib/commonjs/providers/IconProvider/index.js.map +1 -0
- package/lib/commonjs/providers/ThemeProvider/ThemeProvider.js +20 -0
- package/lib/commonjs/providers/ThemeProvider/ThemeProvider.js.map +1 -0
- package/lib/commonjs/styles/calendarTheme.js +6 -0
- package/lib/commonjs/styles/calendarTheme.js.map +1 -0
- package/lib/commonjs/styles/colors.js +109 -0
- package/lib/commonjs/styles/colors.js.map +1 -0
- package/lib/commonjs/styles/globalStyles.js +41 -0
- package/lib/commonjs/styles/globalStyles.js.map +1 -0
- package/lib/commonjs/styles/space.js +34 -0
- package/lib/commonjs/styles/space.js.map +1 -0
- package/lib/commonjs/styles/theme.js +421 -0
- package/lib/commonjs/styles/theme.js.map +1 -0
- package/lib/commonjs/utils/locale.js +50 -0
- package/lib/commonjs/utils/locale.js.map +1 -0
- package/lib/module/components/Tag/Tag.js +37 -0
- package/lib/module/components/Tag/Tag.js.map +1 -0
- package/lib/module/components/Tag/index.js +3 -0
- package/lib/module/components/Tag/index.js.map +1 -0
- package/lib/module/components/Touchable/Touchable.js +72 -0
- package/lib/module/components/Touchable/Touchable.js.map +1 -0
- package/lib/module/components/Touchable/index.js +3 -0
- package/lib/module/components/Touchable/index.js.map +1 -0
- package/lib/module/components/base/DatePicker/DatePicker.js +251 -0
- package/lib/module/components/base/DatePicker/DatePicker.js.map +1 -0
- package/lib/module/components/base/DatePicker/index.js +3 -0
- package/lib/module/components/base/DatePicker/index.js.map +1 -0
- package/lib/module/components/base/HeaderArrows/HeaderArrows.js +70 -0
- package/lib/module/components/base/HeaderArrows/HeaderArrows.js.map +1 -0
- package/lib/module/components/base/HeaderArrows/index.js +3 -0
- package/lib/module/components/base/HeaderArrows/index.js.map +1 -0
- package/lib/module/components/buttons/FicButton/FicButton.js +36 -0
- package/lib/module/components/buttons/FicButton/FicButton.js.map +1 -0
- package/lib/module/components/buttons/FicButton/FicButton.types.js +2 -0
- package/lib/module/components/buttons/FicButton/FicButton.types.js.map +1 -0
- package/lib/module/components/buttons/FicButton/FicButtonIcon.js +96 -0
- package/lib/module/components/buttons/FicButton/FicButtonIcon.js.map +1 -0
- package/lib/module/components/buttons/FicButton/FicButtonPrimary.js +114 -0
- package/lib/module/components/buttons/FicButton/FicButtonPrimary.js.map +1 -0
- package/lib/module/components/buttons/FicButton/FicButtonSecondary.js +116 -0
- package/lib/module/components/buttons/FicButton/FicButtonSecondary.js.map +1 -0
- package/lib/module/components/buttons/FicButton/FicButtonTertiary.js +137 -0
- package/lib/module/components/buttons/FicButton/FicButtonTertiary.js.map +1 -0
- package/lib/module/components/buttons/FicButton/constants.js +17 -0
- package/lib/module/components/buttons/FicButton/constants.js.map +1 -0
- package/lib/module/components/buttons/FicButton/index.js +3 -0
- package/lib/module/components/buttons/FicButton/index.js.map +1 -0
- package/lib/module/components/buttons/FicButton/themes/dark.js +285 -0
- package/lib/module/components/buttons/FicButton/themes/dark.js.map +1 -0
- package/lib/module/components/buttons/FicButton/themes/index.js +3 -0
- package/lib/module/components/buttons/FicButton/themes/index.js.map +1 -0
- package/lib/module/components/buttons/FicButton/themes/light.js +305 -0
- package/lib/module/components/buttons/FicButton/themes/light.js.map +1 -0
- package/lib/module/components/buttons/FicButtonGroup/FicButtonGroup.js +47 -0
- package/lib/module/components/buttons/FicButtonGroup/FicButtonGroup.js.map +1 -0
- package/lib/module/components/buttons/FicButtonGroup/FicButtonGroup.types.js +2 -0
- package/lib/module/components/buttons/FicButtonGroup/FicButtonGroup.types.js.map +1 -0
- package/lib/module/components/buttons/FicButtonGroup/index.js +3 -0
- package/lib/module/components/buttons/FicButtonGroup/index.js.map +1 -0
- package/lib/module/components/notifications/Banner/Banner.js +89 -0
- package/lib/module/components/notifications/Banner/Banner.js.map +1 -0
- package/lib/module/components/notifications/Banner/Banner.types.js +2 -0
- package/lib/module/components/notifications/Banner/Banner.types.js.map +1 -0
- package/lib/module/components/notifications/Banner/index.js +3 -0
- package/lib/module/components/notifications/Banner/index.js.map +1 -0
- package/lib/module/components/notifications/Banner/themes/dark.js +41 -0
- package/lib/module/components/notifications/Banner/themes/dark.js.map +1 -0
- package/lib/module/components/notifications/Banner/themes/index.js +4 -0
- package/lib/module/components/notifications/Banner/themes/index.js.map +1 -0
- package/lib/module/components/notifications/Banner/themes/light.js +41 -0
- package/lib/module/components/notifications/Banner/themes/light.js.map +1 -0
- package/lib/module/components/typographies/Body/Body.js +29 -0
- package/lib/module/components/typographies/Body/Body.js.map +1 -0
- package/lib/module/components/typographies/Body/index.js +3 -0
- package/lib/module/components/typographies/Body/index.js.map +1 -0
- package/lib/module/components/typographies/ButtonTitle/ButtonTitle.js +39 -0
- package/lib/module/components/typographies/ButtonTitle/ButtonTitle.js.map +1 -0
- package/lib/module/components/typographies/ButtonTitle/index.js +3 -0
- package/lib/module/components/typographies/ButtonTitle/index.js.map +1 -0
- package/lib/module/components/typographies/Callout/Callout.js +29 -0
- package/lib/module/components/typographies/Callout/Callout.js.map +1 -0
- package/lib/module/components/typographies/Callout/index.js +3 -0
- package/lib/module/components/typographies/Callout/index.js.map +1 -0
- package/lib/module/components/typographies/CaptionOne/CaptionOne.js +29 -0
- package/lib/module/components/typographies/CaptionOne/CaptionOne.js.map +1 -0
- package/lib/module/components/typographies/CaptionOne/index.js +3 -0
- package/lib/module/components/typographies/CaptionOne/index.js.map +1 -0
- package/lib/module/components/typographies/CaptionTwo/CaptionTwo.js +29 -0
- package/lib/module/components/typographies/CaptionTwo/CaptionTwo.js.map +1 -0
- package/lib/module/components/typographies/CaptionTwo/index.js +3 -0
- package/lib/module/components/typographies/CaptionTwo/index.js.map +1 -0
- package/lib/module/components/typographies/Footnote/Footnote.js +29 -0
- package/lib/module/components/typographies/Footnote/Footnote.js.map +1 -0
- package/lib/module/components/typographies/Footnote/index.js +3 -0
- package/lib/module/components/typographies/Footnote/index.js.map +1 -0
- package/lib/module/components/typographies/Headline/Headline.js +29 -0
- package/lib/module/components/typographies/Headline/Headline.js.map +1 -0
- package/lib/module/components/typographies/Headline/index.js +3 -0
- package/lib/module/components/typographies/Headline/index.js.map +1 -0
- package/lib/module/components/typographies/LargeTitle/LargeTitle.js +29 -0
- package/lib/module/components/typographies/LargeTitle/LargeTitle.js.map +1 -0
- package/lib/module/components/typographies/LargeTitle/index.js +3 -0
- package/lib/module/components/typographies/LargeTitle/index.js.map +1 -0
- package/lib/module/components/typographies/README.md +22 -0
- package/lib/module/components/typographies/Subhead/Subhead.js +29 -0
- package/lib/module/components/typographies/Subhead/Subhead.js.map +1 -0
- package/lib/module/components/typographies/Subhead/index.js +3 -0
- package/lib/module/components/typographies/Subhead/index.js.map +1 -0
- package/lib/module/components/typographies/TitleOne/TitleOne.js +29 -0
- package/lib/module/components/typographies/TitleOne/TitleOne.js.map +1 -0
- package/lib/module/components/typographies/TitleOne/index.js +3 -0
- package/lib/module/components/typographies/TitleOne/index.js.map +1 -0
- package/lib/module/components/typographies/TitleThree/TitleThree.js +29 -0
- package/lib/module/components/typographies/TitleThree/TitleThree.js.map +1 -0
- package/lib/module/components/typographies/TitleThree/index.js +3 -0
- package/lib/module/components/typographies/TitleThree/index.js.map +1 -0
- package/lib/module/components/typographies/TitleTwo/TitleTwo.js +29 -0
- package/lib/module/components/typographies/TitleTwo/TitleTwo.js.map +1 -0
- package/lib/module/components/typographies/TitleTwo/index.js +3 -0
- package/lib/module/components/typographies/TitleTwo/index.js.map +1 -0
- package/lib/module/components/typographies/font.js +26 -0
- package/lib/module/components/typographies/font.js.map +1 -0
- package/lib/module/hooks/useTheme.js +16 -0
- package/lib/module/hooks/useTheme.js.map +1 -0
- package/lib/module/index.js +26 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/providers/DesignSystemProvider/DesignSystemProvider.js +22 -0
- package/lib/module/providers/DesignSystemProvider/DesignSystemProvider.js.map +1 -0
- package/lib/module/providers/DesignSystemProvider/index.js +3 -0
- package/lib/module/providers/DesignSystemProvider/index.js.map +1 -0
- package/lib/module/providers/IconProvider/IconProvider.js +27 -0
- package/lib/module/providers/IconProvider/IconProvider.js.map +1 -0
- package/lib/module/providers/IconProvider/index.js +3 -0
- package/lib/module/providers/IconProvider/index.js.map +1 -0
- package/lib/module/providers/ThemeProvider/ThemeProvider.js +13 -0
- package/lib/module/providers/ThemeProvider/ThemeProvider.js.map +1 -0
- package/lib/module/styles/calendarTheme.js +2 -0
- package/lib/module/styles/calendarTheme.js.map +1 -0
- package/lib/module/styles/colors.js +103 -0
- package/lib/module/styles/colors.js.map +1 -0
- package/lib/module/styles/globalStyles.js +35 -0
- package/lib/module/styles/globalStyles.js.map +1 -0
- package/lib/module/styles/space.js +28 -0
- package/lib/module/styles/space.js.map +1 -0
- package/lib/module/styles/theme.js +414 -0
- package/lib/module/styles/theme.js.map +1 -0
- package/lib/module/utils/locale.js +42 -0
- package/lib/module/utils/locale.js.map +1 -0
- package/lib/package.json +138 -0
- package/lib/typescript/components/Tag/Tag.d.ts +13 -0
- package/lib/typescript/components/Tag/Tag.d.ts.map +1 -0
- package/lib/typescript/components/Tag/index.d.ts +3 -0
- package/lib/typescript/components/Tag/index.d.ts.map +1 -0
- package/lib/typescript/components/Touchable/Touchable.d.ts +16 -0
- package/lib/typescript/components/Touchable/Touchable.d.ts.map +1 -0
- package/lib/typescript/components/Touchable/index.d.ts +3 -0
- package/lib/typescript/components/Touchable/index.d.ts.map +1 -0
- package/lib/typescript/components/base/DatePicker/DatePicker.d.ts +60 -0
- package/lib/typescript/components/base/DatePicker/DatePicker.d.ts.map +1 -0
- package/lib/typescript/components/base/DatePicker/index.d.ts +4 -0
- package/lib/typescript/components/base/DatePicker/index.d.ts.map +1 -0
- package/lib/typescript/components/base/HeaderArrows/HeaderArrows.d.ts +16 -0
- package/lib/typescript/components/base/HeaderArrows/HeaderArrows.d.ts.map +1 -0
- package/lib/typescript/components/base/HeaderArrows/index.d.ts +3 -0
- package/lib/typescript/components/base/HeaderArrows/index.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/FicButton.d.ts +5 -0
- package/lib/typescript/components/buttons/FicButton/FicButton.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/FicButton.types.d.ts +87 -0
- package/lib/typescript/components/buttons/FicButton/FicButton.types.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonIcon.d.ts +5 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonIcon.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonPrimary.d.ts +5 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonPrimary.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonSecondary.d.ts +5 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonSecondary.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonTertiary.d.ts +5 -0
- package/lib/typescript/components/buttons/FicButton/FicButtonTertiary.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/constants.d.ts +13 -0
- package/lib/typescript/components/buttons/FicButton/constants.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/index.d.ts +5 -0
- package/lib/typescript/components/buttons/FicButton/index.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/themes/dark.d.ts +4 -0
- package/lib/typescript/components/buttons/FicButton/themes/dark.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/themes/index.d.ts +3 -0
- package/lib/typescript/components/buttons/FicButton/themes/index.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButton/themes/light.d.ts +4 -0
- package/lib/typescript/components/buttons/FicButton/themes/light.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButtonGroup/FicButtonGroup.d.ts +5 -0
- package/lib/typescript/components/buttons/FicButtonGroup/FicButtonGroup.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButtonGroup/FicButtonGroup.types.d.ts +10 -0
- package/lib/typescript/components/buttons/FicButtonGroup/FicButtonGroup.types.d.ts.map +1 -0
- package/lib/typescript/components/buttons/FicButtonGroup/index.d.ts +3 -0
- package/lib/typescript/components/buttons/FicButtonGroup/index.d.ts.map +1 -0
- package/lib/typescript/components/notifications/Banner/Banner.d.ts +5 -0
- package/lib/typescript/components/notifications/Banner/Banner.d.ts.map +1 -0
- package/lib/typescript/components/notifications/Banner/Banner.types.d.ts +50 -0
- package/lib/typescript/components/notifications/Banner/Banner.types.d.ts.map +1 -0
- package/lib/typescript/components/notifications/Banner/index.d.ts +3 -0
- package/lib/typescript/components/notifications/Banner/index.d.ts.map +1 -0
- package/lib/typescript/components/notifications/Banner/themes/dark.d.ts +4 -0
- package/lib/typescript/components/notifications/Banner/themes/dark.d.ts.map +1 -0
- package/lib/typescript/components/notifications/Banner/themes/index.d.ts +4 -0
- package/lib/typescript/components/notifications/Banner/themes/index.d.ts.map +1 -0
- package/lib/typescript/components/notifications/Banner/themes/light.d.ts +4 -0
- package/lib/typescript/components/notifications/Banner/themes/light.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Body/Body.d.ts +12 -0
- package/lib/typescript/components/typographies/Body/Body.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Body/index.d.ts +3 -0
- package/lib/typescript/components/typographies/Body/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/ButtonTitle/ButtonTitle.d.ts +10 -0
- package/lib/typescript/components/typographies/ButtonTitle/ButtonTitle.d.ts.map +1 -0
- package/lib/typescript/components/typographies/ButtonTitle/index.d.ts +3 -0
- package/lib/typescript/components/typographies/ButtonTitle/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Callout/Callout.d.ts +12 -0
- package/lib/typescript/components/typographies/Callout/Callout.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Callout/index.d.ts +3 -0
- package/lib/typescript/components/typographies/Callout/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/CaptionOne/CaptionOne.d.ts +12 -0
- package/lib/typescript/components/typographies/CaptionOne/CaptionOne.d.ts.map +1 -0
- package/lib/typescript/components/typographies/CaptionOne/index.d.ts +3 -0
- package/lib/typescript/components/typographies/CaptionOne/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/CaptionTwo/CaptionTwo.d.ts +12 -0
- package/lib/typescript/components/typographies/CaptionTwo/CaptionTwo.d.ts.map +1 -0
- package/lib/typescript/components/typographies/CaptionTwo/index.d.ts +3 -0
- package/lib/typescript/components/typographies/CaptionTwo/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Footnote/Footnote.d.ts +12 -0
- package/lib/typescript/components/typographies/Footnote/Footnote.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Footnote/index.d.ts +3 -0
- package/lib/typescript/components/typographies/Footnote/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Headline/Headline.d.ts +12 -0
- package/lib/typescript/components/typographies/Headline/Headline.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Headline/index.d.ts +3 -0
- package/lib/typescript/components/typographies/Headline/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/LargeTitle/LargeTitle.d.ts +12 -0
- package/lib/typescript/components/typographies/LargeTitle/LargeTitle.d.ts.map +1 -0
- package/lib/typescript/components/typographies/LargeTitle/index.d.ts +3 -0
- package/lib/typescript/components/typographies/LargeTitle/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Subhead/Subhead.d.ts +12 -0
- package/lib/typescript/components/typographies/Subhead/Subhead.d.ts.map +1 -0
- package/lib/typescript/components/typographies/Subhead/index.d.ts +3 -0
- package/lib/typescript/components/typographies/Subhead/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/TitleOne/TitleOne.d.ts +12 -0
- package/lib/typescript/components/typographies/TitleOne/TitleOne.d.ts.map +1 -0
- package/lib/typescript/components/typographies/TitleOne/index.d.ts +3 -0
- package/lib/typescript/components/typographies/TitleOne/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/TitleThree/TitleThree.d.ts +12 -0
- package/lib/typescript/components/typographies/TitleThree/TitleThree.d.ts.map +1 -0
- package/lib/typescript/components/typographies/TitleThree/index.d.ts +3 -0
- package/lib/typescript/components/typographies/TitleThree/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/TitleTwo/TitleTwo.d.ts +12 -0
- package/lib/typescript/components/typographies/TitleTwo/TitleTwo.d.ts.map +1 -0
- package/lib/typescript/components/typographies/TitleTwo/index.d.ts +3 -0
- package/lib/typescript/components/typographies/TitleTwo/index.d.ts.map +1 -0
- package/lib/typescript/components/typographies/font.d.ts +9 -0
- package/lib/typescript/components/typographies/font.d.ts.map +1 -0
- package/lib/typescript/hooks/useTheme.d.ts +3 -0
- package/lib/typescript/hooks/useTheme.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +31 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/providers/DesignSystemProvider/DesignSystemProvider.d.ts +10 -0
- package/lib/typescript/providers/DesignSystemProvider/DesignSystemProvider.d.ts.map +1 -0
- package/lib/typescript/providers/DesignSystemProvider/index.d.ts +3 -0
- package/lib/typescript/providers/DesignSystemProvider/index.d.ts.map +1 -0
- package/lib/typescript/providers/IconProvider/IconProvider.d.ts +21 -0
- package/lib/typescript/providers/IconProvider/IconProvider.d.ts.map +1 -0
- package/lib/typescript/providers/IconProvider/index.d.ts +4 -0
- package/lib/typescript/providers/IconProvider/index.d.ts.map +1 -0
- package/lib/typescript/providers/ThemeProvider/ThemeProvider.d.ts +9 -0
- package/lib/typescript/providers/ThemeProvider/ThemeProvider.d.ts.map +1 -0
- package/lib/typescript/styles/calendarTheme.d.ts +24 -0
- package/lib/typescript/styles/calendarTheme.d.ts.map +1 -0
- package/lib/typescript/styles/colors.d.ts +100 -0
- package/lib/typescript/styles/colors.d.ts.map +1 -0
- package/lib/typescript/styles/globalStyles.d.ts +33 -0
- package/lib/typescript/styles/globalStyles.d.ts.map +1 -0
- package/lib/typescript/styles/space.d.ts +19 -0
- package/lib/typescript/styles/space.d.ts.map +1 -0
- package/lib/typescript/styles/theme.d.ts +183 -0
- package/lib/typescript/styles/theme.d.ts.map +1 -0
- package/lib/typescript/utils/locale.d.ts +15 -0
- package/lib/typescript/utils/locale.d.ts.map +1 -0
- package/package.json +30 -43
- package/src/components/Tag/Tag.tsx +59 -0
- package/src/components/Tag/index.ts +3 -0
- package/src/components/Touchable/Touchable.tsx +110 -0
- package/src/components/Touchable/index.ts +3 -0
- package/src/components/base/DatePicker/DatePicker.tsx +427 -0
- package/src/components/base/DatePicker/index.ts +4 -0
- package/src/components/base/HeaderArrows/HeaderArrows.tsx +93 -0
- package/src/components/base/HeaderArrows/index.ts +3 -0
- package/src/components/buttons/FicButton/FicButton.tsx +41 -0
- package/src/components/buttons/FicButton/FicButton.types.ts +114 -0
- package/src/components/buttons/FicButton/FicButtonIcon.tsx +161 -0
- package/src/components/buttons/FicButton/FicButtonPrimary.tsx +167 -0
- package/src/components/buttons/FicButton/FicButtonSecondary.tsx +168 -0
- package/src/components/buttons/FicButton/FicButtonTertiary.tsx +188 -0
- package/src/components/buttons/FicButton/constants.ts +23 -0
- package/src/components/buttons/FicButton/index.ts +5 -0
- package/src/components/buttons/FicButton/themes/dark.ts +273 -0
- package/src/components/buttons/FicButton/themes/index.ts +3 -0
- package/src/components/buttons/FicButton/themes/light.ts +293 -0
- package/src/components/buttons/FicButtonGroup/FicButtonGroup.tsx +40 -0
- package/src/components/buttons/FicButtonGroup/FicButtonGroup.types.ts +11 -0
- package/src/components/buttons/FicButtonGroup/index.ts +2 -0
- package/src/components/notifications/Banner/Banner.tsx +105 -0
- package/src/components/notifications/Banner/Banner.types.ts +69 -0
- package/src/components/notifications/Banner/index.ts +3 -0
- package/src/components/notifications/Banner/themes/dark.ts +43 -0
- package/src/components/notifications/Banner/themes/index.ts +4 -0
- package/src/components/notifications/Banner/themes/light.ts +43 -0
- package/src/components/typographies/Body/Body.tsx +38 -0
- package/src/components/typographies/Body/index.ts +3 -0
- package/src/components/typographies/ButtonTitle/ButtonTitle.tsx +51 -0
- package/src/components/typographies/ButtonTitle/index.ts +3 -0
- package/src/components/typographies/Callout/Callout.tsx +38 -0
- package/src/components/typographies/Callout/index.ts +3 -0
- package/src/components/typographies/CaptionOne/CaptionOne.tsx +38 -0
- package/src/components/typographies/CaptionOne/index.ts +4 -0
- package/src/components/typographies/CaptionTwo/CaptionTwo.tsx +38 -0
- package/src/components/typographies/CaptionTwo/index.ts +4 -0
- package/src/components/typographies/Footnote/Footnote.tsx +38 -0
- package/src/components/typographies/Footnote/index.ts +4 -0
- package/src/components/typographies/Headline/Headline.tsx +38 -0
- package/src/components/typographies/Headline/index.ts +4 -0
- package/src/components/typographies/LargeTitle/LargeTitle.tsx +38 -0
- package/src/components/typographies/LargeTitle/index.ts +3 -0
- package/src/components/typographies/README.md +22 -0
- package/src/components/typographies/Subhead/Subhead.tsx +38 -0
- package/src/components/typographies/Subhead/index.ts +4 -0
- package/src/components/typographies/TitleOne/TitleOne.tsx +38 -0
- package/src/components/typographies/TitleOne/index.ts +4 -0
- package/src/components/typographies/TitleThree/TitleThree.tsx +38 -0
- package/src/components/typographies/TitleThree/index.ts +4 -0
- package/src/components/typographies/TitleTwo/TitleTwo.tsx +38 -0
- package/src/components/typographies/TitleTwo/index.ts +4 -0
- package/src/components/typographies/font.ts +25 -0
- package/src/hooks/useTheme.ts +17 -0
- package/src/index.tsx +47 -0
- package/src/providers/DesignSystemProvider/DesignSystemProvider.tsx +31 -0
- package/src/providers/DesignSystemProvider/index.ts +3 -0
- package/src/providers/IconProvider/IconProvider.tsx +46 -0
- package/src/providers/IconProvider/index.ts +4 -0
- package/src/providers/ThemeProvider/ThemeProvider.tsx +17 -0
- package/src/styles/calendarTheme.ts +24 -0
- package/src/styles/colors.ts +119 -0
- package/src/styles/globalStyles.ts +36 -0
- package/src/styles/space.ts +27 -0
- package/src/styles/theme.ts +609 -0
- package/src/utils/locale.ts +50 -0
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import { capitalize } from 'lodash';
|
|
3
|
+
import moment from 'moment';
|
|
4
|
+
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
|
5
|
+
// @ts-ignore
|
|
6
|
+
|
|
7
|
+
import { Calendar } from 'react-native-calendars';
|
|
8
|
+
import { useTheme } from '../../../hooks/useTheme';
|
|
9
|
+
import { Icon } from '../../../providers/IconProvider';
|
|
10
|
+
import { Colors } from '../../../styles/colors';
|
|
11
|
+
import { DEFAULT_ICON_SIZE } from '../../buttons/FicButton/constants';
|
|
12
|
+
import { Body } from '../../typographies/Body';
|
|
13
|
+
import { FontWeight } from '../../typographies/font';
|
|
14
|
+
import { HeaderArrows } from '../HeaderArrows';
|
|
15
|
+
const DatePicker = props => {
|
|
16
|
+
const {
|
|
17
|
+
datePickers
|
|
18
|
+
} = useTheme();
|
|
19
|
+
const {
|
|
20
|
+
onDatePicked,
|
|
21
|
+
value,
|
|
22
|
+
startingDate,
|
|
23
|
+
endingDate,
|
|
24
|
+
minDate,
|
|
25
|
+
maxDate,
|
|
26
|
+
showSixWeeks = true,
|
|
27
|
+
hideExtraDays = false,
|
|
28
|
+
format = moment.localeData().longDateFormat('L'),
|
|
29
|
+
firstDay,
|
|
30
|
+
theme = datePickers,
|
|
31
|
+
withYearSelector = false,
|
|
32
|
+
monthIconNames,
|
|
33
|
+
yearIconNames,
|
|
34
|
+
headerIconProps
|
|
35
|
+
} = props;
|
|
36
|
+
|
|
37
|
+
// The style for selected days in period 💄
|
|
38
|
+
const periodMarkingStyle = useMemo(() => ({
|
|
39
|
+
color: theme.selectedDayBackgroundColor,
|
|
40
|
+
textColor: theme.selectedDayTextColor
|
|
41
|
+
}), [theme.selectedDayBackgroundColor, theme.selectedDayTextColor]);
|
|
42
|
+
const formattedStartingDay = startingDate && moment(startingDate, format).format('YYYY-MM-DD');
|
|
43
|
+
const formattedEndingDay = endingDate && moment(endingDate, format).format('YYYY-MM-DD');
|
|
44
|
+
const selectedDate = value && moment(value, format).isValid() ? moment(value, format).format('YYYY-MM-DD') : undefined;
|
|
45
|
+
const [currentYear, setCurrentYear] = useState(value ? moment(value, format).year() : maxDate ? moment(maxDate, format).year() : moment().year());
|
|
46
|
+
const [currentMonth, setCurrentMonth] = useState(value ? moment(value, format).month() + 1 : maxDate ? moment(maxDate, format).month() + 1 : moment().month() + 1);
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
if (value !== undefined) {
|
|
49
|
+
// Improved efficiency. No need to update the state if the value is the same.
|
|
50
|
+
const newMonthFromValue = moment(value, format).month() + 1;
|
|
51
|
+
const newYearFromValue = moment(value, format).year();
|
|
52
|
+
if (currentMonth !== newMonthFromValue) {
|
|
53
|
+
setCurrentMonth(newMonthFromValue);
|
|
54
|
+
}
|
|
55
|
+
if (currentYear !== newYearFromValue) {
|
|
56
|
+
setCurrentYear(newYearFromValue);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}, [value]);
|
|
60
|
+
const currentDate = useMemo(() => moment(`${currentYear}-${currentMonth}`, 'YYYY-M').format('YYYY-MM-DD'), [currentYear, currentMonth]);
|
|
61
|
+
|
|
62
|
+
// Creates the object with all the days between startDate and endDate styled correctly
|
|
63
|
+
const createDatePeriod = useCallback((startDate, endDate) => {
|
|
64
|
+
const dateRange = {
|
|
65
|
+
[startDate]: {
|
|
66
|
+
startingDay: true,
|
|
67
|
+
...periodMarkingStyle
|
|
68
|
+
},
|
|
69
|
+
[endDate]: {
|
|
70
|
+
endingDay: true,
|
|
71
|
+
...periodMarkingStyle
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
if (startDate && endDate) {
|
|
75
|
+
let start = moment(startDate).startOf('day').add(1, 'days');
|
|
76
|
+
const end = moment(endDate).startOf('day');
|
|
77
|
+
while (end.isAfter(start)) {
|
|
78
|
+
Object.assign(dateRange, {
|
|
79
|
+
[start.format('YYYY-MM-DD')]: periodMarkingStyle
|
|
80
|
+
});
|
|
81
|
+
start = start.add(1, 'days');
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return dateRange;
|
|
85
|
+
}, [periodMarkingStyle]);
|
|
86
|
+
const onDateSelected = useCallback(date => onDatePicked(moment(date.dateString).format(format)), [format, onDatePicked]);
|
|
87
|
+
const markingType = !!formattedStartingDay && formattedStartingDay !== selectedDate || !!formattedEndingDay && formattedEndingDay !== selectedDate ? 'period' : undefined;
|
|
88
|
+
const formattedMinDate = minDate && moment(minDate, format).format('YYYY-MM-DD');
|
|
89
|
+
const formattedMaxDate = maxDate && moment(maxDate, format).format('YYYY-MM-DD');
|
|
90
|
+
const isTodayBetweenStartingDayAndSelected = !!selectedDate && !!formattedStartingDay && moment().isBetween(moment(formattedStartingDay).startOf('day'), moment(selectedDate).endOf('day'));
|
|
91
|
+
const isTodayBetweenSelectedAndEndingDay = !!selectedDate && !!formattedEndingDay && moment().isBetween(moment(selectedDate).startOf('day'), moment(formattedEndingDay).endOf('day'));
|
|
92
|
+
const isSelectedDateToday = !!selectedDate && moment().isSame(moment(selectedDate), 'day');
|
|
93
|
+
const isTodayInRange = !!selectedDate && (isTodayBetweenStartingDayAndSelected || isTodayBetweenSelectedAndEndingDay || isSelectedDateToday);
|
|
94
|
+
const {
|
|
95
|
+
todayBackgroundColor,
|
|
96
|
+
todayTextColor,
|
|
97
|
+
arrowColor,
|
|
98
|
+
monthTextColor,
|
|
99
|
+
textMonthFontWeight,
|
|
100
|
+
...restTheme
|
|
101
|
+
} = theme;
|
|
102
|
+
const markedDates = useMemo(() => {
|
|
103
|
+
const toReturn = {};
|
|
104
|
+
|
|
105
|
+
// Filling markedDates for the calendar
|
|
106
|
+
if (!!formattedStartingDay) {
|
|
107
|
+
// If startingDay is defined, treat this calendar as a period picker for the endingDay
|
|
108
|
+
if (!!selectedDate) {
|
|
109
|
+
if (formattedStartingDay === selectedDate) {
|
|
110
|
+
toReturn[formattedStartingDay] = {
|
|
111
|
+
selected: true
|
|
112
|
+
};
|
|
113
|
+
} else {
|
|
114
|
+
// Sets all the days between the selected dates with the selected style
|
|
115
|
+
Object.assign(toReturn, createDatePeriod(formattedStartingDay, selectedDate));
|
|
116
|
+
}
|
|
117
|
+
} else {
|
|
118
|
+
toReturn[formattedStartingDay] = {
|
|
119
|
+
startingDay: true,
|
|
120
|
+
...periodMarkingStyle
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
} else if (!!formattedEndingDay) {
|
|
124
|
+
// If endingDay is defined, treat this calendar as a period picker for the startingDay
|
|
125
|
+
if (!!selectedDate) {
|
|
126
|
+
if (formattedEndingDay === selectedDate) {
|
|
127
|
+
toReturn[formattedEndingDay] = {
|
|
128
|
+
selected: true
|
|
129
|
+
};
|
|
130
|
+
} else {
|
|
131
|
+
// Sets all the days between the selected dates with the selected style
|
|
132
|
+
Object.assign(toReturn, createDatePeriod(selectedDate, formattedEndingDay));
|
|
133
|
+
}
|
|
134
|
+
} else {
|
|
135
|
+
toReturn[formattedEndingDay] = {
|
|
136
|
+
endingDay: true,
|
|
137
|
+
...periodMarkingStyle
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
} else if (!!selectedDate) {
|
|
141
|
+
// Simple picker
|
|
142
|
+
toReturn[selectedDate] = {
|
|
143
|
+
selected: true
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
// If today is not selected, we want to style the day with the todayBackgroundColor
|
|
148
|
+
if (!isTodayInRange) {
|
|
149
|
+
if (markingType === 'period') {
|
|
150
|
+
// Whether today is after the starting date or before the ending date
|
|
151
|
+
const isAfterStartingDate = !!formattedStartingDay && moment().isAfter(moment(formattedStartingDay).startOf('day'));
|
|
152
|
+
const isBeforeEndingDate = !!formattedEndingDay && moment().isBefore(moment(formattedEndingDay).endOf('day'));
|
|
153
|
+
const isSelectable = isAfterStartingDate || isBeforeEndingDate;
|
|
154
|
+
if (isSelectable) {
|
|
155
|
+
toReturn[moment().format('YYYY-MM-DD')] = {
|
|
156
|
+
startingDay: true,
|
|
157
|
+
endingDay: true,
|
|
158
|
+
color: todayBackgroundColor,
|
|
159
|
+
textColor: todayTextColor
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
} else {
|
|
163
|
+
toReturn[moment().format('YYYY-MM-DD')] = {
|
|
164
|
+
color: todayBackgroundColor,
|
|
165
|
+
textColor: todayTextColor
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
return toReturn;
|
|
170
|
+
}, [formattedStartingDay, formattedEndingDay, periodMarkingStyle, selectedDate, createDatePeriod, isTodayInRange, markingType, todayBackgroundColor, todayTextColor]);
|
|
171
|
+
const onPreviousYearPress = () => {
|
|
172
|
+
setCurrentYear(currentYear - 1);
|
|
173
|
+
};
|
|
174
|
+
const onPreviousMonthPress = () => {
|
|
175
|
+
if (currentMonth === 1) {
|
|
176
|
+
setCurrentYear(currentYear - 1);
|
|
177
|
+
setCurrentMonth(12);
|
|
178
|
+
} else {
|
|
179
|
+
setCurrentMonth(currentMonth - 1);
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
const onNextYearPress = () => {
|
|
183
|
+
setCurrentYear(currentYear + 1);
|
|
184
|
+
};
|
|
185
|
+
const onNextMonthPress = () => {
|
|
186
|
+
if (currentMonth === 12) {
|
|
187
|
+
setCurrentYear(currentYear + 1);
|
|
188
|
+
setCurrentMonth(1);
|
|
189
|
+
} else {
|
|
190
|
+
setCurrentMonth(currentMonth + 1);
|
|
191
|
+
}
|
|
192
|
+
};
|
|
193
|
+
const Arrows = ({
|
|
194
|
+
direction
|
|
195
|
+
}) => {
|
|
196
|
+
const createIconComponent = (name, calendarUnit) => ({
|
|
197
|
+
component: /*#__PURE__*/React.createElement(Icon, _extends({
|
|
198
|
+
name: name,
|
|
199
|
+
size: DEFAULT_ICON_SIZE,
|
|
200
|
+
color: arrowColor || Colors.BLUE
|
|
201
|
+
}, headerIconProps)),
|
|
202
|
+
calendarUnit
|
|
203
|
+
});
|
|
204
|
+
const _monthIconName = monthIconNames ? direction === 'left' ? monthIconNames.left : monthIconNames.right : `chevron-${direction}`;
|
|
205
|
+
const _yearIconName = yearIconNames ? direction === 'left' ? yearIconNames.left : yearIconNames.right : `chevron-double-${direction}`;
|
|
206
|
+
const monthIconComponent = createIconComponent(_monthIconName, 'month');
|
|
207
|
+
const yearIconComponent = createIconComponent(_yearIconName, 'year');
|
|
208
|
+
return /*#__PURE__*/React.createElement(HeaderArrows, {
|
|
209
|
+
withYearSelector: withYearSelector,
|
|
210
|
+
monthIconComponent: monthIconComponent,
|
|
211
|
+
yearIconComponent: yearIconComponent,
|
|
212
|
+
onPreviousMonthPress: onPreviousMonthPress,
|
|
213
|
+
onPreviousYearPress: onPreviousYearPress,
|
|
214
|
+
onNextMonthPress: onNextMonthPress,
|
|
215
|
+
onNextYearPress: onNextYearPress,
|
|
216
|
+
direction: direction
|
|
217
|
+
});
|
|
218
|
+
};
|
|
219
|
+
|
|
220
|
+
// Memoized Header
|
|
221
|
+
const Header = useMemo(() => /*#__PURE__*/React.createElement(Body, {
|
|
222
|
+
color: monthTextColor || Colors.BLUE,
|
|
223
|
+
weight: FontWeight.SEMIBOLD,
|
|
224
|
+
style: {
|
|
225
|
+
fontWeight: textMonthFontWeight
|
|
226
|
+
}
|
|
227
|
+
}, capitalize(moment(`${currentMonth}-${currentYear}`, 'M-YYYY').format('MMMM YYYY'))), [currentMonth, currentYear]);
|
|
228
|
+
return /*#__PURE__*/React.createElement(Calendar, {
|
|
229
|
+
disableArrowLeft: true,
|
|
230
|
+
disableArrowRight: true,
|
|
231
|
+
key: `${currentYear}-${currentMonth}`,
|
|
232
|
+
renderArrow: direction => /*#__PURE__*/React.createElement(Arrows, {
|
|
233
|
+
direction: direction
|
|
234
|
+
}),
|
|
235
|
+
renderHeader: () => Header,
|
|
236
|
+
onDayPress: onDateSelected,
|
|
237
|
+
current: currentDate || selectedDate || formattedStartingDay || formattedEndingDay || formattedMinDate || formattedMaxDate,
|
|
238
|
+
hideExtraDays: hideExtraDays
|
|
239
|
+
// @ts-ignore
|
|
240
|
+
,
|
|
241
|
+
showSixWeeks: showSixWeeks,
|
|
242
|
+
markingType: markingType,
|
|
243
|
+
markedDates: markedDates,
|
|
244
|
+
minDate: formattedMinDate || formattedStartingDay,
|
|
245
|
+
maxDate: formattedMaxDate || formattedEndingDay,
|
|
246
|
+
firstDay: firstDay,
|
|
247
|
+
theme: isTodayInRange ? restTheme : theme
|
|
248
|
+
});
|
|
249
|
+
};
|
|
250
|
+
export default DatePicker;
|
|
251
|
+
//# sourceMappingURL=DatePicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["capitalize","moment","React","useCallback","useEffect","useMemo","useState","Calendar","useTheme","Icon","Colors","DEFAULT_ICON_SIZE","Body","FontWeight","HeaderArrows","DatePicker","props","datePickers","onDatePicked","value","startingDate","endingDate","minDate","maxDate","showSixWeeks","hideExtraDays","format","localeData","longDateFormat","firstDay","theme","withYearSelector","monthIconNames","yearIconNames","headerIconProps","periodMarkingStyle","color","selectedDayBackgroundColor","textColor","selectedDayTextColor","formattedStartingDay","formattedEndingDay","selectedDate","isValid","undefined","currentYear","setCurrentYear","year","currentMonth","setCurrentMonth","month","newMonthFromValue","newYearFromValue","currentDate","createDatePeriod","startDate","endDate","dateRange","startingDay","endingDay","start","startOf","add","end","isAfter","Object","assign","onDateSelected","date","dateString","markingType","formattedMinDate","formattedMaxDate","isTodayBetweenStartingDayAndSelected","isBetween","endOf","isTodayBetweenSelectedAndEndingDay","isSelectedDateToday","isSame","isTodayInRange","todayBackgroundColor","todayTextColor","arrowColor","monthTextColor","textMonthFontWeight","restTheme","markedDates","toReturn","selected","isAfterStartingDate","isBeforeEndingDate","isBefore","isSelectable","onPreviousYearPress","onPreviousMonthPress","onNextYearPress","onNextMonthPress","Arrows","direction","createIconComponent","name","calendarUnit","component","createElement","_extends","size","BLUE","_monthIconName","left","right","_yearIconName","monthIconComponent","yearIconComponent","Header","weight","SEMIBOLD","style","fontWeight","disableArrowLeft","disableArrowRight","key","renderArrow","renderHeader","onDayPress","current"],"sourceRoot":"../../../../../src","sources":["components/base/DatePicker/DatePicker.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DatePicker"],"sourceRoot":"../../../../../src","sources":["components/base/DatePicker/index.ts"],"mappings":"AAAA,OAAOA,UAAU,MAA4B,cAAc;AAE3D,SAASA,UAAU","ignoreList":[]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { StyleSheet, View } from 'react-native';
|
|
3
|
+
import { Touchable } from '../../Touchable';
|
|
4
|
+
const HeaderArrows = ({
|
|
5
|
+
withYearSelector,
|
|
6
|
+
direction,
|
|
7
|
+
monthIconComponent,
|
|
8
|
+
yearIconComponent,
|
|
9
|
+
onPreviousMonthPress,
|
|
10
|
+
onPreviousYearPress,
|
|
11
|
+
onNextMonthPress,
|
|
12
|
+
onNextYearPress
|
|
13
|
+
}) => {
|
|
14
|
+
const iconSet = withYearSelector ? [monthIconComponent, yearIconComponent] : [monthIconComponent];
|
|
15
|
+
const iconsToBeRendered = direction === 'left' ? iconSet.reverse() : iconSet;
|
|
16
|
+
const actions = {
|
|
17
|
+
left: {
|
|
18
|
+
month: onPreviousMonthPress,
|
|
19
|
+
year: onPreviousYearPress
|
|
20
|
+
},
|
|
21
|
+
right: {
|
|
22
|
+
month: onNextMonthPress,
|
|
23
|
+
year: onNextYearPress
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
const handleAction = calendarUnit => {
|
|
27
|
+
var _actions$direction, _actions$direction$ca;
|
|
28
|
+
return actions === null || actions === void 0 || (_actions$direction = actions[direction]) === null || _actions$direction === void 0 || (_actions$direction$ca = _actions$direction[calendarUnit]) === null || _actions$direction$ca === void 0 ? void 0 : _actions$direction$ca.call(_actions$direction);
|
|
29
|
+
};
|
|
30
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
31
|
+
style: styles.container
|
|
32
|
+
}, iconsToBeRendered.map(({
|
|
33
|
+
calendarUnit,
|
|
34
|
+
component
|
|
35
|
+
}, idx) => /*#__PURE__*/React.createElement(Touchable, {
|
|
36
|
+
key: idx,
|
|
37
|
+
style: [styles.iconContainer, direction === 'left' && styles.iconContainerLeft, direction === 'right' && styles.iconContainerRight],
|
|
38
|
+
hitSlop: {
|
|
39
|
+
top: 8,
|
|
40
|
+
right: 8,
|
|
41
|
+
bottom: 8,
|
|
42
|
+
left: 8
|
|
43
|
+
},
|
|
44
|
+
onPress: () => handleAction(calendarUnit)
|
|
45
|
+
}, component)));
|
|
46
|
+
};
|
|
47
|
+
const styles = StyleSheet.create({
|
|
48
|
+
// For some reasons if we display custom arrows a horizontal padding of 10px is applied to the header container
|
|
49
|
+
container: {
|
|
50
|
+
alignItems: 'center',
|
|
51
|
+
flexDirection: 'row',
|
|
52
|
+
marginLeft: -10,
|
|
53
|
+
marginRight: -10
|
|
54
|
+
},
|
|
55
|
+
iconContainer: {
|
|
56
|
+
flexDirection: 'row',
|
|
57
|
+
alignItems: 'center',
|
|
58
|
+
padding: 5
|
|
59
|
+
},
|
|
60
|
+
iconContainerLeft: {
|
|
61
|
+
marginRight: 16,
|
|
62
|
+
marginLeft: 0
|
|
63
|
+
},
|
|
64
|
+
iconContainerRight: {
|
|
65
|
+
marginRight: 0,
|
|
66
|
+
marginLeft: 16
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
export default HeaderArrows;
|
|
70
|
+
//# sourceMappingURL=HeaderArrows.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","View","Touchable","HeaderArrows","withYearSelector","direction","monthIconComponent","yearIconComponent","onPreviousMonthPress","onPreviousYearPress","onNextMonthPress","onNextYearPress","iconSet","iconsToBeRendered","reverse","actions","left","month","year","right","handleAction","calendarUnit","_actions$direction","_actions$direction$ca","call","createElement","style","styles","container","map","component","idx","key","iconContainer","iconContainerLeft","iconContainerRight","hitSlop","top","bottom","onPress","create","alignItems","flexDirection","marginLeft","marginRight","padding"],"sourceRoot":"../../../../../src","sources":["components/base/HeaderArrows/HeaderArrows.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAA6B,OAAO;AAChD,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAE/C,SAASC,SAAS,QAAQ,iBAAiB;AAc3C,MAAMC,YAAmD,GAAGA,CAAC;EAC3DC,gBAAgB;EAChBC,SAAS;EACTC,kBAAkB;EAClBC,iBAAiB;EACjBC,oBAAoB;EACpBC,mBAAmB;EACnBC,gBAAgB;EAChBC;AACF,CAAC,KAAK;EACJ,MAAMC,OAAwB,GAAGR,gBAAgB,GAC7C,CAACE,kBAAkB,EAAEC,iBAAiB,CAAC,GACvC,CAACD,kBAAkB,CAAC;EAExB,MAAMO,iBAAkC,GACtCR,SAAS,KAAK,MAAM,GAAGO,OAAO,CAACE,OAAO,CAAC,CAAC,GAAGF,OAAO;EAEpD,MAAMG,OAAsE,GAC1E;IACEC,IAAI,EAAE;MACJC,KAAK,EAAET,oBAAoB;MAC3BU,IAAI,EAAET;IACR,CAAC;IACDU,KAAK,EAAE;MACLF,KAAK,EAAEP,gBAAgB;MACvBQ,IAAI,EAAEP;IACR;EACF,CAAC;EAEH,MAAMS,YAAY,GAAIC,YAA0B;IAAA,IAAAC,kBAAA,EAAAC,qBAAA;IAAA,OAC9CR,OAAO,aAAPA,OAAO,gBAAAO,kBAAA,GAAPP,OAAO,CAAGV,SAAS,CAAC,cAAAiB,kBAAA,gBAAAC,qBAAA,GAApBD,kBAAA,CAAuBD,YAAY,CAAC,cAAAE,qBAAA,uBAApCA,qBAAA,CAAAC,IAAA,CAAAF,kBAAuC,CAAC;EAAA;EAE1C,oBACEvB,KAAA,CAAA0B,aAAA,CAACxB,IAAI;IAACyB,KAAK,EAAEC,MAAM,CAACC;EAAU,GAC3Bf,iBAAiB,CAACgB,GAAG,CAAC,CAAC;IAAER,YAAY;IAAES;EAAU,CAAC,EAAEC,GAAG,kBACtDhC,KAAA,CAAA0B,aAAA,CAACvB,SAAS;IACR8B,GAAG,EAAED,GAAI;IACTL,KAAK,EAAE,CACLC,MAAM,CAACM,aAAa,EACpB5B,SAAS,KAAK,MAAM,IAAIsB,MAAM,CAACO,iBAAiB,EAChD7B,SAAS,KAAK,OAAO,IAAIsB,MAAM,CAACQ,kBAAkB,CAClD;IACFC,OAAO,EAAE;MAAEC,GAAG,EAAE,CAAC;MAAElB,KAAK,EAAE,CAAC;MAAEmB,MAAM,EAAE,CAAC;MAAEtB,IAAI,EAAE;IAAE,CAAE;IAClDuB,OAAO,EAAEA,CAAA,KAAMnB,YAAY,CAACC,YAAY;EAAE,GAEzCS,SACQ,CACZ,CACG,CAAC;AAEX,CAAC;AAED,MAAMH,MAAM,GAAG3B,UAAU,CAACwC,MAAM,CAAC;EAC/B;EACAZ,SAAS,EAAE;IACTa,UAAU,EAAE,QAAQ;IACpBC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,CAAC,EAAE;IACfC,WAAW,EAAE,CAAC;EAChB,CAAC;EACDX,aAAa,EAAE;IACbS,aAAa,EAAE,KAAK;IACpBD,UAAU,EAAE,QAAQ;IACpBI,OAAO,EAAE;EACX,CAAC;EACDX,iBAAiB,EAAE;IACjBU,WAAW,EAAE,EAAE;IACfD,UAAU,EAAE;EACd,CAAC;EACDR,kBAAkB,EAAE;IAClBS,WAAW,EAAE,CAAC;IACdD,UAAU,EAAE;EACd;AACF,CAAC,CAAC;AAEF,eAAexC,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HeaderArrows"],"sourceRoot":"../../../../../src","sources":["components/base/HeaderArrows/index.ts"],"mappings":"AAAA,OAAOA,YAAY,MAAM,gBAAgB;AAEzC,SAASA,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
// @ts-ignore TS6133
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import FicButtonIcon from './FicButtonIcon';
|
|
5
|
+
import FicButtonPrimary from './FicButtonPrimary';
|
|
6
|
+
import FicButtonSecondary from './FicButtonSecondary';
|
|
7
|
+
import FicButtonTertiary from './FicButtonTertiary';
|
|
8
|
+
const FicButton = ({
|
|
9
|
+
type = 'primary',
|
|
10
|
+
...commonProps
|
|
11
|
+
}) => {
|
|
12
|
+
const _iconPosition = commonProps.iconPosition ? commonProps.iconPosition : commonProps.iconName ? 'left' : undefined;
|
|
13
|
+
const FButton = () => {
|
|
14
|
+
switch (type) {
|
|
15
|
+
case 'icon':
|
|
16
|
+
return /*#__PURE__*/React.createElement(FicButtonIcon, _extends({
|
|
17
|
+
isPressable: true
|
|
18
|
+
}, commonProps));
|
|
19
|
+
case 'secondary':
|
|
20
|
+
return /*#__PURE__*/React.createElement(FicButtonSecondary, _extends({
|
|
21
|
+
iconPosition: _iconPosition
|
|
22
|
+
}, commonProps));
|
|
23
|
+
case 'tertiary':
|
|
24
|
+
return /*#__PURE__*/React.createElement(FicButtonTertiary, _extends({
|
|
25
|
+
iconPosition: _iconPosition
|
|
26
|
+
}, commonProps));
|
|
27
|
+
default:
|
|
28
|
+
return /*#__PURE__*/React.createElement(FicButtonPrimary, _extends({
|
|
29
|
+
iconPosition: _iconPosition
|
|
30
|
+
}, commonProps));
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
return /*#__PURE__*/React.createElement(FButton, null);
|
|
34
|
+
};
|
|
35
|
+
export default FicButton;
|
|
36
|
+
//# sourceMappingURL=FicButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","FicButtonIcon","FicButtonPrimary","FicButtonSecondary","FicButtonTertiary","FicButton","type","commonProps","_iconPosition","iconPosition","iconName","undefined","FButton","createElement","_extends","isPressable"],"sourceRoot":"../../../../../src","sources":["components/buttons/FicButton/FicButton.tsx"],"mappings":";AAAA;AACA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,OAAOC,iBAAiB,MAAM,qBAAqB;AAEnD,MAAMC,SAAmC,GAAGA,CAAC;EAC3CC,IAAI,GAAG,SAAS;EAChB,GAAGC;AACL,CAAC,KAAK;EACJ,MAAMC,aAAa,GAAGD,WAAW,CAACE,YAAY,GAC1CF,WAAW,CAACE,YAAY,GACxBF,WAAW,CAACG,QAAQ,GACpB,MAAM,GACNC,SAAS;EAEb,MAAMC,OAAO,GAAGA,CAAA,KAAM;IACpB,QAAQN,IAAI;MACV,KAAK,MAAM;QACT,oBAAON,KAAA,CAAAa,aAAA,CAACZ,aAAa,EAAAa,QAAA;UAACC,WAAW;QAAA,GAAKR,WAAW,CAAG,CAAC;MACvD,KAAK,WAAW;QACd,oBACEP,KAAA,CAAAa,aAAA,CAACV,kBAAkB,EAAAW,QAAA;UAACL,YAAY,EAAED;QAAc,GAAKD,WAAW,CAAG,CAAC;MAExE,KAAK,UAAU;QACb,oBACEP,KAAA,CAAAa,aAAA,CAACT,iBAAiB,EAAAU,QAAA;UAACL,YAAY,EAAED;QAAc,GAAKD,WAAW,CAAG,CAAC;MAEvE;QACE,oBACEP,KAAA,CAAAa,aAAA,CAACX,gBAAgB,EAAAY,QAAA;UAACL,YAAY,EAAED;QAAc,GAAKD,WAAW,CAAG,CAAC;IAExE;EACF,CAAC;EAED,oBAAOP,KAAA,CAAAa,aAAA,CAACD,OAAO,MAAE,CAAC;AACpB,CAAC;AAED,eAAeP,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["components/buttons/FicButton/FicButton.types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
// @ts-ignore TS6133
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { useCallback, useMemo, useState } from 'react';
|
|
4
|
+
import { Platform, Pressable as PressableIOS, View } from 'react-native';
|
|
5
|
+
import { TouchableHighlight } from 'react-native-gesture-handler';
|
|
6
|
+
import { useTheme } from '../../../hooks/useTheme';
|
|
7
|
+
import { Icon } from '../../../providers/IconProvider';
|
|
8
|
+
import { DEFAULT_ICON, DEFAULT_ICON_SIZE, HIT_SLOP } from './constants';
|
|
9
|
+
const FicButtonIcon = ({
|
|
10
|
+
iconName,
|
|
11
|
+
iconSize: _iconSize,
|
|
12
|
+
disabled,
|
|
13
|
+
error,
|
|
14
|
+
onPress,
|
|
15
|
+
onPressIn,
|
|
16
|
+
onPressOut,
|
|
17
|
+
containerStyle,
|
|
18
|
+
customPressedIconAreaSize,
|
|
19
|
+
colorContrastForLightTheme,
|
|
20
|
+
solid,
|
|
21
|
+
light,
|
|
22
|
+
duotone,
|
|
23
|
+
regular
|
|
24
|
+
}) => {
|
|
25
|
+
const Pressable = Platform.OS === 'ios' ? PressableIOS : TouchableHighlight;
|
|
26
|
+
const INCREMENT_PRESSED_AREA_SIZE = 16;
|
|
27
|
+
const iconSize = _iconSize ?? DEFAULT_ICON_SIZE;
|
|
28
|
+
const {
|
|
29
|
+
ficButton: theme
|
|
30
|
+
} = useTheme() || {};
|
|
31
|
+
const buttonTheme = (theme === null || theme === void 0 ? void 0 : theme['icon']) || {};
|
|
32
|
+
const themeProps = disabled ? buttonTheme.disabled : error ? buttonTheme.error : buttonTheme.default;
|
|
33
|
+
const [isPressed, setIsPressed] = useState(false);
|
|
34
|
+
const pressedAreaSize = useMemo(() => customPressedIconAreaSize ? customPressedIconAreaSize : iconSize + INCREMENT_PRESSED_AREA_SIZE, [iconSize, customPressedIconAreaSize]);
|
|
35
|
+
const pressableAreaStyle = useMemo(() => {
|
|
36
|
+
var _themeProps$pressedSt;
|
|
37
|
+
return {
|
|
38
|
+
position: 'absolute',
|
|
39
|
+
top: (pressedAreaSize - iconSize) / 2 * -1,
|
|
40
|
+
left: (pressedAreaSize - iconSize) / 2 * -1,
|
|
41
|
+
width: pressedAreaSize ?? iconSize,
|
|
42
|
+
height: pressedAreaSize ?? iconSize,
|
|
43
|
+
borderRadius: pressedAreaSize / 6,
|
|
44
|
+
...(themeProps === null || themeProps === void 0 || (_themeProps$pressedSt = themeProps.pressedStyle) === null || _themeProps$pressedSt === void 0 ? void 0 : _themeProps$pressedSt.container)
|
|
45
|
+
};
|
|
46
|
+
}, [iconSize, pressedAreaSize, themeProps]);
|
|
47
|
+
const iconStyle = useMemo(() => ({
|
|
48
|
+
textAlign: 'center',
|
|
49
|
+
lineHeight: iconSize,
|
|
50
|
+
width: iconSize,
|
|
51
|
+
height: iconSize,
|
|
52
|
+
fontSize: iconSize ? iconSize === 16 ? iconSize - 2 : iconSize - 4 : DEFAULT_ICON_SIZE
|
|
53
|
+
}), [iconSize]);
|
|
54
|
+
const iconColor = useMemo(() => {
|
|
55
|
+
return colorContrastForLightTheme && !error ? themeProps !== null && themeProps !== void 0 && themeProps.icon.colorContrastForLightTheme ? themeProps === null || themeProps === void 0 ? void 0 : themeProps.icon.colorContrastForLightTheme : themeProps === null || themeProps === void 0 ? void 0 : themeProps.icon.color : themeProps === null || themeProps === void 0 ? void 0 : themeProps.icon.color;
|
|
56
|
+
}, [colorContrastForLightTheme, error, themeProps]);
|
|
57
|
+
const handleOnPressIn = e => {
|
|
58
|
+
if (onPressIn) onPressIn(e);
|
|
59
|
+
setIsPressed(true);
|
|
60
|
+
};
|
|
61
|
+
const handleOnPressOut = e => {
|
|
62
|
+
if (onPressOut) onPressOut(e);
|
|
63
|
+
setIsPressed(false);
|
|
64
|
+
};
|
|
65
|
+
const handleOnPress = e => {
|
|
66
|
+
if (onPress) onPress(e);
|
|
67
|
+
};
|
|
68
|
+
const FicIcon = useCallback(() => /*#__PURE__*/React.createElement(Icon, {
|
|
69
|
+
name: iconName ?? DEFAULT_ICON,
|
|
70
|
+
solid: solid,
|
|
71
|
+
light: light,
|
|
72
|
+
duotone: duotone,
|
|
73
|
+
regular: regular,
|
|
74
|
+
size: iconSize,
|
|
75
|
+
color: iconColor,
|
|
76
|
+
style: iconStyle
|
|
77
|
+
}), [iconName, iconSize, colorContrastForLightTheme, error, iconStyle, themeProps, solid, light, regular, duotone]);
|
|
78
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
79
|
+
style: {
|
|
80
|
+
width: _iconSize,
|
|
81
|
+
height: _iconSize
|
|
82
|
+
}
|
|
83
|
+
}, isPressed ? /*#__PURE__*/React.createElement(View, {
|
|
84
|
+
style: [pressableAreaStyle]
|
|
85
|
+
}) : null, /*#__PURE__*/React.createElement(Pressable, {
|
|
86
|
+
style: [themeProps === null || themeProps === void 0 ? void 0 : themeProps.container, containerStyle],
|
|
87
|
+
onPress: handleOnPress,
|
|
88
|
+
onPressIn: handleOnPressIn,
|
|
89
|
+
onPressOut: handleOnPressOut,
|
|
90
|
+
hitSlop: HIT_SLOP,
|
|
91
|
+
disabled: disabled,
|
|
92
|
+
underlayColor: 'transparent'
|
|
93
|
+
}, FicIcon()));
|
|
94
|
+
};
|
|
95
|
+
export default FicButtonIcon;
|
|
96
|
+
//# sourceMappingURL=FicButtonIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useCallback","useMemo","useState","Platform","Pressable","PressableIOS","View","TouchableHighlight","useTheme","Icon","DEFAULT_ICON","DEFAULT_ICON_SIZE","HIT_SLOP","FicButtonIcon","iconName","iconSize","_iconSize","disabled","error","onPress","onPressIn","onPressOut","containerStyle","customPressedIconAreaSize","colorContrastForLightTheme","solid","light","duotone","regular","OS","INCREMENT_PRESSED_AREA_SIZE","ficButton","theme","buttonTheme","themeProps","default","isPressed","setIsPressed","pressedAreaSize","pressableAreaStyle","_themeProps$pressedSt","position","top","left","width","height","borderRadius","pressedStyle","container","iconStyle","textAlign","lineHeight","fontSize","iconColor","icon","color","handleOnPressIn","e","handleOnPressOut","handleOnPress","FicIcon","createElement","name","size","style","hitSlop","underlayColor"],"sourceRoot":"../../../../../src","sources":["components/buttons/FicButton/FicButtonIcon.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { useCallback, useMemo, useState } from 'react';
|
|
3
|
+
import { Platform, Pressable, View } from 'react-native';
|
|
4
|
+
import { TouchableHighlight } from 'react-native-gesture-handler';
|
|
5
|
+
import { useTheme } from '../../../hooks/useTheme';
|
|
6
|
+
import { Icon } from '../../../providers/IconProvider';
|
|
7
|
+
import { BORDER_RADIUS, PADDING } from '../../../styles/space';
|
|
8
|
+
import { Body } from '../../typographies/Body';
|
|
9
|
+
import { BUTTON_INTERNAL_PADDING_HORIZONTAL, DEFAULT_ICON, DEFAULT_ICON_SIZE, DEFAULT_TITLE, ICON_HORIZONTAL_MARGIN } from './constants';
|
|
10
|
+
const FicButtonPrimary = ({
|
|
11
|
+
title,
|
|
12
|
+
iconName,
|
|
13
|
+
iconSize,
|
|
14
|
+
onPress,
|
|
15
|
+
onPressIn,
|
|
16
|
+
onPressOut,
|
|
17
|
+
disabled,
|
|
18
|
+
error,
|
|
19
|
+
iconPosition,
|
|
20
|
+
fullWidth,
|
|
21
|
+
small,
|
|
22
|
+
solid,
|
|
23
|
+
regular,
|
|
24
|
+
light,
|
|
25
|
+
duotone,
|
|
26
|
+
containerStyle
|
|
27
|
+
}) => {
|
|
28
|
+
var _themeProps$pressedSt3;
|
|
29
|
+
const {
|
|
30
|
+
ficButton: theme
|
|
31
|
+
} = useTheme() || {};
|
|
32
|
+
const buttonTheme = (theme === null || theme === void 0 ? void 0 : theme['primary']) || {};
|
|
33
|
+
const themeProps = disabled ? buttonTheme.disabled : error ? buttonTheme.error : buttonTheme.default;
|
|
34
|
+
const containerStyleObj = containerStyle ?? {};
|
|
35
|
+
const [isPressed, setIsPressed] = useState(false);
|
|
36
|
+
const styleBasedOnPress = useMemo(() => {
|
|
37
|
+
var _themeProps$pressedSt;
|
|
38
|
+
return {
|
|
39
|
+
...(isPressed && !disabled ? themeProps === null || themeProps === void 0 || (_themeProps$pressedSt = themeProps.pressedStyle) === null || _themeProps$pressedSt === void 0 ? void 0 : _themeProps$pressedSt.container : themeProps === null || themeProps === void 0 ? void 0 : themeProps.container)
|
|
40
|
+
};
|
|
41
|
+
}, [disabled, themeProps, isPressed]);
|
|
42
|
+
const ficPrimaryViewStyle = useMemo(() => ({
|
|
43
|
+
paddingHorizontal: BUTTON_INTERNAL_PADDING_HORIZONTAL,
|
|
44
|
+
paddingVertical: small ? PADDING.SM : PADDING.LG,
|
|
45
|
+
width: fullWidth ? '100%' : 'auto',
|
|
46
|
+
flexDirection: 'row',
|
|
47
|
+
alignItems: 'center',
|
|
48
|
+
justifyContent: 'center'
|
|
49
|
+
}), [fullWidth, small]);
|
|
50
|
+
const bodyStyle = useMemo(() => {
|
|
51
|
+
var _themeProps$pressedSt2;
|
|
52
|
+
return {
|
|
53
|
+
marginLeft: iconPosition === 'left' ? ICON_HORIZONTAL_MARGIN : 0,
|
|
54
|
+
marginRight: iconPosition === 'right' ? ICON_HORIZONTAL_MARGIN : 0,
|
|
55
|
+
...(isPressed && !disabled ? themeProps === null || themeProps === void 0 || (_themeProps$pressedSt2 = themeProps.pressedStyle) === null || _themeProps$pressedSt2 === void 0 ? void 0 : _themeProps$pressedSt2.text : themeProps === null || themeProps === void 0 ? void 0 : themeProps.text)
|
|
56
|
+
};
|
|
57
|
+
}, [iconPosition, themeProps, disabled, isPressed]);
|
|
58
|
+
const handleOnPressIn = e => {
|
|
59
|
+
if (onPressIn) onPressIn(e);
|
|
60
|
+
setIsPressed(true);
|
|
61
|
+
};
|
|
62
|
+
const handleOnPressOut = e => {
|
|
63
|
+
if (onPressOut) onPressOut(e);
|
|
64
|
+
setIsPressed(false);
|
|
65
|
+
};
|
|
66
|
+
const handleOnPress = e => {
|
|
67
|
+
if (onPress) {
|
|
68
|
+
onPress(e);
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
const FicPrimary = useCallback(() => {
|
|
72
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
73
|
+
style: ficPrimaryViewStyle
|
|
74
|
+
}, iconPosition === 'left' ? /*#__PURE__*/React.createElement(Icon, {
|
|
75
|
+
name: iconName || DEFAULT_ICON,
|
|
76
|
+
size: iconSize ?? DEFAULT_ICON_SIZE,
|
|
77
|
+
color: themeProps === null || themeProps === void 0 ? void 0 : themeProps.icon.color,
|
|
78
|
+
solid: solid,
|
|
79
|
+
regular: regular,
|
|
80
|
+
light: light,
|
|
81
|
+
duotone: duotone
|
|
82
|
+
}) : null, /*#__PURE__*/React.createElement(Body, {
|
|
83
|
+
text: title ?? DEFAULT_TITLE,
|
|
84
|
+
style: bodyStyle
|
|
85
|
+
}), iconPosition === 'right' ? /*#__PURE__*/React.createElement(Icon, {
|
|
86
|
+
name: iconName || DEFAULT_ICON,
|
|
87
|
+
size: iconSize ?? DEFAULT_ICON_SIZE,
|
|
88
|
+
color: themeProps === null || themeProps === void 0 ? void 0 : themeProps.icon.color,
|
|
89
|
+
solid: solid,
|
|
90
|
+
regular: regular,
|
|
91
|
+
light: light,
|
|
92
|
+
duotone: duotone
|
|
93
|
+
}) : null);
|
|
94
|
+
}, [iconPosition, iconName, iconSize, bodyStyle, title, ficPrimaryViewStyle, themeProps, solid, regular, light, duotone]);
|
|
95
|
+
return Platform.OS === 'android' ? /*#__PURE__*/React.createElement(TouchableHighlight, {
|
|
96
|
+
disabled: disabled,
|
|
97
|
+
containerStyle: [containerStyleObj],
|
|
98
|
+
style: [{
|
|
99
|
+
borderRadius: BORDER_RADIUS.SM
|
|
100
|
+
}, styleBasedOnPress],
|
|
101
|
+
onPress: handleOnPress,
|
|
102
|
+
onPressIn: handleOnPressIn,
|
|
103
|
+
onPressOut: handleOnPressOut,
|
|
104
|
+
underlayColor: themeProps === null || themeProps === void 0 || (_themeProps$pressedSt3 = themeProps.pressedStyle) === null || _themeProps$pressedSt3 === void 0 ? void 0 : _themeProps$pressedSt3.container.backgroundColor
|
|
105
|
+
}, FicPrimary()) : /*#__PURE__*/React.createElement(Pressable, {
|
|
106
|
+
disabled: disabled,
|
|
107
|
+
style: [styleBasedOnPress, containerStyleObj],
|
|
108
|
+
onPress: handleOnPress,
|
|
109
|
+
onPressIn: handleOnPressIn,
|
|
110
|
+
onPressOut: handleOnPressOut
|
|
111
|
+
}, FicPrimary());
|
|
112
|
+
};
|
|
113
|
+
export default FicButtonPrimary;
|
|
114
|
+
//# sourceMappingURL=FicButtonPrimary.js.map
|