@redneckz/wildless-cms-uni-blocks 0.14.930 → 0.14.932

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/bundle/bundle.umd.js +29 -15
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/retail/utils/latinFieldsUtils.d.ts +5 -2
  4. package/dist/retail/components/Fields/LatinNameField.js +6 -5
  5. package/dist/retail/components/Fields/LatinNameField.js.map +1 -1
  6. package/dist/retail/components/Fields/LatinSurnameField.js +6 -5
  7. package/dist/retail/components/Fields/LatinSurnameField.js.map +1 -1
  8. package/dist/retail/utils/latinFieldsUtils.d.ts +5 -2
  9. package/dist/retail/utils/latinFieldsUtils.js +16 -4
  10. package/dist/retail/utils/latinFieldsUtils.js.map +1 -1
  11. package/dist/ui-kit/YandexMap/useYandexMaps.js +1 -2
  12. package/dist/ui-kit/YandexMap/useYandexMaps.js.map +1 -1
  13. package/dist/wlc.json +0 -1
  14. package/lib/retail/components/Fields/LatinNameField.js +7 -6
  15. package/lib/retail/components/Fields/LatinNameField.js.map +1 -1
  16. package/lib/retail/components/Fields/LatinSurnameField.js +7 -6
  17. package/lib/retail/components/Fields/LatinSurnameField.js.map +1 -1
  18. package/lib/retail/utils/latinFieldsUtils.d.ts +5 -2
  19. package/lib/retail/utils/latinFieldsUtils.js +14 -2
  20. package/lib/retail/utils/latinFieldsUtils.js.map +1 -1
  21. package/lib/ui-kit/YandexMap/useYandexMaps.js +1 -2
  22. package/lib/ui-kit/YandexMap/useYandexMaps.js.map +1 -1
  23. package/lib/wlc.json +0 -1
  24. package/mobile/bundle/bundle.umd.js +29 -15
  25. package/mobile/bundle/bundle.umd.min.js +1 -1
  26. package/mobile/bundle/retail/utils/latinFieldsUtils.d.ts +5 -2
  27. package/mobile/dist/retail/components/Fields/LatinNameField.js +6 -5
  28. package/mobile/dist/retail/components/Fields/LatinNameField.js.map +1 -1
  29. package/mobile/dist/retail/components/Fields/LatinSurnameField.js +6 -5
  30. package/mobile/dist/retail/components/Fields/LatinSurnameField.js.map +1 -1
  31. package/mobile/dist/retail/utils/latinFieldsUtils.d.ts +5 -2
  32. package/mobile/dist/retail/utils/latinFieldsUtils.js +16 -4
  33. package/mobile/dist/retail/utils/latinFieldsUtils.js.map +1 -1
  34. package/mobile/dist/ui-kit/YandexMap/useYandexMaps.js +1 -2
  35. package/mobile/dist/ui-kit/YandexMap/useYandexMaps.js.map +1 -1
  36. package/mobile/dist/wlc.json +0 -1
  37. package/mobile/lib/retail/components/Fields/LatinNameField.js +7 -6
  38. package/mobile/lib/retail/components/Fields/LatinNameField.js.map +1 -1
  39. package/mobile/lib/retail/components/Fields/LatinSurnameField.js +7 -6
  40. package/mobile/lib/retail/components/Fields/LatinSurnameField.js.map +1 -1
  41. package/mobile/lib/retail/utils/latinFieldsUtils.d.ts +5 -2
  42. package/mobile/lib/retail/utils/latinFieldsUtils.js +14 -2
  43. package/mobile/lib/retail/utils/latinFieldsUtils.js.map +1 -1
  44. package/mobile/lib/ui-kit/YandexMap/useYandexMaps.js +1 -2
  45. package/mobile/lib/ui-kit/YandexMap/useYandexMaps.js.map +1 -1
  46. package/mobile/lib/wlc.json +0 -1
  47. package/mobile/src/retail/components/Fields/LatinNameField.tsx +14 -11
  48. package/mobile/src/retail/components/Fields/LatinSurnameField.tsx +13 -11
  49. package/mobile/src/retail/utils/latinFieldsUtils.ts +17 -2
  50. package/mobile/src/ui-kit/YandexMap/useYandexMaps.ts +1 -4
  51. package/mobile/src/wlc.json +1 -1
  52. package/package.json +1 -1
  53. package/src/retail/components/Fields/LatinNameField.tsx +14 -11
  54. package/src/retail/components/Fields/LatinSurnameField.tsx +13 -11
  55. package/src/retail/utils/latinFieldsUtils.ts +17 -2
  56. package/src/ui-kit/YandexMap/useYandexMaps.ts +1 -4
  57. package/src/wlc.json +1 -1
@@ -1,2 +1,5 @@
1
- export declare const isLatin: (_?: string) => boolean;
2
- export declare const autoTranslateToLatin: (str: string) => string;
1
+ export declare const isValidLatin: (currentValue?: string, secondValue?: string) => boolean;
2
+ export declare const getLatinNames: (name: string, surname: string) => {
3
+ translatedName: string;
4
+ translatedSurame: string;
5
+ };
@@ -5,19 +5,20 @@ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const hooks_1 = require("@redneckz/uni-jsx/lib/hooks");
6
6
  const InputControl_1 = require("../../../ui-kit/Input/InputControl");
