@cuemath/leap 3.5.43-j1 → 3.5.44-link.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/dist/features/auth/pla-signup/signup-header/signup-header.js +1 -1
- package/dist/features/auth/pla-signup/signup-header/signup-header.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/score-marks-input/index.js +46 -44
- package/dist/features/milestone/outcome/comps/outcome-collection/score-marks-input/index.js.map +1 -1
- package/dist/features/parent-dashboard/comps/subscription-initiation/subscription-initiation.js +41 -0
- package/dist/features/parent-dashboard/comps/subscription-initiation/subscription-initiation.js.map +1 -0
- package/dist/features/parent-dashboard/parent-dashboard-view.js +131 -151
- package/dist/features/parent-dashboard/parent-dashboard-view.js.map +1 -1
- package/dist/features/ui/tabs/tab-tem/tab-item.js +29 -35
- package/dist/features/ui/tabs/tab-tem/tab-item.js.map +1 -1
- package/dist/features/ui/tabs/tabs-styled.js +18 -44
- package/dist/features/ui/tabs/tabs-styled.js.map +1 -1
- package/dist/features/ui/tabs/tabs.js +26 -29
- package/dist/features/ui/tabs/tabs.js.map +1 -1
- package/dist/features/ui/theme/get-theme.js +12 -14
- package/dist/features/ui/theme/get-theme.js.map +1 -1
- package/dist/index.d.ts +20 -160
- package/dist/index.js +71 -69
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/features/ui/theme/tabs.js +0 -52
- package/dist/features/ui/theme/tabs.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parent-dashboard-view.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-view.tsx"],"sourcesContent":["import { memo, useMemo, useCallback, type FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport OnboardingGuide from '../auth/pla-signup/onboarding-guide/onboarding-guide';\nimport SignupHeader from '../auth/pla-signup/signup-header/signup-header';\nimport TeacherProfile from '../trial-session/comps/teacher-intro/teacher-profile/teacher-profile';\nimport Button from '../ui/buttons/button/button';\nimport TextButton from '../ui/buttons/text-button/text-button';\nimport Error from '../ui/error/error';\nimport FlexView from '../ui/layout/flex-view';\nimport AppLoader from '../ui/loader/app-loader/app-loader';\nimport Separator from '../ui/separator/separator';\nimport Text from '../ui/text/text';\nimport { EDeviceType } from '../ui/theme/constants';\nimport { invalidateParentHome } from './api/parent-home';\nimport BillingInformation from './comps/billing-information/billing-information';\nimport CompactHeader from './comps/compact-header/compact-header';\nimport CuemathAppFeatures from './comps/cuemath-app-features/cuemath-app-features';\nimport MathPractice from './comps/math-practice/math-practice';\nimport NextSteps from './comps/next-steps/next-steps';\nimport ParentDashboardFaqs from './comps/parent-dashboard-faqs/parent-dashboard-faqs';\nimport SessionStatus from './comps/session-status/session-status';\nimport SessionSummary from './comps/session-summary/session-summary';\nimport UpcomingSessions from './comps/upcoming-sessions/upcoming-sessions';\nimport useParentHomeData from './hooks/use-parent-home-data';\nimport useStudentProfileSummaryData from './hooks/use-student-profile-summary-data';\nimport { usePLAModalHandlers } from './modals/hooks/use-pla-model-handlers';\nimport { DESKTOP_SPACING, MOBILE_SPACING } from './parent-dashboard-constants';\nimport * as Styled from './parent-dashboard-styled';\nimport type { ESummaryType, IParentDashboardProps, ISpacingConfig } from './parent-dashboard-types';\n\nconst ParentDashboardView: FC<IParentDashboardProps> = memo(function ParentDashboardView({\n studentName,\n studentId,\n onRescheduleDemo,\n onViewSummary,\n onGetStartedAgain,\n onChangeTutor,\n onSwitchUser,\n HeaderAvatar,\n}) {\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const parentHomeData = useParentHomeData(studentId);\n const {\n isStudentNoShow,\n isTutorNoShow,\n teacherDetails,\n billingDetails,\n teacherName,\n completedSessions,\n nextSessionStart,\n nextSessionEnd,\n upcomingSessions,\n isTrialDone,\n isOnlyTrialDone,\n isRegularClassDone,\n showLoading = false,\n demoId,\n isProcessingFailed,\n userAttemptId,\n isSubscriptionCancelled,\n canChangeTutor,\n sessionDetails,\n cardOnFileNotAvailable,\n isCardDeclined,\n } = parentHomeData;\n const { summaryInfo, fetchSummaryData } = useStudentProfileSummaryData(studentId);\n\n const spacing = useMemo<ISpacingConfig>(\n () => (isMobile ? MOBILE_SPACING : DESKTOP_SPACING),\n [isMobile],\n );\n\n const buttonWidth = useMemo(() => (isMobile ? '100%' : 200), [isMobile]);\n\n const handleTryAgain = useCallback(() => {\n invalidateParentHome(studentId);\n fetchSummaryData();\n }, [fetchSummaryData, studentId]);\n\n const handleRescheduleDemo = useCallback(() => {\n onRescheduleDemo(demoId);\n }, [demoId, onRescheduleDemo]);\n\n const handleChangeTutor = useCallback(() => {\n onChangeTutor(demoId);\n }, [demoId, onChangeTutor]);\n\n const { onCancelSubscription, onViewPaymentMethod } = usePLAModalHandlers({\n demoId,\n studentId,\n isTrialDone,\n studentName,\n billingDetails,\n withTutor: !!teacherName,\n onChangeTutor: handleChangeTutor,\n onRescheduleDemo: handleRescheduleDemo,\n });\n\n const handleViewSummary = useCallback(\n (key: ESummaryType) => {\n onViewSummary?.(key, { ...summaryInfo, userAttemptId: userAttemptId ?? null });\n },\n [onViewSummary, summaryInfo, userAttemptId],\n );\n\n const sessionStatusProps = useMemo(\n () => ({\n completedSessions,\n nextSessionStartTime: nextSessionStart,\n teacherName,\n isTutorNoShow,\n isStudentNoShow,\n nextSessionEndTime: nextSessionEnd,\n studentName,\n onRescheduleClick: handleRescheduleDemo,\n isTrialDone,\n isOnlyTrialDone,\n }),\n [\n completedSessions,\n nextSessionStart,\n teacherName,\n isTutorNoShow,\n isStudentNoShow,\n nextSessionEnd,\n studentName,\n handleRescheduleDemo,\n isTrialDone,\n isOnlyTrialDone,\n ],\n );\n\n const sessionSummaryProps = useMemo(\n () => ({\n isTrialDone,\n studentName,\n onViewSummary: handleViewSummary,\n }),\n [isTrialDone, studentName, handleViewSummary],\n );\n\n const CancelledSubscriptionView = useMemo(\n () => (\n <FlexView>\n <SignupHeader />\n <Separator height={spacing.separator.extraLarge} />\n <OnboardingGuide orientation=\"horizontal\" />\n {onGetStartedAgain && (\n <FlexView>\n <Separator height={spacing.medium} />\n <Button\n label=\"Get Started\"\n renderAs=\"yellow-dark\"\n shape=\"square\"\n size=\"small\"\n width={buttonWidth}\n onClick={onGetStartedAgain}\n />\n </FlexView>\n )}\n </FlexView>\n ),\n [spacing, buttonWidth, onGetStartedAgain],\n );\n\n const SessionStatusSection = useMemo(\n () => <SessionStatus {...sessionStatusProps} />,\n [sessionStatusProps],\n );\n\n const TeacherProfileSection = useMemo(() => {\n if (!teacherDetails || isTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.large} />\n <TeacherProfile teacherProfile={teacherDetails} />\n </FlexView>\n );\n }, [teacherDetails, isTrialDone, spacing.separator.large]);\n\n const SessionSummarySection = useMemo(() => {\n if (isRegularClassDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <SessionSummary {...sessionSummaryProps} />\n </FlexView>\n );\n }, [isRegularClassDone, spacing.separator.extraLarge, sessionSummaryProps]);\n\n const TutorChangeSection = useMemo(() => {\n if (!canChangeTutor) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.small} />\n <FlexView $flexDirection=\"row\" $flexColumnGapX={0.25}>\n <Text $renderAs=\"ub1\" $renderOnMobileAs=\"ub2\" $color=\"WHITE\">\n Not the right fit for your child?\n </Text>\n <TextButton\n color=\"WHITE_1\"\n sizeOnMobile=\"small\"\n label=\"Try another tutor\"\n onClick={handleChangeTutor}\n />\n </FlexView>\n </FlexView>\n );\n }, [canChangeTutor, spacing.separator.small, handleChangeTutor]);\n\n const TeacherDetailsSection = useMemo(() => {\n if (!teacherDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Text $renderAs=\"ah4-bold\" $renderOnMobileAs=\"ab1-bold\" $color=\"WHITE\">\n Know your tutor\n </Text>\n <Separator height={spacing.separator.medium} />\n <TeacherProfile teacherProfile={teacherDetails} />\n {TutorChangeSection}\n </FlexView>\n );\n }, [teacherDetails, spacing.separator, TutorChangeSection]);\n\n const OnlyTrialDoneSection = useMemo(() => {\n if (!isOnlyTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <NextSteps />\n <UpcomingSessions sessions={upcomingSessions} />\n {TeacherDetailsSection}\n </FlexView>\n );\n }, [isOnlyTrialDone, spacing.separator.extraLarge, upcomingSessions, TeacherDetailsSection]);\n\n const AppFeaturesSection = useMemo(() => {\n if (!isTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <CuemathAppFeatures />\n </FlexView>\n );\n }, [isTrialDone, spacing.separator.extraLarge]);\n\n const MathPracticeSection = useMemo(() => {\n if (isRegularClassDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Styled.MathPracticeWrapper>\n <MathPractice onSwitchUser={onSwitchUser} />\n </Styled.MathPracticeWrapper>\n </FlexView>\n );\n }, [isRegularClassDone, spacing.separator.extraLarge, onSwitchUser]);\n\n const BillingInformationSection = useMemo(() => {\n if (!billingDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <BillingInformation\n billingDetails={billingDetails}\n onViewPaymentMethod={onViewPaymentMethod}\n onCancelSubscription={onCancelSubscription}\n />\n </FlexView>\n );\n }, [billingDetails, spacing.separator.extraLarge, onViewPaymentMethod, onCancelSubscription]);\n\n const MainContent = useMemo(\n () => (\n <FlexView>\n {SessionStatusSection}\n {TeacherProfileSection}\n {SessionSummarySection}\n {OnlyTrialDoneSection}\n {AppFeaturesSection}\n {MathPracticeSection}\n {BillingInformationSection}\n </FlexView>\n ),\n [\n SessionStatusSection,\n TeacherProfileSection,\n SessionSummarySection,\n OnlyTrialDoneSection,\n AppFeaturesSection,\n MathPracticeSection,\n BillingInformationSection,\n ],\n );\n\n const FaqsSection = useMemo(\n () => (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <ParentDashboardFaqs />\n </FlexView>\n ),\n [spacing.separator.extraLarge],\n );\n\n const isLoading = useMemo(() => {\n return isCardDeclined || cardOnFileNotAvailable || !sessionDetails || showLoading;\n }, [cardOnFileNotAvailable, isCardDeclined, sessionDetails, showLoading]);\n\n if (isLoading) {\n return <AppLoader height=\"100dvh\" />;\n }\n\n if (isProcessingFailed) {\n return (\n <FlexView $flex={1} $alignItems=\"center\" $justifyContent=\"center\">\n <Error theme=\"dark\" onTryAgain={handleTryAgain} />\n </FlexView>\n );\n }\n\n return (\n <Styled.Container>\n <CompactHeader HeaderAvatar={HeaderAvatar} />\n <Styled.ContentWrapper\n $flex={1}\n $width=\"100%\"\n $height=\"100%\"\n $background=\"BLACK_1\"\n $gap={spacing.medium}\n $gutter={spacing.small}\n >\n {isSubscriptionCancelled ? CancelledSubscriptionView : MainContent}\n {FaqsSection}\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n});\n\nexport default ParentDashboardView;\n"],"names":["ParentDashboardView","memo","studentName","studentId","onRescheduleDemo","onViewSummary","onGetStartedAgain","onChangeTutor","onSwitchUser","HeaderAvatar","device","useTheme","isMobile","EDeviceType","parentHomeData","useParentHomeData","isStudentNoShow","isTutorNoShow","teacherDetails","billingDetails","teacherName","completedSessions","nextSessionStart","nextSessionEnd","upcomingSessions","isTrialDone","isOnlyTrialDone","isRegularClassDone","showLoading","demoId","isProcessingFailed","userAttemptId","isSubscriptionCancelled","canChangeTutor","sessionDetails","cardOnFileNotAvailable","isCardDeclined","summaryInfo","fetchSummaryData","useStudentProfileSummaryData","spacing","useMemo","MOBILE_SPACING","DESKTOP_SPACING","buttonWidth","handleTryAgain","useCallback","invalidateParentHome","handleRescheduleDemo","handleChangeTutor","onCancelSubscription","onViewPaymentMethod","usePLAModalHandlers","handleViewSummary","key","sessionStatusProps","sessionSummaryProps","CancelledSubscriptionView","FlexView","jsx","SignupHeader","Separator","OnboardingGuide","Button","SessionStatusSection","SessionStatus","TeacherProfileSection","TeacherProfile","SessionSummarySection","SessionSummary","TutorChangeSection","jsxs","Text","TextButton","TeacherDetailsSection","OnlyTrialDoneSection","NextSteps","UpcomingSessions","AppFeaturesSection","CuemathAppFeatures","MathPracticeSection","Styled.MathPracticeWrapper","MathPractice","BillingInformationSection","BillingInformation","MainContent","FaqsSection","ParentDashboardFaqs","AppLoader","Error","Styled.Container","CompactHeader","Styled.ContentWrapper"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parent-dashboard-view.js","sources":["../../../src/features/parent-dashboard/parent-dashboard-view.tsx"],"sourcesContent":["import { memo, useMemo, useCallback, type FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport TeacherProfile from '../trial-session/comps/teacher-intro/teacher-profile/teacher-profile';\nimport TextButton from '../ui/buttons/text-button/text-button';\nimport Error from '../ui/error/error';\nimport FlexView from '../ui/layout/flex-view';\nimport AppLoader from '../ui/loader/app-loader/app-loader';\nimport Separator from '../ui/separator/separator';\nimport Text from '../ui/text/text';\nimport { EDeviceType } from '../ui/theme/constants';\nimport { invalidateParentHome } from './api/parent-home';\nimport BillingInformation from './comps/billing-information/billing-information';\nimport CompactHeader from './comps/compact-header/compact-header';\nimport CuemathAppFeatures from './comps/cuemath-app-features/cuemath-app-features';\nimport MathPractice from './comps/math-practice/math-practice';\nimport NextSteps from './comps/next-steps/next-steps';\nimport ParentDashboardFaqs from './comps/parent-dashboard-faqs/parent-dashboard-faqs';\nimport SessionStatus from './comps/session-status/session-status';\nimport SessionSummary from './comps/session-summary/session-summary';\nimport UpcomingSessions from './comps/upcoming-sessions/upcoming-sessions';\nimport useParentHomeData from './hooks/use-parent-home-data';\nimport useStudentProfileSummaryData from './hooks/use-student-profile-summary-data';\nimport { usePLAModalHandlers } from './modals/hooks/use-pla-model-handlers';\nimport { DESKTOP_SPACING, MOBILE_SPACING } from './parent-dashboard-constants';\nimport * as Styled from './parent-dashboard-styled';\nimport type { ESummaryType, IParentDashboardProps, ISpacingConfig } from './parent-dashboard-types';\nimport SubscriptionInitiation from './comps/subscription-initiation/subscription-initiation';\n\nconst ParentDashboardView: FC<IParentDashboardProps> = memo(function ParentDashboardView({\n studentName,\n studentId,\n onRescheduleDemo,\n onViewSummary,\n onGetStartedAgain,\n onChangeTutor,\n onSwitchUser,\n HeaderAvatar,\n}) {\n const { device } = useTheme();\n const isMobile = device <= EDeviceType.MOBILE;\n\n const parentHomeData = useParentHomeData(studentId);\n const {\n isStudentNoShow,\n isTutorNoShow,\n teacherDetails,\n billingDetails,\n teacherName,\n completedSessions,\n nextSessionStart,\n nextSessionEnd,\n upcomingSessions,\n isTrialDone,\n isOnlyTrialDone,\n isRegularClassDone,\n showLoading = false,\n demoId,\n isProcessingFailed,\n userAttemptId,\n isSubscriptionCancelled,\n canChangeTutor,\n sessionDetails,\n cardOnFileNotAvailable,\n isCardDeclined,\n } = parentHomeData;\n const { summaryInfo, fetchSummaryData } = useStudentProfileSummaryData(studentId);\n\n const spacing = useMemo<ISpacingConfig>(\n () => (isMobile ? MOBILE_SPACING : DESKTOP_SPACING),\n [isMobile],\n );\n\n const handleTryAgain = useCallback(() => {\n invalidateParentHome(studentId);\n fetchSummaryData();\n }, [fetchSummaryData, studentId]);\n\n const handleRescheduleDemo = useCallback(() => {\n onRescheduleDemo(demoId);\n }, [demoId, onRescheduleDemo]);\n\n const handleChangeTutor = useCallback(() => {\n onChangeTutor(demoId);\n }, [demoId, onChangeTutor]);\n\n const { onCancelSubscription, onViewPaymentMethod } = usePLAModalHandlers({\n demoId,\n studentId,\n isTrialDone,\n studentName,\n billingDetails,\n withTutor: !!teacherName,\n onChangeTutor: handleChangeTutor,\n onRescheduleDemo: handleRescheduleDemo,\n });\n\n const handleViewSummary = useCallback(\n (key: ESummaryType) => {\n onViewSummary?.(key, { ...summaryInfo, userAttemptId: userAttemptId ?? null });\n },\n [onViewSummary, summaryInfo, userAttemptId],\n );\n\n const sessionStatusProps = useMemo(\n () => ({\n completedSessions,\n nextSessionStartTime: nextSessionStart,\n teacherName,\n isTutorNoShow,\n isStudentNoShow,\n nextSessionEndTime: nextSessionEnd,\n studentName,\n onRescheduleClick: handleRescheduleDemo,\n isTrialDone,\n isOnlyTrialDone,\n }),\n [\n completedSessions,\n nextSessionStart,\n teacherName,\n isTutorNoShow,\n isStudentNoShow,\n nextSessionEnd,\n studentName,\n handleRescheduleDemo,\n isTrialDone,\n isOnlyTrialDone,\n ],\n );\n\n const sessionSummaryProps = useMemo(\n () => ({\n isTrialDone,\n studentName,\n onViewSummary: handleViewSummary,\n }),\n [isTrialDone, studentName, handleViewSummary],\n );\n\n const CancelledSubscriptionView = useMemo(\n () => <SubscriptionInitiation onGetStartedAgain={onGetStartedAgain} />,\n [onGetStartedAgain],\n );\n\n const SessionStatusSection = useMemo(\n () => <SessionStatus {...sessionStatusProps} />,\n [sessionStatusProps],\n );\n\n const TeacherProfileSection = useMemo(() => {\n if (!teacherDetails || isTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.large} />\n <TeacherProfile teacherProfile={teacherDetails} />\n </FlexView>\n );\n }, [teacherDetails, isTrialDone, spacing.separator.large]);\n\n const SessionSummarySection = useMemo(() => {\n if (isRegularClassDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <SessionSummary {...sessionSummaryProps} />\n </FlexView>\n );\n }, [isRegularClassDone, spacing.separator.extraLarge, sessionSummaryProps]);\n\n const TutorChangeSection = useMemo(() => {\n if (!canChangeTutor) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.small} />\n <FlexView $flexDirection=\"row\" $flexColumnGapX={0.25}>\n <Text $renderAs=\"ub1\" $renderOnMobileAs=\"ub2\" $color=\"WHITE\">\n Not the right fit for your child?\n </Text>\n <TextButton\n color=\"WHITE_1\"\n sizeOnMobile=\"small\"\n label=\"Try another tutor\"\n onClick={handleChangeTutor}\n />\n </FlexView>\n </FlexView>\n );\n }, [canChangeTutor, spacing.separator.small, handleChangeTutor]);\n\n const TeacherDetailsSection = useMemo(() => {\n if (!teacherDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Text $renderAs=\"ah4-bold\" $renderOnMobileAs=\"ab1-bold\" $color=\"WHITE\">\n Know your tutor\n </Text>\n <Separator height={spacing.separator.medium} />\n <TeacherProfile teacherProfile={teacherDetails} />\n {TutorChangeSection}\n </FlexView>\n );\n }, [teacherDetails, spacing.separator, TutorChangeSection]);\n\n const OnlyTrialDoneSection = useMemo(() => {\n if (!isOnlyTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <NextSteps />\n <UpcomingSessions sessions={upcomingSessions} />\n {TeacherDetailsSection}\n </FlexView>\n );\n }, [isOnlyTrialDone, spacing.separator.extraLarge, upcomingSessions, TeacherDetailsSection]);\n\n const AppFeaturesSection = useMemo(() => {\n if (!isTrialDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <CuemathAppFeatures />\n </FlexView>\n );\n }, [isTrialDone, spacing.separator.extraLarge]);\n\n const MathPracticeSection = useMemo(() => {\n if (isRegularClassDone) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <Styled.MathPracticeWrapper>\n <MathPractice onSwitchUser={onSwitchUser} />\n </Styled.MathPracticeWrapper>\n </FlexView>\n );\n }, [isRegularClassDone, spacing.separator.extraLarge, onSwitchUser]);\n\n const BillingInformationSection = useMemo(() => {\n if (!billingDetails) return null;\n\n return (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <BillingInformation\n billingDetails={billingDetails}\n onViewPaymentMethod={onViewPaymentMethod}\n onCancelSubscription={onCancelSubscription}\n />\n </FlexView>\n );\n }, [billingDetails, spacing.separator.extraLarge, onViewPaymentMethod, onCancelSubscription]);\n\n const MainContent = useMemo(\n () => (\n <FlexView>\n {SessionStatusSection}\n {TeacherProfileSection}\n {SessionSummarySection}\n {OnlyTrialDoneSection}\n {AppFeaturesSection}\n {MathPracticeSection}\n {BillingInformationSection}\n </FlexView>\n ),\n [\n SessionStatusSection,\n TeacherProfileSection,\n SessionSummarySection,\n OnlyTrialDoneSection,\n AppFeaturesSection,\n MathPracticeSection,\n BillingInformationSection,\n ],\n );\n\n const FaqsSection = useMemo(\n () => (\n <FlexView>\n <Separator height={spacing.separator.extraLarge} />\n <ParentDashboardFaqs />\n </FlexView>\n ),\n [spacing.separator.extraLarge],\n );\n\n const isLoading = useMemo(() => {\n return isCardDeclined || cardOnFileNotAvailable || !sessionDetails || showLoading;\n }, [cardOnFileNotAvailable, isCardDeclined, sessionDetails, showLoading]);\n\n if (isLoading) {\n return <AppLoader height=\"100dvh\" />;\n }\n\n if (isProcessingFailed) {\n return (\n <FlexView $flex={1} $alignItems=\"center\" $justifyContent=\"center\">\n <Error theme=\"dark\" onTryAgain={handleTryAgain} />\n </FlexView>\n );\n }\n\n return (\n <Styled.Container>\n <CompactHeader HeaderAvatar={HeaderAvatar} />\n <Styled.ContentWrapper\n $flex={1}\n $width=\"100%\"\n $height=\"100%\"\n $background=\"BLACK_1\"\n $gap={spacing.medium}\n $gutter={spacing.small}\n >\n {isSubscriptionCancelled ? CancelledSubscriptionView : MainContent}\n {FaqsSection}\n </Styled.ContentWrapper>\n </Styled.Container>\n );\n});\n\nexport default ParentDashboardView;\n"],"names":["ParentDashboardView","memo","studentName","studentId","onRescheduleDemo","onViewSummary","onGetStartedAgain","onChangeTutor","onSwitchUser","HeaderAvatar","device","useTheme","isMobile","EDeviceType","parentHomeData","useParentHomeData","isStudentNoShow","isTutorNoShow","teacherDetails","billingDetails","teacherName","completedSessions","nextSessionStart","nextSessionEnd","upcomingSessions","isTrialDone","isOnlyTrialDone","isRegularClassDone","showLoading","demoId","isProcessingFailed","userAttemptId","isSubscriptionCancelled","canChangeTutor","sessionDetails","cardOnFileNotAvailable","isCardDeclined","summaryInfo","fetchSummaryData","useStudentProfileSummaryData","spacing","useMemo","MOBILE_SPACING","DESKTOP_SPACING","handleTryAgain","useCallback","invalidateParentHome","handleRescheduleDemo","handleChangeTutor","onCancelSubscription","onViewPaymentMethod","usePLAModalHandlers","handleViewSummary","key","sessionStatusProps","sessionSummaryProps","CancelledSubscriptionView","jsx","SubscriptionInitiation","SessionStatusSection","SessionStatus","TeacherProfileSection","FlexView","Separator","TeacherProfile","SessionSummarySection","SessionSummary","TutorChangeSection","jsxs","Text","TextButton","TeacherDetailsSection","OnlyTrialDoneSection","NextSteps","UpcomingSessions","AppFeaturesSection","CuemathAppFeatures","MathPracticeSection","Styled.MathPracticeWrapper","MathPractice","BillingInformationSection","BillingInformation","MainContent","FaqsSection","ParentDashboardFaqs","AppLoader","Error","Styled.Container","CompactHeader","Styled.ContentWrapper"],"mappings":"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"}
|
|
@@ -1,51 +1,45 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { memo as
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
minWidth: $
|
|
1
|
+
import { jsxs as a, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { memo as p, useCallback as I } from "react";
|
|
3
|
+
import T from "../../text/text.js";
|
|
4
|
+
import { TabWrapper as f, Icon as b } from "../tabs-styled.js";
|
|
5
|
+
const u = ({
|
|
6
|
+
tab: o,
|
|
7
|
+
isSelected: r,
|
|
8
|
+
onChange: n,
|
|
9
|
+
tabUnderlineColor: c = "WHITE_T_15",
|
|
10
|
+
selectedTabUnderlineColor: s = "WHITE",
|
|
11
|
+
activeTabTextProps: l = { $renderAs: "ub2-bold" },
|
|
12
|
+
inactiveTabTextProps: $ = { $renderAs: "ub2" }
|
|
14
13
|
}) => {
|
|
15
|
-
const {
|
|
16
|
-
o
|
|
17
|
-
}, [
|
|
18
|
-
return /* @__PURE__ */
|
|
19
|
-
|
|
14
|
+
const { Icon: t, iconPosition: m = "left" } = o, d = I(() => {
|
|
15
|
+
n(o.id);
|
|
16
|
+
}, [o.id, n]), i = r ? l : $;
|
|
17
|
+
return /* @__PURE__ */ a(
|
|
18
|
+
f,
|
|
20
19
|
{
|
|
21
20
|
$flexDirection: "row",
|
|
22
21
|
$alignItems: "center",
|
|
23
22
|
$justifyContent: "center",
|
|
24
|
-
$
|
|
25
|
-
onClick:
|
|
26
|
-
$borderBottomColor:
|
|
27
|
-
$disabled: o,
|
|
28
|
-
$layout: m,
|
|
29
|
-
$theme: l,
|
|
30
|
-
$isSelected: e,
|
|
31
|
-
$height: d,
|
|
32
|
-
$minWidth: $,
|
|
23
|
+
$gapX: 0.875,
|
|
24
|
+
onClick: d,
|
|
25
|
+
$borderBottomColor: r ? s : c,
|
|
33
26
|
children: [
|
|
34
|
-
|
|
35
|
-
/* @__PURE__ */
|
|
36
|
-
|
|
27
|
+
t ? /* @__PURE__ */ e(b, { $selected: r, $iconPosition: m, children: /* @__PURE__ */ e(t, {}) }) : void 0,
|
|
28
|
+
/* @__PURE__ */ e(
|
|
29
|
+
T,
|
|
37
30
|
{
|
|
38
31
|
$align: "center",
|
|
39
|
-
$color:
|
|
40
|
-
|
|
41
|
-
|
|
32
|
+
$color: "WHITE",
|
|
33
|
+
...i,
|
|
34
|
+
$renderAs: i.$renderAs,
|
|
35
|
+
children: o.label
|
|
42
36
|
}
|
|
43
37
|
)
|
|
44
38
|
]
|
|
45
39
|
}
|
|
46
40
|
);
|
|
47
|
-
},
|
|
41
|
+
}, h = p(u);
|
|
48
42
|
export {
|
|
49
|
-
|
|
43
|
+
h as default
|
|
50
44
|
};
|
|
51
45
|
//# sourceMappingURL=tab-item.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tab-item.js","sources":["../../../../../src/features/ui/tabs/tab-tem/tab-item.tsx"],"sourcesContent":["import { memo, useCallback
|
|
1
|
+
{"version":3,"file":"tab-item.js","sources":["../../../../../src/features/ui/tabs/tab-tem/tab-item.tsx"],"sourcesContent":["import { memo, useCallback } from 'react';\n\nimport Text from '../../text/text';\nimport * as Styled from '../tabs-styled';\nimport type { ITabItemProps } from '../tabs-types';\n\nconst TabItem = ({\n tab,\n isSelected,\n onChange,\n tabUnderlineColor = 'WHITE_T_15',\n selectedTabUnderlineColor = 'WHITE',\n activeTabTextProps = { $renderAs: 'ub2-bold' },\n inactiveTabTextProps = { $renderAs: 'ub2' },\n}: ITabItemProps) => {\n const { Icon, iconPosition = 'left' } = tab;\n\n const handleClick = useCallback(() => {\n onChange(tab.id);\n }, [tab.id, onChange]);\n\n const activeTextProps = isSelected ? activeTabTextProps : inactiveTabTextProps;\n\n return (\n <Styled.TabWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $gapX={0.875}\n onClick={handleClick}\n $borderBottomColor={isSelected ? selectedTabUnderlineColor : tabUnderlineColor}\n >\n {Icon ? (\n <Styled.Icon $selected={isSelected} $iconPosition={iconPosition}>\n <Icon />\n </Styled.Icon>\n ) : undefined}\n <Text\n $align=\"center\"\n $color=\"WHITE\"\n {...activeTextProps}\n $renderAs={activeTextProps.$renderAs}\n >\n {tab.label}\n </Text>\n </Styled.TabWrapper>\n );\n};\n\nexport default memo(TabItem);\n"],"names":["TabItem","tab","isSelected","onChange","tabUnderlineColor","selectedTabUnderlineColor","activeTabTextProps","inactiveTabTextProps","Icon","iconPosition","handleClick","useCallback","activeTextProps","jsxs","Styled.TabWrapper","jsx","Styled.Icon","Text","TabItem$1","memo"],"mappings":";;;;AAMA,MAAMA,IAAU,CAAC;AAAA,EACf,KAAAC;AAAA,EACA,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,mBAAAC,IAAoB;AAAA,EACpB,2BAAAC,IAA4B;AAAA,EAC5B,oBAAAC,IAAqB,EAAE,WAAW,WAAW;AAAA,EAC7C,sBAAAC,IAAuB,EAAE,WAAW,MAAM;AAC5C,MAAqB;AACnB,QAAM,EAAEC,MAAAA,GAAM,cAAAC,IAAe,OAAA,IAAWR,GAElCS,IAAcC,EAAY,MAAM;AACpC,IAAAR,EAASF,EAAI,EAAE;AAAA,EACd,GAAA,CAACA,EAAI,IAAIE,CAAQ,CAAC,GAEfS,IAAkBV,IAAaI,IAAqBC;AAGxD,SAAA,gBAAAM;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,gBAAe;AAAA,MACf,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,OAAO;AAAA,MACP,SAASJ;AAAA,MACT,oBAAoBR,IAAaG,IAA4BD;AAAA,MAE5D,UAAA;AAAA,QACCI,IAAA,gBAAAO,EAACC,GAAA,EAAY,WAAWd,GAAY,eAAeO,GACjD,UAAA,gBAAAM,EAACP,GAAK,CAAA,CAAA,EACR,CAAA,IACE;AAAA,QACJ,gBAAAO;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,QAAO;AAAA,YACP,QAAO;AAAA,YACN,GAAGL;AAAA,YACJ,WAAWA,EAAgB;AAAA,YAE1B,UAAIX,EAAA;AAAA,UAAA;AAAA,QACP;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN,GAEeiB,IAAAC,EAAKnB,CAAO;"}
|
|
@@ -1,57 +1,31 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
const
|
|
4
|
-
const { colors:
|
|
1
|
+
import e from "styled-components";
|
|
2
|
+
import i from "../layout/flex-view.js";
|
|
3
|
+
const l = e.div(({ theme: r, $tabsCount: o, $background: t }) => {
|
|
4
|
+
const { colors: s } = r;
|
|
5
5
|
return `
|
|
6
|
-
display:
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
display: grid;
|
|
7
|
+
background: ${s[t]};
|
|
8
|
+
grid-template-columns: repeat(${o}, 1fr);
|
|
9
9
|
`;
|
|
10
|
-
}),
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
$disabled: r,
|
|
14
|
-
$layout: e,
|
|
15
|
-
$theme: l,
|
|
16
|
-
$isSelected: a,
|
|
17
|
-
$height: p,
|
|
18
|
-
$minWidth: s
|
|
19
|
-
}) => {
|
|
20
|
-
const { colors: i, tabs: c } = t, d = c[l], x = i[d.background.hover];
|
|
21
|
-
return `
|
|
22
|
-
cursor: ${r ? "not-allowed" : "pointer"};
|
|
23
|
-
border-bottom: 1.5px solid ${i[o]};
|
|
10
|
+
}), a = e(i)(({ $borderBottomColor: r }) => `
|
|
11
|
+
cursor: pointer;
|
|
12
|
+
border-bottom: 1.5px solid ${r};
|
|
24
13
|
transition: all 0.3s ease;
|
|
25
|
-
|
|
26
|
-
${s ? `min-width: ${s}px;` : ""}
|
|
27
|
-
position: relative;
|
|
28
|
-
margin-bottom: -1.5px;
|
|
29
|
-
background-color: transparent;
|
|
30
|
-
${e === "fill" ? "flex: 1;" : "flex-shrink: 0;"}
|
|
31
|
-
|
|
32
|
-
${!r && !a ? `
|
|
33
|
-
&:hover {
|
|
34
|
-
background-color: ${x};
|
|
35
|
-
}
|
|
36
|
-
` : ""}
|
|
37
|
-
`;
|
|
38
|
-
}), $ = n.div(({ theme: t, $iconPosition: o, $iconColor: r }) => {
|
|
39
|
-
const { colors: e } = t;
|
|
40
|
-
return `
|
|
14
|
+
`), d = e.div(({ theme: r, $iconPosition: o, $selected: t }) => `
|
|
41
15
|
${o === "left" ? "padding-right" : "padding-left"}: 4px;
|
|
42
16
|
order: ${o === "left" ? -1 : 1};
|
|
43
|
-
|
|
17
|
+
|
|
44
18
|
& svg {
|
|
19
|
+
display: ${t ? "block" : "none"};
|
|
45
20
|
width: 16px;
|
|
46
21
|
height: 16px;
|
|
47
|
-
color: ${
|
|
22
|
+
color: ${r.colors.WHITE_1};
|
|
48
23
|
transition: color 0.2s ease-in-out;
|
|
49
24
|
}
|
|
50
|
-
|
|
51
|
-
});
|
|
25
|
+
`);
|
|
52
26
|
export {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
27
|
+
d as Icon,
|
|
28
|
+
a as TabWrapper,
|
|
29
|
+
l as TabsWrapper
|
|
56
30
|
};
|
|
57
31
|
//# sourceMappingURL=tabs-styled.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs-styled.js","sources":["../../../../src/features/ui/tabs/tabs-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\nimport type { TColorNames } from '../types';\nimport type { ITabItem
|
|
1
|
+
{"version":3,"file":"tabs-styled.js","sources":["../../../../src/features/ui/tabs/tabs-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\nimport type { TColorNames } from '../types';\nimport type { ITabItem } from './tabs-types';\n\ninterface TabsWrapperProps {\n $tabsCount: number;\n $background: TColorNames;\n}\n\nconst TabsWrapper = styled.div<TabsWrapperProps>(({ theme, $tabsCount, $background }) => {\n const { colors } = theme;\n\n return `\n display: grid;\n background: ${colors[$background]};\n grid-template-columns: repeat(${$tabsCount}, 1fr);\n `;\n});\n\ninterface ITabsText {\n $borderBottomColor: TColorNames;\n}\n\nconst TabWrapper = styled(FlexView)<ITabsText>(({ $borderBottomColor }) => {\n return `\n cursor: pointer;\n border-bottom: 1.5px solid ${$borderBottomColor};\n transition: all 0.3s ease;\n `;\n});\n\ninterface IStyledIconProps {\n $iconPosition: NonNullable<ITabItem['iconPosition']>;\n $selected: boolean;\n}\n\nconst Icon = styled.div<IStyledIconProps>(({ theme, $iconPosition, $selected }) => {\n return `\n ${$iconPosition === 'left' ? 'padding-right' : 'padding-left'}: 4px;\n order: ${$iconPosition === 'left' ? -1 : 1};\n \n & svg {\n display: ${$selected ? 'block' : 'none'};\n width: 16px;\n height: 16px;\n color: ${theme.colors.WHITE_1};\n transition: color 0.2s ease-in-out;\n }\n `;\n});\n\nexport { TabsWrapper, Icon, TabWrapper };\n"],"names":["TabsWrapper","styled","theme","$tabsCount","$background","colors","TabWrapper","FlexView","$borderBottomColor","Icon","$iconPosition","$selected"],"mappings":";;AAWM,MAAAA,IAAcC,EAAO,IAAsB,CAAC,EAAE,OAAAC,GAAO,YAAAC,GAAY,aAAAC,QAAkB;AACjF,QAAA,EAAE,QAAAC,EAAW,IAAAH;AAEZ,SAAA;AAAA;AAAA,kBAESG,EAAOD,CAAW,CAAC;AAAA,oCACDD,CAAU;AAAA;AAE9C,CAAC,GAMKG,IAAaL,EAAOM,CAAQ,EAAa,CAAC,EAAE,oBAAAC,QACzC;AAAA;AAAA,iCAEwBA,CAAkB;AAAA;AAAA,GAGlD,GAOKC,IAAOR,EAAO,IAAsB,CAAC,EAAE,OAAAC,GAAO,eAAAQ,GAAe,WAAAC,QAC1D;AAAA,MACHD,MAAkB,SAAS,kBAAkB,cAAc;AAAA,aACpDA,MAAkB,SAAS,KAAK,CAAC;AAAA;AAAA;AAAA,iBAG7BC,IAAY,UAAU,MAAM;AAAA;AAAA;AAAA,eAG9BT,EAAM,OAAO,OAAO;AAAA;AAAA;AAAA,OAIlC;"}
|
|
@@ -1,33 +1,30 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { memo as
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
selectedTab: i,
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { memo as a } from "react";
|
|
3
|
+
import b from "./tab-tem/tab-item.js";
|
|
4
|
+
import { TabsWrapper as u } from "./tabs-styled.js";
|
|
5
|
+
const c = ({
|
|
6
|
+
selectedTab: m,
|
|
8
7
|
onChange: t,
|
|
9
|
-
tabs:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
)) });
|
|
29
|
-
}), $ = b;
|
|
8
|
+
tabs: e,
|
|
9
|
+
tabUnderlineColor: s,
|
|
10
|
+
selectedTabUnderlineColor: d,
|
|
11
|
+
background: n = "BLACK_4",
|
|
12
|
+
activeTabTextProps: i = { $renderAs: "ub2-bold" },
|
|
13
|
+
inactiveTabTextProps: p = { $renderAs: "ub2" }
|
|
14
|
+
}) => /* @__PURE__ */ o(u, { $tabsCount: e.length, $background: n, children: e.map((r) => /* @__PURE__ */ o(
|
|
15
|
+
b,
|
|
16
|
+
{
|
|
17
|
+
tab: r,
|
|
18
|
+
isSelected: r.id === m,
|
|
19
|
+
onChange: t,
|
|
20
|
+
inactiveTabTextProps: p,
|
|
21
|
+
activeTabTextProps: i,
|
|
22
|
+
tabUnderlineColor: s,
|
|
23
|
+
selectedTabUnderlineColor: d
|
|
24
|
+
},
|
|
25
|
+
r.id
|
|
26
|
+
)) }), T = a(c);
|
|
30
27
|
export {
|
|
31
|
-
|
|
28
|
+
T as default
|
|
32
29
|
};
|
|
33
30
|
//# sourceMappingURL=tabs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.js","sources":["../../../../src/features/ui/tabs/tabs.tsx"],"sourcesContent":["import { memo } from 'react';\
|
|
1
|
+
{"version":3,"file":"tabs.js","sources":["../../../../src/features/ui/tabs/tabs.tsx"],"sourcesContent":["import { memo } from 'react';\n\nimport TabItem from './tab-tem/tab-item';\nimport * as Styled from './tabs-styled';\nimport type { ITabsProps } from './tabs-types';\n\nconst Tabs = ({\n selectedTab,\n onChange,\n tabs,\n tabUnderlineColor,\n selectedTabUnderlineColor,\n background = 'BLACK_4',\n activeTabTextProps = { $renderAs: 'ub2-bold' },\n inactiveTabTextProps = { $renderAs: 'ub2' },\n}: ITabsProps) => {\n return (\n <Styled.TabsWrapper $tabsCount={tabs.length} $background={background}>\n {tabs.map(tab => (\n <TabItem\n key={tab.id}\n tab={tab}\n isSelected={tab.id === selectedTab}\n onChange={onChange}\n inactiveTabTextProps={inactiveTabTextProps}\n activeTabTextProps={activeTabTextProps}\n tabUnderlineColor={tabUnderlineColor}\n selectedTabUnderlineColor={selectedTabUnderlineColor}\n />\n ))}\n </Styled.TabsWrapper>\n );\n};\n\nexport default memo(Tabs);\n"],"names":["Tabs","selectedTab","onChange","tabs","tabUnderlineColor","selectedTabUnderlineColor","background","activeTabTextProps","inactiveTabTextProps","jsx","Styled.TabsWrapper","tab","TabItem","memo"],"mappings":";;;;AAMA,MAAMA,IAAO,CAAC;AAAA,EACZ,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,2BAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,oBAAAC,IAAqB,EAAE,WAAW,WAAW;AAAA,EAC7C,sBAAAC,IAAuB,EAAE,WAAW,MAAM;AAC5C,MAEI,gBAAAC,EAACC,GAAA,EAAmB,YAAYP,EAAK,QAAQ,aAAaG,GACvD,UAAKH,EAAA,IAAI,CACRQ,MAAA,gBAAAF;AAAA,EAACG;AAAA,EAAA;AAAA,IAEC,KAAAD;AAAA,IACA,YAAYA,EAAI,OAAOV;AAAA,IACvB,UAAAC;AAAA,IACA,sBAAAM;AAAA,IACA,oBAAAD;AAAA,IACA,mBAAAH;AAAA,IACA,2BAAAC;AAAA,EAAA;AAAA,EAPKM,EAAI;AASZ,CAAA,EACH,CAAA,GAIWR,IAAAU,EAAKb,CAAI;"}
|
|
@@ -5,13 +5,12 @@ import g, { hues as f } from "./clrs.js";
|
|
|
5
5
|
import { getDevice as n } from "./get-device.js";
|
|
6
6
|
import p from "./input.js";
|
|
7
7
|
import u from "./layout.js";
|
|
8
|
-
import { getMediaQueries as
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
|
|
14
|
-
const D = () => {
|
|
8
|
+
import { getMediaQueries as c } from "./media-queries.js";
|
|
9
|
+
import s from "./tab.js";
|
|
10
|
+
import x from "./text.js";
|
|
11
|
+
import C from "./text-button.js";
|
|
12
|
+
import { getZIndexConfig as a } from "./z-index.js";
|
|
13
|
+
const z = () => {
|
|
15
14
|
const t = u(), { gutter: o, deviceWidth: e } = t;
|
|
16
15
|
return {
|
|
17
16
|
arrowTooltip: r(),
|
|
@@ -21,16 +20,15 @@ const D = () => {
|
|
|
21
20
|
input: p(o),
|
|
22
21
|
checkbox: m(o),
|
|
23
22
|
layout: t,
|
|
24
|
-
tab:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
zIndex: T(),
|
|
23
|
+
tab: s(t.gutter),
|
|
24
|
+
text: x(),
|
|
25
|
+
textButton: C(),
|
|
26
|
+
zIndex: a(),
|
|
29
27
|
device: n(e),
|
|
30
|
-
mediaQueries:
|
|
28
|
+
mediaQueries: c()
|
|
31
29
|
};
|
|
32
30
|
};
|
|
33
31
|
export {
|
|
34
|
-
|
|
32
|
+
z as getTheme
|
|
35
33
|
};
|
|
36
34
|
//# sourceMappingURL=get-theme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-theme.js","sources":["../../../../src/features/ui/theme/get-theme.ts"],"sourcesContent":["import type { DefaultTheme } from 'styled-components';\n\nimport getArrowTooltipConfig from './arrow-tooltip';\nimport getButtonConfig from './button';\nimport getCheckboxConfig from './checkbox';\nimport getColors, { hues } from './clrs';\nimport { getDevice } from './get-device';\nimport getInputConfig from './input';\nimport getLayout from './layout';\nimport { getMediaQueries } from './media-queries';\nimport getTabConfig from './tab';\nimport
|
|
1
|
+
{"version":3,"file":"get-theme.js","sources":["../../../../src/features/ui/theme/get-theme.ts"],"sourcesContent":["import type { DefaultTheme } from 'styled-components';\n\nimport getArrowTooltipConfig from './arrow-tooltip';\nimport getButtonConfig from './button';\nimport getCheckboxConfig from './checkbox';\nimport getColors, { hues } from './clrs';\nimport { getDevice } from './get-device';\nimport getInputConfig from './input';\nimport getLayout from './layout';\nimport { getMediaQueries } from './media-queries';\nimport getTabConfig from './tab';\nimport getTextTypes from './text';\nimport getTextButtonConfig from './text-button';\nimport { getZIndexConfig } from './z-index';\n\nconst getTheme: () => DefaultTheme = () => {\n const layout = getLayout();\n const { gutter, deviceWidth } = layout;\n\n return {\n arrowTooltip: getArrowTooltipConfig(),\n button: getButtonConfig(gutter),\n colors: getColors(),\n hues: hues,\n input: getInputConfig(gutter),\n checkbox: getCheckboxConfig(gutter),\n layout,\n tab: getTabConfig(layout.gutter),\n text: getTextTypes(),\n textButton: getTextButtonConfig(),\n zIndex: getZIndexConfig(),\n device: getDevice(deviceWidth),\n mediaQueries: getMediaQueries(),\n };\n};\n\nexport { getTheme };\n"],"names":["getTheme","layout","getLayout","gutter","deviceWidth","getArrowTooltipConfig","getButtonConfig","getColors","hues","getInputConfig","getCheckboxConfig","getTabConfig","getTextTypes","getTextButtonConfig","getZIndexConfig","getDevice","getMediaQueries"],"mappings":";;;;;;;;;;;;AAeA,MAAMA,IAA+B,MAAM;AACzC,QAAMC,IAASC,KACT,EAAE,QAAAC,GAAQ,aAAAC,EAAgB,IAAAH;AAEzB,SAAA;AAAA,IACL,cAAcI,EAAsB;AAAA,IACpC,QAAQC,EAAgBH,CAAM;AAAA,IAC9B,QAAQI,EAAU;AAAA,IAClB,MAAAC;AAAA,IACA,OAAOC,EAAeN,CAAM;AAAA,IAC5B,UAAUO,EAAkBP,CAAM;AAAA,IAClC,QAAAF;AAAA,IACA,KAAKU,EAAaV,EAAO,MAAM;AAAA,IAC/B,MAAMW,EAAa;AAAA,IACnB,YAAYC,EAAoB;AAAA,IAChC,QAAQC,EAAgB;AAAA,IACxB,QAAQC,EAAUX,CAAW;AAAA,IAC7B,cAAcY,EAAgB;AAAA,EAAA;AAElC;"}
|