diff --git a/frontend/__snapshots__/scenes-app-experiments--complete-funnel-experiment.png b/frontend/__snapshots__/scenes-app-experiments--complete-funnel-experiment.png new file mode 100644 index 0000000000000..e2c7fcb5ba238 Binary files /dev/null and b/frontend/__snapshots__/scenes-app-experiments--complete-funnel-experiment.png differ diff --git a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--dark.png b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--dark.png index d3c40fcac13be..1b97153aa1584 100644 Binary files a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--dark.png and b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--dark.png differ diff --git a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--light.png b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--light.png index fded7d3bbff94..a37f2399a96ba 100644 Binary files a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--light.png and b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2--light.png differ diff --git a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--dark.png b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--dark.png index e849eb85f0d41..0c6ff90962bfe 100644 Binary files a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--dark.png and b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--dark.png differ diff --git a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--light.png b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--light.png index 058db6dcc9e1e..54461bdf672d3 100644 Binary files a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--light.png and b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount--light.png differ diff --git a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount.png b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount.png new file mode 100644 index 0000000000000..7cfdfd4aabb5e Binary files /dev/null and b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2-with-discount.png differ diff --git a/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2.png b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2.png new file mode 100644 index 0000000000000..68a5a938fe618 Binary files /dev/null and b/frontend/__snapshots__/scenes-other-billing-v2--billing-v-2.png differ diff --git a/frontend/src/scenes/billing/Billing.tsx b/frontend/src/scenes/billing/Billing.tsx index 755e8da0eea36..6aa63320c5717 100644 --- a/frontend/src/scenes/billing/Billing.tsx +++ b/frontend/src/scenes/billing/Billing.tsx @@ -1,12 +1,15 @@ +import './Billing.scss' + import { LemonButton, LemonDivider, LemonInput, Link } from '@posthog/lemon-ui' import clsx from 'clsx' import { useActions, useValues } from 'kea' import { Field, Form } from 'kea-forms' +import { SurprisedHog } from 'lib/components/hedgehogs' import { PageHeader } from 'lib/components/PageHeader' import { supportLogic } from 'lib/components/Support/supportLogic' import { dayjs } from 'lib/dayjs' import { useResizeBreakpoints } from 'lib/hooks/useResizeObserver' -import { IconPlus } from 'lib/lemon-ui/icons' +import { IconCheckCircleOutline, IconPlus } from 'lib/lemon-ui/icons' import { LemonBanner } from 'lib/lemon-ui/LemonBanner' import { LemonLabel } from 'lib/lemon-ui/LemonLabel/LemonLabel' import { SpinnerOverlay } from 'lib/lemon-ui/Spinner/Spinner' @@ -38,6 +41,8 @@ export function Billing(): JSX.Element { showLicenseDirectInput, isActivateLicenseSubmitting, isUnlicensedDebug, + over20kAnnual, + isAnnualPlan, } = useValues(billingLogic) const { reportBillingV2Shown } = useActions(billingLogic) const { preflight } = useValues(preflightLogic) @@ -125,24 +130,7 @@ export function Billing(): JSX.Element { return (
- {billing?.has_active_subscription ? 'Billing period' : 'Cycle'}:{' '} - {billing.billing_period.current_period_start.format('LL')} to{' '} - {billing.billing_period.current_period_end.format('LL')} ( - {billing.billing_period.current_period_end.diff(dayjs(), 'days')} days remaining) -
- {!billing.has_active_subscription && ( -- Monthly free allocation resets at the end of the cycle. -
- )} -- {billing.discount_percent}% off discount applied -
-+ {billing.discount_percent}% off discount + applied +
+
+
-
+ {billing?.has_active_subscription ? 'Billing period' : 'Cycle'}:{' '} + {billing.billing_period.current_period_start.format('LL')} to{' '} + {billing.billing_period.current_period_end.format('LL')} ( + {billing.billing_period.current_period_end.diff(dayjs(), 'days')} days + remaining) +
+ {!billing.has_active_subscription && ( ++ Monthly free allocation resets at the end of the cycle.
+ )} ++ Self-hosted licenses are no longer available for purchase. Please contact{' '} + sales@posthog.com to discuss options. +
+ ) : null}- Self-hosted licenses are no longer available for purchase. Please contact{' '} - sales@posthog.com to discuss options. -
- ) : null} + {!isOnboarding && billing?.has_active_subscription && ( +