@redneckz/wildless-cms-uni-blocks 0.14.672 → 0.14.673

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 (31) hide show
  1. package/bundle/bundle.umd.js +14 -5
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/ui-kit/YandexMap/YandexMap.d.ts +1 -0
  4. package/dist/ui-kit/FormField/Fields/AddressRetailField.js +1 -1
  5. package/dist/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
  6. package/dist/ui-kit/YandexMap/YandexMap.d.ts +1 -0
  7. package/dist/ui-kit/YandexMap/YandexMap.js +11 -2
  8. package/dist/ui-kit/YandexMap/YandexMap.js.map +1 -1
  9. package/lib/ui-kit/FormField/Fields/AddressRetailField.js +1 -1
  10. package/lib/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
  11. package/lib/ui-kit/YandexMap/YandexMap.d.ts +1 -0
  12. package/lib/ui-kit/YandexMap/YandexMap.js +11 -2
  13. package/lib/ui-kit/YandexMap/YandexMap.js.map +1 -1
  14. package/mobile/bundle/bundle.umd.js +14 -5
  15. package/mobile/bundle/bundle.umd.min.js +1 -1
  16. package/mobile/bundle/ui-kit/YandexMap/YandexMap.d.ts +1 -0
  17. package/mobile/dist/ui-kit/FormField/Fields/AddressRetailField.js +1 -1
  18. package/mobile/dist/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
  19. package/mobile/dist/ui-kit/YandexMap/YandexMap.d.ts +1 -0
  20. package/mobile/dist/ui-kit/YandexMap/YandexMap.js +11 -2
  21. package/mobile/dist/ui-kit/YandexMap/YandexMap.js.map +1 -1
  22. package/mobile/lib/ui-kit/FormField/Fields/AddressRetailField.js +1 -1
  23. package/mobile/lib/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
  24. package/mobile/lib/ui-kit/YandexMap/YandexMap.d.ts +1 -0
  25. package/mobile/lib/ui-kit/YandexMap/YandexMap.js +11 -2
  26. package/mobile/lib/ui-kit/YandexMap/YandexMap.js.map +1 -1
  27. package/mobile/src/ui-kit/FormField/Fields/AddressRetailField.tsx +6 -1
  28. package/mobile/src/ui-kit/YandexMap/YandexMap.tsx +58 -45
  29. package/package.json +1 -1
  30. package/src/ui-kit/FormField/Fields/AddressRetailField.tsx +6 -1
  31. package/src/ui-kit/YandexMap/YandexMap.tsx +58 -45
@@ -4,6 +4,7 @@ interface YandexMapProps {
4
4
  className?: string;
5
5
  zoom?: number;
6
6
  isLoad?: boolean;
7
+ selectedAddress?: string;
7
8
  }
8
9
  export declare const DEFAULT_CENTER_COORDS: number[];
9
10
  export declare const YandexMap: import("@redneckz/uni-jsx").UNIComponent<YandexMapProps, any, any>;
@@ -36,6 +36,6 @@ exports.AddressRetailField = (0, uni_jsx_1.JSX)(({ field, input }) => {
36
36
  return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(SelectControl_1.SelectControl, { label: "\u0410\u0434\u0440\u0435\u0441 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u044F", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", options: offices.map(({ id, address = '' }) => ({
37
37
  key: id?.toString() || '',
38
38
  text: address,
39
- })), ...(0, getValidation_1.getValidation)(field('addressRetail'), getObjectValidator_1.validatorObj.addressRetail, input?.required && isRegionSelected), isSearch: true }), (0, jsx_runtime_1.jsx)("div", { className: "h-[600px]", children: (0, jsx_runtime_1.jsx)(ClientOnly_1.ClientOnly, { children: (0, jsx_runtime_1.jsx)(YandexMap_1.YandexMap, { points: points, isLoad: !data, className: "h-full" }) }) })] }));
39
+ })), ...(0, getValidation_1.getValidation)(field('addressRetail'), getObjectValidator_1.validatorObj.addressRetail, input?.required && isRegionSelected), isSearch: true }), (0, jsx_runtime_1.jsx)("div", { className: "h-[600px]", children: (0, jsx_runtime_1.jsx)(ClientOnly_1.ClientOnly, { children: (0, jsx_runtime_1.jsx)(YandexMap_1.YandexMap, { points: points, isLoad: !data, className: "h-full", selectedAddress: fieldBranch?.value?.text }) }) })] }));
40
40
  });
