@dfds-ui/react-components 0.9.3-alpha.6fc6af92 → 0.9.3-alpha.7258614f

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/cjs/index.d.ts CHANGED
@@ -21,6 +21,7 @@ export * from './hero';
21
21
  export * from './ie-banner';
22
22
  export * from './lists';
23
23
  export * from './loader';
24
+ export * from './localization';
24
25
  export * from './menu';
25
26
  export * from './nav-bar';
26
27
  export * from './nav-menu';
package/cjs/index.js CHANGED
@@ -320,6 +320,20 @@ Object.keys(_loader).forEach(function (key) {
320
320
  });
321
321
  });
322
322
 
323
+ var _localization = require("./localization");
324
+
325
+ Object.keys(_localization).forEach(function (key) {
326
+ if (key === "default" || key === "__esModule") return;
327
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
328
+ if (key in exports && exports[key] === _localization[key]) return;
329
+ Object.defineProperty(exports, key, {
330
+ enumerable: true,
331
+ get: function get() {
332
+ return _localization[key];
333
+ }
334
+ });
335
+ });
336
+
323
337
  var _menu = require("./menu");
324
338
 
325
339
  Object.keys(_menu).forEach(function (key) {
@@ -0,0 +1,13 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { Locale } from './locales';
3
+ export declare type LocaleFlagProps = {
4
+ /**
5
+ * The locale specifying which flag will be rendered.
6
+ */
7
+ locale: Locale;
8
+ /**
9
+ * The size of the flag icon.
10
+ */
11
+ size?: 's' | 'm' | 'l' | 'xl';
12
+ } & ComponentPropsWithoutRef<'svg'>;
13
+ export declare const LocaleFlag: ({ locale, size, ...rest }: LocaleFlagProps) => JSX.Element;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.LocaleFlag = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _react2 = require("@emotion/react");
11
+
12
+ var flags = _interopRequireWildcard(require("@dfds-ui/icons/flags"));
13
+
14
+ var _locales = require("./locales");
15
+
16
+ const _excluded = ["locale", "size"];
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+
24
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
+
26
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
27
+
28
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
29
+
30
+ const sizes = {
31
+ s: '1rem',
32
+ m: '1.25rem',
33
+ l: '1.875rem',
34
+ xl: '2.5rem'
35
+ };
36
+
37
+ const LocaleFlag = _ref => {
38
+ let locale = _ref.locale,
39
+ _ref$size = _ref.size,
40
+ size = _ref$size === void 0 ? 'm' : _ref$size,
41
+ rest = _objectWithoutProperties(_ref, _excluded);
42
+
43
+ const Icon = flags[_locales.localeData[locale].flagIcon];
44
+ return (0, _react2.jsx)(Icon, _extends({
45
+ role: "img",
46
+ css: /*#__PURE__*/(0, _react2.css)("font-size:", sizes[size], ";" + (process.env.NODE_ENV === "production" ? "" : ";label:LocaleFlag;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sb2NhbGl6YXRpb24vTG9jYWxlRmxhZy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEJjIiwiZmlsZSI6Ii4uLy4uLy4uL3NyYy9sb2NhbGl6YXRpb24vTG9jYWxlRmxhZy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCAqIGFzIGZsYWdzIGZyb20gJ0BkZmRzLXVpL2ljb25zL2ZsYWdzJ1xuaW1wb3J0IHsgTG9jYWxlLCBsb2NhbGVEYXRhIH0gZnJvbSAnLi9sb2NhbGVzJ1xuXG5leHBvcnQgdHlwZSBMb2NhbGVGbGFnUHJvcHMgPSB7XG4gIC8qKlxuICAgKiBUaGUgbG9jYWxlIHNwZWNpZnlpbmcgd2hpY2ggZmxhZyB3aWxsIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgbG9jYWxlOiBMb2NhbGVcbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBmbGFnIGljb24uXG4gICAqL1xuICBzaXplPzogJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJ1xufSAmIENvbXBvbmVudFByb3BzV2l0aG91dFJlZjwnc3ZnJz5cblxuY29uc3Qgc2l6ZXM6IHsgW2sgaW4gTm9uTnVsbGFibGU8TG9jYWxlRmxhZ1Byb3BzWydzaXplJ10+XTogc3RyaW5nIH0gPSB7XG4gIHM6ICcxcmVtJyxcbiAgbTogJzEuMjVyZW0nLFxuICBsOiAnMS44NzVyZW0nLFxuICB4bDogJzIuNXJlbScsXG59XG5cbmV4cG9ydCBjb25zdCBMb2NhbGVGbGFnID0gKHsgbG9jYWxlLCBzaXplID0gJ20nLCAuLi5yZXN0IH06IExvY2FsZUZsYWdQcm9wcykgPT4ge1xuICBjb25zdCBJY29uID0gZmxhZ3NbbG9jYWxlRGF0YVtsb2NhbGVdLmZsYWdJY29uXVxuICByZXR1cm4gKFxuICAgIDxJY29uXG4gICAgICByb2xlPVwiaW1nXCJcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBmb250LXNpemU6ICR7c2l6ZXNbc2l6ZV19O1xuICAgICAgYH1cbiAgICAgIHsuLi5yZXN0fVxuICAgIC8+XG4gIClcbn1cbiJdfQ== */")
47
+ }, rest));
48
+ };
49
+
50
+ exports.LocaleFlag = LocaleFlag;
@@ -0,0 +1,2 @@
1
+ export * from './locales';
2
+ export * from './LocaleFlag';
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _locales = require("./locales");
8
+
9
+ Object.keys(_locales).forEach(function (key) {
10
+ if (key === "default" || key === "__esModule") return;
11
+ if (key in exports && exports[key] === _locales[key]) return;
12
+ Object.defineProperty(exports, key, {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _locales[key];
16
+ }
17
+ });
18
+ });
19
+
20
+ var _LocaleFlag = require("./LocaleFlag");
21
+
22
+ Object.keys(_LocaleFlag).forEach(function (key) {
23
+ if (key === "default" || key === "__esModule") return;
24
+ if (key in exports && exports[key] === _LocaleFlag[key]) return;
25
+ Object.defineProperty(exports, key, {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _LocaleFlag[key];
29
+ }
30
+ });
31
+ });
@@ -0,0 +1,34 @@
1
+ import * as flags from '@dfds-ui/icons/flags';
2
+ export declare const locales: readonly ["en", "nl-BE", "bg-BG", "pt-BR", "en-CA", "zh-CN", "cs-CZ", "da-DK", "et-EE", "fi-FI", "fr-BE", "fr-FR", "de-DE", "hu-HU", "it-IT", "ja-JP", "lv-LV", "lt-LT", "nl-NL", "nb-NO", "pl-PL", "ro-RO", "ru-RU", "sk-SK", "ko-KR", "es-ES", "sv-SE", "tr-TR", "en-GB", "en-US"];
3
+ export declare type Locale = typeof locales[number];
4
+ export declare type LocaleInfo = {
5
+ /**
6
+ * Name of the country
7
+ */
8
+ name: string;
9
+ /**
10
+ * Country (and occasionally the language) expressed in native language.
11
+ */
12
+ nativeName: string;
13
+ /**
14
+ * Country calling code
15
+ */
16
+ callingCode: string;
17
+ /**
18
+ * Dialing trunk prefix
19
+ */
20
+ callingTrunkPrefix?: string;
21
+ /**
22
+ * Key of flag icon component
23
+ */
24
+ flagIcon: keyof typeof flags;
25
+ };
26
+ export declare const localeData: {
27
+ [k in Locale]: LocaleInfo;
28
+ };
29
+ /**
30
+ * Returns an array of locales where each country only appears once.
31
+ *
32
+ * @return {Locale[]}
33
+ */
34
+ export declare function uniqueCountryLocales(): Locale[];
@@ -0,0 +1,236 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.uniqueCountryLocales = uniqueCountryLocales;
7
+ exports.localeData = exports.locales = void 0;
8
+ const locales = ['en', 'nl-BE', 'bg-BG', 'pt-BR', 'en-CA', 'zh-CN', 'cs-CZ', 'da-DK', 'et-EE', 'fi-FI', 'fr-BE', 'fr-FR', 'de-DE', 'hu-HU', 'it-IT', 'ja-JP', 'lv-LV', 'lt-LT', 'nl-NL', 'nb-NO', 'pl-PL', 'ro-RO', 'ru-RU', 'sk-SK', 'ko-KR', 'es-ES', 'sv-SE', 'tr-TR', 'en-GB', 'en-US'];
9
+ exports.locales = locales;
10
+ const localeData = {
11
+ en: {
12
+ name: 'International',
13
+ callingCode: '+',
14
+ nativeName: 'International',
15
+ flagIcon: 'FlagInt'
16
+ },
17
+ 'nl-BE': {
18
+ name: 'Belgium',
19
+ callingCode: '+32',
20
+ callingTrunkPrefix: '0',
21
+ nativeName: 'België - Nederlands',
22
+ flagIcon: 'FlagBe'
23
+ },
24
+ 'fr-BE': {
25
+ name: 'Belgium',
26
+ callingCode: '+32',
27
+ callingTrunkPrefix: '0',
28
+ nativeName: 'Belgique - Français',
29
+ flagIcon: 'FlagBe'
30
+ },
31
+ 'bg-BG': {
32
+ name: 'Bulgaria',
33
+ callingCode: '+359',
34
+ callingTrunkPrefix: '0',
35
+ nativeName: 'България',
36
+ flagIcon: 'FlagBg'
37
+ },
38
+ 'pt-BR': {
39
+ name: 'Brazil',
40
+ callingCode: '+55',
41
+ callingTrunkPrefix: '0',
42
+ nativeName: 'Brasil - Português',
43
+ flagIcon: 'FlagBr'
44
+ },
45
+ 'en-CA': {
46
+ name: 'Canada',
47
+ callingCode: '+1',
48
+ callingTrunkPrefix: '1',
49
+ nativeName: 'Canada - English',
50
+ flagIcon: 'FlagCa'
51
+ },
52
+ 'zh-CN': {
53
+ name: 'China',
54
+ callingCode: '+86',
55
+ callingTrunkPrefix: '0',
56
+ nativeName: '中国',
57
+ flagIcon: 'FlagCn'
58
+ },
59
+ 'cs-CZ': {
60
+ name: 'Czech Republic',
61
+ callingCode: '+420',
62
+ nativeName: 'Česká republika',
63
+ flagIcon: 'FlagCz'
64
+ },
65
+ 'da-DK': {
66
+ name: 'Denmark',
67
+ callingCode: '+45',
68
+ nativeName: 'Danmark',
69
+ flagIcon: 'FlagDk'
70
+ },
71
+ 'et-EE': {
72
+ name: 'Estonia',
73
+ callingCode: '+372',
74
+ nativeName: 'Eesti',
75
+ flagIcon: 'FlagEe'
76
+ },
77
+ 'fi-FI': {
78
+ name: 'Finland',
79
+ callingCode: '+358',
80
+ callingTrunkPrefix: '0',
81
+ nativeName: 'Suomi',
82
+ flagIcon: 'FlagFi'
83
+ },
84
+ 'fr-FR': {
85
+ name: 'France',
86
+ callingCode: '+33',
87
+ callingTrunkPrefix: '0',
88
+ nativeName: 'France',
89
+ flagIcon: 'FlagFr'
90
+ },
91
+ 'de-DE': {
92
+ name: 'Germany',
93
+ callingCode: '+49',
94
+ callingTrunkPrefix: '0',
95
+ nativeName: 'Deutschland',
96
+ flagIcon: 'FlagDe'
97
+ },
98
+ 'hu-HU': {
99
+ name: 'Hungary',
100
+ callingCode: '+36',
101
+ callingTrunkPrefix: '06',
102
+ nativeName: 'Magyarország',
103
+ flagIcon: 'FlagHu'
104
+ },
105
+ 'it-IT': {
106
+ name: 'Italy',
107
+ callingCode: '+39',
108
+ nativeName: 'Italia',
109
+ flagIcon: 'FlagIt'
110
+ },
111
+ 'ja-JP': {
112
+ name: 'Japan',
113
+ callingCode: '+81',
114
+ callingTrunkPrefix: '0',
115
+ nativeName: '日本',
116
+ flagIcon: 'FlagJp'
117
+ },
118
+ 'lv-LV': {
119
+ name: 'Latvia',
120
+ callingCode: '+371',
121
+ nativeName: 'Latvija',
122
+ flagIcon: 'FlagLv'
123
+ },
124
+ 'lt-LT': {
125
+ name: 'Lithuania',
126
+ callingCode: '+370',
127
+ callingTrunkPrefix: '8',
128
+ nativeName: 'Lietuva',
129
+ flagIcon: 'FlagLt'
130
+ },
131
+ 'nl-NL': {
132
+ name: 'Netherlands',
133
+ callingCode: '+31',
134
+ callingTrunkPrefix: '0',
135
+ nativeName: 'Nederland',
136
+ flagIcon: 'FlagNl'
137
+ },
138
+ 'nb-NO': {
139
+ name: 'Norway',
140
+ callingCode: '+47',
141
+ nativeName: 'Norge',
142
+ flagIcon: 'FlagNo'
143
+ },
144
+ 'pl-PL': {
145
+ name: 'Poland',
146
+ callingCode: '+48',
147
+ nativeName: 'Polska',
148
+ flagIcon: 'FlagPl'
149
+ },
150
+ 'ro-RO': {
151
+ name: 'Romania',
152
+ callingCode: '+40',
153
+ callingTrunkPrefix: '0',
154
+ nativeName: 'România',
155
+ flagIcon: 'FlagRo'
156
+ },
157
+ 'ru-RU': {
158
+ name: 'Russia',
159
+ callingCode: '+7',
160
+ callingTrunkPrefix: '8',
161
+ nativeName: 'Россия',
162
+ flagIcon: 'FlagRu'
163
+ },
164
+ 'sk-SK': {
165
+ name: 'Slovakia',
166
+ callingCode: '+421',
167
+ callingTrunkPrefix: '0',
168
+ nativeName: 'Slovensko',
169
+ flagIcon: 'FlagSk'
170
+ },
171
+ 'ko-KR': {
172
+ name: 'South Korea',
173
+ callingCode: '+82',
174
+ callingTrunkPrefix: '0',
175
+ nativeName: '대한민국',
176
+ flagIcon: 'FlagKr'
177
+ },
178
+ 'es-ES': {
179
+ name: 'Spain',
180
+ callingCode: '+34',
181
+ nativeName: 'España',
182
+ flagIcon: 'FlagEs'
183
+ },
184
+ 'sv-SE': {
185
+ name: 'Sweden',
186
+ callingCode: '+46',
187
+ callingTrunkPrefix: '0',
188
+ nativeName: 'Sverige',
189
+ flagIcon: 'FlagSe'
190
+ },
191
+ 'tr-TR': {
192
+ name: 'Turkey',
193
+ callingCode: '+90',
194
+ callingTrunkPrefix: '0',
195
+ nativeName: 'Türkçe',
196
+ flagIcon: 'FlagTr'
197
+ },
198
+ 'en-GB': {
199
+ name: 'United Kingdom',
200
+ callingCode: '+44',
201
+ callingTrunkPrefix: '0',
202
+ nativeName: 'United Kingdom - English',
203
+ flagIcon: 'FlagGb'
204
+ },
205
+ 'en-US': {
206
+ name: 'United States',
207
+ callingCode: '+1',
208
+ callingTrunkPrefix: '1',
209
+ nativeName: 'United States',
210
+ flagIcon: 'FlagUs'
211
+ }
212
+ };
213
+ /**
214
+ * Returns an array of locales where each country only appears once.
215
+ *
216
+ * @return {Locale[]}
217
+ */
218
+
219
+ exports.localeData = localeData;
220
+
221
+ function uniqueCountryLocales() {
222
+ const processed = [];
223
+ return locales.filter(locale => {
224
+ const split = locale.split('-');
225
+
226
+ if (split.length === 2) {
227
+ if (processed.indexOf(split[1]) !== -1) {
228
+ return false;
229
+ }
230
+
231
+ processed.push(split[1]);
232
+ }
233
+
234
+ return true;
235
+ });
236
+ }
package/index.d.ts CHANGED
@@ -21,6 +21,7 @@ export * from './hero';
21
21
  export * from './ie-banner';
22
22
  export * from './lists';
23
23
  export * from './loader';
24
+ export * from './localization';
24
25
  export * from './menu';
25
26
  export * from './nav-bar';
26
27
  export * from './nav-menu';
package/index.js CHANGED
@@ -21,6 +21,7 @@ export * from './hero';
21
21
  export * from './ie-banner';
22
22
  export * from './lists';
23
23
  export * from './loader';
24
+ export * from './localization';
24
25
  export * from './menu';
25
26
  export * from './nav-bar';
26
27
  export * from './nav-menu';
@@ -0,0 +1,13 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { Locale } from './locales';
3
+ export declare type LocaleFlagProps = {
4
+ /**
5
+ * The locale specifying which flag will be rendered.
6
+ */
7
+ locale: Locale;
8
+ /**
9
+ * The size of the flag icon.
10
+ */
11
+ size?: 's' | 'm' | 'l' | 'xl';
12
+ } & ComponentPropsWithoutRef<'svg'>;
13
+ export declare const LocaleFlag: ({ locale, size, ...rest }: LocaleFlagProps) => JSX.Element;
@@ -0,0 +1,31 @@
1
+ var _excluded = ["locale", "size"];
2
+
3
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
+
5
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
6
+
7
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
8
+
9
+ import React from 'react';
10
+ import { css } from '@emotion/react';
11
+ import * as flags from '@dfds-ui/icons/flags';
12
+ import { localeData } from './locales';
13
+ import { jsx as ___EmotionJSX } from "@emotion/react";
14
+ var sizes = {
15
+ s: '1rem',
16
+ m: '1.25rem',
17
+ l: '1.875rem',
18
+ xl: '2.5rem'
19
+ };
20
+ export var LocaleFlag = function LocaleFlag(_ref) {
21
+ var locale = _ref.locale,
22
+ _ref$size = _ref.size,
23
+ size = _ref$size === void 0 ? 'm' : _ref$size,
24
+ rest = _objectWithoutProperties(_ref, _excluded);
25
+
26
+ var Icon = flags[localeData[locale].flagIcon];
27
+ return ___EmotionJSX(Icon, _extends({
28
+ role: "img",
29
+ css: /*#__PURE__*/css("font-size:", sizes[size], ";" + (process.env.NODE_ENV === "production" ? "" : ";label:LocaleFlag;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2NhbGl6YXRpb24vTG9jYWxlRmxhZy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEJjIiwiZmlsZSI6Ii4uLy4uL3NyYy9sb2NhbGl6YXRpb24vTG9jYWxlRmxhZy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCAqIGFzIGZsYWdzIGZyb20gJ0BkZmRzLXVpL2ljb25zL2ZsYWdzJ1xuaW1wb3J0IHsgTG9jYWxlLCBsb2NhbGVEYXRhIH0gZnJvbSAnLi9sb2NhbGVzJ1xuXG5leHBvcnQgdHlwZSBMb2NhbGVGbGFnUHJvcHMgPSB7XG4gIC8qKlxuICAgKiBUaGUgbG9jYWxlIHNwZWNpZnlpbmcgd2hpY2ggZmxhZyB3aWxsIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgbG9jYWxlOiBMb2NhbGVcbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBmbGFnIGljb24uXG4gICAqL1xuICBzaXplPzogJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJ1xufSAmIENvbXBvbmVudFByb3BzV2l0aG91dFJlZjwnc3ZnJz5cblxuY29uc3Qgc2l6ZXM6IHsgW2sgaW4gTm9uTnVsbGFibGU8TG9jYWxlRmxhZ1Byb3BzWydzaXplJ10+XTogc3RyaW5nIH0gPSB7XG4gIHM6ICcxcmVtJyxcbiAgbTogJzEuMjVyZW0nLFxuICBsOiAnMS44NzVyZW0nLFxuICB4bDogJzIuNXJlbScsXG59XG5cbmV4cG9ydCBjb25zdCBMb2NhbGVGbGFnID0gKHsgbG9jYWxlLCBzaXplID0gJ20nLCAuLi5yZXN0IH06IExvY2FsZUZsYWdQcm9wcykgPT4ge1xuICBjb25zdCBJY29uID0gZmxhZ3NbbG9jYWxlRGF0YVtsb2NhbGVdLmZsYWdJY29uXVxuICByZXR1cm4gKFxuICAgIDxJY29uXG4gICAgICByb2xlPVwiaW1nXCJcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBmb250LXNpemU6ICR7c2l6ZXNbc2l6ZV19O1xuICAgICAgYH1cbiAgICAgIHsuLi5yZXN0fVxuICAgIC8+XG4gIClcbn1cbiJdfQ== */")
30
+ }, rest));
31
+ };
@@ -0,0 +1,2 @@
1
+ export * from './locales';
2
+ export * from './LocaleFlag';
@@ -0,0 +1,2 @@
1
+ export * from './locales';
2
+ export * from './LocaleFlag';
@@ -0,0 +1,34 @@
1
+ import * as flags from '@dfds-ui/icons/flags';
2
+ export declare const locales: readonly ["en", "nl-BE", "bg-BG", "pt-BR", "en-CA", "zh-CN", "cs-CZ", "da-DK", "et-EE", "fi-FI", "fr-BE", "fr-FR", "de-DE", "hu-HU", "it-IT", "ja-JP", "lv-LV", "lt-LT", "nl-NL", "nb-NO", "pl-PL", "ro-RO", "ru-RU", "sk-SK", "ko-KR", "es-ES", "sv-SE", "tr-TR", "en-GB", "en-US"];
3
+ export declare type Locale = typeof locales[number];
4
+ export declare type LocaleInfo = {
5
+ /**
6
+ * Name of the country
7
+ */
8
+ name: string;
9
+ /**
10
+ * Country (and occasionally the language) expressed in native language.
11
+ */
12
+ nativeName: string;
13
+ /**
14
+ * Country calling code
15
+ */
16
+ callingCode: string;
17
+ /**
18
+ * Dialing trunk prefix
19
+ */
20
+ callingTrunkPrefix?: string;
21
+ /**
22
+ * Key of flag icon component
23
+ */
24
+ flagIcon: keyof typeof flags;
25
+ };
26
+ export declare const localeData: {
27
+ [k in Locale]: LocaleInfo;
28
+ };
29
+ /**
30
+ * Returns an array of locales where each country only appears once.
31
+ *
32
+ * @return {Locale[]}
33
+ */
34
+ export declare function uniqueCountryLocales(): Locale[];
@@ -0,0 +1,226 @@
1
+ export var locales = ['en', 'nl-BE', 'bg-BG', 'pt-BR', 'en-CA', 'zh-CN', 'cs-CZ', 'da-DK', 'et-EE', 'fi-FI', 'fr-BE', 'fr-FR', 'de-DE', 'hu-HU', 'it-IT', 'ja-JP', 'lv-LV', 'lt-LT', 'nl-NL', 'nb-NO', 'pl-PL', 'ro-RO', 'ru-RU', 'sk-SK', 'ko-KR', 'es-ES', 'sv-SE', 'tr-TR', 'en-GB', 'en-US'];
2
+ export var localeData = {
3
+ en: {
4
+ name: 'International',
5
+ callingCode: '+',
6
+ nativeName: 'International',
7
+ flagIcon: 'FlagInt'
8
+ },
9
+ 'nl-BE': {
10
+ name: 'Belgium',
11
+ callingCode: '+32',
12
+ callingTrunkPrefix: '0',
13
+ nativeName: 'België - Nederlands',
14
+ flagIcon: 'FlagBe'
15
+ },
16
+ 'fr-BE': {
17
+ name: 'Belgium',
18
+ callingCode: '+32',
19
+ callingTrunkPrefix: '0',
20
+ nativeName: 'Belgique - Français',
21
+ flagIcon: 'FlagBe'
22
+ },
23
+ 'bg-BG': {
24
+ name: 'Bulgaria',
25
+ callingCode: '+359',
26
+ callingTrunkPrefix: '0',
27
+ nativeName: 'България',
28
+ flagIcon: 'FlagBg'
29
+ },
30
+ 'pt-BR': {
31
+ name: 'Brazil',
32
+ callingCode: '+55',
33
+ callingTrunkPrefix: '0',
34
+ nativeName: 'Brasil - Português',
35
+ flagIcon: 'FlagBr'
36
+ },
37
+ 'en-CA': {
38
+ name: 'Canada',
39
+ callingCode: '+1',
40
+ callingTrunkPrefix: '1',
41
+ nativeName: 'Canada - English',
42
+ flagIcon: 'FlagCa'
43
+ },
44
+ 'zh-CN': {
45
+ name: 'China',
46
+ callingCode: '+86',
47
+ callingTrunkPrefix: '0',
48
+ nativeName: '中国',
49
+ flagIcon: 'FlagCn'
50
+ },
51
+ 'cs-CZ': {
52
+ name: 'Czech Republic',
53
+ callingCode: '+420',
54
+ nativeName: 'Česká republika',
55
+ flagIcon: 'FlagCz'
56
+ },
57
+ 'da-DK': {
58
+ name: 'Denmark',
59
+ callingCode: '+45',
60
+ nativeName: 'Danmark',
61
+ flagIcon: 'FlagDk'
62
+ },
63
+ 'et-EE': {
64
+ name: 'Estonia',
65
+ callingCode: '+372',
66
+ nativeName: 'Eesti',
67
+ flagIcon: 'FlagEe'
68
+ },
69
+ 'fi-FI': {
70
+ name: 'Finland',
71
+ callingCode: '+358',
72
+ callingTrunkPrefix: '0',
73
+ nativeName: 'Suomi',
74
+ flagIcon: 'FlagFi'
75
+ },
76
+ 'fr-FR': {
77
+ name: 'France',
78
+ callingCode: '+33',
79
+ callingTrunkPrefix: '0',
80
+ nativeName: 'France',
81
+ flagIcon: 'FlagFr'
82
+ },
83
+ 'de-DE': {
84
+ name: 'Germany',
85
+ callingCode: '+49',
86
+ callingTrunkPrefix: '0',
87
+ nativeName: 'Deutschland',
88
+ flagIcon: 'FlagDe'
89
+ },
90
+ 'hu-HU': {
91
+ name: 'Hungary',
92
+ callingCode: '+36',
93
+ callingTrunkPrefix: '06',
94
+ nativeName: 'Magyarország',
95
+ flagIcon: 'FlagHu'
96
+ },
97
+ 'it-IT': {
98
+ name: 'Italy',
99
+ callingCode: '+39',
100
+ nativeName: 'Italia',
101
+ flagIcon: 'FlagIt'
102
+ },
103
+ 'ja-JP': {
104
+ name: 'Japan',
105
+ callingCode: '+81',
106
+ callingTrunkPrefix: '0',
107
+ nativeName: '日本',
108
+ flagIcon: 'FlagJp'
109
+ },
110
+ 'lv-LV': {
111
+ name: 'Latvia',
112
+ callingCode: '+371',
113
+ nativeName: 'Latvija',
114
+ flagIcon: 'FlagLv'
115
+ },
116
+ 'lt-LT': {
117
+ name: 'Lithuania',
118
+ callingCode: '+370',
119
+ callingTrunkPrefix: '8',
120
+ nativeName: 'Lietuva',
121
+ flagIcon: 'FlagLt'
122
+ },
123
+ 'nl-NL': {
124
+ name: 'Netherlands',
125
+ callingCode: '+31',
126
+ callingTrunkPrefix: '0',
127
+ nativeName: 'Nederland',
128
+ flagIcon: 'FlagNl'
129
+ },
130
+ 'nb-NO': {
131
+ name: 'Norway',
132
+ callingCode: '+47',
133
+ nativeName: 'Norge',
134
+ flagIcon: 'FlagNo'
135
+ },
136
+ 'pl-PL': {
137
+ name: 'Poland',
138
+ callingCode: '+48',
139
+ nativeName: 'Polska',
140
+ flagIcon: 'FlagPl'
141
+ },
142
+ 'ro-RO': {
143
+ name: 'Romania',
144
+ callingCode: '+40',
145
+ callingTrunkPrefix: '0',
146
+ nativeName: 'România',
147
+ flagIcon: 'FlagRo'
148
+ },
149
+ 'ru-RU': {
150
+ name: 'Russia',
151
+ callingCode: '+7',
152
+ callingTrunkPrefix: '8',
153
+ nativeName: 'Россия',
154
+ flagIcon: 'FlagRu'
155
+ },
156
+ 'sk-SK': {
157
+ name: 'Slovakia',
158
+ callingCode: '+421',
159
+ callingTrunkPrefix: '0',
160
+ nativeName: 'Slovensko',
161
+ flagIcon: 'FlagSk'
162
+ },
163
+ 'ko-KR': {
164
+ name: 'South Korea',
165
+ callingCode: '+82',
166
+ callingTrunkPrefix: '0',
167
+ nativeName: '대한민국',
168
+ flagIcon: 'FlagKr'
169
+ },
170
+ 'es-ES': {
171
+ name: 'Spain',
172
+ callingCode: '+34',
173
+ nativeName: 'España',
174
+ flagIcon: 'FlagEs'
175
+ },
176
+ 'sv-SE': {
177
+ name: 'Sweden',
178
+ callingCode: '+46',
179
+ callingTrunkPrefix: '0',
180
+ nativeName: 'Sverige',
181
+ flagIcon: 'FlagSe'
182
+ },
183
+ 'tr-TR': {
184
+ name: 'Turkey',
185
+ callingCode: '+90',
186
+ callingTrunkPrefix: '0',
187
+ nativeName: 'Türkçe',
188
+ flagIcon: 'FlagTr'
189
+ },
190
+ 'en-GB': {
191
+ name: 'United Kingdom',
192
+ callingCode: '+44',
193
+ callingTrunkPrefix: '0',
194
+ nativeName: 'United Kingdom - English',
195
+ flagIcon: 'FlagGb'
196
+ },
197
+ 'en-US': {
198
+ name: 'United States',
199
+ callingCode: '+1',
200
+ callingTrunkPrefix: '1',
201
+ nativeName: 'United States',
202
+ flagIcon: 'FlagUs'
203
+ }
204
+ };
205
+ /**
206
+ * Returns an array of locales where each country only appears once.
207
+ *
208
+ * @return {Locale[]}
209
+ */
210
+
211
+ export function uniqueCountryLocales() {
212
+ var processed = [];
213
+ return locales.filter(function (locale) {
214
+ var split = locale.split('-');
215
+
216
+ if (split.length === 2) {
217
+ if (processed.indexOf(split[1]) !== -1) {
218
+ return false;
219
+ }
220
+
221
+ processed.push(split[1]);
222
+ }
223
+
224
+ return true;
225
+ });
226
+ }
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Shared react components within DFDS",
4
4
  "license": "MIT",
5
5
  "private": false,
6
- "version": "0.9.3-alpha.6fc6af92",
6
+ "version": "0.9.3-alpha.7258614f",
7
7
  "sideEffects": false,
8
8
  "main": "./cjs/index.js",
9
9
  "module": "./index.js",
@@ -18,13 +18,13 @@
18
18
  "react-select": "^4.0.0"
19
19
  },
20
20
  "dependencies": {
21
- "@dfds-ui/colors": "0.9.3-alpha.6fc6af92",
22
- "@dfds-ui/fonts": "0.9.3-alpha.6fc6af92",
23
- "@dfds-ui/hooks": "0.9.3-alpha.6fc6af92",
24
- "@dfds-ui/icons": "0.9.3-alpha.6fc6af92",
25
- "@dfds-ui/spacing": "0.9.3-alpha.6fc6af92",
26
- "@dfds-ui/theme": "0.9.3-alpha.6fc6af92",
27
- "@dfds-ui/typography": "0.9.3-alpha.6fc6af92",
21
+ "@dfds-ui/colors": "0.9.3-alpha.7258614f",
22
+ "@dfds-ui/fonts": "0.9.3-alpha.7258614f",
23
+ "@dfds-ui/hooks": "0.9.3-alpha.7258614f",
24
+ "@dfds-ui/icons": "0.9.3-alpha.7258614f",
25
+ "@dfds-ui/spacing": "0.9.3-alpha.7258614f",
26
+ "@dfds-ui/theme": "0.9.3-alpha.7258614f",
27
+ "@dfds-ui/typography": "0.9.3-alpha.7258614f",
28
28
  "@kunukn/react-collapse": "^2.2.9",
29
29
  "@material-ui/core": "^4.12.3",
30
30
  "@material-ui/lab": "4.0.0-alpha.60",
@@ -34,7 +34,7 @@
34
34
  "react-hook-intersection-observer": "^0.1.0",
35
35
  "uuid": "^3.3.2"
36
36
  },
37
- "gitHead": "6fc6af927d7148f0b818daacc23ab5284ca3a5a9",
37
+ "gitHead": "7258614f64ead4fe426199295de942fa602ef4ae",
38
38
  "publishConfig": {
39
39
  "access": "public"
40
40
  }