7
7
  const latinFieldsUtils_1 = require("../../utils/latinFieldsUtils");
8
- const MAX_LENGTH = 20;
9
8
  exports.LatinNameField = (0, uni_jsx_1.JSX)(({ field, input }) => {
10
9
  const latinSurname = field('latinSurname')?.value;
11
10
  const name = field('name')?.value;
11
+ const surname = field('surname')?.value;
12
12
  const handleChangeLatinName = field('latinName')?.onChange;
13
13
  (0, hooks_1.useEffect)(() => {
14
- handleChangeLatinName?.((0, latinFieldsUtils_1.autoTranslateToLatin)(name));
14
+ const { translatedName } = (0, latinFieldsUtils_1.getLatinNames)(name, surname);
15
+ handleChangeLatinName?.(translatedName);
15
16
  }, []);
16
17
  const onChange = (0, hooks_1.useCallback)((value) => {
17
- if ((0, latinFieldsUtils_1.isLatin)(value) || value.length === 0) {
18
+ if ((0, latinFieldsUtils_1.isValidLatin)(value, latinSurname) || value.length === 0) {
18
19
  handleChangeLatinName?.(value.toUpperCase());
19
20
  }
20
- }, []);
21
- return ((0, jsx_runtime_1.jsx)(InputControl_1.InputControl, { label: "\u0418\u043C\u044F", placeholder: "\u0418\u043C\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", maxLength: Math.max(MAX_LENGTH - latinSurname?.length, 1), ...field(input?.name ?? ''), onChange: onChange, ...input }));
21
+ }, [latinSurname]);
22
+ return ((0, jsx_runtime_1.jsx)(InputControl_1.InputControl, { label: "\u0418\u043C\u044F", placeholder: "\u0418\u043C\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", ...field(input?.name ?? ''), onChange: onChange, ...input }));
22
23
  });
23
24
  //# sourceMappingURL=LatinNameField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LatinNameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinNameField.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uDAAqE;AAErE,qEAAkE;AAClE,mEAA6E;AAE7E,MAAM,UAAU,GAAG,EAAE,CAAC;AAET,QAAA,cAAc,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IACvE,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC;IAClD,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAC1C,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC;IAE3D,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,qBAAqB,EAAE,CAAC,IAAA,uCAAoB,EAAC,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,CAAC,KAAa,EAAE,EAAE;QAC7C,IAAI,IAAA,0BAAO,EAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,qBAAqB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SAC9C;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,uBAAC,2BAAY,IACX,KAAK,EAAC,oBAAK,EACX,WAAW,EAAC,4HAAwB,EACpC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,KACrD,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"LatinNameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinNameField.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uDAAqE;AAErE,qEAAkE;AAClE,mEAA2E;AAE9D,QAAA,cAAc,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IACvE,MAAM,YAAY,GAAW,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC;IAC1D,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAC1C,MAAM,OAAO,GAAW,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAChD,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC;IAE3D,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,EAAE,cAAc,EAAE,GAAG,IAAA,gCAAa,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAExD,qBAAqB,EAAE,CAAC,cAAc,CAAC,CAAC;IAC1C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAC1B,CAAC,KAAa,EAAE,EAAE;QAChB,IAAI,IAAA,+BAAY,EAAC,KAAK,EAAE,YAAY,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3D,qBAAqB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SAC9C;IACH,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,OAAO,CACL,uBAAC,2BAAY,IACX,KAAK,EAAC,oBAAK,EACX,WAAW,EAAC,4HAAwB,KAChC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -5,19 +5,20 @@ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const hooks_1 = require("@redneckz/uni-jsx/lib/hooks");
6
6
  const InputControl_1 = require("../../../ui-kit/Input/InputControl");
7
7
  const latinFieldsUtils_1 = require("../../utils/latinFieldsUtils");
8
- const MAX_LENGTH = 20;
9
8
  exports.LatinSurnameField = (0, uni_jsx_1.JSX)(({ field, input }) => {
10
9
  const latinName = field('latinName')?.value;
10
+ const name = field('name')?.value;
11
11
  const surname = field('surname')?.value;
12
12
  const handleChangeLatinSurname = field('latinSurname')?.onChange;
13
13
  (0, hooks_1.useEffect)(() => {
14
- handleChangeLatinSurname?.((0, latinFieldsUtils_1.autoTranslateToLatin)(surname));
14
+ const { translatedSurame } = (0, latinFieldsUtils_1.getLatinNames)(name, surname);
15
+ handleChangeLatinSurname?.(translatedSurame);
15
16
  }, []);
16
17
  const onChange = (0, hooks_1.useCallback)((value) => {
17
- if ((0, latinFieldsUtils_1.isLatin)(value) || value.length === 0) {
18
+ if ((0, latinFieldsUtils_1.isValidLatin)(value, latinName) || value.length === 0) {
18
19
  handleChangeLatinSurname?.(value.toUpperCase());
19
20
  }
20
- }, []);
21
- return ((0, jsx_runtime_1.jsx)(InputControl_1.InputControl, { label: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F", placeholder: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", maxLength: Math.max(MAX_LENGTH - latinName?.length, 1), ...field(input?.name ?? ''), onChange: onChange, ...input }));
21
+ }, [latinName]);
22
+ return ((0, jsx_runtime_1.jsx)(InputControl_1.InputControl, { label: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F", placeholder: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", ...field(input?.name ?? ''), onChange: onChange, ...input }));
22
23
  });