41
41
  //# sourceMappingURL=AddressRetailField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddressRetailField.js","sourceRoot":"","sources":["../../../../src/ui-kit/FormField/Fields/AddressRetailField.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uDAAkE;AAClE,wEAA2F;AAC3F,0FAAqF;AACrF,oGAAiG;AACjG,oEAAiE;AACjE,iDAA8C;AAC9C,8DAA2D;AAC3D,yDAAsD;AAEtD,8DAAqD;AACrD,oDAAiD;AAEpC,QAAA,kBAAkB,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAe,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,iCAAe,EAAC,WAAW,CAAC,CAAC;IAE9C,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IACvD,6DAA6D;IAC7D,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;IAE3C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,WAAW,GAAG,MAAM,IAAA,kCAAkB,EAAE,WAAW,EAAE,GAAc,IAAI,EAAE,CAAC,CAAC;YACjF,UAAU,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,WAAW,EAAE,GAAG,EAAE;YACpB,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;SAC1C;IACH,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAEtB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,6CAAqB,EAAC;QACvC,IAAI,EAAE,OAAO;QACb,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,iCAAc;KAC3B,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,4CACE,uBAAC,6BAAa,IACZ,KAAK,EAAC,uFAAiB,EACvB,WAAW,EAAC,yGAAoB,EAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC9C,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACzB,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC,KACC,IAAA,6BAAa,EACf,KAAK,CAAC,eAAe,CAAC,EACtB,iCAAY,CAAC,aAAa,EAC1B,KAAK,EAAE,QAAQ,IAAI,gBAAgB,CACpC,EACD,QAAQ,EAAE,IAAI,GACd,EACF,gCAAK,SAAS,EAAC,WAAW,YACxB,uBAAC,uBAAU,cACT,uBAAC,qBAAS,IAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,EAAC,QAAQ,GAAG,GACpD,GACT,IACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"AddressRetailField.js","sourceRoot":"","sources":["../../../../src/ui-kit/FormField/Fields/AddressRetailField.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uDAAkE;AAClE,wEAA2F;AAC3F,0FAAqF;AACrF,oGAAiG;AACjG,oEAAiE;AACjE,iDAA8C;AAC9C,8DAA2D;AAC3D,yDAAsD;AAEtD,8DAAqD;AACrD,oDAAiD;AAEpC,QAAA,kBAAkB,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAe,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,iCAAe,EAAC,WAAW,CAAC,CAAC;IAE9C,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IACvD,6DAA6D;IAC7D,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;IAE3C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,WAAW,GAAG,MAAM,IAAA,kCAAkB,EAAE,WAAW,EAAE,GAAc,IAAI,EAAE,CAAC,CAAC;YACjF,UAAU,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,WAAW,EAAE,GAAG,EAAE;YACpB,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;SAC1C;IACH,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAEtB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,6CAAqB,EAAC;QACvC,IAAI,EAAE,OAAO;QACb,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,iCAAc;KAC3B,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,4CACE,uBAAC,6BAAa,IACZ,KAAK,EAAC,uFAAiB,EACvB,WAAW,EAAC,yGAAoB,EAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC9C,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACzB,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC,KACC,IAAA,6BAAa,EACf,KAAK,CAAC,eAAe,CAAC,EACtB,iCAAY,CAAC,aAAa,EAC1B,KAAK,EAAE,QAAQ,IAAI,gBAAgB,CACpC,EACD,QAAQ,EAAE,IAAI,GACd,EACF,gCAAK,SAAS,EAAC,WAAW,YACxB,uBAAC,uBAAU,cACT,uBAAC,qBAAS,IACR,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,IAAI,EACb,SAAS,EAAC,QAAQ,EAClB,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,GACzC,GACS,GACT,IACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -4,6 +4,7 @@ interface YandexMapProps {
4
4
  className?: string;
5
5
  zoom?: number;
6
6
  isLoad?: boolean;
7
+ selectedAddress?: string;
7
8
  }
8
9
  export declare const DEFAULT_CENTER_COORDS: number[];
9
10
  export declare const YandexMap: import("@redneckz/uni-jsx").UNIComponent<YandexMapProps, any, any>;
@@ -16,7 +16,7 @@ exports.DEFAULT_CENTER_COORDS = [55.753995, 37.614069];
16
16
  // Сейчас реализован поиск среди тестовых данных
