Skip to content

Commit

Permalink
Feat: Add Bosnian (bs) language
Browse files Browse the repository at this point in the history
  • Loading branch information
OndraM committed Apr 9, 2024
1 parent b3c8990 commit 096b6bd
Show file tree
Hide file tree
Showing 8 changed files with 419 additions and 5 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,7 @@ initLmcCookieConsentManager( // when loaded as a module, these options are passe
### Supported languages
Translation of the user interface is provided in the following languages:
- Bosnian (`bs`)
- Czech (`cs`)
- German (`de`)
- English (`en`)
Expand Down
4 changes: 4 additions & 0 deletions examples/languages.html
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,10 @@ <h1 class="display-1 mt-md-3">Languages</h1>
<div class="row justify-content-lg-center">
<div class="col col-lg-10 col-xl-8">
<h2 class="mt-md-3 mb-3">Select language</h2>
<div class="form-check">
<input type="radio" class="form-check-input" id="lang-select-bs" value="bs" autocomplete="off" checked name="lang-select" onclick="toggleLanguage();">
<label class="form-check-label" for="lang-select-bs">Bosnian</label>
</div>
<div class="form-check">
<input type="radio" class="form-check-input" id="lang-select-cs" value="cs" autocomplete="off" checked name="lang-select" onclick="toggleLanguage();">
<label class="form-check-label" for="lang-select-cs">Czech</label>
Expand Down
305 changes: 302 additions & 3 deletions src/languages/__tests__/__snapshots__/langConfig.test.ts.snap
Original file line number Diff line number Diff line change
@@ -1,5 +1,304 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`config bs should return localization object for acceptNecessary button mode 1`] = `
{
"consent_modal": {
"description": "
<p>Bolje razumijevanje onoga što vas zanima, pokazat ćemo vam relevantniji sadržaj.</p>
<p>
Klikom na dugme „Prihvati sve“, dajete
kompanijama
test1, test2 i test3
svoju saglasnost za korištenje kolačića za personalizaciju, analitiku i ciljani marketing.
Možete prilagoditi upotrebu kolačića u svojim <strong><a href="" data-cc="c-settings">prilagođenim postavkama</a></strong>.
</p>",
"primary_btn": {
"role": "accept_all",
"text": "Prihvati sve",
},
"secondary_btn": {
"role": "accept_necessary",
"text": "Prihvatiti neophodno",
},
"title": "Kolačići čine našu stranicu još boljom",
},
"settings_modal": {
"accept_all_btn": "Prihvati sve",
"blocks": [
{
"description": "Ako želite da izvučete maksimum iz naše web stranice, najbolje je dozvoliti sve vrste kolačića.
Više informacija o tome šta su kolačići i kako radimo s njima možete pronaći na stranici <a href="https://www.almacareer.com/gdpr" target="_blank">Politika privatnosti</a>.",
},
{
"description": "Ovi kolačići su neophodni za pravilno funkcioniranje naše web stranice i stoga se ne mogu onemogućiti. Bez njih ne bi bilo moguće npr. za prikaz bilo kojeg sadržaja ili za prijavu na našu web stranicu.",
"title": "Tehnički potrebni kolačići",
"toggle": {
"enabled": true,
"readonly": true,
"value": "necessary",
},
},
{
"description": "To nam pomaže da pratimo koliko ljudi posjeti našu web stranicu i kako je koriste. Ove informacije nam zatim omogućavaju da kontinuirano poboljšavamo web stranicu i druge usluge.",
"title": "Analitički kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "analytics",
},
},
{
"description": "Naša web stranica je još efikasnija i radi bolje zahvaljujući ovim kolačićima. Na primjer, omogućavaju nam korištenje usluge chata i brzo i jednostavno odgovaranje na vaša pitanja.",
"title": "Funkcionalni kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "functionality",
},
},
{
"description": "Ovi kolačići nam pomažu da izmjerimo učinkovitost našeg oglašavanja i ciljanih ponuda usluga. Marketinški kolačići nam omogućavaju da vam donesemo vijesti koje bi vas mogle zanimati na Internetu.",
"title": "Marketinški kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "ad",
},
},
{
"description": "Naše usluge bolje funkcioniraju ako ih možemo prilagoditi određenim korisnicima. Dopuštanjem kolačića za personalizaciju povećavate svoje šanse da pronađete sadržaj koji želite.",
"title": "Kolačići za personalizaciju",
"toggle": {
"enabled": false,
"readonly": false,
"value": "personalization",
},
},
],
"cookie_table_headers": [
{
"name": "Naziv",
},
{
"description": "Opis",
},
{
"expiration": "Isticanje",
},
],
"reject_all_btn": "Prihvatiti neophodno",
"save_settings_btn": "Sačuvaj postavke",
"title": "Prilagođenim postavkama kolačića",
},
}
`;