23
24
  //# sourceMappingURL=LatinSurnameField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LatinSurnameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinSurnameField.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uDAAqE;AAErE,qEAAkE;AAClE,mEAA6E;AAE7E,MAAM,UAAU,GAAG,EAAE,CAAC;AAET,QAAA,iBAAiB,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC1E,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC5C,MAAM,OAAO,GAAW,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAEhD,MAAM,wBAAwB,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAEjE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,wBAAwB,EAAE,CAAC,IAAA,uCAAoB,EAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,CAAC,KAAa,EAAE,EAAE;QAC7C,IAAI,IAAA,0BAAO,EAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,wBAAwB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SACjD;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,uBAAC,2BAAY,IACX,KAAK,EAAC,4CAAS,EACf,WAAW,EAAC,oJAA4B,EACxC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,KAClD,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"LatinSurnameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinSurnameField.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uDAAqE;AAErE,qEAAkE;AAClE,mEAA2E;AAE9D,QAAA,iBAAiB,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC1E,MAAM,SAAS,GAAW,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IACpD,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAC1C,MAAM,OAAO,GAAW,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAEhD,MAAM,wBAAwB,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAEjE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,gCAAa,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1D,wBAAwB,EAAE,CAAC,gBAAgB,CAAC,CAAC;IAC/C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAC1B,CAAC,KAAa,EAAE,EAAE;QAChB,IAAI,IAAA,+BAAY,EAAC,KAAK,EAAE,SAAS,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACxD,wBAAwB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SACjD;IACH,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,OAAO,CACL,uBAAC,2BAAY,IACX,KAAK,EAAC,4CAAS,EACf,WAAW,EAAC,oJAA4B,KACpC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,2 +1,5 @@
1
- export declare const isLatin: (_?: string) => boolean;
2
- export declare const autoTranslateToLatin: (str: string) => string;
1
+ export declare const isValidLatin: (currentValue?: string, secondValue?: string) => boolean;
2
+ export declare const getLatinNames: (name: string, surname: string) => {
3
+ translatedName: string;
4
+ translatedSurame: string;
5
+ };
@@ -1,8 +1,9 @@
1
1
  Object.defineProperty(exports, "__esModule", { value: true });
2
- exports.autoTranslateToLatin = exports.isLatin = void 0;
2
+ exports.getLatinNames = exports.isValidLatin = void 0;
3
+ const MAX_LENGTH = 20;
3
4
  const latinPattern = /^[\u0041-\u005A\u0061-\u007A\s]+$/u;
