@astryxdesign/core 0.7.1 → 0.7.2-canary.b69b2df
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +38 -14
- package/dist/MultiSelector/hooks.d.ts.map +1 -1
- package/dist/MultiSelector/hooks.js +3 -1
- package/dist/Pagination/Pagination.d.ts +8 -5
- package/dist/Pagination/Pagination.d.ts.map +1 -1
- package/dist/Pagination/Pagination.js +21 -8
- package/dist/Switch/Switch.d.ts +1 -1
- package/dist/Switch/Switch.d.ts.map +1 -1
- package/dist/Switch/Switch.js +6 -0
- package/dist/astryx.css +1 -0
- package/dist/i18n/generated-locales/en.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/en.generated.js +19 -0
- package/dist/i18n/generated-locales/pseudo.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/pseudo.generated.js +19 -0
- package/locales/en.json +76 -0
- package/locales/pseudo.json +57 -0
- package/package.json +4 -4
- package/src/Button/Button.doc.mjs +2 -2
- package/src/Button/Button.test.tsx +155 -9
- package/src/Button/Button.tsx +39 -16
- package/src/Button/__tests__/Button.a11y.known-failures.ts +1 -62
- package/src/Button/__tests__/Button.a11y.states.ts +0 -10
- package/src/IconButton/IconButton.doc.mjs +2 -2
- package/src/IconButton/IconButton.test.tsx +3 -1
- package/src/MultiSelector/hooks.ts +3 -1
- package/src/MultiSelector/useMultiCombobox.doc.mjs +267 -0
- package/src/Pagination/Pagination.doc.mjs +7 -7
- package/src/Pagination/Pagination.spec.md +9 -9
- package/src/Pagination/Pagination.test.tsx +242 -0
- package/src/Pagination/Pagination.tsx +27 -11
- package/src/Switch/Switch.test.tsx +28 -0
- package/src/Switch/Switch.tsx +6 -0
- package/src/i18n/InternationalizationProvider.doc.mjs +8 -0
- package/src/i18n/InternationalizationProvider.spec.md +252 -0
- package/src/i18n/__tests__/InternationalizationProvider.test.tsx +128 -0
- package/src/i18n/generated-locales/en.generated.ts +21 -0
- package/src/i18n/generated-locales/pseudo.generated.ts +21 -0
- package/src/i18n/useTranslator.test.tsx +37 -0
|
@@ -32,6 +32,12 @@ const FR_MESSAGES: MessagesByLocale = {
|
|
|
32
32
|
const FR_RUNTIME_MESSAGES: ProviderMessagesByLocale = {
|
|
33
33
|
fr: {'@astryx.pagination.next': 'Page suivante compacte'},
|
|
34
34
|
};
|
|
35
|
+
// One messages value mixing shapes: a generated string map for the active
|
|
36
|
+
// locale and a rich catalog for its parent.
|
|
37
|
+
const MIXED_MESSAGES: ProviderMessagesByLocale = {
|
|
38
|
+
'fr-CA': {'@astryx.pagination.next': 'Page suivante (CA)'},
|
|
39
|
+
fr: {'@astryx.pagination.previous': {defaultMessage: 'Page précédente'}},
|
|
40
|
+
};
|
|
35
41
|
const FR_OVERRIDES: Overrides = {
|
|
36
42
|
fr: {'@astryx.pagination.next': 'Suivant'},
|
|
37
43
|
};
|
|
@@ -101,6 +107,37 @@ describe('useTranslator — resolution', () => {
|
|
|
101
107
|
).toEqual({defaultMessage: 'Page suivante compacte'});
|
|
102
108
|
});
|
|
103
109
|
|
|
110
|
+
it('resolves rich and runtime catalogs mixed in one messages value', () => {
|
|
111
|
+
const {result} = renderHook(
|
|
112
|
+
() => ({
|
|
113
|
+
context: use(InternationalizationContext),
|
|
114
|
+
translate: useTranslator(),
|
|
115
|
+
}),
|
|
116
|
+
{
|
|
117
|
+
wrapper: ({children}) => (
|
|
118
|
+
<InternationalizationProvider
|
|
119
|
+
locale="fr-CA"
|
|
120
|
+
messages={MIXED_MESSAGES}>
|
|
121
|
+
{children}
|
|
122
|
+
</InternationalizationProvider>
|
|
123
|
+
),
|
|
124
|
+
},
|
|
125
|
+
);
|
|
126
|
+
|
|
127
|
+
expect(result.current.translate('@astryx.pagination.next')).toBe(
|
|
128
|
+
'Page suivante (CA)',
|
|
129
|
+
);
|
|
130
|
+
expect(result.current.translate('@astryx.pagination.previous')).toBe(
|
|
131
|
+
'Page précédente',
|
|
132
|
+
);
|
|
133
|
+
expect(result.current.context.messages).toEqual({
|
|
134
|
+
'fr-CA': {
|
|
135
|
+
'@astryx.pagination.next': {defaultMessage: 'Page suivante (CA)'},
|
|
136
|
+
},
|
|
137
|
+
fr: {'@astryx.pagination.previous': {defaultMessage: 'Page précédente'}},
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
|
|
104
141
|
it('lets a provider override beat the provider catalog', () => {
|
|
105
142
|
const {result} = renderHook(() => useTranslator(), {
|
|
106
143
|
wrapper: ({children}) => (
|