@jenesei-software/jenesei-kit-react 1.3.29 → 1.3.31

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 (145) hide show
  1. package/build/area-preview.cjs.js +1 -1
  2. package/build/area-preview.es.js +1 -1
  3. package/build/area-skeleton.cjs.js +1 -1
  4. package/build/area-skeleton.es.js +1 -1
  5. package/build/build-info.txt +3 -3
  6. package/build/{component-BaGCJM5V.js → component-BEkYgajE.js} +2 -2
  7. package/build/{component-BaGCJM5V.js.map → component-BEkYgajE.js.map} +1 -1
  8. package/build/{component-DJcrW4KX.js → component-BFDCc96N.js} +2 -2
  9. package/build/{component-DJcrW4KX.js.map → component-BFDCc96N.js.map} +1 -1
  10. package/build/{component-BgFRZSbi.cjs → component-BFLPbIpv.cjs} +2 -2
  11. package/build/{component-BgFRZSbi.cjs.map → component-BFLPbIpv.cjs.map} +1 -1
  12. package/build/{component-yTziSQZ7.js → component-BV20JUqs.js} +3 -3
  13. package/build/{component-yTziSQZ7.js.map → component-BV20JUqs.js.map} +1 -1
  14. package/build/{component-BT3dejQO.js → component-BpgbR-JI.js} +2 -2
  15. package/build/{component-BT3dejQO.js.map → component-BpgbR-JI.js.map} +1 -1
  16. package/build/{component-Br2H7F-p.js → component-BqSYYCb3.js} +2 -2
  17. package/build/{component-Br2H7F-p.js.map → component-BqSYYCb3.js.map} +1 -1
  18. package/build/{component-Cp433cAv.js → component-BsjFCBxJ.js} +3 -3
  19. package/build/{component-Cp433cAv.js.map → component-BsjFCBxJ.js.map} +1 -1
  20. package/build/{component-Dwf2HFot.cjs → component-ByU2po_i.cjs} +2 -2
  21. package/build/{component-Dwf2HFot.cjs.map → component-ByU2po_i.cjs.map} +1 -1
  22. package/build/{component-BpwTWRxp.js → component-C-oN9gXq.js} +2 -2
  23. package/build/{component-BpwTWRxp.js.map → component-C-oN9gXq.js.map} +1 -1
  24. package/build/{component-D2Y1Ky9N.js → component-CJWnWh-4.js} +4 -4
  25. package/build/{component-D2Y1Ky9N.js.map → component-CJWnWh-4.js.map} +1 -1
  26. package/build/{component-BzFd5DyJ.js → component-CMUWN8YO.js} +3 -3
  27. package/build/{component-BzFd5DyJ.js.map → component-CMUWN8YO.js.map} +1 -1
  28. package/build/{component-ClQrDMsC.cjs → component-CSY_QAf5.cjs} +2 -2
  29. package/build/{component-ClQrDMsC.cjs.map → component-CSY_QAf5.cjs.map} +1 -1
  30. package/build/{component-OxaRuSX5.cjs → component-D8qNfh_3.cjs} +2 -2
  31. package/build/{component-OxaRuSX5.cjs.map → component-D8qNfh_3.cjs.map} +1 -1
  32. package/build/{component-TMPesaZf.cjs → component-DE1S-lZ5.cjs} +2 -2
  33. package/build/{component-TMPesaZf.cjs.map → component-DE1S-lZ5.cjs.map} +1 -1
  34. package/build/{component-BABozkX6.cjs → component-DfZKriX4.cjs} +2 -2
  35. package/build/{component-BABozkX6.cjs.map → component-DfZKriX4.cjs.map} +1 -1
  36. package/build/{component-CsIx8Dgr.cjs → component-Dl6zU2mb.cjs} +2 -2
  37. package/build/{component-CsIx8Dgr.cjs.map → component-Dl6zU2mb.cjs.map} +1 -1
  38. package/build/{component-CjiOOMn9.cjs → component-Dmn44ouM.cjs} +2 -2
  39. package/build/{component-CjiOOMn9.cjs.map → component-Dmn44ouM.cjs.map} +1 -1
  40. package/build/{component-BHfH9Gw4.js → component-Tjc4KXtU.js} +2 -2
  41. package/build/{component-BHfH9Gw4.js.map → component-Tjc4KXtU.js.map} +1 -1
  42. package/build/{component-DYX1oGKH.js → component-UAARmvBH.js} +2 -2
  43. package/build/{component-DYX1oGKH.js.map → component-UAARmvBH.js.map} +1 -1
  44. package/build/component-accordion.cjs.js +1 -1
  45. package/build/component-accordion.es.js +2 -2
  46. package/build/component-button-group.cjs.js +1 -1
  47. package/build/component-button-group.es.js +2 -2
  48. package/build/component-button.cjs.js +1 -1
  49. package/build/component-button.es.js +1 -1
  50. package/build/component-checkbox-group.cjs.js +1 -1
  51. package/build/component-checkbox-group.es.js +2 -2
  52. package/build/component-checkbox.cjs.js +1 -1
  53. package/build/component-checkbox.es.js +2 -2
  54. package/build/component-date-picker.cjs.js +1 -1
  55. package/build/component-date-picker.d.ts +8 -0
  56. package/build/component-date-picker.es.js +4 -2
  57. package/build/component-icon.cjs.js +1 -1
  58. package/build/component-icon.es.js +6 -6
  59. package/build/component-image-button.cjs.js +1 -1
  60. package/build/component-image-button.es.js +1 -1
  61. package/build/component-image-select.cjs.js +1 -1
  62. package/build/component-image-select.es.js +8 -8
  63. package/build/component-image-slider.cjs.js +1 -1
  64. package/build/component-image-slider.es.js +4 -4
  65. package/build/component-image.cjs.js +1 -1
  66. package/build/component-image.es.js +3 -3
  67. package/build/component-input-otp.cjs.js +1 -1
  68. package/build/component-input-otp.es.js +5 -5
  69. package/build/component-input.cjs.js +1 -1
  70. package/build/component-input.es.js +15 -15
  71. package/build/{component-B97JZKUB.cjs → component-jeO6CsTP.cjs} +2 -2
  72. package/build/{component-B97JZKUB.cjs.map → component-jeO6CsTP.cjs.map} +1 -1
  73. package/build/component-map.cjs.js +1 -1
  74. package/build/component-map.es.js +8 -8
  75. package/build/component-pagination.cjs.js +1 -1
  76. package/build/component-pagination.es.js +1 -1
  77. package/build/component-range.cjs.js +1 -1
  78. package/build/component-range.es.js +5 -5
  79. package/build/component-select.cjs.js +1 -1
  80. package/build/component-select.es.js +18 -18
  81. package/build/{component-DcAF7Isg.cjs → component-ssaD7jJ-.cjs} +2 -2
  82. package/build/{component-DcAF7Isg.cjs.map → component-ssaD7jJ-.cjs.map} +1 -1
  83. package/build/component-textarea.cjs.js +1 -1
  84. package/build/component-textarea.d.ts +3 -0
  85. package/build/component-textarea.es.js +5 -5
  86. package/build/component-toggle.cjs.js +1 -1
  87. package/build/component-toggle.es.js +4 -4
  88. package/build/component-tooltip.cjs.js +1 -1
  89. package/build/component-tooltip.d.ts +107 -0
  90. package/build/component-tooltip.es.js +9 -9
  91. package/build/component-typography.cjs.js +1 -1
  92. package/build/component-typography.d.ts +107 -0
  93. package/build/component-typography.es.js +6 -6
  94. package/build/{component-DFMjWiWi.cjs → component-zyoew755.cjs} +2 -2
  95. package/build/{component-DFMjWiWi.cjs.map → component-zyoew755.cjs.map} +1 -1
  96. package/build/{component.components-KcVM2DN2.js → component.components-CFsHZ-xd.js} +2 -2
  97. package/build/{component.components-KcVM2DN2.js.map → component.components-CFsHZ-xd.js.map} +1 -1
  98. package/build/{component.components-CsWG1Rwi.cjs → component.components-DnPZVXuo.cjs} +2 -2
  99. package/build/{component.components-CsWG1Rwi.cjs.map → component.components-DnPZVXuo.cjs.map} +1 -1
  100. package/build/{component.constants-B-csc6ih.cjs → component.constants-4oL81SFS.cjs} +2 -2
  101. package/build/{component.constants-B-csc6ih.cjs.map → component.constants-4oL81SFS.cjs.map} +1 -1
  102. package/build/{component.constants-BkbucsSA.js → component.constants-B3aCG9Aq.js} +3 -3
  103. package/build/{component.constants-BkbucsSA.js.map → component.constants-B3aCG9Aq.js.map} +1 -1
  104. package/build/{component.constants-ECVKYlcl.cjs → component.constants-DIRNAI_M.cjs} +2 -2
  105. package/build/{component.constants-ECVKYlcl.cjs.map → component.constants-DIRNAI_M.cjs.map} +1 -1
  106. package/build/{component.constants-BmRV80H6.js → component.constants-DWE902Cf.js} +2 -2
  107. package/build/{component.constants-BmRV80H6.js.map → component.constants-DWE902Cf.js.map} +1 -1
  108. package/build/component.types-D7_uJxuD.cjs +2 -0
  109. package/build/component.types-D7_uJxuD.cjs.map +1 -0
  110. package/build/{component.types-Cc_Ly48_.js → component.types-DhrhPsES.js} +187 -154
  111. package/build/component.types-DhrhPsES.js.map +1 -0
  112. package/build/consts.cjs.js +1 -1
  113. package/build/consts.es.js +1 -1
  114. package/build/context-app.cjs.js +1 -1
  115. package/build/context-app.es.js +17 -17
  116. package/build/context-sonner.cjs.js +1 -1
  117. package/build/context-sonner.es.js +18 -18
  118. package/build/{context.constants-CHzb-q9a.cjs → context.constants-CPdsUeiQ.cjs} +215 -206
  119. package/build/context.constants-CPdsUeiQ.cjs.map +1 -0
  120. package/build/{context.constants-ByIVCRij.js → context.constants-D8UVM6GL.js} +247 -134
  121. package/build/{context.constants-ByIVCRij.js.map → context.constants-D8UVM6GL.js.map} +1 -1
  122. package/build/{context.hooks-BDsIAUYd.js → context.hooks-1u3F7jId.js} +2 -2
  123. package/build/{context.hooks-BDsIAUYd.js.map → context.hooks-1u3F7jId.js.map} +1 -1
  124. package/build/{context.hooks-Bjivw-Im.cjs → context.hooks-Bi7-SukA.cjs} +2 -2
  125. package/build/{context.hooks-Bjivw-Im.cjs.map → context.hooks-Bi7-SukA.cjs.map} +1 -1
  126. package/build/{context.hooks-BHOQU6q9.cjs → context.hooks-CEM899ZV.cjs} +2 -2
  127. package/build/{context.hooks-BHOQU6q9.cjs.map → context.hooks-CEM899ZV.cjs.map} +1 -1
  128. package/build/{context.hooks-BGRydtLx.js → context.hooks-Ds6nn4po.js} +2 -2
  129. package/build/{context.hooks-BGRydtLx.js.map → context.hooks-Ds6nn4po.js.map} +1 -1
  130. package/build/index.cjs.js +1 -1
  131. package/build/index.d.ts +118 -0
  132. package/build/index.es.js +141 -139
  133. package/build/style-error.cjs.js +1 -1
  134. package/build/style-error.es.js +4 -4
  135. package/build/style-theme.cjs.js +1 -1
  136. package/build/style-theme.es.js +13 -13
  137. package/build/{use-2JigT9W0.cjs → use-BwhyveId.cjs} +2 -2
  138. package/build/{use-2JigT9W0.cjs.map → use-BwhyveId.cjs.map} +1 -1
  139. package/build/{use-DQXYSmcn.js → use-CjnNUWWw.js} +3 -3
  140. package/build/{use-DQXYSmcn.js.map → use-CjnNUWWw.js.map} +1 -1
  141. package/package.json +2 -2
  142. package/build/component.types-Cc_Ly48_.js.map +0 -1
  143. package/build/component.types-DqOJPJfu.cjs +0 -2
  144. package/build/component.types-DqOJPJfu.cjs.map +0 -1
  145. package/build/context.constants-CHzb-q9a.cjs.map +0 -1