4
- const isLatin = (_ = '') => latinPattern.test(_);
5
- exports.isLatin = isLatin;
5
+ const isValidLatin = (currentValue = '', secondValue = '') => latinPattern.test(currentValue) && secondValue.length < MAX_LENGTH;
6
+ exports.isValidLatin = isValidLatin;
6
7
  const REPLACER = {
7
8
  А: 'A',
8
9
  Б: 'B',
@@ -78,5 +79,16 @@ const REPLACER = {
78
79
  ' ': ' ',
79
80
  };
80
81
  const autoTranslateToLatin = (str) => str.replace(/[А-ЯЁа-яё,. -]/g, (_) => REPLACER[_.toLowerCase()].toUpperCase() || '');
81
- exports.autoTranslateToLatin = autoTranslateToLatin;
82
+ const getLatinNames = (name, surname) => {
83
+ let translatedName = autoTranslateToLatin(name);
84
+ const translatedSurame = autoTranslateToLatin(surname).substring(0, MAX_LENGTH);
85
+ if (translatedSurame.length === MAX_LENGTH) {
86
+ translatedName = '';
87
+ }
88
+ else if (translatedName.length + translatedSurame.length > MAX_LENGTH) {
89
+ translatedName.substring(0, 1);
90
+ }
91
+ return { translatedName, translatedSurame };
92
+ };
93
+ exports.getLatinNames = getLatinNames;
82
94
  //# sourceMappingURL=latinFieldsUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"latinFieldsUtils.js","sourceRoot":"","sources":["../../../src/retail/utils/latinFieldsUtils.ts"],"names":[],"mappings":";;AAAA,MAAM,YAAY,GAAG,oCAAoC,CAAC;AAEnD,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAA3C,QAAA,OAAO,WAAoC;AAExD,MAAM,QAAQ,GAAG;IACf,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,EAAE,EAAE,EAAE;IACN,aAAa;IACb,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;CACT,CAAC;AAEK,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAU,EAAE,CAC1D,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAD1E,QAAA,oBAAoB,wBACsD"}
1
+ {"version":3,"file":"latinFieldsUtils.js","sourceRoot":"","sources":["../../../src/retail/utils/latinFieldsUtils.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
1
  Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.useYandexMaps = void 0;
3
3
  const useExternalNS_1 = require("../../hooks/useExternalNS");
4
- const ProjectSettings_1 = require("../../ProjectSettings");
5
4
  const YMAPS_NAMESPACE = 'ymaps';
6
5
  const useYandexMaps = () => {
7
- const url = `https://api-maps.yandex.ru/2.1/?apikey=${ProjectSettings_1.projectSettings.YANDEX_MAP_API_KEY || ''}&lang=ru_RU`;
6
+ const url = `https://api-maps.yandex.ru/2.1/?lang=ru_RU`;
8
7
  return (0, useExternalNS_1.useExternalNS)(YMAPS_NAMESPACE, url, false);
9
8
  };
10
9
  exports.useYandexMaps = useYandexMaps;
@@ -1 +1 @@
1
- {"version":3,"file":"useYandexMaps.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/useYandexMaps.ts"],"names":[],"mappings":";;AACA,6DAA0D;AAC1D,2DAAwD;AAExD,MAAM,eAAe,GAAG,OAAO,CAAC;AAEzB,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,GAAG,GAAG,0CACV,iCAAe,CAAC,kBAAkB,IAAI,EACxC,aAAa,CAAC;IAEd,OAAO,IAAA,6BAAa,EAAe,eAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC,CAAC;AANW,QAAA,aAAa,iBAMxB"}
1
+ {"version":3,"file":"useYandexMaps.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/useYandexMaps.ts"],"names":[],"mappings":";;AACA,6DAA0D;AAE1D,MAAM,eAAe,GAAG,OAAO,CAAC;AAEzB,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,GAAG,GAAG,4CAA4C,CAAC;IAEzD,OAAO,IAAA,6BAAa,EAAe,eAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC,CAAC;AAJW,QAAA,aAAa,iBAIxB"}
@@ -1,5 +1,4 @@
1
1
  {
2
2
  "PROD_BRANCH": "master",
3
- "YANDEX_MAP_API_KEY": "f4b40c1e-1891-45f2-b307-90c481af210b",
4
3
  "CHAT_BOT": "personal"
5
4
  }
@@ -2,20 +2,21 @@ import { jsx as _jsx } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
3
  import { useCallback, useEffect } from '@redneckz/uni-jsx/lib/hooks';
4
4
  import { InputControl } from '../../../ui-kit/Input/InputControl.js';
5
- import { autoTranslateToLatin, isLatin } from '../../utils/latinFieldsUtils.js';
6
- const MAX_LENGTH = 20;
5
+ import { getLatinNames, isValidLatin } from '../../utils/latinFieldsUtils.js';
7
6
  export const LatinNameField = JSX(({ field, input }) => {
8
7
  const latinSurname = field('latinSurname')?.value;
9
8
  const name = field('name')?.value;
9
+ const surname = field('surname')?.value;
10
10
  const handleChangeLatinName = field('latinName')?.onChange;
11
11
  useEffect(() => {
12
- handleChangeLatinName?.(autoTranslateToLatin(name));
12
+ const { translatedName } = getLatinNames(name, surname);
13
+ handleChangeLatinName?.(translatedName);
13
14
  }, []);
14
15
  const onChange = useCallback((value) => {
15
- if (isLatin(value) || value.length === 0) {
16
+ if (isValidLatin(value, latinSurname) || value.length === 0) {
16
17
  handleChangeLatinName?.(value.toUpperCase());
17
18
  }
18
- }, []);
19
- return (_jsx(InputControl, { label: "\u0418\u043C\u044F", placeholder: "\u0418\u043C\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", maxLength: Math.max(MAX_LENGTH - latinSurname?.length, 1), ...field(input?.name ?? ''), onChange: onChange, ...input }));
19
+ }, [latinSurname]);
20
+ return (_jsx(InputControl, { label: "\u0418\u043C\u044F", placeholder: "\u0418\u043C\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", ...field(input?.name ?? ''), onChange: onChange, ...input }));
20
21
  });
21
22
  //# sourceMappingURL=LatinNameField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LatinNameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinNameField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAE7E,MAAM,UAAU,GAAG,EAAE,CAAC;AAEtB,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IACvE,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC;IAClD,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAC1C,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE;QACb,qBAAqB,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,EAAE;QAC7C,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,qBAAqB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SAC9C;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,KAAC,YAAY,IACX,KAAK,EAAC,oBAAK,EACX,WAAW,EAAC,4HAAwB,EACpC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,KACrD,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"LatinNameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinNameField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE3E,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IACvE,MAAM,YAAY,GAAW,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC;IAC1D,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAC1C,MAAM,OAAO,GAAW,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAChD,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAExD,qBAAqB,EAAE,CAAC,cAAc,CAAC,CAAC;IAC1C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,KAAa,EAAE,EAAE;QAChB,IAAI,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3D,qBAAqB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SAC9C;IACH,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,OAAO,CACL,KAAC,YAAY,IACX,KAAK,EAAC,oBAAK,EACX,WAAW,EAAC,4HAAwB,KAChC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -2,20 +2,21 @@ import { jsx as _jsx } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
