Skip to content

Commit 371692a

Browse files
committed
feat(core): add media i18n values
Signed-off-by: Cory Rylan <crylan@nvidia.com>
1 parent 287e6c3 commit 371692a

6 files changed

Lines changed: 87 additions & 46 deletions

File tree

‎projects/core/src/internal/controllers/i18n.controller.test.ts‎

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,21 @@ describe('i18n.controller', () => {
7474
files: 'files',
7575
dragAndDrop: 'drag & drop',
7676
browseFiles: 'browse files',
77-
maxFileSize: 'max file size'
77+
maxFileSize: 'max file size',
78+
currentTime: 'current time',
79+
enterFullscreen: 'enter full screen',
80+
exitFullscreen: 'exit full screen',
81+
muteMedia: 'mute media',
82+
pauseMedia: 'pause media',
83+
playMedia: 'play media',
84+
playbackRate: 'playback rate',
85+
playbackRateOption: '{rate}x',
86+
seekBackward: 'seek backward {value} seconds',
87+
seekForward: 'seek forward {value} seconds',
88+
seekToEnd: 'seek to end',
89+
seekToStart: 'seek to start',
90+
unmuteMedia: 'unmute media',
91+
volume: 'volume'
7892
});
7993
});
8094

@@ -131,7 +145,21 @@ describe('i18n.controller', () => {
131145
files: 'files',
132146
dragAndDrop: 'drag & drop',
133147
browseFiles: 'browse files',
134-
maxFileSize: 'max file size'
148+
maxFileSize: 'max file size',
149+
currentTime: 'current time',
150+
enterFullscreen: 'enter full screen',
151+
exitFullscreen: 'exit full screen',
152+
muteMedia: 'mute media',
153+
pauseMedia: 'pause media',
154+
playMedia: 'play media',
155+
playbackRate: 'playback rate',
156+
playbackRateOption: '{rate}x',
157+
seekBackward: 'seek backward {value} seconds',
158+
seekForward: 'seek forward {value} seconds',
159+
seekToEnd: 'seek to end',
160+
seekToStart: 'seek to start',
161+
unmuteMedia: 'unmute media',
162+
volume: 'volume'
135163
});
136164
});
137165
});

‎projects/core/src/internal/services/i18n.service.test.ts‎

Lines changed: 20 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,27 @@ describe('I18nService', () => {
4848
dragAndDrop: 'drag & drop',
4949
browseFiles: 'browse files',
5050
maxFileSize: 'max file size',
51-
create: 'create'
51+
create: 'create',
52+
currentTime: 'current time',
53+
enterFullscreen: 'enter full screen',
54+
exitFullscreen: 'exit full screen',
55+
muteMedia: 'mute media',
56+
pauseMedia: 'pause media',
57+
playMedia: 'play media',
58+
playbackRate: 'playback rate',
59+
playbackRateOption: '{rate}x',
60+
seekBackward: 'seek backward {value} seconds',
61+
seekForward: 'seek forward {value} seconds',
62+
seekToEnd: 'seek to end',
63+
seekToStart: 'seek to start',
64+
unmuteMedia: 'unmute media',
65+
volume: 'volume'
5266
});
5367
});
5468