@@ -84,16 +84,59 @@ declare type IThemeTypographyHeading = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' |
84
84
 
85
85
  declare type IThemeTypographyWeight = 100 | 300 | 400 | 500 | 700 | 900;
86
86
 
87
+ /**
88
+ * Props for the Popover component. / Свойства компонента Popover.
89
+ */
87
90
  declare type PopoverProps = PropsWithChildren & {
91
+ /**
92
+ * Additional class name for the popover root element.
93
+ * Дополнительный CSS-класс для корневого элемента поповера.
94
+ */
88
95
  className?: string;
96
+ /**
97
+ * Maximum width of the popover (CSS value, e.g. '300px' or '100%').
98
+ * Максимальная ширина поповера (CSS-значение, например, '300px' или '100%').
99
+ */
89
100
  maxWidth?: string;
101
+ /**
102
+ * Maximum height of the popover (CSS value, e.g. '400px' or '100%').
103
+ * Максимальная высота поповера (CSS-значение, например, '400px' или '100%').
104
+ */
90
105
  maxHeight?: string;
106
+ /**
107
+ * Controls whether the popover is open (visible).
108
+ * Управляет открытием поповера (видимостью).
109
+ */
91
110
  isOpen: boolean;
111
+ /**
112
+ * If true, always show the outline (for accessibility/debug).
113
+ * Если true — всегда показывать обводку (для доступности/отладки).
114
+ */
92
115
  isShowAlwaysOutline?: boolean;
116
+ /**
117
+ * Styles for the floating popover element (from floating-ui).
118
+ * Стили для плавающего элемента поповера (от floating-ui).
119
+ */
93
120
  floatingStyles: CSSProperties;
121
+ /**
122
+ * Callback fired when the popover should close (e.g. click outside).
123
+ * Колбэк, вызываемый при необходимости закрыть поповер (например, при клике вне).
124
+ */
94
125
  onClose?: () => void;
126
+ /**
127
+ * Ref to the popover root element.
128
+ * Ref на корневой элемент поповера.
129
+ */
95
130
  ref?: Ref<HTMLElement | null>;
131
+ /**
132
+ * Size of the popover (affects padding, font, etc.).
133
+ * Размер поповера (влияет на отступы, шрифт и т.д.).
134
+ */
96
135
  size?: IThemeSize;
136
+ /**
137
+ * Visual genre/style of the popover (e.g. 'black', 'primary').
138
+ * Визуальный стиль поповера (например, 'black', 'primary').
139
+ */
97
140
  genre?: TButtonGenre;
98
141
  } & addSXProps & addFontProps & addSXTypographyProps;
99
142
 
@@ -171,20 +214,84 @@ declare type TypographyVariantProps = TypographyDefaultProps & {
171
214
  variant: IThemeTypographyHeading;
172
215
  };
173
216
 
217
+ /**
218
+ * Props for the usePopover hook (popover logic and behavior).
219
+ * Свойства для хука usePopover (логика и поведение поповера).
220
+ */
174
221
  declare type UsePopoverProps = {
222
+ /**
223
+ * Поддержка фокуса внутри поповера (если true, фокус будет удерживаться внутри поповера).
224
+ */
225
+ isFocusTrap?: boolean;
226
+ /**
227
+ * Delay in ms before closing popover on hover out (default: 100).
228
+ * Задержка в мс перед закрытием поповера при уходе мыши (по умолчанию: 100).
229
+ */
175
230
  hoverCloseDelay?: number;
231
+ /**
232
+ * Offset in px for hover zone around popover (default: 8).
233
+ * Отступ в пикселях для hover-зоны вокруг поповера (по умолчанию: 8).
234
+ */
176
235
  hoverOffset?: number;
236
+ /**
237
+ * If true, popover closes when clicking outside.
238
+ * Если true — поповер закрывается при клике вне его.
239
+ */
177
240
  isClickOutside?: boolean;
241
+ /**
242
+ * If true, disables all popover logic and interaction.
243
+ * Если true — отключает всю логику и взаимодействие поповера.
244
+ */
178
245
  isDisabled?: boolean;
246
+ /**
247
+ * If true, enables floating hover mode (popover stays open while mouse is near).
248
+ * Если true — включает режим плавающего hover (поповер открыт, пока мышь рядом).
249
+ */
179
250
  isFloatingHover?: boolean;
251
+ /**
252
+ * If true, popover width matches reference element.
253
+ * Если true — ширина поповера совпадает с reference-элементом.
254
+ */
180
255
  isWidthAsContent?: boolean;
256
+ /**
257
+ * Popover open/close mode: 'click', 'hover', 'clickOpen', or 'independence'.
258
+ * Режим открытия/закрытия поповера: 'click', 'hover', 'clickOpen', 'independence'.
259
+ */
181
260
  mode?: 'click' | 'hover' | 'clickOpen' | 'independence';
261
+ /**
262
+ * Offset in px between reference and popover (default: 8).
263
+ * Отступ в пикселях между reference и поповером (по умолчанию: 8).
264
+ */
182
265
  offset?: number;
266
+ /**
267
+ * Placement of the popover relative to reference (from floating-ui).
268
+ * Положение поповера относительно reference (из floating-ui).
269
+ */
183
270
  placement: Placement;
271
+ /**
272
+ * Refs to elements that should not trigger click outside close.
273
+ * Массив ref'ов, которые не должны вызывать закрытие при клике вне.
274
+ */
184
275
  refsExcludeClickOutside?: Ref<HTMLElement | null>[];
276
+ /**
277
+ * Refs to elements that should not trigger blur close.
278
+ * Массив ref'ов, которые не должны вызывать закрытие при потере фокуса.
279
+ */
185
280
  refsExcludeBlur?: Ref<HTMLElement | null>[];
281
+ /**
282
+ * Callback fired when popover is focused/opened.
283
+ * Колбэк, вызываемый при открытии/фокусе поповера.
284
+ */
186
285
  onFocus?: () => void;
286
+ /**
287
+ * Callback fired when popover is blurred/closed.
288
+ * Колбэк, вызываемый при закрытии/потере фокуса поповера.
289
+ */
187
290
  onBlur?: () => void;
291
+ /**
292
+ * Callback fired when reference element loses focus (not to excluded refs).
293
+ * Колбэк, вызываемый при потере фокуса reference-элемента (не на исключённые ref'ы).
294
+ */
188
295
  onBlurReference?: () => void;
189
296
  };
190
297
 
