@yourgoods/ui-smart 0.53.36 → 0.53.37

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.
@@ -1,13 +1,13 @@
1
- import { ref as y, shallowRef as je, defineComponent as X, defineAsyncComponent as Z, watch as we, createBlock as S, createCommentVNode as D, unref as c, openBlock as P, resolveDynamicComponent as qe, mergeProps as Je, computed as A, reactive as H, onMounted as We, createElementBlock as U, Fragment as be, createVNode as w, createElementVNode as Q, withCtx as z, toDisplayString as L, createTextVNode as ee, Teleport as pe, Transition as Ye, withDirectives as Xe, vShow as Ke } from "vue";
2
- import Ze from "axios";
3
- import { PInputFileUploader as He, PInput as R, IconFilledEditMd as W, PButton as fe, PImageCropper as Qe, PToast as ea, PTeleportContainer as Pe, PToastContainer as aa, IconPhoneMd as ta, IconMailMd as oa } from "@profeat/ui-kit";
4
- function na(l, s = 2) {
5
- if (l === 0)
1
+ import { ref as b, shallowRef as Je, defineComponent as H, defineAsyncComponent as Q, watch as Pe, createBlock as z, createCommentVNode as U, unref as p, openBlock as N, resolveDynamicComponent as We, mergeProps as Ye, computed as V, reactive as ee, onMounted as Xe, createElementBlock as F, Fragment as Ne, createVNode as P, createElementVNode as ae, withCtx as O, toDisplayString as G, createTextVNode as te, Teleport as ge, Transition as Ke, withDirectives as Ze, vShow as He } from "vue";
2
+ import Qe from "axios";
3
+ import { PInputFileUploader as ea, PInput as j, IconFilledEditMd as K, PButton as ve, PImageCropper as aa, PToast as ta, PTeleportContainer as Ce, PToastContainer as na, IconPhoneMd as oa, IconMailMd as ra } from "@profeat/ui-kit";
4
+ function la(r, s = 2) {
5
+ if (r === 0)
6
6
  return "0 B";
7
- const o = 1024, n = ["B", "KB", "MB", "GB", "TB", "PB", "EB"], i = Math.floor(Math.log(l) / Math.log(o));
8
- return `${Number.parseFloat((l / o ** i).toFixed(s))} ${n[i]}`;
7
+ const t = 1024, n = ["B", "KB", "MB", "GB", "TB", "PB", "EB"], f = Math.floor(Math.log(r) / Math.log(t));
8
+ return `${Number.parseFloat((r / t ** f).toFixed(s))} ${n[f]}`;
9
9
  }
10
- const ra = {
10
+ const sa = {
11
11
  "image/jpeg": "JPEG",
12
12
  "image/png": "PNG",
13
13
  "application/pdf": "PDF",
@@ -15,10 +15,10 @@ const ra = {
15
15
  "application/zip": "ZIP Archive"
16
16
  // ...
17
17
  };
18
- function la(l) {
19
- return l.map((s) => {
20
- var o;
21
- return ra[s] || ((o = s.split("/")[1]) == null ? void 0 : o.toUpperCase());
18
+ function ia(r) {
19
+ return r.map((s) => {
20
+ var t;
21
+ return sa[s] || ((t = s.split("/")[1]) == null ? void 0 : t.toUpperCase());
22
22
  });
23
23
  }
24
24
  const $a = {
@@ -28,54 +28,54 @@ const $a = {
28
28
  }, za = {
29
29
  VERIFY_EMAIL: "verify-email"
30
30
  };
31
- let te = null;
32
- function sa(l, s, o) {
33
- te = Ze.create({
31
+ let oe = null;
32
+ function ua(r, s, t) {
33
+ oe = Qe.create({
34
34
  baseURL: s,
35
35
  headers: {
36
- Authorization: `Bearer ${l}`,
37
- "x-throttler-prefix": o ?? "throttler_profile_edit"
36
+ Authorization: `Bearer ${r}`,
37
+ "x-throttler-prefix": t ?? "throttler_profile_edit"
38
38
  // здесь можно словить баг, который может быть сложно отследить, если будет передаваться пустой прелфикс
39
39
  // 'Content-Type': 'application/json',
40
40
  },
41
41
  validateStatus: (n) => n >= 200 && n < 300
42
42
  });
43
43
  }
44
- function ne() {
45
- if (!te)
44
+ function se() {
45
+ if (!oe)
46
46
  throw new Error("Axios instance not initialized. Call initAxios(token, baseUrl) first.");
47
- return te;
47
+ return oe;
48
48
  }
49
- async function oe(l, s, o) {
50
- return ne().post(l, s, o);
49
+ async function re(r, s, t) {
50
+ return se().post(r, s, t);
51
51
  }
52
- async function ia(l, s) {
53
- return ne().get(l, s);
52
+ async function da(r, s) {
53
+ return se().get(r, s);
54
54
  }
55
- async function ua(l, s) {
56
- return ne().delete(l, s);
55
+ async function ma(r, s) {
56
+ return se().delete(r, s);
57
57
  }
58
- async function da(l) {
59
- const s = await oe("/users/profile/me", l);
58
+ async function ca(r) {
59
+ const s = await re("/users/profile/me", r);
60
60
  if (s.status !== 200 && s.status !== 201 || !s.data)
61
61
  throw new Error("Ошибка при получении профиля пользователя");
62
62
  return s.data;
63
63
  }
64
- const Y = y(null), ae = je(null);
65
- function re() {
64
+ const Z = b(null), ne = Je(null);
65
+ function ie() {
66
66
  return {
67
- currentDialog: Y,
68
- dialogPayload: ae,
69
- openDialog: (n, i) => {
70
- Y.value = n, ae.value = i ?? null;
67
+ currentDialog: Z,
68
+ dialogPayload: ne,
69
+ openDialog: (n, f) => {
70
+ Z.value = n, ne.value = f ?? null;
71
71
  },
72
72
  closeDialog: () => {
73
- Y.value = null, ae.value = null;
73
+ Z.value = null, ne.value = null;
74
74
  },
75
- isDialogOpen: (n) => Y.value === n
75
+ isDialogOpen: (n) => Z.value === n
76
76
  };
77
77
  }
78
- const ma = {
78
+ const le = {
79
79
  ru: {
80
80
  Имя: "Имя",
81
81
  Фамилия: "Фамилия",
@@ -140,7 +140,11 @@ const ma = {
140
140
  "Повторите пароль": "Повторите пароль",
141
141
  "E-mail успешно привязан к аккаунту": "E-mail успешно привязан к аккаунту",
142
142
  "Введите новый номер телефона": "Введите новый номер телефона",
143
- "Телефон успешно изменен": "Телефон успешно изменен"
143
+ "Телефон успешно изменен": "Телефон успешно изменен",
144
+ // перевод для общего phone\email компонента
145
+ "Допустимы только цифры и знак + в начале": "Допустимы только цифры и знак + в начале",
146
+ "Это не похоже на email": "Это не похоже на email",
147
+ "Email или телефон": "Email или телефон"
144
148
  },
145
149
  en: {
146
150
  Имя: "First Name",
@@ -206,9 +210,13 @@ const ma = {
206
210
  "Повторите пароль": "Repeat password",
207
211
  "E-mail успешно привязан к аккаунту": "The email has been successfully linked to the account",
208
212
  "Введите новый номер телефона": "Enter a new phone number",
209
- "Телефон успешно изменен": "Phone number successfully changed"
213
+ "Телефон успешно изменен": "Phone number successfully changed",
214
+ // перевод для общего phone\email компонента
215
+ "Допустимы только цифры и знак + в начале": "Only numbers and + sign are allowed at the beginning",
216
+ "Это не похоже на email": "It’s not like email",
217
+ "Email или телефон": "Email or phone"
210
218
  }
211
- }, ca = /* @__PURE__ */ X({
219
+ }, pa = /* @__PURE__ */ H({
212
220
  __name: "DialogManager",
213
221
  props: {
214
222
  language: {},
@@ -216,54 +224,54 @@ const ma = {
216
224
  disableAddPhone: { type: Boolean }
217
225
  },
218
226
  emits: ["clean-input-errors", "on-update-jwt", "update-phone-field", "update-email-field", "on-password-error", "on-toast"],
219
- setup(l, { emit: s }) {
220
- const o = s, n = y(!0), { currentDialog: i, dialogPayload: g, closeDialog: V } = re(), u = {
221
- email: Z(() => import("./ProfileEmailDialog-BeE9t0G7.js")),
222
- phone: Z(() => import("./ProfilePhoneDialog-CzsvzQvb.js")),
223
- password: Z(() => import("./ProfilePasswordDialog-DCrkegUa.js"))
224
- }, d = ({ email: E }) => {
225
- o("update-email-field", E);
226
- }, m = ({ phone: E }) => {
227
- o("update-phone-field", E);
227
+ setup(r, { emit: s }) {
228
+ const t = s, n = b(!0), { currentDialog: f, dialogPayload: g, closeDialog: x } = ie(), m = {
229
+ email: Q(() => import("./ProfileEmailDialog-aS-CW0cn.js")),
230
+ phone: Q(() => import("./ProfilePhoneDialog-BysaY3fk.js")),
231
+ password: Q(() => import("./ProfilePasswordDialog-Hew1T5DH.js"))
232
+ }, i = ({ email: E }) => {
233
+ t("update-email-field", E);
234
+ }, v = ({ phone: E }) => {
235
+ t("update-phone-field", E);
228
236
  };
229
- return we(i, (E) => {
237
+ return Pe(f, (E) => {
230
238
  n.value = !!E;
231
- }), (E, p) => c(i) ? (P(), S(qe(u[c(i)]), Je({
239
+ }), (E, u) => p(f) ? (N(), z(We(m[p(f)]), Ye({
232
240
  key: 0,
233
241
  modelValue: n.value,
234
- "onUpdate:modelValue": p[0] || (p[0] = (h) => n.value = h),
242
+ "onUpdate:modelValue": u[0] || (u[0] = (c) => n.value = c),
235
243
  language: E.language,
236
244
  provider: E.provider,
237
245
  "disable-add-phone": E.disableAddPhone
238
- }, c(g), {
239
- onClose: c(V),
240
- onCleanInputErrors: p[1] || (p[1] = (h) => o("clean-input-errors")),
241
- onOnUpdateJwt: p[2] || (p[2] = (h, C, t) => o("on-update-jwt", h, C, t)),
242
- onSubmitEmail: d,
243
- onSubmitPhone: m,
244
- onOnPasswordError: p[3] || (p[3] = (h, C) => o("on-password-error", h, C)),
245
- onOnToast: p[4] || (p[4] = (h) => o("on-toast", h))
246
- }), null, 16, ["modelValue", "language", "provider", "disable-add-phone", "onClose"])) : D("", !0);
246
+ }, p(g), {
247
+ onClose: p(x),
248
+ onCleanInputErrors: u[1] || (u[1] = (c) => t("clean-input-errors")),
249
+ onOnUpdateJwt: u[2] || (u[2] = (c, w, l) => t("on-update-jwt", c, w, l)),
250
+ onSubmitEmail: i,
251
+ onSubmitPhone: v,
252
+ onOnPasswordError: u[3] || (u[3] = (c, w) => t("on-password-error", c, w)),
253
+ onOnToast: u[4] || (u[4] = (c) => t("on-toast", c))
254
+ }), null, 16, ["modelValue", "language", "provider", "disable-add-phone", "onClose"])) : U("", !0);
247
255
  }
248
- }), pa = { class: "base-container" }, fa = {
256
+ }), fa = { class: "base-container" }, ga = {
249
257
  key: 0,
250
258
  style: { color: "#E46060" }
251
- }, ga = { key: 1 }, va = {
259
+ }, va = { key: 1 }, ha = {
252
260
  key: 1,
253
261
  class: "input-wrapper"
254
- }, ha = {
262
+ }, ya = {
255
263
  key: 2,
256
264
  class: "input-wrapper"
257
- }, ya = {
265
+ }, wa = {
258
266
  key: 3,
259
267
  class: "input-wrapper"
260
- }, wa = {
268
+ }, ba = {
261
269
  key: 4,
262
270
  class: "input-wrapper"
263
- }, ba = { class: "buttons-container" }, Pa = {
271
+ }, Ea = { class: "buttons-container" }, Pa = {
264
272
  key: 0,
265
273
  class: "centered-overlay"
266
- }, Ea = { class: "toastWrapper" }, Na = /* @__PURE__ */ X({
274
+ }, Na = { class: "toastWrapper" }, Ca = /* @__PURE__ */ H({
267
275
  __name: "PEditUserContact",
268
276
  props: {
269
277
  language: {},
@@ -277,8 +285,8 @@ const ma = {
277
285
  disableAddPhone: { type: Boolean }
278
286
  },
279
287
  emits: ["open-email-dialog", "open-phone-dialog", "open-password-dialog", "on-update-jwt", "on-password-error", "update-tokens"],
280
- setup(l, { emit: s }) {
281
- const o = l, n = s, i = A(() => o.language ?? "ru"), g = (e) => ma[i.value][e] || e, { openDialog: V } = re(), u = H({ firstName: "", lastName: "" }), d = y({ firstName: "", lastName: "" }), m = H({ firstName: !1, lastName: !1, email: !1, phone: !1 }), E = y(""), p = y(""), h = y(""), C = y(!1), t = H({
288
+ setup(r, { emit: s }) {
289
+ const t = r, n = s, f = V(() => t.language ?? "ru"), g = (e) => le[f.value][e] || e, { openDialog: x } = ie(), m = ee({ firstName: "", lastName: "" }), i = b({ firstName: "", lastName: "" }), v = ee({ firstName: !1, lastName: !1, email: !1, phone: !1 }), E = b(""), u = b(""), c = b(""), w = b(!1), l = ee({
282
290
  value: null,
283
291
  loading: !1,
284
292
  accept: ["image/png", "image/jpeg"],
@@ -286,334 +294,334 @@ const ma = {
286
294
  // 10 MB
287
295
  imageBinary: null,
288
296
  imageContent: ""
289
- }), v = y(""), f = y(!1), b = y(!0), I = y(!0), N = y(void 0), x = y(""), M = A(() => se(u.firstName, m.firstName)), F = A(() => se(u.lastName, m.lastName)), _ = A(() => m.email && !p.value.trim() ? "Введите e-mail" : ""), O = A(() => m.phone && !h.value.trim() ? "Введите номер телефона" : ""), $ = (e) => o.fields.some((a) => a.key === e), le = (e) => e && e.trim() ? "edit" : "bind", K = () => setTimeout(() => {
297
+ }), $ = b(""), L = b(!1), R = b(!0), d = b(!0), h = b(void 0), y = b(""), B = V(() => ue(m.firstName, v.firstName)), C = V(() => ue(m.lastName, v.lastName)), k = V(() => v.email && !u.value.trim() ? "Введите e-mail" : ""), M = V(() => v.phone && !c.value.trim() ? "Введите номер телефона" : ""), A = (e) => t.fields.some((a) => a.key === e), S = (e) => e && e.trim() ? "edit" : "bind", _ = () => setTimeout(() => {
290
298
  var e;
291
299
  return (e = document.activeElement) == null ? void 0 : e.blur();
292
- }, 0), Ne = A(() => !!(p.value && p.value.trim() !== "")), Ce = A(() => t.imageContent ? g("Загрузить другое фото") : g("Загрузить фото")), se = (e, a) => {
300
+ }, 0), q = V(() => !!(u.value && u.value.trim() !== "")), Te = V(() => l.imageContent ? g("Загрузить другое фото") : g("Загрузить фото")), ue = (e, a) => {
293
301
  if (!a) return "";
294
- const r = e.trim();
295
- return r ? r.length < 2 ? "Поле должно содержать минимум 2 символа" : "" : "Введите значение";
296
- }, ke = (e) => V("email", { mode: e ? "edit" : "bind", initialEmail: e }), Te = () => {
297
- K(), m.email = !1, I.value = !1, n("open-email-dialog", p.value, le(p.value)), ke(p.value);
298
- }, Be = () => {
299
- K(), m.phone = !1, b.value = !1, n("open-phone-dialog", h.value, le(h.value));
300
- }, De = async (e, a, r) => {
301
- e === "email" && r && (p.value = r), e === "phone" && r && (h.value = r), n("on-update-jwt");
302
- }, Ie = (e) => {
303
- h.value = e;
304
- }, Ue = (e) => {
305
- p.value = e;
306
- }, Ve = (e, a) => {
307
- f.value = !0, n("on-password-error", e, a);
308
- }, Ae = () => {
309
- b.value = !1, I.value = !1;
310
- }, G = (e) => {
311
- f.value = !0, N.value = e.color ?? "", x.value = e.text ?? "";
312
- }, j = (e) => {
313
- if (m[e] = !0, e === "firstName" || e === "lastName") {
314
- const a = u[e];
315
- a.length > 40 && (u[e] = a.slice(0, 40));
302
+ const o = e.trim();
303
+ return o ? o.length < 2 ? "Поле должно содержать минимум 2 символа" : "" : "Введите значение";
304
+ }, Be = (e) => x("email", { mode: e ? "edit" : "bind", initialEmail: e }), De = () => {
305
+ _(), v.email = !1, d.value = !1, n("open-email-dialog", u.value, S(u.value)), Be(u.value);
306
+ }, Ie = () => {
307
+ _(), v.phone = !1, R.value = !1, n("open-phone-dialog", c.value, S(c.value));
308
+ }, Ue = async (e, a, o) => {
309
+ e === "email" && o && (u.value = o), e === "phone" && o && (c.value = o), n("on-update-jwt");
310
+ }, Ve = (e) => {
311
+ c.value = e;
312
+ }, Ae = (e) => {
313
+ u.value = e;
314
+ }, Fe = (e, a) => {
315
+ L.value = !0, n("on-password-error", e, a);
316
+ }, Se = () => {
317
+ R.value = !1, d.value = !1;
318
+ }, J = (e) => {
319
+ L.value = !0, h.value = e.color ?? "", y.value = e.text ?? "";
320
+ }, W = (e) => {
321
+ if (v[e] = !0, e === "firstName" || e === "lastName") {
322
+ const a = m[e];
323
+ a.length > 40 && (m[e] = a.slice(0, 40));
316
324
  }
317
- }, Fe = (e) => {
318
- var q, J;
319
- if (v.value = "", !e) {
320
- ie();
325
+ }, Me = (e) => {
326
+ var Y, X;
327
+ if ($.value = "", !e) {
328
+ de();
321
329
  return;
322
330
  }
323
- const a = ((q = e.fileBinary) == null ? void 0 : q.type) ?? "", r = ((J = e.fileBinary) == null ? void 0 : J.size) ?? 0, B = !["image/png", "image/jpeg"].includes(a), T = r > t.uploadLimit;
324
- if (B || T) {
325
- v.value = "Файл не подходит. Пожалуйста, загрузите PNG или JPEG размером до 10 МБ", ie();
331
+ const a = ((Y = e.fileBinary) == null ? void 0 : Y.type) ?? "", o = ((X = e.fileBinary) == null ? void 0 : X.size) ?? 0, I = !["image/png", "image/jpeg"].includes(a), D = o > l.uploadLimit;
332
+ if (I || D) {
333
+ $.value = "Файл не подходит. Пожалуйста, загрузите PNG или JPEG размером до 10 МБ", de();
326
334
  return;
327
335
  }
328
- t.value = e, t.imageBinary = e.fileBinary ?? null, t.imageContent = e.fileContent ?? "", C.value = !0;
329
- }, ie = () => {
330
- t.value = null, t.imageBinary = null, t.imageContent = "", C.value = !1;
331
- }, Se = async () => {
336
+ l.value = e, l.imageBinary = e.fileBinary ?? null, l.imageContent = e.fileContent ?? "", w.value = !0;
337
+ }, de = () => {
338
+ l.value = null, l.imageBinary = null, l.imageContent = "", w.value = !1;
339
+ }, xe = async () => {
332
340
  try {
333
- const a = (await ua("/users/profile/delete/avatar")).data;
341
+ const a = (await ma("/users/profile/delete/avatar")).data;
334
342
  return (a == null ? void 0 : a.success) === !0;
335
343
  } catch (e) {
336
344
  return console.error("Ошибка при удалении аватара:", e), !1;
337
345
  }
338
- }, xe = () => {
339
- v.value = "Файл не подходит. Пожалуйста, загрузите PNG или JPEG размером до 10 МБ", t.value = null, t.imageBinary = null, t.imageContent = "", C.value = !1;
340
- }, ue = async (e, a, r = "image/png") => {
346
+ }, $e = () => {
347
+ $.value = "Файл не подходит. Пожалуйста, загрузите PNG или JPEG размером до 10 МБ", l.value = null, l.imageBinary = null, l.imageContent = "", w.value = !1;
348
+ }, me = async (e, a, o = "image/png") => {
341
349
  if (!e) return null;
342
- const B = await (await fetch(e)).blob();
343
- return new File([B], a, { type: r });
344
- }, Me = () => {
345
- t.value = null, t.imageBinary = null, t.imageContent = "", C.value = !1;
346
- }, $e = async (e) => {
347
- C.value = !1;
348
- const a = t.imageContent;
349
- if (t.imageContent = e, !t.imageBinary) return;
350
- const r = await ue(
350
+ const I = await (await fetch(e)).blob();
351
+ return new File([I], a, { type: o });
352
+ }, ze = () => {
353
+ l.value = null, l.imageBinary = null, l.imageContent = "", w.value = !1;
354
+ }, Le = async (e) => {
355
+ w.value = !1;
356
+ const a = l.imageContent;
357
+ if (l.imageContent = e, !l.imageBinary) return;
358
+ const o = await me(
351
359
  e,
352
- t.imageBinary.name,
353
- t.imageBinary.type || "image/png"
360
+ l.imageBinary.name,
361
+ l.imageBinary.type || "image/png"
354
362
  );
355
- if (!r) {
356
- t.imageContent = a;
363
+ if (!o) {
364
+ l.imageContent = a;
357
365
  return;
358
366
  }
359
367
  try {
360
- t.loading = !0;
361
- const k = new FormData();
362
- k.append("file", r), await oe(`/users/profile/avatar/${E.value}`, k, { headers: { "Content-Type": void 0 } });
363
- } catch (k) {
364
- console.error(k), G({
368
+ l.loading = !0;
369
+ const T = new FormData();
370
+ T.append("file", o), await re(`/users/profile/avatar/${E.value}`, T, { headers: { "Content-Type": void 0 } });
371
+ } catch (T) {
372
+ console.error(T), J({
365
373
  color: "error",
366
374
  text: g("Не удалось сохранить изменения. Попробуйте позже")
367
- }), t.imageContent = a;
375
+ }), l.imageContent = a;
368
376
  } finally {
369
- t.loading = !1;
377
+ l.loading = !1;
370
378
  }
371
- }, ze = async (e) => {
372
- t.imageContent = e ?? "", t.imageBinary && (t.imageBinary = await ue(
379
+ }, _e = async (e) => {
380
+ l.imageContent = e ?? "", l.imageBinary && (l.imageBinary = await me(
373
381
  e ?? "",
374
- t.imageBinary.name,
375
- t.imageBinary.type || "image/png"
382
+ l.imageBinary.name,
383
+ l.imageBinary.type || "image/png"
376
384
  ));
377
- }, de = y(!1), me = async (e) => {
378
- var r, k;
379
- const a = (r = u[e]) == null ? void 0 : r.trim();
385
+ }, ce = b(!1), pe = async (e) => {
386
+ var o, T;
387
+ const a = (o = m[e]) == null ? void 0 : o.trim();
380
388
  if (a)
381
389
  try {
382
- de.value = !0;
383
- const T = (k = (await oe("/users/profile/update-name", { [e]: a })).data) == null ? void 0 : k.data;
384
- T != null && T.user && (u.firstName = T.user.firstName ?? u.firstName, u.lastName = T.user.lastName ?? u.lastName, d.value = {
385
- firstName: u.firstName,
386
- lastName: u.lastName
390
+ ce.value = !0;
391
+ const D = (T = (await re("/users/profile/update-name", { [e]: a })).data) == null ? void 0 : T.data;
392
+ D != null && D.user && (m.firstName = D.user.firstName ?? m.firstName, m.lastName = D.user.lastName ?? m.lastName, i.value = {
393
+ firstName: m.firstName,
394
+ lastName: m.lastName
387
395
  });
388
- } catch (B) {
389
- throw B;
396
+ } catch (I) {
397
+ throw I;
390
398
  } finally {
391
- de.value = !1;
399
+ ce.value = !1;
392
400
  }
393
- }, Le = async () => {
401
+ }, Re = async () => {
394
402
  var e;
395
- if (!o.accessToken)
403
+ if (!t.accessToken)
396
404
  throw console.error("Access token не передан в props"), new Error("Access token is required");
397
405
  try {
398
- const r = (e = (await da({
399
- accessToken: o.accessToken,
400
- refreshToken: o.refreshToken ?? "",
406
+ const o = (e = (await ca({
407
+ accessToken: t.accessToken,
408
+ refreshToken: t.refreshToken ?? "",
401
409
  excludeFields: []
402
410
  })).data) == null ? void 0 : e.user;
403
- if (!r)
411
+ if (!o)
404
412
  throw console.error("Данные пользователя отсутствуют в ответе сервера"), new Error("User data is missing from the response");
405
413
  const {
406
- userId: k,
407
- privateFirstName: B,
408
- privateLastName: T,
409
- email: q,
410
- phoneNumber: J
411
- } = r;
412
- E.value = k ?? "", u.firstName = B ?? "", u.lastName = T ?? "", p.value = q ?? "", h.value = J ?? "", t.imageContent = await Re(), d.value = {
413
- firstName: B ?? "",
414
- lastName: T ?? ""
414
+ userId: T,
415
+ privateFirstName: I,
416
+ privateLastName: D,
417
+ email: Y,
418
+ phoneNumber: X
419
+ } = o;
420
+ E.value = T ?? "", m.firstName = I ?? "", m.lastName = D ?? "", u.value = Y ?? "", c.value = X ?? "", l.imageContent = await Oe(), i.value = {
421
+ firstName: I ?? "",
422
+ lastName: D ?? ""
415
423
  };
416
424
  } catch (a) {
417
425
  console.error("Критическая ошибка при загрузке профиля:", a);
418
426
  }
419
- }, Re = async () => {
427
+ }, Oe = async () => {
420
428
  var e;
421
429
  try {
422
- const r = (e = (await ia("/users/profile/avatar")).data) == null ? void 0 : e.data;
423
- return r ? _e(r) : "";
430
+ const o = (e = (await da("/users/profile/avatar")).data) == null ? void 0 : e.data;
431
+ return o ? Ge(o) : "";
424
432
  } catch (a) {
425
433
  return console.error("Ошибка при загрузке метаданных аватара:", a), "";
426
434
  }
427
435
  };
428
- function _e(e) {
436
+ function Ge(e) {
429
437
  if (!e)
430
438
  return "";
431
439
  try {
432
- return new URL(e.key, o.awsStorageUrl).toString();
440
+ return new URL(e.key, t.awsStorageUrl).toString();
433
441
  } catch (a) {
434
442
  return console.error("Ошибка при составлении URL аватара:", a), "";
435
443
  }
436
444
  }
437
- const ce = A(() => {
438
- if (!d.value.firstName && !d.value.lastName)
445
+ const fe = V(() => {
446
+ if (!i.value.firstName && !i.value.lastName)
439
447
  return !1;
440
- const e = u.firstName.trim(), a = u.lastName.trim(), r = d.value.firstName.trim(), k = d.value.lastName.trim(), B = e !== r || a !== k, T = e.length >= 2 && a.length >= 2;
441
- return B && T;
442
- }), Oe = async () => {
443
- if (ce.value)
448
+ const e = m.firstName.trim(), a = m.lastName.trim(), o = i.value.firstName.trim(), T = i.value.lastName.trim(), I = e !== o || a !== T, D = e.length >= 2 && a.length >= 2;
449
+ return I && D;
450
+ }), je = async () => {
451
+ if (fe.value)
444
452
  try {
445
- await Promise.all([me("firstName"), me("lastName")]), n("on-update-jwt"), G({ color: "success", text: "Изменения сохранены" });
453
+ await Promise.all([pe("firstName"), pe("lastName")]), n("on-update-jwt"), J({ color: "success", text: "Изменения сохранены" });
446
454
  } catch (e) {
447
- console.error(e), G({
455
+ console.error(e), J({
448
456
  color: "error",
449
457
  text: g("Не удалось сохранить изменения. Попробуйте позже")
450
458
  });
451
459
  }
452
- }, Ge = () => {
453
- K(), n("open-password-dialog");
460
+ }, qe = () => {
461
+ _(), n("open-password-dialog");
454
462
  };
455
- return We(async () => {
456
- if (!o.accessToken) throw new Error("Access token не передан в props");
457
- if (!o.requestUrl) throw new Error("auth-backend url не передан в props");
458
- sa(o.accessToken, o.requestUrl, o.throttlerPrefix), await Le();
459
- }), (e, a) => (P(), U(be, null, [
460
- w(ca, {
461
- language: i.value,
463
+ return Xe(async () => {
464
+ if (!t.accessToken) throw new Error("Access token не передан в props");
465
+ if (!t.requestUrl) throw new Error("auth-backend url не передан в props");
466
+ ua(t.accessToken, t.requestUrl, t.throttlerPrefix), await Re();
467
+ }), (e, a) => (N(), F(Ne, null, [
468
+ P(pa, {
469
+ language: f.value,
462
470
  provider: e.provider,
463
471
  "disable-add-phone": e.disableAddPhone,
464
- onCleanInputErrors: Ae,
465
- onOnUpdateJwt: De,
466
- onUpdatePhoneField: Ie,
467
- onUpdateEmailField: Ue,
468
- onOnPasswordError: Ve,
469
- onOnToast: G
472
+ onCleanInputErrors: Se,
473
+ onOnUpdateJwt: Ue,
474
+ onUpdatePhoneField: Ve,
475
+ onUpdateEmailField: Ae,
476
+ onOnPasswordError: Fe,
477
+ onOnToast: J
470
478
  }, null, 8, ["language", "provider", "disable-add-phone"]),
471
- Q("div", pa, [
472
- $("avatar") ? (P(), S(c(He), {
479
+ ae("div", fa, [
480
+ A("avatar") ? (N(), z(p(ea), {
473
481
  key: 0,
474
- modelValue: t.value,
482
+ modelValue: l.value,
475
483
  "onUpdate:modelValue": [
476
- a[0] || (a[0] = (r) => t.value = r),
477
- a[1] || (a[1] = (r) => Fe(r))
484
+ a[0] || (a[0] = (o) => l.value = o),
485
+ a[1] || (a[1] = (o) => Me(o))
478
486
  ],
479
487
  type: "img",
480
488
  class: "avatar-input",
481
- src: t.imageContent,
482
- loading: t.loading,
489
+ src: l.imageContent,
490
+ loading: l.loading,
483
491
  label: g("Загрузить фото"),
484
- "upload-limit": t.uploadLimit,
492
+ "upload-limit": l.uploadLimit,
485
493
  accept: "image/jpeg, image/png",
486
- onDelete: Se,
487
- "onChange:error": xe
494
+ onDelete: xe,
495
+ "onChange:error": $e
488
496
  }, {
489
- afterLoadLabel: z(() => [
490
- ee(L(Ce.value), 1)
497
+ afterLoadLabel: O(() => [
498
+ te(G(Te.value), 1)
491
499
  ]),
492
- subtext: z(() => [
493
- v.value ? (P(), U("span", fa, L(v.value), 1)) : (P(), U("span", ga, L(`${g("Формат")} ${c(la)(t.accept).join(", ")} ${g("до")} ${c(na)(t.uploadLimit)}`), 1))
500
+ subtext: O(() => [
501
+ $.value ? (N(), F("span", ga, G($.value), 1)) : (N(), F("span", va, G(`${g("Формат")} ${p(ia)(l.accept).join(", ")} ${g("до")} ${p(la)(l.uploadLimit)}`), 1))
494
502
  ]),
495
503
  _: 1
496
- }, 8, ["modelValue", "src", "loading", "label", "upload-limit"])) : D("", !0),
497
- $("firstName") ? (P(), U("div", va, [
498
- w(c(R), {
499
- modelValue: u.firstName,
500
- "onUpdate:modelValue": a[2] || (a[2] = (r) => u.firstName = r),
504
+ }, 8, ["modelValue", "src", "loading", "label", "upload-limit"])) : U("", !0),
505
+ A("firstName") ? (N(), F("div", ha, [
506
+ P(p(j), {
507
+ modelValue: m.firstName,
508
+ "onUpdate:modelValue": a[2] || (a[2] = (o) => m.firstName = o),
501
509
  size: "large",
502
510
  label: g("Имя"),
503
- error: M.value,
504
- onBlur: a[3] || (a[3] = (r) => m.firstName = !0),
505
- onInput: a[4] || (a[4] = (r) => j("firstName"))
511
+ error: B.value,
512
+ onBlur: a[3] || (a[3] = (o) => v.firstName = !0),
513
+ onInput: a[4] || (a[4] = (o) => W("firstName"))
506
514
  }, null, 8, ["modelValue", "label", "error"]),
507
- w(c(W), { class: "icon-locked" })
508
- ])) : D("", !0),
509
- $("lastName") ? (P(), U("div", ha, [
510
- w(c(R), {
511
- modelValue: u.lastName,
512
- "onUpdate:modelValue": a[5] || (a[5] = (r) => u.lastName = r),
515
+ P(p(K), { class: "icon-locked" })
516
+ ])) : U("", !0),
517
+ A("lastName") ? (N(), F("div", ya, [
518
+ P(p(j), {
519
+ modelValue: m.lastName,
520
+ "onUpdate:modelValue": a[5] || (a[5] = (o) => m.lastName = o),
513
521
  size: "large",
514
522
  label: g("Фамилия"),
515
- error: F.value,
516
- onBlur: a[6] || (a[6] = (r) => m.lastName = !0),
517
- onInput: a[7] || (a[7] = (r) => j("lastName"))
523
+ error: C.value,
524
+ onBlur: a[6] || (a[6] = (o) => v.lastName = !0),
525
+ onInput: a[7] || (a[7] = (o) => W("lastName"))
518
526
  }, null, 8, ["modelValue", "label", "error"]),
519
- w(c(W), { class: "icon-locked" })
520
- ])) : D("", !0),
521
- $("email") ? (P(), U("div", ya, [
522
- w(c(R), {
523
- modelValue: p.value,
524
- "onUpdate:modelValue": a[8] || (a[8] = (r) => p.value = r),
527
+ P(p(K), { class: "icon-locked" })
528
+ ])) : U("", !0),
529
+ A("email") ? (N(), F("div", wa, [
530
+ P(p(j), {
531
+ modelValue: u.value,
532
+ "onUpdate:modelValue": a[8] || (a[8] = (o) => u.value = o),
525
533
  size: "large",
526
534
  "text-size": "medium",
527
535
  label: "E-mail",
528
536
  type: "email",
529
537
  readonly: "",
530
538
  style: { cursor: "pointer" },
531
- error: _.value && I.value,
532
- onBlur: a[9] || (a[9] = (r) => m.email = !0),
533
- onInput: a[10] || (a[10] = (r) => j("email")),
534
- onClick: Te
539
+ error: k.value && d.value,
540
+ onBlur: a[9] || (a[9] = (o) => v.email = !0),
541
+ onInput: a[10] || (a[10] = (o) => W("email")),
542
+ onClick: De
535
543
  }, null, 8, ["modelValue", "error"]),
536
- w(c(W), { class: "icon-locked" })
537
- ])) : D("", !0),
538
- $("phone") ? (P(), U("div", wa, [
539
- w(c(R), {
540
- modelValue: h.value,
541
- "onUpdate:modelValue": a[11] || (a[11] = (r) => h.value = r),
544
+ P(p(K), { class: "icon-locked" })
545
+ ])) : U("", !0),
546
+ A("phone") ? (N(), F("div", ba, [
547
+ P(p(j), {
548
+ modelValue: c.value,
549
+ "onUpdate:modelValue": a[11] || (a[11] = (o) => c.value = o),
542
550
  size: "large",
543
551
  "text-size": "medium",
544
552
  label: g("Номер телефона"),
545
553
  type: "tel",
546
554
  readonly: "",
547
555
  style: { cursor: "pointer" },
548
- error: O.value && b.value,
549
- onBlur: a[12] || (a[12] = (r) => m.phone = !0),
550
- onInput: a[13] || (a[13] = (r) => j("phone")),
551
- onClick: Be
556
+ error: M.value && R.value,
557
+ onBlur: a[12] || (a[12] = (o) => v.phone = !0),
558
+ onInput: a[13] || (a[13] = (o) => W("phone")),
559
+ onClick: Ie
552
560
  }, null, 8, ["modelValue", "label", "error"]),
553
- w(c(W), { class: "icon-locked" })
554
- ])) : D("", !0),
555
- Q("div", ba, [
556
- Ne.value ? (P(), S(c(fe), {
561
+ P(p(K), { class: "icon-locked" })
562
+ ])) : U("", !0),
563
+ ae("div", Ea, [
564
+ q.value ? (N(), z(p(ve), {
557
565
  key: 0,
558
566
  color: "secondary",
559
- onClick: Ge
567
+ onClick: qe
560
568
  }, {
561
- default: z(() => [
562
- ee(L(g("Сменить пароль")), 1)
569
+ default: O(() => [
570
+ te(G(g("Сменить пароль")), 1)
563
571
  ]),
564
572
  _: 1
565
- })) : D("", !0),
566
- w(c(fe), {
567
- disabled: !ce.value,
568
- onClick: Oe
573
+ })) : U("", !0),
574
+ P(p(ve), {
575
+ disabled: !fe.value,
576
+ onClick: je
569
577
  }, {
570
- default: z(() => [
571
- ee(L(g("Сохранить")), 1)
578
+ default: O(() => [
579
+ te(G(g("Сохранить")), 1)
572
580
  ]),
573
581
  _: 1
574
582
  }, 8, ["disabled"])
575
583
  ])
576
584
  ]),
577
- C.value ? (P(), S(pe, {
585
+ w.value ? (N(), z(ge, {
578
586
  key: 0,
579
587
  to: "body"
580
588
  }, [
581
- C.value ? (P(), U("div", Pa, [
582
- w(c(Qe), {
589
+ w.value ? (N(), F("div", Pa, [
590
+ P(p(aa), {
583
591
  "circle-mode": !0,
584
- "model-value": t.imageContent,
585
- onClose: Me,
586
- onSave: a[14] || (a[14] = (r) => $e(r)),
587
- "onUpdate:modelValue": a[15] || (a[15] = (r) => ze(r))
592
+ "model-value": l.imageContent,
593
+ onClose: ze,
594
+ onSave: a[14] || (a[14] = (o) => Le(o)),
595
+ "onUpdate:modelValue": a[15] || (a[15] = (o) => _e(o))
588
596
  }, null, 8, ["model-value"])
589
- ])) : D("", !0)
590
- ])) : D("", !0),
591
- (P(), S(pe, { to: "#toast-root" }, [
592
- Q("div", Ea, [
593
- w(Ye, { name: "list" }, {
594
- default: z(() => [
595
- Xe(w(c(ea), {
597
+ ])) : U("", !0)
598
+ ])) : U("", !0),
599
+ (N(), z(ge, { to: "#toast-root" }, [
600
+ ae("div", Na, [
601
+ P(Ke, { name: "list" }, {
602
+ default: O(() => [
603
+ Ze(P(p(ta), {
596
604
  class: "toast",
597
- color: N.value,
598
- text: x.value,
599
- onClose: a[16] || (a[16] = (r) => f.value = !1)
605
+ color: h.value,
606
+ text: y.value,
607
+ onClose: a[16] || (a[16] = (o) => L.value = !1)
600
608
  }, null, 8, ["color", "text"]), [
601
- [Ke, f.value]
609
+ [He, L.value]
602
610
  ])
603
611
  ]),
604
612
  _: 1
605
613
  })
606
614
  ])
607
615
  ])),
608
- w(c(Pe))
616
+ P(p(Ce))
609
617
  ], 64));
610
618
  }
611
- }), Ee = (l, s) => {
612
- const o = l.__vccOpts || l;
613
- for (const [n, i] of s)
614
- o[n] = i;
615
- return o;
616
- }, Ca = /* @__PURE__ */ Ee(Na, [["__scopeId", "data-v-a56fcdbb"]]), La = /* @__PURE__ */ X({
619
+ }), ke = (r, s) => {
620
+ const t = r.__vccOpts || r;
621
+ for (const [n, f] of s)
622
+ t[n] = f;
623
+ return t;
624
+ }, ka = /* @__PURE__ */ ke(Ca, [["__scopeId", "data-v-4e8a6f81"]]), La = /* @__PURE__ */ H({
617
625
  __name: "index",
618
626
  props: {
619
627
  throttlerPrefix: {},
@@ -627,67 +635,67 @@ const ma = {
627
635
  disableAddPhone: { type: Boolean }
628
636
  },
629
637
  emits: ["on-update-jwt", "update-tokens"],
630
- setup(l, { emit: s }) {
631
- const o = s, { openDialog: n } = re(), i = (d, m) => {
632
- n("email", { initialEmail: d, mode: m });
633
- }, g = (d, m) => {
634
- n("phone", { initialPhone: d, mode: m });
635
- }, V = () => {
638
+ setup(r, { emit: s }) {
639
+ const t = s, { openDialog: n } = ie(), f = (i, v) => {
640
+ n("email", { initialEmail: i, mode: v });
641
+ }, g = (i, v) => {
642
+ n("phone", { initialPhone: i, mode: v });
643
+ }, x = () => {
636
644
  n("password");
637
- }, u = (d, m, E) => {
638
- o("on-update-jwt", d, m, E);
645
+ }, m = (i, v, E) => {
646
+ t("on-update-jwt", i, v, E);
639
647
  };
640
- return (d, m) => (P(), U(be, null, [
641
- w(c(aa)),
642
- w(Ca, {
643
- "throttler-prefix": d.throttlerPrefix,
644
- provider: d.provider,
645
- "request-url": d.requestUrl,
646
- language: d.language,
647
- fields: d.fields,
648
- "access-token": d.accessToken,
649
- "refresh-token": d.refreshToken,
650
- "aws-storage-url": d.awsStorageUrl,
651
- "disable-add-phone": d.disableAddPhone,
652
- onOpenEmailDialog: i,
648
+ return (i, v) => (N(), F(Ne, null, [
649
+ P(p(na)),
650
+ P(ka, {
651
+ "throttler-prefix": i.throttlerPrefix,
652
+ provider: i.provider,
653
+ "request-url": i.requestUrl,
654
+ language: i.language,
655
+ fields: i.fields,
656
+ "access-token": i.accessToken,
657
+ "refresh-token": i.refreshToken,
658
+ "aws-storage-url": i.awsStorageUrl,
659
+ "disable-add-phone": i.disableAddPhone,
660
+ onOpenEmailDialog: f,
653
661
  onOpenPhoneDialog: g,
654
- onOpenPasswordDialog: V,
655
- onOnUpdateJwt: u
662
+ onOpenPasswordDialog: x,
663
+ onOnUpdateJwt: m
656
664
  }, null, 8, ["throttler-prefix", "provider", "request-url", "language", "fields", "access-token", "refresh-token", "aws-storage-url", "disable-add-phone"]),
657
- w(c(Pe))
665
+ P(p(Ce))
658
666
  ], 64));
659
667
  }
660
- }), ka = 10, Ta = 10, Ba = 15;
661
- function ge(l, s, o) {
662
- let n = l.replace(/[^\d+]/g, "").replace(/(?!^)\+/g, "");
663
- return o != null && o.startsWith("ru") && n.startsWith("8") ? n = `+7${n.slice(1)}` : s && n && !n.startsWith("+") && (n = `+${n}`), n;
668
+ }), Ta = 10, Ba = 10, Da = 15;
669
+ function he(r, s, t) {
670
+ let n = r.replace(/[^\d+]/g, "").replace(/(?!^)\+/g, "");
671
+ return t != null && t.startsWith("ru") && n.startsWith("8") ? n = `+7${n.slice(1)}` : s && n && !n.startsWith("+") && (n = `+${n}`), n;
664
672
  }
665
- function ve(l) {
666
- return l.startsWith("+") ? l.slice(1).replace(/\D/g, "") : l.replace(/\D/g, "");
673
+ function ye(r) {
674
+ return r.startsWith("+") ? r.slice(1).replace(/\D/g, "") : r.replace(/\D/g, "");
667
675
  }
668
- function he(l, s = ka, o = Ba) {
669
- if (!l.startsWith("+"))
676
+ function we(r, s = Ta, t = Da) {
677
+ if (!r.startsWith("+"))
670
678
  return !1;
671
- const n = l.slice(1);
672
- return !(!/^\d+$/.test(n) || n.length < s || n.length > o);
679
+ const n = r.slice(1);
680
+ return !(!/^\d+$/.test(n) || n.length < s || n.length > t);
673
681
  }
674
- function Da(l) {
675
- return !/^\+?\d*$/.test(l);
682
+ function be(r) {
683
+ return !/^\+?\d*$/.test(r);
676
684
  }
677
- function Ia(l, s) {
678
- let o = 0, n = !1;
679
- return l.split("").filter((i, g) => i === "+" ? g !== 0 || n ? !1 : (n = !0, !0) : /\d/.test(i) ? (o++, o <= s) : !1).join("");
685
+ function Ia(r, s) {
686
+ let t = 0, n = !1;
687
+ return r.split("").filter((f, g) => f === "+" ? g !== 0 || n ? !1 : (n = !0, !0) : /\d/.test(f) ? (t++, t <= s) : !1).join("");
680
688
  }
681
689
  const Ua = /^[\w.%+-]+@[a-z0-9.-]+\.[a-z]{2,}$/i;
682
- function ye(l) {
683
- return Ua.test(l);
690
+ function Ee(r) {
691
+ return Ua.test(r);
684
692
  }
685
- function Va(l, s) {
686
- var n, i;
687
- const o = l.trim();
688
- return (n = s.phone) != null && n.enabled && /\d/.test(o) && !o.includes("@") ? "phone" : (i = s.email) != null && i.enabled ? "email" : null;
693
+ function Va(r, s) {
694
+ var n, f;
695
+ const t = r.trim();
696
+ return (n = s.phone) != null && n.enabled && /\d/.test(t) && !t.includes("@") ? "phone" : (f = s.email) != null && f.enabled ? "email" : null;
689
697
  }
690
- const Aa = { class: "smart-input" }, Fa = /* @__PURE__ */ X({
698
+ const Aa = { class: "smart-input" }, Fa = /* @__PURE__ */ H({
691
699
  __name: "index",
692
700
  props: {
693
701
  modelValue: {},
@@ -700,133 +708,156 @@ const Aa = { class: "smart-input" }, Fa = /* @__PURE__ */ X({
700
708
  errorMessages: {}
701
709
  },
702
710
  emits: ["update:modelValue", "validity-change", "type-change"],
703
- setup(l, { emit: s }) {
704
- const o = l, n = s, i = A(() => {
705
- var t, v, f, b, I, N, x, M, F, _, O;
711
+ setup(r, { emit: s }) {
712
+ const t = r, n = s, f = V(() => t.locale ?? "ru"), g = (d) => le[f.value][d] || d, x = V(() => t.label ? g(t.label) : g("Email или телефон"));
713
+ function m(d, h) {
714
+ return h ? h in le[f.value] ? g(h) : h : g(d);
715
+ }
716
+ const i = V(() => {
717
+ var d, h, y, B, C, k, M, A, S, _, q;
706
718
  return {
707
- mode: ((t = o.config) == null ? void 0 : t.mode) ?? "auto",
719
+ mode: ((d = t.config) == null ? void 0 : d.mode) ?? "auto",
708
720
  phone: {
709
- enabled: ((f = (v = o.config) == null ? void 0 : v.phone) == null ? void 0 : f.enabled) ?? !0,
710
- minDigits: ((I = (b = o.config) == null ? void 0 : b.phone) == null ? void 0 : I.minDigits) ?? 10,
711
- maxDigits: ((x = (N = o.config) == null ? void 0 : N.phone) == null ? void 0 : x.maxDigits) ?? 15,
712
- autoPlus: ((F = (M = o.config) == null ? void 0 : M.phone) == null ? void 0 : F.autoPlus) ?? !0
721
+ enabled: ((y = (h = t.config) == null ? void 0 : h.phone) == null ? void 0 : y.enabled) ?? !0,
722
+ minDigits: ((C = (B = t.config) == null ? void 0 : B.phone) == null ? void 0 : C.minDigits) ?? 10,
723
+ maxDigits: ((M = (k = t.config) == null ? void 0 : k.phone) == null ? void 0 : M.maxDigits) ?? 15,
724
+ autoPlus: ((S = (A = t.config) == null ? void 0 : A.phone) == null ? void 0 : S.autoPlus) ?? !0
713
725
  },
714
726
  email: {
715
- enabled: ((O = (_ = o.config) == null ? void 0 : _.email) == null ? void 0 : O.enabled) ?? !0
727
+ enabled: ((q = (_ = t.config) == null ? void 0 : _.email) == null ? void 0 : q.enabled) ?? !0
716
728
  }
717
729
  };
718
- }), g = y(null), V = y(""), u = y(o.modelValue ?? ""), d = y(null), m = y("");
719
- we(() => o.modelValue, (t) => {
720
- t !== void 0 && (u.value = t, V.value = t);
730
+ }), v = b(null), E = b(""), u = b(t.modelValue ?? ""), c = b(null), w = b("");
731
+ Pe(() => t.modelValue, (d) => {
732
+ d !== void 0 && (u.value = d, E.value = d);
721
733
  });
722
- function E(t) {
723
- var I;
724
- m.value = "";
725
- const f = t.target.value;
726
- if (f.trim() === "") {
727
- d.value = null, m.value = "", n("type-change", null), n("update:modelValue", ""), n("validity-change", !1);
734
+ function l(d) {
735
+ var C;
736
+ w.value = "";
737
+ const y = d.target.value;
738
+ if (y.trim() === "") {
739
+ c.value = null, w.value = "", n("type-change", null), n("update:modelValue", ""), n("validity-change", !1);
728
740
  return;
729
741
  }
730
- const b = i.value.mode === "auto" ? Va(f, i.value) : i.value.mode;
731
- if (d.value = b, n("type-change", b), b === "email") {
732
- const N = ye(f);
733
- u.value = f, V.value = f, n("update:modelValue", f), n("validity-change", N);
742
+ const B = i.value.mode === "auto" ? Va(y, i.value) : i.value.mode;
743
+ if (c.value = B, n("type-change", B), B === "email") {
744
+ const k = Ee(y);
745
+ u.value = y, E.value = y, n("update:modelValue", y), n("validity-change", k);
734
746
  return;
735
747
  }
736
- if (b === "phone") {
737
- const N = ge(
738
- f,
748
+ if (B === "phone") {
749
+ const k = he(
750
+ y,
739
751
  i.value.phone.autoPlus,
740
- o.locale
752
+ t.locale
741
753
  );
742
- if (ve(N).length > i.value.phone.maxDigits) {
743
- const F = Ia(f, i.value.phone.maxDigits);
744
- u.value = F, n("update:modelValue", F), C(F);
754
+ if (ye(k).length > i.value.phone.maxDigits) {
755
+ const S = Ia(y, i.value.phone.maxDigits);
756
+ u.value = S, n("update:modelValue", S), R(S);
745
757
  return;
746
758
  }
747
- if (u.value = f, Da(f)) {
748
- m.value = ((I = o.errorMessages) == null ? void 0 : I.invalidPhoneChars) ?? "Допустимы только цифры и знак +", n("validity-change", !1);
759
+ if (u.value = y, be(y)) {
760
+ w.value = m(
761
+ "Допустимы только цифры и знак + в начале",
762
+ (C = t.errorMessages) == null ? void 0 : C.invalidPhoneChars
763
+ ), n("validity-change", !1);
749
764
  return;
750
765
  }
751
- u.value = N, n("update:modelValue", N), V.value = N;
752
- const M = he(
753
- N,
766
+ u.value = k, n("update:modelValue", k), E.value = k;
767
+ const A = we(
768
+ k,
754
769
  i.value.phone.minDigits,
755
770
  i.value.phone.maxDigits
756
771
  );
757
- n("validity-change", M);
772
+ n("validity-change", A);
758
773
  }
759
774
  }
760
- function p() {
761
- var t, v, f;
762
- if (console.debug("✅[event] onBlur is working"), !!d.value) {
763
- if (d.value === "phone") {
764
- const b = ge(
775
+ function $() {
776
+ var d, h, y, B;
777
+ if (console.debug("✅[event] onBlur is working"), !!c.value) {
778
+ if (c.value === "phone") {
779
+ const C = he(
765
780
  u.value,
766
781
  i.value.phone.autoPlus,
767
- o.locale
768
- );
769
- if (ve(b).length < Ta) {
770
- m.value = ((t = o.errorMessages) == null ? void 0 : t.invalidPhoneLength) ?? "Это не похоже на номер телефона", n("validity-change", !1);
782
+ t.locale
783
+ ), k = ye(C);
784
+ if (be(C)) {
785
+ w.value = m(
786
+ "Допустимы только цифры и знак + в начале",
787
+ (d = t.errorMessages) == null ? void 0 : d.invalidPhoneChars
788
+ ), n("validity-change", !1);
789
+ return;
790
+ }
791
+ if (k.length < Ba) {
792
+ w.value = m(
793
+ "Это не похоже на номер телефона",
794
+ (h = t.errorMessages) == null ? void 0 : h.invalidPhoneLength
795
+ ), n("validity-change", !1);
771
796
  return;
772
797
  }
773
- const N = he(
774
- b,
798
+ const M = we(
799
+ C,
775
800
  i.value.phone.minDigits,
776
801
  i.value.phone.maxDigits
777
802
  );
778
- m.value = N ? "" : ((v = o.errorMessages) == null ? void 0 : v.invalidPhoneLength) ?? "Это не похоже на номер телефона", n("validity-change", N);
803
+ w.value = M ? "" : m(
804
+ "Это не похоже на номер телефона",
805
+ (y = t.errorMessages) == null ? void 0 : y.invalidPhoneLength
806
+ ), n("validity-change", M);
779
807
  }
780
- if (d.value === "email") {
781
- const b = ye(u.value);
782
- m.value = b ? "" : ((f = o.errorMessages) == null ? void 0 : f.invalidEmail) ?? "Это не похоже на email", n("validity-change", b);
808
+ if (c.value === "email") {
809
+ const C = Ee(u.value);
810
+ w.value = C ? "" : m(
811
+ "Это не похоже на email",
812
+ (B = t.errorMessages) == null ? void 0 : B.invalidEmail
813
+ ), n("validity-change", C);
783
814
  }
784
815
  }
785
816
  }
786
- function h() {
787
- var v;
788
- const t = (v = g.value) == null ? void 0 : v.$el;
789
- return t ? t.querySelector("input") : null;
817
+ function L() {
818
+ var h;
819
+ const d = (h = v.value) == null ? void 0 : h.$el;
820
+ return d ? d.querySelector("input") : null;
790
821
  }
791
- function C(t) {
792
- const v = h();
793
- if (!v) return;
794
- const f = v.selectionStart ?? t.length;
795
- v.value = t, requestAnimationFrame(() => {
796
- v.setSelectionRange(f, f);
822
+ function R(d) {
823
+ const h = L();
824
+ if (!h) return;
825
+ const y = h.selectionStart ?? d.length;
826
+ h.value = d, requestAnimationFrame(() => {
827
+ h.setSelectionRange(y, y);
797
828
  });
798
829
  }
799
- return (t, v) => (P(), U("div", Aa, [
800
- w(c(R), {
830
+ return (d, h) => (N(), F("div", Aa, [
831
+ P(p(j), {
801
832
  ref_key: "inputRef",
802
- ref: g,
833
+ ref: v,
803
834
  "model-value": u.value,
804
- readonly: t.disabled,
805
- error: m.value,
806
- type: t.type ?? "text",
807
- size: t.size ?? "large",
808
- label: t.label ?? "Email или телефон",
809
- onInput: E,
810
- onBlur: p
835
+ readonly: d.disabled,
836
+ error: w.value,
837
+ type: d.type ?? "text",
838
+ size: d.size ?? "large",
839
+ label: x.value,
840
+ onInput: l,
841
+ onBlur: $
811
842
  }, null, 8, ["model-value", "readonly", "error", "type", "size", "label"]),
812
- d.value === "phone" ? (P(), S(c(ta), {
843
+ c.value === "phone" ? (N(), z(p(oa), {
813
844
  key: 0,
814
845
  class: "smart-input__icon"
815
- })) : D("", !0),
816
- d.value === "email" ? (P(), S(c(oa), {
846
+ })) : U("", !0),
847
+ c.value === "email" ? (N(), z(p(ra), {
817
848
  key: 1,
818
849
  class: "smart-input__icon"
819
- })) : D("", !0)
850
+ })) : U("", !0)
820
851
  ]));
821
852
  }
822
- }), Ra = /* @__PURE__ */ Ee(Fa, [["__scopeId", "data-v-a4c487e2"]]);
853
+ }), _a = /* @__PURE__ */ ke(Fa, [["__scopeId", "data-v-3f64f8a0"]]);
823
854
  export {
824
855
  za as B,
825
856
  $a as C,
826
- Ee as _,
857
+ ke as _,
827
858
  La as a,
828
- ia as g,
829
- Ra as i,
830
- oe as p,
831
- ma as t
859
+ da as g,
860
+ _a as i,
861
+ re as p,
862
+ le as t
832
863
  };