@seamly/web-ui 18.3.0 → 19.0.0-beta.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 (109) hide show
  1. package/build/dist/lib/index.debug.js +349 -74
  2. package/build/dist/lib/index.debug.min.js +1 -1
  3. package/build/dist/lib/index.debug.min.js.LICENSE.txt +108 -8
  4. package/build/dist/lib/index.js +6103 -5988
  5. package/build/dist/lib/index.min.js +1 -1
  6. package/build/dist/lib/index.min.js.LICENSE.txt +1 -1
  7. package/build/dist/lib/standalone.js +2414 -2226
  8. package/build/dist/lib/standalone.min.js +1 -1
  9. package/build/dist/lib/standalone.min.js.LICENSE.txt +1 -1
  10. package/build/dist/lib/storage.js +8 -1
  11. package/build/dist/lib/storage.min.js +1 -1
  12. package/build/dist/lib/style-guide.js +1517 -785
  13. package/build/dist/lib/style-guide.min.js +1 -1
  14. package/build/dist/lib/styles.css +1 -1
  15. package/package.json +27 -28
  16. package/src/javascripts/api/index.js +25 -40
  17. package/src/javascripts/api/producer.js +3 -6
  18. package/src/javascripts/config.js +3 -3
  19. package/src/javascripts/domains/app/actions.js +28 -11
  20. package/src/javascripts/domains/app/hooks.js +6 -0
  21. package/src/javascripts/domains/app/index.js +3 -0
  22. package/src/javascripts/domains/app/reducer.js +16 -0
  23. package/src/javascripts/domains/app/selectors.js +8 -0
  24. package/src/javascripts/domains/app/utils.js +4 -0
  25. package/src/javascripts/domains/config/actions.js +1 -3
  26. package/src/javascripts/domains/config/middleware.js +0 -4
  27. package/src/javascripts/domains/config/reducer.js +2 -13
  28. package/src/javascripts/domains/config/selectors.js +3 -3
  29. package/src/javascripts/domains/config/utils.js +4 -0
  30. package/src/javascripts/domains/forms/actions.js +1 -3
  31. package/src/javascripts/domains/forms/reducer.js +1 -2
  32. package/src/javascripts/domains/forms/selectors.js +2 -2
  33. package/src/javascripts/domains/forms/utils.js +5 -0
  34. package/src/javascripts/domains/i18n/actions.js +20 -0
  35. package/src/javascripts/domains/i18n/hooks.js +38 -0
  36. package/src/javascripts/domains/i18n/index.js +5 -84
  37. package/src/javascripts/domains/i18n/reducer.js +64 -0
  38. package/src/javascripts/domains/i18n/selectors.js +15 -0
  39. package/src/javascripts/domains/i18n/utils.js +4 -0
  40. package/src/javascripts/domains/interrupt/actions.js +1 -3
  41. package/src/javascripts/domains/interrupt/reducer.js +1 -2
  42. package/src/javascripts/domains/interrupt/selectors.js +3 -2
  43. package/src/javascripts/domains/interrupt/utils.js +4 -0
  44. package/src/javascripts/domains/redux/hooks.js +1 -0
  45. package/src/javascripts/domains/store/index.js +7 -1
  46. package/src/javascripts/domains/translations/actions.js +1 -3
  47. package/src/javascripts/domains/translations/components/chat-status.js +1 -1
  48. package/src/javascripts/domains/translations/components/options-dialog/form.js +11 -6
  49. package/src/javascripts/domains/translations/index.js +1 -0
  50. package/src/javascripts/domains/translations/middleware.js +43 -0
  51. package/src/javascripts/domains/translations/reducer.js +2 -9
  52. package/src/javascripts/domains/translations/selectors.js +2 -2
  53. package/src/javascripts/domains/translations/utils.js +4 -0
  54. package/src/javascripts/index.js +3 -0
  55. package/src/javascripts/lib/engine/index.js +1 -0
  56. package/src/javascripts/lib/mutex.js +30 -0
  57. package/src/javascripts/lib/redux-helpers/index.js +55 -16
  58. package/src/javascripts/lib/store/providers/session-storage.js +6 -1
  59. package/src/javascripts/style-guide/components/app.js +7 -2
  60. package/src/javascripts/style-guide/components/static-core.js +9 -3
  61. package/src/javascripts/style-guide/states.js +8 -8
  62. package/src/javascripts/style-guide/style-guide-engine.js +14 -11
  63. package/src/javascripts/ui/components/conversation/event/divider/variants/new-translation.js +1 -1
  64. package/src/javascripts/ui/components/conversation/event/upload.js +2 -2
  65. package/src/javascripts/ui/components/core/seamly-activity-monitor.js +2 -0
  66. package/src/javascripts/ui/components/core/seamly-event-subscriber.js +2 -0
  67. package/src/javascripts/ui/components/core/seamly-instance-functions-loader.js +1 -7
  68. package/src/javascripts/ui/components/core/seamly-new-notifications.js +5 -6
  69. package/src/javascripts/ui/components/core/seamly-read-state.js +6 -4
  70. package/src/javascripts/ui/components/entry/text-entry/hooks.js +6 -4
  71. package/src/javascripts/ui/components/entry/text-entry/text-entry-form.js +10 -3
  72. package/src/javascripts/ui/components/entry/upload/file-upload-form.js +6 -3
  73. package/src/javascripts/ui/components/entry/upload/index.js +8 -3
  74. package/src/javascripts/ui/components/faq/faq.js +2 -2
  75. package/src/javascripts/ui/components/layout/app-frame.js +11 -8
  76. package/src/javascripts/ui/components/layout/interrupt.js +6 -2
  77. package/src/javascripts/ui/components/warnings/resume-conversation-prompt.js +1 -1
  78. package/src/javascripts/ui/components/widgets/upload-progress.js +1 -1
  79. package/src/javascripts/ui/hooks/seamly-api-hooks.js +0 -6
  80. package/src/javascripts/ui/hooks/seamly-entry-hooks.js +17 -21
  81. package/src/javascripts/ui/hooks/seamly-hooks.js +0 -1
  82. package/src/javascripts/ui/hooks/use-seamly-commands.js +5 -6
  83. package/src/javascripts/ui/hooks/use-seamly-visibility.js +3 -5
  84. package/src/javascripts/ui/hooks/use-single-file-upload.js +4 -1
  85. package/src/javascripts/ui/utils/general-utils.js +6 -13
  86. package/src/stylesheets/1-settings/_config.scss +2 -1
  87. package/src/stylesheets/3-app/_app.scss +3 -4
  88. package/src/stylesheets/5-components/_faq.scss +3 -8
  89. package/src/stylesheets/5-components/_modal.scss +3 -3
  90. package/webpack/config.package.js +0 -18
  91. package/webpack/config.site.js +6 -0
  92. package/webpack/defaults.js +0 -3
  93. package/CHANGELOG.md +0 -573
  94. package/build/dist/translations/de-informal.js +0 -274
  95. package/build/dist/translations/de-informal.min.js +0 -1
  96. package/build/dist/translations/en.js +0 -274
  97. package/build/dist/translations/en.min.js +0 -1
  98. package/build/dist/translations/es-informal.js +0 -280
  99. package/build/dist/translations/es-informal.min.js +0 -1
  100. package/build/dist/translations/nl-formal.js +0 -274
  101. package/build/dist/translations/nl-formal.min.js +0 -1
  102. package/build/dist/translations/nl-informal.js +0 -274
  103. package/build/dist/translations/nl-informal.min.js +0 -1
  104. package/src/javascripts/lib/i18n.js +0 -46
  105. package/translations/de-informal.js +0 -235
  106. package/translations/en.js +0 -232
  107. package/translations/es-informal.js +0 -241
  108. package/translations/nl-formal.js +0 -228
  109. package/translations/nl-informal.js +0 -228