@@ -1,12 +1,12 @@
1
- import { aO, aN, aL, aK, aH, aM, aI, aJ } from "./context.constants-ByIVCRij.js";
1
+ import { aQ, aP, aN, aM, aJ, aO, aK, aL } from "./context.constants-D8UVM6GL.js";
2
2
  export {
3
- aO as DEFAULT_TOOLTIP_OFFSET_FALLBACK,
4
- aN as DEFAULT_TOOLTIP_PLACEMENT_FALLBACK,
5
- aL as Tooltip,
6
- aK as TooltipBox,
7
- aH as TooltipContainer,
8
- aM as TooltipContent,
9
- aI as addTooltipBoxSize,
10
- aJ as addTooltipBoxSizeConstructor
3
+ aQ as DEFAULT_TOOLTIP_OFFSET_FALLBACK,
4
+ aP as DEFAULT_TOOLTIP_PLACEMENT_FALLBACK,
5
+ aN as Tooltip,
6
+ aM as TooltipBox,
7
+ aJ as TooltipContainer,
8
+ aO as TooltipContent,
9
+ aK as addTooltipBoxSize,
10
+ aL as addTooltipBoxSizeConstructor
11
11
  };
12
12
  //# sourceMappingURL=component-tooltip.es.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./component.functions-D9ffjEok.cjs"),t=require("./context.constants-CHzb-q9a.cjs");exports.getFontSizeStyles=o.getFontSizeStyles,exports.Title=t.Title,exports.Typography=t.Typography,exports.TypographyLink=t.TypographyLink,exports.TypographyTooltip=t.TypographyTooltip,exports.addSXTypography=t.addSXTypography;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./component.functions-D9ffjEok.cjs"),t=require("./context.constants-CPdsUeiQ.cjs");exports.getFontSizeStyles=o.getFontSizeStyles,exports.Title=t.Title,exports.Typography=t.Typography,exports.TypographyLink=t.TypographyLink,exports.TypographyTooltip=t.TypographyTooltip,exports.addSXTypography=t.addSXTypography;
2
2
  //# sourceMappingURL=component-typography.cjs.js.map
@@ -86,16 +86,59 @@ declare type IThemeTypographyHeading = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' |
86
86
 
87
87
  declare type IThemeTypographyWeight = 100 | 300 | 400 | 500 | 700 | 900;
88
88
 
89
+ /**
90
+ * Props for the Popover component. / Свойства компонента Popover.
91
+ */
89
92
  declare type PopoverProps = PropsWithChildren & {
93
+ /**
94
+ * Additional class name for the popover root element.
95
+ * Дополнительный CSS-класс для корневого элемента поповера.
96
+ */
90
97
  className?: string;
98
+ /**
99
+ * Maximum width of the popover (CSS value, e.g. '300px' or '100%').
100
+ * Максимальная ширина поповера (CSS-значение, например, '300px' или '100%').
101
+ */
91
102
  maxWidth?: string;
103
+ /**
104
+ * Maximum height of the popover (CSS value, e.g. '400px' or '100%').
105
+ * Максимальная высота поповера (CSS-значение, например, '400px' или '100%').
106
+ */
92
107
  maxHeight?: string;
108
+ /**
109
+ * Controls whether the popover is open (visible).
110
+ * Управляет открытием поповера (видимостью).
111
+ */
93
112
  isOpen: boolean;
113
+ /**
114
+ * If true, always show the outline (for accessibility/debug).
115
+ * Если true — всегда показывать обводку (для доступности/отладки).
116
+ */
94
117
  isShowAlwaysOutline?: boolean;
118
+ /**
119
+ * Styles for the floating popover element (from floating-ui).
120
+ * Стили для плавающего элемента поповера (от floating-ui).
121
+ */
95
122
  floatingStyles: CSSProperties;
123
+ /**
124
+ * Callback fired when the popover should close (e.g. click outside).
125
+ * Колбэк, вызываемый при необходимости закрыть поповер (например, при клике вне).
126
+ */
96
127
  onClose?: () => void;
128
+ /**
129
+ * Ref to the popover root element.
130
+ * Ref на корневой элемент поповера.
131
+ */
97
132
  ref?: Ref<HTMLElement | null>;
133
+ /**
134
+ * Size of the popover (affects padding, font, etc.).
135
+ * Размер поповера (влияет на отступы, шрифт и т.д.).
136
+ */
98
137
  size?: IThemeSize;
138
+ /**
139
+ * Visual genre/style of the popover (e.g. 'black', 'primary').
140
+ * Визуальный стиль поповера (например, 'black', 'primary').
141
+ */
99
142
  genre?: TButtonGenre;
100
143
  } & addSXProps & addFontProps & addSXTypographyProps;
101
144
 
@@ -187,20 +230,84 @@ declare type TypographyVariantProps = TypographyDefaultProps & {
187
230
  variant: IThemeTypographyHeading;
188
231
  };
189
232
 
233
+ /**
234
+ * Props for the usePopover hook (popover logic and behavior).
235
+ * Свойства для хука usePopover (логика и поведение поповера).
236
+ */
190
237
  declare type UsePopoverProps = {
238
+ /**
239
+ * Поддержка фокуса внутри поповера (если true, фокус будет удерживаться внутри поповера).
240
+ */
241
+ isFocusTrap?: boolean;
242
+ /**
243
+ * Delay in ms before closing popover on hover out (default: 100).
244
+ * Задержка в мс перед закрытием поповера при уходе мыши (по умолчанию: 100).
245
+ */
191
246
  hoverCloseDelay?: number;
247
+ /**
248
+ * Offset in px for hover zone around popover (default: 8).
249
+ * Отступ в пикселях для hover-зоны вокруг поповера (по умолчанию: 8).
250
+ */
192
251
  hoverOffset?: number;
252
+ /**
253
+ * If true, popover closes when clicking outside.
254
+ * Если true — поповер закрывается при клике вне его.
255
+ */
193
256
  isClickOutside?: boolean;
257
+ /**
258
+ * If true, disables all popover logic and interaction.
259
+ * Если true — отключает всю логику и взаимодействие поповера.
260
+ */
194
261
  isDisabled?: boolean;
262
+ /**
263
+ * If true, enables floating hover mode (popover stays open while mouse is near).
264
+ * Если true — включает режим плавающего hover (поповер открыт, пока мышь рядом).
265
+ */
195
266
  isFloatingHover?: boolean;
267
+ /**
268
+ * If true, popover width matches reference element.
269
+ * Если true — ширина поповера совпадает с reference-элементом.
270
+ */
196
271
  isWidthAsContent?: boolean;
272
+ /**
273
+ * Popover open/close mode: 'click', 'hover', 'clickOpen', or 'independence'.
274
+ * Режим открытия/закрытия поповера: 'click', 'hover', 'clickOpen', 'independence'.
275
+ */
197
276
  mode?: 'click' | 'hover' | 'clickOpen' | 'independence';
277
+ /**
278
+ * Offset in px between reference and popover (default: 8).
279
+ * Отступ в пикселях между reference и поповером (по умолчанию: 8).
280
+ */
198
281
  offset?: number;
282
+ /**
283
+ * Placement of the popover relative to reference (from floating-ui).
284
+ * Положение поповера относительно reference (из floating-ui).
285
+ */
199
286
  placement: Placement;
287
+ /**
288
+ * Refs to elements that should not trigger click outside close.
289
+ * Массив ref'ов, которые не должны вызывать закрытие при клике вне.
290
+ */
200
291
  refsExcludeClickOutside?: Ref<HTMLElement | null>[];
292
+ /**
293
+ * Refs to elements that should not trigger blur close.
294
+ * Массив ref'ов, которые не должны вызывать закрытие при потере фокуса.
295
+ */
201
296
  refsExcludeBlur?: Ref<HTMLElement | null>[];
297
+ /**
298
+ * Callback fired when popover is focused/opened.
299
+ * Колбэк, вызываемый при открытии/фокусе поповера.
300
+ */
202
301
  onFocus?: () => void;
302
+ /**
303
+ * Callback fired when popover is blurred/closed.
304
+ * Колбэк, вызываемый при закрытии/потере фокуса поповера.
305
+ */
203
306
  onBlur?: () => void;
307
+ /**
308
+ * Callback fired when reference element loses focus (not to excluded refs).
309
+ * Колбэк, вызываемый при потере фокуса reference-элемента (не на исключённые ref'ы).
310
+ */
204
311
  onBlurReference?: () => void;
205
312
  };
206
313
 
@@ -1,11 +1,11 @@
1
1
  import { g } from "./component.functions-DNW6h8kk.js";
2
- import { aQ, aR, aS, aT, aP } from "./context.constants-ByIVCRij.js";
2
+ import { aS, aT, aU, aV, aR } from "./context.constants-D8UVM6GL.js";
3
3
  export {
4
- aQ as Title,
5
- aR as Typography,
6
- aS as TypographyLink,
7
- aT as TypographyTooltip,
8
- aP as addSXTypography,
4
+ aS as Title,
5
+ aT as Typography,
6
+ aU as TypographyLink,
7
+ aV as TypographyTooltip,
8
+ aR as addSXTypography,
9
9
  g as getFontSizeStyles
10
10
  };
11
11
  //# sourceMappingURL=component-typography.es.js.map
