Added translation

This commit is contained in:
Jim Martens 2023-08-11 22:15:50 +02:00
parent 93acd0935e
commit a7e66cefb6
5 changed files with 674 additions and 3 deletions

View File

@ -6,7 +6,8 @@
"start": "ng serve",
"build": "ng build",
"watch": "ng build --watch --configuration development",
"test": "ng test"
"test": "ng test",
"extract-i18n": "ng extract-i18n --output-path src/locale"
},
"private": true,
"dependencies": {

View File

@ -25,8 +25,8 @@
<span i18n="application title|The application title in the toolbar">Electoral Law</span>
<span class="spacer"></span>
<ng-container *ngIf="isLoggedIn$ | async; else loginButton">
<span class="logged-user">Logged in as {{loggedUserName$ | async}}</span>
<button mat-raised-button class="app-nav-icon" (click)="logout()">Logout</button>
<span class="logged-user" i18n>Logged in as {{loggedUserName$ | async}}</span>
<button mat-raised-button class="app-nav-icon" (click)="logout()" i18n>Logout</button>
</ng-container>
<ng-template #loginButton>
<button mat-raised-button class="app-nav-icon" (click)="login()" i18n>Login</button>

View File

@ -32,6 +32,7 @@
</trans-unit>
<trans-unit id="591462368233915495" datatype="html">
<source> Every five years, EU citizens in Hamburg can vote in the district election, parallel to the election of the European parliament. Hamburg has seven districts and each has an elected district assembly that is elected in these district elections. All citizens of the European Union, who have their permanent residence in one of the districts and are 16 years and older, can vote in the elections. </source>
<target>Alle fünf Jahre können EU-Bürger*innen in Hamburg in den Bezirkswahlen wählen, parallel zur Wahl des Europäischen Parlaments. Hamburg hat sieben Bezirke und jeder hat eine gewählte Bezirksversammlung, welche in diesen Wahlen gewählt wird. Alle Bürger*innen der Europäischen Union, welche ihren permanenten Wohnsitz in einer der Bezirke haben und mindestens 16 Jahre alt sind, können an den Wahlen teilnehmen.</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
<context context-type="linenumber">14,21</context>
@ -41,6 +42,7 @@
</trans-unit>
<trans-unit id="4099056752070361172" datatype="html">
<source>How do you vote?</source>
<target>Wie wählst du?</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
<context context-type="linenumber">23</context>
@ -49,6 +51,7 @@
</trans-unit>
<trans-unit id="4074476494948245534" datatype="html">
<source> Every voter has a total of 10 votes. These are split between five votes in the constituency of the voter and five votes for the entire district. For the constituency vote, the five votes can be allocated to a single candidate or spread between multiple candidates. The overall district votes can be given to one candidate or one party or spread between candidates and/or parties. This type of vote allocation leads to unpredictable allocation of the seats of one party to its candidates; after all, the vote count of each candidate matters. </source>
<target> Jede Wählerin hat insgesamt 10 Stimmen. Diese sind aufgeteilt zwischen fünf Stimmen im Wahlkreis der Wählerin und fünf Stimmen für den ganzen Bezirk. Die fünf Stimmen auf der Wahlkreisliste können einer einzelnen Person gegeben werden oder zwischen mehreren aufgeteilt werden. Die Stimmen auf der Bezirksliste können einer einzelnen Person, einer einzelnen Partei oder einer Kombination aus Parteien und Personen gegeben werden. Diese Art der Stimmzuteilung führt zu einer unvorhersehbaren Zuteilung der Sitze einer Partei an ihre Kandidat*innen; schließlich zählt die Stimmzahl jeder einzelnen Person auf der Liste.</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
<context context-type="linenumber">24,32</context>
@ -58,6 +61,7 @@
</trans-unit>
<trans-unit id="4063468316741669639" datatype="html">
<source>How are the winners calculated?</source>
<target>Wie werden die Gewinner ermittelt?</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
<context context-type="linenumber">34</context>
@ -66,6 +70,7 @@
</trans-unit>
<trans-unit id="614133508112125508" datatype="html">
<source> This is the tricky part. Roughly, the calculation follows this order: (1) filter out parties that did not pass the voting threshold of 3%, (2) calculate the number of seats of remaining parties, (3) calculate elected candidates in constituencies, (4) calculate elected candidates district-wide. The purpose of this application is to help you understand this calculation. </source>
<target> Das ist der schwierige Teil. Ungefähr folgt die Berechnung dieser Reihenfolge: (1) schließe Parteien aus, die die 3%-Hürde nicht geschafft haben, (2) berechne die Anzahl der Sitze der verbleibenden Parteien, (3) berechne die gewählten Kandidat*innen in den Wahlkreisen, (4) berechne die gewählten Kandidat*innen auf Bezirksebene. Der Zweck dieser Anwendung ist es, dir beim Verständnis dieser Berechnung zu helfen.</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/dashboard/dashboard.component.html</context>
<context context-type="linenumber">35,40</context>
@ -73,16 +78,240 @@
<note priority="1" from="description">An explanation how the results lead to the elected candidates</note>
<note priority="1" from="meaning">explanation</note>
</trans-unit>
<trans-unit id="6152209346905800211" datatype="html">
<source>Sort by name</source>
<target>Nach Namen sortieren</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="8953033926734869941" datatype="html">
<source>Name</source>
<target>Name</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">7</context>
</context-group>
</trans-unit>
<trans-unit id="8770053389582707328" datatype="html">
<source>Sort by profession</source>
<target>Nach Beruf sortieren</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="4846236882408369646" datatype="html">
<source>Profession</source>
<target>Beruf</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="6156331470693050231" datatype="html">
<source>Elected by</source>
<target>Gewählt durch</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">14</context>
</context-group>
</trans-unit>
<trans-unit id="2935313392461357749" datatype="html">
<source>Sorted <x id="PH" equiv-text="sortState.direction"/>ending</source>
<target>Sortiert nach <x id="PH" equiv-text="sortState.direction"/></target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">84</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.ts</context>
<context context-type="linenumber">31</context>
</context-group>
</trans-unit>
<trans-unit id="5038371268485014625" datatype="html">
<source>Sorting cleared</source>
<target>Sortierung aufgehoben</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">86</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.ts</context>
<context context-type="linenumber">33</context>
</context-group>
</trans-unit>
<trans-unit id="7611505946225768001" datatype="html">
<source>Not elected</source>
<target>Nicht gewählt</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">93</context>
</context-group>
</trans-unit>
<trans-unit id="653622155659569804" datatype="html">
<source>Constituency list vote order</source>
<target>Stimmenreihenfolge auf Wahlkreisliste</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">95</context>
</context-group>
</trans-unit>
<trans-unit id="8456382439498320725" datatype="html">
<source>District list position order</source>
<target>Listenreihenfolge der Bezirksliste</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">97</context>
</context-group>
</trans-unit>
<trans-unit id="6202583245285347133" datatype="html">
<source>District list vote order</source>
<target>Stimmenreihenfolge der Bezirksliste</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">99</context>
</context-group>
</trans-unit>
<trans-unit id="1403853851109346930" datatype="html">
<source>Seat allocation and elected candidates</source>
<target>Sitzzuteilung und gewählte Kandidat*innen</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">2</context>
</context-group>
</trans-unit>
<trans-unit id="8549415094701211060" datatype="html">
<source>Seat allocation</source>
<target>Sitzzuteilung</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
</trans-unit>
<trans-unit id="187187500641108332" datatype="html">
<source><x id="INTERPOLATION" equiv-text="{{abbreviation}}"/></source>
<target><x id="INTERPOLATION" equiv-text="{{abbreviation}}"/></target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">7</context>
</context-group>
</trans-unit>
<trans-unit id="1566538032864437775" datatype="html">
<source><x id="START_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;mat-spinner class=&quot;spinner&quot; *ngIf=&quot;showSpinner&quot;&gt;"/><x id="CLOSE_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;/mat-spinner&gt;"/> Calculate
</source>
<target><x id="START_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;mat-spinner class=&quot;spinner&quot; *ngIf=&quot;showSpinner&quot;&gt;"/><x id="CLOSE_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;/mat-spinner&gt;"/> Berechne
</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">6,8</context>
</context-group>
</trans-unit>
<trans-unit id="2620368114367873419" datatype="html">
<source>Overall results</source>
<target>Bezirksergebnisse</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">13</context>
</context-group>
</trans-unit>
<trans-unit id="5278344113066375587" datatype="html">
<source>Votes on nomination</source>
<target>Listenstimmen</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">20</context>
</context-group>
</trans-unit>
<trans-unit id="652158218369589359" datatype="html">
<source>Votes through healing</source>
<target>Stimmen durch Heilungsregel</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">25</context>
</context-group>
</trans-unit>
<trans-unit id="4355395580941190554" datatype="html">
<source>Constituency results</source>
<target>Wahlkreisergebnisse</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">39</context>
</context-group>
</trans-unit>
<trans-unit id="8889535199141263248" datatype="html">
<source>Elections</source>
<target>Wahlen</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">3</context>
</context-group>
<note priority="1" from="description">page title</note>
</trans-unit>
<trans-unit id="1286983255645370171" datatype="html">
<source>Day</source>
<target>Tag</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
</trans-unit>
<trans-unit id="6893679253240579856" datatype="html">
<source># of seats</source>
<target># Sitze</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">15</context>
</context-group>
</trans-unit>
<trans-unit id="6845676120094532565" datatype="html">
<source>Voting threshold</source>
<target>Prozenthürde</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">19</context>
</context-group>
</trans-unit>
<trans-unit id="7180026827337560343" datatype="html">
<source>Sort by party</source>
<target>Nach Partei sortieren</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="2779790274425512112" datatype="html">
<source>Party</source>
<target>Partei</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="4969037929600968138" datatype="html">
<source>Sort by seats</source>
<target>Nach Sitzen sortieren</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="5376258449190300543" datatype="html">
<source>Seats</source>
<target>Sitze</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="3164042050176092352" datatype="html">
<source>You are not logged in which prevents data from loading</source>
<target>Du bist nicht eingeloggt, was das Laden von Daten verhindert</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/messages/messages.service.ts</context>
<context context-type="linenumber">10</context>
@ -90,6 +319,7 @@
</trans-unit>
<trans-unit id="3621365427297958895" datatype="html">
<source>You don&apos;t have sufficient authorization to view the data</source>
<target>Du hast keine ausreichende Berechtigung, um die Daten einzusehen</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/messages/messages.service.ts</context>
<context context-type="linenumber">11</context>
@ -97,6 +327,7 @@
</trans-unit>
<trans-unit id="8030424428239915087" datatype="html">
<source>An internal server error occurred. Sorry for the inconvenience.</source>
<target>Ein interner Serverfehler ist aufgetreten. Sorry für die Unannehmlichkeit.</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/messages/messages.service.ts</context>
<context context-type="linenumber">12</context>
@ -104,6 +335,7 @@
</trans-unit>
<trans-unit id="8152446840184622740" datatype="html">
<source>An unknown error occurred. Sorry for the inconvenience.</source>
<target>Ein unbekannter Fehler ist aufgetreten. Sorry für die Unannehmlichkeit.</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/messages/messages.service.ts</context>
<context context-type="linenumber">13</context>
@ -111,6 +343,7 @@
</trans-unit>
<trans-unit id="4330763172337088682" datatype="html">
<source>Menu</source>
<target>Menü</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">5</context>
@ -120,6 +353,7 @@
</trans-unit>
<trans-unit id="7031178590089074927" datatype="html">
<source>Elections</source>
<target>Wahlen</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">7</context>
@ -129,6 +363,7 @@
</trans-unit>
<trans-unit id="7866051700047887455" datatype="html">
<source>Electoral Law</source>
<target>Wahlrecht</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">25</context>
@ -136,8 +371,25 @@
<note priority="1" from="description">The application title in the toolbar</note>
<note priority="1" from="meaning">application title</note>
</trans-unit>
<trans-unit id="2448391510242468907" datatype="html">
<source>Logged in as <x id="INTERPOLATION" equiv-text="{{loggedUserName$ | async}}"/></source>
<target>Eingeloggt als <x id="INTERPOLATION" equiv-text="{{loggedUserName$ | async}}"/></target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">28,29</context>
</context-group>
</trans-unit>
<trans-unit id="3797778920049399855" datatype="html">
<source>Logout</source>
<target>Ausloggen</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">29</context>
</context-group>
</trans-unit>
<trans-unit id="2454050363478003966" datatype="html">
<source>Login</source>
<target>Login</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">32</context>

View File

@ -70,6 +70,152 @@
<note priority="1" from="description">An explanation how the results lead to the elected candidates</note>
<note priority="1" from="meaning">explanation</note>
</trans-unit>
<trans-unit id="6152209346905800211" datatype="html">
<source>Sort by name</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="8953033926734869941" datatype="html">
<source>Name</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">7</context>
</context-group>
</trans-unit>
<trans-unit id="8770053389582707328" datatype="html">
<source>Sort by profession</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="4846236882408369646" datatype="html">
<source>Profession</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="6156331470693050231" datatype="html">
<source>Elected by</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">14</context>
</context-group>
</trans-unit>
<trans-unit id="2935313392461357749" datatype="html">
<source>Sorted <x id="PH" equiv-text="sortState.direction"/>ending</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">84</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.ts</context>
<context context-type="linenumber">31</context>
</context-group>
</trans-unit>
<trans-unit id="5038371268485014625" datatype="html">
<source>Sorting cleared</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">86</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.ts</context>
<context context-type="linenumber">33</context>
</context-group>
</trans-unit>
<trans-unit id="7611505946225768001" datatype="html">
<source>Not elected</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">93</context>
</context-group>
</trans-unit>
<trans-unit id="653622155659569804" datatype="html">
<source>Constituency list vote order</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">95</context>
</context-group>
</trans-unit>
<trans-unit id="8456382439498320725" datatype="html">
<source>District list position order</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">97</context>
</context-group>
</trans-unit>
<trans-unit id="6202583245285347133" datatype="html">
<source>District list vote order</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">99</context>
</context-group>
</trans-unit>
<trans-unit id="1403853851109346930" datatype="html">
<source>Seat allocation and elected candidates</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">2</context>
</context-group>
</trans-unit>
<trans-unit id="8549415094701211060" datatype="html">
<source>Seat allocation</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
</trans-unit>
<trans-unit id="187187500641108332" datatype="html">
<source><x id="INTERPOLATION" equiv-text="{{abbreviation}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">7</context>
</context-group>
</trans-unit>
<trans-unit id="1566538032864437775" datatype="html">
<source><x id="START_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;mat-spinner class=&quot;spinner&quot; *ngIf=&quot;showSpinner&quot;&gt;"/><x id="CLOSE_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;/mat-spinner&gt;"/> Calculate
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">6,8</context>
</context-group>
</trans-unit>
<trans-unit id="2620368114367873419" datatype="html">
<source>Overall results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">13</context>
</context-group>
</trans-unit>
<trans-unit id="5278344113066375587" datatype="html">
<source>Votes on nomination</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">20</context>
</context-group>
</trans-unit>
<trans-unit id="652158218369589359" datatype="html">
<source>Votes through healing</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">25</context>
</context-group>
</trans-unit>
<trans-unit id="4355395580941190554" datatype="html">
<source>Constituency results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">39</context>
</context-group>
</trans-unit>
<trans-unit id="8889535199141263248" datatype="html">
<source>Elections</source>
<context-group purpose="location">
@ -78,6 +224,55 @@
</context-group>
<note priority="1" from="description">page title</note>
</trans-unit>
<trans-unit id="1286983255645370171" datatype="html">
<source>Day</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
</trans-unit>
<trans-unit id="6893679253240579856" datatype="html">
<source># of seats</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">15</context>
</context-group>
</trans-unit>
<trans-unit id="6845676120094532565" datatype="html">
<source>Voting threshold</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">19</context>
</context-group>
</trans-unit>
<trans-unit id="7180026827337560343" datatype="html">
<source>Sort by party</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="2779790274425512112" datatype="html">
<source>Party</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="4969037929600968138" datatype="html">
<source>Sort by seats</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="5376258449190300543" datatype="html">
<source>Seats</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="3164042050176092352" datatype="html">
<source>You are not logged in which prevents data from loading</source>
<context-group purpose="location">
@ -133,6 +328,20 @@
<note priority="1" from="description">The application title in the toolbar</note>
<note priority="1" from="meaning">application title</note>
</trans-unit>
<trans-unit id="2448391510242468907" datatype="html">
<source>Logged in as <x id="INTERPOLATION" equiv-text="{{loggedUserName$ | async}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">28,29</context>
</context-group>
</trans-unit>
<trans-unit id="3797778920049399855" datatype="html">
<source>Logout</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">29</context>
</context-group>
</trans-unit>
<trans-unit id="2454050363478003966" datatype="html">
<source>Login</source>
<context-group purpose="location">

View File

@ -70,6 +70,152 @@
<note priority="1" from="description">An explanation how the results lead to the elected candidates</note>
<note priority="1" from="meaning">explanation</note>
</trans-unit>
<trans-unit id="6152209346905800211" datatype="html">
<source>Sort by name</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="8953033926734869941" datatype="html">
<source>Name</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">7</context>
</context-group>
</trans-unit>
<trans-unit id="8770053389582707328" datatype="html">
<source>Sort by profession</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="4846236882408369646" datatype="html">
<source>Profession</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="6156331470693050231" datatype="html">
<source>Elected by</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.html</context>
<context context-type="linenumber">14</context>
</context-group>
</trans-unit>
<trans-unit id="2935313392461357749" datatype="html">
<source>Sorted <x id="PH" equiv-text="sortState.direction"/>ending</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">84</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.ts</context>
<context context-type="linenumber">31</context>
</context-group>
</trans-unit>
<trans-unit id="5038371268485014625" datatype="html">
<source>Sorting cleared</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">86</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.ts</context>
<context context-type="linenumber">33</context>
</context-group>
</trans-unit>
<trans-unit id="7611505946225768001" datatype="html">
<source>Not elected</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">93</context>
</context-group>
</trans-unit>
<trans-unit id="653622155659569804" datatype="html">
<source>Constituency list vote order</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">95</context>
</context-group>
</trans-unit>
<trans-unit id="8456382439498320725" datatype="html">
<source>District list position order</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">97</context>
</context-group>
</trans-unit>
<trans-unit id="6202583245285347133" datatype="html">
<source>District list vote order</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/elected-candidates/elected-candidates.component.ts</context>
<context context-type="linenumber">99</context>
</context-group>
</trans-unit>
<trans-unit id="1403853851109346930" datatype="html">
<source>Seat allocation and elected candidates</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">2</context>
</context-group>
</trans-unit>
<trans-unit id="8549415094701211060" datatype="html">
<source>Seat allocation</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
</trans-unit>
<trans-unit id="187187500641108332" datatype="html">
<source><x id="INTERPOLATION" equiv-text="{{abbreviation}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election-result/election-result.component.html</context>
<context context-type="linenumber">7</context>
</context-group>
</trans-unit>
<trans-unit id="1566538032864437775" datatype="html">
<source><x id="START_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;mat-spinner class=&quot;spinner&quot; *ngIf=&quot;showSpinner&quot;&gt;"/><x id="CLOSE_TAG_MAT_SPINNER" ctype="x-mat_spinner" equiv-text="&lt;/mat-spinner&gt;"/> Calculate
</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">6,8</context>
</context-group>
</trans-unit>
<trans-unit id="2620368114367873419" datatype="html">
<source>Overall results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">13</context>
</context-group>
</trans-unit>
<trans-unit id="5278344113066375587" datatype="html">
<source>Votes on nomination</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">20</context>
</context-group>
</trans-unit>
<trans-unit id="652158218369589359" datatype="html">
<source>Votes through healing</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">25</context>
</context-group>
</trans-unit>
<trans-unit id="4355395580941190554" datatype="html">
<source>Constituency results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/election/election.component.html</context>
<context context-type="linenumber">39</context>
</context-group>
</trans-unit>
<trans-unit id="8889535199141263248" datatype="html">
<source>Elections</source>
<context-group purpose="location">
@ -78,6 +224,55 @@
</context-group>
<note priority="1" from="description">page title</note>
</trans-unit>
<trans-unit id="1286983255645370171" datatype="html">
<source>Day</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
</trans-unit>
<trans-unit id="6893679253240579856" datatype="html">
<source># of seats</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">15</context>
</context-group>
</trans-unit>
<trans-unit id="6845676120094532565" datatype="html">
<source>Voting threshold</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/landingpage/landing-page.component.html</context>
<context context-type="linenumber">19</context>
</context-group>
</trans-unit>
<trans-unit id="7180026827337560343" datatype="html">
<source>Sort by party</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="2779790274425512112" datatype="html">
<source>Party</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">5</context>
</context-group>
</trans-unit>
<trans-unit id="4969037929600968138" datatype="html">
<source>Sort by seats</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="5376258449190300543" datatype="html">
<source>Seats</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/elections/seat-allocation/seat-allocation.component.html</context>
<context context-type="linenumber">10</context>
</context-group>
</trans-unit>
<trans-unit id="3164042050176092352" datatype="html">
<source>You are not logged in which prevents data from loading</source>
<context-group purpose="location">
@ -133,6 +328,20 @@
<note priority="1" from="description">The application title in the toolbar</note>
<note priority="1" from="meaning">application title</note>
</trans-unit>
<trans-unit id="2448391510242468907" datatype="html">
<source>Logged in as <x id="INTERPOLATION" equiv-text="{{loggedUserName$ | async}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">28,29</context>
</context-group>
</trans-unit>
<trans-unit id="3797778920049399855" datatype="html">
<source>Logout</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/navigation/navigation.component.html</context>
<context context-type="linenumber">29</context>
</context-group>
</trans-unit>
<trans-unit id="2454050363478003966" datatype="html">
<source>Login</source>
<context-group purpose="location">