exports[`config bs should return localization object for showSettings button mode 1`] = `
{
"consent_modal": {
"description": "
<p>Bolje razumijevanje onoga što vas zanima, pokazat ćemo vam relevantniji sadržaj.</p>
<p>
Klikom na dugme „Prihvati sve“, dajete
kompanijama
test1, test2 i test3
svoju saglasnost za korištenje kolačića za personalizaciju, analitiku i ciljani marketing.
</p>",
"primary_btn": {
"role": "accept_all",
"text": "Prihvati sve",
},
"secondary_btn": {
"role": "settings",
"text": "Prilagođenim postavkama",
},
"title": "Kolačići čine našu stranicu još boljom",
},
"settings_modal": {
"accept_all_btn": "Prihvati sve",
"blocks": [
{
"description": "Ako želite da izvučete maksimum iz naše web stranice, najbolje je dozvoliti sve vrste kolačića.
Više informacija o tome šta su kolačići i kako radimo s njima možete pronaći na stranici <a href="https://www.almacareer.com/gdpr" target="_blank">Politika privatnosti</a>.",
},
{
"description": "Ovi kolačići su neophodni za pravilno funkcioniranje naše web stranice i stoga se ne mogu onemogućiti. Bez njih ne bi bilo moguće npr. za prikaz bilo kojeg sadržaja ili za prijavu na našu web stranicu.",
"title": "Tehnički potrebni kolačići",
"toggle": {
"enabled": true,
"readonly": true,
"value": "necessary",
},
},
{
"description": "To nam pomaže da pratimo koliko ljudi posjeti našu web stranicu i kako je koriste. Ove informacije nam zatim omogućavaju da kontinuirano poboljšavamo web stranicu i druge usluge.",
"title": "Analitički kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "analytics",
},
},
{
"description": "Naša web stranica je još efikasnija i radi bolje zahvaljujući ovim kolačićima. Na primjer, omogućavaju nam korištenje usluge chata i brzo i jednostavno odgovaranje na vaša pitanja.",
"title": "Funkcionalni kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "functionality",
},
},
{
"description": "Ovi kolačići nam pomažu da izmjerimo učinkovitost našeg oglašavanja i ciljanih ponuda usluga. Marketinški kolačići nam omogućavaju da vam donesemo vijesti koje bi vas mogle zanimati na Internetu.",
"title": "Marketinški kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "ad",
},
},
{
"description": "Naše usluge bolje funkcioniraju ako ih možemo prilagoditi određenim korisnicima. Dopuštanjem kolačića za personalizaciju povećavate svoje šanse da pronađete sadržaj koji želite.",
"title": "Kolačići za personalizaciju",
"toggle": {
"enabled": false,
"readonly": false,
"value": "personalization",
},
},
],
"cookie_table_headers": [
{
"name": "Naziv",
},
{
"description": "Opis",
},
{
"expiration": "Isticanje",
},
],
"reject_all_btn": "Prihvatiti neophodno",
"save_settings_btn": "Sačuvaj postavke",
"title": "Prilagođenim postavkama kolačića",
},
}
`;