@@ -1,2 +1,2 @@
1
- "use strict";const o=require("./jsx-runtime-BcGej2Kr.cjs"),c=require("./component-5Utdcc2G.cjs"),n=require("react"),r=require("./context.constants-CHzb-q9a.cjs");exports.Accordion=e=>{const i=n.useCallback(()=>{e.onClickSummary&&e.onClickSummary()},[e]),s=n.useCallback(o=>{e.onClickIcon&&(o.stopPropagation(),e.onClickIcon())},[e]);return o.jsxRuntimeExports.jsx(c.Stack,{...e.wrapperProps,children:o.jsxRuntimeExports.jsxs(r.AccordionWrapper,{children:[o.jsxRuntimeExports.jsxs(r.AccordionSummary,{onClick:i,children:[o.jsxRuntimeExports.jsx(r.AccordionSummaryContent,{$isAccordionIcon:e.isAccordionIcon,children:e.accordionSummary}),e.isAccordionIcon&&o.jsxRuntimeExports.jsx(r.AccordionStyledIcon,{$expanded:e.expanded,onClick:s,name:"Arrow1",color:"black100",type:"id",size:"large"})]}),o.jsxRuntimeExports.jsx(r.AccordionDetails,{$expanded:e.expanded,children:e.accordionDetails})]})})};
2
- //# sourceMappingURL=component-DFMjWiWi.cjs.map
1
+ "use strict";const o=require("./jsx-runtime-BcGej2Kr.cjs"),c=require("./component-5Utdcc2G.cjs"),n=require("react"),r=require("./context.constants-CPdsUeiQ.cjs");exports.Accordion=e=>{const i=n.useCallback(()=>{e.onClickSummary&&e.onClickSummary()},[e]),s=n.useCallback(o=>{e.onClickIcon&&(o.stopPropagation(),e.onClickIcon())},[e]);return o.jsxRuntimeExports.jsx(c.Stack,{...e.wrapperProps,children:o.jsxRuntimeExports.jsxs(r.AccordionWrapper,{children:[o.jsxRuntimeExports.jsxs(r.AccordionSummary,{onClick:i,children:[o.jsxRuntimeExports.jsx(r.AccordionSummaryContent,{$isAccordionIcon:e.isAccordionIcon,children:e.accordionSummary}),e.isAccordionIcon&&o.jsxRuntimeExports.jsx(r.AccordionStyledIcon,{$expanded:e.expanded,onClick:s,name:"Arrow1",color:"black100",type:"id",size:"large"})]}),o.jsxRuntimeExports.jsx(r.AccordionDetails,{$expanded:e.expanded,children:e.accordionDetails})]})})};
2
+ //# sourceMappingURL=component-zyoew755.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"component-DFMjWiWi.cjs","sources":["../src/components/accordion/component.tsx"],"sourcesContent":["import { Stack } from '@local/components/stack';\n\nimport React, { FC, useCallback } from 'react';\n\nimport {\n AccordionDetails,\n AccordionProps,\n AccordionStyledIcon,\n AccordionSummary,\n AccordionSummaryContent,\n AccordionWrapper,\n} from '.';\n\nexport const Accordion: FC<AccordionProps> = (props) => {\n const onClickSummary = useCallback(() => {\n if (props.onClickSummary) props.onClickSummary();\n }, [props]);\n\n const onClickIcon = useCallback(\n (event: React.MouseEvent<SVGSVGElement>) => {\n if (props.onClickIcon) {\n event.stopPropagation();\n\n props.onClickIcon();\n }\n },\n [props],\n );\n\n return (\n <Stack {...props.wrapperProps}>\n <AccordionWrapper>\n <AccordionSummary onClick={onClickSummary}>\n <AccordionSummaryContent $isAccordionIcon={props.isAccordionIcon}>\n {props.accordionSummary}\n </AccordionSummaryContent>\n {props.isAccordionIcon && (\n <AccordionStyledIcon\n $expanded={props.expanded}\n onClick={onClickIcon}\n name='Arrow1'\n color='black100'\n type='id'\n size='large'\n />\n )}\n </AccordionSummary>\n <AccordionDetails $expanded={props.expanded}>{props.accordionDetails}</AccordionDetails>\n </AccordionWrapper>\n </Stack>\n );\n};\n"],"names":["props","onClickSummary","useCallback","onClickIcon","event","stopPropagation","Stack","wrapperProps","children","AccordionWrapper","jsxs","AccordionSummary","onClick","jsx","AccordionSummaryContent","$isAccordionIcon","isAccordionIcon","accordionSummary","AccordionStyledIcon","$expanded","expanded","name","color","type","size","AccordionDetails","accordionDetails"],"mappings":"oLAa8CA,IAC5C,MAAMC,EAAiBC,EAAAA,YAAY,KAC7BF,EAAMC,gBAAgBD,EAAMC,kBAC/B,CAACD,IAEEG,EAAcD,EAAAA,YACjBE,IACKJ,EAAMG,cACRC,EAAMC,kBAENL,EAAMG,gBAGV,CAACH,IAGH,+BACGM,QAAA,IAAUN,EAAMO,aACfC,kCAACC,mBAAA,CACCD,SAAA,CAAAE,EAAAA,kBAAAA,KAACC,EAAAA,iBAAA,CAAiBC,QAASX,EACzBO,SAAA,CAAAK,wBAACC,EAAAA,wBAAA,CAAwBC,iBAAkBf,EAAMgB,gBAC9CR,WAAMS,mBAERjB,EAAMgB,iBACLH,EAAAA,kBAAAA,IAACK,EAAAA,oBAAA,CACCC,UAAWnB,EAAMoB,SACjBR,QAAST,EACTkB,KAAK,SACLC,MAAM,WACNC,KAAK,KACLC,KAAK,qCAIVC,EAAAA,iBAAA,CAAiBN,UAAWnB,EAAMoB,SAAWZ,WAAMkB"}
1
+ {"version":3,"file":"component-zyoew755.cjs","sources":["../src/components/accordion/component.tsx"],"sourcesContent":["import { Stack } from '@local/components/stack';\n\nimport React, { FC, useCallback } from 'react';\n\nimport {\n AccordionDetails,\n AccordionProps,\n AccordionStyledIcon,\n AccordionSummary,\n AccordionSummaryContent,\n AccordionWrapper,\n} from '.';\n\nexport const Accordion: FC<AccordionProps> = (props) => {\n const onClickSummary = useCallback(() => {\n if (props.onClickSummary) props.onClickSummary();\n }, [props]);\n\n const onClickIcon = useCallback(\n (event: React.MouseEvent<SVGSVGElement>) => {\n if (props.onClickIcon) {\n event.stopPropagation();\n\n props.onClickIcon();\n }\n },\n [props],\n );\n\n return (\n <Stack {...props.wrapperProps}>\n <AccordionWrapper>\n <AccordionSummary onClick={onClickSummary}>\n <AccordionSummaryContent $isAccordionIcon={props.isAccordionIcon}>\n {props.accordionSummary}\n </AccordionSummaryContent>\n {props.isAccordionIcon && (\n <AccordionStyledIcon\n $expanded={props.expanded}\n onClick={onClickIcon}\n name='Arrow1'\n color='black100'\n type='id'\n size='large'\n />\n )}\n </AccordionSummary>\n <AccordionDetails $expanded={props.expanded}>{props.accordionDetails}</AccordionDetails>\n </AccordionWrapper>\n </Stack>\n );\n};\n"],"names":["props","onClickSummary","useCallback","onClickIcon","event","stopPropagation","Stack","wrapperProps","children","AccordionWrapper","jsxs","AccordionSummary","onClick","jsx","AccordionSummaryContent","$isAccordionIcon","isAccordionIcon","accordionSummary","AccordionStyledIcon","$expanded","expanded","name","color","type","size","AccordionDetails","accordionDetails"],"mappings":"oLAa8CA,IAC5C,MAAMC,EAAiBC,EAAAA,YAAY,KAC7BF,EAAMC,gBAAgBD,EAAMC,kBAC/B,CAACD,IAEEG,EAAcD,EAAAA,YACjBE,IACKJ,EAAMG,cACRC,EAAMC,kBAENL,EAAMG,gBAGV,CAACH,IAGH,+BACGM,QAAA,IAAUN,EAAMO,aACfC,kCAACC,mBAAA,CACCD,SAAA,CAAAE,EAAAA,kBAAAA,KAACC,EAAAA,iBAAA,CAAiBC,QAASX,EACzBO,SAAA,CAAAK,wBAACC,EAAAA,wBAAA,CAAwBC,iBAAkBf,EAAMgB,gBAC9CR,WAAMS,mBAERjB,EAAMgB,iBACLH,EAAAA,kBAAAA,IAACK,EAAAA,oBAAA,CACCC,UAAWnB,EAAMoB,SACjBR,QAAST,EACTkB,KAAK,SACLC,MAAM,WACNC,KAAK,KACLC,KAAK,qCAIVC,EAAAA,iBAAA,CAAiBN,UAAWnB,EAAMoB,SAAWZ,WAAMkB"}
@@ -1,7 +1,7 @@
1
1
  import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
2
  import { useState, useEffect, useCallback } from "react";
3
3
  import { MapContainer, TileLayer, Marker, useMapEvents, Popup, useMap } from "react-leaflet";
4
- import { ae as DEFAULT_MAP_CENTER, ag as MapWrapper, ab as DEFAULT_MAP_MAX_ZOOM, ac as DEFAULT_MAP_MIN_ZOOM, ad as DEFAULT_MAP_ZOOM, af as DEFAULT_MAP_THEME, B as Button } from "./context.constants-ByIVCRij.js";
4
+ import { ag as DEFAULT_MAP_CENTER, ai as MapWrapper, ad as DEFAULT_MAP_MAX_ZOOM, ae as DEFAULT_MAP_MIN_ZOOM, af as DEFAULT_MAP_ZOOM, ah as DEFAULT_MAP_THEME, B as Button } from "./context.constants-D8UVM6GL.js";
5
5
  import "leaflet.markercluster";
6
6
  import MarkerClusterGroup from "react-leaflet-markercluster";
7
7
  import "styled-components";
@@ -333,4 +333,4 @@ export {
333
333
  customTextIcon as d,
334
334
  customDefaultIcon as e
335
335
  };
