From a7256279fcb7a0f3edafb9166f5638428cc7713a Mon Sep 17 00:00:00 2001 From: Marco Hillger Date: Tue, 28 Jul 2026 17:48:14 +0200 Subject: [PATCH] Increase Individual license limit to three devices --- src/i18n/locales/de/pricing.json | 2 +- src/i18n/locales/en/pricing.json | 2 +- src/lib/pricing.ts | 2 +- tests/pricing.test.ts | 17 +++++++++++++++++ 4 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 tests/pricing.test.ts diff --git a/src/i18n/locales/de/pricing.json b/src/i18n/locales/de/pricing.json index 7df8c59..d57a004 100644 --- a/src/i18n/locales/de/pricing.json +++ b/src/i18n/locales/de/pricing.json @@ -48,7 +48,7 @@ "pricing.commercial.priceNote": "Für Premium-Sync, Wörterbuch-Autokorrektur, Nicht-GPL-Bedingungen, Beschaffung und Support.", "pricing.commercial.feature.sameFeatures": "Cloud-Ordner-Sync für Wörterbuch und Snippets", "pricing.commercial.feature.proprietary": "Automatisches Korrektur-Lernen für wiederkehrende Bearbeitungen", - "pricing.commercial.feature.devices": "Bis zu 2, 10 oder unbegrenzt viele Geräte", + "pricing.commercial.feature.devices": "Bis zu 3, 10 oder unbegrenzt viele Geräte", "pricing.commercial.feature.priority": "Alternative Bedingungen und Priority-Support", "pricing.commercial.feature.payWhatYouWant": "Zahl was du willst, ab dem angegebenen Preis", "pricing.commercial.cta": "Kommerzielle Pläne ansehen", diff --git a/src/i18n/locales/en/pricing.json b/src/i18n/locales/en/pricing.json index 6776392..8a5ce8e 100644 --- a/src/i18n/locales/en/pricing.json +++ b/src/i18n/locales/en/pricing.json @@ -48,7 +48,7 @@ "pricing.commercial.priceNote": "For Premium sync, dictionary autocorrection, non-GPL terms, procurement, and support.", "pricing.commercial.feature.sameFeatures": "Cloud Folder Sync for dictionary and snippets", "pricing.commercial.feature.proprietary": "Automatic Correction Learning for recurring edits", - "pricing.commercial.feature.devices": "Up to 2, 10, or unlimited devices", + "pricing.commercial.feature.devices": "Up to 3, 10, or unlimited devices", "pricing.commercial.feature.priority": "Alternative terms and priority support", "pricing.commercial.feature.payWhatYouWant": "Pay what you want, starting at the listed price", "pricing.commercial.cta": "See commercial plans", diff --git a/src/lib/pricing.ts b/src/lib/pricing.ts index 5af77ec..60169af 100644 --- a/src/lib/pricing.ts +++ b/src/lib/pricing.ts @@ -40,7 +40,7 @@ export const commercialTiers: CommercialTier[] = [ { id: "individual", name: "Individual", - devices: 2, + devices: 3, price: { monthly: 5, lifetime: 99 }, checkout: { monthly: diff --git a/tests/pricing.test.ts b/tests/pricing.test.ts new file mode 100644 index 0000000..d28ade0 --- /dev/null +++ b/tests/pricing.test.ts @@ -0,0 +1,17 @@ +import assert from "node:assert/strict"; +import test from "node:test"; + +import { commercialTiers } from "../src/lib/pricing.ts"; + +test("commercial plans expose the current device limits", () => { + assert.deepEqual( + Object.fromEntries( + commercialTiers.map((tier) => [tier.id, tier.devices]), + ), + { + individual: 3, + team: 10, + enterprise: "unlimited", + }, + ); +});