3
  import { useCallback, useEffect } from '@redneckz/uni-jsx/lib/hooks';
4
4
  import { InputControl } from '../../../ui-kit/Input/InputControl.js';
5
- import { autoTranslateToLatin, isLatin } from '../../utils/latinFieldsUtils.js';
6
- const MAX_LENGTH = 20;
5
+ import { getLatinNames, isValidLatin } from '../../utils/latinFieldsUtils.js';
7
6
  export const LatinSurnameField = JSX(({ field, input }) => {
8
7
  const latinName = field('latinName')?.value;
8
+ const name = field('name')?.value;
9
9
  const surname = field('surname')?.value;
10
10
  const handleChangeLatinSurname = field('latinSurname')?.onChange;
11
11
  useEffect(() => {
12
- handleChangeLatinSurname?.(autoTranslateToLatin(surname));
12
+ const { translatedSurame } = getLatinNames(name, surname);
13
+ handleChangeLatinSurname?.(translatedSurame);
13
14
  }, []);
14
15
  const onChange = useCallback((value) => {
15
- if (isLatin(value) || value.length === 0) {
16
+ if (isValidLatin(value, latinName) || value.length === 0) {
16
17
  handleChangeLatinSurname?.(value.toUpperCase());
17
18
  }
18
- }, []);
19
- return (_jsx(InputControl, { label: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F", placeholder: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", maxLength: Math.max(MAX_LENGTH - latinName?.length, 1), ...field(input?.name ?? ''), onChange: onChange, ...input }));
19
+ }, [latinName]);
20
+ return (_jsx(InputControl, { label: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F", placeholder: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u043C\u0438 \u0431\u0443\u043A\u0432\u0430\u043C\u0438", ...field(input?.name ?? ''), onChange: onChange, ...input }));
20
21
  });
21
22
  //# sourceMappingURL=LatinSurnameField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LatinSurnameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinSurnameField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAE7E,MAAM,UAAU,GAAG,EAAE,CAAC;AAEtB,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC1E,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC5C,MAAM,OAAO,GAAW,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAEhD,MAAM,wBAAwB,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAEjE,SAAS,CAAC,GAAG,EAAE;QACb,wBAAwB,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,EAAE;QAC7C,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,wBAAwB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SACjD;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,KAAC,YAAY,IACX,KAAK,EAAC,4CAAS,EACf,WAAW,EAAC,oJAA4B,EACxC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,KAClD,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"LatinSurnameField.js","sourceRoot":"","sources":["../../../../src/retail/components/Fields/LatinSurnameField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC1E,MAAM,SAAS,GAAW,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IACpD,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAC1C,MAAM,OAAO,GAAW,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAEhD,MAAM,wBAAwB,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAEjE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,gBAAgB,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1D,wBAAwB,EAAE,CAAC,gBAAgB,CAAC,CAAC;IAC/C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,KAAa,EAAE,EAAE;QAChB,IAAI,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACxD,wBAAwB,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SACjD;IACH,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,OAAO,CACL,KAAC,YAAY,IACX,KAAK,EAAC,4CAAS,EACf,WAAW,EAAC,oJAA4B,KACpC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,EAC5B,QAAQ,EAAE,QAAQ,KACd,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,2 +1,5 @@
1
- export declare const isLatin: (_?: string) => boolean;
2
- export declare const autoTranslateToLatin: (str: string) => string;
1
+ export declare const isValidLatin: (currentValue?: string, secondValue?: string) => boolean;
2
+ export declare const getLatinNames: (name: string, surname: string) => {
3
+ translatedName: string;
4
+ translatedSurame: string;
5
+ };
@@ -1,5 +1,6 @@
1
+ const MAX_LENGTH = 20;
1
2
  const latinPattern = /^[\u0041-\u005A\u0061-\u007A\s]+$/u;
