mainstack-design-system 0.0.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/.env.sample +1 -0
- package/.eslintignore +5 -0
- package/.eslintrc.json +96 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +15 -0
- package/.husky/commit-msg +4 -0
- package/.husky/pre-commit +6 -0
- package/.prettierignore +7 -0
- package/.prettierrc +9 -0
- package/.storybook/main.ts +22 -0
- package/.storybook/preview.ts +20 -0
- package/.vscode/extensions.json +10 -0
- package/README.md +139 -0
- package/commitlint.config.cjs +1 -0
- package/index.html +31 -0
- package/package.json +98 -0
- package/public/_redirects +1 -0
- package/public/manifest.json +15 -0
- package/public/robots.txt +3 -0
- package/public/vite.svg +1 -0
- package/src/app.tsx +25 -0
- package/src/assets/fonts/Degular-Medium.woff2 +0 -0
- package/src/assets/fonts/Degular-Medium_Italic.woff2 +0 -0
- package/src/assets/fonts/Degular-Semibold.woff2 +0 -0
- package/src/assets/fonts/Degular-Semibold_Italic.woff2 +0 -0
- package/src/assets/fonts/Degular_Display-Bold.woff2 +0 -0
- package/src/assets/fonts/Degular_Display-Bold_Italic.woff2 +0 -0
- package/src/assets/fonts/Degular_Display-Semibold.woff2 +0 -0
- package/src/assets/fonts/Degular_Display-Semibold_Italic.woff2 +0 -0
- package/src/assets/fonts/Sohne-Buch.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Buch.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-BuchKursiv.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Dreiviertelfett.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-DreiviertelfettKursiv.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Extrafett.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Fett.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Halbfett.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-HalbfettKursiv.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Kra/302/246/303/252ftig.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Kra/302/246/303/252ftigKursiv.otf +0 -0
- package/src/assets/fonts/So/302/246/303/252hne-Leicht.otf +0 -0
- package/src/assets/fonts/soehne-buch-kursiv.woff2 +0 -0
- package/src/assets/fonts/soehne-buch.woff2 +0 -0
- package/src/assets/fonts/soehne-dreiviertelfett-kursiv.woff2 +0 -0
- package/src/assets/fonts/soehne-dreiviertelfett.woff2 +0 -0
- package/src/assets/fonts/soehne-extrafett.woff2 +0 -0
- package/src/assets/fonts/soehne-fett.woff2 +0 -0
- package/src/assets/fonts/soehne-halbfett-kursiv.woff2 +0 -0
- package/src/assets/fonts/soehne-halbfett.woff2 +0 -0
- package/src/assets/fonts/soehne-kraftig-kursiv.woff2 +0 -0
- package/src/assets/fonts/soehne-kraftig.woff2 +0 -0
- package/src/assets/fonts/soehne-leicht.woff2 +0 -0
- package/src/assets/styles/index.css +486 -0
- package/src/assets/svgs/check_circle.svg +8 -0
- package/src/assets/svgs/close-circle.svg +3 -0
- package/src/assets/svgs/error_message_icon.svg +8 -0
- package/src/assets/svgs/personal_profile_avatar.svg +13 -0
- package/src/assets/svgs/search-normal.svg +4 -0
- package/src/assets/svgs/store_avatar.svg +13 -0
- package/src/assets/svgs/viewIcon.svg +8 -0
- package/src/assets/svgs/viewOffIcon.svg +3 -0
- package/src/assets/themes/baseThemes.ts +40 -0
- package/src/components/Accordion/index.tsx +111 -0
- package/src/components/Avatars/index.tsx +111 -0
- package/src/components/Button/IconButton.tsx +119 -0
- package/src/components/Button/index.tsx +173 -0
- package/src/components/InputFields/Input.tsx +177 -0
- package/src/components/InputFields/MarkdownEditor.tsx +246 -0
- package/src/components/InputFields/SearchInput.tsx +80 -0
- package/src/components/InputFields/SelectInput/CountrySelect.tsx +142 -0
- package/src/components/InputFields/SelectInput/PhoneNumberInput.tsx +89 -0
- package/src/components/InputFields/SelectInput/SelectInput.tsx +395 -0
- package/src/components/InputFields/SelectInput/index.ts +9 -0
- package/src/components/InputFields/TextArea.tsx +150 -0
- package/src/components/InputFields/UsernameInput.tsx +145 -0
- package/src/components/Tiles/index.tsx +95 -0
- package/src/components/Typography/Display.tsx +84 -0
- package/src/components/Typography/Heading.tsx +136 -0
- package/src/components/Typography/Paragraph.tsx +105 -0
- package/src/components/Typography/Subtitle.tsx +148 -0
- package/src/components/Uploader/FileUploader.tsx +132 -0
- package/src/components/Uploader/ImageUploader.tsx +311 -0
- package/src/components/controls/Chip.tsx +78 -0
- package/src/components/controls/DoubleTab.tsx +80 -0
- package/src/components/controls/Pagination.tsx +164 -0
- package/src/components/controls/RadioButton.tsx +135 -0
- package/src/components/controls/RectangleCheckButton.tsx +106 -0
- package/src/components/controls/RoundCheckButton.tsx +106 -0
- package/src/components/controls/Stepper.tsx +84 -0
- package/src/components/controls/TabMenu.tsx +114 -0
- package/src/components/controls/ToggleButton.tsx +123 -0
- package/src/components/notifications/Banner.tsx +175 -0
- package/src/components/notifications/ClickTooltip.tsx +108 -0
- package/src/components/notifications/HoverTooltip.tsx +34 -0
- package/src/components/notifications/Snackbar.tsx +138 -0
- package/src/components/styleGuide/Colors.tsx +176 -0
- package/src/hooks/useImageUpload.ts +78 -0
- package/src/icons/AccountBalanceIcon.tsx +35 -0
- package/src/icons/AccountBalanceWalletFilledIcon.tsx +35 -0
- package/src/icons/AccountBalanceWalletIcon.tsx +35 -0
- package/src/icons/AccountCircleFilledIcon.tsx +35 -0
- package/src/icons/AccountCircleIcon.tsx +35 -0
- package/src/icons/AddAPhotoIcon.tsx +35 -0
- package/src/icons/AddBusinessFilledIcon.tsx +35 -0
- package/src/icons/AddBusinessIcon.tsx +35 -0
- package/src/icons/AddCircleFilledIcon.tsx +35 -0
- package/src/icons/AddCircleIcon.tsx +35 -0
- package/src/icons/AddIcon.tsx +35 -0
- package/src/icons/AddPhotoAlternateIcon.tsx +35 -0
- package/src/icons/AddShoppingCartIcon.tsx +35 -0
- package/src/icons/AddToSocialsIcon.tsx +48 -0
- package/src/icons/AddsClickIcon.tsx +35 -0
- package/src/icons/AdminPanelSettingsIcon.tsx +35 -0
- package/src/icons/AirplaneModeActiveIcon.tsx +35 -0
- package/src/icons/AlarmIcon.tsx +35 -0
- package/src/icons/AllInboxIcon.tsx +35 -0
- package/src/icons/AnimationIcon.tsx +35 -0
- package/src/icons/AppsFilledIcon.tsx +35 -0
- package/src/icons/AppsIcon.tsx +35 -0
- package/src/icons/ArchiveIcon.tsx +35 -0
- package/src/icons/ArrowBackIcon.tsx +35 -0
- package/src/icons/ArrowCircleDownFilledIcon.tsx +35 -0
- package/src/icons/ArrowCircleUpFilledIcon.tsx +35 -0
- package/src/icons/ArrowDropDownIcon.tsx +32 -0
- package/src/icons/ArrowDropUpIcon.tsx +37 -0
- package/src/icons/ArrowForwardIcon.tsx +35 -0
- package/src/icons/ArtTrackIcon.tsx +35 -0
- package/src/icons/ArticleFilledIcon.tsx +35 -0
- package/src/icons/ArticleIcon.tsx +35 -0
- package/src/icons/AttachMoneyIcon.tsx +35 -0
- package/src/icons/AttachmentIcon.tsx +35 -0
- package/src/icons/AudioFileFilledIcon.tsx +35 -0
- package/src/icons/AutoAwesomeMosaicFilledIcon.tsx +35 -0
- package/src/icons/AutoAwesomeMosaicIcon.tsx +35 -0
- package/src/icons/AutoFixFilledIcon.tsx +35 -0
- package/src/icons/AutoFixIcon.tsx +35 -0
- package/src/icons/AutoGraphIcon.tsx +35 -0
- package/src/icons/AwardStarFilledIcon.tsx +35 -0
- package/src/icons/AwardStarIcon.tsx +35 -0
- package/src/icons/BarChartFilledIcon.tsx +35 -0
- package/src/icons/BlockIcon.tsx +35 -0
- package/src/icons/BoltFilledIcon.tsx +35 -0
- package/src/icons/BoltIcon.tsx +35 -0
- package/src/icons/BookOnlineIcon.tsx +35 -0
- package/src/icons/BugReportIcon.tsx +35 -0
- package/src/icons/BusinessCenterFilledIcon.tsx +35 -0
- package/src/icons/BusinessCenterIcon.tsx +35 -0
- package/src/icons/CalendarMonthFilledIcon.tsx +35 -0
- package/src/icons/CalendarMonthIcon.tsx +35 -0
- package/src/icons/CalendarTodayIcon.tsx +35 -0
- package/src/icons/CallMadeIcon.tsx +35 -0
- package/src/icons/CallMissedIcon.tsx +35 -0
- package/src/icons/CallMissedOutgoingIcon.tsx +35 -0
- package/src/icons/CallRecievedIcon.tsx +35 -0
- package/src/icons/CampaignFilledIcon.tsx +22 -0
- package/src/icons/CampaignIcon.tsx +35 -0
- package/src/icons/CancelFilledIcon.tsx +22 -0
- package/src/icons/CancelIcon.tsx +22 -0
- package/src/icons/CaptivePortalIcon.tsx +35 -0
- package/src/icons/CardLayoutIcon.tsx +22 -0
- package/src/icons/CasesFilledIcon.tsx +35 -0
- package/src/icons/CasesIcon.tsx +35 -0
- package/src/icons/CategoryIcon.tsx +35 -0
- package/src/icons/ChairIcon.tsx +35 -0
- package/src/icons/ChangeCircleIcon.tsx +35 -0
- package/src/icons/ChatBubbleFilledIcon.tsx +35 -0
- package/src/icons/ChatBubbleIcon.tsx +35 -0
- package/src/icons/ChatFilledIcon.tsx +35 -0
- package/src/icons/ChatIcon.tsx +35 -0
- package/src/icons/CheckCircleFilledIcon.tsx +35 -0
- package/src/icons/CheckCircleIcon.tsx +35 -0
- package/src/icons/CheckIcon.tsx +35 -0
- package/src/icons/ChevronLeftIcon.tsx +43 -0
- package/src/icons/ChevronRightIcon.tsx +43 -0
- package/src/icons/CloseIcon.tsx +35 -0
- package/src/icons/CloudUploadIcon.tsx +35 -0
- package/src/icons/CodeIcon.tsx +35 -0
- package/src/icons/CoffeeIcon.tsx +35 -0
- package/src/icons/CollectionsBookmarkIcon.tsx +35 -0
- package/src/icons/ColorPickerIcon.tsx +22 -0
- package/src/icons/CommentCircleAltChatMessageIcon.tsx +24 -0
- package/src/icons/ConfirmationNumberIcon.tsx +35 -0
- package/src/icons/ContactMailFilledIcon.tsx +35 -0
- package/src/icons/ContactMailIcon.tsx +35 -0
- package/src/icons/ContactPageIcon.tsx +22 -0
- package/src/icons/ContactPhoneFilledIcon.tsx +35 -0
- package/src/icons/ContactPhoneIcon.tsx +35 -0
- package/src/icons/ContactsIcon.tsx +22 -0
- package/src/icons/ContentCopyIcon.tsx +35 -0
- package/src/icons/CopyIcon.tsx +35 -0
- package/src/icons/CreditCardFilledIcon.tsx +35 -0
- package/src/icons/CreditCardIcon.tsx +35 -0
- package/src/icons/DarkModeIcon.tsx +35 -0
- package/src/icons/DashboardFilledIcon.tsx +35 -0
- package/src/icons/DashboardIcon.tsx +35 -0
- package/src/icons/DatabaseFilledIcon.tsx +35 -0
- package/src/icons/DeleteIcon.tsx +35 -0
- package/src/icons/DescriptionIcon.tsx +35 -0
- package/src/icons/DesktopMacIcon.tsx +35 -0
- package/src/icons/DevicesIcon.tsx +35 -0
- package/src/icons/DiamondFilledIcon.tsx +35 -0
- package/src/icons/DiamondIcon.tsx +35 -0
- package/src/icons/DigitalProductsIcon.tsx +58 -0
- package/src/icons/DiscountIcon.tsx +24 -0
- package/src/icons/Diversity1Icon.tsx +22 -0
- package/src/icons/Diversity2Icon.tsx +22 -0
- package/src/icons/Diversity3Icon.tsx +22 -0
- package/src/icons/DnsIcon.tsx +35 -0
- package/src/icons/DoNotDisturbOnFilledIcon.tsx +35 -0
- package/src/icons/DoNotDisturbOnIcon.tsx +35 -0
- package/src/icons/DomainAddIcon.tsx +35 -0
- package/src/icons/DomainIcon.tsx +35 -0
- package/src/icons/DomainVerificationIcon.tsx +35 -0
- package/src/icons/DownloadIcon.tsx +35 -0
- package/src/icons/DraftsIcon.tsx +35 -0
- package/src/icons/DragHandleIcon.tsx +35 -0
- package/src/icons/DragIndicatorIcon.tsx +35 -0
- package/src/icons/EditFilledIcon.tsx +35 -0
- package/src/icons/EditIcon.tsx +35 -0
- package/src/icons/EmojiEventsFilledIcon.tsx +35 -0
- package/src/icons/EmojiEventsIcon.tsx +35 -0
- package/src/icons/EmojiFoodBeverageIcon.tsx +35 -0
- package/src/icons/EmojiIcon.tsx +35 -0
- package/src/icons/EmptyIcon.tsx +22 -0
- package/src/icons/ErrorFilledIcon.tsx +35 -0
- package/src/icons/ErrorIcon.tsx +35 -0
- package/src/icons/EventFilledIcon.tsx +35 -0
- package/src/icons/EventIcon.tsx +35 -0
- package/src/icons/EventTicketIcon.tsx +54 -0
- package/src/icons/ExpandLessIcon.tsx +40 -0
- package/src/icons/ExpandMoreIcon.tsx +35 -0
- package/src/icons/FastActionPricingIcon.tsx +58 -0
- package/src/icons/FeedFilledIcon.tsx +35 -0
- package/src/icons/FeedIcon.tsx +35 -0
- package/src/icons/FilePresentIcon.tsx +35 -0
- package/src/icons/FilterListIcon.tsx +35 -0
- package/src/icons/FitbitArrowDownIcon.tsx +35 -0
- package/src/icons/FitbitArrowUpwardIcon.tsx +35 -0
- package/src/icons/FlagIcon.tsx +35 -0
- package/src/icons/FormatAlignCenterIcon.tsx +35 -0
- package/src/icons/FormatAlignJustifyIcon.tsx +35 -0
- package/src/icons/FormatAlignLeftIcon.tsx +35 -0
- package/src/icons/FormatAlignRightIcon.tsx +35 -0
- package/src/icons/FormatBoldIcon.tsx +35 -0
- package/src/icons/FormatItalicIcon.tsx +35 -0
- package/src/icons/FormatListBulletedIcon.tsx +35 -0
- package/src/icons/FormatListNumberedIcon.tsx +35 -0
- package/src/icons/FormatSizeIcon.tsx +35 -0
- package/src/icons/FormatUnderlineIcon.tsx +35 -0
- package/src/icons/ForumIcon.tsx +35 -0
- package/src/icons/ForwardToInboxIcon.tsx +35 -0
- package/src/icons/GalleryThumbnailIcon.tsx +35 -0
- package/src/icons/GppBadFilledIcon.tsx +35 -0
- package/src/icons/GppBadIcon.tsx +35 -0
- package/src/icons/GppMaybeFilledIcon.tsx +35 -0
- package/src/icons/GppMaybeIcon.tsx +35 -0
- package/src/icons/GridViewIcon.tsx +35 -0
- package/src/icons/GroupFilledIcon.tsx +35 -0
- package/src/icons/GroupIcon.tsx +35 -0
- package/src/icons/HeadphonesIcon.tsx +35 -0
- package/src/icons/HomeFilledIcon.tsx +35 -0
- package/src/icons/HomeIcon.tsx +35 -0
- package/src/icons/HomePinIcon.tsx +35 -0
- package/src/icons/HourGlassEmptyIcon.tsx +35 -0
- package/src/icons/HubIcon.tsx +22 -0
- package/src/icons/InfoFilledIcon.tsx +35 -0
- package/src/icons/InfoGradientFilledIcon.tsx +49 -0
- package/src/icons/InfoIcon.tsx +35 -0
- package/src/icons/InsertChartFilledIcon.tsx +35 -0
- package/src/icons/InsertChartIcon.tsx +35 -0
- package/src/icons/InventoryIcon.tsx +22 -0
- package/src/icons/IosShareIcon.tsx +35 -0
- package/src/icons/KeyboardBackspaceIcon.tsx +35 -0
- package/src/icons/LanguageIcon.tsx +35 -0
- package/src/icons/LibraryMusicIcon.tsx +35 -0
- package/src/icons/LinkIcon.tsx +35 -0
- package/src/icons/LinkOffIcon.tsx +35 -0
- package/src/icons/LocalActivityIcon.tsx +35 -0
- package/src/icons/LocalFloristFilledIcon.tsx +35 -0
- package/src/icons/LocalFloristIcon.tsx +35 -0
- package/src/icons/LocationOnIcon.tsx +35 -0
- package/src/icons/LockIcon.tsx +35 -0
- package/src/icons/LoginIcon.tsx +35 -0
- package/src/icons/LogoutIcon.tsx +43 -0
- package/src/icons/MailIcon.tsx +35 -0
- package/src/icons/MarkUnreadChatIcon.tsx +35 -0
- package/src/icons/MasterClassIcon.tsx +74 -0
- package/src/icons/MediaLinkFilledIcon.tsx +35 -0
- package/src/icons/MediaLinkIcon.tsx +35 -0
- package/src/icons/MenuIcon.tsx +35 -0
- package/src/icons/MenuOpenIcon.tsx +35 -0
- package/src/icons/MilitaryTechFilledIcon.tsx +35 -0
- package/src/icons/MilitaryTechIcon.tsx +35 -0
- package/src/icons/MonitoringIcon.tsx +35 -0
- package/src/icons/MoreHorizontalIcon.tsx +35 -0
- package/src/icons/MoreHorizontalSmallIcon.tsx +35 -0
- package/src/icons/MoreVerticalIcon.tsx +35 -0
- package/src/icons/NotificationsFilledIcon.tsx +40 -0
- package/src/icons/NotificationsIcon.tsx +35 -0
- package/src/icons/OpenInNewIcon.tsx +35 -0
- package/src/icons/OthersIcon.tsx +58 -0
- package/src/icons/PageViewIcon.tsx +35 -0
- package/src/icons/PaidIcon.tsx +35 -0
- package/src/icons/PaletteFilledIcon.tsx +35 -0
- package/src/icons/PaletteIcon.tsx +35 -0
- package/src/icons/PauseIcon.tsx +22 -0
- package/src/icons/PayInTranchesIcon.tsx +29 -0
- package/src/icons/PaymentsFilledIcon.tsx +35 -0
- package/src/icons/PaymentsIcon.tsx +35 -0
- package/src/icons/PendingActionsIcon.tsx +35 -0
- package/src/icons/PermMediaIcon.tsx +35 -0
- package/src/icons/PersonAddIcon.tsx +35 -0
- package/src/icons/PersonIcon.tsx +35 -0
- package/src/icons/PhotoCameraIcon.tsx +35 -0
- package/src/icons/PhotoFilledIcon.tsx +35 -0
- package/src/icons/PhotoIcon.tsx +35 -0
- package/src/icons/PhotoLibraryFilledIcon.tsx +35 -0
- package/src/icons/PhotoLibraryIcon.tsx +35 -0
- package/src/icons/PictureAsPdfFilledIcon.tsx +35 -0
- package/src/icons/PictureAsPdfIcon.tsx +35 -0
- package/src/icons/PlayArrowIcon.tsx +32 -0
- package/src/icons/PlayCircleFilledIcon.tsx +35 -0
- package/src/icons/PlayCircleIcon.tsx +22 -0
- package/src/icons/PowerRoundedIcon.tsx +35 -0
- package/src/icons/PreviewIcon.tsx +35 -0
- package/src/icons/PublicIcon.tsx +22 -0
- package/src/icons/PublishIcon.tsx +35 -0
- package/src/icons/PushPinFilledIcon.tsx +35 -0
- package/src/icons/PushPinIcon.tsx +35 -0
- package/src/icons/QrCode2Icon.tsx +35 -0
- package/src/icons/RadioButtonCheckedIcon.tsx +35 -0
- package/src/icons/RadioButtonUncheckedIcon.tsx +35 -0
- package/src/icons/RecieptLongFilledIcon.tsx +35 -0
- package/src/icons/RecieptLongIcon.tsx +35 -0
- package/src/icons/RecordVoiceOverIcon.tsx +35 -0
- package/src/icons/RedeemIcon.tsx +35 -0
- package/src/icons/RedoIcon.tsx +35 -0
- package/src/icons/RemoveIcon.tsx +32 -0
- package/src/icons/RemoveRoadIcon.tsx +35 -0
- package/src/icons/ReportFilledIcon.tsx +35 -0
- package/src/icons/ReportIcon.tsx +35 -0
- package/src/icons/ReviewsIcon.tsx +43 -0
- package/src/icons/SavingsFilledIcon.tsx +35 -0
- package/src/icons/SavingsIcon.tsx +35 -0
- package/src/icons/ScheduleIcon.tsx +35 -0
- package/src/icons/ScheduleSendIcon.tsx +35 -0
- package/src/icons/SearchNormalIcon.tsx +32 -0
- package/src/icons/SellIcon.tsx +35 -0
- package/src/icons/SendIcon.tsx +35 -0
- package/src/icons/ServicesIcon.tsx +39 -0
- package/src/icons/SettingsFilledIcon.tsx +35 -0
- package/src/icons/SettingsIcon.tsx +35 -0
- package/src/icons/ShareIcon.tsx +35 -0
- package/src/icons/ShareWithContactsIcon.tsx +62 -0
- package/src/icons/ShareWithSocialsIcon.tsx +64 -0
- package/src/icons/ShoppingCartFilledIcon.tsx +35 -0
- package/src/icons/ShoppingCartIcon.tsx +35 -0
- package/src/icons/ShuffleIcon.tsx +35 -0
- package/src/icons/SmartPhoneIcon.tsx +35 -0
- package/src/icons/SocialLeaderboardIcon.tsx +35 -0
- package/src/icons/StarFilledIcon.tsx +35 -0
- package/src/icons/StarHalfIcon.tsx +35 -0
- package/src/icons/StarIcon.tsx +35 -0
- package/src/icons/StoreFrontFilledIcon.tsx +35 -0
- package/src/icons/StoreFrontIcon.tsx +35 -0
- package/src/icons/StrikeThroughSIcon.tsx +35 -0
- package/src/icons/StyleIcon.tsx +35 -0
- package/src/icons/SubscriptionIcon.tsx +46 -0
- package/src/icons/SubscriptionsFilledIcon.tsx +35 -0
- package/src/icons/SubscriptionsIcon.tsx +35 -0
- package/src/icons/SupervisorAccountIcon.tsx +35 -0
- package/src/icons/SwitchAccountFilledIcon.tsx +35 -0
- package/src/icons/SwitchAccountIcon.tsx +35 -0
- package/src/icons/SyncSavedLocallyIcon.tsx +35 -0
- package/src/icons/TabletIcon.tsx +35 -0
- package/src/icons/ThumbDownFilledIcon.tsx +22 -0
- package/src/icons/ThumbDownIcon.tsx +22 -0
- package/src/icons/ThumbUpFilledIcon.tsx +22 -0
- package/src/icons/ThumbUpIcon.tsx +22 -0
- package/src/icons/TocIcon.tsx +35 -0
- package/src/icons/TrainingsIcon.tsx +37 -0
- package/src/icons/TrashDeleteBinIcon.tsx +36 -0
- package/src/icons/TrendingUpIcon.tsx +35 -0
- package/src/icons/UndoIcon.tsx +35 -0
- package/src/icons/UnfoldMoreIcon.tsx +35 -0
- package/src/icons/UploadIcon.tsx +35 -0
- package/src/icons/VerifiedIcon.tsx +24 -0
- package/src/icons/ViewAgendaIcon.tsx +22 -0
- package/src/icons/ViewArrayIcon.tsx +35 -0
- package/src/icons/ViewCarouselIcon.tsx +35 -0
- package/src/icons/ViewCozyIcon.tsx +22 -0
- package/src/icons/ViewModuleIcon.tsx +35 -0
- package/src/icons/VisibilityIcon.tsx +35 -0
- package/src/icons/VisibilityOffIcon.tsx +35 -0
- package/src/icons/VolunteerActivismFilledIcon.tsx +35 -0
- package/src/icons/VolunteerActivismIcon.tsx +35 -0
- package/src/icons/WBSunnyIcon.tsx +35 -0
- package/src/icons/WarningFilledIcon.tsx +35 -0
- package/src/icons/WarningIcon.tsx +35 -0
- package/src/icons/WebinarsIcon.tsx +57 -0
- package/src/icons/WidgetsFilledIcon.tsx +35 -0
- package/src/icons/WidgetsIcon.tsx +35 -0
- package/src/icons/WorkshopsIcon.tsx +50 -0
- package/src/icons/index.ts +305 -0
- package/src/pages/Home.tsx +30 -0
- package/src/pages/Login.tsx +13 -0
- package/src/pages/Page404.tsx +13 -0
- package/src/pages/index.tsx +21 -0
- package/src/routes/index.tsx +7 -0
- package/src/stories/Accordion/Accordion.stories.tsx +100 -0
- package/src/stories/Accordion/AccordionWrapper.tsx +16 -0
- package/src/stories/Avatars/Avatar.stories.ts +57 -0
- package/src/stories/Buttons/Button.stories.tsx +95 -0
- package/src/stories/Buttons/IconButton.stories.ts +68 -0
- package/src/stories/Buttons/IconButtonWrapper.tsx +14 -0
- package/src/stories/Colors.mdx +12 -0
- package/src/stories/Configure.mdx +371 -0
- package/src/stories/InputFields/InputFields.stories.ts +54 -0
- package/src/stories/InputFields/MarkdownEditor.stories.ts +20 -0
- package/src/stories/InputFields/SearchInput.stories.ts +22 -0
- package/src/stories/InputFields/SearchInput.tsx +19 -0
- package/src/stories/InputFields/Select/CountrySelect.stories.tsx +21 -0
- package/src/stories/InputFields/Select/CountrySelectWrapper.tsx +25 -0
- package/src/stories/InputFields/Select/CreatableSelect.stories.tsx +48 -0
- package/src/stories/InputFields/Select/CreatableSelectWrapper.tsx +25 -0
- package/src/stories/InputFields/Select/PhoneNumberInput.stories.tsx +33 -0
- package/src/stories/InputFields/Select/PhoneNumberInputWrapper.tsx +21 -0
- package/src/stories/InputFields/Select/Select.stories.tsx +49 -0
- package/src/stories/InputFields/Select/SelectWrapper.tsx +25 -0
- package/src/stories/InputFields/TextArea.stories.ts +22 -0
- package/src/stories/InputFields/UsernameInput.stories.ts +22 -0
- package/src/stories/Tiles/Tile.stories.tsx +71 -0
- package/src/stories/Tiles/TileWrapper.tsx +17 -0
- package/src/stories/Typography/DisplayText.stories.ts +52 -0
- package/src/stories/Typography/HeadingText.stories.ts +86 -0
- package/src/stories/Typography/ParagraphText.stories.ts +62 -0
- package/src/stories/Typography/SubtitleText.stories.ts +93 -0
- package/src/stories/Uploaders/FileUploadWrapper.tsx +25 -0
- package/src/stories/Uploaders/FileUploader.stories.tsx +17 -0
- package/src/stories/Uploaders/ImageUploadWrapper.tsx +30 -0
- package/src/stories/Uploaders/ImageUploader.stories.tsx +19 -0
- package/src/stories/assets/accessibility.png +0 -0
- package/src/stories/assets/accessibility.svg +5 -0
- package/src/stories/assets/addon-library.png +0 -0
- package/src/stories/assets/assets.png +0 -0
- package/src/stories/assets/context.png +0 -0
- package/src/stories/assets/discord.svg +15 -0
- package/src/stories/assets/docs.png +0 -0
- package/src/stories/assets/figma-plugin.png +0 -0
- package/src/stories/assets/github.svg +3 -0
- package/src/stories/assets/share.png +0 -0
- package/src/stories/assets/styling.png +0 -0
- package/src/stories/assets/testing.png +0 -0
- package/src/stories/assets/theming.png +0 -0
- package/src/stories/assets/tutorials.svg +12 -0
- package/src/stories/assets/youtube.svg +4 -0
- package/src/stories/colors/index.ts +4 -0
- package/src/stories/controls/Chip.stories.ts +42 -0
- package/src/stories/controls/DoubleTab.stories.ts +32 -0
- package/src/stories/controls/DoubleTabWrapper.tsx +15 -0
- package/src/stories/controls/Pagination.stories.ts +21 -0
- package/src/stories/controls/PaginationWrapper.tsx +23 -0
- package/src/stories/controls/RadioButton.stories.ts +49 -0
- package/src/stories/controls/RectangleCheckButton.stories.ts +41 -0
- package/src/stories/controls/RoundCheckButton.stories.ts +41 -0
- package/src/stories/controls/Stepper.stories.ts +37 -0
- package/src/stories/controls/StepperDemoCmp.tsx +37 -0
- package/src/stories/controls/TabMenu.stories.ts +33 -0
- package/src/stories/controls/TabMenuWrapper.tsx +14 -0
- package/src/stories/controls/ToggleButton.stories.ts +41 -0
- package/src/stories/icons/Icons.mdx +26 -0
- package/src/stories/icons/index.ts +613 -0
- package/src/stories/notifications/Banner.stories.ts +88 -0
- package/src/stories/notifications/ClickTooltip.stories.ts +21 -0
- package/src/stories/notifications/ClickTooltipWrapper.tsx +19 -0
- package/src/stories/notifications/HoverTooltip.stories.ts +35 -0
- package/src/stories/notifications/HoverTooltipWrapper.tsx +16 -0
- package/src/stories/notifications/Snackbar.stories.ts +17 -0
- package/src/stories/notifications/SnackbarWrapper.tsx +107 -0
- package/src/utils/countries-flag.json +1752 -0
- package/tsconfig.json +34 -0
- package/vite.config.ts +27 -0
package/.env.sample
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
REACT_APP_BASE_URL=""
|
package/.eslintignore
ADDED
package/.eslintrc.json
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": [
|
|
3
|
+
"eslint:recommended",
|
|
4
|
+
"airbnb/hooks",
|
|
5
|
+
"airbnb-typescript",
|
|
6
|
+
"plugin:react/recommended",
|
|
7
|
+
"plugin:react/jsx-runtime",
|
|
8
|
+
"plugin:@typescript-eslint/recommended",
|
|
9
|
+
"plugin:@typescript-eslint/recommended-requiring-type-checking",
|
|
10
|
+
"prettier/prettier",
|
|
11
|
+
"prettier",
|
|
12
|
+
"plugin:prettier/recommended",
|
|
13
|
+
"plugin:import/recommended",
|
|
14
|
+
"plugin:storybook/recommended"
|
|
15
|
+
],
|
|
16
|
+
"plugins": [
|
|
17
|
+
"react-hooks",
|
|
18
|
+
"@typescript-eslint",
|
|
19
|
+
"prettier",
|
|
20
|
+
"react",
|
|
21
|
+
"import",
|
|
22
|
+
"jsx-a11y"
|
|
23
|
+
],
|
|
24
|
+
"parser": "@typescript-eslint/parser",
|
|
25
|
+
"parserOptions": {
|
|
26
|
+
"ecmaFeatures": {
|
|
27
|
+
"jsx": true
|
|
28
|
+
},
|
|
29
|
+
"ecmaVersion": "latest",
|
|
30
|
+
"sourceType": "module",
|
|
31
|
+
"tsconfigRootDir": ".",
|
|
32
|
+
"project": ["./tsconfig.json"]
|
|
33
|
+
},
|
|
34
|
+
"env": {
|
|
35
|
+
"browser": true,
|
|
36
|
+
"es6": true
|
|
37
|
+
},
|
|
38
|
+
"settings": {
|
|
39
|
+
"import/resolver": {
|
|
40
|
+
"typescript": {
|
|
41
|
+
"project": "./tsconfig.json"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"react": {
|
|
45
|
+
"version": "detect"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"rules": {
|
|
49
|
+
"no-var": 2,
|
|
50
|
+
"semi": 0,
|
|
51
|
+
"func-names": 0,
|
|
52
|
+
"default-param-last": 0,
|
|
53
|
+
"camelcase": 0,
|
|
54
|
+
"consistent-return": 0,
|
|
55
|
+
"no-console": 1,
|
|
56
|
+
"no-unused-expressions": 0,
|
|
57
|
+
"no-plusplus": 0,
|
|
58
|
+
"no-underscore-dangle": 0,
|
|
59
|
+
"no-nested-ternary": 0,
|
|
60
|
+
"object-shorthand": 0,
|
|
61
|
+
"class-methods-use-this": 0,
|
|
62
|
+
"import/extensions": 0,
|
|
63
|
+
"import/no-unresolved": 0,
|
|
64
|
+
"jsx-a11y/label-has-associated-control": 0,
|
|
65
|
+
"jsx-a11y/no-autofocus": 0,
|
|
66
|
+
"max-classes-per-file": 0,
|
|
67
|
+
"import/prefer-default-export": 0,
|
|
68
|
+
"import/no-extraneous-dependencies": 0,
|
|
69
|
+
"no-param-reassign": 0,
|
|
70
|
+
"no-prototype-builtins": 0,
|
|
71
|
+
"no-unsafe-optional-chaining": 0,
|
|
72
|
+
"radix": 0,
|
|
73
|
+
"react/prop-types": 0,
|
|
74
|
+
"react-hooks/rules-of-hooks": 2,
|
|
75
|
+
"react-hooks/exhaustive-deps": 0,
|
|
76
|
+
"react/no-children-prop": 0,
|
|
77
|
+
"react/jsx-key": 0,
|
|
78
|
+
"react/display-name": 0,
|
|
79
|
+
"react/react-in-jsx-scope": 0,
|
|
80
|
+
"react/no-unescaped-entities": 0,
|
|
81
|
+
"@typescript-eslint/no-empty-function": 0,
|
|
82
|
+
"@typescript-eslint/no-unsafe-assignment": 0,
|
|
83
|
+
"@typescript-eslint/restrict-template-expressions": 0,
|
|
84
|
+
"@typescript-eslint/no-unsafe-argument": 0,
|
|
85
|
+
"@typescript-eslint/no-unsafe-call": 0,
|
|
86
|
+
"@typescript-eslint/no-unsafe-member-access": 0,
|
|
87
|
+
"@typescript-eslint/ban-ts-comment": 0,
|
|
88
|
+
"@typescript-eslint/no-explicit-any": 0,
|
|
89
|
+
"@typescript-eslint/no-floating-promises": 0,
|
|
90
|
+
"@typescript-eslint/no-unsafe-return": 0,
|
|
91
|
+
"prefer-const": 1,
|
|
92
|
+
"@typescript-eslint/no-misused-promises": 0,
|
|
93
|
+
"@typescript-eslint/no-unused-vars": 1,
|
|
94
|
+
"no-sparse-arrays": 0
|
|
95
|
+
}
|
|
96
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
### Subject / Header
|
|
2
|
+
|
|
3
|
+
State the subject or header of the PR e.g Setting Up Code Base
|
|
4
|
+
|
|
5
|
+
### What changed?
|
|
6
|
+
|
|
7
|
+
Here state the over view of what changed. Also inculde if a command is needed to be ran after pulling. This is an example
|
|
8
|
+
|
|
9
|
+
- Setting up the code base for frontend dashboard
|
|
10
|
+
- Added Pull Pequest template and other file template
|
|
11
|
+
- New package are added, thus the need to run `yarn install`.
|
|
12
|
+
|
|
13
|
+
### Whats Remaining
|
|
14
|
+
|
|
15
|
+
Here state if anything is missing that should be in the PR but its not, this so that the person reviewing the code would know whats missing and can test better
|
package/.prettierignore
ADDED
package/.prettierrc
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** @format */
|
|
2
|
+
|
|
3
|
+
import type { StorybookConfig } from "@storybook/react-vite";
|
|
4
|
+
|
|
5
|
+
const config: StorybookConfig = {
|
|
6
|
+
stories: ["../src/**/*.mdx", "../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"],
|
|
7
|
+
addons: [
|
|
8
|
+
"@storybook/addon-links",
|
|
9
|
+
"@storybook/addon-essentials",
|
|
10
|
+
"@storybook/addon-onboarding",
|
|
11
|
+
"@storybook/addon-interactions",
|
|
12
|
+
"@chakra-ui/storybook-addon",
|
|
13
|
+
],
|
|
14
|
+
framework: {
|
|
15
|
+
name: "@storybook/react-vite",
|
|
16
|
+
options: {},
|
|
17
|
+
},
|
|
18
|
+
docs: {
|
|
19
|
+
autodocs: "tag",
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
export default config;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** @format */
|
|
2
|
+
|
|
3
|
+
import type { Preview } from "@storybook/react";
|
|
4
|
+
import { ChakraProvider } from "@chakra-ui/react";
|
|
5
|
+
import { theme } from "../src/assets/themes/baseThemes";
|
|
6
|
+
|
|
7
|
+
const preview: Preview = {
|
|
8
|
+
parameters: {
|
|
9
|
+
chakra: { theme },
|
|
10
|
+
actions: { argTypesRegex: "^on[A-Z].*" },
|
|
11
|
+
controls: {
|
|
12
|
+
matchers: {
|
|
13
|
+
color: /(background|color)$/i,
|
|
14
|
+
date: /Date$/i,
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export default preview;
|
package/README.md
ADDED
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
<!-- @format -->
|
|
2
|
+
|
|
3
|
+
# DevX
|
|
4
|
+
|
|
5
|
+
Husky that is installed on the project taps into git hooks to enforce formatting and conventional commit standards before pushing code to the repository.
|
|
6
|
+
|
|
7
|
+
## notes
|
|
8
|
+
|
|
9
|
+
for **MacOS** users, run the command `chmod ug+x .husky/*` to make the husky hooks executable.
|
|
10
|
+
|
|
11
|
+
## Husky
|
|
12
|
+
|
|
13
|
+
Husky is a git hook manager that allows you to run scripts on git hooks. It is installed as a dev dependency in the project.
|
|
14
|
+
|
|
15
|
+
## Conventional Commits
|
|
16
|
+
|
|
17
|
+
Conventional Commits is a specification for adding human and machine readable meaning to commit messages. It provides an easy set of rules for creating an explicit commit history; which makes it easier to write automated tools on top of. This convention dovetails with [SemVer](https://semver.org), by describing the features, fixes, and breaking changes made in commit messages.
|
|
18
|
+
[more info](https://www.conventionalcommits.org/en/v1.0.0/)
|
|
19
|
+
|
|
20
|
+
## Commitlint
|
|
21
|
+
|
|
22
|
+
Commitlint is a tool that checks if your commit messages meet the conventional commit format. It is installed as a dev dependency in the project.
|
|
23
|
+
|
|
24
|
+
# Vite
|
|
25
|
+
|
|
26
|
+
Vite is a build tool that serves your code via native ES Module imports during development. It offers instant server start up and fast hot module replacement for rapid feedback. It also bundles your code with Rollup for production.
|
|
27
|
+
|
|
28
|
+
## Getting Started
|
|
29
|
+
|
|
30
|
+
Installing the application (as a developer) is simple in the following steps:
|
|
31
|
+
|
|
32
|
+
- Access and Clone this repository
|
|
33
|
+
|
|
34
|
+
```git
|
|
35
|
+
git clone git clone https://github.com/The-Mainstack/[repo-name].git && cd [repo-name]
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
- Make your forked repo the remote upstream (at origin)
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
git remote add origin https://github.com/The-Mainstack/[repo-name].git
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
- Navigate into the cloned directory and install dependencies with Yarn
|
|
45
|
+
|
|
46
|
+
```yarn
|
|
47
|
+
yarn install
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
- Make a duplicate of the **env** file and update its content accordingly. Most times, this is just fine with no update.
|
|
51
|
+
|
|
52
|
+
```sh
|
|
53
|
+
cp .env.sample .env
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
- Run the app in the development mode.
|
|
57
|
+
Open [http://localhost:[port]](http://localhost:[port]) to view it in the browser and start developing.
|
|
58
|
+
|
|
59
|
+
```yarn
|
|
60
|
+
yarn run dev
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Quick Developer Guide
|
|
64
|
+
|
|
65
|
+
> It is important to note that we are using best practicees in this project and all rules set down must be followed
|
|
66
|
+
|
|
67
|
+
- Linting and prettifying rules are already set in the project and they can be accessed in `.prettierrc` and `.eslintrc.json` files respectively
|
|
68
|
+
|
|
69
|
+
- Make sure there are no linting errors before making your push and PRs
|
|
70
|
+
|
|
71
|
+
> Theses linting errors will be displayed in your files and the console accordingly
|
|
72
|
+
|
|
73
|
+
- All react files must be suffixed with `.tsx` extension for effective import/export flow
|
|
74
|
+
|
|
75
|
+
> Bonus: setup format:on save so as to effectively apply the prettier rules
|
|
76
|
+
|
|
77
|
+
- Build the app for production to the `build` folder.
|
|
78
|
+
|
|
79
|
+
```yarn
|
|
80
|
+
yarn run build
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Contributing.
|
|
84
|
+
|
|
85
|
+
- Before contributing, ensure you create a branch for a particular feature you'd want to work on, so we wouldn't be having issues of merge conflict
|
|
86
|
+
- You can create a branch this way — always create a branch off staging;
|
|
87
|
+
|
|
88
|
+
```git
|
|
89
|
+
git checkout staging
|
|
90
|
+
git checkout -b [branch-name]
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
- Make your changes, add them and make your commits
|
|
94
|
+
|
|
95
|
+
```git
|
|
96
|
+
git commit -m "your message"
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Write good commit messages as this is important to know the essence of your commit
|
|
100
|
+
|
|
101
|
+
- When you're done with your fixes push to that current branch
|
|
102
|
+
|
|
103
|
+
```git
|
|
104
|
+
git push origin [name-of-branch]
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
- The command above pushes your your commits to the current branch you're in.
|
|
108
|
+
- Then make your Pull Request to the `develop` branch
|
|
109
|
+
|
|
110
|
+
## Commit Structure
|
|
111
|
+
|
|
112
|
+
- type: subject e.g body, footer
|
|
113
|
+
|
|
114
|
+
The title consists of the type of the message and subject.
|
|
115
|
+
The type is contained within the title and can be one of these types:
|
|
116
|
+
|
|
117
|
+
- feat: a new feature
|
|
118
|
+
|
|
119
|
+
- fix: a bug fix
|
|
120
|
+
|
|
121
|
+
- docs: changes to documentation
|
|
122
|
+
|
|
123
|
+
- style: formatting, missing semi colons, etc; no code change
|
|
124
|
+
|
|
125
|
+
- refactor: refactoring production code
|
|
126
|
+
|
|
127
|
+
- test: adding tests, refactoring test; no production code change
|
|
128
|
+
|
|
129
|
+
An example of a good commit message
|
|
130
|
+
|
|
131
|
+
```
|
|
132
|
+
feat: Made login check for email and password
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## notes
|
|
136
|
+
|
|
137
|
+
- to use env variables in vite, you need to prefix them with `import.meta.env.`. For example, `process.env.REACT_APP_BASE_URL` becomes `import.meta.env.REACT_APP_BASE_URL`.
|
|
138
|
+
|
|
139
|
+
> Happy Hacking !!!
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = { extends: ['@commitlint/config-conventional'] }
|
package/index.html
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<!-- @format -->
|
|
2
|
+
|
|
3
|
+
<!DOCTYPE html>
|
|
4
|
+
<html lang="en">
|
|
5
|
+
<head>
|
|
6
|
+
<meta charset="UTF-8" />
|
|
7
|
+
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
|
8
|
+
<meta
|
|
9
|
+
name="viewport"
|
|
10
|
+
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
|
|
11
|
+
/>
|
|
12
|
+
<meta
|
|
13
|
+
name="viewport"
|
|
14
|
+
content="height=device-height, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
|
|
15
|
+
/>
|
|
16
|
+
<title>Mainstach template</title>
|
|
17
|
+
<script>
|
|
18
|
+
let vh = window.innerHeight * 0.01;
|
|
19
|
+
document.documentElement.style.setProperty("--vh", `${vh}px`);
|
|
20
|
+
window.addEventListener("resize", () => {
|
|
21
|
+
let vh = window.innerHeight * 0.01;
|
|
22
|
+
document.documentElement.style.setProperty("--vh", `${vh}px`);
|
|
23
|
+
});
|
|
24
|
+
</script>
|
|
25
|
+
</head>
|
|
26
|
+
<body>
|
|
27
|
+
<noscript>You need to enable JavaScript to run this app.</noscript>
|
|
28
|
+
<div id="root"></div>
|
|
29
|
+
<script type="module" src="src/app.tsx"></script>
|
|
30
|
+
</body>
|
|
31
|
+
</html>
|
package/package.json
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "mainstack-design-system",
|
|
3
|
+
"version": "0.0.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"dev": "vite",
|
|
7
|
+
"build": "tsc && vite build",
|
|
8
|
+
"preview": "vite preview --port 5001",
|
|
9
|
+
"format": "prettier src -c --write && pretty-quick --staged",
|
|
10
|
+
"lint": "eslint src --ext .js,.jsx,.ts,.tsx --quiet --fix",
|
|
11
|
+
"ts-error": "tsc",
|
|
12
|
+
"postinstall": "husky install",
|
|
13
|
+
"prepare": "husky install",
|
|
14
|
+
"scriptname": "cmd",
|
|
15
|
+
"storybook": "storybook dev -p 6006",
|
|
16
|
+
"build-storybook": "storybook build"
|
|
17
|
+
},
|
|
18
|
+
"publishConfig": {
|
|
19
|
+
"@themainstack:registry": "https://npm.pkg.github.com"
|
|
20
|
+
},
|
|
21
|
+
"browserslist": {
|
|
22
|
+
"production": [
|
|
23
|
+
">0.2%",
|
|
24
|
+
"not dead",
|
|
25
|
+
"not op_mini all"
|
|
26
|
+
],
|
|
27
|
+
"development": [
|
|
28
|
+
"last 1 chrome version",
|
|
29
|
+
"last 1 firefox version",
|
|
30
|
+
"last 1 safari version"
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
"dependencies": {
|
|
34
|
+
"@chakra-ui/icons": "^2.1.1",
|
|
35
|
+
"@chakra-ui/react": "^2.5.1",
|
|
36
|
+
"@emotion/react": "^11.10.6",
|
|
37
|
+
"@emotion/styled": "^11.10.6",
|
|
38
|
+
"@storybook/preview-api": "^7.6.3",
|
|
39
|
+
"eslint-config-prettier": "^8.6.0",
|
|
40
|
+
"eslint-plugin-prettier": "^4.2.1",
|
|
41
|
+
"framer-motion": "^10.0.1",
|
|
42
|
+
"prettier": "^2.8.4",
|
|
43
|
+
"pretty-quick": "^3.1.3",
|
|
44
|
+
"react": "^18.2.0",
|
|
45
|
+
"react-dom": "^18.2.0",
|
|
46
|
+
"react-phone-input-2": "^2.15.1",
|
|
47
|
+
"react-quill": "^2.0.0",
|
|
48
|
+
"react-router-dom": "^6.8.1",
|
|
49
|
+
"react-select": "^5.8.0",
|
|
50
|
+
"react-toastify": "^9.1.3",
|
|
51
|
+
"typescript": "^4.9.5",
|
|
52
|
+
"vite-plugin-env-compatible": "^1.1.1",
|
|
53
|
+
"vite-plugin-svgr": "^2.4.0",
|
|
54
|
+
"vite-tsconfig-paths": "^4.0.5"
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@chakra-ui/storybook-addon": "^5.1.0",
|
|
58
|
+
"@commitlint/cli": "17.1.2",
|
|
59
|
+
"@commitlint/config-conventional": "17.1.0",
|
|
60
|
+
"@storybook/addon-essentials": "^7.5.3",
|
|
61
|
+
"@storybook/addon-interactions": "^7.5.3",
|
|
62
|
+
"@storybook/addon-links": "^7.5.3",
|
|
63
|
+
"@storybook/addon-onboarding": "^1.0.8",
|
|
64
|
+
"@storybook/blocks": "^7.5.3",
|
|
65
|
+
"@storybook/react": "^7.5.3",
|
|
66
|
+
"@storybook/react-vite": "^7.5.3",
|
|
67
|
+
"@storybook/testing-library": "^0.2.2",
|
|
68
|
+
"@types/react": "^18.0.28",
|
|
69
|
+
"@types/react-dom": "^18.0.11",
|
|
70
|
+
"@typescript-eslint/eslint-plugin": "^5.53.0",
|
|
71
|
+
"@typescript-eslint/parser": "^5.53.0",
|
|
72
|
+
"@vitejs/plugin-react": "^3.1.0",
|
|
73
|
+
"eslint": "^8.35.0",
|
|
74
|
+
"eslint-config-airbnb": "^19.0.4",
|
|
75
|
+
"eslint-config-airbnb-typescript": "^17.0.0",
|
|
76
|
+
"eslint-import-resolver-typescript": "^3.5.3",
|
|
77
|
+
"eslint-plugin-import": "^2.27.5",
|
|
78
|
+
"eslint-plugin-jsx-a11y": "^6.7.1",
|
|
79
|
+
"eslint-plugin-react": "^7.32.2",
|
|
80
|
+
"eslint-plugin-react-hooks": "^4.6.0",
|
|
81
|
+
"eslint-plugin-storybook": "^0.6.15",
|
|
82
|
+
"husky": "^8.0.3",
|
|
83
|
+
"storybook": "^7.5.3",
|
|
84
|
+
"vite": "^4.1.0"
|
|
85
|
+
},
|
|
86
|
+
"description": "<!-- @format -->",
|
|
87
|
+
"main": "index.js",
|
|
88
|
+
"repository": {
|
|
89
|
+
"type": "git",
|
|
90
|
+
"url": "git+https://D-Ajiva@github.com/The-Mainstack/mainstack-design-system.git"
|
|
91
|
+
},
|
|
92
|
+
"author": "david-aji",
|
|
93
|
+
"license": "ISC",
|
|
94
|
+
"bugs": {
|
|
95
|
+
"url": "https://github.com/The-Mainstack/mainstack-design-system/issues"
|
|
96
|
+
},
|
|
97
|
+
"homepage": "https://github.com/The-Mainstack/mainstack-design-system#readme"
|
|
98
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/* /index.html 200
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"short_name": "Mainstack Template",
|
|
3
|
+
"name": "This is a template to build mainstack app going forward",
|
|
4
|
+
"icons": [
|
|
5
|
+
{
|
|
6
|
+
"src": "vite.svg",
|
|
7
|
+
"sizes": "64x64 32x32 24x24 16x16",
|
|
8
|
+
"type": "image/x-icon"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"start_url": ".",
|
|
12
|
+
"display": "standalone",
|
|
13
|
+
"theme_color": "#000000",
|
|
14
|
+
"background_color": "#ffffff"
|
|
15
|
+
}
|
package/public/vite.svg
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
|
package/src/app.tsx
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** @format */
|
|
2
|
+
|
|
3
|
+
import { StrictMode } from "react";
|
|
4
|
+
import { createRoot } from "react-dom/client";
|
|
5
|
+
import Index from "pages/index";
|
|
6
|
+
import "assets/styles/index.css";
|
|
7
|
+
import { ChakraProvider } from "@chakra-ui/react";
|
|
8
|
+
import { ToastContainer } from "react-toastify";
|
|
9
|
+
import { theme } from "assets/themes/baseThemes";
|
|
10
|
+
import "react-toastify/dist/ReactToastify.css";
|
|
11
|
+
|
|
12
|
+
const AppToRender = () => {
|
|
13
|
+
return (
|
|
14
|
+
<StrictMode>
|
|
15
|
+
<ChakraProvider theme={theme}>
|
|
16
|
+
<ToastContainer style={{ width: "auto", padding: "0px" }} />
|
|
17
|
+
<Index />
|
|
18
|
+
</ChakraProvider>
|
|
19
|
+
</StrictMode>
|
|
20
|
+
);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const root = createRoot(document.getElementById("root") as Element);
|
|
24
|
+
|
|
25
|
+
root.render(<AppToRender />);
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|