17
17
  // TODO: Также выяснить что делать когда ничего не найдено
18
18
  // TODO: На макетах также когда есть поле поиска нет кнопки открыть на карте.
19
- exports.YandexMap = (0, uni_jsx_1.JSX)(({ points, className = '', zoom = 5, isLoad }) => {
19
+ exports.YandexMap = (0, uni_jsx_1.JSX)(({ points, className = '', zoom = 5, isLoad, selectedAddress }) => {
20
20
  const map = (0, hooks_1.useRef)(null);
21
21
  const parentDiv = (0, hooks_1.useRef)(null);
22
22
  const yandexMaps = (0, useYandexMaps_1.useYandexMaps)();
@@ -40,7 +40,16 @@ exports.YandexMap = (0, uni_jsx_1.JSX)(({ points, className = '', zoom = 5, isLo
40
40
  (0, renderClusterer_1.renderClusterer)({ yandexMaps, map: map.current, points, isLoad });
41
41
  });
42
42
  }
43
- }, [yandexMaps, points, zoom, isLoad]);
43
+ // zoom к выбранному отделению банка в рамках задачи по retail
44
+ if (map.current && selectedAddress) {
45
+ yandexMaps?.geocode(selectedAddress).then((res) => {
46
+ const firstGeoObject = res.geoObjects.get(0);
47
+ const coords = firstGeoObject.geometry.getCoordinates();
48
+ map.current.setCenter(coords);
49
+ map.current.setZoom(18);
50
+ });
51
+ }
52
+ }, [yandexMaps, points, zoom, isLoad, selectedAddress]);
44
53
  if (!yandexMaps) {
45
54
  return null;
46
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"YandexMap.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/YandexMap.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"YandexMap.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/YandexMap.tsx"],"names":[],"mappings":"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"}
@@ -34,6 +34,6 @@ export const AddressRetailField = JSX(({ field, input }) => {
34
34
  return (_jsxs("div", { children: [_jsx(SelectControl, { label: "\u0410\u0434\u0440\u0435\u0441 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u044F", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", options: offices.map(({ id, address = '' }) => ({
35
35
  key: id?.toString() || '',
36
36
  text: address,
37
- })), ...getValidation(field('addressRetail'), validatorObj.addressRetail, input?.required && isRegionSelected), isSearch: true }), _jsx("div", { className: "h-[600px]", children: _jsx(ClientOnly, { children: _jsx(YandexMap, { points: points, isLoad: !data, className: "h-full" }) }) })] }));
37
+ })), ...getValidation(field('addressRetail'), validatorObj.addressRetail, input?.required && isRegionSelected), isSearch: true }), _jsx("div", { className: "h-[600px]", children: _jsx(ClientOnly, { children: _jsx(YandexMap, { points: points, isLoad: !data, className: "h-full", selectedAddress: fieldBranch?.value?.text }) }) })] }));
38
38
  });
39
39
  //# sourceMappingURL=AddressRetailField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddressRetailField.js","sourceRoot":"","sources":["../../../../src/ui-kit/FormField/Fields/AddressRetailField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAmB,MAAM,sCAAsC,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAe,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAE9C,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IACvD,6DAA6D;IAC7D,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;IAE3C,SAAS,CAAC,GAAG,EAAE;QACb,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAE,WAAW,EAAE,GAAc,IAAI,EAAE,CAAC,CAAC;YACjF,UAAU,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,WAAW,EAAE,GAAG,EAAE;YACpB,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;SAC1C;IACH,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAEtB,MAAM,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAAC;QACvC,IAAI,EAAE,OAAO;QACb,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,cAAc;KAC3B,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,0BACE,KAAC,aAAa,IACZ,KAAK,EAAC,uFAAiB,EACvB,WAAW,EAAC,yGAAoB,EAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC9C,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACzB,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC,KACC,aAAa,CACf,KAAK,CAAC,eAAe,CAAC,EACtB,YAAY,CAAC,aAAa,EAC1B,KAAK,EAAE,QAAQ,IAAI,gBAAgB,CACpC,EACD,QAAQ,EAAE,IAAI,GACd,EACF,cAAK,SAAS,EAAC,WAAW,YACxB,KAAC,UAAU,cACT,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,EAAC,QAAQ,GAAG,GACpD,GACT,IACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"AddressRetailField.js","sourceRoot":"","sources":["../../../../src/ui-kit/FormField/Fields/AddressRetailField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAmB,MAAM,sCAAsC,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAe,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAE9C,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IACvD,6DAA6D;IAC7D,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;IAE3C,SAAS,CAAC,GAAG,EAAE;QACb,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAE,WAAW,EAAE,GAAc,IAAI,EAAE,CAAC,CAAC;YACjF,UAAU,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,WAAW,EAAE,GAAG,EAAE;YACpB,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;SAC1C;IACH,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAEtB,MAAM,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAAC;QACvC,IAAI,EAAE,OAAO;QACb,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,cAAc;KAC3B,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,0BACE,KAAC,aAAa,IACZ,KAAK,EAAC,uFAAiB,EACvB,WAAW,EAAC,yGAAoB,EAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC9C,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACzB,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC,KACC,aAAa,CACf,KAAK,CAAC,eAAe,CAAC,EACtB,YAAY,CAAC,aAAa,EAC1B,KAAK,EAAE,QAAQ,IAAI,gBAAgB,CACpC,EACD,QAAQ,EAAE,IAAI,GACd,EACF,cAAK,SAAS,EAAC,WAAW,YACxB,KAAC,UAAU,cACT,KAAC,SAAS,IACR,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,IAAI,EACb,SAAS,EAAC,QAAQ,EAClB,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,GACzC,GACS,GACT,IACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -4,6 +4,7 @@ interface YandexMapProps {