exports[`config bs should return localization object with cookie table 1`] = `
{
"consent_modal": {
"description": "
<p>Bolje razumijevanje onoga što vas zanima, pokazat ćemo vam relevantniji sadržaj.</p>
<p>
Klikom na dugme „Prihvati sve“, dajete
kompaniji
Alma Career i drugim kompanijama iz njene poslovne grupe
svoju saglasnost za korištenje kolačića za personalizaciju, analitiku i ciljani marketing.
</p>",
"primary_btn": {
"role": "accept_all",
"text": "Prihvati sve",
},
"secondary_btn": {
"role": "settings",
"text": "Prilagođenim postavkama",
},
"title": "Kolačići čine našu stranicu još boljom",
},
"settings_modal": {
"accept_all_btn": "Prihvati sve",
"blocks": [
{
"description": "Ako želite da izvučete maksimum iz naše web stranice, najbolje je dozvoliti sve vrste kolačića.
Više informacija o tome šta su kolačići i kako radimo s njima možete pronaći na stranici <a href="https://www.almacareer.com/gdpr" target="_blank">Politika privatnosti</a>.",
},
{
"cookie_table": [
{
"description": "Google Analytics description ...",
"expiration": "1 year",
"is_regex": true,
"name": "^_ga",
},
{
"description": "Foo description",
"expiration": "end of session",
"name": "foo",
},
],
"description": "Ovi kolačići su neophodni za pravilno funkcioniranje naše web stranice i stoga se ne mogu onemogućiti. Bez njih ne bi bilo moguće npr. za prikaz bilo kojeg sadržaja ili za prijavu na našu web stranicu.",
"title": "Tehnički potrebni kolačići",
"toggle": {
"enabled": true,
"readonly": true,
"value": "necessary",
},
},
{
"description": "To nam pomaže da pratimo koliko ljudi posjeti našu web stranicu i kako je koriste. Ove informacije nam zatim omogućavaju da kontinuirano poboljšavamo web stranicu i druge usluge.",
"title": "Analitički kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "analytics",
},
},
{
"description": "Naša web stranica je još efikasnija i radi bolje zahvaljujući ovim kolačićima. Na primjer, omogućavaju nam korištenje usluge chata i brzo i jednostavno odgovaranje na vaša pitanja.",
"title": "Funkcionalni kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "functionality",
},
},
{
"description": "Ovi kolačići nam pomažu da izmjerimo učinkovitost našeg oglašavanja i ciljanih ponuda usluga. Marketinški kolačići nam omogućavaju da vam donesemo vijesti koje bi vas mogle zanimati na Internetu.",
"title": "Marketinški kolačići",
"toggle": {
"enabled": false,
"readonly": false,
"value": "ad",
},
},
{
"cookie_table": [
{
"description": "Session log description ...",
"expiration": "1 year",
"name": "sessionLog_id",
},
],
"description": "Naše usluge bolje funkcioniraju ako ih možemo prilagoditi određenim korisnicima. Dopuštanjem kolačića za personalizaciju povećavate svoje šanse da pronađete sadržaj koji želite.",
"title": "Kolačići za personalizaciju",
"toggle": {
"enabled": false,
"readonly": false,
"value": "personalization",
},
},
],
"cookie_table_headers": [
{
"name": "Naziv",
},
{
"description": "Opis",
},
{
"expiration": "Isticanje",
},
],
"reject_all_btn": "Prihvatiti neophodno",
"save_settings_btn": "Sačuvaj postavke",
"title": "Prilagođenim postavkama kolačića",
},
}
`;

exports[`config cs should return localization object for acceptNecessary button mode 1`] = `
{
"consent_modal": {
Expand Down Expand Up @@ -1198,7 +1497,7 @@ exports[`config hr should return localization object for acceptNecessary button
<p>
Klikom na gumb „Prihvati sve“, dajete
test1, test2 i test3
privolu za upotrebu kolačića za personalizaciju, analitiku i ciljani marketing..
privolu za upotrebu kolačića za personalizaciju, analitiku i ciljani marketing.
Možete prilagoditi upotrebu kolačića u svojim <strong><a href="" data-cc="c-settings">prilagođenim postavkama</a></strong>.
</p>",
"primary_btn": {
Expand Down Expand Up @@ -1290,7 +1589,7 @@ exports[`config hr should return localization object for showSettings button mod
<p>
Klikom na gumb „Prihvati sve“, dajete
test1, test2 i test3
privolu za upotrebu kolačića za personalizaciju, analitiku i ciljani marketing..
privolu za upotrebu kolačića za personalizaciju, analitiku i ciljani marketing.
</p>",
"primary_btn": {
Expand Down Expand Up @@ -1382,7 +1681,7 @@ exports[`config hr should return localization object with cookie table 1`] = `
<p>
Klikom na gumb „Prihvati sve“, dajete
tvrtkama iz poslovne grupacije Alma Career
privolu za upotrebu kolačića za personalizaciju, analitiku i ciljani marketing..
privolu za upotrebu kolačića za personalizaciju, analitiku i ciljani marketing.
</p>",
"primary_btn": {
Expand Down
2 changes: 2 additions & 0 deletions src/languages/__tests__/langConfig.test.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { config as configBs } from '../bs';
import { config as configCs } from '../cs';
import { config as configDe } from '../de';
import { config as configEn } from '../en';
Expand All @@ -15,6 +16,7 @@ import { config as configUk } from '../uk';
import { SecondaryButtonMode } from '../../constants';

describe.each([
['bs', configBs],
['cs', configCs],
['de', configDe],
['en', configEn],
Expand Down
2 changes: 1 addition & 1 deletion src/languages/__tests__/loader.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ describe('loader', () => {
describe('assembleLanguagesConfig', () => {
it('should assemble configs for all languages', () => {
const config = assembleLanguagesConfig(['Alma Career'], {}, SecondaryButtonMode.ACCEPT_NECESSARY, {});
expect(Object.keys(config)).toHaveLength(14);
expect(Object.keys(config)).toHaveLength(15);
});
});
});
Loading

0 comments on commit 096b6bd

Please sign in to comment.