@capillarytech/creatives-library 7.12.3 → 7.12.5
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/package.json +1 -1
- package/v2Components/TemplatePreview/index.js +30 -32
- package/v2Containers/CreativesContainer/SlideBoxContent.js +1 -1
- package/v2Containers/CreativesContainer/SlideBoxHeader.js +4 -2
- package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxHeader.test.js.snap +1 -1
- package/v2Containers/Rcs/constants.js +2 -1
- package/v2Containers/Rcs/index.js +39 -39
- package/v2Containers/Rcs/sagas.js +3 -3
- package/v2Containers/Templates/index.js +1 -0
- package/v2Containers/Whatsapp/constants.js +287 -0
- package/v2Containers/Whatsapp/index.js +35 -23
- package/v2Containers/Whatsapp/index.scss +3 -2
- package/v2Containers/Whatsapp/messages.js +284 -0
- package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +35570 -1687
- package/v2Containers/Whatsapp/tests/index.test.js +13 -0
- package/v2Containers/Whatsapp/tests/utils.test.js +15 -8
- package/v2Containers/mockdata.js +1173 -1143
- package/v2Components/CallTaskPreview/tests/__snapshots__/index.test.js.snap +0 -30
package/package.json
CHANGED
|
@@ -726,40 +726,38 @@ export class TemplatePreview extends React.Component { // eslint-disable-line re
|
|
|
726
726
|
}
|
|
727
727
|
{
|
|
728
728
|
channel?.toUpperCase() === RCS && (
|
|
729
|
-
|
|
730
|
-
<
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
<div className='
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
)}
|
|
759
|
-
</div>
|
|
729
|
+
<div className='shell-v2 align-center'>
|
|
730
|
+
<CapImage
|
|
731
|
+
className='preview-image'
|
|
732
|
+
src={smsMobileAndroid}
|
|
733
|
+
alt={formatMessage(messages.previewGenerated)}
|
|
734
|
+
/>
|
|
735
|
+
<div className='msg-container sms'>
|
|
736
|
+
<div className='message-pop sms'>
|
|
737
|
+
{rcsImageSrc && (
|
|
738
|
+
<CapImage
|
|
739
|
+
src={rcsImageSrc}
|
|
740
|
+
className='rcs-image'
|
|
741
|
+
alt={formatMessage(messages.previewGenerated)}
|
|
742
|
+
/>
|
|
743
|
+
)}
|
|
744
|
+
{rcsTitle && (
|
|
745
|
+
<CapLabel
|
|
746
|
+
type="label5"
|
|
747
|
+
className='message-pop-item align-left rcs-content'
|
|
748
|
+
fontWeight='bold'
|
|
749
|
+
>
|
|
750
|
+
{rcsTitle}
|
|
751
|
+
</CapLabel>
|
|
752
|
+
)}
|
|
753
|
+
{rcsDesc && (
|
|
754
|
+
<CapLabel type="label5" className='message-pop-item align-left rcs-content rcs-desc'>
|
|
755
|
+
{rcsDesc}
|
|
756
|
+
</CapLabel>
|
|
757
|
+
)}
|
|
760
758
|
</div>
|
|
761
759
|
</div>
|
|
762
|
-
|
|
760
|
+
</div>
|
|
763
761
|
)
|
|
764
762
|
}
|
|
765
763
|
{channel && channel.toLowerCase() === FACEBOOK && (
|
|
@@ -339,7 +339,7 @@ export function SlideBoxContent(props) {
|
|
|
339
339
|
}
|
|
340
340
|
case constants.RCS: {
|
|
341
341
|
const template = cloneDeep(templateDataObject);
|
|
342
|
-
const { description = "", media: {mediaUrl = ""}, title} = get(template, 'versions.base.content.RCS.cardContent[0]', {});
|
|
342
|
+
const { description = "", media: { mediaUrl = "" } = {}, title = "" } = get(template, 'versions.base.content.RCS.cardContent[0]', {});
|
|
343
343
|
return {
|
|
344
344
|
rcsPreviewContent: {
|
|
345
345
|
rcsImageSrc: mediaUrl,
|
|
@@ -7,6 +7,7 @@ import moment from 'moment';
|
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import messages from './messages';
|
|
9
9
|
import whatsppMsg from '../Whatsapp/messages';
|
|
10
|
+
import { LANGUAGE_OPTIONS } from '../Whatsapp/constants'
|
|
10
11
|
import globalMessages from '../Cap/messages'
|
|
11
12
|
import { MAP_TEMPLATE } from '../WeChat/Wrapper/constants';
|
|
12
13
|
import { NO_COMMUNICATION, FTP, WHATSAPP } from '../App/constants';
|
|
@@ -43,10 +44,11 @@ export function SlideBoxHeader(props) {
|
|
|
43
44
|
const {
|
|
44
45
|
whatsappTemplateName,
|
|
45
46
|
whatsappTemplateCategory,
|
|
47
|
+
whatsappTemplateLanguageCode,
|
|
46
48
|
} = templateData || {};
|
|
47
49
|
const whatsappName = whatsappTemplateName || templateData?.name;
|
|
48
50
|
const whatsappCategory = whatsappTemplateCategory || get(templateData, `versions.base.content.whatsapp.category`, '');
|
|
49
|
-
|
|
51
|
+
const whatsappLanguageCode = whatsappTemplateLanguageCode || get(templateData, `versions.base.content.whatsapp.languages[0].language`, '');
|
|
50
52
|
|
|
51
53
|
const getChannelLabel = (currentChannel = '') => {
|
|
52
54
|
const labels = {
|
|
@@ -103,7 +105,7 @@ export function SlideBoxHeader(props) {
|
|
|
103
105
|
{renderWhatsappData("label2", formatString(whatsappCategory))}
|
|
104
106
|
{renderWhatsappData("label3", <FormattedMessage {...whatsppMsg.labelSeperator} />)}
|
|
105
107
|
{renderWhatsappData("label1", <FormattedMessage {...whatsppMsg.languageLabel} />)}
|
|
106
|
-
{renderWhatsappData("label2",
|
|
108
|
+
{renderWhatsappData("label2", LANGUAGE_OPTIONS?.find(option => option.value === whatsappLanguageCode)?.label)}
|
|
107
109
|
</>)
|
|
108
110
|
}
|
|
109
111
|
prefix={creativesMode !== 'edit' && !isFullMode && showPrefix &&
|
|
@@ -190,7 +190,7 @@ exports[`Test SlideBoxHeader container Should render correct component for whats
|
|
|
190
190
|
>
|
|
191
191
|
<FormattedMessage
|
|
192
192
|
defaultMessage="English"
|
|
193
|
-
id="creatives.containersV2.Whatsapp.
|
|
193
|
+
id="creatives.containersV2.Whatsapp.english"
|
|
194
194
|
values={Object {}}
|
|
195
195
|
/>
|
|
196
196
|
</SlideBoxHeader__StyledLabel>
|
|
@@ -14,8 +14,9 @@ export const RCS_DLT_MODE = {
|
|
|
14
14
|
TEMPLATES: 'templates',
|
|
15
15
|
EDIT: 'editTemplate',
|
|
16
16
|
};
|
|
17
|
-
export const
|
|
17
|
+
export const TEMPLATE_DESC_MAX_LENGTH = 1000;
|
|
18
18
|
export const FALLBACK_MESSAGE_MAX_LENGTH = 160;
|
|
19
|
+
export const TEMPLATE_TITLE_MAX_LENGTH = 200;
|
|
19
20
|
export const TAG = 'TAG';
|
|
20
21
|
export const EMBEDDED = 'embedded';
|
|
21
22
|
export const DEFAULT = 'default';
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
/* eslint-disable no-unused-expressions */
|
|
2
|
-
/* eslint-disable indent */
|
|
3
|
-
/* eslint-disable no-unused-vars */
|
|
4
2
|
import React, { useState, useEffect, useCallback } from 'react';
|
|
5
3
|
import { bindActionCreators } from 'redux';
|
|
6
4
|
import { createStructuredSelector } from 'reselect';
|
|
@@ -44,13 +42,14 @@ import {
|
|
|
44
42
|
setInjectedTags,
|
|
45
43
|
} from '../Cap/selectors';
|
|
46
44
|
import * as RcsActions from './actions';
|
|
47
|
-
import * as TemplatesActions from '../Templates/actions'
|
|
45
|
+
import * as TemplatesActions from '../Templates/actions';
|
|
48
46
|
import './index.scss';
|
|
49
47
|
import {
|
|
50
48
|
RCS,
|
|
51
49
|
SMS,
|
|
52
50
|
RCS_MEDIA_TYPES,
|
|
53
|
-
|
|
51
|
+
TEMPLATE_TITLE_MAX_LENGTH,
|
|
52
|
+
TEMPLATE_DESC_MAX_LENGTH,
|
|
54
53
|
FALLBACK_MESSAGE_MAX_LENGTH,
|
|
55
54
|
TAG,
|
|
56
55
|
EMBEDDED,
|
|
@@ -172,11 +171,9 @@ export const Rcs = (props) => {
|
|
|
172
171
|
const paramObj = params || {};
|
|
173
172
|
useEffect(() => {
|
|
174
173
|
const { id } = paramObj;
|
|
175
|
-
if (id) {
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
actions.getTemplateDetails(id, setSpin);
|
|
179
|
-
}
|
|
174
|
+
if (id && isFullMode) {
|
|
175
|
+
setSpin(true);
|
|
176
|
+
actions.getTemplateDetails(id, setSpin);
|
|
180
177
|
}
|
|
181
178
|
//cleanup code
|
|
182
179
|
return () => {
|
|
@@ -189,21 +186,21 @@ export const Rcs = (props) => {
|
|
|
189
186
|
? rcsData.templateDetails || {}
|
|
190
187
|
: templateData || {};
|
|
191
188
|
const editContent = get(versions, `base.content.RCS`, {});
|
|
192
|
-
if (
|
|
189
|
+
if (!isEmpty(editContent)) {
|
|
193
190
|
const { cardContent = [], smsFallBackContent = {} } = editContent;
|
|
194
191
|
const {
|
|
195
|
-
media
|
|
196
|
-
mediaType,
|
|
197
|
-
title,
|
|
198
|
-
description,
|
|
192
|
+
media: { mediaUrl = '' } = {},
|
|
193
|
+
mediaType = '',
|
|
194
|
+
title = '',
|
|
195
|
+
description = '',
|
|
199
196
|
} = cardContent[0] || {};
|
|
200
197
|
const { message, templateConfigs = {} } = smsFallBackContent;
|
|
201
198
|
setTemplateName(name);
|
|
202
|
-
setFallbackMessage(message);
|
|
203
|
-
setTemplateDesc(description);
|
|
204
|
-
setTemplateTitle(title);
|
|
205
199
|
setTemplateMediaType(mediaType);
|
|
206
|
-
updateRcsImageSrc(
|
|
200
|
+
updateRcsImageSrc(mediaUrl);
|
|
201
|
+
setTemplateTitle(title);
|
|
202
|
+
setTemplateDesc(description);
|
|
203
|
+
setFallbackMessage(message);
|
|
207
204
|
setEditFlow(true);
|
|
208
205
|
// for DLT Fallback message
|
|
209
206
|
if (isDltEnabled) {
|
|
@@ -217,11 +214,10 @@ export const Rcs = (props) => {
|
|
|
217
214
|
if (header.length > 0) {
|
|
218
215
|
const tempData = {
|
|
219
216
|
versions: {
|
|
220
|
-
// eslint-disable-next-line no-undef
|
|
221
217
|
base: {
|
|
222
218
|
header,
|
|
223
|
-
|
|
224
|
-
|
|
219
|
+
'template_id': templateId,
|
|
220
|
+
'template_name': tmpName,
|
|
225
221
|
'sms-editor': template,
|
|
226
222
|
'var-mapped': templateVariableMapping,
|
|
227
223
|
},
|
|
@@ -361,7 +357,7 @@ export const Rcs = (props) => {
|
|
|
361
357
|
}) || {};
|
|
362
358
|
if (value === '' && isMediaTypeNone) {
|
|
363
359
|
errorMessage = formatMessage(messages.emptyTemplateDescErrorMessage);
|
|
364
|
-
} else if (value?.length >
|
|
360
|
+
} else if (value?.length > TEMPLATE_DESC_MAX_LENGTH) {
|
|
365
361
|
errorMessage = formatMessage(messages.templateDescLengthError);
|
|
366
362
|
} else if (unsupportedTags?.length > 0) {
|
|
367
363
|
errorMessage = formatMessage(
|
|
@@ -408,21 +404,21 @@ export const Rcs = (props) => {
|
|
|
408
404
|
{/* template title */}
|
|
409
405
|
{renderLabel('templateTitle', true)}
|
|
410
406
|
<CapInput
|
|
411
|
-
id=
|
|
407
|
+
id="rcs-template-title-input"
|
|
412
408
|
onChange={onTemplateTitleChange}
|
|
413
409
|
placeholder={formatMessage(messages.templateTitlePlaceholder)}
|
|
414
410
|
value={templateTitle || ''}
|
|
415
411
|
size="default"
|
|
416
|
-
maxLength={
|
|
412
|
+
maxLength={TEMPLATE_TITLE_MAX_LENGTH}
|
|
417
413
|
suffix={
|
|
418
|
-
<CapLabel type="label1">{`${templateTitle.length} /
|
|
414
|
+
<CapLabel type="label1">{`${templateTitle.length} / ${TEMPLATE_TITLE_MAX_LENGTH}`}</CapLabel>
|
|
419
415
|
}
|
|
420
416
|
/>
|
|
421
417
|
{/* template message */}
|
|
422
|
-
<CapRow id=
|
|
418
|
+
<CapRow id="rcs-template-message-label">
|
|
423
419
|
<CapHeader
|
|
424
420
|
title={
|
|
425
|
-
<CapRow
|
|
421
|
+
<CapRow type="flex">
|
|
426
422
|
<CapHeading type="h4">
|
|
427
423
|
{formatMessage(messages.templateDescLabel)}
|
|
428
424
|
</CapHeading>
|
|
@@ -446,7 +442,7 @@ export const Rcs = (props) => {
|
|
|
446
442
|
/>
|
|
447
443
|
</CapRow>
|
|
448
444
|
<TextArea
|
|
449
|
-
id=
|
|
445
|
+
id="rcs_template_message_textarea"
|
|
450
446
|
autosize={{ minRows: 3, maxRows: 5 }}
|
|
451
447
|
placeholder={formatMessage(messages.templateDescPlaceholder)}
|
|
452
448
|
onChange={onTemplateDescChange}
|
|
@@ -460,7 +456,9 @@ export const Rcs = (props) => {
|
|
|
460
456
|
const fallbackSmsLength = () => (
|
|
461
457
|
<CapLabel type="label1" className="fallback-sms-length">
|
|
462
458
|
{formatMessage(messages.totalCharacters, {
|
|
463
|
-
smsCount: Math.ceil(
|
|
459
|
+
smsCount: Math.ceil(
|
|
460
|
+
fallbackMessage.length / FALLBACK_MESSAGE_MAX_LENGTH,
|
|
461
|
+
),
|
|
464
462
|
number: fallbackMessage.length,
|
|
465
463
|
})}
|
|
466
464
|
</CapLabel>
|
|
@@ -477,7 +475,7 @@ export const Rcs = (props) => {
|
|
|
477
475
|
const closeDltContainerHandler = () => {
|
|
478
476
|
setShowDltContainer(false);
|
|
479
477
|
setDltMode('');
|
|
480
|
-
templatesActions.getAllTemplates('Rcs', { page: 1, perPage: 25 })
|
|
478
|
+
templatesActions.getAllTemplates('Rcs', { page: 1, perPage: 25 });
|
|
481
479
|
};
|
|
482
480
|
|
|
483
481
|
const rcsDltEditSelectHandler = (data) => {
|
|
@@ -618,7 +616,7 @@ export const Rcs = (props) => {
|
|
|
618
616
|
>
|
|
619
617
|
<CapHeader
|
|
620
618
|
title={
|
|
621
|
-
<CapRow
|
|
619
|
+
<CapRow type="flex">
|
|
622
620
|
<CapHeading type="h4">
|
|
623
621
|
{formatMessage(messages.fallbackLabel)}
|
|
624
622
|
</CapHeading>
|
|
@@ -712,7 +710,7 @@ export const Rcs = (props) => {
|
|
|
712
710
|
/>
|
|
713
711
|
</CapRow>
|
|
714
712
|
<TextArea
|
|
715
|
-
id=
|
|
713
|
+
id="rcs_fallback_message_textarea"
|
|
716
714
|
autosize={{ minRows: 3, maxRows: 5 }}
|
|
717
715
|
placeholder={formatMessage(messages.fallbackMsgPlaceholder)}
|
|
718
716
|
onChange={onFallbackMessageChange}
|
|
@@ -762,8 +760,8 @@ export const Rcs = (props) => {
|
|
|
762
760
|
updateImageSrc={setUpdateRcsImageSrc}
|
|
763
761
|
updateOnReUpload={updateOnRcsImageReUpload}
|
|
764
762
|
index={0}
|
|
765
|
-
className=
|
|
766
|
-
key=
|
|
763
|
+
className="cap-custom-image-upload"
|
|
764
|
+
key="rcs-uploaded-image"
|
|
767
765
|
imageData={rcsData}
|
|
768
766
|
channel={RCS}
|
|
769
767
|
/>
|
|
@@ -949,7 +947,7 @@ export const Rcs = (props) => {
|
|
|
949
947
|
{/* template name */}
|
|
950
948
|
{isFullMode && (
|
|
951
949
|
<CapInput
|
|
952
|
-
id=
|
|
950
|
+
id="rcs_template_name_input"
|
|
953
951
|
onChange={onTemplateNameChange}
|
|
954
952
|
errorMessage={templateNameError}
|
|
955
953
|
placeholder={formatMessage(
|
|
@@ -966,7 +964,7 @@ export const Rcs = (props) => {
|
|
|
966
964
|
options={mediaRadioOptions || []}
|
|
967
965
|
value={templateMediaType}
|
|
968
966
|
onChange={onTemplateMediaTypeChange}
|
|
969
|
-
className=
|
|
967
|
+
className="rcs-radio"
|
|
970
968
|
/>
|
|
971
969
|
{getMediaBasedComponent()}
|
|
972
970
|
<CapDivider style={{ margin: `${CAP_SPACE_28} 0` }} />
|
|
@@ -983,8 +981,8 @@ export const Rcs = (props) => {
|
|
|
983
981
|
title={
|
|
984
982
|
isDisableDone()
|
|
985
983
|
? formatMessage(messages.rcsDoneBtnToolTip, {
|
|
986
|
-
|
|
987
|
-
|
|
984
|
+
type: formatMessage(messages[mediaTypeMsg]),
|
|
985
|
+
})
|
|
988
986
|
: ''
|
|
989
987
|
}
|
|
990
988
|
placement={'right'}
|
|
@@ -1026,7 +1024,9 @@ export const Rcs = (props) => {
|
|
|
1026
1024
|
className="margin-t-16"
|
|
1027
1025
|
>
|
|
1028
1026
|
{formatMessage(messages.totalCharacters, {
|
|
1029
|
-
smsCount: Math.ceil(
|
|
1027
|
+
smsCount: Math.ceil(
|
|
1028
|
+
tempMsg.length / FALLBACK_MESSAGE_MAX_LENGTH,
|
|
1029
|
+
),
|
|
1030
1030
|
number: tempMsg.length,
|
|
1031
1031
|
})}
|
|
1032
1032
|
</CapHeading>
|
|
@@ -23,7 +23,7 @@ export function* uploadRcsAsset(file, assetType, fileParams) {
|
|
|
23
23
|
yield put({
|
|
24
24
|
type: UPLOAD_RCS_ASSET_SUCCESS,
|
|
25
25
|
data: result.response.asset,
|
|
26
|
-
statusCode: result
|
|
26
|
+
statusCode: result?.status?.code || '',
|
|
27
27
|
templateType: file.templateType,
|
|
28
28
|
});
|
|
29
29
|
} catch (error) {
|
|
@@ -50,7 +50,7 @@ export function* createRCSTemplate({ template, callback }) {
|
|
|
50
50
|
yield put({
|
|
51
51
|
type: CREATE_RCS_TEMPLATE_SUCCESS,
|
|
52
52
|
data: result.response,
|
|
53
|
-
statusCode: result
|
|
53
|
+
statusCode: result?.status?.code || '',
|
|
54
54
|
errorMsg,
|
|
55
55
|
});
|
|
56
56
|
if (callback) {
|
|
@@ -87,7 +87,7 @@ export function* editTemplate({ template, callback }) {
|
|
|
87
87
|
yield put({
|
|
88
88
|
type: EDIT_RCS_TEMPLATE_SUCCESS,
|
|
89
89
|
data: result.response,
|
|
90
|
-
statusCode: result
|
|
90
|
+
statusCode: result?.status?.code || '',
|
|
91
91
|
errorMsg,
|
|
92
92
|
});
|
|
93
93
|
if (callback) {
|
|
@@ -662,6 +662,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
662
662
|
const { name = '', versions = {} } = whatsappSelectedTemplateData;
|
|
663
663
|
creativesParams.whatsappTemplateName = name;
|
|
664
664
|
creativesParams.whatsappTemplateCategory = get(versions, `base.content.whatsapp.category`, '');
|
|
665
|
+
creativesParams.whatsappTemplateLanguageCode = get(versions, `base.content.whatsapp.languages[0].language`, '');
|
|
665
666
|
}
|
|
666
667
|
}
|
|
667
668
|
creativesParams.type = this.state.channel.toUpperCase();
|
|
@@ -129,3 +129,290 @@ export const WHATSAPP_MEDIA_TYPES = {
|
|
|
129
129
|
IMAGE: 'IMAGE',
|
|
130
130
|
VIDEO: 'VIDEO',
|
|
131
131
|
};
|
|
132
|
+
|
|
133
|
+
export const LANGUAGE_OPTIONS = [
|
|
134
|
+
{
|
|
135
|
+
value: 'af',
|
|
136
|
+
label: <FormattedMessage {...messages.afrikaans} />,
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
value: 'sq',
|
|
140
|
+
label: <FormattedMessage {...messages.albanian} />,
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
value: 'ar',
|
|
144
|
+
label: <FormattedMessage {...messages.arabic} />,
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
value: 'az',
|
|
148
|
+
label: <FormattedMessage {...messages.azerbaijani} />,
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
value: 'bn',
|
|
152
|
+
label: <FormattedMessage {...messages.bengali} />,
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
value: 'bg',
|
|
156
|
+
label: <FormattedMessage {...messages.bulgarian} />,
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
value: 'ca',
|
|
160
|
+
label: <FormattedMessage {...messages.catalan} />,
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
value: 'zh_CN',
|
|
164
|
+
label: <FormattedMessage {...messages.chineseCHN} />,
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
value: 'zh_HK',
|
|
168
|
+
label: <FormattedMessage {...messages.chineseHKG} />,
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
value: 'zh_TW',
|
|
172
|
+
label: <FormattedMessage {...messages.chineseTAI} />,
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
value: 'hr',
|
|
176
|
+
label: <FormattedMessage {...messages.croatian} />,
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
value: 'cs',
|
|
180
|
+
label: <FormattedMessage {...messages.czech} />,
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
value: 'da',
|
|
184
|
+
label: <FormattedMessage {...messages.danish} />,
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
value: 'nl',
|
|
188
|
+
label: <FormattedMessage {...messages.dutch} />,
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
value: 'en',
|
|
192
|
+
label: <FormattedMessage {...messages.english} />,
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
value: 'en_GB',
|
|
196
|
+
label: <FormattedMessage {...messages.englishUK} />,
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
value: 'en_US',
|
|
200
|
+
label: <FormattedMessage {...messages.englishUS} />,
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
value: 'et',
|
|
204
|
+
label: <FormattedMessage {...messages.estonian} />,
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
value: 'fil',
|
|
208
|
+
label: <FormattedMessage {...messages.filipino} />,
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
value: 'fi',
|
|
212
|
+
label: <FormattedMessage {...messages.finnish} />,
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
value: 'fr',
|
|
216
|
+
label: <FormattedMessage {...messages.french} />,
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
value: 'ka',
|
|
220
|
+
label: <FormattedMessage {...messages.georgian} />,
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
value: 'de',
|
|
224
|
+
label: <FormattedMessage {...messages.german} />,
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
value: 'el',
|
|
228
|
+
label: <FormattedMessage {...messages.greek} />,
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
value: 'gu',
|
|
232
|
+
label: <FormattedMessage {...messages.gujarati} />,
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
value: 'ha',
|
|
236
|
+
label: <FormattedMessage {...messages.hausa} />,
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
value: 'he',
|
|
240
|
+
label: <FormattedMessage {...messages.hebrew} />,
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
value: 'hi',
|
|
244
|
+
label: <FormattedMessage {...messages.hindi} />,
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
value: 'hu',
|
|
248
|
+
label: <FormattedMessage {...messages.hungarian} />,
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
value: 'id',
|
|
252
|
+
label: <FormattedMessage {...messages.indonesian} />,
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
value: 'ga',
|
|
256
|
+
label: <FormattedMessage {...messages.irish} />,
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
value: 'it',
|
|
260
|
+
label: <FormattedMessage {...messages.italian} />,
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
value: 'ja',
|
|
264
|
+
label: <FormattedMessage {...messages.japanese} />,
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
value: 'kn',
|
|
268
|
+
label: <FormattedMessage {...messages.kannada} />,
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
value: 'kk',
|
|
272
|
+
label: <FormattedMessage {...messages.kazakh} />,
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
value: 'rw_RW',
|
|
276
|
+
label: <FormattedMessage {...messages.kinyarwanda} />,
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
value: 'ko',
|
|
280
|
+
label: <FormattedMessage {...messages.korean} />,
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
value: 'ky_KG',
|
|
284
|
+
label: <FormattedMessage {...messages.kyrgyz} />,
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
value: 'lo',
|
|
288
|
+
label: <FormattedMessage {...messages.lao} />,
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
value: 'lv',
|
|
292
|
+
label: <FormattedMessage {...messages.latvian} />,
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
value: 'lt',
|
|
296
|
+
label: <FormattedMessage {...messages.lithuanian} />,
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
value: 'mk',
|
|
300
|
+
label: <FormattedMessage {...messages.macedonian} />,
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
value: 'ms',
|
|
304
|
+
label: <FormattedMessage {...messages.malay} />,
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
value: 'ml',
|
|
308
|
+
label: <FormattedMessage {...messages.malayalam} />,
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
value: 'mr',
|
|
312
|
+
label: <FormattedMessage {...messages.marathi} />,
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
value: 'nb',
|
|
316
|
+
label: <FormattedMessage {...messages.norwegian} />,
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
value: 'fa',
|
|
320
|
+
label: <FormattedMessage {...messages.persian} />,
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
value: 'pl',
|
|
324
|
+
label: <FormattedMessage {...messages.polish} />,
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
value: 'pt_BR',
|
|
328
|
+
label: <FormattedMessage {...messages.portugueseBR} />,
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
value: 'pt_PT',
|
|
332
|
+
label: <FormattedMessage {...messages.portuguesePOR} />,
|
|
333
|
+
},
|
|
334
|
+
{
|
|
335
|
+
value: 'pa',
|
|
336
|
+
label: <FormattedMessage {...messages.punjabi} />,
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
value: 'ro',
|
|
340
|
+
label: <FormattedMessage {...messages.romanian} />,
|
|
341
|
+
},
|
|
342
|
+
{
|
|
343
|
+
value: 'ru',
|
|
344
|
+
label: <FormattedMessage {...messages.russian} />,
|
|
345
|
+
},
|
|
346
|
+
{
|
|
347
|
+
value: 'sr',
|
|
348
|
+
label: <FormattedMessage {...messages.serbian} />,
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
value: 'sk',
|
|
352
|
+
label: <FormattedMessage {...messages.slovak} />,
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
value: 'sl',
|
|
356
|
+
label: <FormattedMessage {...messages.slovenian} />,
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
value: 'es',
|
|
360
|
+
label: <FormattedMessage {...messages.spanish} />,
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
value: 'es_AR',
|
|
364
|
+
label: <FormattedMessage {...messages.spanishARG} />,
|
|
365
|
+
},
|
|
366
|
+
{
|
|
367
|
+
value: 'es_ES',
|
|
368
|
+
label: <FormattedMessage {...messages.spanishSPA} />,
|
|
369
|
+
},
|
|
370
|
+
{
|
|
371
|
+
value: 'es_MX',
|
|
372
|
+
label: <FormattedMessage {...messages.spanishMEX} />,
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
value: 'sw',
|
|
376
|
+
label: <FormattedMessage {...messages.swahili} />,
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
value: 'sv',
|
|
380
|
+
label: <FormattedMessage {...messages.swedish} />,
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
value: 'ta',
|
|
384
|
+
label: <FormattedMessage {...messages.tamil} />,
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
value: 'te',
|
|
388
|
+
label: <FormattedMessage {...messages.telugu} />,
|
|
389
|
+
},
|
|
390
|
+
{
|
|
391
|
+
value: 'th',
|
|
392
|
+
label: <FormattedMessage {...messages.thai} />,
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
value: 'tr',
|
|
396
|
+
label: <FormattedMessage {...messages.turkish} />,
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
value: 'uk',
|
|
400
|
+
label: <FormattedMessage {...messages.ukrainian} />,
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
value: 'ur',
|
|
404
|
+
label: <FormattedMessage {...messages.urdu} />,
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
value: 'uz',
|
|
408
|
+
label: <FormattedMessage {...messages.uzbek} />,
|
|
409
|
+
},
|
|
410
|
+
{
|
|
411
|
+
value: 'vi',
|
|
412
|
+
label: <FormattedMessage {...messages.vietnamese} />,
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
value: 'zu',
|
|
416
|
+
label: <FormattedMessage {...messages.zulu} />,
|
|
417
|
+
},
|
|
418
|
+
];
|