@@ -1,232 +0,0 @@
1
- // Please note: All texts containing the string 'srText' are short for
2
- // Screen Reader Text. These texts are invisible on screen but broadcast
3
- // to screen readers. Avoid undue verbosity, but ensure that a user who cannot
4
- // see the screen will get both the message content as well as the context
5
- // in which the message occurred if not already clear from the current
6
- // position of the keyboard focus.
7
- // Example: An error occurs in the chat window and this error has an 'srText'
8
- // entry. Because the error could occur while the user is NOT chatting in the window,
9
- // add context such as "Something went wrong with the chat session" as just saying
10
- // "Something went wrong" would not be clear enough for users who cannot see the
11
- // source of the error on screen.
12
-
13
- export default {
14
- 'carousel.controls.next': 'Next',
15
- 'carousel.controls.previous': 'Previous',
16
- 'carousel.slide.label': ({ index, total }) => `${index} of ${total}`,
17
- 'dateTime.srText': ({ date, time }) =>
18
- `Messages starting ${date} at ${time}:`,
19
- 'dateTime.today': 'Today',
20
- 'dateTime.yesterday': 'Yesterday',
21
- 'disclaimer.content':
22
- 'This chat session will be saved to help us improve our service delivery.',
23
- 'disclaimer.title': 'Privacy disclaimer',
24
- 'dividerKeys.newTopic': 'New topic started.',
25
- 'errors.configError.message':
26
- 'We are sorry this happened, please retry at a later time.',
27
- 'errors.configError.srText':
28
- 'A chat configuration error occurred. Our apologies, please retry at a later time.',
29
- 'errors.configError.title': 'Chat configuration error.',
30
- 'errors.general.buttonText': 'Restart chat',
31
- 'errors.general.message': 'Do you want to start a new chat session?',
32
- 'errors.general.srText':
33
- 'Something went wrong with the chat session. You can restart the chat.',
34
- 'errors.general.title': 'Something went wrong',
35
- 'errors.seamlyOffline.message':
36
- 'There might be a problem with your or our network connection. The chat session should resume as soon the connection is available again.',
37
- 'errors.seamlyOffline.srText':
38
- 'The chat has connection issues. There might be a problem with your or our network connection. The chat session should resume as soon as the connection is available again.',
39
- 'errors.seamlyOffline.title': 'Connection issues',
40
- 'faq.headingText': 'Suggested topics',
41
- 'faq.srAvailableText': 'Suggested topics are available in the chat.',
42
- 'faq.srUnavailableText':
43
- 'Suggested topics are no longer available in the chat.',
44
- 'faq.srUpdatedText': 'There are new suggested topics in the chat.',
45
- 'fileUpload.cancelButtonText': 'Cancel upload',
46
- 'fileUpload.contentHint': size => `Select a file of maximum ${size}`,
47
- 'fileUpload.errors.general':
48
- 'Something went wrong with the upload. Please cancel the upload and try again.',
49
- 'fileUpload.errors.noFile': 'Please select a file to upload',
50
- 'fileUpload.errors.tooLarge':
51
- 'The selected file is too large, please upload a smaller file',
52
- 'fileUpload.errors.unavailable':
53
- 'Uploading files is no longer possible. Please cancel the upload and try again later.',
54
- 'fileUpload.errors.virusFound':
55
- 'The selected file is unsafe, please upload a different file.',
56
- 'fileUpload.errors.wrongType':
57
- 'The selected file type is not supported. Please cancel the upload and upload a different file.',
58
- 'fileUpload.fileUnavailableText': 'This download link has expired',
59
- 'fileUpload.labelText': 'Select file',
60
- 'fileUpload.selectedText': fileName => {
61
- if (fileName) {
62
- return fileName
63
- } else {
64
- return 'No file selected'
65
- }
66
- },
67
- 'fileUpload.srAvailableText': 'File uploads are now available in the chat.',
68
- 'fileUpload.srCompleteText': 'Upload complete.',
69
- 'fileUpload.srFileDownloadText': fileName => `Download file ${fileName}.`,
70
- 'fileUpload.srFileUploadedText': fileName => `Uploaded file ${fileName}.`,
71
- 'fileUpload.srProgressLabel': fileName =>
72
- `${fileName} upload progress status`,
73
- 'fileUpload.srStartedText': 'Upload started.',
74
- 'fileUpload.srUnavailableText':
75
- 'File uploads in the chat are no longer available.',
76
- 'fileUpload.toggleButtonText': 'Upload files',
77
- 'fileUpload.uploadButtonText': 'Upload file',
78
- 'header.collapseApp': 'collapse chat',
79
- 'header.title': 'You\'re talking to',
80
- 'idleDetachWarning.continueButton': 'Continue conversation',
81
- 'idleDetachWarning.countdownText':
82
- 'Your conversation will automatically end in:',
83
- 'idleDetachWarning.countdownTimer': ({ minutes, seconds }) => {
84
- switch (minutes) {
85
- case 1:
86
- switch (seconds) {
87
- case 1:
88
- return '1 minute, 1 second'
89
- case 0:
90
- return '1 minute'
91
- default:
92
- return `1 minute, ${seconds} seconds`
93
- }
94
- case 0:
95
- switch (seconds) {
96
- case 1:
97
- return '1 second'
98
- case 0:
99
- default:
100
- return `${seconds} seconds`
101
- }
102
- default:
103
- switch (seconds) {
104
- case 1:
105
- return `${minutes} minutes, 1 second`
106
- case 0:
107
- return `${minutes} minutes`
108
- default:
109
- return `${minutes} minutes, ${seconds} seconds`
110
- }
111
- }
112
- },
113
- 'idleDetachWarning.countdownTitle': 'Are you still there?',
114
- 'idleDetachWarning.detachButton': 'End conversation',
115
- 'idleDetachWarning.notifyTransferText': 'Your conversation is being ended.',
116
- 'idleDetachWarning.srCountDownStoppedText':
117
- 'Automatic conversation ending prevented. Welcome back.',
118
- 'info.cobrowsing.cobrowsingEnded': 'Screen sharing has ended',
119
- 'info.cobrowsing.cobrowsingStarted':
120
- 'Screen sharing is now enabled. The agent can see the page you\'re currently on',
121
- 'info.sendTranscript.accepted': ({ emailAddress }) =>
122
- `A transcript will be sent to ${emailAddress}`,
123
- 'input.inputLabel': limit => {
124
- if (limit) {
125
- return `Your message (max. ${limit} characters)`
126
- }
127
- return 'Your message'
128
- },
129
- 'input.inputPlaceholder': limit => {
130
- if (limit) {
131
- return `Your message (max. ${limit} characters)`
132
- }
133
- return 'Your message'
134
- },
135
- 'input.sendMessage': 'Send',
136
- 'input.srCharacterLimitText': limit => {
137
- switch (limit) {
138
- case 1:
139
- return '1 character remaining.'
140
- case 0:
141
- default:
142
- return `${limit} characters remaining.`
143
- }
144
- },
145
- 'lightbox.closeLabel': 'Close',
146
- 'lightbox.heading': 'Enlarged chat image',
147
- 'message.choicePrompts.cancelChooseAgain': 'Cancel choice change',
148
- 'message.choicePrompts.chooseAgain': 'Change your choice',
149
- 'message.image.srTextEnlargeButtonLabel': ({ description }) =>
150
- `Enlarge ${description}`,
151
- 'message.srNewEventCount': ({ newCount }) => {
152
- switch (newCount) {
153
- case 1:
154
- return `There is 1 new chat message.`
155
- case 0:
156
- default:
157
- return `There are ${newCount} new chat messages.`
158
- }
159
- },
160
- 'message.srTextUnreadCount': ({ unreadCount }) => {
161
- switch (unreadCount) {
162
- case 1:
163
- return `There is 1 new unread chat message.`
164
- case 0:
165
- default:
166
- return `There are ${unreadCount} new unread chat messages.`
167
- }
168
- },
169
- 'options.cancelButtonText': 'Cancel',
170
- 'options.cobrowsing.cobrowsingActiveText': 'Sharing screen',
171
- 'options.cobrowsing.cobrowsingUnavailable':
172
- 'Screen sharing is currently unavailable.',
173
- 'options.cobrowsing.description':
174
- 'This allows the agent to see the page you\'re currently on. Nothing else is shared.',
175
- 'options.cobrowsing.labelTurnOff': 'Turn screen sharing off',
176
- 'options.cobrowsing.labelTurnOn': 'Turn screen sharing on',
177
- 'options.cobrowsing.menuTitle': 'Screen sharing',
178
- 'options.cobrowsing.srCobrowsingAvailable':
179
- 'Screen sharing is now available.',
180
- 'options.cobrowsing.srStartedCobrowsingText':
181
- 'Screen sharing has been started.',
182
- 'options.cobrowsing.srStopCobrowsingText': 'Stop screen sharing',
183
- 'options.cobrowsing.srStoppedCobrowsingText':
184
- 'Screen sharing has been stopped.',
185
- 'options.cobrowsing.stopCobrowsingText': 'Stop',
186
- 'options.cobrowsing.title': 'Share my screen',
187
- 'options.openButtonText': 'Options',
188
- 'options.saveButtonText': 'Save',
189
- 'options.sendTranscript.description':
190
- 'Enter the email address you would like to send the chat transcript to.',
191
- 'options.sendTranscript.invalidEmailText':
192
- 'Please enter a valid email address',
193
- 'options.sendTranscript.label': 'Email address',
194
- 'options.sendTranscript.menuTitle': 'Send transcript',
195
- 'options.sendTranscript.noEmailText': 'Please enter an email address',
196
- 'options.sendTranscript.sendButtonText': 'Send',
197
- 'options.sendTranscript.title': 'Send chat transcript',
198
- 'options.unavailableText': 'unavailable',
199
- 'resumeConversationPrompt.continueButton': 'Resume conversation',
200
- 'resumeConversationPrompt.detachButton': 'Ask new question',
201
- 'resumeConversationPrompt.title': name =>
202
- `Would you like to continue the conversation with ${name}?`,
203
- skiplinkText: 'Skip to chat input',
204
- 'toggleButton.resumeTitle': 'Resume chat with',
205
- 'toggleButton.subtitle': 'Start a chat with us',
206
- 'toggleButton.title': 'Have a question?',
207
- 'translations.divider.restartButtonText': 'Start again',
208
- 'translations.divider.startText': language => `Translating to ${language}`,
209
- 'translations.divider.stopText': language =>
210
- `Translating to ${language} ended`,
211
- 'translations.settings.cancelButtonText': 'Cancel',
212
- 'translations.settings.currentTranslationLabel': 'Currently translating to',
213
- 'translations.settings.defaultOptionLabel': 'Choose language',
214
- 'translations.settings.description':
215
- 'Automatic translations might contain errors.',
216
- 'translations.settings.endButtonText': 'Stop translating',
217
- 'translations.settings.inputLabel': 'Translate chat to',
218
- 'translations.settings.noLocaleText': 'Choose a language to translate to',
219
- 'translations.settings.openButtonText': 'Translation',
220
- 'translations.settings.startButtonText': 'Start translating',
221
- 'translations.settings.title': 'Translation',
222
- 'translations.status.label': language => `Translating to ${language}`,
223
- 'translations.status.srStopText': 'Stop translating',
224
- 'translations.status.stopText': 'Stop',
225
- 'translations.toggle.hideButtonText': 'Show original',
226
- 'translations.toggle.showButtonText': 'Show translation',
227
- 'window.srModalLayoutLabel': 'Chat window',
228
- 'window.srTexts.onClose': 'The chat is closed.',
229
- 'window.srTexts.onHistoryLoad': 'Chat history has been loaded.',
230
- 'window.srTexts.onLoad': 'Chat is available on this page.',
231
- 'window.srTexts.onOpen': 'The chat is opened.',
232
- }
@@ -1,241 +0,0 @@
1
- // Please note: All texts containing the string 'srText' are short for
2
- // Screen Reader Text. These texts are invisible on screen but broadcast
3
- // to screen readers. Avoid undue verbosity, but ensure that a user who cannot
4
- // see the screen will get both the message content as well as the context
5
- // in which the message occurred if not already clear from the current
6
- // position of the keyboard focus.
7
- // Example: An error occurs in the chat window and this error has an 'srText'
8
- // entry. Because the error could occur while the user is NOT chatting in the window,
9
- // add context such as "Something went wrong with the chat session" as just saying
10
- // "Something went wrong" would not be clear enough for users who cannot see the
11
- // source of the error on screen.
12
-
13
- export default {
14
- 'carousel.controls.next': 'Proximo',
15
- 'carousel.controls.previous': 'Previo',
16
- 'carousel.slide.label': ({ index, total }) => `${index} de ${total}`,
17
- 'dateTime.srText': ({ date, time }) => {
18
- const dateArticle =
19
- {
20
- Hoy: 'de',
21
- Ayer: 'de',
22
- }[date] || 'del'
23
-
24
- return `Mensajes a partir ${dateArticle} ${date} a las ${time}:`
25
- },
26
- 'dateTime.today': 'Hoy',
27
- 'dateTime.yesterday': 'Ayer',
28
- 'disclaimer.content':
29
- 'Esta sesión de chat se almacena para mejorar nuestro servicio.',
30
- 'disclaimer.title': 'Aviso legal de privacidad',
31
- 'dividerKeys.newTopic': 'Ha empezado un nuevo tema.',
32
- 'errors.configError.message':
33
- 'Hubo un error en la configuración, disculpe las molestias. Intenta nuevamente más tarde.',
34
- 'errors.configError.srText':
35
- 'Se produjo un error de configuración de chat. Nos disculpamos, intente nuevamente más tarde.',
36
- 'errors.configError.title': 'Error de configuración de chat.',
37
- 'errors.general.buttonText': 'Reiniciar chat',
38
- 'errors.general.message': '¿Quieres comenzar una nueva sesión de chat?',
39
- 'errors.general.srText':
40
- 'Algo salió mal con la sesión de chat. Puedes reiniciar el chat',
41
- 'errors.general.title': 'Algo salió mal ...',
42
- 'errors.seamlyOffline.message':
43
- 'Puede haber un problema con su conexión a internet. La sesión de chat se reanudará cuando la conexión vuelva a estar disponible.',
44
- 'errors.seamlyOffline.srText':
45
- 'El chat tiene problemas de conexión. Puede haber un problema con su conexión a internet. La sesión de chat se reanudará cuando la conexión vuelva a estar disponible.',
46
- 'errors.seamlyOffline.title': 'Problemas de conexión',
47
- 'faq.headingText': 'Temas sugeridos',
48
- 'faq.srAvailableText': 'Los temas sugeridos están disponibles en el chat.',
49
- 'faq.srUnavailableText':
50
- 'Los temas sugeridos ya no están disponibles en el chat.',
51
- 'faq.srUpdatedText': 'Hay nuevos temas sugeridos en el chat.',
52
- 'fileUpload.cancelButtonText': 'Cancelar subi',
53
- 'fileUpload.contentHint': size => `Elija un archivo hasta ${size}`,
54
- 'fileUpload.errors.general':
55
- 'Algo salió mal con la subi. Por favor, cancelar la subi y intentarlo de nuevo.',
56
- 'fileUpload.errors.noFile': 'Por favor, elija un archivo para subir',
57
- 'fileUpload.errors.tooLarge':
58
- 'El archivo subido es demasiado grande. Por favor, subi un archivo más pequeño.',
59
- 'fileUpload.errors.unavailable':
60
- 'Subi de archivos no es disponible. Por favor, cancelar la subi y intentarlo de nuevo más tarde.',
61
- 'fileUpload.errors.virusFound':
62
- 'El archivo seleccionado no es seguro, elija otro archivo.',
63
- 'fileUpload.errors.wrongType':
64
- 'El archivo subido no es compatible. Por favor, cancelar la subi y subir otro archivo.',
65
- 'fileUpload.fileUnavailableText': 'Este enlace de descarga ha expirado',
66
- 'fileUpload.labelText': 'Elija archivo',
67
- 'fileUpload.selectedText': fileName => {
68
- if (fileName) {
69
- return fileName
70
- } else {
71
- return 'No archivo elijado'
72
- }
73
- },
74
- 'fileUpload.srAvailableText': 'Subir archivos ahora es posible en el chat',
75
- 'fileUpload.srCompleteText': 'Subi completada.',
76
- 'fileUpload.srFileDownloadText': fileName => `Descargar archivo ${fileName}.`,
77
- 'fileUpload.srFileUploadedText': fileName => `Archivo subido ${fileName}.`,
78
- 'fileUpload.srProgressLabel': fileName =>
79
- `Subi estado de progreso de ${fileName}`,
80
- 'fileUpload.srStartedText': 'Subi comenzó.',
81
- 'fileUpload.srUnavailableText':
82
- 'Subir archivos ahora no es posible en el chat',
83
- 'fileUpload.toggleButtonText': 'Subir archivos',
84
- 'fileUpload.uploadButtonText': 'Subir archivo',
85
- 'header.collapseApp': 'Contraer el chat',
86
- 'header.title': 'Hablas ahora con',
87
- 'idleDetachWarning.continueButton': 'Continuar conversación',
88
- 'idleDetachWarning.countdownText':
89
- 'Tu conversación terminará automáticamente en:',
90
- 'idleDetachWarning.countdownTimer': ({ minutes, seconds }) => {
91
- switch (minutes) {
92
- case 1:
93
- switch (seconds) {
94
- case 1:
95
- return '1 minuto, 1 segundo'
96
- case 0:
97
- return '1 minuto'
98
- default:
99
- return `1 minuto, ${seconds} segundos`
100
- }
101
- case 0:
102
- switch (seconds) {
103
- case 1:
104
- return '1 segundo'
105
- case 0:
106
- default:
107
- return `${seconds} segundos`
108
- }
109
- default:
110
- switch (seconds) {
111
- case 1:
112
- return `${minutes} minutos, 1 segundo`
113
- case 0:
114
- return `${minutes} minutos`
115
- default:
116
- return `${minutes} minutos, ${seconds} segundos`
117
- }
118
- }
119
- },
120
- 'idleDetachWarning.countdownTitle': '¿Sigues ahí? ',
121
- 'idleDetachWarning.detachButton': 'Finalizar la conversación',
122
- 'idleDetachWarning.notifyTransferText': 'La conversación ha finalizado.',
123
- 'idleDetachWarning.srCountDownStoppedText':
124
- 'Terminación automática de la conversación cancelada. Bienvenido de nuevo!',
125
- 'info.cobrowsing.cobrowsingEnded': 'El intercambio de pantalla ha finalizado',
126
- 'info.cobrowsing.cobrowsingStarted':
127
- 'Compartir pantalla ahora está habilitado. El agente puede ver la página en la que se encuentra actualmente',
128
- 'info.sendTranscript.accepted': ({ emailAddress }) =>
129
- `La conversación del chat será enviada por correo electrónico a ${emailAddress}`,
130
- 'input.inputLabel': limit => {
131
- if (limit) {
132
- return `Su mensaje (max. ${limit} caracteres)`
133
- }
134
- return 'Tu mensaje'
135
- },
136
- 'input.inputPlaceholder': limit => {
137
- if (limit) {
138
- return `Su mensaje (max. ${limit} caracteres)`
139
- }
140
- return 'Tu mensaje'
141
- },
142
- 'input.sendMessage': 'Envia',
143
- 'input.srCharacterLimitText': limit => {
144
- switch (limit) {
145
- case 1:
146
- return '1 caracter restante.'
147
- case 0:
148
- default:
149
- return `${limit} caracteres restantes.`
150
- }
151
- },
152
- 'lightbox.closeLabel': 'Cerrar',
153
- 'lightbox.heading': 'Imagen de chat ampliada',
154
- 'message.choicePrompts.cancelChooseAgain': 'Cancelar cambio de elección',
155
- 'message.choicePrompts.chooseAgain': 'Cambia tu elección',
156
- 'message.image.srTextEnlargeButtonLabel': ({ description }) =>
157
- `Agranda ${description}`,
158
- 'message.srNewEventCount': ({ newCount }) => {
159
- switch (newCount) {
160
- case 1:
161
- return `Hay 1 nuevo mensaje de chat.`
162
- case 0:
163
- default:
164
- return `Hay ${newCount} nuevos mensajes de chat.`
165
- }
166
- },
167
- 'message.srTextUnreadCount': ({ unreadCount }) => {
168
- switch (unreadCount) {
169
- case 1:
170
- return `Hay 1 nuevo mensaje de chat no leído.`
171
- case 0:
172
- default:
173
- return `Hay ${unreadCount} nuevos mensajes de chat no leídos.`
174
- }
175
- },
176
- 'options.cancelButtonText': 'Cancelar',
177
- 'options.cobrowsing.cobrowsingActiveText': 'Pantalla compartida activa',
178
- 'options.cobrowsing.cobrowsingUnavailable':
179
- 'El intercambio de pantalla no está disponible en este momento.',
180
- 'options.cobrowsing.description':
181
- 'Esto le permite al agente ver la página en la que está actualmente. No se comparte nada más.',
182
- 'options.cobrowsing.labelTurnOff': 'Apaga el compartir de la pantalla',
183
- 'options.cobrowsing.labelTurnOn': 'Activar el uso compartido de la pantalla',
184
- 'options.cobrowsing.menuTitle': 'Compartir pantalla',
185
- 'options.cobrowsing.srCobrowsingAvailable':
186
- 'La pantalla compartida ya está disponible.',
187
- 'options.cobrowsing.srStartedCobrowsingText':
188
- 'La pantalla compartida está activada',
189
- 'options.cobrowsing.srStopCobrowsingText': 'Detener la pantalla compartida',
190
- 'options.cobrowsing.srStoppedCobrowsingText':
191
- 'Se ha detenido el uso compartido de la pantalla.',
192
- 'options.cobrowsing.stopCobrowsingText': 'Detener',
193
- 'options.cobrowsing.title': 'Compartir pantalla',
194
- 'options.openButtonText': 'Opciones',
195
- 'options.saveButtonText': 'Save',
196
- 'options.sendTranscript.description':
197
- 'Introduce la dirección de correo electrónico en la que quieres recibir la conversación del chat.',
198
- 'options.sendTranscript.invalidEmailText':
199
- 'Por favor, introduzca una dirección de correo electrónico válida',
200
- 'options.sendTranscript.label': 'Dirección de correo electrónico',
201
- 'options.sendTranscript.menuTitle': 'Enviar chat',
202
- 'options.sendTranscript.noEmailText':
203
- 'Por favor, introduzca una dirección de correo electrónico',
204
- 'options.sendTranscript.sendButtonText': 'Enviar',
205
- 'options.sendTranscript.title': 'Enviar conversación de chat',
206
- 'options.unavailableText': 'no disponible',
207
- 'resumeConversationPrompt.continueButton': 'Continuar la conversación',
208
- 'resumeConversationPrompt.detachButton': 'Haz una nueva pregunta',
209
- 'resumeConversationPrompt.title': name =>
210
- `¿Quieres continuar con esta conversación con ${name}?`,
211
- skiplinkText: 'A la barra de entrada',
212
- 'toggleButton.resumeTitle': 'Reanudar la conversación con',
213
- 'toggleButton.subtitle': 'Comienza un chat con nosotros',
214
- 'toggleButton.title': '¿Tienes una pregunta?',
215
- 'translations.divider.restartButtonText': 'Volver a empezar',
216
- 'translations.divider.startText': language => `Traduciendo a ${language}`,
217
- 'translations.divider.stopText': language =>
218
- `Traduciendo a ${language} terminado`,
219
- 'translations.settings.cancelButtonText': 'Cancelar',
220
- 'translations.settings.currentTranslationLabel':
221
- 'Actualmente se está traduciendo a',
222
- 'translations.settings.defaultOptionLabel': 'Elija el idioma',
223
- 'translations.settings.description':
224
- 'Las traducciones automáticas pueden contener errores.',
225
- 'translations.settings.endButtonText': 'Dejar de traducir',
226
- 'translations.settings.inputLabel': 'Traducir el chat a',
227
- 'translations.settings.noLocaleText': 'Elige un idioma al que traducir',
228
- 'translations.settings.openButtonText': 'Traducción',
229
- 'translations.settings.startButtonText': 'Empezar a traducir',
230
- 'translations.settings.title': 'Traducción',
231
- 'translations.status.label': language => `Traduciendo a ${language}`,
232
- 'translations.status.srStopText': 'Dejar de traducir',
233
- 'translations.status.stopText': 'Detener',
234
- 'translations.toggle.hideButtonText': 'Mostrar original',
235
- 'translations.toggle.showButtonText': 'Mostrar traducción',
236
- 'window.srModalLayoutLabel': 'Ventana de chat',
237
- 'window.srTexts.onClose': 'El chat está cerrado.',
238
- 'window.srTexts.onHistoryLoad': 'Se ha cargado el historial de chat.',
239
- 'window.srTexts.onLoad': 'El chat está disponible en esta página.',
240
- 'window.srTexts.onOpen': 'El chat está abierto.',
241
- }