336
- //# sourceMappingURL=component.components-KcVM2DN2.js.map
336
+ //# sourceMappingURL=component.components-CFsHZ-xd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.components-KcVM2DN2.js","sources":["../src/components/map/component.map-cluster.tsx","../src/components/map/component.map-dot.tsx","../src/components/map/component.cluster.tsx","../src/components/map/component.functions.tsx","../src/components/map/component.components.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { MapContainer, TileLayer } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n DEFAULT_MAP_CENTER,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_ZOOM,\n MapProps,\n MapWrapper,\n MarkerCluster,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapCluster = <T extends object>(props: MapProps<T>) => {\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_CENTER);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n return (\n center &&\n theme && (\n <MapWrapper style={props.style}>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n attributionControl={false}\n zoomControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <CustomZoomControl />\n <TileLayer url={theme.url} attribution={theme.attribution} />\n <MarkerCluster getCustomClusterLabel={props.getCustomClusterLabel} markers={props.markers} />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n","import { useEffect, useState } from 'react';\nimport { MapContainer, Marker, TileLayer, useMapEvents } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n customDefaultIcon,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_THEME,\n DEFAULT_MAP_ZOOM,\n MapDotProps,\n MapWrapper,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapDot = (props: MapDotProps) => {\n const [position, setPosition] = useState<[number, number] | null>(props.coords ?? null);\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_THEME);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n const MapClickHandler = () => {\n useMapEvents({\n click(e) {\n if ((e.originalEvent.target as HTMLElement).classList.contains('leaflet-container')) {\n const coords: [number, number] = [e.latlng.lat, e.latlng.lng];\n setPosition(coords);\n props.onSelect(coords);\n }\n },\n });\n return null;\n };\n\n useEffect(() => {\n if (props.coords) {\n setPosition(props.coords);\n }\n }, [props.coords]);\n return (\n center && (\n <MapWrapper>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n zoomControl={false}\n attributionControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <TileLayer\n url={theme?.url ?? 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'}\n attribution={theme?.attribution}\n />\n <CustomZoomControl />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n <MapClickHandler />\n {position && <Marker position={position} icon={customDefaultIcon()} />}\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n","import leaflet from 'leaflet';\nimport 'leaflet.markercluster';\n\nimport { Marker, Popup } from 'react-leaflet';\nimport MarkerClusterGroup from 'react-leaflet-markercluster';\n\nimport { createClusterIcon, customTextIcon, MarkerClusterProps } from '.';\n\nexport const MarkerCluster = <T extends object>(props: MarkerClusterProps<T>) => {\n return (\n <MarkerClusterGroup\n iconCreateFunction={(cluster: leaflet.MarkerCluster) => createClusterIcon(cluster, props.getCustomClusterLabel)}\n chunkedLoading\n showCoverageOnHover={false}\n spiderfyOnMaxZoom={false}\n >\n {props.markers.map((marker) => (\n <Marker\n key={marker.id}\n position={marker.position}\n icon={customTextIcon(props?.getCustomClusterLabel?.(marker.options ? [marker.options] : []) ?? '')}\n {...({\n options: marker.options,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as any)}\n >\n <Popup {...marker.popupProps}>{marker.popupContent}</Popup>\n </Marker>\n ))}\n </MarkerClusterGroup>\n );\n};\n","import leaflet from 'leaflet';\n\nexport const createClusterIcon = <T extends object>(\n cluster: leaflet.MarkerCluster,\n getCustomClusterLabel?: (markers: T[]) => string,\n) => {\n const markersCount = cluster.getChildCount();\n const markers = cluster.getAllChildMarkers();\n const customLabel = getCustomClusterLabel?.(markers.map((m) => (m.options as { options: T }).options));\n\n return new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${markersCount} | ${customLabel}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n });\n};\n\nexport const customTextIcon = (text: string) =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${text}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n\nexport const customDefaultIcon = () =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n","import { useDeepCompareMemoize } from '@local/hooks/use-deep-compare-memoize';\n\nimport { useCallback, useEffect, useState } from 'react';\nimport { useMap } from 'react-leaflet';\n\nimport { Button } from '../button';\nimport { UpdateMapSettingsProps } from '.';\n\nexport function UpdateMapSettings(props: UpdateMapSettingsProps) {\n const map = useMap();\n const propsMemo = useDeepCompareMemoize(props);\n\n useEffect(() => {\n if (propsMemo.center && propsMemo.maxBounds && propsMemo.zoom) {\n map.setMaxBounds(propsMemo.maxBounds);\n map.setView(propsMemo.center, propsMemo.zoom);\n } else {\n if (propsMemo.center) {\n map.setView(propsMemo.center, propsMemo.zoom);\n }\n }\n }, [map, propsMemo]);\n\n return null;\n}\n\nexport function CustomZoomControl() {\n const map = useMap();\n\n const handleZoomOut = useCallback(() => map.zoomOut(), [map]);\n const handleZoomIn = useCallback(() => map.zoomIn(), [map]);\n const [canZoomIn, setCanZoomIn] = useState(true);\n const [canZoomOut, setCanZoomOut] = useState(true);\n\n useEffect(() => {\n const updateZoomStatus = () => {\n setCanZoomIn(map.getZoom() < map.getMaxZoom());\n setCanZoomOut(map.getZoom() > map.getMinZoom());\n };\n\n map.on('zoomend', updateZoomStatus);\n updateZoomStatus();\n\n return () => {\n map.off('zoomend', updateZoomStatus);\n };\n }, [map]);\n return (\n <div\n style={{\n position: 'absolute',\n top: '50%',\n right: '20px',\n transform: 'translateY(-50%)',\n zIndex: 400,\n display: 'flex',\n flexDirection: 'column',\n gap: '10px',\n pointerEvents: 'none',\n }}\n >\n <Button\n isHiddenBorder\n genre='realebail-product'\n isWidthAsHeight\n isHidden={!canZoomIn}\n isDisabled={!canZoomIn}\n size='small'\n icons={[\n {\n name: 'Plus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomIn();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n <Button\n isHiddenBorder\n genre='realebail-product'\n isHidden={!canZoomOut}\n isDisabled={!canZoomOut}\n isWidthAsHeight\n size='small'\n icons={[\n {\n name: 'Minus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomOut();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n </div>\n );\n}\n"],"names":["jsx","jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"component.components-CFsHZ-xd.js","sources":["../src/components/map/component.map-cluster.tsx","../src/components/map/component.map-dot.tsx","../src/components/map/component.cluster.tsx","../src/components/map/component.functions.tsx","../src/components/map/component.components.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { MapContainer, TileLayer } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n DEFAULT_MAP_CENTER,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_ZOOM,\n MapProps,\n MapWrapper,\n MarkerCluster,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapCluster = <T extends object>(props: MapProps<T>) => {\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_CENTER);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n return (\n center &&\n theme && (\n <MapWrapper style={props.style}>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n attributionControl={false}\n zoomControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <CustomZoomControl />\n <TileLayer url={theme.url} attribution={theme.attribution} />\n <MarkerCluster getCustomClusterLabel={props.getCustomClusterLabel} markers={props.markers} />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n","import { useEffect, useState } from 'react';\nimport { MapContainer, Marker, TileLayer, useMapEvents } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n customDefaultIcon,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_THEME,\n DEFAULT_MAP_ZOOM,\n MapDotProps,\n MapWrapper,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapDot = (props: MapDotProps) => {\n const [position, setPosition] = useState<[number, number] | null>(props.coords ?? null);\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_THEME);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n const MapClickHandler = () => {\n useMapEvents({\n click(e) {\n if ((e.originalEvent.target as HTMLElement).classList.contains('leaflet-container')) {\n const coords: [number, number] = [e.latlng.lat, e.latlng.lng];\n setPosition(coords);\n props.onSelect(coords);\n }\n },\n });\n return null;\n };\n\n useEffect(() => {\n if (props.coords) {\n setPosition(props.coords);\n }\n }, [props.coords]);\n return (\n center && (\n <MapWrapper>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n zoomControl={false}\n attributionControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <TileLayer\n url={theme?.url ?? 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'}\n attribution={theme?.attribution}\n />\n <CustomZoomControl />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n <MapClickHandler />\n {position && <Marker position={position} icon={customDefaultIcon()} />}\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n","import leaflet from 'leaflet';\nimport 'leaflet.markercluster';\n\nimport { Marker, Popup } from 'react-leaflet';\nimport MarkerClusterGroup from 'react-leaflet-markercluster';\n\nimport { createClusterIcon, customTextIcon, MarkerClusterProps } from '.';\n\nexport const MarkerCluster = <T extends object>(props: MarkerClusterProps<T>) => {\n return (\n <MarkerClusterGroup\n iconCreateFunction={(cluster: leaflet.MarkerCluster) => createClusterIcon(cluster, props.getCustomClusterLabel)}\n chunkedLoading\n showCoverageOnHover={false}\n spiderfyOnMaxZoom={false}\n >\n {props.markers.map((marker) => (\n <Marker\n key={marker.id}\n position={marker.position}\n icon={customTextIcon(props?.getCustomClusterLabel?.(marker.options ? [marker.options] : []) ?? '')}\n {...({\n options: marker.options,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as any)}\n >\n <Popup {...marker.popupProps}>{marker.popupContent}</Popup>\n </Marker>\n ))}\n </MarkerClusterGroup>\n );\n};\n","import leaflet from 'leaflet';\n\nexport const createClusterIcon = <T extends object>(\n cluster: leaflet.MarkerCluster,\n getCustomClusterLabel?: (markers: T[]) => string,\n) => {\n const markersCount = cluster.getChildCount();\n const markers = cluster.getAllChildMarkers();\n const customLabel = getCustomClusterLabel?.(markers.map((m) => (m.options as { options: T }).options));\n\n return new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${markersCount} | ${customLabel}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n });\n};\n\nexport const customTextIcon = (text: string) =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${text}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n\nexport const customDefaultIcon = () =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n","import { useDeepCompareMemoize } from '@local/hooks/use-deep-compare-memoize';\n\nimport { useCallback, useEffect, useState } from 'react';\nimport { useMap } from 'react-leaflet';\n\nimport { Button } from '../button';\nimport { UpdateMapSettingsProps } from '.';\n\nexport function UpdateMapSettings(props: UpdateMapSettingsProps) {\n const map = useMap();\n const propsMemo = useDeepCompareMemoize(props);\n\n useEffect(() => {\n if (propsMemo.center && propsMemo.maxBounds && propsMemo.zoom) {\n map.setMaxBounds(propsMemo.maxBounds);\n map.setView(propsMemo.center, propsMemo.zoom);\n } else {\n if (propsMemo.center) {\n map.setView(propsMemo.center, propsMemo.zoom);\n }\n }\n }, [map, propsMemo]);\n\n return null;\n}\n\nexport function CustomZoomControl() {\n const map = useMap();\n\n const handleZoomOut = useCallback(() => map.zoomOut(), [map]);\n const handleZoomIn = useCallback(() => map.zoomIn(), [map]);\n const [canZoomIn, setCanZoomIn] = useState(true);\n const [canZoomOut, setCanZoomOut] = useState(true);\n\n useEffect(() => {\n const updateZoomStatus = () => {\n setCanZoomIn(map.getZoom() < map.getMaxZoom());\n setCanZoomOut(map.getZoom() > map.getMinZoom());\n };\n\n map.on('zoomend', updateZoomStatus);\n updateZoomStatus();\n\n return () => {\n map.off('zoomend', updateZoomStatus);\n };\n }, [map]);\n return (\n <div\n style={{\n position: 'absolute',\n top: '50%',\n right: '20px',\n transform: 'translateY(-50%)',\n zIndex: 400,\n display: 'flex',\n flexDirection: 'column',\n gap: '10px',\n pointerEvents: 'none',\n }}\n >\n <Button\n isHiddenBorder\n genre='realebail-product'\n isWidthAsHeight\n isHidden={!canZoomIn}\n isDisabled={!canZoomIn}\n size='small'\n icons={[\n {\n name: 'Plus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomIn();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n <Button\n isHiddenBorder\n genre='realebail-product'\n isHidden={!canZoomOut}\n isDisabled={!canZoomOut}\n isWidthAsHeight\n size='small'\n icons={[\n {\n name: 'Minus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomOut();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n </div>\n );\n}\n"],"names":["jsx","jsxs"],"mappings":";;;;;;;;;;AAoBO,MAAM,aAAa,CAAmB,UAAuB;AAClE,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,MAAM,SAAS,kBAAkB;AACpE,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,MAAM,MAAM;AAEjD,YAAU,MAAM;AACd,aAAS,MAAM,KAAK;AAAA,EAAA,GACnB,CAAC,MAAM,KAAK,CAAC;AAEhB,YAAU,MAAM;AACd,QAAI,MAAM,QAAQ;AAChB,gBAAU,MAAM,MAAM;AAAA,IAAA;AAAA,EACxB,GACC,CAAC,MAAM,MAAM,CAAC;AAEjB,SACE,UACA,SACEA,kCAAAA,IAAC,YAAA,EAAW,OAAO,MAAM,OACvB,UAAAC,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAM,MAAM,QAAQ;AAAA,MACpB,SAAS,MAAM,WAAW;AAAA,MAC1B,SAAS,MAAM,WAAW;AAAA,MAC1B,oBAAoB;AAAA,MACpB,aAAa;AAAA,MACb,OAAO,EAAE,QAAQ,QAAQ,OAAO,OAAA;AAAA,MAEhC,UAAA;AAAA,QAAAD,kCAAAA,IAAC,mBAAA,EAAkB;AAAA,8CAClB,WAAA,EAAU,KAAK,MAAM,KAAK,aAAa,MAAM,aAAa;AAAA,8CAC1D,eAAA,EAAc,uBAAuB,MAAM,uBAAuB,SAAS,MAAM,SAAS;AAAA,QAC3FA,sCAAC,qBAAkB,QAAgB,WAAW,MAAM,WAAW,MAAM,MAAM,KAAA,CAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAErF;AAGN;AClCO,MAAM,SAAS,CAAC,UAAuB;AAC5C,QAAM,CAAC,UAAU,WAAW,IAAI,SAAkC,MAAM,UAAU,IAAI;AACtF,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,MAAM,SAAS,iBAAiB;AACnE,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,MAAM,MAAM;AAEjD,YAAU,MAAM;AACd,aAAS,MAAM,KAAK;AAAA,EAAA,GACnB,CAAC,MAAM,KAAK,CAAC;AAEhB,YAAU,MAAM;AACd,QAAI,MAAM,QAAQ;AAChB,gBAAU,MAAM,MAAM;AAAA,IAAA;AAAA,EACxB,GACC,CAAC,MAAM,MAAM,CAAC;AAEjB,QAAM,kBAAkB,MAAM;AAC5B,iBAAa;AAAA,MACX,MAAM,GAAG;AACP,YAAK,EAAE,cAAc,OAAuB,UAAU,SAAS,mBAAmB,GAAG;AACnF,gBAAM,SAA2B,CAAC,EAAE,OAAO,KAAK,EAAE,OAAO,GAAG;AAC5D,sBAAY,MAAM;AAClB,gBAAM,SAAS,MAAM;AAAA,QAAA;AAAA,MACvB;AAAA,IACF,CACD;AACD,WAAO;AAAA,EAAA;AAGT,YAAU,MAAM;AACd,QAAI,MAAM,QAAQ;AAChB,kBAAY,MAAM,MAAM;AAAA,IAAA;AAAA,EAC1B,GACC,CAAC,MAAM,MAAM,CAAC;AACjB,SACE,gDACG,YAAA,EACC,UAAAC,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAM,MAAM,QAAQ;AAAA,MACpB,SAAS,MAAM,WAAW;AAAA,MAC1B,SAAS,MAAM,WAAW;AAAA,MAC1B,aAAa;AAAA,MACb,oBAAoB;AAAA,MACpB,OAAO,EAAE,QAAQ,QAAQ,OAAO,OAAA;AAAA,MAEhC,UAAA;AAAA,QAAAD,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAK,+BAAO,QAAO;AAAA,YACnB,aAAa,+BAAO;AAAA,UAAA;AAAA,QAAA;AAAA,8CAErB,mBAAA,EAAkB;AAAA,QACnBA,sCAAC,qBAAkB,QAAgB,WAAW,MAAM,WAAW,MAAM,MAAM,MAAM;AAAA,8CAChF,iBAAA,EAAgB;AAAA,QAChB,YAAYA,kCAAAA,IAAC,QAAA,EAAO,UAAoB,MAAM,oBAAkB,CAAG;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAExE;AAGN;ACpEO,MAAM,gBAAgB,CAAmB,UAAiC;AAC/E,SACEA,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,oBAAoB,CAAC,YAAmC,kBAAkB,SAAS,MAAM,qBAAqB;AAAA,MAC9G,gBAAc;AAAA,MACd,qBAAqB;AAAA,MACrB,mBAAmB;AAAA,MAElB,UAAA,MAAM,QAAQ,IAAI,CAAC,WAAA;;AAClBA,iDAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YAEC,UAAU,OAAO;AAAA,YACjB,MAAM,iBAAe,oCAAO,0BAAP,+BAA+B,OAAO,UAAU,CAAC,OAAO,OAAO,IAAI,CAAA,OAAO,EAAE;AAAA,YAChG,GAAI;AAAA,cACH,SAAS,OAAO;AAAA;AAAA,YAAA;AAAA,YAIlB,gDAAC,OAAA,EAAO,GAAG,OAAO,YAAa,iBAAO,aAAA,CAAa;AAAA,UAAA;AAAA,UAR9C,OAAO;AAAA,QAAA;AAAA,OAUf;AAAA,IAAA;AAAA,EAAA;AAGP;AC7BO,MAAM,oBAAoB,CAC/B,SACA,0BACG;AACH,QAAM,eAAe,QAAQ,cAAA;AAC7B,QAAM,UAAU,QAAQ,mBAAA;AACxB,QAAM,cAAc,+DAAwB,QAAQ,IAAI,CAAC,MAAO,EAAE,QAA2B,OAAO;AAEpG,SAAO,IAAI,QAAQ,QAAQ;AAAA,IACzB,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YA2BE,YAAY,MAAM,WAAW;AAAA;AAAA;AAAA;AAAA,IAIrC,UAAU,IAAI,QAAQ,MAAM,IAAI,EAAE;AAAA,IAClC,YAAY,CAAC,IAAI,EAAE;AAAA,EAAA,CACpB;AACH;AAEO,MAAM,iBAAiB,CAAC,SAC7B,IAAI,QAAQ,QAAQ;AAAA,EAClB,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YA2BE,IAAI;AAAA;AAAA;AAAA;AAAA,EAIZ,UAAU,IAAI,QAAQ,MAAM,IAAI,EAAE;AAAA,EAClC,YAAY,CAAC,IAAI,EAAE;AAAA,EACnB,aAAa,CAAC,GAAG,GAAG;AACtB,CAAC;AAEI,MAAM,oBAAoB,MAC/B,IAAI,QAAQ,QAAQ;AAAA,EAClB,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASN,UAAU,IAAI,QAAQ,MAAM,IAAI,EAAE;AAAA,EAClC,YAAY,CAAC,IAAI,EAAE;AAAA,EACnB,aAAa,CAAC,GAAG,GAAG;AACtB,CAAC;AC3FI,SAAS,kBAAkB,OAA+B;AAC/D,QAAM,MAAM,OAAA;AACZ,QAAM,YAAY,sBAAsB,KAAK;AAE7C,YAAU,MAAM;AACd,QAAI,UAAU,UAAU,UAAU,aAAa,UAAU,MAAM;AAC7D,UAAI,aAAa,UAAU,SAAS;AACpC,UAAI,QAAQ,UAAU,QAAQ,UAAU,IAAI;AAAA,IAAA,OACvC;AACL,UAAI,UAAU,QAAQ;AACpB,YAAI,QAAQ,UAAU,QAAQ,UAAU,IAAI;AAAA,MAAA;AAAA,IAC9C;AAAA,EACF,GACC,CAAC,KAAK,SAAS,CAAC;AAEnB,SAAO;AACT;AAEO,SAAS,oBAAoB;AAClC,QAAM,MAAM,OAAA;AAEZ,QAAM,gBAAgB,YAAY,MAAM,IAAI,WAAW,CAAC,GAAG,CAAC;AAC5D,QAAM,eAAe,YAAY,MAAM,IAAI,UAAU,CAAC,GAAG,CAAC;AAC1D,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,IAAI;AAC/C,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,IAAI;AAEjD,YAAU,MAAM;AACd,UAAM,mBAAmB,MAAM;AAC7B,mBAAa,IAAI,QAAA,IAAY,IAAI,YAAY;AAC7C,oBAAc,IAAI,QAAA,IAAY,IAAI,YAAY;AAAA,IAAA;AAGhD,QAAI,GAAG,WAAW,gBAAgB;AAClC,qBAAA;AAEA,WAAO,MAAM;AACX,UAAI,IAAI,WAAW,gBAAgB;AAAA,IAAA;AAAA,EACrC,GACC,CAAC,GAAG,CAAC;AACR,SACEC,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,UAAU;AAAA,QACV,KAAK;AAAA,QACL,OAAO;AAAA,QACP,WAAW;AAAA,QACX,QAAQ;AAAA,QACR,SAAS;AAAA,QACT,eAAe;AAAA,QACf,KAAK;AAAA,QACL,eAAe;AAAA,MAAA;AAAA,MAGjB,UAAA;AAAA,QAAAD,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,gBAAc;AAAA,YACd,OAAM;AAAA,YACN,iBAAe;AAAA,YACf,UAAU,CAAC;AAAA,YACX,YAAY,CAAC;AAAA,YACb,MAAK;AAAA,YACL,OAAO;AAAA,cACL;AAAA,gBACE,MAAM;AAAA,gBACN,MAAM;AAAA,gBACN,MAAM;AAAA,cAAA;AAAA,YACR;AAAA,YAEF,IAAI;AAAA,cACF,SAAS;AAAA,gBACP,eAAe;AAAA,cAAA;AAAA,YACjB;AAAA,YAEF,SAAS,CAAC,MAAM;AACd,gBAAE,eAAA;AACF,gBAAE,gBAAA;AACF,2BAAA;AAAA,YAAa;AAAA,YAEf,aAAa,CAAC,MAAM;AAClB,gBAAE,eAAA;AACF,gBAAE,gBAAA;AAAA,YAAgB;AAAA,UACpB;AAAA,QAAA;AAAA,QAEFA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,gBAAc;AAAA,YACd,OAAM;AAAA,YACN,UAAU,CAAC;AAAA,YACX,YAAY,CAAC;AAAA,YACb,iBAAe;AAAA,YACf,MAAK;AAAA,YACL,OAAO;AAAA,cACL;AAAA,gBACE,MAAM;AAAA,gBACN,MAAM;AAAA,gBACN,MAAM;AAAA,cAAA;AAAA,YACR;AAAA,YAEF,IAAI;AAAA,cACF,SAAS;AAAA,gBACP,eAAe;AAAA,cAAA;AAAA,YACjB;AAAA,YAEF,SAAS,CAAC,MAAM;AACd,gBAAE,eAAA;AACF,gBAAE,gBAAA;AACF,4BAAA;AAAA,YAAc;AAAA,YAEhB,aAAa,CAAC,MAAM;AAClB,gBAAE,eAAA;AACF,gBAAE,gBAAA;AAAA,YAAgB;AAAA,UACpB;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("react"),n=require("react-leaflet"),o=require("./context.constants-CHzb-q9a.cjs");require("leaflet.markercluster");const s=require("react-leaflet-markercluster");require("styled-components"),require("./component.styles-Dpg-__rn.cjs");const i=require("leaflet"),r=require("./use-C1l0O0Qo.cjs"),C=t=>e.jsxRuntimeExports.jsx(s,{iconCreateFunction:e=>l(e,t.getCustomClusterLabel),chunkedLoading:!0,showCoverageOnHover:!1,spiderfyOnMaxZoom:!1,children:t.markers.map(o=>{var s;return e.jsxRuntimeExports.jsx(n.Marker,{position:o.position,icon:a((null==(s=null==t?void 0:t.getCustomClusterLabel)?void 0:s.call(t,o.options?[o.options]:[]))??""),options:o.options,children:e.jsxRuntimeExports.jsx(n.Popup,{...o.popupProps,children:o.popupContent})},o.id)})}),l=(e,t)=>{const n=e.getChildCount(),o=e.getAllChildMarkers(),s=null==t?void 0:t(o.map(e=>e.options.options));return new i.DivIcon({html:`\n <div style="position: relative; width: 100%; height: 100%; display: flex; justify-content: center;">\n <svg width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill="#2A77EE" d="M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z"/>\n <path fill="#F7FAFF" d="M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z"/>\n <path fill="#2A77EE" d="M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z"/>\n </svg>\n <div \n style="\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n "\n >\n ${n} | ${s}\n </div>\n </div>\n `,iconSize:new i.Point(42,42),iconAnchor:[21,42]})},a=e=>new i.DivIcon({html:`\n <div style="position: relative; width: 100%; height: 100%; display: flex; justify-content: center;">\n <svg width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill="#2A77EE" d="M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z"/>\n <path fill="#F7FAFF" d="M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z"/>\n <path fill="#2A77EE" d="M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z"/>\n </svg>\n <div \n style="\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n "\n >\n ${e}\n </div>\n </div>\n `,iconSize:new i.Point(42,42),iconAnchor:[21,42],popupAnchor:[0,-36]}),p=()=>new i.DivIcon({html:'\n <div style="position: relative; width: 100%; height: 100%; display: flex; justify-content: center;">\n <svg width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill="#2A77EE" d="M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z"/>\n <path fill="#F7FAFF" d="M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z"/>\n <path fill="#2A77EE" d="M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z"/>\n </svg>\n </div>\n ',iconSize:new i.Point(42,42),iconAnchor:[21,42],popupAnchor:[0,-36]});function u(e){const o=n.useMap(),s=r.useDeepCompareMemoize(e);return t.useEffect(()=>{s.center&&s.maxBounds&&s.zoom?(o.setMaxBounds(s.maxBounds),o.setView(s.center,s.zoom)):s.center&&o.setView(s.center,s.zoom)},[o,s]),null}function c(){const s=n.useMap(),i=t.useCallback(()=>s.zoomOut(),[s]),r=t.useCallback(()=>s.zoomIn(),[s]),[C,l]=t.useState(!0),[a,p]=t.useState(!0);return t.useEffect(()=>{const e=()=>{l(s.getZoom()<s.getMaxZoom()),p(s.getZoom()>s.getMinZoom())};return s.on("zoomend",e),e(),()=>{s.off("zoomend",e)}},[s]),e.jsxRuntimeExports.jsxs("div",{style:{position:"absolute",top:"50%",right:"20px",transform:"translateY(-50%)",zIndex:400,display:"flex",flexDirection:"column",gap:"10px",pointerEvents:"none"},children:[e.jsxRuntimeExports.jsx(o.Button,{isHiddenBorder:!0,genre:"realebail-product",isWidthAsHeight:!0,isHidden:!C,isDisabled:!C,size:"small",icons:[{name:"Plus",type:"id",size:"medium"}],sx:{default:{pointerEvents:"all"}},onClick:e=>{e.preventDefault(),e.stopPropagation(),r()},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()}}),e.jsxRuntimeExports.jsx(o.Button,{isHiddenBorder:!0,genre:"realebail-product",isHidden:!a,isDisabled:!a,isWidthAsHeight:!0,size:"small",icons:[{name:"Minus",type:"id",size:"medium"}],sx:{default:{pointerEvents:"all"}},onClick:e=>{e.preventDefault(),e.stopPropagation(),i()},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()}})]})}exports.CustomZoomControl=c,exports.MapCluster=s=>{const[i,r]=t.useState(s.theme??o.DEFAULT_MAP_CENTER),[l,a]=t.useState(s.center);return t.useEffect(()=>{r(s.theme)},[s.theme]),t.useEffect(()=>{s.center&&a(s.center)},[s.center]),l&&i&&e.jsxRuntimeExports.jsx(o.MapWrapper,{style:s.style,children:e.jsxRuntimeExports.jsxs(n.MapContainer,{zoom:s.zoom??o.DEFAULT_MAP_ZOOM,minZoom:s.minZoom??o.DEFAULT_MAP_MIN_ZOOM,maxZoom:s.maxZoom??o.DEFAULT_MAP_MAX_ZOOM,attributionControl:!1,zoomControl:!1,style:{height:"100%",width:"100%"},children:[e.jsxRuntimeExports.jsx(c,{}),e.jsxRuntimeExports.jsx(n.TileLayer,{url:i.url,attribution:i.attribution}),e.jsxRuntimeExports.jsx(C,{getCustomClusterLabel:s.getCustomClusterLabel,markers:s.markers}),e.jsxRuntimeExports.jsx(u,{center:l,maxBounds:s.maxBounds,zoom:s.zoom})]})})},exports.MapDot=s=>{const[i,r]=t.useState(s.coords??null),[C,l]=t.useState(s.theme??o.DEFAULT_MAP_THEME),[a,m]=t.useState(s.center);t.useEffect(()=>{l(s.theme)},[s.theme]),t.useEffect(()=>{s.center&&m(s.center)},[s.center]);const x=()=>(n.useMapEvents({click(e){if(e.originalEvent.target.classList.contains("leaflet-container")){const t=[e.latlng.lat,e.latlng.lng];r(t),s.onSelect(t)}}}),null);return t.useEffect(()=>{s.coords&&r(s.coords)},[s.coords]),a&&e.jsxRuntimeExports.jsx(o.MapWrapper,{children:e.jsxRuntimeExports.jsxs(n.MapContainer,{zoom:s.zoom??o.DEFAULT_MAP_ZOOM,minZoom:s.minZoom??o.DEFAULT_MAP_MIN_ZOOM,maxZoom:s.maxZoom??o.DEFAULT_MAP_MAX_ZOOM,zoomControl:!1,attributionControl:!1,style:{height:"100%",width:"100%"},children:[e.jsxRuntimeExports.jsx(n.TileLayer,{url:(null==C?void 0:C.url)??"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",attribution:null==C?void 0:C.attribution}),e.jsxRuntimeExports.jsx(c,{}),e.jsxRuntimeExports.jsx(u,{center:a,maxBounds:s.maxBounds,zoom:s.zoom}),e.jsxRuntimeExports.jsx(x,{}),i&&e.jsxRuntimeExports.jsx(n.Marker,{position:i,icon:p()})]})})},exports.MarkerCluster=C,exports.UpdateMapSettings=u,exports.createClusterIcon=l,exports.customDefaultIcon=p,exports.customTextIcon=a;
2
- //# sourceMappingURL=component.components-CsWG1Rwi.cjs.map
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("react"),n=require("react-leaflet"),o=require("./context.constants-CPdsUeiQ.cjs");require("leaflet.markercluster");const s=require("react-leaflet-markercluster");require("styled-components"),require("./component.styles-Dpg-__rn.cjs");const i=require("leaflet"),r=require("./use-C1l0O0Qo.cjs"),C=t=>e.jsxRuntimeExports.jsx(s,{iconCreateFunction:e=>l(e,t.getCustomClusterLabel),chunkedLoading:!0,showCoverageOnHover:!1,spiderfyOnMaxZoom:!1,children:t.markers.map(o=>{var s;return e.jsxRuntimeExports.jsx(n.Marker,{position:o.position,icon:a((null==(s=null==t?void 0:t.getCustomClusterLabel)?void 0:s.call(t,o.options?[o.options]:[]))??""),options:o.options,children:e.jsxRuntimeExports.jsx(n.Popup,{...o.popupProps,children:o.popupContent})},o.id)})}),l=(e,t)=>{const n=e.getChildCount(),o=e.getAllChildMarkers(),s=null==t?void 0:t(o.map(e=>e.options.options));return new i.DivIcon({html:`\n <div style="position: relative; width: 100%; height: 100%; display: flex; justify-content: center;">\n <svg width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill="#2A77EE" d="M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z"/>\n <path fill="#F7FAFF" d="M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z"/>\n <path fill="#2A77EE" d="M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z"/>\n </svg>\n <div \n style="\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n "\n >\n ${n} | ${s}\n </div>\n </div>\n `,iconSize:new i.Point(42,42),iconAnchor:[21,42]})},a=e=>new i.DivIcon({html:`\n <div style="position: relative; width: 100%; height: 100%; display: flex; justify-content: center;">\n <svg width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill="#2A77EE" d="M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z"/>\n <path fill="#F7FAFF" d="M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z"/>\n <path fill="#2A77EE" d="M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z"/>\n </svg>\n <div \n style="\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n "\n >\n ${e}\n </div>\n </div>\n `,iconSize:new i.Point(42,42),iconAnchor:[21,42],popupAnchor:[0,-36]}),p=()=>new i.DivIcon({html:'\n <div style="position: relative; width: 100%; height: 100%; display: flex; justify-content: center;">\n <svg width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill="#2A77EE" d="M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z"/>\n <path fill="#F7FAFF" d="M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z"/>\n <path fill="#2A77EE" d="M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z"/>\n </svg>\n </div>\n ',iconSize:new i.Point(42,42),iconAnchor:[21,42],popupAnchor:[0,-36]});function u(e){const o=n.useMap(),s=r.useDeepCompareMemoize(e);return t.useEffect(()=>{s.center&&s.maxBounds&&s.zoom?(o.setMaxBounds(s.maxBounds),o.setView(s.center,s.zoom)):s.center&&o.setView(s.center,s.zoom)},[o,s]),null}function c(){const s=n.useMap(),i=t.useCallback(()=>s.zoomOut(),[s]),r=t.useCallback(()=>s.zoomIn(),[s]),[C,l]=t.useState(!0),[a,p]=t.useState(!0);return t.useEffect(()=>{const e=()=>{l(s.getZoom()<s.getMaxZoom()),p(s.getZoom()>s.getMinZoom())};return s.on("zoomend",e),e(),()=>{s.off("zoomend",e)}},[s]),e.jsxRuntimeExports.jsxs("div",{style:{position:"absolute",top:"50%",right:"20px",transform:"translateY(-50%)",zIndex:400,display:"flex",flexDirection:"column",gap:"10px",pointerEvents:"none"},children:[e.jsxRuntimeExports.jsx(o.Button,{isHiddenBorder:!0,genre:"realebail-product",isWidthAsHeight:!0,isHidden:!C,isDisabled:!C,size:"small",icons:[{name:"Plus",type:"id",size:"medium"}],sx:{default:{pointerEvents:"all"}},onClick:e=>{e.preventDefault(),e.stopPropagation(),r()},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()}}),e.jsxRuntimeExports.jsx(o.Button,{isHiddenBorder:!0,genre:"realebail-product",isHidden:!a,isDisabled:!a,isWidthAsHeight:!0,size:"small",icons:[{name:"Minus",type:"id",size:"medium"}],sx:{default:{pointerEvents:"all"}},onClick:e=>{e.preventDefault(),e.stopPropagation(),i()},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()}})]})}exports.CustomZoomControl=c,exports.MapCluster=s=>{const[i,r]=t.useState(s.theme??o.DEFAULT_MAP_CENTER),[l,a]=t.useState(s.center);return t.useEffect(()=>{r(s.theme)},[s.theme]),t.useEffect(()=>{s.center&&a(s.center)},[s.center]),l&&i&&e.jsxRuntimeExports.jsx(o.MapWrapper,{style:s.style,children:e.jsxRuntimeExports.jsxs(n.MapContainer,{zoom:s.zoom??o.DEFAULT_MAP_ZOOM,minZoom:s.minZoom??o.DEFAULT_MAP_MIN_ZOOM,maxZoom:s.maxZoom??o.DEFAULT_MAP_MAX_ZOOM,attributionControl:!1,zoomControl:!1,style:{height:"100%",width:"100%"},children:[e.jsxRuntimeExports.jsx(c,{}),e.jsxRuntimeExports.jsx(n.TileLayer,{url:i.url,attribution:i.attribution}),e.jsxRuntimeExports.jsx(C,{getCustomClusterLabel:s.getCustomClusterLabel,markers:s.markers}),e.jsxRuntimeExports.jsx(u,{center:l,maxBounds:s.maxBounds,zoom:s.zoom})]})})},exports.MapDot=s=>{const[i,r]=t.useState(s.coords??null),[C,l]=t.useState(s.theme??o.DEFAULT_MAP_THEME),[a,m]=t.useState(s.center);t.useEffect(()=>{l(s.theme)},[s.theme]),t.useEffect(()=>{s.center&&m(s.center)},[s.center]);const x=()=>(n.useMapEvents({click(e){if(e.originalEvent.target.classList.contains("leaflet-container")){const t=[e.latlng.lat,e.latlng.lng];r(t),s.onSelect(t)}}}),null);return t.useEffect(()=>{s.coords&&r(s.coords)},[s.coords]),a&&e.jsxRuntimeExports.jsx(o.MapWrapper,{children:e.jsxRuntimeExports.jsxs(n.MapContainer,{zoom:s.zoom??o.DEFAULT_MAP_ZOOM,minZoom:s.minZoom??o.DEFAULT_MAP_MIN_ZOOM,maxZoom:s.maxZoom??o.DEFAULT_MAP_MAX_ZOOM,zoomControl:!1,attributionControl:!1,style:{height:"100%",width:"100%"},children:[e.jsxRuntimeExports.jsx(n.TileLayer,{url:(null==C?void 0:C.url)??"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",attribution:null==C?void 0:C.attribution}),e.jsxRuntimeExports.jsx(c,{}),e.jsxRuntimeExports.jsx(u,{center:a,maxBounds:s.maxBounds,zoom:s.zoom}),e.jsxRuntimeExports.jsx(x,{}),i&&e.jsxRuntimeExports.jsx(n.Marker,{position:i,icon:p()})]})})},exports.MarkerCluster=C,exports.UpdateMapSettings=u,exports.createClusterIcon=l,exports.customDefaultIcon=p,exports.customTextIcon=a;
2
+ //# sourceMappingURL=component.components-DnPZVXuo.cjs.map