@appsupportkit/support-sdk 0.2.0 → 0.3.0
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/lib/commonjs/api.js +17 -2
- package/lib/commonjs/api.js.map +1 -1
- package/lib/commonjs/components/SupportButton.js +123 -23
- package/lib/commonjs/components/SupportButton.js.map +1 -1
- package/lib/commonjs/components/icons.js +36 -0
- package/lib/commonjs/components/icons.js.map +1 -1
- package/lib/commonjs/components/primitives.js +9 -7
- package/lib/commonjs/components/primitives.js.map +1 -1
- package/lib/commonjs/components/screens/ComposeScreen.js +14 -23
- package/lib/commonjs/components/screens/ComposeScreen.js.map +1 -1
- package/lib/commonjs/components/screens/HomeScreen.js +70 -22
- package/lib/commonjs/components/screens/HomeScreen.js.map +1 -1
- package/lib/commonjs/components/screens/LanguageScreen.js +150 -0
- package/lib/commonjs/components/screens/LanguageScreen.js.map +1 -0
- package/lib/commonjs/components/screens/ThreadScreen.js +31 -19
- package/lib/commonjs/components/screens/ThreadScreen.js.map +1 -1
- package/lib/commonjs/i18n/index.js +101 -0
- package/lib/commonjs/i18n/index.js.map +1 -0
- package/lib/commonjs/i18n/languages.js +95 -0
- package/lib/commonjs/i18n/languages.js.map +1 -0
- package/lib/commonjs/i18n/strings/de.js +72 -0
- package/lib/commonjs/i18n/strings/de.js.map +1 -0
- package/lib/commonjs/i18n/strings/en.js +88 -0
- package/lib/commonjs/i18n/strings/en.js.map +1 -0
- package/lib/commonjs/i18n/strings/es.js +72 -0
- package/lib/commonjs/i18n/strings/es.js.map +1 -0
- package/lib/commonjs/i18n/strings/fr.js +72 -0
- package/lib/commonjs/i18n/strings/fr.js.map +1 -0
- package/lib/commonjs/i18n/strings/hi.js +72 -0
- package/lib/commonjs/i18n/strings/hi.js.map +1 -0
- package/lib/commonjs/i18n/strings/it.js +72 -0
- package/lib/commonjs/i18n/strings/it.js.map +1 -0
- package/lib/commonjs/i18n/strings/ja.js +72 -0
- package/lib/commonjs/i18n/strings/ja.js.map +1 -0
- package/lib/commonjs/i18n/strings/ko.js +72 -0
- package/lib/commonjs/i18n/strings/ko.js.map +1 -0
- package/lib/commonjs/i18n/strings/nl.js +72 -0
- package/lib/commonjs/i18n/strings/nl.js.map +1 -0
- package/lib/commonjs/i18n/strings/pl.js +72 -0
- package/lib/commonjs/i18n/strings/pl.js.map +1 -0
- package/lib/commonjs/i18n/strings/pt.js +72 -0
- package/lib/commonjs/i18n/strings/pt.js.map +1 -0
- package/lib/commonjs/i18n/strings/ru.js +72 -0
- package/lib/commonjs/i18n/strings/ru.js.map +1 -0
- package/lib/commonjs/i18n/strings/tr.js +72 -0
- package/lib/commonjs/i18n/strings/tr.js.map +1 -0
- package/lib/commonjs/i18n/strings/zh.js +72 -0
- package/lib/commonjs/i18n/strings/zh.js.map +1 -0
- package/lib/commonjs/index.js +31 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.js +11 -0
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/useSupportThreads.js +19 -9
- package/lib/commonjs/useSupportThreads.js.map +1 -1
- package/lib/commonjs/utils.js +32 -17
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/module/api.js +16 -2
- package/lib/module/api.js.map +1 -1
- package/lib/module/components/SupportButton.js +126 -26
- package/lib/module/components/SupportButton.js.map +1 -1
- package/lib/module/components/icons.js +35 -0
- package/lib/module/components/icons.js.map +1 -1
- package/lib/module/components/primitives.js +9 -7
- package/lib/module/components/primitives.js.map +1 -1
- package/lib/module/components/screens/ComposeScreen.js +15 -22
- package/lib/module/components/screens/ComposeScreen.js.map +1 -1
- package/lib/module/components/screens/HomeScreen.js +71 -23
- package/lib/module/components/screens/HomeScreen.js.map +1 -1
- package/lib/module/components/screens/LanguageScreen.js +147 -0
- package/lib/module/components/screens/LanguageScreen.js.map +1 -0
- package/lib/module/components/screens/ThreadScreen.js +31 -19
- package/lib/module/components/screens/ThreadScreen.js.map +1 -1
- package/lib/module/i18n/index.js +56 -0
- package/lib/module/i18n/index.js.map +1 -0
- package/lib/module/i18n/languages.js +88 -0
- package/lib/module/i18n/languages.js.map +1 -0
- package/lib/module/i18n/strings/de.js +68 -0
- package/lib/module/i18n/strings/de.js.map +1 -0
- package/lib/module/i18n/strings/en.js +84 -0
- package/lib/module/i18n/strings/en.js.map +1 -0
- package/lib/module/i18n/strings/es.js +68 -0
- package/lib/module/i18n/strings/es.js.map +1 -0
- package/lib/module/i18n/strings/fr.js +68 -0
- package/lib/module/i18n/strings/fr.js.map +1 -0
- package/lib/module/i18n/strings/hi.js +68 -0
- package/lib/module/i18n/strings/hi.js.map +1 -0
- package/lib/module/i18n/strings/it.js +68 -0
- package/lib/module/i18n/strings/it.js.map +1 -0
- package/lib/module/i18n/strings/ja.js +68 -0
- package/lib/module/i18n/strings/ja.js.map +1 -0
- package/lib/module/i18n/strings/ko.js +68 -0
- package/lib/module/i18n/strings/ko.js.map +1 -0
- package/lib/module/i18n/strings/nl.js +68 -0
- package/lib/module/i18n/strings/nl.js.map +1 -0
- package/lib/module/i18n/strings/pl.js +68 -0
- package/lib/module/i18n/strings/pl.js.map +1 -0
- package/lib/module/i18n/strings/pt.js +68 -0
- package/lib/module/i18n/strings/pt.js.map +1 -0
- package/lib/module/i18n/strings/ru.js +68 -0
- package/lib/module/i18n/strings/ru.js.map +1 -0
- package/lib/module/i18n/strings/tr.js +68 -0
- package/lib/module/i18n/strings/tr.js.map +1 -0
- package/lib/module/i18n/strings/zh.js +68 -0
- package/lib/module/i18n/strings/zh.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js +11 -0
- package/lib/module/types.js.map +1 -1
- package/lib/module/useSupportThreads.js +19 -9
- package/lib/module/useSupportThreads.js.map +1 -1
- package/lib/module/utils.js +32 -17
- package/lib/module/utils.js.map +1 -1
- package/lib/typescript/api.d.ts +9 -0
- package/lib/typescript/api.d.ts.map +1 -1
- package/lib/typescript/components/SupportButton.d.ts.map +1 -1
- package/lib/typescript/components/icons.d.ts +5 -0
- package/lib/typescript/components/icons.d.ts.map +1 -1
- package/lib/typescript/components/primitives.d.ts +7 -3
- package/lib/typescript/components/primitives.d.ts.map +1 -1
- package/lib/typescript/components/screens/ComposeScreen.d.ts +3 -1
- package/lib/typescript/components/screens/ComposeScreen.d.ts.map +1 -1
- package/lib/typescript/components/screens/HomeScreen.d.ts +6 -1
- package/lib/typescript/components/screens/HomeScreen.d.ts.map +1 -1
- package/lib/typescript/components/screens/LanguageScreen.d.ts +30 -0
- package/lib/typescript/components/screens/LanguageScreen.d.ts.map +1 -0
- package/lib/typescript/components/screens/ThreadScreen.d.ts +3 -1
- package/lib/typescript/components/screens/ThreadScreen.d.ts.map +1 -1
- package/lib/typescript/i18n/index.d.ts +15 -0
- package/lib/typescript/i18n/index.d.ts.map +1 -0
- package/lib/typescript/i18n/languages.d.ts +36 -0
- package/lib/typescript/i18n/languages.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/de.d.ts +3 -0
- package/lib/typescript/i18n/strings/de.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/en.d.ts +83 -0
- package/lib/typescript/i18n/strings/en.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/es.d.ts +3 -0
- package/lib/typescript/i18n/strings/es.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/fr.d.ts +3 -0
- package/lib/typescript/i18n/strings/fr.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/hi.d.ts +3 -0
- package/lib/typescript/i18n/strings/hi.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/it.d.ts +3 -0
- package/lib/typescript/i18n/strings/it.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/ja.d.ts +3 -0
- package/lib/typescript/i18n/strings/ja.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/ko.d.ts +3 -0
- package/lib/typescript/i18n/strings/ko.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/nl.d.ts +3 -0
- package/lib/typescript/i18n/strings/nl.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/pl.d.ts +3 -0
- package/lib/typescript/i18n/strings/pl.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/pt.d.ts +3 -0
- package/lib/typescript/i18n/strings/pt.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/ru.d.ts +3 -0
- package/lib/typescript/i18n/strings/ru.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/tr.d.ts +3 -0
- package/lib/typescript/i18n/strings/tr.d.ts.map +1 -0
- package/lib/typescript/i18n/strings/zh.d.ts +3 -0
- package/lib/typescript/i18n/strings/zh.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +32 -2
- package/lib/typescript/types.d.ts.map +1 -1
- package/lib/typescript/useSupportThreads.d.ts +11 -1
- package/lib/typescript/useSupportThreads.d.ts.map +1 -1
- package/lib/typescript/utils.d.ts +6 -5
- package/lib/typescript/utils.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/api.ts +24 -1
- package/src/components/SupportButton.tsx +162 -33
- package/src/components/icons.tsx +36 -0
- package/src/components/primitives.tsx +14 -4
- package/src/components/screens/ComposeScreen.tsx +19 -23
- package/src/components/screens/HomeScreen.tsx +84 -25
- package/src/components/screens/LanguageScreen.tsx +172 -0
- package/src/components/screens/ThreadScreen.tsx +48 -21
- package/src/i18n/index.ts +81 -0
- package/src/i18n/languages.ts +106 -0
- package/src/i18n/strings/de.ts +78 -0
- package/src/i18n/strings/en.ts +94 -0
- package/src/i18n/strings/es.ts +77 -0
- package/src/i18n/strings/fr.ts +78 -0
- package/src/i18n/strings/hi.ts +77 -0
- package/src/i18n/strings/it.ts +77 -0
- package/src/i18n/strings/ja.ts +77 -0
- package/src/i18n/strings/ko.ts +76 -0
- package/src/i18n/strings/nl.ts +77 -0
- package/src/i18n/strings/pl.ts +77 -0
- package/src/i18n/strings/pt.ts +77 -0
- package/src/i18n/strings/ru.ts +77 -0
- package/src/i18n/strings/tr.ts +77 -0
- package/src/i18n/strings/zh.ts +75 -0
- package/src/index.tsx +8 -0
- package/src/types.ts +32 -2
- package/src/useSupportThreads.ts +30 -10
- package/src/utils.ts +22 -17
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export const ru = {
|
|
4
|
+
'home.title': 'Поддержка',
|
|
5
|
+
'home.subtitle': 'Начните разговор — мы ответим прямо здесь.',
|
|
6
|
+
'home.close': 'Закрыть поддержку',
|
|
7
|
+
'home.open': 'Открытые',
|
|
8
|
+
'home.resolved': 'Решённые',
|
|
9
|
+
'home.empty': 'Пока нет разговоров',
|
|
10
|
+
'home.emptyHint': 'Всё, что вы отправите, попадёт к команде, а ответы вернутся в это окно.',
|
|
11
|
+
'home.noMessages': 'Пока нет сообщений',
|
|
12
|
+
'home.you': 'Вы',
|
|
13
|
+
'home.threadA11y': 'Разговор: {type}',
|
|
14
|
+
'home.threadUnreadA11y': 'Разговор: {type}, непрочитанных: {count}',
|
|
15
|
+
'home.newA11y': 'Новое: {type}',
|
|
16
|
+
'home.language': 'Язык',
|
|
17
|
+
'type.feedback': 'Отзыв',
|
|
18
|
+
'type.feature_request': 'Запрос функции',
|
|
19
|
+
'type.bug_report': 'Сообщение об ошибке',
|
|
20
|
+
'hint.feedback': 'Расскажите, что вы думаете',
|
|
21
|
+
'hint.feature_request': 'Предложите улучшение',
|
|
22
|
+
'hint.bug_report': 'Что-то не работает',
|
|
23
|
+
'prompt.feedback': 'Что нам следует знать?',
|
|
24
|
+
'prompt.feature_request': 'Что вы хотели бы увидеть?',
|
|
25
|
+
'prompt.bug_report': 'Что произошло и чего вы ожидали?',
|
|
26
|
+
'sub.feedback': 'Хороший или плохой — он идёт прямо к команде.',
|
|
27
|
+
'sub.feature_request': 'Расскажите, что вы пытаетесь сделать.',
|
|
28
|
+
'sub.bug_report': 'Шаги, экран и ваши ожидания — всё это помогает.',
|
|
29
|
+
'compose.back': 'Назад к разговорам',
|
|
30
|
+
'compose.sent': 'Отправлено',
|
|
31
|
+
'compose.sentHint': 'Мы ответим прямо здесь. Разговор появится в разделе «Открытые», а на кнопке загорится значок, когда мы ответим.',
|
|
32
|
+
'compose.done': 'Готово',
|
|
33
|
+
'compose.send': 'Отправить',
|
|
34
|
+
'compose.sending': 'Отправка…',
|
|
35
|
+
'compose.minChars': 'Не менее {count} символов',
|
|
36
|
+
'thread.support': 'Поддержка',
|
|
37
|
+
'thread.new': 'Новое',
|
|
38
|
+
'thread.resolvedAt': 'Решено · {date}',
|
|
39
|
+
'thread.readOnly': 'Этот разговор решён и доступен только для чтения',
|
|
40
|
+
'thread.placeholder': 'Напишите ответ…',
|
|
41
|
+
'thread.sendA11y': 'Отправить ответ',
|
|
42
|
+
'thread.sendingA11y': 'Отправка',
|
|
43
|
+
'thread.translating': 'Перевод…',
|
|
44
|
+
'status.open': 'Открыт',
|
|
45
|
+
'status.resolved': 'Решён',
|
|
46
|
+
'error.tryAgain': 'Повторить',
|
|
47
|
+
'error.rateLimited': 'Слишком много запросов — попробуйте позже',
|
|
48
|
+
'error.offline': 'Нет подключения — проверьте сеть',
|
|
49
|
+
'error.sendFailed': 'Не удалось отправить — попробуйте ещё раз',
|
|
50
|
+
'error.loadFailed': 'Не удалось загрузить ваши разговоры',
|
|
51
|
+
'error.unavailable': 'Поддержка сейчас недоступна',
|
|
52
|
+
'error.loadRateLimited': 'Слишком много запросов — попробуйте через минуту',
|
|
53
|
+
'lang.title': 'Выберите язык',
|
|
54
|
+
'lang.subtitle': 'Пишите на удобном вам языке — мы переводим между вами и командой поддержки.',
|
|
55
|
+
'lang.continue': 'Продолжить',
|
|
56
|
+
'lang.change': 'Изменить язык',
|
|
57
|
+
'lang.saveFailed': 'Не удалось сохранить — попробуйте ещё раз',
|
|
58
|
+
'time.justNow': 'только что',
|
|
59
|
+
'time.minutes': '{count} мин назад',
|
|
60
|
+
'time.hours': '{count} ч назад',
|
|
61
|
+
'time.days': '{count} дн назад',
|
|
62
|
+
'time.weeks': '{count} нед назад',
|
|
63
|
+
'time.months': '{count} мес назад',
|
|
64
|
+
'time.years': '{count} г назад',
|
|
65
|
+
'time.today': 'Сегодня',
|
|
66
|
+
'time.yesterday': 'Вчера'
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=ru.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ru"],"sourceRoot":"../../../../src","sources":["i18n/strings/ru.ts"],"mappings":";;AAEA,OAAO,MAAMA,EAAe,GAAG;EAC7B,YAAY,EAAE,WAAW;EACzB,eAAe,EAAE,4CAA4C;EAC7D,YAAY,EAAE,mBAAmB;EACjC,WAAW,EAAE,UAAU;EACvB,eAAe,EAAE,UAAU;EAC3B,YAAY,EAAE,qBAAqB;EACnC,gBAAgB,EACd,yEAAyE;EAC3E,iBAAiB,EAAE,oBAAoB;EACvC,UAAU,EAAE,IAAI;EAChB,iBAAiB,EAAE,kBAAkB;EACrC,uBAAuB,EAAE,0CAA0C;EACnE,cAAc,EAAE,eAAe;EAC/B,eAAe,EAAE,MAAM;EAEvB,eAAe,EAAE,OAAO;EACxB,sBAAsB,EAAE,gBAAgB;EACxC,iBAAiB,EAAE,qBAAqB;EACxC,eAAe,EAAE,4BAA4B;EAC7C,sBAAsB,EAAE,sBAAsB;EAC9C,iBAAiB,EAAE,oBAAoB;EACvC,iBAAiB,EAAE,wBAAwB;EAC3C,wBAAwB,EAAE,2BAA2B;EACrD,mBAAmB,EAAE,kCAAkC;EACvD,cAAc,EAAE,+CAA+C;EAC/D,qBAAqB,EAAE,uCAAuC;EAC9D,gBAAgB,EAAE,iDAAiD;EAEnE,cAAc,EAAE,oBAAoB;EACpC,cAAc,EAAE,YAAY;EAC5B,kBAAkB,EAChB,iHAAiH;EACnH,cAAc,EAAE,QAAQ;EACxB,cAAc,EAAE,WAAW;EAC3B,iBAAiB,EAAE,WAAW;EAC9B,kBAAkB,EAAE,2BAA2B;EAE/C,gBAAgB,EAAE,WAAW;EAC7B,YAAY,EAAE,OAAO;EACrB,mBAAmB,EAAE,iBAAiB;EACtC,iBAAiB,EAAE,kDAAkD;EACrE,oBAAoB,EAAE,iBAAiB;EACvC,iBAAiB,EAAE,iBAAiB;EACpC,oBAAoB,EAAE,UAAU;EAChC,oBAAoB,EAAE,UAAU;EAEhC,aAAa,EAAE,QAAQ;EACvB,iBAAiB,EAAE,OAAO;EAE1B,gBAAgB,EAAE,WAAW;EAC7B,mBAAmB,EAAE,2CAA2C;EAChE,eAAe,EAAE,kCAAkC;EACnD,kBAAkB,EAAE,2CAA2C;EAC/D,kBAAkB,EAAE,qCAAqC;EACzD,mBAAmB,EAAE,6BAA6B;EAClD,uBAAuB,EAAE,kDAAkD;EAE3E,YAAY,EAAE,eAAe;EAC7B,eAAe,EACb,6EAA6E;EAC/E,eAAe,EAAE,YAAY;EAC7B,aAAa,EAAE,eAAe;EAC9B,iBAAiB,EAAE,2CAA2C;EAE9D,cAAc,EAAE,YAAY;EAC5B,cAAc,EAAE,mBAAmB;EACnC,YAAY,EAAE,iBAAiB;EAC/B,WAAW,EAAE,kBAAkB;EAC/B,YAAY,EAAE,mBAAmB;EACjC,aAAa,EAAE,mBAAmB;EAClC,YAAY,EAAE,iBAAiB;EAC/B,YAAY,EAAE,SAAS;EACvB,gBAAgB,EAAE;AACpB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export const tr = {
|
|
4
|
+
'home.title': 'Destek',
|
|
5
|
+
'home.subtitle': 'Bir görüşme başlatın — tam burada yanıtlıyoruz.',
|
|
6
|
+
'home.close': 'Desteği kapat',
|
|
7
|
+
'home.open': 'Açık',
|
|
8
|
+
'home.resolved': 'Çözüldü',
|
|
9
|
+
'home.empty': 'Henüz görüşme yok',
|
|
10
|
+
'home.emptyHint': 'Gönderdiğiniz her şey ekibe ulaşır ve yanıtları bu pencereye geri gelir.',
|
|
11
|
+
'home.noMessages': 'Henüz mesaj yok',
|
|
12
|
+
'home.you': 'Siz',
|
|
13
|
+
'home.threadA11y': 'Görüşme: {type}',
|
|
14
|
+
'home.threadUnreadA11y': 'Görüşme: {type}, {count} okunmamış',
|
|
15
|
+
'home.newA11y': 'Yeni: {type}',
|
|
16
|
+
'home.language': 'Dil',
|
|
17
|
+
'type.feedback': 'Geri bildirim',
|
|
18
|
+
'type.feature_request': 'Özellik isteği',
|
|
19
|
+
'type.bug_report': 'Hata bildirimi',
|
|
20
|
+
'hint.feedback': 'Ne düşündüğünüzü söyleyin',
|
|
21
|
+
'hint.feature_request': 'Bir iyileştirme önerin',
|
|
22
|
+
'hint.bug_report': 'Bir şey çalışmıyor',
|
|
23
|
+
'prompt.feedback': 'Neyi bilmemiz gerekiyor?',
|
|
24
|
+
'prompt.feature_request': 'Neyi görmek istersiniz?',
|
|
25
|
+
'prompt.bug_report': 'Ne oldu ve ne olmasını bekliyordunuz?',
|
|
26
|
+
'sub.feedback': 'İyi ya da kötü — doğrudan ekibe gider.',
|
|
27
|
+
'sub.feature_request': 'Ne yapmaya çalıştığınızı anlatın.',
|
|
28
|
+
'sub.bug_report': 'Adımlar, ekran ve beklentiniz bize yardımcı olur.',
|
|
29
|
+
'compose.back': 'Görüşmelere dön',
|
|
30
|
+
'compose.sent': 'Gönderildi',
|
|
31
|
+
'compose.sentHint': 'Tam burada yanıtlayacağız. Görüşmeyi Açık bölümünde bulursunuz ve yanıtladığımızda düğmede bir işaret belirir.',
|
|
32
|
+
'compose.done': 'Tamam',
|
|
33
|
+
'compose.send': 'Gönder',
|
|
34
|
+
'compose.sending': 'Gönderiliyor…',
|
|
35
|
+
'compose.minChars': 'En az {count} karakter',
|
|
36
|
+
'thread.support': 'Destek',
|
|
37
|
+
'thread.new': 'Yeni',
|
|
38
|
+
'thread.resolvedAt': 'Çözüldü · {date}',
|
|
39
|
+
'thread.readOnly': 'Bu görüşme çözüldü ve salt okunur',
|
|
40
|
+
'thread.placeholder': 'Bir yanıt yazın…',
|
|
41
|
+
'thread.sendA11y': 'Yanıtı gönder',
|
|
42
|
+
'thread.sendingA11y': 'Gönderiliyor',
|
|
43
|
+
'thread.translating': 'Çevriliyor…',
|
|
44
|
+
'status.open': 'Açık',
|
|
45
|
+
'status.resolved': 'Çözüldü',
|
|
46
|
+
'error.tryAgain': 'Tekrar dene',
|
|
47
|
+
'error.rateLimited': 'Çok fazla istek — daha sonra tekrar deneyin',
|
|
48
|
+
'error.offline': 'Çevrimdışısınız — bağlantınızı kontrol edin',
|
|
49
|
+
'error.sendFailed': 'Gönderilemedi — tekrar deneyin',
|
|
50
|
+
'error.loadFailed': 'Görüşmeleriniz yüklenemedi',
|
|
51
|
+
'error.unavailable': 'Destek şu anda kullanılamıyor',
|
|
52
|
+
'error.loadRateLimited': 'Çok fazla istek — birazdan tekrar deneyin',
|
|
53
|
+
'lang.title': 'Dilinizi seçin',
|
|
54
|
+
'lang.subtitle': 'İstediğiniz dilde yazın — sizinle destek ekibi arasında çeviri yapıyoruz.',
|
|
55
|
+
'lang.continue': 'Devam',
|
|
56
|
+
'lang.change': 'Dili değiştir',
|
|
57
|
+
'lang.saveFailed': 'Kaydedilemedi — tekrar deneyin',
|
|
58
|
+
'time.justNow': 'az önce',
|
|
59
|
+
'time.minutes': '{count} dk önce',
|
|
60
|
+
'time.hours': '{count} sa önce',
|
|
61
|
+
'time.days': '{count} g önce',
|
|
62
|
+
'time.weeks': '{count} hf önce',
|
|
63
|
+
'time.months': '{count} ay önce',
|
|
64
|
+
'time.years': '{count} yıl önce',
|
|
65
|
+
'time.today': 'Bugün',
|
|
66
|
+
'time.yesterday': 'Dün'
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=tr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["tr"],"sourceRoot":"../../../../src","sources":["i18n/strings/tr.ts"],"mappings":";;AAEA,OAAO,MAAMA,EAAe,GAAG;EAC7B,YAAY,EAAE,QAAQ;EACtB,eAAe,EAAE,iDAAiD;EAClE,YAAY,EAAE,eAAe;EAC7B,WAAW,EAAE,MAAM;EACnB,eAAe,EAAE,SAAS;EAC1B,YAAY,EAAE,mBAAmB;EACjC,gBAAgB,EACd,0EAA0E;EAC5E,iBAAiB,EAAE,iBAAiB;EACpC,UAAU,EAAE,KAAK;EACjB,iBAAiB,EAAE,iBAAiB;EACpC,uBAAuB,EAAE,oCAAoC;EAC7D,cAAc,EAAE,cAAc;EAC9B,eAAe,EAAE,KAAK;EAEtB,eAAe,EAAE,eAAe;EAChC,sBAAsB,EAAE,gBAAgB;EACxC,iBAAiB,EAAE,gBAAgB;EACnC,eAAe,EAAE,2BAA2B;EAC5C,sBAAsB,EAAE,wBAAwB;EAChD,iBAAiB,EAAE,oBAAoB;EACvC,iBAAiB,EAAE,0BAA0B;EAC7C,wBAAwB,EAAE,yBAAyB;EACnD,mBAAmB,EAAE,uCAAuC;EAC5D,cAAc,EAAE,wCAAwC;EACxD,qBAAqB,EAAE,mCAAmC;EAC1D,gBAAgB,EAAE,mDAAmD;EAErE,cAAc,EAAE,iBAAiB;EACjC,cAAc,EAAE,YAAY;EAC5B,kBAAkB,EAChB,gHAAgH;EAClH,cAAc,EAAE,OAAO;EACvB,cAAc,EAAE,QAAQ;EACxB,iBAAiB,EAAE,eAAe;EAClC,kBAAkB,EAAE,wBAAwB;EAE5C,gBAAgB,EAAE,QAAQ;EAC1B,YAAY,EAAE,MAAM;EACpB,mBAAmB,EAAE,kBAAkB;EACvC,iBAAiB,EAAE,mCAAmC;EACtD,oBAAoB,EAAE,kBAAkB;EACxC,iBAAiB,EAAE,eAAe;EAClC,oBAAoB,EAAE,cAAc;EACpC,oBAAoB,EAAE,aAAa;EAEnC,aAAa,EAAE,MAAM;EACrB,iBAAiB,EAAE,SAAS;EAE5B,gBAAgB,EAAE,aAAa;EAC/B,mBAAmB,EAAE,6CAA6C;EAClE,eAAe,EAAE,6CAA6C;EAC9D,kBAAkB,EAAE,gCAAgC;EACpD,kBAAkB,EAAE,4BAA4B;EAChD,mBAAmB,EAAE,+BAA+B;EACpD,uBAAuB,EAAE,2CAA2C;EAEpE,YAAY,EAAE,gBAAgB;EAC9B,eAAe,EACb,2EAA2E;EAC7E,eAAe,EAAE,OAAO;EACxB,aAAa,EAAE,eAAe;EAC9B,iBAAiB,EAAE,gCAAgC;EAEnD,cAAc,EAAE,SAAS;EACzB,cAAc,EAAE,iBAAiB;EACjC,YAAY,EAAE,iBAAiB;EAC/B,WAAW,EAAE,gBAAgB;EAC7B,YAAY,EAAE,iBAAiB;EAC/B,aAAa,EAAE,iBAAiB;EAChC,YAAY,EAAE,kBAAkB;EAChC,YAAY,EAAE,OAAO;EACrB,gBAAgB,EAAE;AACpB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export const zh = {
|
|
4
|
+
'home.title': '客服支持',
|
|
5
|
+
'home.subtitle': '发起一次对话 —— 我们就在这里回复你。',
|
|
6
|
+
'home.close': '关闭客服',
|
|
7
|
+
'home.open': '进行中',
|
|
8
|
+
'home.resolved': '已解决',
|
|
9
|
+
'home.empty': '还没有对话',
|
|
10
|
+
'home.emptyHint': '你发送的内容都会送到团队,他们的回复也会回到这个窗口。',
|
|
11
|
+
'home.noMessages': '还没有消息',
|
|
12
|
+
'home.you': '你',
|
|
13
|
+
'home.threadA11y': '对话:{type}',
|
|
14
|
+
'home.threadUnreadA11y': '对话:{type},{count} 条未读',
|
|
15
|
+
'home.newA11y': '新建:{type}',
|
|
16
|
+
'home.language': '语言',
|
|
17
|
+
'type.feedback': '反馈',
|
|
18
|
+
'type.feature_request': '功能请求',
|
|
19
|
+
'type.bug_report': '错误报告',
|
|
20
|
+
'hint.feedback': '告诉我们你的想法',
|
|
21
|
+
'hint.feature_request': '提出一个改进建议',
|
|
22
|
+
'hint.bug_report': '有功能无法正常使用',
|
|
23
|
+
'prompt.feedback': '有什么想让我们知道的?',
|
|
24
|
+
'prompt.feature_request': '你希望看到什么?',
|
|
25
|
+
'prompt.bug_report': '发生了什么,你期待的结果是什么?',
|
|
26
|
+
'sub.feedback': '好评差评都会直接送到团队。',
|
|
27
|
+
'sub.feature_request': '告诉我们你想完成什么。',
|
|
28
|
+
'sub.bug_report': '操作步骤、所在页面和你的预期都很有帮助。',
|
|
29
|
+
'compose.back': '返回对话列表',
|
|
30
|
+
'compose.sent': '已发送',
|
|
31
|
+
'compose.sentHint': '我们会在这里回复。对话会出现在「进行中」,我们回复后按钮上会显示提示。',
|
|
32
|
+
'compose.done': '完成',
|
|
33
|
+
'compose.send': '发送',
|
|
34
|
+
'compose.sending': '发送中…',
|
|
35
|
+
'compose.minChars': '至少输入 {count} 个字符',
|
|
36
|
+
'thread.support': '客服支持',
|
|
37
|
+
'thread.new': '新消息',
|
|
38
|
+
'thread.resolvedAt': '已解决 · {date}',
|
|
39
|
+
'thread.readOnly': '此对话已解决,仅供查看',
|
|
40
|
+
'thread.placeholder': '写下回复…',
|
|
41
|
+
'thread.sendA11y': '发送回复',
|
|
42
|
+
'thread.sendingA11y': '发送中',
|
|
43
|
+
'thread.translating': '翻译中…',
|
|
44
|
+
'status.open': '进行中',
|
|
45
|
+
'status.resolved': '已解决',
|
|
46
|
+
'error.tryAgain': '重试',
|
|
47
|
+
'error.rateLimited': '请求过于频繁 —— 请稍后再试',
|
|
48
|
+
'error.offline': '你已离线 —— 请检查网络连接',
|
|
49
|
+
'error.sendFailed': '发送失败 —— 请重试',
|
|
50
|
+
'error.loadFailed': '无法加载你的对话',
|
|
51
|
+
'error.unavailable': '客服支持暂时不可用',
|
|
52
|
+
'error.loadRateLimited': '请求过于频繁 —— 请稍等片刻再试',
|
|
53
|
+
'lang.title': '选择你的语言',
|
|
54
|
+
'lang.subtitle': '用你习惯的语言书写 —— 我们会在你和客服团队之间翻译。',
|
|
55
|
+
'lang.continue': '继续',
|
|
56
|
+
'lang.change': '更改语言',
|
|
57
|
+
'lang.saveFailed': '保存失败 —— 请重试',
|
|
58
|
+
'time.justNow': '刚刚',
|
|
59
|
+
'time.minutes': '{count} 分钟前',
|
|
60
|
+
'time.hours': '{count} 小时前',
|
|
61
|
+
'time.days': '{count} 天前',
|
|
62
|
+
'time.weeks': '{count} 周前',
|
|
63
|
+
'time.months': '{count} 个月前',
|
|
64
|
+
'time.years': '{count} 年前',
|
|
65
|
+
'time.today': '今天',
|
|
66
|
+
'time.yesterday': '昨天'
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=zh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["zh"],"sourceRoot":"../../../../src","sources":["i18n/strings/zh.ts"],"mappings":";;AAEA,OAAO,MAAMA,EAAe,GAAG;EAC7B,YAAY,EAAE,MAAM;EACpB,eAAe,EAAE,sBAAsB;EACvC,YAAY,EAAE,MAAM;EACpB,WAAW,EAAE,KAAK;EAClB,eAAe,EAAE,KAAK;EACtB,YAAY,EAAE,OAAO;EACrB,gBAAgB,EAAE,6BAA6B;EAC/C,iBAAiB,EAAE,OAAO;EAC1B,UAAU,EAAE,GAAG;EACf,iBAAiB,EAAE,WAAW;EAC9B,uBAAuB,EAAE,uBAAuB;EAChD,cAAc,EAAE,WAAW;EAC3B,eAAe,EAAE,IAAI;EAErB,eAAe,EAAE,IAAI;EACrB,sBAAsB,EAAE,MAAM;EAC9B,iBAAiB,EAAE,MAAM;EACzB,eAAe,EAAE,UAAU;EAC3B,sBAAsB,EAAE,UAAU;EAClC,iBAAiB,EAAE,WAAW;EAC9B,iBAAiB,EAAE,aAAa;EAChC,wBAAwB,EAAE,UAAU;EACpC,mBAAmB,EAAE,kBAAkB;EACvC,cAAc,EAAE,eAAe;EAC/B,qBAAqB,EAAE,aAAa;EACpC,gBAAgB,EAAE,sBAAsB;EAExC,cAAc,EAAE,QAAQ;EACxB,cAAc,EAAE,KAAK;EACrB,kBAAkB,EAChB,qCAAqC;EACvC,cAAc,EAAE,IAAI;EACpB,cAAc,EAAE,IAAI;EACpB,iBAAiB,EAAE,MAAM;EACzB,kBAAkB,EAAE,kBAAkB;EAEtC,gBAAgB,EAAE,MAAM;EACxB,YAAY,EAAE,KAAK;EACnB,mBAAmB,EAAE,cAAc;EACnC,iBAAiB,EAAE,aAAa;EAChC,oBAAoB,EAAE,OAAO;EAC7B,iBAAiB,EAAE,MAAM;EACzB,oBAAoB,EAAE,KAAK;EAC3B,oBAAoB,EAAE,MAAM;EAE5B,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,KAAK;EAExB,gBAAgB,EAAE,IAAI;EACtB,mBAAmB,EAAE,iBAAiB;EACtC,eAAe,EAAE,iBAAiB;EAClC,kBAAkB,EAAE,aAAa;EACjC,kBAAkB,EAAE,UAAU;EAC9B,mBAAmB,EAAE,WAAW;EAChC,uBAAuB,EAAE,mBAAmB;EAE5C,YAAY,EAAE,QAAQ;EACtB,eAAe,EAAE,8BAA8B;EAC/C,eAAe,EAAE,IAAI;EACrB,aAAa,EAAE,MAAM;EACrB,iBAAiB,EAAE,aAAa;EAEhC,cAAc,EAAE,IAAI;EACpB,cAAc,EAAE,aAAa;EAC7B,YAAY,EAAE,aAAa;EAC3B,WAAW,EAAE,YAAY;EACzB,YAAY,EAAE,YAAY;EAC1B,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,YAAY;EAC1B,YAAY,EAAE,IAAI;EAClB,gBAAgB,EAAE;AACpB,CAAC","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -4,5 +4,6 @@ export { SupportButton } from './components/SupportButton';
|
|
|
4
4
|
export { supportDarkTheme, supportLightTheme, resolveTheme } from './theme';
|
|
5
5
|
export { SupportApiError } from './api';
|
|
6
6
|
export { isPushAvailable } from './push';
|
|
7
|
+
export { DEFAULT_LANGUAGE, deviceLanguage, isSupportedLanguage, LANGUAGE_LABELS, SUPPORTED_LANGUAGES } from './i18n/languages';
|
|
7
8
|
export { QUERY_TYPE_LABEL, USER_MESSAGE_MAX, USER_MESSAGE_MIN } from './types';
|
|
8
9
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SupportButton","supportDarkTheme","supportLightTheme","resolveTheme","SupportApiError","isPushAvailable","QUERY_TYPE_LABEL","USER_MESSAGE_MAX","USER_MESSAGE_MIN"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,4BAA4B;AAC1D,SACEC,gBAAgB,EAChBC,iBAAiB,EACjBC,YAAY,QAEP,SAAS;AAChB,SAASC,eAAe,QAAQ,OAAO;AACvC,SAASC,eAAe,QAAQ,QAAQ;
|
|
1
|
+
{"version":3,"names":["SupportButton","supportDarkTheme","supportLightTheme","resolveTheme","SupportApiError","isPushAvailable","DEFAULT_LANGUAGE","deviceLanguage","isSupportedLanguage","LANGUAGE_LABELS","SUPPORTED_LANGUAGES","QUERY_TYPE_LABEL","USER_MESSAGE_MAX","USER_MESSAGE_MIN"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,4BAA4B;AAC1D,SACEC,gBAAgB,EAChBC,iBAAiB,EACjBC,YAAY,QAEP,SAAS;AAChB,SAASC,eAAe,QAAQ,OAAO;AACvC,SAASC,eAAe,QAAQ,QAAQ;AACxC,SACEC,gBAAgB,EAChBC,cAAc,EACdC,mBAAmB,EACnBC,eAAe,EACfC,mBAAmB,QAEd,kBAAkB;AAczB,SACEC,gBAAgB,EAChBC,gBAAgB,EAChBC,gBAAgB,QACX,SAAS","ignoreList":[]}
|
package/lib/module/types.js
CHANGED
|
@@ -7,6 +7,17 @@
|
|
|
7
7
|
* minimal — bare mark, no fill or border. Sits in a nav bar.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* Note the absence of any admin identity: end users see one support team,
|
|
12
|
+
* not the people staffing it, so the names never leave the server. The
|
|
13
|
+
* dashboard still shows who wrote and who resolved what.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* English labels, kept for host apps that render their own entry points.
|
|
18
|
+
* Inside the sheet the labels come from the string table instead, so they
|
|
19
|
+
* follow the user's language.
|
|
20
|
+
*/
|
|
10
21
|
export const QUERY_TYPE_LABEL = {
|
|
11
22
|
feedback: 'Feedback',
|
|
12
23
|
feature_request: 'Feature request',
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["QUERY_TYPE_LABEL","feedback","feature_request","bug_report","USER_MESSAGE_MIN","USER_MESSAGE_MAX"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"names":["QUERY_TYPE_LABEL","feedback","feature_request","bug_report","USER_MESSAGE_MIN","USER_MESSAGE_MAX"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AASA;AACA;AACA;AACA;AACA;AACA;;AAwFA;AACA;AACA;AACA;AACA;;AAwBA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,gBAA2C,GAAG;EACzDC,QAAQ,EAAE,UAAU;EACpBC,eAAe,EAAE,iBAAiB;EAClCC,UAAU,EAAE;AACd,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAG,EAAE;AAClC,OAAO,MAAMC,gBAAgB,GAAG,GAAG","ignoreList":[]}
|
|
@@ -39,19 +39,23 @@ const MARK_READ_BACKOFF_MS = 1_500;
|
|
|
39
39
|
* an integration mistake — the end user retrying forever won't fix a key
|
|
40
40
|
* that doesn't match the app — so the real cause is logged for whoever is
|
|
41
41
|
* running the build instead of hidden behind "couldn't load".
|
|
42
|
+
*
|
|
43
|
+
* Returns a key rather than a message: the hook has no business knowing what
|
|
44
|
+
* language the sheet is in, and resolving it here would make every callback
|
|
45
|
+
* depend on the translator.
|
|
42
46
|
*/
|
|
43
|
-
function
|
|
47
|
+
function loadErrorKey(e) {
|
|
44
48
|
if (e instanceof SupportApiError) {
|
|
45
|
-
if (e.offline) return
|
|
49
|
+
if (e.offline) return 'error.offline';
|
|
46
50
|
if (e.status === 401 || e.status === 403) {
|
|
47
51
|
if (__DEV__) {
|
|
48
52
|
console.error('SupportButton: the support API rejected this app (401). Check that ' + '`apiKey` is the key shown when the app was registered and that ' + '`appName` matches that app exactly.');
|
|
49
53
|
}
|
|
50
|
-
return '
|
|
54
|
+
return 'error.unavailable';
|
|
51
55
|
}
|
|
52
|
-
if (e.status === 429) return '
|
|
56
|
+
if (e.status === 429) return 'error.loadRateLimited';
|
|
53
57
|
}
|
|
54
|
-
return
|
|
58
|
+
return 'error.loadFailed';
|
|
55
59
|
}
|
|
56
60
|
export function useSupportThreads({
|
|
57
61
|
config,
|
|
@@ -65,7 +69,9 @@ export function useSupportThreads({
|
|
|
65
69
|
const [totalUnread, setTotalUnread] = useState(0);
|
|
66
70
|
const [loading, setLoading] = useState(false);
|
|
67
71
|
const [refreshing, setRefreshing] = useState(false);
|
|
68
|
-
const [
|
|
72
|
+
const [errorKey, setErrorKey] = useState(null);
|
|
73
|
+
const [serverLanguage, setServerLanguage] = useState(null);
|
|
74
|
+
const [languageLoaded, setLanguageLoaded] = useState(false);
|
|
69
75
|
const mounted = useRef(true);
|
|
70
76
|
/** Last server payload, before local read reconciliation. */
|
|
71
77
|
const rawThreads = useRef(null);
|
|
@@ -187,7 +193,9 @@ export function useSupportThreads({
|
|
|
187
193
|
appliedSeq.current = seq;
|
|
188
194
|
rawThreads.current = data.threads;
|
|
189
195
|
watermarks.current = pruneWatermarks(watermarks.current, data.threads);
|
|
190
|
-
|
|
196
|
+
setErrorKey(null);
|
|
197
|
+
setServerLanguage(data.language);
|
|
198
|
+
setLanguageLoaded(true);
|
|
191
199
|
publish();
|
|
192
200
|
|
|
193
201
|
// Replies that arrived while the user is sitting in the thread are
|
|
@@ -198,7 +206,7 @@ export function useSupportThreads({
|
|
|
198
206
|
} catch (e) {
|
|
199
207
|
if (!mounted.current) return;
|
|
200
208
|
// A failed background poll must not blow away cached threads.
|
|
201
|
-
if (rawThreads.current === null)
|
|
209
|
+
if (rawThreads.current === null) setErrorKey(loadErrorKey(e));
|
|
202
210
|
} finally {
|
|
203
211
|
if (mounted.current) {
|
|
204
212
|
if (spinner) setRefreshing(false);
|
|
@@ -273,7 +281,9 @@ export function useSupportThreads({
|
|
|
273
281
|
totalUnread,
|
|
274
282
|
loading,
|
|
275
283
|
refreshing,
|
|
276
|
-
|
|
284
|
+
errorKey,
|
|
285
|
+
serverLanguage,
|
|
286
|
+
languageLoaded,
|
|
277
287
|
refresh,
|
|
278
288
|
reload
|
|
279
289
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useRef","useState","AppState","getThreads","getUnreadCount","markRead","SupportApiError","latestAdminMessageAt","pruneWatermarks","reconcileThreads","sumUnread","THREAD_POLL_MS","SHEET_POLL_MS","IDLE_POLL_MS","MIN_POLL_MS","MARK_READ_MAX_ATTEMPTS","MARK_READ_BACKOFF_MS","
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useRef","useState","AppState","getThreads","getUnreadCount","markRead","SupportApiError","latestAdminMessageAt","pruneWatermarks","reconcileThreads","sumUnread","THREAD_POLL_MS","SHEET_POLL_MS","IDLE_POLL_MS","MIN_POLL_MS","MARK_READ_MAX_ATTEMPTS","MARK_READ_BACKOFF_MS","loadErrorKey","e","offline","status","__DEV__","console","error","useSupportThreads","config","revenuecatId","enabled","sheetOpen","activeThreadId","idlePollMs","threads","setThreads","totalUnread","setTotalUnread","loading","setLoading","refreshing","setRefreshing","errorKey","setErrorKey","serverLanguage","setServerLanguage","languageLoaded","setLanguageLoaded","mounted","rawThreads","watermarks","Map","reads","requestSeq","appliedSeq","readEpoch","activeThreadIdRef","current","timers","attempt","values","timer","clearTimeout","clear","publish","raw","reconciled","sendRead","threadId","get","inFlight","covers","target","queryId","then","attempts","delete","catch","setTimeout","flushReads","markThreadRead","thread","find","t","id","latest","set","fetchThreads","mode","seq","blank","spinner","skeleton","data","language","active","fetchCount","epoch","total_unread","idle","intervalMs","tick","size","setInterval","Math","max","appStateSub","addEventListener","state","clearInterval","remove","refresh","reload"],"sourceRoot":"../../src","sources":["useSupportThreads.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAChE,SAASC,QAAQ,QAAQ,cAAc;AACvC,SACEC,UAAU,EACVC,cAAc,EACdC,QAAQ,EACRC,eAAe,QAEV,OAAO;AAGd,SACEC,oBAAoB,EACpBC,eAAe,EACfC,gBAAgB,EAChBC,SAAS,QAEJ,UAAU;;AAEjB;AACA;AACA;AACA;AACA,MAAMC,cAAc,GAAG,KAAK;AAC5B,MAAMC,aAAa,GAAG,MAAM;AAC5B,OAAO,MAAMC,YAAY,GAAG,MAAM;AAClC,MAAMC,WAAW,GAAG,KAAK;;AAEzB;AACA;AACA;AACA,MAAMC,sBAAsB,GAAG,CAAC;AAChC,MAAMC,oBAAoB,GAAG,KAAK;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,YAAYA,CAACC,CAAU,EAAa;EAC3C,IAAIA,CAAC,YAAYZ,eAAe,EAAE;IAChC,IAAIY,CAAC,CAACC,OAAO,EAAE,OAAO,eAAe;IACrC,IAAID,CAAC,CAACE,MAAM,KAAK,GAAG,IAAIF,CAAC,CAACE,MAAM,KAAK,GAAG,EAAE;MACxC,IAAIC,OAAO,EAAE;QACXC,OAAO,CAACC,KAAK,CACX,qEAAqE,GACnE,iEAAiE,GACjE,qCACJ,CAAC;MACH;MACA,OAAO,mBAAmB;IAC5B;IACA,IAAIL,CAAC,CAACE,MAAM,KAAK,GAAG,EAAE,OAAO,uBAAuB;EACtD;EACA,OAAO,kBAAkB;AAC3B;AAoCA,OAAO,SAASI,iBAAiBA,CAAC;EAChCC,MAAM;EACNC,YAAY;EACZC,OAAO;EACPC,SAAS;EACTC,cAAc;EACdC;AASF,CAAC,EAAuB;EACtB,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG/B,QAAQ,CAAkB,IAAI,CAAC;EAC7D,MAAM,CAACgC,WAAW,EAAEC,cAAc,CAAC,GAAGjC,QAAQ,CAAC,CAAC,CAAC;EACjD,MAAM,CAACkC,OAAO,EAAEC,UAAU,CAAC,GAAGnC,QAAQ,CAAC,KAAK,CAAC;EAC7C,MAAM,CAACoC,UAAU,EAAEC,aAAa,CAAC,GAAGrC,QAAQ,CAAC,KAAK,CAAC;EACnD,MAAM,CAACsC,QAAQ,EAAEC,WAAW,CAAC,GAAGvC,QAAQ,CAAmB,IAAI,CAAC;EAChE,MAAM,CAACwC,cAAc,EAAEC,iBAAiB,CAAC,GAAGzC,QAAQ,CAAgB,IAAI,CAAC;EACzE,MAAM,CAAC0C,cAAc,EAAEC,iBAAiB,CAAC,GAAG3C,QAAQ,CAAC,KAAK,CAAC;EAE3D,MAAM4C,OAAO,GAAG7C,MAAM,CAAC,IAAI,CAAC;EAC5B;EACA,MAAM8C,UAAU,GAAG9C,MAAM,CAAkB,IAAI,CAAC;EAChD,MAAM+C,UAAU,GAAG/C,MAAM,CAAiB,IAAIgD,GAAG,CAAC,CAAC,CAAC;EACpD,MAAMC,KAAK,GAAGjD,MAAM,CAAC,IAAIgD,GAAG,CAAsB,CAAC,CAAC;EACpD,MAAME,UAAU,GAAGlD,MAAM,CAAC,CAAC,CAAC;EAC5B,MAAMmD,UAAU,GAAGnD,MAAM,CAAC,CAAC,CAAC;EAC5B,MAAMoD,SAAS,GAAGpD,MAAM,CAAC,CAAC,CAAC;EAC3B,MAAMqD,iBAAiB,GAAGrD,MAAM,CAAgB6B,cAAc,CAAC;EAE/D9B,SAAS,CAAC,MAAM;IACdsD,iBAAiB,CAACC,OAAO,GAAGzB,cAAc;EAC5C,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB9B,SAAS,CAAC,MAAM;IACd8C,OAAO,CAACS,OAAO,GAAG,IAAI;IACtB,MAAMC,MAAM,GAAGN,KAAK,CAACK,OAAO;IAC5B,OAAO,MAAM;MACXT,OAAO,CAACS,OAAO,GAAG,KAAK;MACvB,KAAK,MAAME,OAAO,IAAID,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;QACrC,IAAID,OAAO,CAACE,KAAK,KAAK,IAAI,EAAEC,YAAY,CAACH,OAAO,CAACE,KAAK,CAAC;MACzD;MACAH,MAAM,CAACK,KAAK,CAAC,CAAC;IAChB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,OAAO,GAAG/D,WAAW,CAAC,MAAM;IAChC,MAAMgE,GAAG,GAAGhB,UAAU,CAACQ,OAAO;IAC9B,IAAIQ,GAAG,KAAK,IAAI,EAAE;IAClB,MAAMC,UAAU,GAAGtD,gBAAgB,CAACqD,GAAG,EAAEf,UAAU,CAACO,OAAO,CAAC;IAC5DtB,UAAU,CAAC+B,UAAU,CAAC;IACtB7B,cAAc,CAACxB,SAAS,CAACqD,UAAU,CAAC,CAAC;EACvC,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,MAAMC,QAAQ,GAAGlE,WAAW,CACzBmE,QAAgB,IAAK;IACpB,MAAMT,OAAO,GAAGP,KAAK,CAACK,OAAO,CAACY,GAAG,CAACD,QAAQ,CAAC;IAC3C,IAAI,CAACT,OAAO,IAAIA,OAAO,CAACW,QAAQ,KAAK,IAAI,EAAE;IAC3C,MAAMC,MAAM,GAAGZ,OAAO,CAACa,MAAM;IAC7Bb,OAAO,CAACW,QAAQ,GAAGC,MAAM;IACzBZ,OAAO,CAACE,KAAK,GAAG,IAAI;IAEpBrD,QAAQ,CAACoB,MAAM,EAAE;MAAE6C,OAAO,EAAEL,QAAQ;MAAEvC;IAAa,CAAC,CAAC,CAClD6C,IAAI,CAAC,MAAM;MACV,IAAI,CAAC1B,OAAO,CAACS,OAAO,EAAE;MACtB,MAAMA,OAAO,GAAGL,KAAK,CAACK,OAAO,CAACY,GAAG,CAACD,QAAQ,CAAC;MAC3C,IAAI,CAACX,OAAO,EAAE;MACdA,OAAO,CAACa,QAAQ,GAAG,IAAI;MACvB;MACA;MACA,IAAIb,OAAO,CAACe,MAAM,GAAGD,MAAM,EAAE;QAC3Bd,OAAO,CAACkB,QAAQ,GAAG,CAAC;QACpBR,QAAQ,CAACC,QAAQ,CAAC;QAClB;MACF;MACAhB,KAAK,CAACK,OAAO,CAACmB,MAAM,CAACR,QAAQ,CAAC;MAC9B;MACA;MACAb,SAAS,CAACE,OAAO,IAAI,CAAC;IACxB,CAAC,CAAC,CACDoB,KAAK,CAAC,MAAM;MACX,IAAI,CAAC7B,OAAO,CAACS,OAAO,EAAE;MACtB,MAAMA,OAAO,GAAGL,KAAK,CAACK,OAAO,CAACY,GAAG,CAACD,QAAQ,CAAC;MAC3C,IAAI,CAACX,OAAO,EAAE;MACdA,OAAO,CAACa,QAAQ,GAAG,IAAI;MACvBb,OAAO,CAACkB,QAAQ,IAAI,CAAC;MACrB,IAAIlB,OAAO,CAACkB,QAAQ,IAAIzD,sBAAsB,EAAE;MAChDuC,OAAO,CAACI,KAAK,GAAGiB,UAAU,CACxB,MAAMX,QAAQ,CAACC,QAAQ,CAAC,EACxBjD,oBAAoB,GAAG,CAAC,KAAKsC,OAAO,CAACkB,QAAQ,GAAG,CAAC,CACnD,CAAC;IACH,CAAC,CAAC;EACN,CAAC,EACD,CAAC/C,MAAM,EAAEC,YAAY,CACvB,CAAC;;EAED;EACA,MAAMkD,UAAU,GAAG9E,WAAW,CAAC,MAAM;IACnC,KAAK,MAAM,CAACmE,QAAQ,EAAET,OAAO,CAAC,IAAIP,KAAK,CAACK,OAAO,EAAE;MAC/C,IAAIE,OAAO,CAACW,QAAQ,KAAK,IAAI,IAAIX,OAAO,CAACE,KAAK,KAAK,IAAI,EAAE;MACzDF,OAAO,CAACgB,QAAQ,GAAG,CAAC;MACpBR,QAAQ,CAACC,QAAQ,CAAC;IACpB;EACF,CAAC,EAAE,CAACD,QAAQ,CAAC,CAAC;;EAEd;AACF;AACA;AACA;AACA;EACE,MAAMa,cAAc,GAAG/E,WAAW,CAC/BmE,QAAgB,IAAK;IACpB,MAAMa,MAAM,GAAGhC,UAAU,CAACQ,OAAO,EAAEyB,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKhB,QAAQ,CAAC;IACjE,IAAI,CAACa,MAAM,EAAE;IACb,MAAMI,MAAM,GAAG3E,oBAAoB,CAACuE,MAAM,CAAC;IAC3C,IAAII,MAAM,KAAK,CAAC,EAAE;IAClB,IAAIA,MAAM,KAAKnC,UAAU,CAACO,OAAO,CAACY,GAAG,CAACD,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE;IAEvDlB,UAAU,CAACO,OAAO,CAAC6B,GAAG,CAAClB,QAAQ,EAAEiB,MAAM,CAAC;IACxC;IACA9B,SAAS,CAACE,OAAO,IAAI,CAAC;IACtBO,OAAO,CAAC,CAAC;IAET,MAAML,OAAO,GAAGP,KAAK,CAACK,OAAO,CAACY,GAAG,CAACD,QAAQ,CAAC;IAC3C,IAAIT,OAAO,EAAEA,OAAO,CAACa,MAAM,GAAGa,MAAM,CAAC,KAChC;MACHjC,KAAK,CAACK,OAAO,CAAC6B,GAAG,CAAClB,QAAQ,EAAE;QAC1BI,MAAM,EAAEa,MAAM;QACdf,QAAQ,EAAE,IAAI;QACdK,QAAQ,EAAE,CAAC;QACXd,KAAK,EAAE;MACT,CAAC,CAAC;IACJ;IACAM,QAAQ,CAACC,QAAQ,CAAC;EACpB,CAAC,EACD,CAACJ,OAAO,EAAEG,QAAQ,CACpB,CAAC;EAED,MAAMoB,YAAY,GAAGtF,WAAW,CAC9B,MAAOuF,IAAuC,IAAK;IACjD,IAAI,CAAC1D,OAAO,EAAE;IACd,MAAM2D,GAAG,GAAIpC,UAAU,CAACI,OAAO,IAAI,CAAE;IACrC;IACA;IACA,MAAMiC,KAAK,GAAGzC,UAAU,CAACQ,OAAO,KAAK,IAAI;IACzC,MAAMkC,OAAO,GAAGH,IAAI,KAAK,MAAM,IAAI,CAACE,KAAK;IACzC,MAAME,QAAQ,GAAGJ,IAAI,KAAK,YAAY,IAAIE,KAAK;IAC/C,IAAIC,OAAO,EAAElD,aAAa,CAAC,IAAI,CAAC;IAChC,IAAImD,QAAQ,EAAErD,UAAU,CAAC,IAAI,CAAC;IAE9B,IAAI;MACF,MAAMsD,IAAI,GAAG,MAAMvF,UAAU,CAACsB,MAAM,EAAEC,YAAY,CAAC;MACnD,IAAI,CAACmB,OAAO,CAACS,OAAO,EAAE;MACtB;MACA,IAAIgC,GAAG,IAAInC,UAAU,CAACG,OAAO,EAAE;MAC/BH,UAAU,CAACG,OAAO,GAAGgC,GAAG;MAExBxC,UAAU,CAACQ,OAAO,GAAGoC,IAAI,CAAC3D,OAAO;MACjCgB,UAAU,CAACO,OAAO,GAAG9C,eAAe,CAACuC,UAAU,CAACO,OAAO,EAAEoC,IAAI,CAAC3D,OAAO,CAAC;MACtES,WAAW,CAAC,IAAI,CAAC;MACjBE,iBAAiB,CAACgD,IAAI,CAACC,QAAQ,CAAC;MAChC/C,iBAAiB,CAAC,IAAI,CAAC;MACvBiB,OAAO,CAAC,CAAC;;MAET;MACA;MACA,MAAM+B,MAAM,GAAGvC,iBAAiB,CAACC,OAAO;MACxC,IAAIsC,MAAM,KAAK,IAAI,EAAEf,cAAc,CAACe,MAAM,CAAC;MAC3ChB,UAAU,CAAC,CAAC;IACd,CAAC,CAAC,OAAO1D,CAAC,EAAE;MACV,IAAI,CAAC2B,OAAO,CAACS,OAAO,EAAE;MACtB;MACA,IAAIR,UAAU,CAACQ,OAAO,KAAK,IAAI,EAAEd,WAAW,CAACvB,YAAY,CAACC,CAAC,CAAC,CAAC;IAC/D,CAAC,SAAS;MACR,IAAI2B,OAAO,CAACS,OAAO,EAAE;QACnB,IAAIkC,OAAO,EAAElD,aAAa,CAAC,KAAK,CAAC;QACjC,IAAImD,QAAQ,EAAErD,UAAU,CAAC,KAAK,CAAC;MACjC;IACF;EACF,CAAC,EACD,CAACX,MAAM,EAAEE,OAAO,EAAED,YAAY,EAAEmC,OAAO,EAAEgB,cAAc,EAAED,UAAU,CACrE,CAAC;;EAED;EACA,MAAMiB,UAAU,GAAG/F,WAAW,CAAC,YAAY;IACzC,IAAI,CAAC6B,OAAO,EAAE;IACd,MAAM2D,GAAG,GAAIpC,UAAU,CAACI,OAAO,IAAI,CAAE;IACrC,MAAMwC,KAAK,GAAG1C,SAAS,CAACE,OAAO;IAC/B,IAAI;MACF,MAAMoC,IAAI,GAAG,MAAMtF,cAAc,CAACqB,MAAM,EAAEC,YAAY,CAAC;MACvD,IAAI,CAACmB,OAAO,CAACS,OAAO,EAAE;MACtB;MACA;MACA,IAAIF,SAAS,CAACE,OAAO,KAAKwC,KAAK,EAAE;MACjC,IAAIR,GAAG,IAAInC,UAAU,CAACG,OAAO,EAAE;MAC/BH,UAAU,CAACG,OAAO,GAAGgC,GAAG;MACxBpD,cAAc,CAACwD,IAAI,CAACK,YAAY,CAAC;IACnC,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ,CAAC,EAAE,CAACtE,MAAM,EAAEE,OAAO,EAAED,YAAY,CAAC,CAAC;;EAEnC;EACA3B,SAAS,CAAC,MAAM;IACd,KAAKqF,YAAY,CAAC,SAAS,CAAC;EAC9B,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;;EAElB;EACArF,SAAS,CAAC,MAAM;IACd,IAAI6B,SAAS,EAAE,KAAKwD,YAAY,CAAC,YAAY,CAAC;EAChD,CAAC,EAAE,CAACxD,SAAS,EAAEwD,YAAY,CAAC,CAAC;;EAE7B;EACArF,SAAS,CAAC,MAAM;IACd,IAAI8B,cAAc,KAAK,IAAI,EAAEgD,cAAc,CAAChD,cAAc,CAAC;EAC7D,CAAC,EAAE,CAACA,cAAc,EAAEgD,cAAc,CAAC,CAAC;;EAEpC;EACA;EACA9E,SAAS,CAAC,MAAM;IACd,IAAI,CAAC4B,OAAO,EAAE;IACd,MAAMqE,IAAI,GAAG,CAACpE,SAAS;IACvB,MAAMqE,UAAU,GAAGD,IAAI,GACnBlE,UAAU,GACVD,cAAc,KAAK,IAAI,GACrBlB,cAAc,GACdC,aAAa;IAEnB,MAAMsF,IAAI,GAAGA,CAAA,KAAM;MACjB;MACA;MACA,IAAIF,IAAI,IAAI/C,KAAK,CAACK,OAAO,CAAC6C,IAAI,KAAK,CAAC,EAAE,KAAKN,UAAU,CAAC,CAAC,CAAC,KACnD,KAAKT,YAAY,CAAC,YAAY,CAAC;IACtC,CAAC;;IAED;IACA;IACA,MAAM1B,KAAK,GACTuC,UAAU,GAAG,CAAC,GACVG,WAAW,CAACF,IAAI,EAAEG,IAAI,CAACC,GAAG,CAACL,UAAU,EAAEnF,WAAW,CAAC,CAAC,GACpD,IAAI;IAEV,MAAMyF,WAAW,GAAGrG,QAAQ,CAACsG,gBAAgB,CAAC,QAAQ,EAAGC,KAAK,IAAK;MACjE,IAAIA,KAAK,KAAK,QAAQ,EAAEP,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,OAAO,MAAM;MACX,IAAIxC,KAAK,KAAK,IAAI,EAAEgD,aAAa,CAAChD,KAAK,CAAC;MACxC6C,WAAW,CAACI,MAAM,CAAC,CAAC;IACtB,CAAC;EACH,CAAC,EAAE,CACDhF,OAAO,EACPC,SAAS,EACTC,cAAc,EACdC,UAAU,EACVsD,YAAY,EACZS,UAAU,CACX,CAAC;EAEF,MAAMe,OAAO,GAAG9G,WAAW,CAAC,MAAM;IAChC,KAAKsF,YAAY,CAAC,MAAM,CAAC;EAC3B,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAElB,MAAMyB,MAAM,GAAG/G,WAAW,CAAC,MAAMsF,YAAY,CAAC,YAAY,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAE5E,OAAO;IACLrD,OAAO;IACPE,WAAW;IACXE,OAAO;IACPE,UAAU;IACVE,QAAQ;IACRE,cAAc;IACdE,cAAc;IACdiE,OAAO;IACPC;EACF,CAAC;AACH","ignoreList":[]}
|
package/lib/module/utils.js
CHANGED
|
@@ -1,33 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
// Dates and times follow the language the user picked, not the device's:
|
|
4
|
+
// a sheet that says "Traduction…" above "2 days ago" reads as broken.
|
|
5
|
+
|
|
3
6
|
/** "2h ago" relative time — mirrors the web dashboard's formatting. */
|
|
4
|
-
export function relativeTime(iso) {
|
|
7
|
+
export function relativeTime(iso, strings) {
|
|
5
8
|
const then = new Date(iso).getTime();
|
|
6
9
|
const seconds = Math.max(0, Math.floor((Date.now() - then) / 1000));
|
|
7
|
-
if (seconds < 60) return '
|
|
10
|
+
if (seconds < 60) return strings.t('time.justNow');
|
|
8
11
|
const minutes = Math.floor(seconds / 60);
|
|
9
|
-
if (minutes < 60) return
|
|
12
|
+
if (minutes < 60) return strings.t('time.minutes', {
|
|
13
|
+
count: minutes
|
|
14
|
+
});
|
|
10
15
|
const hours = Math.floor(minutes / 60);
|
|
11
|
-
if (hours < 24) return
|
|
16
|
+
if (hours < 24) return strings.t('time.hours', {
|
|
17
|
+
count: hours
|
|
18
|
+
});
|
|
12
19
|
const days = Math.floor(hours / 24);
|
|
13
|
-
if (days < 7) return
|
|
20
|
+
if (days < 7) return strings.t('time.days', {
|
|
21
|
+
count: days
|
|
22
|
+
});
|
|
14
23
|
const weeks = Math.floor(days / 7);
|
|
15
|
-
if (weeks < 5) return
|
|
24
|
+
if (weeks < 5) return strings.t('time.weeks', {
|
|
25
|
+
count: weeks
|
|
26
|
+
});
|
|
16
27
|
const months = Math.floor(days / 30);
|
|
17
|
-
if (months < 12) return
|
|
18
|
-
|
|
28
|
+
if (months < 12) return strings.t('time.months', {
|
|
29
|
+
count: months
|
|
30
|
+
});
|
|
31
|
+
return strings.t('time.years', {
|
|
32
|
+
count: Math.floor(days / 365)
|
|
33
|
+
});
|
|
19
34
|
}
|
|
20
|
-
export function formatDate(iso) {
|
|
21
|
-
return new Date(iso).toLocaleDateString(
|
|
35
|
+
export function formatDate(iso, strings) {
|
|
36
|
+
return new Date(iso).toLocaleDateString(strings.locale, {
|
|
22
37
|
year: 'numeric',
|
|
23
38
|
month: 'short',
|
|
24
39
|
day: 'numeric'
|
|
25
40
|
});
|
|
26
41
|
}
|
|
27
42
|
|
|
28
|
-
/** "14:32" in the
|
|
29
|
-
export function formatTime(iso) {
|
|
30
|
-
return new Date(iso).toLocaleTimeString(
|
|
43
|
+
/** "14:32" in the user's locale — shown under a group of messages. */
|
|
44
|
+
export function formatTime(iso, strings) {
|
|
45
|
+
return new Date(iso).toLocaleTimeString(strings.locale, {
|
|
31
46
|
hour: 'numeric',
|
|
32
47
|
minute: '2-digit'
|
|
33
48
|
});
|
|
@@ -39,13 +54,13 @@ export function isSameDay(a, b) {
|
|
|
39
54
|
}
|
|
40
55
|
|
|
41
56
|
/** Date separator label: Today / Yesterday / "Mon, 5 Jan". */
|
|
42
|
-
export function dayLabel(iso) {
|
|
57
|
+
export function dayLabel(iso, strings) {
|
|
43
58
|
const now = new Date();
|
|
44
|
-
if (isSameDay(iso, now.toISOString())) return '
|
|
59
|
+
if (isSameDay(iso, now.toISOString())) return strings.t('time.today');
|
|
45
60
|
const yesterday = new Date(now.getTime() - 86_400_000);
|
|
46
|
-
if (isSameDay(iso, yesterday.toISOString())) return '
|
|
61
|
+
if (isSameDay(iso, yesterday.toISOString())) return strings.t('time.yesterday');
|
|
47
62
|
const date = new Date(iso);
|
|
48
|
-
return date.toLocaleDateString(
|
|
63
|
+
return date.toLocaleDateString(strings.locale, {
|
|
49
64
|
weekday: 'short',
|
|
50
65
|
month: 'short',
|
|
51
66
|
day: 'numeric',
|
package/lib/module/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["relativeTime","iso","then","Date","getTime","seconds","Math","max","floor","now","minutes","hours","days","weeks","months","formatDate","toLocaleDateString","
|
|
1
|
+
{"version":3,"names":["relativeTime","iso","strings","then","Date","getTime","seconds","Math","max","floor","now","t","minutes","count","hours","days","weeks","months","formatDate","toLocaleDateString","locale","year","month","day","formatTime","toLocaleTimeString","hour","minute","isSameDay","a","b","first","second","getFullYear","getMonth","getDate","dayLabel","toISOString","yesterday","date","weekday","validateProps","props","appName","length","apiKey","supabaseUrl","test","user","name","isPaid","revenuecatId","appVersion"],"sourceRoot":"../../src","sources":["utils.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/typescript/api.d.ts
CHANGED
|
@@ -27,6 +27,13 @@ export declare function registerPush(config: ApiConfig, input: {
|
|
|
27
27
|
}): Promise<{
|
|
28
28
|
ok: boolean;
|
|
29
29
|
}>;
|
|
30
|
+
/** Records the language the user reads and writes support messages in. */
|
|
31
|
+
export declare function setLanguage(config: ApiConfig, input: {
|
|
32
|
+
revenuecatId: string;
|
|
33
|
+
language: string;
|
|
34
|
+
}): Promise<{
|
|
35
|
+
language: string;
|
|
36
|
+
}>;
|
|
30
37
|
export declare function submitQuery(config: ApiConfig, input: {
|
|
31
38
|
queryType: QueryType;
|
|
32
39
|
message: string;
|
|
@@ -34,6 +41,7 @@ export declare function submitQuery(config: ApiConfig, input: {
|
|
|
34
41
|
isPaid: boolean;
|
|
35
42
|
revenuecatId: string;
|
|
36
43
|
appVersion: string;
|
|
44
|
+
language: string;
|
|
37
45
|
}): Promise<{
|
|
38
46
|
query_id: string;
|
|
39
47
|
}>;
|
|
@@ -41,6 +49,7 @@ export declare function postMessage(config: ApiConfig, input: {
|
|
|
41
49
|
queryId: string;
|
|
42
50
|
revenuecatId: string;
|
|
43
51
|
message: string;
|
|
52
|
+
language: string;
|
|
44
53
|
}): Promise<{
|
|
45
54
|
message_id: string;
|
|
46
55
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,SAAS,EACT,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;gBAEL,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,UAAQ;CAMpE;AA2CD,wBAAgB,UAAU,CACxB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC,CAK1B;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAKnC;AAED,0EAA0E;AAC1E,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IACL,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB,GACA,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAA;CAAE,CAAC,CAW1B;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IACL,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,SAAS,EACT,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;gBAEL,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,UAAQ;CAMpE;AA2CD,wBAAgB,UAAU,CACxB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC,CAK1B;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAKnC;AAED,0EAA0E;AAC1E,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IACL,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB,GACA,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAA;CAAE,CAAC,CAW1B;AAED,0EAA0E;AAC1E,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAChD,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAQ/B;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IACL,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAe/B;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAUjC;AAED,wBAAgB,QAAQ,CACtB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC/C,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAA;CAAE,CAAC,CAQ1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SupportButton.d.ts","sourceRoot":"","sources":["../../../src/components/SupportButton.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SupportButton.d.ts","sourceRoot":"","sources":["../../../src/components/SupportButton.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAa,kBAAkB,EAAU,MAAM,UAAU,CAAC;AAgBtE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,sCAmTtD"}
|
|
@@ -24,6 +24,11 @@ export declare function CheckIcon({ color, size }: {
|
|
|
24
24
|
color: string;
|
|
25
25
|
size?: number;
|
|
26
26
|
}): import("react").JSX.Element;
|
|
27
|
+
/** Globe: circle, equator, and a pill standing in for the meridian curve. */
|
|
28
|
+
export declare function GlobeIcon({ color, size }: {
|
|
29
|
+
color: string;
|
|
30
|
+
size?: number;
|
|
31
|
+
}): import("react").JSX.Element;
|
|
27
32
|
/** Send arrow: a stem plus a chevron head, both centered on the same axis. */
|
|
28
33
|
export declare function ArrowUpIcon({ color, size }: {
|
|
29
34
|
color: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../src/components/icons.tsx"],"names":[],"mappings":"AAOA,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BA0B9E;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAyBpF;AAED,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAyBrF;AAED,+EAA+E;AAC/E,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,IAAS,EACT,SAAmB,GACpB,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;CACvC,+BAeA;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAc/E;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAc/E;AAED,8EAA8E;AAC9E,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAsCjF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,QAAQ,EACR,IAAS,GACV,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,+BA4CA"}
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../src/components/icons.tsx"],"names":[],"mappings":"AAOA,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BA0B9E;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAyBpF;AAED,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAyBrF;AAED,+EAA+E;AAC/E,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,IAAS,EACT,SAAmB,GACpB,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;CACvC,+BAeA;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAc/E;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAc/E;AAED,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAiC/E;AAED,8EAA8E;AAC9E,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+BAsCjF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,QAAQ,EACR,IAAS,GACV,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,+BA4CA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
2
|
import { type StyleProp, type TextStyle, type ViewStyle } from 'react-native';
|
|
3
|
+
import type { Translator } from '../i18n';
|
|
3
4
|
import type { SupportTheme } from '../theme';
|
|
4
5
|
import type { QueryStatus, QueryType } from '../types';
|
|
5
6
|
export declare function typeIcon(type: QueryType, color: string, size?: number): ReactNode;
|
|
@@ -12,9 +13,10 @@ export declare function TypeGlyph({ type, theme, size, }: {
|
|
|
12
13
|
size?: number;
|
|
13
14
|
}): import("react").JSX.Element;
|
|
14
15
|
/** Status dot + label — same visual language as the dashboard. */
|
|
15
|
-
export declare function StatusIndicator({ status, theme, }: {
|
|
16
|
+
export declare function StatusIndicator({ status, theme, strings, }: {
|
|
16
17
|
status: QueryStatus;
|
|
17
18
|
theme: SupportTheme;
|
|
19
|
+
strings: Translator;
|
|
18
20
|
}): import("react").JSX.Element;
|
|
19
21
|
/** Pressable row with the standard press wash. */
|
|
20
22
|
export declare function PressableRow({ onPress, children, theme, style, accessibilityLabel, }: {
|
|
@@ -64,10 +66,11 @@ export declare function EmptyState({ message, hint, theme, icon, }: {
|
|
|
64
66
|
icon?: ReactNode;
|
|
65
67
|
}): import("react").JSX.Element;
|
|
66
68
|
/** Inline failure state with retry — errors are designed, not toasted. */
|
|
67
|
-
export declare function ErrorState({ message, onRetry, theme, }: {
|
|
69
|
+
export declare function ErrorState({ message, onRetry, theme, strings, }: {
|
|
68
70
|
message: string;
|
|
69
71
|
onRetry: () => void;
|
|
70
72
|
theme: SupportTheme;
|
|
73
|
+
strings: Translator;
|
|
71
74
|
}): import("react").JSX.Element;
|
|
72
75
|
/** Pulsing block matching final layout dimensions. */
|
|
73
76
|
export declare function SkeletonBlock({ width, height, theme, radius, style, }: {
|
|
@@ -84,8 +87,9 @@ export declare const textStyles: {
|
|
|
84
87
|
secondary: (theme: SupportTheme) => TextStyle;
|
|
85
88
|
meta: (theme: SupportTheme) => TextStyle;
|
|
86
89
|
};
|
|
87
|
-
export declare function TypeChipView({ type, theme, }: {
|
|
90
|
+
export declare function TypeChipView({ type, theme, strings, }: {
|
|
88
91
|
type: QueryType;
|
|
89
92
|
theme: SupportTheme;
|
|
93
|
+
strings: Translator;
|
|
90
94
|
}): import("react").JSX.Element;
|
|
91
95
|
//# sourceMappingURL=primitives.d.ts.map
|