PageSourceSearch

https://www.pourify.com/assets/MasterTable-CujVYcqR.js

js pourify.com collected 2026-10-04 19:36:43 UTC 2,891 bytes, 79 lines download raw bytes

1const e=`import { Card, CardContent } from "@/components/ui/card";
2import { features, competitors, pourifyFeatures } from "@/data/competitors";
3import FeatureCell from "./FeatureCell";
4import { useTranslation } from "react-i18next";
5import { useRegionStore } from "@/stores/regionStore";
6import { regionPricing } from "@/data/products";
7import { getTierPricesForRegion } from "@/data/pricing-tiers";
8
9const MasterTable = () => {
10  const { t } = useTranslation();
11  const { selectedRegion } = useRegionStore();
12  const rp = regionPricing[selectedRegion] ?? regionPricing["EU"];
13  // Show the "Mini" tier (10 pourers) charm price for the region.
14  const miniPrice = getTierPricesForRegion(selectedRegion).find((tier) => tier.count === 10)?.price ?? 49;
15  const miniFormatted = (() => {
16    try {
17      return new Intl.NumberFormat(rp.locale, {
18        style: "currency",
19        currency: rp.currencyCode,
20        maximumFractionDigits: 0,
21        minimumFractionDigits: 0,
22      }).format(miniPrice);
23    } catch {
24      return \`\${rp.currencySymbol}\${miniPrice}\`;
25    }
26  })();
27  const localizedPourifyFeatures = {
28    ...pourifyFeatures,
29    "Monthly cost": \`\${miniFormatted}/mo\`,
30  };
31
32
33
34  return (
35    <Card>
36      <CardContent className="p-0">
37        <div className="overflow-x-auto">
38          <table className="w-full text-sm">
39            <thead>
40              <tr className="border-b border-border">
41                <th className="text-left p-4 font-medium text-muted-foreground sticky left-0 bg-card z-10 min-w-[160px]">
42                  {t("comparePage.feature")}
43                </th>
44                <th className="p-4 font-bold text-accent text-center min-w-[100px] bg-accent/5">
45                  Pourify
46                </th>
47                {competitors.map((c) => (
48                  <th key={c.slug} className="p-4 font-medium text-center text-foreground min-w-[100px] whitespace-nowrap">
49                    {c.name}
50                  </th>
51                ))}
52              </tr>
53            </thead>
54            <tbody>
55              {features.map((feature) => (
56                <tr key={feature} className="border-b border-border/50">
57                  <td className="p-4 text-foreground sticky left-0 bg-card z-10 font-medium">
58                    {feature}
59                  </td>
60                  <td className="p-4 text-center bg-accent/5">
61                    <FeatureCell value={localizedPourifyFeatures[feature]} />
62                  </td>
63                  {competitors.map((c) => (
64                    <td key={c.slug} className="p-4 text-center">
65                      <FeatureCell value={c.features[feature]} />
66                    </td>
67                  ))}
68                </tr>
69              ))}
70            </tbody>
71          </table>
72        </div>
73      </CardContent>
74    </Card>
75  );
76};
77
78export default MasterTable;
79`;export{e as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.