@codecademy/brand 3.6.0-alpha.eb8166002f.0 → 3.6.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.
@@ -1,84 +1,115 @@
1
1
  import _styled from "@emotion/styled/base";
2
2
  import { FlexBox, HiddenText, Text } from '@codecademy/gamut';
3
3
  import { theme } from '@codecademy/gamut-styles';
4
+ import React from 'react';
4
5
  import { Product } from '../types';
5
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
- const getCurrencySymbol = ({
7
- isUserInIndia
8
- }) => isUserInIndia ? '₹' : '$';
6
+ import { getCurrencySymbol } from './types';
7
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
8
  const Amount = /*#__PURE__*/_styled(Text, {
10
9
  target: "e19mon8j0",
11
10
  label: "Amount"
12
- })("font-weight:bold;color:black;font-size:64px;line-height:64px;", theme.breakpoints.xl, "{font-size:64px;line-height:80px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9QcmljaW5nU2VjdGlvbi9QcmljaW5nQ2FyZC9QcmljaW5nQW1vdW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTMkIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL1ByaWNpbmdTZWN0aW9uL1ByaWNpbmdDYXJkL1ByaWNpbmdBbW91bnQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxleEJveCwgSGlkZGVuVGV4dCwgVGV4dCB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0JztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4uL3R5cGVzJztcblxuY29uc3QgZ2V0Q3VycmVuY3lTeW1ib2wgPSAoeyBpc1VzZXJJbkluZGlhIH06IHsgaXNVc2VySW5JbmRpYTogYm9vbGVhbiB9KSA9PlxuICBpc1VzZXJJbkluZGlhID8gJ+KCuScgOiAnJCc7XG5cbmNvbnN0IEFtb3VudCA9IHN0eWxlZChUZXh0KWBcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiA2NHB4O1xuICBsaW5lLWhlaWdodDogNjRweDtcbiAgJHt0aGVtZS5icmVha3BvaW50cy54bH0ge1xuICAgIGZvbnQtc2l6ZTogNjRweDtcbiAgICBsaW5lLWhlaWdodDogODBweDtcbiAgfVxuYDtcblxuaW50ZXJmYWNlIFByaWNpbmdBbW91bnRQcm9wcyB7XG4gIHByb2R1Y3Q6IFByb2R1Y3Q7XG4gIHByaWNlOiBzdHJpbmc7XG4gIGlzVXNlckluSW5kaWE6IGJvb2xlYW47XG4gIG1vbnRobHlQcmljZT86IHN0cmluZztcbiAgdGVybU1vbnRocz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IFByaWNpbmdBbW91bnQ6IFJlYWN0LkZDPFByaWNpbmdBbW91bnRQcm9wcz4gPSAoe1xuICBtb250aGx5UHJpY2UsXG4gIHByb2R1Y3QsXG4gIHByaWNlLFxuICBpc1VzZXJJbkluZGlhLFxuICB0ZXJtTW9udGhzLFxufSkgPT4ge1xuICBjb25zdCBjeWNsZSA9IHRlcm1Nb250aHMgPT09IDEgPyAnbW9udGhseScgOiAnYW5udWFsbHknO1xuICBjb25zdCBbZG9sbGFycywgY2VudHNdID0gcHJpY2Uuc3BsaXQoJy4nKTtcbiAgY29uc3QgY3VycmVuY3lTeW1ib2wgPSBnZXRDdXJyZW5jeVN5bWJvbCh7IGlzVXNlckluSW5kaWEgfSk7XG5cbiAgbGV0IGFyaWFMYWJlbCA9IGAke2N1cnJlbmN5U3ltYm9sfSR7ZG9sbGFyc30ke2NlbnRzID8gYC4ke2NlbnRzfWAgOiAnJ31gO1xuXG4gIGlmIChwcm9kdWN0ICE9PSBQcm9kdWN0LkJhc2ljKSB7XG4gICAgYXJpYUxhYmVsICs9IGAgcGVyIG1vbnRoYDtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPEZsZXhCb3hcbiAgICAgIGRhdGEtdGVzdGlkPVwicHJpY2luZy1hbW91bnRcIlxuICAgICAgbGluZUhlaWdodD1cInRpdGxlXCJcbiAgICAgIG1iPXs4fVxuICAgICAgY29sdW1uXG4gICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICA+XG4gICAgICA8RmxleEJveCBtcj17NH0gYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICA8SGlkZGVuVGV4dD57YXJpYUxhYmVsfTwvSGlkZGVuVGV4dD5cbiAgICAgICAgPFRleHQgZm9udFdlaWdodD1cImJvbGRcIiBmb250U2l6ZT17MzR9IGFyaWEtaGlkZGVuPlxuICAgICAgICAgIHtjdXJyZW5jeVN5bWJvbH1cbiAgICAgICAgPC9UZXh0PlxuICAgICAgICA8QW1vdW50IGFyaWEtaGlkZGVuPntgJHtkb2xsYXJzfWB9PC9BbW91bnQ+XG4gICAgICAgIHtwcm9kdWN0ID09PSBQcm9kdWN0LkJhc2ljID8gbnVsbCA6IChcbiAgICAgICAgICA8RmxleEJveCBjb2x1bW4gbWw9ezR9IGFyaWEtaGlkZGVuPlxuICAgICAgICAgICAgPFRleHQgZm9udFdlaWdodD1cImJvbGRcIiBmb250U2l6ZT17MjJ9PlxuICAgICAgICAgICAgICB7Y2VudHMgPyBgLiR7Y2VudHN9YCA6IDxzcGFuPiZuYnNwOzwvc3Bhbj59XG4gICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICA8VGV4dCBjb2xvcj1cInRleHQtc2Vjb25kYXJ5XCI+L21vPC9UZXh0PlxuICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgKX1cbiAgICAgIDwvRmxleEJveD5cbiAgICAgIDxUZXh0IGNvbG9yPVwidGV4dC1zZWNvbmRhcnlcIiBjZW50ZXIgbXQ9e3sgXzogOCwgeGw6IDAgfX0+XG4gICAgICAgIHtwcm9kdWN0ID09PSBQcm9kdWN0LkJhc2ljID8gKFxuICAgICAgICAgIDxUZXh0IG1iPXsyNH0+QWx3YXlzIGZyZWU8L1RleHQ+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPEZsZXhCb3ggY29sdW1uPlxuICAgICAgICAgICAgPFRleHQgbWI9ezh9PntgQmlsbGVkICR7Y3ljbGV9IG9yYH08L1RleHQ+XG4gICAgICAgICAgICB7bW9udGhseVByaWNlICYmIChcbiAgICAgICAgICAgICAgPFRleHQ+e2Ake2N1cnJlbmN5U3ltYm9sfSR7bW9udGhseVByaWNlfSBiaWxsZWQgbW9udGhseWB9PC9UZXh0PlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgICl9XG4gICAgICA8L1RleHQ+XG4gICAgPC9GbGV4Qm94PlxuICApO1xufTtcbiJdfQ== */"));
11
+ })("font-weight:bold;color:black;font-size:44px;line-height:64px;", theme.breakpoints.xl, "{font-size:64px;line-height:80px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9QcmljaW5nU2VjdGlvbi9QcmljaW5nQ2FyZC9QcmljaW5nQW1vdW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRMkIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL1ByaWNpbmdTZWN0aW9uL1ByaWNpbmdDYXJkL1ByaWNpbmdBbW91bnQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxleEJveCwgSGlkZGVuVGV4dCwgVGV4dCB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0JztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBBbGxDdXJyZW5jeSwgZ2V0Q3VycmVuY3lTeW1ib2wgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgQW1vdW50ID0gc3R5bGVkKFRleHQpYFxuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDQ0cHg7XG4gIGxpbmUtaGVpZ2h0OiA2NHB4O1xuICAke3RoZW1lLmJyZWFrcG9pbnRzLnhsfSB7XG4gICAgZm9udC1zaXplOiA2NHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICB9XG5gO1xuXG50eXBlIFByaWNpbmdBbW91bnRQcm9wcyA9IHtcbiAgcHJvZHVjdDogUHJvZHVjdDtcbiAgcHJpY2U6IHN0cmluZztcbiAgbW9udGhseVByaWNlPzogc3RyaW5nO1xuICBjdXJyZW5jeTogQWxsQ3VycmVuY3k7XG4gIHRlcm1Nb250aHM/OiBudW1iZXI7XG4gIGNvbXBhY3Q/OiBib29sZWFuO1xuICBpc1VzZXJJbkluZGlhOiBib29sZWFuO1xufTtcblxuZXhwb3J0IGNvbnN0IFByaWNpbmdBbW91bnQ6IFJlYWN0LkZDPFByaWNpbmdBbW91bnRQcm9wcz4gPSAoe1xuICBjdXJyZW5jeSxcbiAgbW9udGhseVByaWNlLFxuICBwcm9kdWN0LFxuICBwcmljZSxcbiAgdGVybU1vbnRocyxcbiAgY29tcGFjdCA9IGZhbHNlLFxuICBpc1VzZXJJbkluZGlhLFxufSkgPT4ge1xuICBjb25zdCBpc1RlYW1zID0gcHJvZHVjdCA9PT0gUHJvZHVjdC5UZWFtcztcblxuICBjb25zdCBjeWNsZSA9IHRlcm1Nb250aHMgPT09IDEgPyAnbW9udGhseScgOiAnYW5udWFsbHknO1xuICBjb25zdCBbZG9sbGFycywgY2VudHNdID0gcHJpY2Uuc3BsaXQoJy4nKTtcbiAgbGV0IGFyaWFMYWJlbCA9IGAke2dldEN1cnJlbmN5U3ltYm9sKGN1cnJlbmN5KX0ke2RvbGxhcnN9JHtcbiAgICBjZW50cyA/IGAuJHtjZW50c31gIDogJydcbiAgfWA7XG4gIGlmIChwcm9kdWN0ICE9PSBQcm9kdWN0LkJhc2ljKSB7XG4gICAgYXJpYUxhYmVsICs9IGAgYSBtb250aCwgYmlsbGVkICR7Y3ljbGV9YDtcbiAgICBpZiAobW9udGhseVByaWNlKSB7XG4gICAgICBhcmlhTGFiZWwgKz0gYCBvciAke2dldEN1cnJlbmN5U3ltYm9sKFxuICAgICAgICBjdXJyZW5jeVxuICAgICAgKX0ke21vbnRobHlQcmljZX0gYmlsbGVkIG1vbnRobHlgO1xuICAgIH1cbiAgfVxuICBpZiAoaXNUZWFtcykge1xuICAgIGFyaWFMYWJlbCArPSAnLCBwZXIgdXNlci4gRGlzY291bnRzIGF2YWlsYWJsZSBmb3IgZWxpZ2libGUgdGVhbXMnO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEZsZXhCb3hcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJwcmljaW5nLWFtb3VudFwiXG4gICAgICAgIGxpbmVIZWlnaHQ9XCJ0aXRsZVwiXG4gICAgICAgIG1iPXtjb21wYWN0ID8gMCA6IDh9XG4gICAgICAgIGNvbHVtblxuICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgID5cbiAgICAgICAgPEhpZGRlblRleHQgZGF0YS10ZXN0aWQ9XCJwcmljaW5nLWFtb3VudC1sYWJlbFwiPnthcmlhTGFiZWx9PC9IaWRkZW5UZXh0PlxuICAgICAgICB7LyogZm9yIHNjcmVlbiByZWFkZXIgb3B0aW1pemF0aW9uICovfVxuICAgICAgICA8RmxleEJveFxuICAgICAgICAgIGFyaWEtaGlkZGVuXG4gICAgICAgICAgcm93XG4gICAgICAgICAgYWxpZ25JdGVtcz1cImNlbnRlclwiXG4gICAgICAgICAgaGVpZ2h0PXt7IF86IDUwLCB4bDogJ3Vuc2V0JyB9fVxuICAgICAgICA+XG4gICAgICAgICAgPEZsZXhCb3ggbXI9ezR9IGFsaWduSXRlbXM9XCJzdGFydFwiPlxuICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgbXQ9e3sgXzogMTIsIHhsOiAxNiB9fVxuICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiYm9sZFwiXG4gICAgICAgICAgICAgIGZvbnRTaXplPXszNH1cbiAgICAgICAgICAgID57YCR7Z2V0Q3VycmVuY3lTeW1ib2woY3VycmVuY3kpfWB9PC9UZXh0PlxuICAgICAgICAgICAgPEFtb3VudD57YCR7ZG9sbGFyc31gfTwvQW1vdW50PlxuICAgICAgICAgICAge3Byb2R1Y3QgPT09IFByb2R1Y3QuQmFzaWMgPyBudWxsIDogKFxuICAgICAgICAgICAgICA8RmxleEJveCBjb2x1bW4gYWxpZ25JdGVtcz1cImZsZXgtZW5kXCIgbWw9ezR9PlxuICAgICAgICAgICAgICAgIDxUZXh0IGZvbnRXZWlnaHQ9XCJib2xkXCIgZm9udFNpemU9ezIyfSBtdD17eyBfOiAxMiwgeGw6IDE2IH19PlxuICAgICAgICAgICAgICAgICAge2NlbnRzID8gYC4ke2NlbnRzfWAgOiA8c3Bhbj4mbmJzcDs8L3NwYW4+fVxuICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICA8VGV4dCBtdD17eyBfOiAwLCB4bDogNCB9fSBjb2xvcj1cIm5hdnktNTAwXCI+XG4gICAgICAgICAgICAgICAgICAvbW9cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICA8L0ZsZXhCb3g+XG4gICAgICAgIDxUZXh0IGNvbG9yPVwibmF2eS01MDBcIiBjZW50ZXIgbXQ9e2NvbXBhY3QgPyAwIDogeyBfOiA4LCB4bDogMCB9fT5cbiAgICAgICAgICB7cHJvZHVjdCA9PT0gUHJvZHVjdC5CYXNpYyA/IChcbiAgICAgICAgICAgIDxUZXh0IG1iPXsyNH0+QWx3YXlzIGZyZWU8L1RleHQ+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxUZXh0IG1iPXtjb21wYWN0ID8gMCA6IDh9IGFyaWEtaGlkZGVuPlxuICAgICAgICAgICAgICAgIHtpc1RlYW1zXG4gICAgICAgICAgICAgICAgICA/ICdQZXIgdXNlciwgYmlsbGVkIGFubnVhbGx5J1xuICAgICAgICAgICAgICAgICAgOiBpc1VzZXJJbkluZGlhXG4gICAgICAgICAgICAgICAgICA/IGBQZXIgbW9udGgsIHBhaWQgJHtjeWNsZX1gXG4gICAgICAgICAgICAgICAgICA6IGBCaWxsZWQgJHtjeWNsZX1gfVxuICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICB7bW9udGhseVByaWNlICYmIChcbiAgICAgICAgICAgICAgICA8VGV4dCBhcmlhLWhpZGRlbj5cbiAgICAgICAgICAgICAgICAgIHtgb3IgJHtnZXRDdXJyZW5jeVN5bWJvbChjdXJyZW5jeSl9JHttb250aGx5UHJpY2V9ICR7XG4gICAgICAgICAgICAgICAgICAgIGlzVXNlckluSW5kaWEgPyAncGFpZCcgOiAnYmlsbGVkJ1xuICAgICAgICAgICAgICAgICAgfSBtb250aGx5YH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHtpc1RlYW1zICYmIChcbiAgICAgICAgICAgICAgICA8VGV4dCBhcmlhLWhpZGRlbj5EaXNjb3VudHMgYXZhaWxhYmxlIGZvciBlbGlnaWJsZSB0ZWFtczwvVGV4dD5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvVGV4dD5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */"));
13
12
  export const PricingAmount = ({
13
+ currency,
14
14
  monthlyPrice,
15
15
  product,
16
16
  price,
17
- isUserInIndia,
18
- termMonths
17
+ termMonths,
18
+ compact = false,
19
+ isUserInIndia
19
20
  }) => {
21
+ const isTeams = product === Product.Teams;
20
22
  const cycle = termMonths === 1 ? 'monthly' : 'annually';
21
23
  const [dollars, cents] = price.split('.');
22
- const currencySymbol = getCurrencySymbol({
23
- isUserInIndia
24
- });
25
- let ariaLabel = `${currencySymbol}${dollars}${cents ? `.${cents}` : ''}`;
24
+ let ariaLabel = `${getCurrencySymbol(currency)}${dollars}${cents ? `.${cents}` : ''}`;
26
25
  if (product !== Product.Basic) {
27
- ariaLabel += ` per month`;
26
+ ariaLabel += ` a month, billed ${cycle}`;
27
+ if (monthlyPrice) {
28
+ ariaLabel += ` or ${getCurrencySymbol(currency)}${monthlyPrice} billed monthly`;
29
+ }
30
+ }
31
+ if (isTeams) {
32
+ ariaLabel += ', per user. Discounts available for eligible teams';
28
33
  }
29
- return /*#__PURE__*/_jsxs(FlexBox, {
30
- "data-testid": "pricing-amount",
31
- lineHeight: "title",
32
- mb: 8,
33
- column: true,
34
- alignItems: "center",
35
- children: [/*#__PURE__*/_jsxs(FlexBox, {
36
- mr: 4,
34
+ return /*#__PURE__*/_jsx(_Fragment, {
35
+ children: /*#__PURE__*/_jsxs(FlexBox, {
36
+ "data-testid": "pricing-amount",
37
+ lineHeight: "title",
38
+ mb: compact ? 0 : 8,
39
+ column: true,
37
40
  alignItems: "center",
38
41
  children: [/*#__PURE__*/_jsx(HiddenText, {
42
+ "data-testid": "pricing-amount-label",
39
43
  children: ariaLabel
40
- }), /*#__PURE__*/_jsx(Text, {
41
- fontWeight: "bold",
42
- fontSize: 34,
43
- "aria-hidden": true,
44
- children: currencySymbol
45
- }), /*#__PURE__*/_jsx(Amount, {
44
+ }), /*#__PURE__*/_jsx(FlexBox, {
46
45
  "aria-hidden": true,
47
- children: `${dollars}`
48
- }), product === Product.Basic ? null : /*#__PURE__*/_jsxs(FlexBox, {
49
- column: true,
50
- ml: 4,
51
- "aria-hidden": true,
52
- children: [/*#__PURE__*/_jsx(Text, {
53
- fontWeight: "bold",
54
- fontSize: 22,
55
- children: cents ? `.${cents}` : /*#__PURE__*/_jsx("span", {
56
- children: "\xA0"
57
- })
58
- }), /*#__PURE__*/_jsx(Text, {
59
- color: "text-secondary",
60
- children: "/mo"
61
- })]
46
+ row: true,
47
+ alignItems: "center",
48
+ height: {
49
+ _: 50,
50
+ xl: 'unset'
51
+ },
52
+ children: /*#__PURE__*/_jsxs(FlexBox, {
53
+ mr: 4,
54
+ alignItems: "start",
55
+ children: [/*#__PURE__*/_jsx(Text, {
56
+ mt: {
57
+ _: 12,
58
+ xl: 16
59
+ },
60
+ fontWeight: "bold",
61
+ fontSize: 34,
62
+ children: `${getCurrencySymbol(currency)}`
63
+ }), /*#__PURE__*/_jsx(Amount, {
64
+ children: `${dollars}`
65
+ }), product === Product.Basic ? null : /*#__PURE__*/_jsxs(FlexBox, {
66
+ column: true,
67
+ alignItems: "flex-end",
68
+ ml: 4,
69
+ children: [/*#__PURE__*/_jsx(Text, {
70
+ fontWeight: "bold",
71
+ fontSize: 22,
72
+ mt: {
73
+ _: 12,
74
+ xl: 16
75
+ },
76
+ children: cents ? `.${cents}` : /*#__PURE__*/_jsx("span", {
77
+ children: "\xA0"
78
+ })
79
+ }), /*#__PURE__*/_jsx(Text, {
80
+ mt: {
81
+ _: 0,
82
+ xl: 4
83
+ },
84
+ color: "navy-500",
85
+ children: "/mo"
86
+ })]
87
+ })]
88
+ })
89
+ }), /*#__PURE__*/_jsx(Text, {
90
+ color: "navy-500",
91
+ center: true,
92
+ mt: compact ? 0 : {
93
+ _: 8,
94
+ xl: 0
95
+ },
96
+ children: product === Product.Basic ? /*#__PURE__*/_jsx(Text, {
97
+ mb: 24,
98
+ children: "Always free"
99
+ }) : /*#__PURE__*/_jsxs(_Fragment, {
100
+ children: [/*#__PURE__*/_jsx(Text, {
101
+ mb: compact ? 0 : 8,
102
+ "aria-hidden": true,
103
+ children: isTeams ? 'Per user, billed annually' : isUserInIndia ? `Per month, paid ${cycle}` : `Billed ${cycle}`
104
+ }), /*#__PURE__*/_jsx("br", {}), monthlyPrice && /*#__PURE__*/_jsx(Text, {
105
+ "aria-hidden": true,
106
+ children: `or ${getCurrencySymbol(currency)}${monthlyPrice} ${isUserInIndia ? 'paid' : 'billed'} monthly`
107
+ }), isTeams && /*#__PURE__*/_jsx(Text, {
108
+ "aria-hidden": true,
109
+ children: "Discounts available for eligible teams"
110
+ })]
111
+ })
62
112
  })]
63
- }), /*#__PURE__*/_jsx(Text, {
64
- color: "text-secondary",
65
- center: true,
66
- mt: {
67
- _: 8,
68
- xl: 0
69
- },
70
- children: product === Product.Basic ? /*#__PURE__*/_jsx(Text, {
71
- mb: 24,
72
- children: "Always free"
73
- }) : /*#__PURE__*/_jsxs(FlexBox, {
74
- column: true,
75
- children: [/*#__PURE__*/_jsx(Text, {
76
- mb: 8,
77
- children: `Billed ${cycle} or`
78
- }), monthlyPrice && /*#__PURE__*/_jsx(Text, {
79
- children: `${currencySymbol}${monthlyPrice} billed monthly`
80
- })]
81
- })
82
- })]
113
+ })
83
114
  });
84
115
  };
@@ -75,6 +75,20 @@ export const planDetails = {
75
75
  isLite: true,
76
76
  features: getFeatures(['Basic access to free courses', 'Community support', 'Learning resources', 'Real-world projects', 'All courses', 'Skill paths', 'Certificates of completion'])
77
77
  },
78
+ teams: {
79
+ id: 'teams',
80
+ title: 'Teams',
81
+ tag: 'Recommended for 2+',
82
+ isLite: false,
83
+ features: getFeatures()
84
+ },
85
+ enterprise: {
86
+ id: 'enterprise',
87
+ title: 'Enterprise',
88
+ tag: 'Recommended for 25+',
89
+ isLite: false,
90
+ features: getFeatures()
91
+ },
78
92
  free: {
79
93
  id: 'free',
80
94
  title: 'Pro',
@@ -1,12 +1,12 @@
1
1
  import { PlansByType } from '../config';
2
- import { CopyConfig, CtaConfig, Product, ProductDetails } from '../types';
2
+ import { Product, ProductDetails, User } from '../types';
3
+ import { AllCurrency } from './types';
3
4
  export declare const smSize = 728;
4
- export declare const PricingCard: React.FC<{
5
+ export declare const PricingCard: ({ product, productDetails, currency, plansByType, isUserInIndia, user, }: {
5
6
  product: Product;
6
7
  productDetails: ProductDetails;
8
+ currency: AllCurrency;
7
9
  plansByType: PlansByType;
8
10
  isUserInIndia: boolean;
9
- isCurrentPlan?: boolean;
10
- ctaConfig?: CtaConfig[keyof CtaConfig];
11
- copyConfig?: CopyConfig[keyof CopyConfig];
12
- }>;
11
+ user: User;
12
+ }) => import("react/jsx-runtime").JSX.Element;