Skip to content

Commit

Permalink
Chore: Refactor block assembly
Browse files Browse the repository at this point in the history
  • Loading branch information
OndraM committed Mar 18, 2024
1 parent 7bb36d2 commit 6bd7ac4
Show file tree
Hide file tree
Showing 13 changed files with 374 additions and 528 deletions.
57 changes: 56 additions & 1 deletion src/__tests__/utils.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,13 @@ import {
isSettingsButtonNotShown,
legalizeAlmaCareer,
pluralize,
assembleCategoryNecessary,
assembleCategoryPersonalization,
assembleCategoryFunctionality,
assembleCategoryAnalytics,
assembleCategoryAd,
} from '../utils';
import { SecondaryButtonMode } from '../constants';
import { CookieConsentCategory, SecondaryButtonMode } from '../constants';

describe('utils', () => {
describe('addSeparators', () => {
Expand Down Expand Up @@ -94,4 +99,54 @@ describe('utils', () => {
expect(isSettingsButtonNotShown(SecondaryButtonMode.SHOW_SETTINGS)).toBe(false);
});
});

describe('assembleCategoryNecessary', () => {
it('should assemble modal category block', () => {
expect(assembleCategoryNecessary('title', 'description')).toEqual({
title: 'title',
description: 'description',
toggle: { value: CookieConsentCategory.NECESSARY, enabled: true, readonly: true },
});
});
});

describe('assembleCategoryAd', () => {
it('should assemble modal category block', () => {
expect(assembleCategoryAd('title', 'description')).toEqual({
title: 'title',
description: 'description',
toggle: { value: CookieConsentCategory.AD, enabled: false, readonly: false },
});
});
});

describe('assembleCategoryAnalytics', () => {
it('should assemble modal category block', () => {
expect(assembleCategoryAnalytics('title', 'description')).toEqual({
title: 'title',
description: 'description',
toggle: { value: CookieConsentCategory.ANALYTICS, enabled: false, readonly: false },
});
});
});

describe('assembleCategoryFunctionality', () => {
it('should assemble modal category block', () => {
expect(assembleCategoryFunctionality('title', 'description')).toEqual({
title: 'title',
description: 'description',
toggle: { value: CookieConsentCategory.FUNCTIONALITY, enabled: false, readonly: false },
});
});
});

describe('assembleCategoryPersonalization', () => {
it('should assemble modal category block', () => {
expect(assembleCategoryPersonalization('title', 'description')).toEqual({
title: 'title',
description: 'description',
toggle: { value: CookieConsentCategory.PERSONALIZATION, enabled: false, readonly: false },
});
});
});
});
90 changes: 30 additions & 60 deletions src/languages/__tests__/__snapshots__/langConfig.test.ts.snap

Large diffs are not rendered by default.

