@cloud-ru/uikit-product-locale 0.18.1 → 0.18.3

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.
Files changed (50) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/cjs/__tests__/getTranslationResolver.spec.d.ts +1 -0
  3. package/dist/cjs/__tests__/getTranslationResolver.spec.js +32 -0
  4. package/dist/cjs/components/Locale.d.ts +19 -0
  5. package/dist/cjs/components/Locale.js +24 -0
  6. package/dist/cjs/components/index.d.ts +1 -0
  7. package/dist/cjs/components/index.js +17 -0
  8. package/dist/cjs/components/types.d.ts +5 -0
  9. package/dist/cjs/components/types.js +2 -0
  10. package/dist/cjs/helpers/getTranslationResolver.d.ts +2 -0
  11. package/dist/cjs/helpers/getTranslationResolver.js +36 -0
  12. package/dist/cjs/helpers/index.d.ts +2 -0
  13. package/dist/cjs/helpers/index.js +18 -0
  14. package/dist/cjs/helpers/types.d.ts +8 -0
  15. package/dist/cjs/helpers/types.js +2 -0
  16. package/dist/cjs/index.d.ts +2 -0
  17. package/dist/cjs/index.js +18 -0
  18. package/dist/cjs/locales/en_GB.d.ts +427 -0
  19. package/dist/cjs/locales/en_GB.js +433 -0
  20. package/dist/cjs/locales/index.d.ts +6 -0
  21. package/dist/cjs/locales/index.js +9 -0
  22. package/dist/cjs/locales/resolveCommonTranslations.d.ts +1 -0
  23. package/dist/cjs/locales/resolveCommonTranslations.js +22 -0
  24. package/dist/cjs/locales/ru_RU.d.ts +2 -0
  25. package/dist/cjs/locales/ru_RU.js +433 -0
  26. package/dist/esm/__tests__/getTranslationResolver.spec.d.ts +1 -0
  27. package/dist/esm/__tests__/getTranslationResolver.spec.js +30 -0
  28. package/dist/esm/components/Locale.d.ts +19 -0
  29. package/dist/esm/components/Locale.js +17 -0
  30. package/dist/esm/components/index.d.ts +1 -0
  31. package/dist/esm/components/index.js +1 -0
  32. package/dist/esm/components/types.d.ts +5 -0
  33. package/dist/esm/components/types.js +1 -0
  34. package/dist/esm/helpers/getTranslationResolver.d.ts +2 -0
  35. package/dist/esm/helpers/getTranslationResolver.js +29 -0
  36. package/dist/esm/helpers/index.d.ts +2 -0
  37. package/dist/esm/helpers/index.js +2 -0
  38. package/dist/esm/helpers/types.d.ts +8 -0
  39. package/dist/esm/helpers/types.js +1 -0
  40. package/dist/esm/index.d.ts +2 -0
  41. package/dist/esm/index.js +2 -0
  42. package/dist/esm/locales/en_GB.d.ts +427 -0
  43. package/dist/esm/locales/en_GB.js +430 -0
  44. package/dist/esm/locales/index.d.ts +6 -0
  45. package/dist/esm/locales/index.js +6 -0
  46. package/dist/esm/locales/resolveCommonTranslations.d.ts +1 -0
  47. package/dist/esm/locales/resolveCommonTranslations.js +19 -0
  48. package/dist/esm/locales/ru_RU.d.ts +2 -0
  49. package/dist/esm/locales/ru_RU.js +430 -0
  50. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 0.18.3 (2025-11-13)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **PD-3377:** removed contributors ([121640f](https://gitverse.ru/cloud-ru-tech/uikit-product/commits/121640f7b88b20a728a6ad2c39de8841532bb308))
12
+
13
+
14
+
15
+
16
+
17
+ ## 0.18.2 (2025-11-12)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **PD-3377:** contributors update to publish all packages ([719fd3e](https://gitverse.ru/cloud-ru-tech/uikit-product/commits/719fd3e1249e247443b125c47ea408d92c8395c3))
23
+
24
+
25
+
26
+
27
+
6
28
  ## 0.18.1 (2025-11-12)
7
29
 
8
30
 
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const getTranslationResolver_1 = require("../helpers/getTranslationResolver");
5
+ (0, vitest_1.describe)('getTranslationResolver', () => {
6
+ const additionalTranslations = {
7
+ 'ru-RU': { NameSpace1: { buttons: { save: 'Сохранить', cancel: 'Отмена' } } },
8
+ 'en-GB': { NameSpace1: { buttons: { save: 'Save', cancel: 'Cancel' } } },
9
+ };
10
+ (0, vitest_1.it)('should create translations locale object', () => {
11
+ const resolveWith = (0, getTranslationResolver_1.getTranslationResolver)({
12
+ PageLayout: {
13
+ PageForm: {
14
+ save: 'buttons.save',
15
+ cancel: 'buttons.cancel',
16
+ },
17
+ },
18
+ }, 'NameSpace1');
19
+ (0, vitest_1.expect)(resolveWith(additionalTranslations)).toMatchSnapshot();
20
+ });
21
+ (0, vitest_1.it)('should skip undefined key', () => {
22
+ const resolveWith = (0, getTranslationResolver_1.getTranslationResolver)({
23
+ PageLayout: {
24
+ PageForm: {
25
+ save: 'buttons.save',
26
+ ok: 'buttons.undefined_key',
27
+ },
28
+ },
29
+ }, 'NameSpace1');
30
+ (0, vitest_1.expect)(resolveWith(additionalTranslations)).toMatchSnapshot();
31
+ });
32
+ });
@@ -0,0 +1,19 @@
1
+ import { Dictionary, LocaleLang, LocaleProviderProps } from '@snack-uikit/locale';
2
+ import { AdditionalTranslations } from '../helpers';
3
+ import { GetLocaleText, LocaleComponentName, UIKitProductDictionary } from './types';
4
+ export type ProductLocaleProviderProps<D extends Dictionary, AT extends AdditionalTranslations> = LocaleProviderProps<D> & {
5
+ /**
6
+ * Общий словарь переводов из @sbercloud/spa-core/bootstrap
7
+ * @example import { additionalTranslationsResources } from "@sbercloud/spa-core/bootstrap"
8
+ */
9
+ additionalTranslationsResources: AT;
10
+ };
11
+ export declare function LocaleProvider<D extends Dictionary, AT extends AdditionalTranslations>({ children, overrideLocales, lang, fallbackLang, additionalTranslationsResources, }: ProductLocaleProviderProps<D, AT>): import("react/jsx-runtime").JSX.Element;
12
+ export declare function useLocale(): {
13
+ t: GetLocaleText<UIKitProductDictionary>;
14
+ lang: LocaleLang;
15
+ };
16
+ export declare function useLocale<C extends LocaleComponentName<UIKitProductDictionary> = LocaleComponentName<UIKitProductDictionary>>(componentName: C): {
17
+ t: GetLocaleText<UIKitProductDictionary, C>;
18
+ lang: LocaleLang;
19
+ };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LocaleProvider = LocaleProvider;
7
+ exports.useLocale = useLocale;
8
+ const jsx_runtime_1 = require("react/jsx-runtime");
9
+ const lodash_merge_1 = __importDefault(require("lodash.merge"));
10
+ const react_1 = require("react");
11
+ const locale_1 = require("@snack-uikit/locale");
12
+ const locales_1 = require("../locales");
13
+ const resolveCommonTranslations_1 = require("../locales/resolveCommonTranslations");
14
+ function LocaleProvider({ children, overrideLocales, lang, fallbackLang = 'ru-RU', additionalTranslationsResources, }) {
15
+ const memoizedLocales = (0, react_1.useMemo)(() => (0, lodash_merge_1.default)({}, locales_1.UIKIT_PRODUCT_LOCALES,
16
+ /* Тип обязывает прокинуть доп. переводы, но если это не сделать, ничего не упадет */
17
+ additionalTranslationsResources ? (0, resolveCommonTranslations_1.resolveCommonTranslations)(additionalTranslationsResources) : {}, overrideLocales), [overrideLocales, additionalTranslationsResources]);
18
+ return ((0, jsx_runtime_1.jsx)(locale_1.LocaleProvider, { lang: lang, overrideLocales: memoizedLocales, fallbackLang: fallbackLang, children: children }));
19
+ }
20
+ function useLocale(componentName) {
21
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
22
+ // @ts-expect-error
23
+ return (0, locale_1.useLocale)(componentName);
24
+ }
@@ -0,0 +1 @@
1
+ export * from './Locale';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Locale"), exports);
@@ -0,0 +1,5 @@
1
+ import { Dictionary, DottedTranslationKey, LocaleDictionary } from '@snack-uikit/locale';
2
+ import { UIKIT_PRODUCT_LOCALES } from '../locales';
3
+ export type LocaleComponentName<D extends Dictionary> = keyof LocaleDictionary<D>;
4
+ export type GetLocaleText<D extends Dictionary, T extends keyof LocaleDictionary<D> | undefined = undefined> = (key: DottedTranslationKey<D, T>) => string;
5
+ export type UIKitProductDictionary = (typeof UIKIT_PRODUCT_LOCALES)['en-GB'];
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ import { AdditionalTranslations, CommonTranslationsKeysType } from './types';
2
+ export declare const getTranslationResolver: <D extends CommonTranslationsKeysType>(data: D, nameSpace: string) => (additionalTranslations: AdditionalTranslations) => CommonTranslationsKeysType;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getTranslationResolver = void 0;
7
+ const lodash_get_1 = __importDefault(require("lodash.get"));
8
+ const lodash_set_1 = __importDefault(require("lodash.set"));
9
+ function crawler({ data, prefix = '', handler }) {
10
+ if (typeof data === 'string') {
11
+ handler(prefix, data);
12
+ }
13
+ else {
14
+ for (const key in data) {
15
+ const value = data[key];
16
+ crawler({ data: value, prefix: prefix ? `${prefix}.${key}` : key, handler });
17
+ }
18
+ }
19
+ }
20
+ const getTranslationResolver = (data, nameSpace) => (additionalTranslations) => {
21
+ const languages = Object.keys(additionalTranslations);
22
+ const result = {};
23
+ for (const lang of languages) {
24
+ crawler({
25
+ data,
26
+ handler: (path, value) => {
27
+ const text = (0, lodash_get_1.default)(additionalTranslations, `${lang}.${nameSpace}.${value}`);
28
+ if (text !== undefined) {
29
+ (0, lodash_set_1.default)(result, `${lang}.${path}`, text);
30
+ }
31
+ },
32
+ });
33
+ }
34
+ return result;
35
+ };
36
+ exports.getTranslationResolver = getTranslationResolver;
@@ -0,0 +1,2 @@
1
+ export * from './types';
2
+ export * from './getTranslationResolver';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./types"), exports);
18
+ __exportStar(require("./getTranslationResolver"), exports);
@@ -0,0 +1,8 @@
1
+ import { additionalTranslationsResources } from '@cloud-ru/common-translations';
2
+ export type DeepPartial<T> = T extends object ? {
3
+ [P in keyof T]?: DeepPartial<T[P]>;
4
+ } : T;
5
+ export type AdditionalTranslations = typeof additionalTranslationsResources;
6
+ export type CommonTranslationsKeysType = {
7
+ [key: string]: CommonTranslationsKeysType | string;
8
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ export * from './locales';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./components"), exports);
18
+ __exportStar(require("./locales"), exports);
@@ -0,0 +1,427 @@
1
+ export declare const en_GB: {
2
+ ErrorPage: {
3
+ frontendErrorTitle: string;
4
+ pageUnavailableTitle: string;
5
+ pageNotFoundTitle: string;
6
+ refreshButton: string;
7
+ actionRedirectTitle: string;
8
+ supportCenterButton: string;
9
+ mainPageLink: string;
10
+ backLink: string;
11
+ offlineTitle: string;
12
+ offlineText: string;
13
+ redirectTitle: string;
14
+ redirectText: string;
15
+ redirectButton: string;
16
+ };
17
+ FieldsPredefined: {
18
+ SelectCreate: {
19
+ buttonCreate: string;
20
+ buttonCancel: string;
21
+ buttonRefetch: string;
22
+ selectPlaceholder: string;
23
+ noData: string;
24
+ noResult: string;
25
+ loadError: string;
26
+ changeRequest: string;
27
+ noPermission: string;
28
+ };
29
+ FieldPhone: {
30
+ russia: string;
31
+ abkhazia: string;
32
+ australia: string;
33
+ austria: string;
34
+ azerbaijan: string;
35
+ albania: string;
36
+ algeria: string;
37
+ angola: string;
38
+ andorra: string;
39
+ antiguaAndBarbuda: string;
40
+ argentina: string;
41
+ armenia: string;
42
+ bahamas: string;
43
+ bangladesh: string;
44
+ barbados: string;
45
+ bahrain: string;
46
+ belarus: string;
47
+ belize: string;
48
+ belgium: string;
49
+ bosniaAndHerzegovina: string;
50
+ botswana: string;
51
+ brazil: string;
52
+ bhutan: string;
53
+ vanuatu: string;
54
+ hungary: string;
55
+ guyana: string;
56
+ guatemala: string;
57
+ germany: string;
58
+ guernsey: string;
59
+ gibraltar: string;
60
+ honduras: string;
61
+ greece: string;
62
+ georgia: string;
63
+ denmark: string;
64
+ djibouti: string;
65
+ dominicanRepublic: string;
66
+ egypt: string;
67
+ zimbabwe: string;
68
+ israel: string;
69
+ india: string;
70
+ iraq: string;
71
+ iran: string;
72
+ ireland: string;
73
+ iceland: string;
74
+ spain: string;
75
+ italy: string;
76
+ kazakhstan: string;
77
+ caymanIslands: string;
78
+ cyprus: string;
79
+ kiribati: string;
80
+ colombia: string;
81
+ kosovo: string;
82
+ kyrgyzstan: string;
83
+ latvia: string;
84
+ lesotho: string;
85
+ lebanon: string;
86
+ lithuania: string;
87
+ liechtenstein: string;
88
+ luxembourg: string;
89
+ mauritius: string;
90
+ mauritania: string;
91
+ madagascar: string;
92
+ mayotte: string;
93
+ mali: string;
94
+ maldives: string;
95
+ malta: string;
96
+ morocco: string;
97
+ mozambique: string;
98
+ moldova: string;
99
+ monaco: string;
100
+ myanmar: string;
101
+ namibia: string;
102
+ niger: string;
103
+ netherlands: string;
104
+ newZealand: string;
105
+ newCaledonia: string;
106
+ unitedArabEmirates: string;
107
+ oman: string;
108
+ isleOfMan: string;
109
+ norfolkIsland: string;
110
+ wallisAndFutunaIslands: string;
111
+ peru: string;
112
+ poland: string;
113
+ portugal: string;
114
+ transnistria: string;
115
+ romania: string;
116
+ sanMarino: string;
117
+ saoTomeAndPrincipe: string;
118
+ saudiArabia: string;
119
+ northMacedonia: string;
120
+ saintPierreAndMiquelon: string;
121
+ serbia: string;
122
+ singapore: string;
123
+ sintMaarten: string;
124
+ syria: string;
125
+ slovakia: string;
126
+ somaliland: string;
127
+ suriname: string;
128
+ sierraLeone: string;
129
+ tajikistan: string;
130
+ tonga: string;
131
+ tuvalu: string;
132
+ turkmenistan: string;
133
+ turkey: string;
134
+ uzbekistan: string;
135
+ ukraine: string;
136
+ uruguay: string;
137
+ fiji: string;
138
+ finland: string;
139
+ france: string;
140
+ frenchPolynesia: string;
141
+ croatia: string;
142
+ centralAfricanRepublic: string;
143
+ montenegro: string;
144
+ switzerland: string;
145
+ estonia: string;
146
+ ethiopia: string;
147
+ southAfrica: string;
148
+ southKorea: string;
149
+ southSudan: string;
150
+ japan: string;
151
+ indonesia: string;
152
+ taiwan: string;
153
+ nigeria: string;
154
+ benin: string;
155
+ cameroon: string;
156
+ ghana: string;
157
+ rwanda: string;
158
+ zambia: string;
159
+ coteDIvoire: string;
160
+ uganda: string;
161
+ congo: string;
162
+ guinea: string;
163
+ sudan: string;
164
+ kenya: string;
165
+ jordan: string;
166
+ libya: string;
167
+ sweden: string;
168
+ chad: string;
169
+ norway: string;
170
+ hongKong: string;
171
+ costaRica: string;
172
+ chile: string;
173
+ ecuador: string;
174
+ malaysia: string;
175
+ paraguay: string;
176
+ yemen: string;
177
+ haiti: string;
178
+ nicaragua: string;
179
+ senegal: string;
180
+ venezuela: string;
181
+ afghanistan: string;
182
+ sriLanka: string;
183
+ vietnam: string;
184
+ thailand: string;
185
+ tanzania: string;
186
+ qatar: string;
187
+ palestine: string;
188
+ cambodia: string;
189
+ };
190
+ FieldAi: {
191
+ regular: {
192
+ placeholder: string;
193
+ };
194
+ secret: {
195
+ placeholder: string;
196
+ passwordTooltip: {
197
+ titleSuccess: string;
198
+ onlyLatin: string;
199
+ minLength: string;
200
+ hasLetterCases: string;
201
+ hasNumber: string;
202
+ hasSymbol: string;
203
+ noSpaces: string;
204
+ };
205
+ error: string;
206
+ };
207
+ hint: {
208
+ text: string;
209
+ tooltip: string;
210
+ tooltipLink: string;
211
+ };
212
+ submit: {
213
+ tooltip: string;
214
+ };
215
+ resetContext: {
216
+ label: string;
217
+ tooltip: string;
218
+ };
219
+ };
220
+ FieldChat: {
221
+ placeholder: string;
222
+ attachFileTooltip: string;
223
+ };
224
+ };
225
+ Header: {
226
+ noDataFound: string;
227
+ menu: string;
228
+ user: string;
229
+ navigation: string;
230
+ searchByServices: string;
231
+ searchSettingsFuzzyChipLabel: string;
232
+ searchSettingsPreciseChipLabel: string;
233
+ searchSettingsMobileModalHeader: string;
234
+ noData: string;
235
+ services: string;
236
+ manageProfile: string;
237
+ switchTheme: string;
238
+ logout: string;
239
+ favorite: string;
240
+ themeModeLight: string;
241
+ themeModeDark: string;
242
+ themeModeSystem: string;
243
+ themeModeLabel: string;
244
+ };
245
+ InfoRow: {
246
+ booleanValueTrue: string;
247
+ booleanValueFalse: string;
248
+ };
249
+ Layout: {
250
+ noAccessTitle: string;
251
+ noAccessSubtitle: string;
252
+ noAccessText: string;
253
+ };
254
+ MobileChips: {
255
+ selectedN: string;
256
+ resetAll: string;
257
+ select: string;
258
+ };
259
+ MobileFields: {
260
+ selectedN: string;
261
+ resetAll: string;
262
+ select: string;
263
+ };
264
+ MobileLayout: {
265
+ continue: string;
266
+ create: string;
267
+ save: string;
268
+ cancel: string;
269
+ back: string;
270
+ rent: string;
271
+ send: string;
272
+ add: string;
273
+ restore: string;
274
+ };
275
+ MobileToaster: {
276
+ closeAll: string;
277
+ showLess: string;
278
+ showMore: string;
279
+ };
280
+ MobileToolbar: {
281
+ more: string;
282
+ refresh: string;
283
+ };
284
+ ModalPredefined: {
285
+ title: string;
286
+ recallTitle: string;
287
+ fieldLabel: string;
288
+ recallFieldLabel: string;
289
+ enterName: string;
290
+ invalidName: string;
291
+ enterText: {
292
+ name: string;
293
+ text: string;
294
+ };
295
+ invalidText: {
296
+ name: string;
297
+ text: string;
298
+ };
299
+ required: string;
300
+ cancel: string;
301
+ delete: string;
302
+ recall: string;
303
+ whatsNew: string;
304
+ readLater: string;
305
+ outOf: string;
306
+ noDataTitle: string;
307
+ noDataDescription: string;
308
+ dataErrorTitle: string;
309
+ dataErrorDescription: string;
310
+ dataErrorAction: string;
311
+ };
312
+ PageLayout: {
313
+ PageForm: {
314
+ continue: string;
315
+ create: string;
316
+ save: string;
317
+ cancel: string;
318
+ back: string;
319
+ rent: string;
320
+ send: string;
321
+ restore: string;
322
+ add: string;
323
+ };
324
+ PageSidebar: {
325
+ backTo: string;
326
+ documentation: string;
327
+ searchByServices: string;
328
+ closeSearch: string;
329
+ openSearch: string;
330
+ };
331
+ };
332
+ PriceSummary: {
333
+ total: string;
334
+ totalSumFromPrefix: string;
335
+ vat: string;
336
+ pricePeriodYear: string;
337
+ pricePeriodMonth: string;
338
+ pricePeriodDay: string;
339
+ pricePeriodHour: string;
340
+ pricePeriodMinute: string;
341
+ price: string;
342
+ basePrice: string;
343
+ discount: string;
344
+ orderDetails: string;
345
+ docsLink: string;
346
+ dataError: string;
347
+ costLink: string;
348
+ };
349
+ PromoTagPredefined: {
350
+ connecting: string;
351
+ partner: string;
352
+ preview: string;
353
+ tooltipConnecting: string;
354
+ tooltipPartner: string;
355
+ tooltipPreviewService: string;
356
+ tooltipPreviewFunctional: string;
357
+ };
358
+ Quota: {
359
+ peace: string;
360
+ gb: string;
361
+ unlimited: string;
362
+ created: string;
363
+ filled: string;
364
+ available: string;
365
+ exceeded: string;
366
+ increase: string;
367
+ noData: string;
368
+ quotas: string;
369
+ };
370
+ SiteHero: {
371
+ Main: {
372
+ platforms: string;
373
+ };
374
+ };
375
+ SiteSection: {
376
+ Basic: {
377
+ showMore: string;
378
+ };
379
+ PersonalManager: {
380
+ title: string;
381
+ subtitle: string;
382
+ individualApproachTitle: string;
383
+ individualApproachDescription: string;
384
+ consultationButton: string;
385
+ allDaySupportTitle: string;
386
+ allDaySupportDescription: string;
387
+ argumentAmountOfExperts: string;
388
+ argumentMethodologies: string;
389
+ argumentPersonalManager: string;
390
+ };
391
+ };
392
+ Widget: {
393
+ Solutions: {
394
+ title: string;
395
+ link: string;
396
+ };
397
+ Products: {
398
+ title: string;
399
+ };
400
+ dataErrorTitle: string;
401
+ dataErrorDescription: string;
402
+ };
403
+ Claudia: {
404
+ SshField: {
405
+ placeholder: string;
406
+ chatStatusAnnouncement: {
407
+ content: string;
408
+ cancel: string;
409
+ };
410
+ dropZone: {
411
+ title: string;
412
+ description: string;
413
+ };
414
+ attachFileTooltip: string;
415
+ submitButtonTooltip: string;
416
+ errors: {
417
+ emptyFile: string;
418
+ binaryData: string;
419
+ invalidSSHKey: string;
420
+ invalidFileExtension: string;
421
+ fileTooLarge: string;
422
+ readError: string;
423
+ unknownError: string;
424
+ };
425
+ };
426
+ };
427
+ };