@eifi1/ui-kit 0.37.0 โ 0.38.1
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/README.md +11 -4
- package/dist/eslint/index.js +1 -1
- package/dist/feedback/feedback-comment-thread.d.ts +87 -0
- package/dist/feedback/feedback-comment-thread.js +170 -0
- package/dist/feedback/feedback-comment-thread.js.map +1 -0
- package/dist/feedback/feedback-dialog-labels.js +2 -1
- package/dist/feedback/feedback-dialog-labels.js.map +1 -1
- package/dist/feedback/feedback-dialog.d.ts +13 -0
- package/dist/feedback/feedback-dialog.js +12 -4
- package/dist/feedback/feedback-dialog.js.map +1 -1
- package/dist/feedback/feedback-labels.d.ts +11 -0
- package/dist/feedback/feedback-labels.js +4 -1
- package/dist/feedback/feedback-labels.js.map +1 -1
- package/dist/feedback/feedback-menu-labels.js +2 -1
- package/dist/feedback/feedback-menu-labels.js.map +1 -1
- package/dist/feedback/feedback-menu.d.ts +17 -3
- package/dist/feedback/feedback-menu.js +11 -1
- package/dist/feedback/feedback-menu.js.map +1 -1
- package/dist/feedback/feedback-public-labels.d.ts +53 -0
- package/dist/feedback/feedback-public-labels.js +27 -0
- package/dist/feedback/feedback-public-labels.js.map +1 -0
- package/dist/feedback/feedback-public-list.d.ts +139 -0
- package/dist/feedback/feedback-public-list.js +299 -0
- package/dist/feedback/feedback-public-list.js.map +1 -0
- package/dist/feedback/feedback-public-switch.d.ts +51 -0
- package/dist/feedback/feedback-public-switch.js +50 -0
- package/dist/feedback/feedback-public-switch.js.map +1 -0
- package/dist/feedback/feedback-public-types.d.ts +75 -0
- package/dist/feedback/feedback-public-types.js +2 -0
- package/dist/feedback/feedback-public-types.js.map +1 -0
- package/dist/feedback/feedback-record.d.ts +32 -1
- package/dist/feedback/feedback-record.js +10 -0
- package/dist/feedback/feedback-record.js.map +1 -1
- package/dist/feedback/feedback-replies-context.d.ts +7 -0
- package/dist/feedback/feedback-replies-context.js +7 -0
- package/dist/feedback/feedback-replies-context.js.map +1 -0
- package/dist/feedback/feedback-replies.d.ts +97 -0
- package/dist/feedback/feedback-replies.js +114 -0
- package/dist/feedback/feedback-replies.js.map +1 -0
- package/dist/feedback/feedback-row-detail-labels.js +1 -0
- package/dist/feedback/feedback-row-detail-labels.js.map +1 -1
- package/dist/feedback/feedback-row-detail.d.ts +47 -10
- package/dist/feedback/feedback-row-detail.js +51 -50
- package/dist/feedback/feedback-row-detail.js.map +1 -1
- package/dist/feedback/feedback-submit-dialog.d.ts +3 -1
- package/dist/feedback/feedback-submit-dialog.js +6 -1
- package/dist/feedback/feedback-submit-dialog.js.map +1 -1
- package/dist/feedback/feedback-submit.d.ts +8 -0
- package/dist/feedback/feedback-submit.js +3 -2
- package/dist/feedback/feedback-submit.js.map +1 -1
- package/dist/feedback/feedback-table.d.ts +15 -5
- package/dist/feedback/feedback-table.js +46 -5
- package/dist/feedback/feedback-table.js.map +1 -1
- package/dist/feedback/feedback-thread-parts-labels.d.ts +6 -0
- package/dist/feedback/feedback-thread-parts-labels.js +36 -0
- package/dist/feedback/feedback-thread-parts-labels.js.map +1 -0
- package/dist/feedback/feedback-thread.d.ts +8 -0
- package/dist/feedback/feedback-thread.js +7 -2
- package/dist/feedback/feedback-thread.js.map +1 -1
- package/dist/feedback/feedback-vote-button.d.ts +49 -0
- package/dist/feedback/feedback-vote-button.js +72 -0
- package/dist/feedback/feedback-vote-button.js.map +1 -0
- package/dist/feedback.d.ts +6 -0
- package/dist/feedback.js +6 -0
- package/dist/feedback.js.map +1 -1
- package/dist/i18n/defaults.js +12 -0
- package/dist/i18n/defaults.js.map +1 -1
- package/dist/i18n/german.js +69 -3
- package/dist/i18n/german.js.map +1 -1
- package/dist/i18n/kit-labels.d.ts +16 -0
- package/dist/i18n/kit-labels.js.map +1 -1
- package/dist/i18n/locales/en.js +85 -3
- package/dist/i18n/locales/en.js.map +3 -3
- package/dist/i18n/locales/es.js +69 -3
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.js +69 -3
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hu.js +69 -3
- package/dist/i18n/locales/hu.js.map +1 -1
- package/dist/i18n/locales/it.js +69 -3
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/zh.js +69 -3
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/i18n/review.js +5 -0
- package/dist/i18n/review.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/notifications/feedback-notification-types-labels.d.ts +15 -0
- package/dist/notifications/feedback-notification-types-labels.js +11 -0
- package/dist/notifications/feedback-notification-types-labels.js.map +1 -0
- package/dist/notifications/feedback-notification-types.d.ts +28 -0
- package/dist/notifications/feedback-notification-types.js +21 -0
- package/dist/notifications/feedback-notification-types.js.map +1 -0
- package/package.json +1 -1
- package/src/feedback/feedback-comment-thread.tsx +277 -0
- package/src/feedback/feedback-dialog-labels.ts +1 -0
- package/src/feedback/feedback-dialog.tsx +30 -2
- package/src/feedback/feedback-labels.ts +14 -0
- package/src/feedback/feedback-menu-labels.ts +1 -0
- package/src/feedback/feedback-menu.tsx +29 -3
- package/src/feedback/feedback-public-labels.ts +80 -0
- package/src/feedback/feedback-public-list.tsx +478 -0
- package/src/feedback/feedback-public-switch.tsx +102 -0
- package/src/feedback/feedback-public-types.ts +82 -0
- package/src/feedback/feedback-record.ts +39 -1
- package/src/feedback/feedback-replies-context.ts +9 -0
- package/src/feedback/feedback-replies.tsx +235 -0
- package/src/feedback/feedback-row-detail-labels.ts +1 -0
- package/src/feedback/feedback-row-detail.tsx +115 -74
- package/src/feedback/feedback-submit-dialog.tsx +9 -0
- package/src/feedback/feedback-submit.tsx +10 -1
- package/src/feedback/feedback-table.tsx +73 -6
- package/src/feedback/feedback-thread-parts-labels.ts +41 -0
- package/src/feedback/feedback-thread.tsx +18 -1
- package/src/feedback/feedback-vote-button.tsx +123 -0
- package/src/feedback.ts +10 -0
- package/src/i18n/defaults.ts +12 -0
- package/src/i18n/german.ts +66 -0
- package/src/i18n/kit-labels.tsx +16 -0
- package/src/i18n/locales/en.ts +8 -0
- package/src/i18n/locales/es.ts +66 -0
- package/src/i18n/locales/fr.ts +66 -0
- package/src/i18n/locales/hu.ts +66 -0
- package/src/i18n/locales/it.ts +66 -0
- package/src/i18n/locales/zh.ts +66 -0
- package/src/i18n/review.ts +5 -0
- package/src/index.ts +9 -0
- package/src/notifications/feedback-notification-types-labels.ts +24 -0
- package/src/notifications/feedback-notification-types.ts +46 -0
package/src/i18n/locales/es.ts
CHANGED
|
@@ -55,6 +55,7 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
|
|
|
55
55
|
submitHint: (apple) => (apple ? "โ Intro para enviar" : "Ctrl+Intro para enviar"),
|
|
56
56
|
cancel: "Cancelar",
|
|
57
57
|
save: "Enviar",
|
|
58
|
+
publicNotice: "Otras personas verรกn el tรญtulo y el texto (nunca sus capturas ni sus archivos).",
|
|
58
59
|
},
|
|
59
60
|
feedbackThread: {
|
|
60
61
|
thread: "Comentarios",
|
|
@@ -103,11 +104,45 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
|
|
|
103
104
|
statusChanged: (status, title) => `Cambiado a ยซ${status}ยป: ${title}`,
|
|
104
105
|
statusUndo: "Deshacer",
|
|
105
106
|
statusRestored: (status, title) => `De vuelta a ยซ${status}ยป: ${title}`,
|
|
107
|
+
commentFailed: "No se ha podido publicar el comentario.",
|
|
108
|
+
voteFailed: "No se ha podido guardar su voto.",
|
|
109
|
+
replyFailed: "No se ha podido enviar la respuesta.",
|
|
106
110
|
},
|
|
107
111
|
feedbackMenu: {
|
|
108
112
|
trigger: "Enviar comentarios",
|
|
109
113
|
myFeedback: "Mis comentarios",
|
|
110
114
|
viewFeedback: "Ver comentarios",
|
|
115
|
+
allFeedback: "Todos los comentarios",
|
|
116
|
+
},
|
|
117
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9: the public pages and the two feedback
|
|
118
|
+
// notification types. "Informe" for one report, so it never reads as "comentario".
|
|
119
|
+
feedbackPublic: {
|
|
120
|
+
title: "Todos los comentarios",
|
|
121
|
+
sort: "Ordenar",
|
|
122
|
+
sortNewest: "Mรกs recientes",
|
|
123
|
+
sortVotes: "Mรกs deseados",
|
|
124
|
+
sortUpdated: "Actualizados recientemente",
|
|
125
|
+
search: "Buscar en los tรญtulos",
|
|
126
|
+
columnVotes: "Votos",
|
|
127
|
+
total: (count) => `${n(count)} ${plural(count, "informe", "informes")}`,
|
|
128
|
+
comments: (count) => `${n(count)} ${plural(count, "comentario", "comentarios")}`,
|
|
129
|
+
votes: (count) => `${n(count)} ${plural(count, "voto", "votos")}`,
|
|
130
|
+
anonymous: "Una persona",
|
|
131
|
+
filedBy: (name) => `De ${name}`,
|
|
132
|
+
body: "Descripciรณn",
|
|
133
|
+
conversation: "Respuestas y comentarios",
|
|
134
|
+
loading: "Cargandoโฆ",
|
|
135
|
+
empty: "Todavรญa no hay informes",
|
|
136
|
+
visibleToOthers: "Visible para otras personas",
|
|
137
|
+
visibleHint: "Otras personas ven el tรญtulo y el texto, nunca sus capturas ni sus archivos.",
|
|
138
|
+
visibleLocked: "Solo mientras el informe siga abierto.",
|
|
139
|
+
page: (page) => `Pรกgina ${n(page)}`,
|
|
140
|
+
},
|
|
141
|
+
feedbackNotificationTypes: {
|
|
142
|
+
answered: "Respuestas a sus informes",
|
|
143
|
+
answeredDescription: "Cuando un informe que usted escribiรณ o comentรณ recibe una respuesta.",
|
|
144
|
+
comment: "Comentarios en informes que sigue",
|
|
145
|
+
commentDescription: "Cuando alguien comenta un informe que usted escribiรณ o comentรณ.",
|
|
111
146
|
},
|
|
112
147
|
feedbackContext: {
|
|
113
148
|
user: "Usuario",
|
|
@@ -148,6 +183,7 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
|
|
|
148
183
|
download: (name) => `Descargar ${name}`,
|
|
149
184
|
downloadFailed: "No se ha podido descargar el adjunto.",
|
|
150
185
|
outcome: "Resultado",
|
|
186
|
+
replies: "Respuestas",
|
|
151
187
|
resolvedAt: (date) => `Resuelto el ${date}`,
|
|
152
188
|
outcomeAdd: "Aรฑadir resultado",
|
|
153
189
|
outcomeUpdate: "Actualizar",
|
|
@@ -161,6 +197,36 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
|
|
|
161
197
|
status: "Estado",
|
|
162
198
|
note: "Nota",
|
|
163
199
|
},
|
|
200
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9.15: the vote, the comment thread, the replies.
|
|
201
|
+
feedbackVote: {
|
|
202
|
+
vote: "Yo tambiรฉn lo quiero",
|
|
203
|
+
own: "Su informe",
|
|
204
|
+
},
|
|
205
|
+
feedbackComments: {
|
|
206
|
+
comments: "Comentarios",
|
|
207
|
+
empty: "Aรบn no hay comentarios",
|
|
208
|
+
hidden: "Ocultado por un administrador",
|
|
209
|
+
hide: "Ocultar",
|
|
210
|
+
unhide: "Mostrar",
|
|
211
|
+
delete: "Eliminar",
|
|
212
|
+
deleteTitle: "ยฟEliminar este comentario?",
|
|
213
|
+
deleteBody: "Se eliminarรก para todos. No se puede deshacer.",
|
|
214
|
+
field: "Escribir un comentario",
|
|
215
|
+
placeholder: "Escriba un comentarioโฆ",
|
|
216
|
+
send: "Comentar",
|
|
217
|
+
},
|
|
218
|
+
feedbackReplies: {
|
|
219
|
+
replies: "Respuestas",
|
|
220
|
+
empty: "Aรบn no hay respuesta",
|
|
221
|
+
admin: "Admin",
|
|
222
|
+
statusChanged: "Estado cambiado a",
|
|
223
|
+
field: "Escribir una respuesta",
|
|
224
|
+
placeholder: "Escriba una respuestaโฆ",
|
|
225
|
+
reply: "Responder",
|
|
226
|
+
status: "Estado con la respuesta",
|
|
227
|
+
noChange: "Sin cambios",
|
|
228
|
+
nudge: "No se ha avisado a quien lo informรณ. Aรฑada una respuesta.",
|
|
229
|
+
},
|
|
164
230
|
accountSettings: {
|
|
165
231
|
profile: {
|
|
166
232
|
title: "Perfil",
|
package/src/i18n/locales/fr.ts
CHANGED
|
@@ -55,6 +55,7 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
|
|
|
55
55
|
submitHint: (apple) => (apple ? "โ Entrรฉe pour envoyer" : "Ctrl+Entrรฉe pour envoyer"),
|
|
56
56
|
cancel: "Annuler",
|
|
57
57
|
save: "Envoyer",
|
|
58
|
+
publicNotice: "Les autres personnes verront le titre et le texte (jamais vos captures dโรฉcran ni vos fichiers).",
|
|
58
59
|
},
|
|
59
60
|
feedbackThread: {
|
|
60
61
|
thread: "Commentaires",
|
|
@@ -101,11 +102,45 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
|
|
|
101
102
|
statusChanged: (status, title) => `Passรฉ ร ยซ\u202f${status}\u202fยป\u00a0: ${title}`,
|
|
102
103
|
statusUndo: "Annuler",
|
|
103
104
|
statusRestored: (status, title) => `Revenu ร ยซ\u202f${status}\u202fยป\u00a0: ${title}`,
|
|
105
|
+
commentFailed: "Le commentaire nโa pas pu รชtre publiรฉ.",
|
|
106
|
+
voteFailed: "Votre vote nโa pas pu รชtre enregistrรฉ.",
|
|
107
|
+
replyFailed: "La rรฉponse nโa pas pu รชtre envoyรฉe.",
|
|
104
108
|
},
|
|
105
109
|
feedbackMenu: {
|
|
106
110
|
trigger: "Envoyer un retour",
|
|
107
111
|
myFeedback: "Mes retours",
|
|
108
112
|
viewFeedback: "Voir les retours",
|
|
113
|
+
allFeedback: "Tous les retours",
|
|
114
|
+
},
|
|
115
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9: the public pages and the two feedback
|
|
116
|
+
// notification types. "Retour" for a report, as `feedbackMenu`.
|
|
117
|
+
feedbackPublic: {
|
|
118
|
+
title: "Tous les retours",
|
|
119
|
+
sort: "Trier",
|
|
120
|
+
sortNewest: "Plus rรฉcents",
|
|
121
|
+
sortVotes: "Plus demandรฉs",
|
|
122
|
+
sortUpdated: "Mis ร jour rรฉcemment",
|
|
123
|
+
search: "Rechercher dans les titres",
|
|
124
|
+
columnVotes: "Votes",
|
|
125
|
+
total: (count) => (count === 1 ? "1 retour" : `${n(count)} retours`),
|
|
126
|
+
comments: (count) => (count === 1 ? "1 commentaire" : `${n(count)} commentaires`),
|
|
127
|
+
votes: (count) => (count === 1 ? "1 vote" : `${n(count)} votes`),
|
|
128
|
+
anonymous: "Une personne",
|
|
129
|
+
filedBy: (name) => `De ${name}`,
|
|
130
|
+
body: "Description",
|
|
131
|
+
conversation: "Rรฉponses et commentaires",
|
|
132
|
+
loading: "Chargementโฆ",
|
|
133
|
+
empty: "Aucun retour pour lโinstant",
|
|
134
|
+
visibleToOthers: "Visible par les autres",
|
|
135
|
+
visibleHint: "Les autres personnes voient le titre et le texte, jamais vos captures dโรฉcran ni vos fichiers.",
|
|
136
|
+
visibleLocked: "Seulement tant que le retour est encore ouvert.",
|
|
137
|
+
page: (page) => `Page ${n(page)}`,
|
|
138
|
+
},
|
|
139
|
+
feedbackNotificationTypes: {
|
|
140
|
+
answered: "Rรฉponses ร vos retours",
|
|
141
|
+
answeredDescription: "Quand un retour que vous avez รฉcrit ou commentรฉ reรงoit une rรฉponse.",
|
|
142
|
+
comment: "Commentaires sur les retours que vous suivez",
|
|
143
|
+
commentDescription: "Quand quelquโun commente un retour que vous avez รฉcrit ou commentรฉ.",
|
|
109
144
|
},
|
|
110
145
|
feedbackContext: {
|
|
111
146
|
user: "Utilisateur",
|
|
@@ -146,6 +181,7 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
|
|
|
146
181
|
download: (name) => `Tรฉlรฉcharger ${name}`,
|
|
147
182
|
downloadFailed: "La piรจce jointe nโa pas pu รชtre tรฉlรฉchargรฉe.",
|
|
148
183
|
outcome: "Rรฉsultat",
|
|
184
|
+
replies: "Rรฉponses",
|
|
149
185
|
resolvedAt: (date) => `Rรฉsolu le ${date}`,
|
|
150
186
|
outcomeAdd: "Ajouter un rรฉsultat",
|
|
151
187
|
outcomeUpdate: "Mettre ร jour",
|
|
@@ -160,6 +196,36 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
|
|
|
160
196
|
status: "Statut",
|
|
161
197
|
note: "Note",
|
|
162
198
|
},
|
|
199
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9.15: the vote, the comment thread, the replies.
|
|
200
|
+
feedbackVote: {
|
|
201
|
+
vote: "Moi aussi",
|
|
202
|
+
own: "Votre retour",
|
|
203
|
+
},
|
|
204
|
+
feedbackComments: {
|
|
205
|
+
comments: "Commentaires",
|
|
206
|
+
empty: "Pas encore de commentaire",
|
|
207
|
+
hidden: "Masquรฉ par un administrateur",
|
|
208
|
+
hide: "Masquer",
|
|
209
|
+
unhide: "Afficher",
|
|
210
|
+
delete: "Supprimer",
|
|
211
|
+
deleteTitle: "Supprimer ce commentaire\u202f?",
|
|
212
|
+
deleteBody: "Il sera retirรฉ pour tout le monde. Cette action est irrรฉversible.",
|
|
213
|
+
field: "รcrire un commentaire",
|
|
214
|
+
placeholder: "รcrire un commentaireโฆ",
|
|
215
|
+
send: "Commenter",
|
|
216
|
+
},
|
|
217
|
+
feedbackReplies: {
|
|
218
|
+
replies: "Rรฉponses",
|
|
219
|
+
empty: "Pas encore de rรฉponse",
|
|
220
|
+
admin: "Admin",
|
|
221
|
+
statusChanged: "Statut changรฉ en",
|
|
222
|
+
field: "รcrire une rรฉponse",
|
|
223
|
+
placeholder: "รcrire une rรฉponseโฆ",
|
|
224
|
+
reply: "Rรฉpondre",
|
|
225
|
+
status: "Statut avec la rรฉponse",
|
|
226
|
+
noChange: "Aucun changement",
|
|
227
|
+
nudge: "La personne qui lโa signalรฉ nโa pas รฉtรฉ prรฉvenue. Ajoutez une rรฉponse.",
|
|
228
|
+
},
|
|
163
229
|
accountSettings: {
|
|
164
230
|
profile: {
|
|
165
231
|
title: "Profil",
|
package/src/i18n/locales/hu.ts
CHANGED
|
@@ -54,6 +54,7 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
|
|
|
54
54
|
submitHint: (apple) => (apple ? "โ Enter a kรผldรฉshez" : "Ctrl+Enter a kรผldรฉshez"),
|
|
55
55
|
cancel: "Mรฉgse",
|
|
56
56
|
save: "Kรผldรฉs",
|
|
57
|
+
publicNotice: "Mรกsok lรกtni fogjรกk a cรญmet รฉs a szรถveget (a kรฉpernyลkรฉpeit รฉs fรกjljait soha).",
|
|
57
58
|
},
|
|
58
59
|
feedbackThread: {
|
|
59
60
|
thread: "Hozzรกszรณlรกsok",
|
|
@@ -100,11 +101,45 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
|
|
|
100
101
|
statusChanged: (status, title) => `โ${status}โ รกllapotra รกllรญtva: ${title}`,
|
|
101
102
|
statusUndo: "Visszavonรกs",
|
|
102
103
|
statusRestored: (status, title) => `Vissza โ${status}โ รกllapotra: ${title}`,
|
|
104
|
+
commentFailed: "A hozzรกszรณlรกst nem sikerรผlt elkรผldeni.",
|
|
105
|
+
voteFailed: "A szavazatot nem sikerรผlt menteni.",
|
|
106
|
+
replyFailed: "A vรกlaszt nem sikerรผlt elkรผldeni.",
|
|
103
107
|
},
|
|
104
108
|
feedbackMenu: {
|
|
105
109
|
trigger: "Visszajelzรฉs kรผldรฉse",
|
|
106
110
|
myFeedback: "Visszajelzรฉseim",
|
|
107
111
|
viewFeedback: "Visszajelzรฉsek megtekintรฉse",
|
|
112
|
+
allFeedback: "รsszes visszajelzรฉs",
|
|
113
|
+
},
|
|
114
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9: the public pages and the two feedback
|
|
115
|
+
// notification types. A noun after a number stays singular in Hungarian.
|
|
116
|
+
feedbackPublic: {
|
|
117
|
+
title: "รsszes visszajelzรฉs",
|
|
118
|
+
sort: "Rendezรฉs",
|
|
119
|
+
sortNewest: "Legรบjabb",
|
|
120
|
+
sortVotes: "Legkeresettebb",
|
|
121
|
+
sortUpdated: "Nemrรฉg frissรญtve",
|
|
122
|
+
search: "Keresรฉs a cรญmekben",
|
|
123
|
+
columnVotes: "Szavazatok",
|
|
124
|
+
total: (count) => `${n(count)} bejelentรฉs`,
|
|
125
|
+
comments: (count) => `${n(count)} hozzรกszรณlรกs`,
|
|
126
|
+
votes: (count) => `${n(count)} szavazat`,
|
|
127
|
+
anonymous: "Egy felhasznรกlรณ",
|
|
128
|
+
filedBy: (name) => `Bekรผldte: ${name}`,
|
|
129
|
+
body: "Leรญrรกs",
|
|
130
|
+
conversation: "Vรกlaszok รฉs hozzรกszรณlรกsok",
|
|
131
|
+
loading: "Betรถltรฉsโฆ",
|
|
132
|
+
empty: "Mรฉg nincs bejelentรฉs",
|
|
133
|
+
visibleToOthers: "Mรกsok szรกmรกra lรกthatรณ",
|
|
134
|
+
visibleHint: "Mรกsok a cรญmet รฉs a szรถveget lรกtjรกk, a kรฉpernyลkรฉpeit รฉs fรกjljait soha.",
|
|
135
|
+
visibleLocked: "Csak amรญg a bejelentรฉs nyitott.",
|
|
136
|
+
page: (page) => `${n(page)}. oldal`,
|
|
137
|
+
},
|
|
138
|
+
feedbackNotificationTypes: {
|
|
139
|
+
answered: "Vรกlaszok a bejelentรฉseire",
|
|
140
|
+
answeredDescription: "Amikor egy รn รกltal รญrt vagy hozzรกszรณlt bejelentรฉs vรกlaszt kap.",
|
|
141
|
+
comment: "Hozzรกszรณlรกsok a kรถvetett bejelentรฉsekhez",
|
|
142
|
+
commentDescription: "Amikor valaki hozzรกszรณl egy รn รกltal รญrt vagy hozzรกszรณlt bejelentรฉshez.",
|
|
108
143
|
},
|
|
109
144
|
feedbackContext: {
|
|
110
145
|
user: "Felhasznรกlรณ",
|
|
@@ -145,6 +180,7 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
|
|
|
145
180
|
download: (name) => `${name} letรถltรฉse`,
|
|
146
181
|
downloadFailed: "A mellรฉkletet nem sikerรผlt letรถlteni.",
|
|
147
182
|
outcome: "Eredmรฉny",
|
|
183
|
+
replies: "Vรกlaszok",
|
|
148
184
|
resolvedAt: (date) => `Lezรกrva: ${date}`,
|
|
149
185
|
outcomeAdd: "Eredmรฉny hozzรกadรกsa",
|
|
150
186
|
outcomeUpdate: "Frissรญtรฉs",
|
|
@@ -158,6 +194,36 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
|
|
|
158
194
|
status: "รllapot",
|
|
159
195
|
note: "Megjegyzรฉs",
|
|
160
196
|
},
|
|
197
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9.15: the vote, the comment thread, the replies.
|
|
198
|
+
feedbackVote: {
|
|
199
|
+
vote: "รn is szeretnรฉm",
|
|
200
|
+
own: "Az รn bejelentรฉse",
|
|
201
|
+
},
|
|
202
|
+
feedbackComments: {
|
|
203
|
+
comments: "Hozzรกszรณlรกsok",
|
|
204
|
+
empty: "Mรฉg nincs hozzรกszรณlรกs",
|
|
205
|
+
hidden: "Egy admin elrejtette",
|
|
206
|
+
hide: "Elrejtรฉs",
|
|
207
|
+
unhide: "Megjelenรญtรฉs",
|
|
208
|
+
delete: "Tรถrlรฉs",
|
|
209
|
+
deleteTitle: "Tรถrli ezt a hozzรกszรณlรกst?",
|
|
210
|
+
deleteBody: "Mindenki szรกmรกra eltลฑnik. Ez nem vonhatรณ vissza.",
|
|
211
|
+
field: "Hozzรกszรณlรกs รญrรกsa",
|
|
212
|
+
placeholder: "Hozzรกszรณlรกs รญrรกsaโฆ",
|
|
213
|
+
send: "Hozzรกszรณlรกs",
|
|
214
|
+
},
|
|
215
|
+
feedbackReplies: {
|
|
216
|
+
replies: "Vรกlaszok",
|
|
217
|
+
empty: "Mรฉg nincs vรกlasz",
|
|
218
|
+
admin: "Admin",
|
|
219
|
+
statusChanged: "รllapot mรณdosรญtva erre:",
|
|
220
|
+
field: "Vรกlasz รญrรกsa",
|
|
221
|
+
placeholder: "Vรกlasz รญrรกsaโฆ",
|
|
222
|
+
reply: "Vรกlasz",
|
|
223
|
+
status: "รllapot a vรกlasszal",
|
|
224
|
+
noChange: "Nincs vรกltozรกs",
|
|
225
|
+
nudge: "A bejelentล nem kapott รฉrtesรญtรฉst. รrjon vรกlaszt.",
|
|
226
|
+
},
|
|
161
227
|
accountSettings: {
|
|
162
228
|
profile: {
|
|
163
229
|
title: "Profil",
|
package/src/i18n/locales/it.ts
CHANGED
|
@@ -55,6 +55,7 @@ export function uiKitLabelsIt(numberLocale = "it-IT"): UiKitLabels {
|
|
|
55
55
|
submitHint: (apple) => (apple ? "โ Invio per inviare" : "Ctrl+Invio per inviare"),
|
|
56
56
|
cancel: "Annulla",
|
|
57
57
|
save: "Invia",
|
|
58
|
+
publicNotice: "Le altre persone vedranno il titolo e il testo (mai i Suoi screenshot o file).",
|
|
58
59
|
},
|
|
59
60
|
feedbackThread: {
|
|
60
61
|
thread: "Commenti",
|
|
@@ -103,11 +104,45 @@ export function uiKitLabelsIt(numberLocale = "it-IT"): UiKitLabels {
|
|
|
103
104
|
statusChanged: (status, title) => `Impostato su ยซ${status}ยป: ${title}`,
|
|
104
105
|
statusUndo: "Annulla",
|
|
105
106
|
statusRestored: (status, title) => `Tornato a ยซ${status}ยป: ${title}`,
|
|
107
|
+
commentFailed: "Non รจ stato possibile pubblicare il commento.",
|
|
108
|
+
voteFailed: "Non รจ stato possibile salvare il Suo voto.",
|
|
109
|
+
replyFailed: "Non รจ stato possibile inviare la risposta.",
|
|
106
110
|
},
|
|
107
111
|
feedbackMenu: {
|
|
108
112
|
trigger: "Invia feedback",
|
|
109
113
|
myFeedback: "I miei feedback",
|
|
110
114
|
viewFeedback: "Visualizza feedback",
|
|
115
|
+
allFeedback: "Tutti i feedback",
|
|
116
|
+
},
|
|
117
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9: the public pages and the two feedback
|
|
118
|
+
// notification types. "Segnalazione" for one report; formal "Lei", as elsewhere.
|
|
119
|
+
feedbackPublic: {
|
|
120
|
+
title: "Tutti i feedback",
|
|
121
|
+
sort: "Ordina",
|
|
122
|
+
sortNewest: "Piรน recenti",
|
|
123
|
+
sortVotes: "Piรน richiesti",
|
|
124
|
+
sortUpdated: "Aggiornati di recente",
|
|
125
|
+
search: "Cerca nei titoli",
|
|
126
|
+
columnVotes: "Voti",
|
|
127
|
+
total: (count) => (count === 1 ? "1 segnalazione" : `${n(count)} segnalazioni`),
|
|
128
|
+
comments: (count) => (count === 1 ? "1 commento" : `${n(count)} commenti`),
|
|
129
|
+
votes: (count) => (count === 1 ? "1 voto" : `${n(count)} voti`),
|
|
130
|
+
anonymous: "Una persona",
|
|
131
|
+
filedBy: (name) => `Da ${name}`,
|
|
132
|
+
body: "Descrizione",
|
|
133
|
+
conversation: "Risposte e commenti",
|
|
134
|
+
loading: "Caricamentoโฆ",
|
|
135
|
+
empty: "Ancora nessuna segnalazione",
|
|
136
|
+
visibleToOthers: "Visibile agli altri",
|
|
137
|
+
visibleHint: "Le altre persone vedono il titolo e il testo, mai i Suoi screenshot o file.",
|
|
138
|
+
visibleLocked: "Solo finchรฉ la segnalazione รจ ancora aperta.",
|
|
139
|
+
page: (page) => `Pagina ${n(page)}`,
|
|
140
|
+
},
|
|
141
|
+
feedbackNotificationTypes: {
|
|
142
|
+
answered: "Risposte alle Sue segnalazioni",
|
|
143
|
+
answeredDescription: "Quando una segnalazione che ha scritto o commentato riceve una risposta.",
|
|
144
|
+
comment: "Commenti sulle segnalazioni che segue",
|
|
145
|
+
commentDescription: "Quando qualcuno commenta una segnalazione che ha scritto o commentato.",
|
|
111
146
|
},
|
|
112
147
|
feedbackContext: {
|
|
113
148
|
user: "Utente",
|
|
@@ -148,6 +183,7 @@ export function uiKitLabelsIt(numberLocale = "it-IT"): UiKitLabels {
|
|
|
148
183
|
download: (name) => `Scarica ${name}`,
|
|
149
184
|
downloadFailed: "Non รจ stato possibile scaricare lโallegato.",
|
|
150
185
|
outcome: "Esito",
|
|
186
|
+
replies: "Risposte",
|
|
151
187
|
resolvedAt: (date) => `Risolto il ${date}`,
|
|
152
188
|
outcomeAdd: "Aggiungi esito",
|
|
153
189
|
outcomeUpdate: "Aggiorna",
|
|
@@ -162,6 +198,36 @@ export function uiKitLabelsIt(numberLocale = "it-IT"): UiKitLabels {
|
|
|
162
198
|
status: "Stato",
|
|
163
199
|
note: "Nota",
|
|
164
200
|
},
|
|
201
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9.15: the vote, the comment thread, the replies.
|
|
202
|
+
feedbackVote: {
|
|
203
|
+
vote: "Lo voglio anchโio",
|
|
204
|
+
own: "La Sua segnalazione",
|
|
205
|
+
},
|
|
206
|
+
feedbackComments: {
|
|
207
|
+
comments: "Commenti",
|
|
208
|
+
empty: "Ancora nessun commento",
|
|
209
|
+
hidden: "Nascosto da un amministratore",
|
|
210
|
+
hide: "Nascondi",
|
|
211
|
+
unhide: "Mostra",
|
|
212
|
+
delete: "Elimina",
|
|
213
|
+
deleteTitle: "Eliminare questo commento?",
|
|
214
|
+
deleteBody: "Verrร rimosso per tutti. Lโoperazione non puรฒ essere annullata.",
|
|
215
|
+
field: "Scrivi un commento",
|
|
216
|
+
placeholder: "Scriva un commentoโฆ",
|
|
217
|
+
send: "Commenta",
|
|
218
|
+
},
|
|
219
|
+
feedbackReplies: {
|
|
220
|
+
replies: "Risposte",
|
|
221
|
+
empty: "Ancora nessuna risposta",
|
|
222
|
+
admin: "Admin",
|
|
223
|
+
statusChanged: "Stato cambiato in",
|
|
224
|
+
field: "Scrivi una risposta",
|
|
225
|
+
placeholder: "Scriva una rispostaโฆ",
|
|
226
|
+
reply: "Rispondi",
|
|
227
|
+
status: "Stato con la risposta",
|
|
228
|
+
noChange: "Nessuna modifica",
|
|
229
|
+
nudge: "Chi ha inviato la segnalazione non รจ stato avvisato. Aggiunga una risposta.",
|
|
230
|
+
},
|
|
165
231
|
accountSettings: {
|
|
166
232
|
profile: {
|
|
167
233
|
title: "Profilo",
|
package/src/i18n/locales/zh.ts
CHANGED
|
@@ -48,6 +48,7 @@ export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
|
48
48
|
submitHint: (apple) => (apple ? "โ Enter ๅ้" : "Ctrl+Enter ๅ้"),
|
|
49
49
|
cancel: "ๅๆถ",
|
|
50
50
|
save: "ๅ้",
|
|
51
|
+
publicNotice: "ๅ
ถไป็จๆทๅฐ็ๅฐๆ ้ขๅๆญฃๆ๏ผ็ปไธไผ็ๅฐๆจ็ๆชๅพๆๆไปถ๏ผใ",
|
|
51
52
|
},
|
|
52
53
|
feedbackThread: {
|
|
53
54
|
thread: "่ฏ่ฎบ",
|
|
@@ -93,11 +94,45 @@ export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
|
93
94
|
statusChanged: (status, title) => `ๅทฒ่ฎพไธบโ${status}โ๏ผ${title}`,
|
|
94
95
|
statusUndo: "ๆค้",
|
|
95
96
|
statusRestored: (status, title) => `ๅทฒๆขๅคไธบโ${status}โ๏ผ${title}`,
|
|
97
|
+
commentFailed: "ๆ ๆณๅ่กจ่ฏ่ฎบใ",
|
|
98
|
+
voteFailed: "ๆ ๆณไฟๅญๆจ็ๆ็ฅจใ",
|
|
99
|
+
replyFailed: "ๆ ๆณๅ้ๅๅคใ",
|
|
96
100
|
},
|
|
97
101
|
feedbackMenu: {
|
|
98
102
|
trigger: "ๅ้ๅ้ฆ",
|
|
99
103
|
myFeedback: "ๆ็ๅ้ฆ",
|
|
100
104
|
viewFeedback: "ๆฅ็ๅ้ฆ",
|
|
105
|
+
allFeedback: "ๅ
จ้จๅ้ฆ",
|
|
106
|
+
},
|
|
107
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9: the public pages and the two feedback
|
|
108
|
+
// notification types.
|
|
109
|
+
feedbackPublic: {
|
|
110
|
+
title: "ๅ
จ้จๅ้ฆ",
|
|
111
|
+
sort: "ๆๅบ",
|
|
112
|
+
sortNewest: "ๆๆฐ",
|
|
113
|
+
sortVotes: "ๆๅคไบบๆณ่ฆ",
|
|
114
|
+
sortUpdated: "ๆ่ฟๆดๆฐ",
|
|
115
|
+
search: "ๆ็ดขๆ ้ข",
|
|
116
|
+
columnVotes: "็ฅจๆฐ",
|
|
117
|
+
total: (count) => `${n(count)} ๆกๅ้ฆ`,
|
|
118
|
+
comments: (count) => `${n(count)} ๆก่ฏ่ฎบ`,
|
|
119
|
+
votes: (count) => `${n(count)} ็ฅจ`,
|
|
120
|
+
anonymous: "ไธไฝ็จๆท",
|
|
121
|
+
filedBy: (name) => `ๆไบค่
๏ผ${name}`,
|
|
122
|
+
body: "ๆ่ฟฐ",
|
|
123
|
+
conversation: "ๅๅคๅ่ฏ่ฎบ",
|
|
124
|
+
loading: "ๅ ่ฝฝไธญโฆ",
|
|
125
|
+
empty: "ๆๆ ๅ้ฆ",
|
|
126
|
+
visibleToOthers: "ๅฏนไปไบบๅฏ่ง",
|
|
127
|
+
visibleHint: "ๅ
ถไป็จๆทๅฏไปฅ็ๅฐๆ ้ขๅๆญฃๆ๏ผ็ปไธไผ็ๅฐๆจ็ๆชๅพๆๆไปถใ",
|
|
128
|
+
visibleLocked: "ไป
ๅจๅ้ฆไปๅคไบๆๅผ็ถๆๆถๅฏๆดๆนใ",
|
|
129
|
+
page: (page) => `็ฌฌ ${n(page)} ้กต`,
|
|
130
|
+
},
|
|
131
|
+
feedbackNotificationTypes: {
|
|
132
|
+
answered: "ๆจ็ๅ้ฆๆถๅฐ็ๅๅค",
|
|
133
|
+
answeredDescription: "ๅฝๆจๆไบคๆ่ฏ่ฎบ่ฟ็ๅ้ฆๆถๅฐๅๅคๆถใ",
|
|
134
|
+
comment: "ๆจๅ
ณๆณจ็ๅ้ฆไธญ็่ฏ่ฎบ",
|
|
135
|
+
commentDescription: "ๅฝๆไบบ่ฏ่ฎบๆจๆไบคๆ่ฏ่ฎบ่ฟ็ๅ้ฆๆถใ",
|
|
101
136
|
},
|
|
102
137
|
feedbackContext: {
|
|
103
138
|
user: "็จๆท",
|
|
@@ -138,6 +173,7 @@ export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
|
138
173
|
download: (name) => `ไธ่ฝฝ ${name}`,
|
|
139
174
|
downloadFailed: "ๆ ๆณไธ่ฝฝ้ไปถใ",
|
|
140
175
|
outcome: "ๅค็็ปๆ",
|
|
176
|
+
replies: "ๅๅค",
|
|
141
177
|
resolvedAt: (date) => `่งฃๅณๆฅๆ๏ผ${date}`,
|
|
142
178
|
outcomeAdd: "ๆทปๅ ๅค็็ปๆ",
|
|
143
179
|
outcomeUpdate: "ๆดๆฐ",
|
|
@@ -151,6 +187,36 @@ export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
|
151
187
|
status: "็ถๆ",
|
|
152
188
|
note: "ๅคๆณจ",
|
|
153
189
|
},
|
|
190
|
+
// 0.38.0 โ docs/feedback-harmonization.md ยง9.15: the vote, the comment thread, the replies.
|
|
191
|
+
feedbackVote: {
|
|
192
|
+
vote: "ๆไน้่ฆ",
|
|
193
|
+
own: "ๆจ็ๅ้ฆ",
|
|
194
|
+
},
|
|
195
|
+
feedbackComments: {
|
|
196
|
+
comments: "่ฏ่ฎบ",
|
|
197
|
+
empty: "ๆๆ ่ฏ่ฎบ",
|
|
198
|
+
hidden: "ๅทฒ่ขซ็ฎก็ๅ้่",
|
|
199
|
+
hide: "้่",
|
|
200
|
+
unhide: "ๅๆถ้่",
|
|
201
|
+
delete: "ๅ ้ค",
|
|
202
|
+
deleteTitle: "ๅ ้ค่ฟๆก่ฏ่ฎบ๏ผ",
|
|
203
|
+
deleteBody: "ๅฐๅฏนๆๆไบบ็งป้ค๏ผไธๆ ๆณๆค้ใ",
|
|
204
|
+
field: "ๆฐๅ่ฏ่ฎบ",
|
|
205
|
+
placeholder: "ๆฐๅ่ฏ่ฎบโฆ",
|
|
206
|
+
send: "ๅ่กจ่ฏ่ฎบ",
|
|
207
|
+
},
|
|
208
|
+
feedbackReplies: {
|
|
209
|
+
replies: "ๅๅค",
|
|
210
|
+
empty: "ๆๆ ๅๅค",
|
|
211
|
+
admin: "็ฎก็ๅ",
|
|
212
|
+
statusChanged: "็ถๆๅทฒๆนไธบ",
|
|
213
|
+
field: "ๆฐๅๅๅค",
|
|
214
|
+
placeholder: "ๆฐๅๅๅคโฆ",
|
|
215
|
+
reply: "ๅๅค",
|
|
216
|
+
status: "้ๅๅคๆดๆน็ถๆ",
|
|
217
|
+
noChange: "ไธๆดๆน",
|
|
218
|
+
nudge: "ๅฐๆช้็ฅๆไบค่
ใ่ฏทๆทปๅ ๅๅคใ",
|
|
219
|
+
},
|
|
154
220
|
accountSettings: {
|
|
155
221
|
profile: {
|
|
156
222
|
title: "ไธชไบบ่ตๆ",
|
package/src/i18n/review.ts
CHANGED
|
@@ -212,6 +212,11 @@ export const KIT_LABEL_SAMPLES: Readonly<Record<string, readonly (readonly unkno
|
|
|
212
212
|
"feedbackPage.reworkChip": one,
|
|
213
213
|
"feedbackDetail.download": [["{{name}}"]],
|
|
214
214
|
"feedbackDetail.resolvedAt": [["{{date}}"]],
|
|
215
|
+
"feedbackPublic.total": one,
|
|
216
|
+
"feedbackPublic.comments": one,
|
|
217
|
+
"feedbackPublic.votes": one,
|
|
218
|
+
"feedbackPublic.filedBy": [["{{name}}"]],
|
|
219
|
+
"feedbackPublic.page": [[3]],
|
|
215
220
|
"accountSettings.passkeys.renameItem": [["{{name}}"]],
|
|
216
221
|
"accountSettings.passkeys.renameField": [["{{name}}"]],
|
|
217
222
|
"accountSettings.passkeys.deleteItem": [["{{name}}"]],
|
package/src/index.ts
CHANGED
|
@@ -926,6 +926,15 @@ export { PushDevicesSetting, describeUserAgent } from "./notifications/push-devi
|
|
|
926
926
|
export type { PushDevicesSettingProps } from "./notifications/push-devices-setting";
|
|
927
927
|
export { UnsubscribePanel, unsubscribeTokenType } from "./notifications/unsubscribe-panel";
|
|
928
928
|
export type { UnsubscribePanelProps } from "./notifications/unsubscribe-panel";
|
|
929
|
+
// 0.38.0 (docs/feedback-harmonization.md ยง9.11): the two feedback types' setting words.
|
|
930
|
+
export {
|
|
931
|
+
useFeedbackNotificationTypes,
|
|
932
|
+
DEFAULT_FEEDBACK_NOTIFICATION_TYPES_LABELS,
|
|
933
|
+
} from "./notifications/feedback-notification-types";
|
|
934
|
+
export type {
|
|
935
|
+
FeedbackNotificationTypeId,
|
|
936
|
+
FeedbackNotificationTypesLabels,
|
|
937
|
+
} from "./notifications/feedback-notification-types";
|
|
929
938
|
|
|
930
939
|
// โโ landing โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
931
940
|
// 0.31.0 (docs/landing-demo-harmonization.md): the public landing page. Its router-aware parts โ the header and the resume (RootEntry,
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// The English words of `useFeedbackNotificationTypes` (round 0.38), in a module with no
|
|
2
|
+
// component code, as every `*-labels.ts`: the English catalogue imports them alone.
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* `feedbackNotificationTypes` โ the setting words of the two feedback notification types
|
|
6
|
+
* (docs/feedback-harmonization.md ยง9.11). In the kit, not in each app, because two apps
|
|
7
|
+
* declare them (keksdose, Kurvenschmiede; kastlan `feedback_answered` alone). The mail and
|
|
8
|
+
* push texts stay the app's.
|
|
9
|
+
*/
|
|
10
|
+
export interface FeedbackNotificationTypesLabels {
|
|
11
|
+
/** `feedback_answered`: a reply on a report the person wrote or commented on. */
|
|
12
|
+
answered: string;
|
|
13
|
+
answeredDescription: string;
|
|
14
|
+
/** `feedback_comment`: a visible comment on such a report. */
|
|
15
|
+
comment: string;
|
|
16
|
+
commentDescription: string;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const DEFAULT_FEEDBACK_NOTIFICATION_TYPES_LABELS: FeedbackNotificationTypesLabels = {
|
|
20
|
+
answered: "Answers to your reports",
|
|
21
|
+
answeredDescription: "When a report you wrote or commented on gets an answer.",
|
|
22
|
+
comment: "Comments on reports you follow",
|
|
23
|
+
commentDescription: "When someone comments on a report you wrote or commented on.",
|
|
24
|
+
};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { useMemo } from "react";
|
|
2
|
+
import { useKitLabels, type LabelOverride } from "../i18n/kit-labels";
|
|
3
|
+
import type { NotificationTypeEntry } from "./notification-types";
|
|
4
|
+
import {
|
|
5
|
+
DEFAULT_FEEDBACK_NOTIFICATION_TYPES_LABELS,
|
|
6
|
+
type FeedbackNotificationTypesLabels,
|
|
7
|
+
} from "./feedback-notification-types-labels";
|
|
8
|
+
|
|
9
|
+
export { DEFAULT_FEEDBACK_NOTIFICATION_TYPES_LABELS };
|
|
10
|
+
export type { FeedbackNotificationTypesLabels };
|
|
11
|
+
|
|
12
|
+
/** The two feedback notification ids (ยง9.11), as server-kit's `FEEDBACK_ANSWERED` and
|
|
13
|
+
* `FEEDBACK_COMMENT` name them. */
|
|
14
|
+
export type FeedbackNotificationTypeId = "feedback_answered" | "feedback_comment";
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* The setting words of the two feedback notification types (round 0.38,
|
|
18
|
+
* docs/feedback-harmonization.md ยง9.11), for `NotificationTypesSetting`'s `types`:
|
|
19
|
+
*
|
|
20
|
+
* ```tsx
|
|
21
|
+
* const feedbackTypes = useFeedbackNotificationTypes();
|
|
22
|
+
* <NotificationTypesSetting types={[...appTypes, ...feedbackTypes]} โฆ />
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* - **"Answers to your reports"** (`feedback_answered`): a reply from the admin or a
|
|
26
|
+
* loop, to the author and every earlier commenter.
|
|
27
|
+
* - **"Comments on reports you follow"** (`feedback_comment`): a visible comment, to the
|
|
28
|
+
* author and the earlier commenters.
|
|
29
|
+
*
|
|
30
|
+
* Both entries are always returned: the card draws a type only when the server answered
|
|
31
|
+
* it (notifications ยง2.1), so kastlan, which does not declare `feedback_comment` while its
|
|
32
|
+
* public parts are off, shows the first alone. Words: `<UiKitProvider labels={{
|
|
33
|
+
* feedbackNotificationTypes }}>` over English, `labels` over both.
|
|
34
|
+
*/
|
|
35
|
+
export function useFeedbackNotificationTypes(
|
|
36
|
+
labels?: LabelOverride<FeedbackNotificationTypesLabels>,
|
|
37
|
+
): NotificationTypeEntry<FeedbackNotificationTypeId>[] {
|
|
38
|
+
const words = useKitLabels("feedbackNotificationTypes", DEFAULT_FEEDBACK_NOTIFICATION_TYPES_LABELS, labels);
|
|
39
|
+
return useMemo(
|
|
40
|
+
() => [
|
|
41
|
+
{ id: "feedback_answered", label: words.answered, description: words.answeredDescription },
|
|
42
|
+
{ id: "feedback_comment", label: words.comment, description: words.commentDescription },
|
|
43
|
+
],
|
|
44
|
+
[words],
|
|
45
|
+
);
|
|
46
|
+
}
|