75 changes: 25 additions & 50 deletions src/languages/cs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@ import {
isSettingsButtonNotShown,
pluralize,
legalizeAlmaCareer,
assembleCategoryNecessary,
assembleCategoryAnalytics,
assembleCategoryFunctionality,
assembleCategoryAd,
assembleCategoryPersonalization,
} from '../utils';
import { ExtraMessages, Values, VanillaCookieConsent } from '../types';
import { CookieConsentCategory, SecondaryButtonMode } from '../constants';
Expand Down Expand Up @@ -65,56 +70,26 @@ export const config = (
`Další informace o tom, co jsou cookies a jak s nimi pracujeme, najdete
v <a href="https://www.almacareer.com/gdpr" target="_blank">Zásadách cookies</a>.`),
},
{
title: 'Technicky nezbytné Cookies',
description: `Tyto Cookies jsou pro správné fungování našeho webu nezbytné, proto není možné je vypnout.
Bez nich by na našich stránkách např. nešel zobrazit žádný obsah nebo by nefungovalo přihlášení.`,
toggle: {
value: CookieConsentCategory.NECESSARY,
enabled: true,
readonly: true,
},
},
{
title: 'Analytické Cookies',
description: `Pomocí nich sledujeme, kolik lidí náš web navštěvuje a jak ho používají.
Díky tomu můžeme stránky a další služby neustále vylepšovat.`,
toggle: {
value: CookieConsentCategory.ANALYTICS,
enabled: false,
readonly: false,
},
},
{
title: 'Funkční Cookies',
description: `Díky těmto Cookies jsou naše stránky ještě výkonnější a fungují lépe.
Například nám umožňují používat chat, abychom na vaše otázky mohli odpovídat rychle a jednoduše.`,
toggle: {
value: CookieConsentCategory.FUNCTIONALITY,
enabled: false,
readonly: false,
},
},
{
title: 'Marketingové Cookies',
description: `S těmito Cookies můžeme měřit, jak efektivní je naše reklama a cílené nabídky našich služeb.
Marketingové Cookies nám umožní vás na Internetu upozornit na novinky, které vás můžou zajímat.`,
toggle: {
value: CookieConsentCategory.AD,
enabled: false,
readonly: false,
},
},
{
title: 'Personalizační Cookies',
description: `Naše služby fungují lépe, když je můžeme přizpůsobit na míru konkrétnímu uživateli.
Povolením Personalizačních cookies zvýšíte šanci, že najdete právě takový obsah, jaký hledáte.`,
toggle: {
value: CookieConsentCategory.PERSONALIZATION,
enabled: false,
readonly: false,
},
},
assembleCategoryNecessary(
'Technicky nezbytné Cookies',
'Tyto Cookies jsou pro správné fungování našeho webu nezbytné, proto není možné je vypnout. Bez nich by na našich stránkách např. nešel zobrazit žádný obsah nebo by nefungovalo přihlášení.',
),
assembleCategoryAnalytics(
'Analytické Cookies',
'Pomocí nich sledujeme, kolik lidí náš web navštěvuje a jak ho používají. Díky tomu můžeme stránky a další služby neustále vylepšovat.',
),
assembleCategoryFunctionality(
'Funkční Cookies',
'Díky těmto Cookies jsou naše stránky ještě výkonnější a fungují lépe. Například nám umožňují používat chat, abychom na vaše otázky mohli odpovídat rychle a jednoduše.',
),
assembleCategoryAd(
'Marketingové Cookies',
'S těmito Cookies můžeme měřit, jak efektivní je naše reklama a cílené nabídky našich služeb. Marketingové Cookies nám umožní vás na Internetu upozornit na novinky, které vás můžou zajímat.',
),
assembleCategoryPersonalization(
'Personalizační Cookies',
'Naše služby fungují lépe, když je můžeme přizpůsobit na míru konkrétnímu uživateli. Povolením Personalizačních cookies zvýšíte šanci, že najdete právě takový obsah, jaký hledáte.',
),
],
},
};
Expand Down
70 changes: 25 additions & 45 deletions src/languages/de.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ import {
assembleSecondaryButton,
isSettingsButtonNotShown,
legalizeAlmaCareer,
assembleCategoryNecessary,
assembleCategoryAnalytics,
assembleCategoryFunctionality,
assembleCategoryAd,
assembleCategoryPersonalization,
} from '../utils';
import { ExtraMessages, Values, VanillaCookieConsent } from '../types';
import { CookieConsentCategory, SecondaryButtonMode } from '../constants';
Expand Down Expand Up @@ -66,51 +71,26 @@ export const config = (
finden Sie in unsere
<a href="https://www.almacareer.com/gdpr" target="_blank">Datenschutzrichtlinien</a>.`),
},
{
title: 'Technisch notwendige Cookies',
description: `Diese Cookies sind für das reibungslose Funktionieren unserer Website unerlässlich und können daher nicht deaktiviert werden. Ohne sie könnten z. B. keine Inhalte auf unserer Seite angezeigt werden oder das Login würde nicht funktionieren.`,
toggle: {
value: CookieConsentCategory.NECESSARY,
enabled: true,
readonly: true,
},
},
{
title: 'Analytische Cookies',
description: `Wir verwenden diese Cookies, um zu verfolgen, wie viele Personen unsere Website besuchen und wie sie sie nutzen. Auf diese Weise können wir die Website und andere Dienste kontinuierlich verbessern.`,
toggle: {
value: CookieConsentCategory.ANALYTICS,
enabled: false,
readonly: false,
},
},
{
title: 'Funktionale Cookies',
description: `Diese Cookies machen unsere Website leistungsfähiger und funktionieren besser. Sie ermöglichen uns zum Beispiel die Nutzung des Chats, damit wir Ihre Fragen schnell und einfach beantworten können.`,
toggle: {
value: CookieConsentCategory.FUNCTIONALITY,
enabled: false,
readonly: false,
},
},
{
title: 'Marketing Cookies',
description: `Mit diesen Cookies können wir messen, wie effektiv unsere Werbung und gezielte Angebote unserer Dienste sind. Marketing Cookies ermöglichen es uns, Sie online auf Nachrichten hinzuweisen, die für Sie von Interesse sein könnten.`,
toggle: {
value: CookieConsentCategory.AD,
enabled: false,
readonly: false,
},
},
{
title: 'Personalisierung Cookies',
description: `Unsere Dienste funktionieren besser, wenn wir sie auf den einzelnen Nutzer zuschneiden können. Durch die Aktivierung von Personalisierungs-Cookies erhöhen Sie die Wahrscheinlichkeit, dass Sie genau die Inhalte finden, nach denen Sie suchen.`,
toggle: {
value: CookieConsentCategory.PERSONALIZATION,
enabled: false,
readonly: false,
},
},
assembleCategoryNecessary(
'Technisch notwendige Cookies',
'Diese Cookies sind für das reibungslose Funktionieren unserer Website unerlässlich und können daher nicht deaktiviert werden. Ohne sie könnten z. B. keine Inhalte auf unserer Seite angezeigt werden oder das Login würde nicht funktionieren.',
),
assembleCategoryAnalytics(
'Analytische Cookies',
'Wir verwenden diese Cookies, um zu verfolgen, wie viele Personen unsere Website besuchen und wie sie sie nutzen. Auf diese Weise können wir die Website und andere Dienste kontinuierlich verbessern.',
),
assembleCategoryFunctionality(
'Funktionale Cookies',
'Diese Cookies machen unsere Website leistungsfähiger und funktionieren besser. Sie ermöglichen uns zum Beispiel die Nutzung des Chats, damit wir Ihre Fragen schnell und einfach beantworten können.',
),
assembleCategoryAd(
'Marketing Cookies',
'Mit diesen Cookies können wir messen, wie effektiv unsere Werbung und gezielte Angebote unserer Dienste sind. Marketing Cookies ermöglichen es uns, Sie online auf Nachrichten hinzuweisen, die für Sie von Interesse sein könnten.',
),
assembleCategoryPersonalization(
'Personalisierung Cookies',
'Unsere Dienste funktionieren besser, wenn wir sie auf den einzelnen Nutzer zuschneiden können. Durch die Aktivierung von Personalisierungs-Cookies erhöhen Sie die Wahrscheinlichkeit, dass Sie genau die Inhalte finden, nach denen Sie suchen.',
),
],
},
};
Expand Down
70 changes: 25 additions & 45 deletions src/languages/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ import {
assembleSecondaryButton,
isSettingsButtonNotShown,
legalizeAlmaCareer,
assembleCategoryNecessary,
assembleCategoryAnalytics,
assembleCategoryFunctionality,
assembleCategoryAd,
assembleCategoryPersonalization,
} from '../utils';
import { ExtraMessages, Values, VanillaCookieConsent } from '../types';
import { CookieConsentCategory, SecondaryButtonMode } from '../constants';
Expand Down Expand Up @@ -60,51 +65,26 @@ export const config = (
`For more information about what cookies are and how we work with them, see our
<a href="https://www.almacareer.com/gdpr" target="_blank">Cookie Policy</a>.`),
},
{
title: 'Technically necessary cookies',
description: `These cookies are essential for the proper functioning of our website, and so they cannot be disabled. Without them, it would not be possible e.g. to display any content or to log in on our website.`,
toggle: {
value: CookieConsentCategory.NECESSARY,
enabled: true,
readonly: true,
},
},
{
title: 'Analytical cookies',
description: `These help us monitor how many people visit our website and how they use it. This information then enables us to continuously improve the website and other services.`,
toggle: {
value: CookieConsentCategory.ANALYTICS,
enabled: false,
readonly: false,
},
},
{
title: 'Functional cookies',
description: `Our website is even more efficient and works better thanks to these cookies. For example, they enable us to use the chat service and answer your questions quickly and easily.`,
toggle: {
value: CookieConsentCategory.FUNCTIONALITY,
enabled: false,
readonly: false,
},
},
{
title: 'Marketing cookies',
description: `These cookies help us to measure the effectiveness of our advertising and targeted service offers. Marketing cookies enable us to bring you news that may be of interest to you on the Internet.`,
toggle: {
value: CookieConsentCategory.AD,
enabled: false,
readonly: false,
},
},
{
title: 'Personalisation cookies',
description: `Our services work better if we can tailor them to specific users. By allowing personalisation cookies you increase your chances of finding the content you want.`,
toggle: {
value: CookieConsentCategory.PERSONALIZATION,
enabled: false,
readonly: false,
},
},
assembleCategoryNecessary(
'Technically necessary cookies',
'These cookies are essential for the proper functioning of our website, and so they cannot be disabled. Without them, it would not be possible e.g. to display any content or to log in on our website.',
),
assembleCategoryAnalytics(
'Analytical cookies',
'These help us monitor how many people visit our website and how they use it. This information then enables us to continuously improve the website and other services.',
),
assembleCategoryFunctionality(
'Functional cookies',
'Our website is even more efficient and works better thanks to these cookies. For example, they enable us to use the chat service and answer your questions quickly and easily.',
),
assembleCategoryAd(
'Marketing cookies',
'These cookies help us to measure the effectiveness of our advertising and targeted service offers. Marketing cookies enable us to bring you news that may be of interest to you on the Internet.',
),
assembleCategoryPersonalization(
'Personalisation cookies',
'Our services work better if we can tailor them to specific users. By allowing personalisation cookies you increase your chances of finding the content you want.',
),
],
},
};
Expand Down
Loading

0 comments on commit 6bd7ac4

Please sign in to comment.