diff --git a/.gitignore b/.gitignore
index b7d8823f1d..e62711b8c2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -59,3 +59,5 @@ sandbox.config.json
# Benchmark measurements and rework reports. These name competitors and this
# repository is public, so they stay local.
reports/
+
+.working-files/*
\ No newline at end of file
diff --git a/src/components/Table/TablePricing.astro b/src/components/Table/TablePricing.astro
index fee65232e5..0ba1df19f7 100644
--- a/src/components/Table/TablePricing.astro
+++ b/src/components/Table/TablePricing.astro
@@ -272,7 +272,7 @@ function transformData(data) {
price = isReal() ? item.brazilian_real : item.american_dollar
}
- // Check if price is zero and replace with "Free"
+ // A zero price is the usage the plans include: label it instead of printing $0.00
const numericPrice = isReal() ? item.brazilian_real : item.american_dollar;
const formattedPrice = isReal() ? item.brazilian_real_formatted : item.american_dollar_formatted;
const isZeroPrice = numericPrice === 0 || numericPrice === '0' || numericPrice === 0.0 || numericPrice === '0.00' ||
@@ -281,8 +281,7 @@ function transformData(data) {
parseFloat(formattedPrice) === 0;
if (isZeroPrice) {
- // "Free" in English, "Grátis" in Portuguese
- price = lang === 'pt-br' ? 'Grátis' : 'Free';
+ price = lang === 'pt-br' ? 'Incluído' : 'Included';
} else {
// Normalize price to always have exactly 2 decimal places
price = formatPrice(price);
@@ -326,18 +325,18 @@ function transformData(data) {
}
});
- // Sort tiers: rows with zero prices (containing "Free" or "Grátis") come first
+ // Sort tiers: rows with zero prices (labeled "Included" or "Incluído") come first
return sortTiersByZeroPrice(tiers);
}
/**
* Extracts the numeric price value from a formatted price string.
- * Handles formats like "0.999 USD", "R$ 0,999", "Free", "Grátis".
+ * Handles formats like "0.999 USD", "R$ 0,999", "Included", "Incluído".
* @param {string} price - The formatted price string
* @returns {number} - The numeric price value
*/
function extractNumericPrice(price) {
- if (price === 'Free' || price === 'Grátis' || !price) {
+ if (price === 'Included' || price === 'Incluído' || !price) {
return 0;
}
// Remove currency symbols and extract number
@@ -362,7 +361,7 @@ function getMinPrice(prices) {
/**
* Sorts the tiers object so that rows with zero prices appear first,
* followed by non-zero price rows in descending order (highest price first).
- * A row is considered to have a zero price if any of its values is "Free" or "Grátis".
+ * A row is considered to have a zero price if any of its values is "Included" or "Incluído".
* @param {Object} tiers - The unsorted tiers object
* @returns {Object} - Sorted tiers object with zero-price rows first, then descending prices
*/
@@ -374,9 +373,9 @@ function sortTiersByZeroPrice(tiers) {
const nonZeroPriceEntries = [];
entries.forEach(([tierName, prices]) => {
- // Check if any price in this row is "Free" or "Grátis"
+ // Check if any price in this row is "Included" or "Incluído"
const hasZeroPrice = Object.values(prices).some(price =>
- price === 'Free' || price === 'Grátis'
+ price === 'Included' || price === 'Incluído'
);
if (hasZeroPrice) {
diff --git a/src/components/webkit/PricingTable.vue b/src/components/webkit/PricingTable.vue
index 351151d992..500ba166df 100644
--- a/src/components/webkit/PricingTable.vue
+++ b/src/components/webkit/PricingTable.vue
@@ -1,26 +1,30 @@
-
-
-
-
- {{ metric }}
-
-
- {{ column }}
-
-
-
-
-
-
- {{ row.tier }}
-
-
- {{ price }}
-
-
-
-
+
+
+
+
+
+
+ {{ metric }}
+
+
+ {{ column }}
+
+
+
+
+
+
+ {{ row.tier }}
+
+
+ {{ price }}
+
+
+
+
+