2
- export const isLatin = (_ = '') => latinPattern.test(_);
3
+ export const isValidLatin = (currentValue = '', secondValue = '') => latinPattern.test(currentValue) && secondValue.length < MAX_LENGTH;
3
4
  const REPLACER = {
4
5
  А: 'A',
5
6
  Б: 'B',
@@ -74,5 +75,16 @@ const REPLACER = {
74
75
  '-': '-',
75
76
  ' ': ' ',
76
77
  };
77
- export const autoTranslateToLatin = (str) => str.replace(/[А-ЯЁа-яё,. -]/g, (_) => REPLACER[_.toLowerCase()].toUpperCase() || '');
78
+ const autoTranslateToLatin = (str) => str.replace(/[А-ЯЁа-яё,. -]/g, (_) => REPLACER[_.toLowerCase()].toUpperCase() || '');
79
+ export const getLatinNames = (name, surname) => {
80
+ let translatedName = autoTranslateToLatin(name);
81
+ const translatedSurame = autoTranslateToLatin(surname).substring(0, MAX_LENGTH);
82
+ if (translatedSurame.length === MAX_LENGTH) {
83
+ translatedName = '';
84
+ }
85
+ else if (translatedName.length + translatedSurame.length > MAX_LENGTH) {
86
+ translatedName.substring(0, 1);
87
+ }
88
+ return { translatedName, translatedSurame };
89
+ };
78
90
  //# sourceMappingURL=latinFieldsUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"latinFieldsUtils.js","sourceRoot":"","sources":["../../../src/retail/utils/latinFieldsUtils.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,oCAAoC,CAAC;AAE1D,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAExD,MAAM,QAAQ,GAAG;IACf,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,EAAE,EAAE,EAAE;IACN,aAAa;IACb,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;CACT,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAU,EAAE,CAC1D,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"latinFieldsUtils.js","sourceRoot":"","sources":["../../../src/retail/utils/latinFieldsUtils.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  import { useExternalNS } from '../../hooks/useExternalNS.js';
2
- import { projectSettings } from '../../ProjectSettings.js';
3
2
  const YMAPS_NAMESPACE = 'ymaps';
4
3
  export const useYandexMaps = () => {
5
- const url = `https://api-maps.yandex.ru/2.1/?apikey=${projectSettings.YANDEX_MAP_API_KEY || ''}&lang=ru_RU`;
4
+ const url = `https://api-maps.yandex.ru/2.1/?lang=ru_RU`;
6
5
  return useExternalNS(YMAPS_NAMESPACE, url, false);
7
6
  };
8
7
  //# sourceMappingURL=useYandexMaps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useYandexMaps.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/useYandexMaps.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,eAAe,GAAG,OAAO,CAAC;AAEhC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,GAAG,GAAG,0CACV,eAAe,CAAC,kBAAkB,IAAI,EACxC,aAAa,CAAC;IAEd,OAAO,aAAa,CAAe,eAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC,CAAC"}
1
+ {"version":3,"file":"useYandexMaps.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/useYandexMaps.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,MAAM,eAAe,GAAG,OAAO,CAAC;AAEhC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,GAAG,GAAG,4CAA4C,CAAC;IAEzD,OAAO,aAAa,CAAe,eAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
1
  {
2
2
  "PROD_BRANCH": "master",
3
- "YANDEX_MAP_API_KEY": "f4b40c1e-1891-45f2-b307-90c481af210b",
4
3
  "CHAT_BOT": "personal"
5
4
  }
@@ -2,30 +2,33 @@ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useCallback, useEffect } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
4
4
  import { InputControl } from '../../../ui-kit/Input/InputControl';
5
- import { autoTranslateToLatin, isLatin } from '../../utils/latinFieldsUtils';
6
-
7
- const MAX_LENGTH = 20;
5
+ import { getLatinNames, isValidLatin } from '../../utils/latinFieldsUtils';
8
6
 
9
7
  export const LatinNameField = JSX<CustomFieldProps>(({ field, input }) => {
10
- const latinSurname = field('latinSurname')?.value;
8
+ const latinSurname: string = field('latinSurname')?.value;
11
9
  const name: string = field('name')?.value;
10
+ const surname: string = field('surname')?.value;
12
11
  const handleChangeLatinName = field('latinName')?.onChange;
13
12
 
14
13
  useEffect(() => {
15
- handleChangeLatinName?.(autoTranslateToLatin(name));
16
- }, []);
14
+ const { translatedName } = getLatinNames(name, surname);
17
15
 
18
- const onChange = useCallback((value: string) => {
19
- if (isLatin(value) || value.length === 0) {
20
- handleChangeLatinName?.(value.toUpperCase());
21
- }
16
+ handleChangeLatinName?.(translatedName);
22
17
  }, []);
23
18
 
19
+ const onChange = useCallback(
20
+ (value: string) => {
21
+ if (isValidLatin(value, latinSurname) || value.length === 0) {
22
+ handleChangeLatinName?.(value.toUpperCase());
23
+ }
24
+ },
25
+ [latinSurname],
26
+ );
27
+
24
28
  return (
25
29
  <InputControl
26
30
  label="Имя"
27
31
  placeholder="Имя латинскими буквами"
28
- maxLength={Math.max(MAX_LENGTH - latinSurname?.length, 1)}
29
32
  {...field(input?.name ?? '')}
30
33
  onChange={onChange}
31
34
  {...input}
@@ -2,31 +2,33 @@ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useCallback, useEffect } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
4
4
  import { InputControl } from '../../../ui-kit/Input/InputControl';
5
- import { autoTranslateToLatin, isLatin } from '../../utils/latinFieldsUtils';
6
-
7
- const MAX_LENGTH = 20;
5
+ import { getLatinNames, isValidLatin } from '../../utils/latinFieldsUtils';
8
6
 
9
7
  export const LatinSurnameField = JSX<CustomFieldProps>(({ field, input }) => {
10
- const latinName = field('latinName')?.value;
8
+ const latinName: string = field('latinName')?.value;
9
+ const name: string = field('name')?.value;
11
10
  const surname: string = field('surname')?.value;
12
11
 
13
12
  const handleChangeLatinSurname = field('latinSurname')?.onChange;
14
13
 
15
14
  useEffect(() => {
16
- handleChangeLatinSurname?.(autoTranslateToLatin(surname));
15
+ const { translatedSurame } = getLatinNames(name, surname);
16
+ handleChangeLatinSurname?.(translatedSurame);
17
17
  }, []);
18
18
 
19
- const onChange = useCallback((value: string) => {
20
- if (isLatin(value) || value.length === 0) {
21
- handleChangeLatinSurname?.(value.toUpperCase());
22
- }
23
- }, []);
19
+ const onChange = useCallback(
20
+ (value: string) => {
21
+ if (isValidLatin(value, latinName) || value.length === 0) {
22
+ handleChangeLatinSurname?.(value.toUpperCase());
23
+ }
24
+ },
25
+ [latinName],
26
+ );
24
27
 
25
28
  return (
26
29
  <InputControl
27
30
  label="Фамилия"
28
31
  placeholder="Фамилия латинскими буквами"
29
- maxLength={Math.max(MAX_LENGTH - latinName?.length, 1)}
30
32
  {...field(input?.name ?? '')}
31
33
  onChange={onChange}
32
34
  {...input}
@@ -1,6 +1,8 @@
1
+ const MAX_LENGTH = 20;
1
2
  const latinPattern = /^[\u0041-\u005A\u0061-\u007A\s]+$/u;
2
3
 
3
- export const isLatin = (_ = '') => latinPattern.test(_);
4
+ export const isValidLatin = (currentValue = '', secondValue = '') =>
5
+ latinPattern.test(currentValue) && secondValue.length < MAX_LENGTH;
4
6
 
5
7
  const REPLACER = {
6
8
  А: 'A',
@@ -77,5 +79,18 @@ const REPLACER = {
77
79
  ' ': ' ',
78
80
  };
79
81
 
80
- export const autoTranslateToLatin = (str: string): string =>
82
+ const autoTranslateToLatin = (str: string): string =>
81
83
  str.replace(/[А-ЯЁа-яё,. -]/g, (_) => REPLACER[_.toLowerCase()].toUpperCase() || '');
84
+
85
+ export const getLatinNames = (name: string, surname: string) => {
86
+ let translatedName = autoTranslateToLatin(name);
87
+ const translatedSurame = autoTranslateToLatin(surname).substring(0, MAX_LENGTH);
88
+
89
+ if (translatedSurame.length === MAX_LENGTH) {
90
+ translatedName = '';
91
+ } else if (translatedName.length + translatedSurame.length > MAX_LENGTH) {
92
+ translatedName.substring(0, 1);
93
+ }
94
+
95
+ return { translatedName, translatedSurame };
96
+ };
@@ -1,13 +1,10 @@
1
1
  import type ymaps from 'yandex-maps';
2
2
  import { useExternalNS } from '../../hooks/useExternalNS';
3
- import { projectSettings } from '../../ProjectSettings';
4
3
 
5
4
  const YMAPS_NAMESPACE = 'ymaps';
6
5
 
7
6
  export const useYandexMaps = () => {
8
- const url = `https://api-maps.yandex.ru/2.1/?apikey=${
9
- projectSettings.YANDEX_MAP_API_KEY || ''
10
- }&lang=ru_RU`;
7
+ const url = `https://api-maps.yandex.ru/2.1/?lang=ru_RU`;
11
8
 
12
9
  return useExternalNS<typeof ymaps>(YMAPS_NAMESPACE, url, false);
13
10
  };
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "PROD_BRANCH": "master",
3
- "YANDEX_MAP_API_KEY": "f4b40c1e-1891-45f2-b307-90c481af210b",
4
3
  "CHAT_BOT": "personal"
5
4
  }
5
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.930",
3
+ "version": "0.14.932",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -2,30 +2,33 @@ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useCallback, useEffect } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
4
4
  import { InputControl } from '../../../ui-kit/Input/InputControl';
5
- import { autoTranslateToLatin, isLatin } from '../../utils/latinFieldsUtils';
6
-
7
- const MAX_LENGTH = 20;
5
+ import { getLatinNames, isValidLatin } from '../../utils/latinFieldsUtils';
8
6
 
9
7
  export const LatinNameField = JSX<CustomFieldProps>(({ field, input }) => {
10
- const latinSurname = field('latinSurname')?.value;
8
+ const latinSurname: string = field('latinSurname')?.value;
11
9
  const name: string = field('name')?.value;
10
+ const surname: string = field('surname')?.value;
12
11
  const handleChangeLatinName = field('latinName')?.onChange;
13
12
 
14
13
  useEffect(() => {
15
- handleChangeLatinName?.(autoTranslateToLatin(name));
16
- }, []);
14
+ const { translatedName } = getLatinNames(name, surname);
17
15
 
18
- const onChange = useCallback((value: string) => {
19
- if (isLatin(value) || value.length === 0) {
20
- handleChangeLatinName?.(value.toUpperCase());
21
- }
16
+ handleChangeLatinName?.(translatedName);
22
17
  }, []);
23
18
 
19
+ const onChange = useCallback(
20
+ (value: string) => {
21
+ if (isValidLatin(value, latinSurname) || value.length === 0) {
22
+ handleChangeLatinName?.(value.toUpperCase());
23
+ }
24
+ },
25
+ [latinSurname],
26
+ );
27
+
24
28
  return (
25
29
  <InputControl
26
30
  label="Имя"
27
31
  placeholder="Имя латинскими буквами"
28
- maxLength={Math.max(MAX_LENGTH - latinSurname?.length, 1)}
29
32
  {...field(input?.name ?? '')}
30
33
  onChange={onChange}
31
34
  {...input}
@@ -2,31 +2,33 @@ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useCallback, useEffect } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
4
4
  import { InputControl } from '../../../ui-kit/Input/InputControl';
5
- import { autoTranslateToLatin, isLatin } from '../../utils/latinFieldsUtils';
6
-
7
- const MAX_LENGTH = 20;
5
+ import { getLatinNames, isValidLatin } from '../../utils/latinFieldsUtils';
8
6
 
9
7
  export const LatinSurnameField = JSX<CustomFieldProps>(({ field, input }) => {
10
- const latinName = field('latinName')?.value;
8
+ const latinName: string = field('latinName')?.value;
9
+ const name: string = field('name')?.value;
11
10
  const surname: string = field('surname')?.value;
12
11
 
13
12
  const handleChangeLatinSurname = field('latinSurname')?.onChange;
14
13
 
15
14
  useEffect(() => {
16
- handleChangeLatinSurname?.(autoTranslateToLatin(surname));
15
+ const { translatedSurame } = getLatinNames(name, surname);
16
+ handleChangeLatinSurname?.(translatedSurame);
17
17
  }, []);
18
18
 
19
- const onChange = useCallback((value: string) => {
20
- if (isLatin(value) || value.length === 0) {
21
- handleChangeLatinSurname?.(value.toUpperCase());
22
- }
23
- }, []);
19
+ const onChange = useCallback(
20
+ (value: string) => {
21
+ if (isValidLatin(value, latinName) || value.length === 0) {
22
+ handleChangeLatinSurname?.(value.toUpperCase());
23
+ }
24
+ },
25
+ [latinName],
26
+ );
24
27
 
25
28
  return (
26
29
  <InputControl
27
30
  label="Фамилия"
28
31
  placeholder="Фамилия латинскими буквами"
29
- maxLength={Math.max(MAX_LENGTH - latinName?.length, 1)}
30
32
  {...field(input?.name ?? '')}
31
33
  onChange={onChange}
32
34
  {...input}
@@ -1,6 +1,8 @@
1
+ const MAX_LENGTH = 20;
1
2
  const latinPattern = /^[\u0041-\u005A\u0061-\u007A\s]+$/u;
2
3
 
3
- export const isLatin = (_ = '') => latinPattern.test(_);
4
+ export const isValidLatin = (currentValue = '', secondValue = '') =>
5
+ latinPattern.test(currentValue) && secondValue.length < MAX_LENGTH;
4
6
 
5
7
  const REPLACER = {
6
8
  А: 'A',
@@ -77,5 +79,18 @@ const REPLACER = {
77
79
  ' ': ' ',
78
80
  };
79
81
 
80
- export const autoTranslateToLatin = (str: string): string =>
82
+ const autoTranslateToLatin = (str: string): string =>
81
83
  str.replace(/[А-ЯЁа-яё,. -]/g, (_) => REPLACER[_.toLowerCase()].toUpperCase() || '');
84
+
85
+ export const getLatinNames = (name: string, surname: string) => {
86
+ let translatedName = autoTranslateToLatin(name);
87
+ const translatedSurame = autoTranslateToLatin(surname).substring(0, MAX_LENGTH);
88
+
89
+ if (translatedSurame.length === MAX_LENGTH) {
90
+ translatedName = '';
91
+ } else if (translatedName.length + translatedSurame.length > MAX_LENGTH) {
92
+ translatedName.substring(0, 1);
93
+ }
94
+
95
+ return { translatedName, translatedSurame };
96
+ };
@@ -1,13 +1,10 @@
1
1
  import type ymaps from 'yandex-maps';
2
2
  import { useExternalNS } from '../../hooks/useExternalNS';
3
- import { projectSettings } from '../../ProjectSettings';
4
3
 
5
4
  const YMAPS_NAMESPACE = 'ymaps';
6
5
 
7
6
  export const useYandexMaps = () => {
8
- const url = `https://api-maps.yandex.ru/2.1/?apikey=${
9
- projectSettings.YANDEX_MAP_API_KEY || ''
10
- }&lang=ru_RU`;
7
+ const url = `https://api-maps.yandex.ru/2.1/?lang=ru_RU`;
11
8
 
12
9
  return useExternalNS<typeof ymaps>(YMAPS_NAMESPACE, url, false);
13
10
  };
package/src/wlc.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "PROD_BRANCH": "master",
3
- "YANDEX_MAP_API_KEY": "f4b40c1e-1891-45f2-b307-90c481af210b",
4
3
  "CHAT_BOT": "personal"
5
4
  }
5
+