5569
it('should update i18n state',()=>{
5670
constoriginal={ ...I18nService.i18n};
57-
58-
I18nService.update({
71+
consttranslations={
5972
close: 'fermer',
6073
copy: 'copie',
6174
copied: 'copié',
@@ -93,47 +106,11 @@ describe('I18nService', () => {
93106
browseFiles: 'browse files',
94107
maxFileSize: 'max file size',
95108
create: 'créer'
96-
});
109+
};
97110

98-
expect(I18nService.i18n).toStrictEqual({
99-
close: 'fermer',
100-
copy: 'copie',
101-
copied: 'copié',
102-
expand: 'étendre',
103-
select: 'choisir',
104-
selected: 'choisir',
105-
sort: 'classer',
106-
show: 'montrer',
107-
hide: 'cacher',
108-
loading: 'bourrage',
109-
previous: 'précédente',
110-
next: 'suivante',
111-
start: 'page de démarrage',
112-
end: 'page de fin',
113-
currentPage: 'page actuelle',
114-
noResults: 'aucun résultat',
115-
status: 'statut',
116-
information: 'information',
117-
warning: 'avertissement',
118-
success: 'succès',
119-
danger: 'danger',
120-
trend: "s'orienter",
121-
down: 'vers le bas',
122-
up: 'en haut',
123-
neutral: 'neutre',
124-
of: 'de',
125-
theme: 'thème',
126-
scale: 'échelle',
127-
reducedMotion: 'mouvement réduit',
128-
colorScheme: 'schéma de couleur',
129-
resize: 'redimensionner',
130-
or: 'or',
131-
files: 'files',
132-
dragAndDrop: 'drag & drop',
133-
browseFiles: 'browse files',
134-
maxFileSize: 'max file size',
135-
create: 'créer'
136-
});
111+
I18nService.update(translations);
112+
113+
expect(I18nService.i18n).toStrictEqual({ ...original, ...translations});
137114

138115
I18nService.update(original);
139116
});

‎projects/core/src/internal/services/i18n.service.ts‎

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,20 @@ export interface I18nStrings {
4141
browseFiles: string;
4242
maxFileSize: string;
4343
create: string;
44+
currentTime: string;
45+
enterFullscreen: string;
46+
exitFullscreen: string;
47+
muteMedia: string;
48+
pauseMedia: string;
49+
playMedia: string;
50+
playbackRate: string;
51+
playbackRateOption: string;
52+
seekBackward: string;
53+
seekForward: string;
54+
seekToEnd: string;
55+
seekToStart: string;
56+
unmuteMedia: string;
57+
volume: string;
4458
}
4559

4660
consti18nRegistry={
@@ -80,7 +94,21 @@ const i18nRegistry = {
8094
dragAndDrop: 'drag & drop',
8195
browseFiles: 'browse files',
8296
maxFileSize: 'max file size',
83-
create: 'create'
97+
create: 'create',
98+
currentTime: 'current time',
99+
enterFullscreen: 'enter full screen',
100+
exitFullscreen: 'exit full screen',
101+
muteMedia: 'mute media',
102+
pauseMedia: 'pause media',
103+
playMedia: 'play media',
104+
playbackRate: 'playback rate',
105+
playbackRateOption: '{rate}x',
106+
seekBackward: 'seek backward {value} seconds',
107+
seekForward: 'seek forward {value} seconds',
108+
seekToEnd: 'seek to end',
109+
seekToStart: 'seek to start',
110+
unmuteMedia: 'unmute media',
111+
volume: 'volume'
84112
};
85113

86114
exportclassI18nService_{

‎projects/internals/metadata/src/services/api.service.test.ts‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,10 @@ describe('ApiService', () => {
3939
// Both searches should return the same top results since "nve" is a stop word
4040
expect(badgeResults[0]?.name).toBe(nveBadgeResults[0]?.name);
4141
});
42+
43+
it('should prioritize exact matches over fuzzy matches',async()=>{
44+
constresults=awaitApiService.search('nve-button');
45+
46+
expect(results[0]?.name).toBe('nve-button');
47+
});
4248
});

‎projects/internals/metadata/src/services/projects.service.test.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,6 @@ describe('ProjectsService', () => {
99
constprojects=awaitProjectsService.getData();
1010
expect(projects).toBeDefined();
1111
expect(projects.data.length).toBeGreaterThan(0);
12+
expect(awaitProjectsService.getData()).toBe(projects);
1213
});
1314
});

‎projects/internals/metadata/src/services/releases.service.test.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,6 @@ describe('ReleasesService', () => {
1212
expect(releases.data).toBeDefined();
1313
expect(releases.data.length).toBeGreaterThan(1);
1414
expect(releases.data.some(release=>release.name==='@nvidia-elements/core-v2.0.2')).toBe(true);
15+
expect(awaitReleasesService.getData()).toBe(releases);
1516
});
1617
});

0 commit comments

Comments
 (0)