@yourgoods/ui-smart 0.1.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/dist/ProfileEmailDialog-_CmzDM2p.js +777 -0
- package/dist/ProfilePasswordDialog-DTLqgHqm.js +268 -0
- package/dist/ProfilePhoneDialog-D4EwUMe2.js +737 -0
- package/dist/components/PEditUserContact/PEditUserContact.vue.d.ts +44 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogManager.vue.d.ts +24 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/AddNewEmailContent.vue.d.ts +60 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/AddNewPasswordContent.vue.d.ts +25 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/AddNewPhoneContent.vue.d.ts +63 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/NewEmailContent.vue.d.ts +64 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/NewPhoneContent.vue.d.ts +64 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/OldEmailContent.vue.d.ts +55 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/OldPhoneContent.vue.d.ts +55 -0
- package/dist/components/PEditUserContact/ProfileDialogs/DialogSegments/ThrottlerTimer.vue.d.ts +45 -0
- package/dist/components/PEditUserContact/ProfileDialogs/ProfileEmailDialog.vue.d.ts +55 -0
- package/dist/components/PEditUserContact/ProfileDialogs/ProfilePasswordDialog.vue.d.ts +36 -0
- package/dist/components/PEditUserContact/ProfileDialogs/ProfilePhoneDialog.vue.d.ts +89 -0
- package/dist/components/PEditUserContact/ProfileOverlayLoading.vue.d.ts +2 -0
- package/dist/components/PEditUserContact/index.vue.d.ts +36 -0
- package/dist/components/PEditUserContact/types.d.ts +29 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/composables/profile/useDialogManager.d.ts +21 -0
- package/dist/composables/profile/useModeFlow.d.ts +7 -0
- package/dist/composables/profile/usePasswordRateLimitToast.d.ts +9 -0
- package/dist/composables/profile/useRateLimitToast.d.ts +9 -0
- package/dist/composables/profile/useThrottler.d.ts +13 -0
- package/dist/index-DtHlzO1x.js +570 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +5 -0
- package/dist/locales/index.d.ts +130 -0
- package/dist/modules/api/profile/check-availability.d.ts +1 -0
- package/dist/modules/api/profile/me.d.ts +19 -0
- package/dist/modules/index.d.ts +8 -0
- package/dist/types/vue-shims.d.ts +5 -0
- package/dist/useRateLimitToast-DsEVCh0F.js +140 -0
- package/dist/vue-shims.d.ts +5 -0
- package/package.json +49 -0
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
export declare const translations: {
|
|
2
|
+
readonly ru: {
|
|
3
|
+
readonly Имя: "Имя";
|
|
4
|
+
readonly Фамилия: "Фамилия";
|
|
5
|
+
readonly Email: "Email";
|
|
6
|
+
readonly Телефон: "Телефон";
|
|
7
|
+
readonly Аватар: "Аватар";
|
|
8
|
+
readonly Сохранить: "Сохранить";
|
|
9
|
+
readonly Отмена: "Отмена";
|
|
10
|
+
readonly Изменить: "Изменить";
|
|
11
|
+
readonly '\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u0434': "Отправить код";
|
|
12
|
+
readonly Подтвердить: "Подтвердить";
|
|
13
|
+
readonly '\u041D\u0435\u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u044B\u0439 email': "Некорректный email";
|
|
14
|
+
readonly '\u041D\u0435\u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u044B\u0439 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Некорректный номер телефона";
|
|
15
|
+
readonly '\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E\u0435 \u043F\u043E\u043B\u0435': "Обязательное поле";
|
|
16
|
+
readonly '\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u043E\u0431\u043B\u043E\u0436\u043A\u0443': "Загрузить обложку";
|
|
17
|
+
readonly Формат: "Формат";
|
|
18
|
+
readonly до: "до";
|
|
19
|
+
readonly '\u041D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Номер телефона";
|
|
20
|
+
readonly '\u0421\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u043E\u043B\u044C': "Сменить пароль";
|
|
21
|
+
readonly 'E-mail \u0438\u0437\u043C\u0435\u043D\u0435\u043D': "E-mail изменен";
|
|
22
|
+
readonly '\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u043F\u043E\u0437\u0436\u0435': "Не удалось сохранить изменения. Попробуйте позже";
|
|
23
|
+
readonly '\u0421\u043C\u0435\u043D\u0430 \u043F\u043E\u0447\u0442\u044B': "Смена почты";
|
|
24
|
+
readonly '\u0427\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u043E\u0434 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F': "Чтобы продолжить, введите код подтверждения";
|
|
25
|
+
readonly '\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u044C \u0447\u0435\u0440\u0435\u0437': "Повторить через";
|
|
26
|
+
readonly '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u0430\u0434\u0440\u0435\u0441 \u0432\u0430\u0448\u0435\u0439 \u043F\u043E\u0447\u0442\u044B': "Введите новый адрес вашей почты";
|
|
27
|
+
readonly _Повторить_: "Повторить";
|
|
28
|
+
readonly '\u0412\u044B \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0447\u0430\u0441\u0442\u043E \u0437\u0430\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u043B\u0438 \u043A\u043E\u0434.': "Вы слишком часто запрашивали код.";
|
|
29
|
+
readonly '\u041D\u043E\u0432\u044B\u0439 \u043A\u043E\u0434 \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0447\u0435\u0440\u0435\u0437': "Новый код можно получить через";
|
|
30
|
+
readonly '\u0415\u0441\u043B\u0438 \u0435\u0441\u0442\u044C \u0432\u043E\u043F\u0440\u043E\u0441\u044B': "Если есть вопросы";
|
|
31
|
+
readonly '\u043F\u0438\u0448\u0438\u0442\u0435 \u0432': "пишите в";
|
|
32
|
+
readonly '\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043E\u0434': "Неверный код";
|
|
33
|
+
readonly '\u0422\u0430\u043A\u043E\u0439 email \u0443\u0436\u0435 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F': "Такой email уже используется";
|
|
34
|
+
readonly '\u042D\u0442\u043E \u043D\u0435 \u043F\u043E\u0445\u043E\u0436\u0435 \u043D\u0430 e-mail': "Это не похоже на e-mail";
|
|
35
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u043E\u0441\u044C 2 \u043F\u043E\u043F\u044B\u0442\u043A\u0438. \u041F\u043E\u0441\u043B\u0435 \u0438\u0441\u0447\u0435\u0440\u043F\u0430\u043D\u0438\u044F \u043B\u0438\u043C\u0438\u0442\u0430 \u0432\u0432\u043E\u0434 \u043A\u043E\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 5 \u043C\u0438\u043D\u0443\u0442': "Осталось 2 попытки. После исчерпания лимита ввод кода будет заблокирован на 5 минут";
|
|
36
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u0430\u0441\u044C 1 \u043F\u043E\u043F\u044B\u0442\u043A\u0430. \u041F\u043E\u0441\u043B\u0435 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439 \u043E\u0448\u0438\u0431\u043A\u0438 \u0432\u0432\u043E\u0434 \u043A\u043E\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 5 \u043C\u0438\u043D\u0443\u0442': "Осталась 1 попытка. После следующей ошибки ввод кода будет заблокирован на 5 минут";
|
|
37
|
+
readonly '\u0421\u043C\u0435\u043D\u0430 \u043D\u043E\u043C\u0435\u0440\u0430 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Смена номера телефона";
|
|
38
|
+
readonly '\u0427\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u043E\u0434 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0438\u0437': "Чтобы продолжить, введите код подтверждения из";
|
|
39
|
+
readonly '\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u043A\u043E\u0434 \u0438\u0437 \u0421\u041C\u0421': "Получить код из СМС";
|
|
40
|
+
readonly '\u0427\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043D\u043E\u043C\u0435\u0440': "Чтобы продолжить, введите новый номер";
|
|
41
|
+
readonly '\u0422\u0430\u043A\u043E\u0439 \u043D\u043E\u043C\u0435\u0440 \u0443\u0436\u0435 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F': "Такой номер уже используется";
|
|
42
|
+
readonly '\u042D\u0442\u043E \u043D\u0435 \u043F\u043E\u0445\u043E\u0436\u0435 \u043D\u0430 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Это не похоже на номер телефона";
|
|
43
|
+
readonly '\u0421\u043C\u0435\u043D\u0430 \u043F\u0430\u0440\u043E\u043B\u044F': "Смена пароля";
|
|
44
|
+
readonly '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0432\u0430\u0448 \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Введите ваш текущий пароль";
|
|
45
|
+
readonly '\u0422\u0435\u043A\u0443\u0449\u0438\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Текущий пароль";
|
|
46
|
+
readonly Продолжить: "Продолжить";
|
|
47
|
+
readonly '\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C \u0434\u043B\u044F\u00A0\u0437\u0430\u0449\u0438\u0442\u044B\u00A0\u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0430. \u041F\u0430\u0440\u043E\u043B\u044C \u0434\u043E\u043B\u0436\u0435\u043D \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C \u043D\u0435 \u043C\u0435\u043D\u0435\u0435 8 \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432.': "Установите новый пароль для защиты аккаунта. Пароль должен содержать не менее 8 символов.";
|
|
48
|
+
readonly '\u041D\u043E\u0432\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Новый пароль";
|
|
49
|
+
readonly '\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Повторите новый пароль";
|
|
50
|
+
readonly '\u041F\u0430\u0440\u043E\u043B\u044C \u0438\u0437\u043C\u0435\u043D\u0451\u043D': "Пароль изменён";
|
|
51
|
+
readonly '\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Неверный текущий пароль";
|
|
52
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u043E\u0441\u044C 2 \u043F\u043E\u043F\u044B\u0442\u043A\u0438. \u0412\u0432\u043E\u0434 \u043F\u0430\u0440\u043E\u043B\u044F \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 5 \u043C\u0438\u043D\u0443\u0442.': "Осталось 2 попытки. Ввод пароля будет заблокирован на 5 минут.";
|
|
53
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u0430\u0441\u044C 1 \u043F\u043E\u043F\u044B\u0442\u043A\u0430. \u041F\u043E\u0441\u043B\u0435 \u0438\u0441\u0447\u0435\u0440\u043F\u0430\u043D\u0438\u044F \u043B\u0438\u043C\u0438\u0442\u0430 \u0432\u0432\u043E\u0434 \u043F\u0430\u0440\u043E\u043B\u044F \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 1 \u0447\u0430\u0441.': "Осталась 1 попытка. После исчерпания лимита ввод пароля будет заблокирован на 1 час.";
|
|
54
|
+
readonly '\u0414\u043E\u0441\u0442\u0438\u0433\u043D\u0443\u0442 \u043B\u0438\u043C\u0438\u0442 \u043F\u043E\u043F\u044B\u0442\u043E\u043A \u0432\u0432\u043E\u0434\u0430 \u043F\u0430\u0440\u043E\u043B\u044F. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0441\u043D\u043E\u0432\u0430 \u0447\u0435\u0440\u0435\u0437 1 \u0447\u0430\u0441.': "Достигнут лимит попыток ввода пароля. Попробуйте снова через 1 час.";
|
|
55
|
+
readonly '\u041F\u0430\u0440\u043E\u043B\u0438 \u043D\u0435 \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u044E\u0442': "Пароли не совпадают";
|
|
56
|
+
readonly '\u041F\u0430\u0440\u043E\u043B\u044C \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u043A\u043E\u0440\u043E\u0442\u043A\u0438\u0439. \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0445\u043E\u0442\u044F \u0431\u044B 8 \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432.': "Пароль слишком короткий. Введите хотя бы 8 символов.";
|
|
57
|
+
readonly '\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043D\u043E\u043C\u0435\u0440\u0430 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Добавление номера телефона";
|
|
58
|
+
readonly '\u041D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u043F\u0440\u0438\u0432\u044F\u0437\u0430\u043D \u043A\u00A0\u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443': "Номер телефона успешно привязан к аккаунту";
|
|
59
|
+
readonly '\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043F\u043E\u0447\u0442\u044B': "Добавление почты";
|
|
60
|
+
readonly '\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043F\u0430\u0440\u043E\u043B\u044F': "Добавление пароля";
|
|
61
|
+
readonly '\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u0435 \u043F\u0430\u0440\u043E\u043B\u044C': "Повторите пароль";
|
|
62
|
+
readonly 'E-mail \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u043F\u0440\u0438\u0432\u044F\u0437\u0430\u043D \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443': "E-mail успешно привязан к аккаунту";
|
|
63
|
+
readonly '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Введите новый номер телефона";
|
|
64
|
+
readonly '\u0422\u0435\u043B\u0435\u0444\u043E\u043D \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0438\u0437\u043C\u0435\u043D\u0435\u043D': "Телефон успешно изменен";
|
|
65
|
+
};
|
|
66
|
+
readonly en: {
|
|
67
|
+
readonly Имя: "First Name";
|
|
68
|
+
readonly Фамилия: "Last Name";
|
|
69
|
+
readonly Email: "Email";
|
|
70
|
+
readonly Телефон: "Phone Number";
|
|
71
|
+
readonly Аватар: "Avatar";
|
|
72
|
+
readonly Сохранить: "Save";
|
|
73
|
+
readonly Отмена: "Cancel";
|
|
74
|
+
readonly Изменить: "Change";
|
|
75
|
+
readonly '\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u0434': "Send verification code";
|
|
76
|
+
readonly Подтвердить: "Verify";
|
|
77
|
+
readonly '\u041D\u0435\u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u044B\u0439 email': "Invalid email format";
|
|
78
|
+
readonly '\u041D\u0435\u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u044B\u0439 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Invalid phone number";
|
|
79
|
+
readonly '\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E\u0435 \u043F\u043E\u043B\u0435': "Required field";
|
|
80
|
+
readonly '\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u043E\u0431\u043B\u043E\u0436\u043A\u0443': "Upload cover";
|
|
81
|
+
readonly Формат: "Format";
|
|
82
|
+
readonly до: "up to";
|
|
83
|
+
readonly '\u041D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Phone number";
|
|
84
|
+
readonly '\u0421\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u043E\u043B\u044C': "Change password";
|
|
85
|
+
readonly 'E-mail \u0438\u0437\u043C\u0435\u043D\u0435\u043D': "Email has been updated";
|
|
86
|
+
readonly '\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u043F\u043E\u0437\u0436\u0435': "Failed to save changes. Please try again later.";
|
|
87
|
+
readonly '\u0421\u043C\u0435\u043D\u0430 \u043F\u043E\u0447\u0442\u044B': "Change of email";
|
|
88
|
+
readonly '\u0427\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u043E\u0434 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F': "To continue, please enter the verification code";
|
|
89
|
+
readonly '\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u044C \u0447\u0435\u0440\u0435\u0437': "Repeat after";
|
|
90
|
+
readonly '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u0430\u0434\u0440\u0435\u0441 \u0432\u0430\u0448\u0435\u0439 \u043F\u043E\u0447\u0442\u044B': "Enter your new email address";
|
|
91
|
+
readonly _Повторить_: "Repeat";
|
|
92
|
+
readonly '\u0412\u044B \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0447\u0430\u0441\u0442\u043E \u0437\u0430\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u043B\u0438 \u043A\u043E\u0434.': "You have requested the code too many times.";
|
|
93
|
+
readonly '\u041D\u043E\u0432\u044B\u0439 \u043A\u043E\u0434 \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0447\u0435\u0440\u0435\u0437': "A new code can be obtained through";
|
|
94
|
+
readonly '\u0415\u0441\u043B\u0438 \u0435\u0441\u0442\u044C \u0432\u043E\u043F\u0440\u043E\u0441\u044B': "If you have any questions";
|
|
95
|
+
readonly '\u043F\u0438\u0448\u0438\u0442\u0435 \u0432': "write to";
|
|
96
|
+
readonly '\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043E\u0434': "Invalid code";
|
|
97
|
+
readonly '\u0422\u0430\u043A\u043E\u0439 email \u0443\u0436\u0435 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F': "This email is already in use";
|
|
98
|
+
readonly '\u042D\u0442\u043E \u043D\u0435 \u043F\u043E\u0445\u043E\u0436\u0435 \u043D\u0430 e-mail': "This doesn't look like email.";
|
|
99
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u043E\u0441\u044C 2 \u043F\u043E\u043F\u044B\u0442\u043A\u0438. \u041F\u043E\u0441\u043B\u0435 \u0438\u0441\u0447\u0435\u0440\u043F\u0430\u043D\u0438\u044F \u043B\u0438\u043C\u0438\u0442\u0430 \u0432\u0432\u043E\u0434 \u043A\u043E\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 5 \u043C\u0438\u043D\u0443\u0442': "You have 2 attempts remaining. Once the limit is reached, code entry will be blocked for 5 minutes";
|
|
100
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u0430\u0441\u044C 1 \u043F\u043E\u043F\u044B\u0442\u043A\u0430. \u041F\u043E\u0441\u043B\u0435 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439 \u043E\u0448\u0438\u0431\u043A\u0438 \u0432\u0432\u043E\u0434 \u043A\u043E\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 5 \u043C\u0438\u043D\u0443\u0442': "You have 1 attempt left. After another error, entering the code will be blocked for 5 minutes";
|
|
101
|
+
readonly '\u0421\u043C\u0435\u043D\u0430 \u043D\u043E\u043C\u0435\u0440\u0430 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Change of phone number";
|
|
102
|
+
readonly '\u0427\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u043E\u0434 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0438\u0437': "To continue, please enter the verification code from";
|
|
103
|
+
readonly '\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u043A\u043E\u0434 \u0438\u0437 \u0421\u041C\u0421': "Receive code from SMS";
|
|
104
|
+
readonly '\u0427\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043D\u043E\u043C\u0435\u0440': "To continue, please enter a new number";
|
|
105
|
+
readonly '\u0422\u0430\u043A\u043E\u0439 \u043D\u043E\u043C\u0435\u0440 \u0443\u0436\u0435 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F': "This number is already in use";
|
|
106
|
+
readonly '\u042D\u0442\u043E \u043D\u0435 \u043F\u043E\u0445\u043E\u0436\u0435 \u043D\u0430 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "This doesn't look like a phone number";
|
|
107
|
+
readonly '\u0421\u043C\u0435\u043D\u0430 \u043F\u0430\u0440\u043E\u043B\u044F': "Change password";
|
|
108
|
+
readonly '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0432\u0430\u0448 \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Enter your current password";
|
|
109
|
+
readonly '\u0422\u0435\u043A\u0443\u0449\u0438\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Current Password";
|
|
110
|
+
readonly Продолжить: "Continue";
|
|
111
|
+
readonly '\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C \u0434\u043B\u044F\u00A0\u0437\u0430\u0449\u0438\u0442\u044B\u00A0\u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0430. \u041F\u0430\u0440\u043E\u043B\u044C \u0434\u043E\u043B\u0436\u0435\u043D \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C \u043D\u0435 \u043C\u0435\u043D\u0435\u0435 8 \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432.': "Set a new password to protect your account. The password must be at least 8 characters long.";
|
|
112
|
+
readonly '\u041D\u043E\u0432\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "New Password";
|
|
113
|
+
readonly '\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Repeat the new password";
|
|
114
|
+
readonly '\u041F\u0430\u0440\u043E\u043B\u044C \u0438\u0437\u043C\u0435\u043D\u0451\u043D': "Password changed";
|
|
115
|
+
readonly '\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u043F\u0430\u0440\u043E\u043B\u044C': "Incorrect current password";
|
|
116
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u043E\u0441\u044C 2 \u043F\u043E\u043F\u044B\u0442\u043A\u0438. \u0412\u0432\u043E\u0434 \u043F\u0430\u0440\u043E\u043B\u044F \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 5 \u043C\u0438\u043D\u0443\u0442.': "You have 2 attempts left. Password entry will be blocked for 5 minutes.";
|
|
117
|
+
readonly '\u041E\u0441\u0442\u0430\u043B\u0430\u0441\u044C 1 \u043F\u043E\u043F\u044B\u0442\u043A\u0430. \u041F\u043E\u0441\u043B\u0435 \u0438\u0441\u0447\u0435\u0440\u043F\u0430\u043D\u0438\u044F \u043B\u0438\u043C\u0438\u0442\u0430 \u0432\u0432\u043E\u0434 \u043F\u0430\u0440\u043E\u043B\u044F \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 1 \u0447\u0430\u0441.': "You have 1 attempt remaining. Once the limit is reached, password entry will be blocked for 1 hour.";
|
|
118
|
+
readonly '\u0414\u043E\u0441\u0442\u0438\u0433\u043D\u0443\u0442 \u043B\u0438\u043C\u0438\u0442 \u043F\u043E\u043F\u044B\u0442\u043E\u043A \u0432\u0432\u043E\u0434\u0430 \u043F\u0430\u0440\u043E\u043B\u044F. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0441\u043D\u043E\u0432\u0430 \u0447\u0435\u0440\u0435\u0437 1 \u0447\u0430\u0441.': "The password entry attempt limit has been reached. Please try again in 1 hour.";
|
|
119
|
+
readonly '\u041F\u0430\u0440\u043E\u043B\u0438 \u043D\u0435 \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u044E\u0442': "The passwords don't match";
|
|
120
|
+
readonly '\u041F\u0430\u0440\u043E\u043B\u044C \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u043A\u043E\u0440\u043E\u0442\u043A\u0438\u0439. \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0445\u043E\u0442\u044F \u0431\u044B 8 \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432.': "The password is too short. Please enter at least 8 characters.";
|
|
121
|
+
readonly '\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043D\u043E\u043C\u0435\u0440\u0430 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Adding a phone number";
|
|
122
|
+
readonly '\u041D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u043F\u0440\u0438\u0432\u044F\u0437\u0430\u043D \u043A\u00A0\u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443': "The phone number has been successfully linked to the account.";
|
|
123
|
+
readonly '\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043F\u043E\u0447\u0442\u044B': "Adding mail";
|
|
124
|
+
readonly '\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043F\u0430\u0440\u043E\u043B\u044F': "Adding a password";
|
|
125
|
+
readonly '\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u0435 \u043F\u0430\u0440\u043E\u043B\u044C': "Repeat password";
|
|
126
|
+
readonly 'E-mail \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u043F\u0440\u0438\u0432\u044F\u0437\u0430\u043D \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443': "The email has been successfully linked to the account";
|
|
127
|
+
readonly '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u043E\u0432\u044B\u0439 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430': "Enter a new phone number";
|
|
128
|
+
readonly '\u0422\u0435\u043B\u0435\u0444\u043E\u043D \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0438\u0437\u043C\u0435\u043D\u0435\u043D': "Phone number successfully changed";
|
|
129
|
+
};
|
|
130
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const checkAvailability: (email?: string, phone?: string) => Promise<any>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
interface VerifyTokensResponse {
|
|
2
|
+
firstName: string;
|
|
3
|
+
lastName: string;
|
|
4
|
+
email: string;
|
|
5
|
+
phone?: string;
|
|
6
|
+
avatar?: string;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
interface TokensPayload {
|
|
10
|
+
accessToken: string;
|
|
11
|
+
refreshToken?: string;
|
|
12
|
+
excludeFields?: string[];
|
|
13
|
+
forceRefresh?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Получаем актуальные данные пользователя по токену
|
|
17
|
+
*/
|
|
18
|
+
export declare function fetchUserProfile(tokens: TokensPayload): Promise<VerifyTokensResponse>;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AxiosInstance, AxiosRequestConfig } from 'axios';
|
|
2
|
+
export declare function initAxios(token: string, baseUrl: string): void;
|
|
3
|
+
/** axios-инстанс */
|
|
4
|
+
export declare function getAxios(): AxiosInstance;
|
|
5
|
+
/** wrapper для POST */
|
|
6
|
+
export declare function post<T = any>(url: string, data?: any, config?: AxiosRequestConfig): Promise<import('axios').AxiosResponse<T, any, {}>>;
|
|
7
|
+
/** wrapper для GET */
|
|
8
|
+
export declare function get<T = any>(url: string, config?: AxiosRequestConfig): Promise<import('axios').AxiosResponse<T, any, {}>>;
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { ref as l, defineComponent as L, createElementBlock as f, openBlock as v, normalizeClass as r, createVNode as E, unref as F, computed as g, renderSlot as m, createCommentVNode as w, createElementVNode as o, toDisplayString as y, createTextVNode as p } from "vue";
|
|
2
|
+
import { PLoader as R } from "@profeat/ui-kit";
|
|
3
|
+
import { g as $, p as h } from "./index-DtHlzO1x.js";
|
|
4
|
+
function C(e) {
|
|
5
|
+
const t = Math.floor(e / 60), a = e % 60;
|
|
6
|
+
return `${String(t).padStart(2, "0")}:${String(a).padStart(2, "0")}`;
|
|
7
|
+
}
|
|
8
|
+
function x() {
|
|
9
|
+
let e = null;
|
|
10
|
+
const t = l(0), a = l(!1), s = l("00:00"), u = l(0), n = l(0), i = l(!1);
|
|
11
|
+
return {
|
|
12
|
+
startTimer: (c, d) => {
|
|
13
|
+
e && clearInterval(e), i.value = !1, t.value = c, a.value = c > 0, s.value = C(c);
|
|
14
|
+
const k = Date.now() + c * 1e3;
|
|
15
|
+
e = setInterval(() => {
|
|
16
|
+
t.value > 1 ? (t.value = Math.max(0, Math.round((k - Date.now()) / 1e3)), s.value = C(t.value)) : (clearInterval(e), t.value = 0, a.value = !1, i.value = !0, d && typeof d == "function" && d());
|
|
17
|
+
}, 1e3);
|
|
18
|
+
},
|
|
19
|
+
isShowRateTimers: a,
|
|
20
|
+
remainingSeconds: s,
|
|
21
|
+
totalRateAttempts: u,
|
|
22
|
+
currentRateAttempt: n,
|
|
23
|
+
isAvailableForSendAgain: i
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
const S = /* @__PURE__ */ L({
|
|
27
|
+
__name: "ProfileOverlayLoading",
|
|
28
|
+
setup(e) {
|
|
29
|
+
return (t, a) => (v(), f("div", {
|
|
30
|
+
class: r(t.$style.loaderOverlay)
|
|
31
|
+
}, [
|
|
32
|
+
E(F(R), {
|
|
33
|
+
class: "relative m-auto",
|
|
34
|
+
size: "normal"
|
|
35
|
+
})
|
|
36
|
+
], 2));
|
|
37
|
+
}
|
|
38
|
+
}), B = "_loaderOverlay_cpu73_1", _ = {
|
|
39
|
+
loaderOverlay: B
|
|
40
|
+
}, T = (e, t) => {
|
|
41
|
+
const a = e.__vccOpts || e;
|
|
42
|
+
for (const [s, u] of t)
|
|
43
|
+
a[s] = u;
|
|
44
|
+
return a;
|
|
45
|
+
}, A = {
|
|
46
|
+
$style: _
|
|
47
|
+
}, z = /* @__PURE__ */ T(S, [["__cssModules", A], ["__scopeId", "data-v-9e697525"]]);
|
|
48
|
+
function j(e) {
|
|
49
|
+
const t = l("edit"), a = g(() => e.value === "edit" && t.value === "edit");
|
|
50
|
+
return {
|
|
51
|
+
modeFlowFromBack: t,
|
|
52
|
+
isEditFlow: a,
|
|
53
|
+
getFlow: async (u) => {
|
|
54
|
+
const i = (await $("/users/profile/session/flow", { params: { field: u } })).data.data;
|
|
55
|
+
return t.value = i.mode, i.mode;
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
const b = L({
|
|
60
|
+
name: "RateLimitTimer",
|
|
61
|
+
props: {
|
|
62
|
+
loading: { type: Boolean, default: !1 },
|
|
63
|
+
rateLimitText: { type: String, required: !0 },
|
|
64
|
+
isFinalLimit: { type: Boolean, required: !0 },
|
|
65
|
+
onSendAgain: { type: Function, required: !0 }
|
|
66
|
+
},
|
|
67
|
+
setup(e) {
|
|
68
|
+
return { isRepeat: g(() => e.rateLimitText === "Повторить"), defaultClass: "dialogDefaultContainerRateLimitText", activeClass: "dialogDefaultContainerRateLimitTextActive", finalWrapperClass: "finalLimitWrapper", finalTextClass: "finalLimitText", finalLinkClass: "finalLimitLink" };
|
|
69
|
+
}
|
|
70
|
+
}), M = {
|
|
71
|
+
key: 0,
|
|
72
|
+
class: "spacer",
|
|
73
|
+
style: { height: "20px", width: "100%" }
|
|
74
|
+
}, D = { key: 1 }, O = { style: { display: "flex", "align-items": "center", "justify-content": "space-between" } }, I = { style: { display: "inline" } };
|
|
75
|
+
function N(e, t, a, s, u, n) {
|
|
76
|
+
return e.loading ? (v(), f("div", M)) : (v(), f("div", D, [
|
|
77
|
+
e.isFinalLimit ? e.isFinalLimit && e.rateLimitText !== "Повторить" ? m(e.$slots, "final", { key: 1 }, () => [
|
|
78
|
+
o("div", {
|
|
79
|
+
class: r(e.finalWrapperClass)
|
|
80
|
+
}, [
|
|
81
|
+
o("div", {
|
|
82
|
+
class: r(e.finalTextClass)
|
|
83
|
+
}, [
|
|
84
|
+
t[1] || (t[1] = p(" Вы слишком часто запрашивали код. ")),
|
|
85
|
+
t[2] || (t[2] = o("br", null, null, -1)),
|
|
86
|
+
p(" Новый код можно получить через " + y(e.rateLimitText) + ". ", 1)
|
|
87
|
+
], 2),
|
|
88
|
+
o("span", I, [
|
|
89
|
+
t[3] || (t[3] = p(" Если есть вопросы — ")),
|
|
90
|
+
o("a", {
|
|
91
|
+
class: r(e.finalLinkClass),
|
|
92
|
+
href: "https://t.me/yourSupportLink",
|
|
93
|
+
target: "_blank"
|
|
94
|
+
}, "пишите в Telegram.", 2)
|
|
95
|
+
])
|
|
96
|
+
], 2)
|
|
97
|
+
]) : w("", !0) : m(e.$slots, "active", { key: 0 }, () => [
|
|
98
|
+
o("div", O, [
|
|
99
|
+
o("span", {
|
|
100
|
+
class: r([e.defaultClass, { [e.activeClass]: e.isRepeat }]),
|
|
101
|
+
onClick: t[0] || (t[0] = (i) => e.isRepeat && e.onSendAgain())
|
|
102
|
+
}, y(e.isRepeat ? "Повторить" : `Повторить через ${e.rateLimitText}`), 3),
|
|
103
|
+
m(e.$slots, "extra")
|
|
104
|
+
])
|
|
105
|
+
])
|
|
106
|
+
]));
|
|
107
|
+
}
|
|
108
|
+
const G = /* @__PURE__ */ T(b, [["render", N]]), H = async (e, t) => {
|
|
109
|
+
try {
|
|
110
|
+
const a = await h("/users/profile/contact/check-availability", {
|
|
111
|
+
email: e,
|
|
112
|
+
phone: t
|
|
113
|
+
});
|
|
114
|
+
return console.log(a.data), a.data;
|
|
115
|
+
} catch (a) {
|
|
116
|
+
throw console.error("Ошибка проверки доступности", a), a;
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
function J(e) {
|
|
120
|
+
return { showRateLimitToast: (s) => {
|
|
121
|
+
if (!s) return;
|
|
122
|
+
const { attemptsLeft: u } = s, n = {
|
|
123
|
+
2: "Осталось 2 попытки. После исчерпания лимита ввод кода будет заблокирован на 5 минут",
|
|
124
|
+
1: "Осталась 1 попытка. После следующей ошибки ввод кода будет заблокирован на 5 минут"
|
|
125
|
+
};
|
|
126
|
+
n[u] && e("on-toast", {
|
|
127
|
+
color: "error",
|
|
128
|
+
text: n[u]
|
|
129
|
+
});
|
|
130
|
+
} };
|
|
131
|
+
}
|
|
132
|
+
export {
|
|
133
|
+
z as P,
|
|
134
|
+
G as _,
|
|
135
|
+
T as a,
|
|
136
|
+
x as b,
|
|
137
|
+
H as c,
|
|
138
|
+
J as d,
|
|
139
|
+
j as u
|
|
140
|
+
};
|
package/package.json
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@yourgoods/ui-smart",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"module": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"style": "./dist/style.css",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"import": "./dist/index.js",
|
|
12
|
+
"types": "./dist/index.d.ts"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist"
|
|
17
|
+
],
|
|
18
|
+
"scripts": {
|
|
19
|
+
"dev": "vite",
|
|
20
|
+
"build": "vite build",
|
|
21
|
+
"type-check": "vue-tsc --noEmit"
|
|
22
|
+
},
|
|
23
|
+
"peerDependencies": {
|
|
24
|
+
"@profeat/ui-kit": "^2.40.0",
|
|
25
|
+
"axios": "^1.13.2",
|
|
26
|
+
"vue": "3.5.17"
|
|
27
|
+
},
|
|
28
|
+
"devDependencies": {
|
|
29
|
+
"@profeat/ui-kit": "^2.40.0",
|
|
30
|
+
"@types/node": "^22.9.0",
|
|
31
|
+
"@vitejs/plugin-vue": "^4.6.2",
|
|
32
|
+
"@vue/tsconfig": "^0.5.1",
|
|
33
|
+
"axios": "^1.13.2",
|
|
34
|
+
"rollup-plugin-pure": "0.2.1",
|
|
35
|
+
"sass-embedded": "^1.93.3",
|
|
36
|
+
"typescript": "^5.5.4",
|
|
37
|
+
"unplugin-icons": "0.20.1",
|
|
38
|
+
"unplugin-vue-components": "0.27.4",
|
|
39
|
+
"vite": "^5.4.10",
|
|
40
|
+
"vite-plugin-css-injected-by-js": "^3.5.2",
|
|
41
|
+
"vite-plugin-dts": "^4.3.0",
|
|
42
|
+
"vue": "3.5.17",
|
|
43
|
+
"vue-tsc": "^2.1.10"
|
|
44
|
+
},
|
|
45
|
+
"engines": {
|
|
46
|
+
"node": ">20.16.0",
|
|
47
|
+
"npm": ">10.8.2"
|
|
48
|
+
}
|
|
49
|
+
}
|