4
4
  className?: string;
5
5
  zoom?: number;
6
6
  isLoad?: boolean;
7
+ selectedAddress?: string;
7
8
  }
8
9
  export declare const DEFAULT_CENTER_COORDS: number[];
9
10
  export declare const YandexMap: import("@redneckz/uni-jsx").UNIComponent<YandexMapProps, any, any>;
@@ -14,7 +14,7 @@ export const DEFAULT_CENTER_COORDS = [55.753995, 37.614069];
14
14
  // Сейчас реализован поиск среди тестовых данных
15
15
  // TODO: Также выяснить что делать когда ничего не найдено
16
16
  // TODO: На макетах также когда есть поле поиска нет кнопки открыть на карте.
17
- export const YandexMap = JSX(({ points, className = '', zoom = 5, isLoad }) => {
17
+ export const YandexMap = JSX(({ points, className = '', zoom = 5, isLoad, selectedAddress }) => {
18
18
  const map = useRef(null);
19
19
  const parentDiv = useRef(null);
20
20
  const yandexMaps = useYandexMaps();
@@ -38,7 +38,16 @@ export const YandexMap = JSX(({ points, className = '', zoom = 5, isLoad }) => {
38
38
  renderClusterer({ yandexMaps, map: map.current, points, isLoad });
39
39
  });
40
40
  }
41
- }, [yandexMaps, points, zoom, isLoad]);
41
+ // zoom к выбранному отделению банка в рамках задачи по retail
42
+ if (map.current && selectedAddress) {
43
+ yandexMaps?.geocode(selectedAddress).then((res) => {
44
+ const firstGeoObject = res.geoObjects.get(0);
45
+ const coords = firstGeoObject.geometry.getCoordinates();
46
+ map.current.setCenter(coords);
47
+ map.current.setZoom(18);
48
+ });
49
+ }
50
+ }, [yandexMaps, points, zoom, isLoad, selectedAddress]);
42
51
  if (!yandexMaps) {
43
52
  return null;
44
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"YandexMap.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/YandexMap.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"YandexMap.js","sourceRoot":"","sources":["../../../src/ui-kit/YandexMap/YandexMap.tsx"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,cAAc;AACd,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAU1C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAE5D,oHAAoH;AACpH,sDAAsD;AACtD,0DAA0D;AAC1D,6EAA6E;AAC7E,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAC1B,CAAC,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,IAAI,GAAG,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,EAAE;IAChE,MAAM,GAAG,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAE3C,MAAM,SAAS,GAAG,MAAM,CAAc,IAAI,CAAC,CAAC;IAE5C,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,GAAG,CAAC,OAAO,EAAE;YACf,eAAe,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;SACnE;aAAM;YACL,UAAU,EAAE,KAAK,CAAC,GAAG,EAAE;gBACrB,kEAAkE;gBAClE,IAAI,GAAG,CAAC,OAAO,EAAE;oBACf,eAAe,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBAElE,OAAO;iBACR;gBAED,GAAG,CAAC,OAAO,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE;oBAClD,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC;oBAC9B,IAAI;oBACJ,QAAQ,EAAE,EAAE;oBACZ,oBAAoB,EAAE,IAAI;iBAC3B,CAAC,CAAC;gBAEH,eAAe,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC;SACJ;QAED,8DAA8D;QAC9D,IAAI,GAAG,CAAC,OAAO,IAAI,eAAe,EAAE;YAClC,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChD,MAAM,cAAc,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC7C,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,cAAc,EAAc,CAAC;gBACpE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAExD,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,IAAI,CAAC;KACb;IAED,MAAM,MAAM,GAAG,MAAM,CAAC;IAEtB,OAAO,CACL,eAAK,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,aACnE,MAAM,CAAC,CAAC,CAAC,KAAC,MAAM,KAAG,CAAC,CAAC,CAAC,IAAI,EAC3B,eACE,SAAS,EAAE,KAAK,CACd,wFAAwF,EACxF,MAAM,CACP,aAED,KAAC,UAAU,IAAC,UAAU,EAAE,GAAG,GAAI,EAC/B,KAAC,UAAU,IAAC,UAAU,EAAE,GAAG,EAAE,SAAS,EAAC,KAAK,GAAG,IAC3C,EACL,qBAAqB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,IACpE,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,MAAwB,EAAE,EAAE;IAClD,MAAM,YAAY,GAAG;QACnB,qBAAqB,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5C,qBAAqB,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;KAC7C,CAAC;IAEF,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC;AAC7E,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,MAAuB,EAAE,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAEpG,MAAM,qBAAqB,GAAG,CAAC,GAAa,EAAE,EAAE,CAC9C,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC"}
@@ -56,7 +56,12 @@ export const AddressRetailField = JSX<CustomFieldProps>(({ field, input }) => {
56
56
  />
57
57
  <div className="h-[600px]">
58
58
  <ClientOnly>
59
- <YandexMap points={points} isLoad={!data} className="h-full" />
59
+ <YandexMap
60
+ points={points}
61
+ isLoad={!data}
62
+ className="h-full"
63
+ selectedAddress={fieldBranch?.value?.text}
64
+ />
60
65
  </ClientOnly>
61
66
  </div>
62
67
  </div>
@@ -16,6 +16,7 @@ interface YandexMapProps {
16
16
  className?: string;
17
17
  zoom?: number;
18
18
  isLoad?: boolean;
19
+ selectedAddress?: string;
19
20
  }
20
21
 
21
22
  export const DEFAULT_CENTER_COORDS = [55.753995, 37.614069];
@@ -24,59 +25,71 @@ export const DEFAULT_CENTER_COORDS = [55.753995, 37.614069];
24
25
  // Сейчас реализован поиск среди тестовых данных
25
26
  // TODO: Также выяснить что делать когда ничего не найдено
26
27
  // TODO: На макетах также когда есть поле поиска нет кнопки открыть на карте.
27
- export const YandexMap = JSX<YandexMapProps>(({ points, className = '', zoom = 5, isLoad }) => {
28
- const map = useRef<ymaps.Map | null>(null);
28
+ export const YandexMap = JSX<YandexMapProps>(
29
+ ({ points, className = '', zoom = 5, isLoad, selectedAddress }) => {
30
+ const map = useRef<ymaps.Map | null>(null);
29
31
 
30
- const parentDiv = useRef<HTMLElement>(null);
32
+ const parentDiv = useRef<HTMLElement>(null);
31
33
 
32
- const yandexMaps = useYandexMaps();
34
+ const yandexMaps = useYandexMaps();
33
35
 
34
- useEffect(() => {
35
- if (map.current) {
36
- renderClusterer({ yandexMaps, map: map.current, points, isLoad });
37
- } else {
38
- yandexMaps?.ready(() => {
39
- // Ready function may be called few times, but must be called once
40
- if (map.current) {
41
- renderClusterer({ yandexMaps, map: map.current, points, isLoad });
42
-
43
- return;
44
- }
36
+ useEffect(() => {
37
+ if (map.current) {
38
+ renderClusterer({ yandexMaps, map: map.current, points, isLoad });
39
+ } else {
40
+ yandexMaps?.ready(() => {
41
+ // Ready function may be called few times, but must be called once
42
+ if (map.current) {
43
+ renderClusterer({ yandexMaps, map: map.current, points, isLoad });
44
+
45
+ return;
46
+ }
47
+
48
+ map.current = new yandexMaps.Map(parentDiv.current, {
49
+ center: getCenterPoint(points),
50
+ zoom,
51
+ controls: [],
52
+ suppressMapOpenBlock: true,
53
+ });
45
54
 
46
- map.current = new yandexMaps.Map(parentDiv.current, {
47
- center: getCenterPoint(points),
48
- zoom,
49
- controls: [],
50
- suppressMapOpenBlock: true,
55
+ renderClusterer({ yandexMaps, map: map.current, points, isLoad });
51
56
  });
57
+ }
58
+
59
+ // zoom к выбранному отделению банка в рамках задачи по retail
60
+ if (map.current && selectedAddress) {
61
+ yandexMaps?.geocode(selectedAddress).then((res) => {
62
+ const firstGeoObject = res.geoObjects.get(0);
63
+ const coords = firstGeoObject.geometry.getCoordinates() as number[];
64
+ map.current.setCenter(coords);
65
+ map.current.setZoom(18);
66
+ });
67
+ }
68
+ }, [yandexMaps, points, zoom, isLoad, selectedAddress]);
52
69
 
53
- renderClusterer({ yandexMaps, map: map.current, points, isLoad });
54
- });
70
+ if (!yandexMaps) {
71
+ return null;
55
72
  }
56
- }, [yandexMaps, points, zoom, isLoad]);
57
-
58
- if (!yandexMaps) {
59
- return null;
60
- }
61
-
62
- const zIndex = 'z-10';
63
-
64
- return (
65
- <div ref={parentDiv} className={style('relative', 'w-full', className)}>
66
- {isLoad ? <Loader /> : null}
67
- <div
68
- className={style(
69
- 'absolute right-2 top-52 z-10 w-12 overflow-hidden border border-transparent rounded-md',
70
- zIndex,
71
- )}
72
- >
73
- <ZoomButton yandexMaps={map} />
74
- <ZoomButton yandexMaps={map} direction="out" />
73
+
74
+ const zIndex = 'z-10';
75
+
76
+ return (
77
+ <div ref={parentDiv} className={style('relative', 'w-full', className)}>
78
+ {isLoad ? <Loader /> : null}
79
+ <div
80
+ className={style(
81
+ 'absolute right-2 top-52 z-10 w-12 overflow-hidden border border-transparent rounded-md',
82
+ zIndex,
83
+ )}
84
+ >
85
+ <ZoomButton yandexMaps={map} />
86
+ <ZoomButton yandexMaps={map} direction="out" />
87
+ </div>
88
+ {renderUserGeolocation(map, yandexMaps, style('right-2 top-80', zIndex))}
75
89
  </div>
76
- {renderUserGeolocation(map, yandexMaps, style('right-2 top-80', zIndex))}
77
- </div>
78
- );
79
- });
90
+ );
91
+ },
92
+ );
80
93
 
81
94
  const getCenterPoint = (points?: BalloonPoints[]) => {
82
95
  const centerCoords = [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.672",
3
+ "version": "0.14.673",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -56,7 +56,12 @@ export const AddressRetailField = JSX<CustomFieldProps>(({ field, input }) => {
56
56
  />
57
57
  <div className="h-[600px]">
58
58
  <ClientOnly>
59
- <YandexMap points={points} isLoad={!data} className="h-full" />
59
+ <YandexMap
60
+ points={points}
61
+ isLoad={!data}
62
+ className="h-full"
63
+ selectedAddress={fieldBranch?.value?.text}
64
+ />
60
65
  </ClientOnly>
61
66
  </div>
62
67
  </div>
@@ -16,6 +16,7 @@ interface YandexMapProps {
16
16
  className?: string;
17
17
  zoom?: number;
18
18
  isLoad?: boolean;
19
+ selectedAddress?: string;
19
20
  }
20
21
 
21
22
  export const DEFAULT_CENTER_COORDS = [55.753995, 37.614069];
@@ -24,59 +25,71 @@ export const DEFAULT_CENTER_COORDS = [55.753995, 37.614069];
24
25
  // Сейчас реализован поиск среди тестовых данных
25
26
  // TODO: Также выяснить что делать когда ничего не найдено
26
27
  // TODO: На макетах также когда есть поле поиска нет кнопки открыть на карте.
27
- export const YandexMap = JSX<YandexMapProps>(({ points, className = '', zoom = 5, isLoad }) => {
28
- const map = useRef<ymaps.Map | null>(null);
28
+ export const YandexMap = JSX<YandexMapProps>(
29
+ ({ points, className = '', zoom = 5, isLoad, selectedAddress }) => {
30
+ const map = useRef<ymaps.Map | null>(null);
29
31
 
30
- const parentDiv = useRef<HTMLElement>(null);
32
+ const parentDiv = useRef<HTMLElement>(null);
31
33
 
32
- const yandexMaps = useYandexMaps();
34
+ const yandexMaps = useYandexMaps();
33
35
 
34
- useEffect(() => {
35
- if (map.current) {
36
- renderClusterer({ yandexMaps, map: map.current, points, isLoad });
37
- } else {
38
- yandexMaps?.ready(() => {
39
- // Ready function may be called few times, but must be called once
40
- if (map.current) {
41
- renderClusterer({ yandexMaps, map: map.current, points, isLoad });
42
-
43
- return;
44
- }
36
+ useEffect(() => {
37
+ if (map.current) {
38
+ renderClusterer({ yandexMaps, map: map.current, points, isLoad });
39
+ } else {
40
+ yandexMaps?.ready(() => {
41
+ // Ready function may be called few times, but must be called once
42
+ if (map.current) {
43
+ renderClusterer({ yandexMaps, map: map.current, points, isLoad });
44
+
45
+ return;
46
+ }
47
+
48
+ map.current = new yandexMaps.Map(parentDiv.current, {
49
+ center: getCenterPoint(points),
50
+ zoom,
51
+ controls: [],
52
+ suppressMapOpenBlock: true,
53
+ });
45
54
 
46
- map.current = new yandexMaps.Map(parentDiv.current, {
47
- center: getCenterPoint(points),
48
- zoom,
49
- controls: [],
50
- suppressMapOpenBlock: true,
55
+ renderClusterer({ yandexMaps, map: map.current, points, isLoad });
51
56
  });
57
+ }
58
+
59
+ // zoom к выбранному отделению банка в рамках задачи по retail
60
+ if (map.current && selectedAddress) {
61
+ yandexMaps?.geocode(selectedAddress).then((res) => {
62
+ const firstGeoObject = res.geoObjects.get(0);
63
+ const coords = firstGeoObject.geometry.getCoordinates() as number[];
64
+ map.current.setCenter(coords);
65
+ map.current.setZoom(18);
66
+ });
67
+ }
68
+ }, [yandexMaps, points, zoom, isLoad, selectedAddress]);
52
69
 
53
- renderClusterer({ yandexMaps, map: map.current, points, isLoad });
54
- });
70
+ if (!yandexMaps) {
71
+ return null;
55
72
  }
56
- }, [yandexMaps, points, zoom, isLoad]);
57
-
58
- if (!yandexMaps) {
59
- return null;
60
- }
61
-
62
- const zIndex = 'z-10';
63
-
64
- return (
65
- <div ref={parentDiv} className={style('relative', 'w-full', className)}>
66
- {isLoad ? <Loader /> : null}
67
- <div
68
- className={style(
69
- 'absolute right-2 top-52 z-10 w-12 overflow-hidden border border-transparent rounded-md',
70
- zIndex,
71
- )}
72
- >
73
- <ZoomButton yandexMaps={map} />
74
- <ZoomButton yandexMaps={map} direction="out" />
73
+
74
+ const zIndex = 'z-10';
75
+
76
+ return (
77
+ <div ref={parentDiv} className={style('relative', 'w-full', className)}>
78
+ {isLoad ? <Loader /> : null}
79
+ <div
80
+ className={style(
81
+ 'absolute right-2 top-52 z-10 w-12 overflow-hidden border border-transparent rounded-md',
82
+ zIndex,
83
+ )}
84
+ >
85
+ <ZoomButton yandexMaps={map} />
86
+ <ZoomButton yandexMaps={map} direction="out" />
87
+ </div>
88
+ {renderUserGeolocation(map, yandexMaps, style('right-2 top-80', zIndex))}
75
89
  </div>
76
- {renderUserGeolocation(map, yandexMaps, style('right-2 top-80', zIndex))}
77
- </div>
78
- );
79
- });
90
+ );
91
+ },
92
+ );
80
93
 
81
94
  const getCenterPoint = (points?: BalloonPoints[]) => {
82
95
  const centerCoords = [