@jenesei-software/jenesei-kit-react 1.0.0

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 (445) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +102 -0
  3. package/build/area-9NUxwBGc.cjs +2 -0
  4. package/build/area-9NUxwBGc.cjs.map +1 -0
  5. package/build/area-BnAddPtl.js +114 -0
  6. package/build/area-BnAddPtl.js.map +1 -0
  7. package/build/area-C2sWYH-e.js +47 -0
  8. package/build/area-C2sWYH-e.js.map +1 -0
  9. package/build/area-CD10k19W.cjs +27 -0
  10. package/build/area-CD10k19W.cjs.map +1 -0
  11. package/build/area-ClrrGVJG.cjs +40 -0
  12. package/build/area-ClrrGVJG.cjs.map +1 -0
  13. package/build/area-D7906bXA.cjs +2 -0
  14. package/build/area-D7906bXA.cjs.map +1 -0
  15. package/build/area-DRqAofd0.js +35 -0
  16. package/build/area-DRqAofd0.js.map +1 -0
  17. package/build/area-DfCAwCiZ.js +69 -0
  18. package/build/area-DfCAwCiZ.js.map +1 -0
  19. package/build/area-outside.cjs.js +2 -0
  20. package/build/area-outside.cjs.js.map +1 -0
  21. package/build/area-outside.d.ts +28 -0
  22. package/build/area-outside.es.js +5 -0
  23. package/build/area-outside.es.js.map +1 -0
  24. package/build/area-preview.cjs.js +2 -0
  25. package/build/area-preview.cjs.js.map +1 -0
  26. package/build/area-preview.d.ts +48 -0
  27. package/build/area-preview.es.js +7 -0
  28. package/build/area-preview.es.js.map +1 -0
  29. package/build/area-scroll.cjs.js +2 -0
  30. package/build/area-scroll.cjs.js.map +1 -0
  31. package/build/area-scroll.d.ts +58 -0
  32. package/build/area-scroll.es.js +6 -0
  33. package/build/area-scroll.es.js.map +1 -0
  34. package/build/area-skeleton.cjs.js +2 -0
  35. package/build/area-skeleton.cjs.js.map +1 -0
  36. package/build/area-skeleton.d.ts +64 -0
  37. package/build/area-skeleton.es.js +6 -0
  38. package/build/area-skeleton.es.js.map +1 -0
  39. package/build/area-smooth.cjs.js +2 -0
  40. package/build/area-smooth.cjs.js.map +1 -0
  41. package/build/area-smooth.d.ts +37 -0
  42. package/build/area-smooth.es.js +5 -0
  43. package/build/area-smooth.es.js.map +1 -0
  44. package/build/area.hooks-Bk04M7mk.js +26 -0
  45. package/build/area.hooks-Bk04M7mk.js.map +1 -0
  46. package/build/area.hooks-C_UKZzcb.cjs +2 -0
  47. package/build/area.hooks-C_UKZzcb.cjs.map +1 -0
  48. package/build/build-info.txt +3 -0
  49. package/build/component--Oo5_3xq.cjs +2 -0
  50. package/build/component--Oo5_3xq.cjs.map +1 -0
  51. package/build/component-BV_7tGiu.cjs +28 -0
  52. package/build/component-BV_7tGiu.cjs.map +1 -0
  53. package/build/component-BcHiCCC9.js +23 -0
  54. package/build/component-BcHiCCC9.js.map +1 -0
  55. package/build/component-BnI7BIp-.cjs +2 -0
  56. package/build/component-BnI7BIp-.cjs.map +1 -0
  57. package/build/component-ByY_9Ryc.js +65 -0
  58. package/build/component-ByY_9Ryc.js.map +1 -0
  59. package/build/component-C2JFFh-k.js +2372 -0
  60. package/build/component-C2JFFh-k.js.map +1 -0
  61. package/build/component-C52VCES6.cjs +247 -0
  62. package/build/component-C52VCES6.cjs.map +1 -0
  63. package/build/component-CBshLNEf.js +50 -0
  64. package/build/component-CBshLNEf.js.map +1 -0
  65. package/build/component-CFMlaYj1.js +66 -0
  66. package/build/component-CFMlaYj1.js.map +1 -0
  67. package/build/component-CuiUpH8H.js +207 -0
  68. package/build/component-CuiUpH8H.js.map +1 -0
  69. package/build/component-D1NPhRuV.cjs +90 -0
  70. package/build/component-D1NPhRuV.cjs.map +1 -0
  71. package/build/component-DZxbW_Jz.js +237 -0
  72. package/build/component-DZxbW_Jz.js.map +1 -0
  73. package/build/component-UW1VzyvB.cjs +52 -0
  74. package/build/component-UW1VzyvB.cjs.map +1 -0
  75. package/build/component-accordion.cjs.js +2 -0
  76. package/build/component-accordion.cjs.js.map +1 -0
  77. package/build/component-accordion.d.ts +94 -0
  78. package/build/component-accordion.es.js +10 -0
  79. package/build/component-accordion.es.js.map +1 -0
  80. package/build/component-button-group.cjs.js +2 -0
  81. package/build/component-button-group.cjs.js.map +1 -0
  82. package/build/component-button-group.d.ts +320 -0
  83. package/build/component-button-group.es.js +6 -0
  84. package/build/component-button-group.es.js.map +1 -0
  85. package/build/component-button.cjs.js +2 -0
  86. package/build/component-button.cjs.js.map +1 -0
  87. package/build/component-button.d.ts +347 -0
  88. package/build/component-button.es.js +9 -0
  89. package/build/component-button.es.js.map +1 -0
  90. package/build/component-checkbox-group.cjs.js +2 -0
  91. package/build/component-checkbox-group.cjs.js.map +1 -0
  92. package/build/component-checkbox-group.d.ts +337 -0
  93. package/build/component-checkbox-group.es.js +11 -0
  94. package/build/component-checkbox-group.es.js.map +1 -0
  95. package/build/component-checkbox.cjs.js +2 -0
  96. package/build/component-checkbox.cjs.js.map +1 -0
  97. package/build/component-checkbox.d.ts +342 -0
  98. package/build/component-checkbox.es.js +10 -0
  99. package/build/component-checkbox.es.js.map +1 -0
  100. package/build/component-date-picker.cjs.js +2 -0
  101. package/build/component-date-picker.cjs.js.map +1 -0
  102. package/build/component-date-picker.d.ts +415 -0
  103. package/build/component-date-picker.es.js +17 -0
  104. package/build/component-date-picker.es.js.map +1 -0
  105. package/build/component-icon.cjs.js +2 -0
  106. package/build/component-icon.cjs.js.map +1 -0
  107. package/build/component-icon.d.ts +198 -0
  108. package/build/component-icon.es.js +12 -0
  109. package/build/component-icon.es.js.map +1 -0
  110. package/build/component-image-button.cjs.js +2 -0
  111. package/build/component-image-button.cjs.js.map +1 -0
  112. package/build/component-image-button.d.ts +340 -0
  113. package/build/component-image-button.es.js +5 -0
  114. package/build/component-image-button.es.js.map +1 -0
  115. package/build/component-image-select.cjs.js +2 -0
  116. package/build/component-image-select.cjs.js.map +1 -0
  117. package/build/component-image-select.d.ts +436 -0
  118. package/build/component-image-select.es.js +11 -0
  119. package/build/component-image-select.es.js.map +1 -0
  120. package/build/component-image-slider.cjs.js +2 -0
  121. package/build/component-image-slider.cjs.js.map +1 -0
  122. package/build/component-image-slider.d.ts +108 -0
  123. package/build/component-image-slider.es.js +8 -0
  124. package/build/component-image-slider.es.js.map +1 -0
  125. package/build/component-image.cjs.js +2 -0
  126. package/build/component-image.cjs.js.map +1 -0
  127. package/build/component-image.d.ts +51 -0
  128. package/build/component-image.es.js +6 -0
  129. package/build/component-image.es.js.map +1 -0
  130. package/build/component-input-otp.cjs.js +2 -0
  131. package/build/component-input-otp.cjs.js.map +1 -0
  132. package/build/component-input-otp.d.ts +150 -0
  133. package/build/component-input-otp.es.js +8 -0
  134. package/build/component-input-otp.es.js.map +1 -0
  135. package/build/component-input.cjs.js +2 -0
  136. package/build/component-input.cjs.js.map +1 -0
  137. package/build/component-input.d.ts +226 -0
  138. package/build/component-input.es.js +20 -0
  139. package/build/component-input.es.js.map +1 -0
  140. package/build/component-jPZYT5iL.js +76 -0
  141. package/build/component-jPZYT5iL.js.map +1 -0
  142. package/build/component-map.cjs.js +2 -0
  143. package/build/component-map.cjs.js.map +1 -0
  144. package/build/component-map.d.ts +97 -0
  145. package/build/component-map.es.js +18 -0
  146. package/build/component-map.es.js.map +1 -0
  147. package/build/component-nFn_uOy_.cjs +2 -0
  148. package/build/component-nFn_uOy_.cjs.map +1 -0
  149. package/build/component-pagination.cjs.js +2 -0
  150. package/build/component-pagination.cjs.js.map +1 -0
  151. package/build/component-pagination.d.ts +321 -0
  152. package/build/component-pagination.es.js +6 -0
  153. package/build/component-pagination.es.js.map +1 -0
  154. package/build/component-range.cjs.js +2 -0
  155. package/build/component-range.cjs.js.map +1 -0
  156. package/build/component-range.d.ts +153 -0
  157. package/build/component-range.es.js +8 -0
  158. package/build/component-range.es.js.map +1 -0
  159. package/build/component-ripple.cjs.js +2 -0
  160. package/build/component-ripple.cjs.js.map +1 -0
  161. package/build/component-ripple.d.ts +45 -0
  162. package/build/component-ripple.es.js +12 -0
  163. package/build/component-ripple.es.js.map +1 -0
  164. package/build/component-select.cjs.js +2 -0
  165. package/build/component-select.cjs.js.map +1 -0
  166. package/build/component-select.d.ts +406 -0
  167. package/build/component-select.es.js +25 -0
  168. package/build/component-select.es.js.map +1 -0
  169. package/build/component-separator.cjs.js +2 -0
  170. package/build/component-separator.cjs.js.map +1 -0
  171. package/build/component-separator.d.ts +46 -0
  172. package/build/component-separator.es.js +6 -0
  173. package/build/component-separator.es.js.map +1 -0
  174. package/build/component-stack.cjs.js +2 -0
  175. package/build/component-stack.cjs.js.map +1 -0
  176. package/build/component-stack.d.ts +72 -0
  177. package/build/component-stack.es.js +8 -0
  178. package/build/component-stack.es.js.map +1 -0
  179. package/build/component-textarea.cjs.js +2 -0
  180. package/build/component-textarea.cjs.js.map +1 -0
  181. package/build/component-textarea.d.ts +131 -0
  182. package/build/component-textarea.es.js +12 -0
  183. package/build/component-textarea.es.js.map +1 -0
  184. package/build/component-toggle.cjs.js +2 -0
  185. package/build/component-toggle.cjs.js.map +1 -0
  186. package/build/component-toggle.d.ts +101 -0
  187. package/build/component-toggle.es.js +7 -0
  188. package/build/component-toggle.es.js.map +1 -0
  189. package/build/component-tooltip.cjs.js +2 -0
  190. package/build/component-tooltip.cjs.js.map +1 -0
  191. package/build/component-tooltip.d.ts +170 -0
  192. package/build/component-tooltip.es.js +12 -0
  193. package/build/component-tooltip.es.js.map +1 -0
  194. package/build/component-typography.cjs.js +2 -0
  195. package/build/component-typography.cjs.js.map +1 -0
  196. package/build/component-typography.d.ts +183 -0
  197. package/build/component-typography.es.js +10 -0
  198. package/build/component-typography.es.js.map +1 -0
  199. package/build/component-xnEaYd4a.cjs +2 -0
  200. package/build/component-xnEaYd4a.cjs.map +1 -0
  201. package/build/component.components-BAAT5GTH.js +363 -0
  202. package/build/component.components-BAAT5GTH.js.map +1 -0
  203. package/build/component.components-CaR5gfQW.cjs +16 -0
  204. package/build/component.components-CaR5gfQW.cjs.map +1 -0
  205. package/build/component.constants-BeWW8Ijx.cjs +2 -0
  206. package/build/component.constants-BeWW8Ijx.cjs.map +1 -0
  207. package/build/component.constants-D9wVZ3zy.cjs +22 -0
  208. package/build/component.constants-D9wVZ3zy.cjs.map +1 -0
  209. package/build/component.constants-DRvp5Bez.js +142 -0
  210. package/build/component.constants-DRvp5Bez.js.map +1 -0
  211. package/build/component.constants-DbNhxh0k.js +759 -0
  212. package/build/component.constants-DbNhxh0k.js.map +1 -0
  213. package/build/component.styles-B0L4jbOO.js +59 -0
  214. package/build/component.styles-B0L4jbOO.js.map +1 -0
  215. package/build/component.styles-B1DIataj.cjs +10 -0
  216. package/build/component.styles-B1DIataj.cjs.map +1 -0
  217. package/build/component.styles-BFwkFWkd.cjs +39 -0
  218. package/build/component.styles-BFwkFWkd.cjs.map +1 -0
  219. package/build/component.styles-BSEA2Dqn.cjs +8 -0
  220. package/build/component.styles-BSEA2Dqn.cjs.map +1 -0
  221. package/build/component.styles-BapdQNhL.js +2166 -0
  222. package/build/component.styles-BapdQNhL.js.map +1 -0
  223. package/build/component.styles-BfvB83xM.cjs +22 -0
  224. package/build/component.styles-BfvB83xM.cjs.map +1 -0
  225. package/build/component.styles-Bn6ylF83.js +859 -0
  226. package/build/component.styles-Bn6ylF83.js.map +1 -0
  227. package/build/component.styles-BsZIuwWJ.cjs +140 -0
  228. package/build/component.styles-BsZIuwWJ.cjs.map +1 -0
  229. package/build/component.styles-C6LohBfF.js +81 -0
  230. package/build/component.styles-C6LohBfF.js.map +1 -0
  231. package/build/component.styles-CEBh8X5q.js +20 -0
  232. package/build/component.styles-CEBh8X5q.js.map +1 -0
  233. package/build/component.styles-CPsxMKVK.cjs +73 -0
  234. package/build/component.styles-CPsxMKVK.cjs.map +1 -0
  235. package/build/component.styles-CTo5NC52.js +71 -0
  236. package/build/component.styles-CTo5NC52.js.map +1 -0
  237. package/build/component.styles-CV7jTFCg.js +758 -0
  238. package/build/component.styles-CV7jTFCg.js.map +1 -0
  239. package/build/component.styles-CVBpx4fw.js +474 -0
  240. package/build/component.styles-CVBpx4fw.js.map +1 -0
  241. package/build/component.styles-CZu2m0O4.cjs +21 -0
  242. package/build/component.styles-CZu2m0O4.cjs.map +1 -0
  243. package/build/component.styles-CmBcHREH.cjs +13 -0
  244. package/build/component.styles-CmBcHREH.cjs.map +1 -0
  245. package/build/component.styles-CmEFZfA5.js +120 -0
  246. package/build/component.styles-CmEFZfA5.js.map +1 -0
  247. package/build/component.styles-DHIw8p8e.cjs +158 -0
  248. package/build/component.styles-DHIw8p8e.cjs.map +1 -0
  249. package/build/component.styles-DOPCUXcr.js +158 -0
  250. package/build/component.styles-DOPCUXcr.js.map +1 -0
  251. package/build/component.styles-Dj3h7jd9.cjs +165 -0
  252. package/build/component.styles-Dj3h7jd9.cjs.map +1 -0
  253. package/build/component.styles-Do1NYZEO.js +86 -0
  254. package/build/component.styles-Do1NYZEO.js.map +1 -0
  255. package/build/component.styles-Dok17vPl.js +126 -0
  256. package/build/component.styles-Dok17vPl.js.map +1 -0
  257. package/build/component.styles-Dpg-__rn.cjs +43 -0
  258. package/build/component.styles-Dpg-__rn.cjs.map +1 -0
  259. package/build/component.styles-DpkFoWEh.cjs +81 -0
  260. package/build/component.styles-DpkFoWEh.cjs.map +1 -0
  261. package/build/component.styles-DqsBDAEo.js +202 -0
  262. package/build/component.styles-DqsBDAEo.js.map +1 -0
  263. package/build/component.styles-Du2y0R4W.js +177 -0
  264. package/build/component.styles-Du2y0R4W.js.map +1 -0
  265. package/build/component.styles-DxeG9Opm.cjs +47 -0
  266. package/build/component.styles-DxeG9Opm.cjs.map +1 -0
  267. package/build/component.styles-DyGfo9t0.cjs +32 -0
  268. package/build/component.styles-DyGfo9t0.cjs.map +1 -0
  269. package/build/component.styles-RkQwTlwG.js +170 -0
  270. package/build/component.styles-RkQwTlwG.js.map +1 -0
  271. package/build/component.styles-ZtwHuL4x.cjs +75 -0
  272. package/build/component.styles-ZtwHuL4x.cjs.map +1 -0
  273. package/build/component.types-D05KdxnZ.js +132 -0
  274. package/build/component.types-D05KdxnZ.js.map +1 -0
  275. package/build/component.types-gy5Q9qHX.cjs +2 -0
  276. package/build/component.types-gy5Q9qHX.cjs.map +1 -0
  277. package/build/consts.cjs.js +2 -0
  278. package/build/consts.cjs.js.map +1 -0
  279. package/build/consts.d.ts +86 -0
  280. package/build/consts.es.js +177 -0
  281. package/build/consts.es.js.map +1 -0
  282. package/build/context-app.cjs.js +2 -0
  283. package/build/context-app.cjs.js.map +1 -0
  284. package/build/context-app.d.ts +223 -0
  285. package/build/context-app.es.js +20 -0
  286. package/build/context-app.es.js.map +1 -0
  287. package/build/context-cookie.cjs.js +2 -0
  288. package/build/context-cookie.cjs.js.map +1 -0
  289. package/build/context-cookie.d.ts +67 -0
  290. package/build/context-cookie.es.js +9 -0
  291. package/build/context-cookie.es.js.map +1 -0
  292. package/build/context-dialog.cjs.js +2 -0
  293. package/build/context-dialog.cjs.js.map +1 -0
  294. package/build/context-dialog.d.ts +92 -0
  295. package/build/context-dialog.es.js +18 -0
  296. package/build/context-dialog.es.js.map +1 -0
  297. package/build/context-geolocation.cjs.js +2 -0
  298. package/build/context-geolocation.cjs.js.map +1 -0
  299. package/build/context-geolocation.d.ts +22 -0
  300. package/build/context-geolocation.es.js +7 -0
  301. package/build/context-geolocation.es.js.map +1 -0
  302. package/build/context-local-storage.cjs.js +2 -0
  303. package/build/context-local-storage.cjs.js.map +1 -0
  304. package/build/context-local-storage.d.ts +54 -0
  305. package/build/context-local-storage.es.js +9 -0
  306. package/build/context-local-storage.es.js.map +1 -0
  307. package/build/context-permission.cjs.js +2 -0
  308. package/build/context-permission.cjs.js.map +1 -0
  309. package/build/context-permission.d.ts +28 -0
  310. package/build/context-permission.es.js +9 -0
  311. package/build/context-permission.es.js.map +1 -0
  312. package/build/context-screen-width.cjs.js +2 -0
  313. package/build/context-screen-width.cjs.js.map +1 -0
  314. package/build/context-screen-width.d.ts +34 -0
  315. package/build/context-screen-width.es.js +7 -0
  316. package/build/context-screen-width.es.js.map +1 -0
  317. package/build/context-sonner.cjs.js +2 -0
  318. package/build/context-sonner.cjs.js.map +1 -0
  319. package/build/context-sonner.d.ts +449 -0
  320. package/build/context-sonner.es.js +21 -0
  321. package/build/context-sonner.es.js.map +1 -0
  322. package/build/context.constants-B29-_8v3.cjs +32 -0
  323. package/build/context.constants-B29-_8v3.cjs.map +1 -0
  324. package/build/context.constants-BaD7xj_m.cjs +100 -0
  325. package/build/context.constants-BaD7xj_m.cjs.map +1 -0
  326. package/build/context.constants-CsZRZ7gH.js +228 -0
  327. package/build/context.constants-CsZRZ7gH.js.map +1 -0
  328. package/build/context.constants-DqYjo5m4.js +375 -0
  329. package/build/context.constants-DqYjo5m4.js.map +1 -0
  330. package/build/context.functions-80N-5MqM.cjs +2 -0
  331. package/build/context.functions-80N-5MqM.cjs.map +1 -0
  332. package/build/context.functions-B8FDl7nJ.js +14 -0
  333. package/build/context.functions-B8FDl7nJ.js.map +1 -0
  334. package/build/context.functions-BD15C8_y.js +128 -0
  335. package/build/context.functions-BD15C8_y.js.map +1 -0
  336. package/build/context.functions-CQ9GerPb.js +147 -0
  337. package/build/context.functions-CQ9GerPb.js.map +1 -0
  338. package/build/context.functions-ar41xFVo.cjs +2 -0
  339. package/build/context.functions-ar41xFVo.cjs.map +1 -0
  340. package/build/context.functions-ohI9H54j.cjs +2 -0
  341. package/build/context.functions-ohI9H54j.cjs.map +1 -0
  342. package/build/context.hooks-7ydA7mGj.js +117 -0
  343. package/build/context.hooks-7ydA7mGj.js.map +1 -0
  344. package/build/context.hooks-BIsapq-0.cjs +2 -0
  345. package/build/context.hooks-BIsapq-0.cjs.map +1 -0
  346. package/build/context.hooks-BmwyZ1p3.js +68 -0
  347. package/build/context.hooks-BmwyZ1p3.js.map +1 -0
  348. package/build/context.hooks-BzMTkJNv.js +52 -0
  349. package/build/context.hooks-BzMTkJNv.js.map +1 -0
  350. package/build/context.hooks-CTi-CVKx.cjs +72 -0
  351. package/build/context.hooks-CTi-CVKx.cjs.map +1 -0
  352. package/build/context.hooks-D13tbrva.cjs +2 -0
  353. package/build/context.hooks-D13tbrva.cjs.map +1 -0
  354. package/build/context.hooks-gyzZSaVi.js +527 -0
  355. package/build/context.hooks-gyzZSaVi.js.map +1 -0
  356. package/build/context.hooks-u408Pxw8.cjs +2 -0
  357. package/build/context.hooks-u408Pxw8.cjs.map +1 -0
  358. package/build/functions.cjs.js +2 -0
  359. package/build/functions.cjs.js.map +1 -0
  360. package/build/functions.d.ts +22 -0
  361. package/build/functions.es.js +47 -0
  362. package/build/functions.es.js.map +1 -0
  363. package/build/hooks-use-debounced-callback.cjs.js +2 -0
  364. package/build/hooks-use-debounced-callback.cjs.js.map +1 -0
  365. package/build/hooks-use-debounced-callback.d.ts +3 -0
  366. package/build/hooks-use-debounced-callback.es.js +5 -0
  367. package/build/hooks-use-debounced-callback.es.js.map +1 -0
  368. package/build/hooks-use-deep-compare-memoize.cjs.js +2 -0
  369. package/build/hooks-use-deep-compare-memoize.cjs.js.map +1 -0
  370. package/build/hooks-use-deep-compare-memoize.d.ts +3 -0
  371. package/build/hooks-use-deep-compare-memoize.es.js +5 -0
  372. package/build/hooks-use-deep-compare-memoize.es.js.map +1 -0
  373. package/build/index.cjs.js +2 -0
  374. package/build/index.cjs.js.map +1 -0
  375. package/build/index.d.ts +2540 -0
  376. package/build/index.es.js +329 -0
  377. package/build/index.es.js.map +1 -0
  378. package/build/jsx-runtime-BcGej2Kr.cjs +11 -0
  379. package/build/jsx-runtime-BcGej2Kr.cjs.map +1 -0
  380. package/build/jsx-runtime-BrDlu8eK.js +320 -0
  381. package/build/jsx-runtime-BrDlu8eK.js.map +1 -0
  382. package/build/motion-CIQfrLky.js +85 -0
  383. package/build/motion-CIQfrLky.js.map +1 -0
  384. package/build/motion-DgB7M2Hn.cjs +2 -0
  385. package/build/motion-DgB7M2Hn.cjs.map +1 -0
  386. package/build/style-CEGJOjRW.js +107 -0
  387. package/build/style-CEGJOjRW.js.map +1 -0
  388. package/build/style-CtGd1JVB.cjs +32 -0
  389. package/build/style-CtGd1JVB.cjs.map +1 -0
  390. package/build/style-DeAgDHyI.js +52 -0
  391. package/build/style-DeAgDHyI.js.map +1 -0
  392. package/build/style-Dm74EPGE.cjs +87 -0
  393. package/build/style-Dm74EPGE.cjs.map +1 -0
  394. package/build/style-add.cjs.js +2 -0
  395. package/build/style-add.cjs.js.map +1 -0
  396. package/build/style-add.d.ts +21 -0
  397. package/build/style-add.es.js +13 -0
  398. package/build/style-add.es.js.map +1 -0
  399. package/build/style-error.cjs.js +2 -0
  400. package/build/style-error.cjs.js.map +1 -0
  401. package/build/style-error.d.ts +56 -0
  402. package/build/style-error.es.js +7 -0
  403. package/build/style-error.es.js.map +1 -0
  404. package/build/style-fRZ6xrVp.cjs +10 -0
  405. package/build/style-fRZ6xrVp.cjs.map +1 -0
  406. package/build/style-motion.cjs.js +2 -0
  407. package/build/style-motion.cjs.js.map +1 -0
  408. package/build/style-motion.d.ts +20 -0
  409. package/build/style-motion.es.js +8 -0
  410. package/build/style-motion.es.js.map +1 -0
  411. package/build/style-plT9Ah7t.js +33 -0
  412. package/build/style-plT9Ah7t.js.map +1 -0
  413. package/build/style-sx.cjs.js +2 -0
  414. package/build/style-sx.cjs.js.map +1 -0
  415. package/build/style-sx.d.ts +31 -0
  416. package/build/style-sx.es.js +5 -0
  417. package/build/style-sx.es.js.map +1 -0
  418. package/build/style-theme.cjs.js +2 -0
  419. package/build/style-theme.cjs.js.map +1 -0
  420. package/build/style-theme.d.ts +263 -0
  421. package/build/style-theme.es.js +10 -0
  422. package/build/style-theme.es.js.map +1 -0
  423. package/build/style.css +1 -0
  424. package/build/theme.global-D6XU05Et.cjs +169 -0
  425. package/build/theme.global-D6XU05Et.cjs.map +1 -0
  426. package/build/theme.global-bN9HlSWE.js +1080 -0
  427. package/build/theme.global-bN9HlSWE.js.map +1 -0
  428. package/build/types.cjs.js +2 -0
  429. package/build/types.cjs.js.map +1 -0
  430. package/build/types.d.ts +27 -0
  431. package/build/types.es.js +2 -0
  432. package/build/types.es.js.map +1 -0
  433. package/build/use-BVj4dgbW.js +1547 -0
  434. package/build/use-BVj4dgbW.js.map +1 -0
  435. package/build/use-BhofoOgk.cjs +16 -0
  436. package/build/use-BhofoOgk.cjs.map +1 -0
  437. package/build/use-Bp8UVw4Y.js +16 -0
  438. package/build/use-Bp8UVw4Y.js.map +1 -0
  439. package/build/use-C1l0O0Qo.cjs +2 -0
  440. package/build/use-C1l0O0Qo.cjs.map +1 -0
  441. package/build/use-DT0XgvJT.js +25 -0
  442. package/build/use-DT0XgvJT.js.map +1 -0
  443. package/build/use-IhzeVumv.cjs +2 -0
  444. package/build/use-IhzeVumv.cjs.map +1 -0
  445. package/package.json +360 -0
@@ -0,0 +1,147 @@
1
+ import { createContext, useState, useCallback, useEffect, useContext } from "react";
2
+ import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
3
+ const LocalStorageContext = createContext(null);
4
+ const ProviderLocalStorage = (props) => {
5
+ const {
6
+ getLocalStorage,
7
+ setLocalStorage,
8
+ removeLocalStorageValue,
9
+ removeLocalStorageValues,
10
+ checkLocalStorage,
11
+ localStorageValues
12
+ } = useProviderLocalStorage(props);
13
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
14
+ LocalStorageContext.Provider,
15
+ {
16
+ value: {
17
+ getLocalStorage,
18
+ setLocalStorage,
19
+ removeLocalStorageValue,
20
+ removeLocalStorageValues,
21
+ checkLocalStorage,
22
+ localStorageValues
23
+ },
24
+ children: props.children
25
+ }
26
+ );
27
+ };
28
+ const useProviderLocalStorage = (props) => {
29
+ const [localStorageValues, setLocalStorageValues] = useState();
30
+ const getLocalStorage = useCallback(
31
+ (name) => {
32
+ const localStorageValue = localStorage.getItem(name);
33
+ setLocalStorageValues((prevState) => ({
34
+ ...prevState,
35
+ [name]: localStorageValue ? JSON.parse(localStorageValue) : void 0
36
+ }));
37
+ return localStorageValue ? JSON.parse(localStorageValue) : void 0;
38
+ },
39
+ []
40
+ );
41
+ const changeLocalStorage = useCallback(
42
+ (name, value) => {
43
+ try {
44
+ localStorage.setItem(String(name), JSON.stringify(value));
45
+ setLocalStorageValues((prevState) => ({ ...prevState, [name]: value }));
46
+ } catch {
47
+ console.info(`Provider LocalStorage. ChangeLocalStorage error - key:${name}, value:${value}.`);
48
+ }
49
+ },
50
+ []
51
+ );
52
+ const removeLocalStorageValue = useCallback((name) => {
53
+ try {
54
+ localStorage.removeItem(String(name));
55
+ setLocalStorageValues((prevState) => ({
56
+ ...prevState,
57
+ [name]: void 0
58
+ }));
59
+ } catch {
60
+ console.info(`Provider LocalStorage. RemoveLocalStorageValue error - key:${name}.`);
61
+ }
62
+ }, []);
63
+ const removeLocalStorageValues = useCallback(() => {
64
+ var _a;
65
+ if (props.validate && props.validate.validateKeys) {
66
+ (_a = props.validate) == null ? void 0 : _a.validateKeys.forEach((key) => {
67
+ removeLocalStorageValue(String(key));
68
+ });
69
+ } else {
70
+ console.info("Provider LocalStorage. RemoveLocalStorageValues - validate is not defined.");
71
+ }
72
+ }, [props.validate, removeLocalStorageValue]);
73
+ const checkLocalStorage = useCallback(() => {
74
+ var _a;
75
+ if (props.validate && props.validate.validateKeys && props.validate.getValidateLocalStorageValue) {
76
+ (_a = props.validate) == null ? void 0 : _a.validateKeys.forEach((key) => {
77
+ var _a2;
78
+ const localStorageValue = localStorage.getItem(key);
79
+ if (localStorageValue) {
80
+ try {
81
+ const parsedValue = JSON.parse(localStorageValue);
82
+ if (!((_a2 = props.validate) == null ? void 0 : _a2.getValidateLocalStorageValue(String(key), parsedValue))) {
83
+ removeLocalStorageValue(String(key));
84
+ } else {
85
+ setLocalStorageValues((prevState) => ({
86
+ ...prevState,
87
+ [key]: parsedValue
88
+ }));
89
+ }
90
+ } catch {
91
+ removeLocalStorageValue(String(key));
92
+ }
93
+ } else {
94
+ removeLocalStorageValue(String(key));
95
+ }
96
+ });
97
+ } else {
98
+ console.info("Provider LocalStorage. CheckLocalStorage - validate is not defined.");
99
+ }
100
+ }, [props.validate, removeLocalStorageValue]);
101
+ useEffect(() => {
102
+ checkLocalStorage();
103
+ }, [checkLocalStorage]);
104
+ return {
105
+ getLocalStorage,
106
+ setLocalStorage: changeLocalStorage,
107
+ removeLocalStorageValue,
108
+ removeLocalStorageValues,
109
+ checkLocalStorage,
110
+ localStorageValues
111
+ };
112
+ };
113
+ const useLocalStorage = () => {
114
+ const context = useContext(LocalStorageContext);
115
+ if (!context) {
116
+ throw new Error("useLocalStorage must be used within an ProviderLocalStorage");
117
+ }
118
+ return context;
119
+ };
120
+ function getFromLocalStorage(key) {
121
+ const item = localStorage.getItem(key);
122
+ if (item) {
123
+ try {
124
+ return JSON.parse(item);
125
+ } catch (error) {
126
+ console.error(`Error parsing localStorage item "${key}":`, error);
127
+ return null;
128
+ }
129
+ }
130
+ return null;
131
+ }
132
+ function setToLocalStorage(key, value) {
133
+ try {
134
+ const item = JSON.stringify(value);
135
+ localStorage.setItem(key, item);
136
+ } catch (error) {
137
+ console.error(`Error setting localStorage item "${key}":`, error);
138
+ }
139
+ }
140
+ export {
141
+ LocalStorageContext as L,
142
+ ProviderLocalStorage as P,
143
+ getFromLocalStorage as g,
144
+ setToLocalStorage as s,
145
+ useLocalStorage as u
146
+ };
147
+ //# sourceMappingURL=context.functions-CQ9GerPb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.functions-CQ9GerPb.js","sources":["../src/contexts/context-local-storage/context.tsx","../src/contexts/context-local-storage/context.hooks.ts","../src/contexts/context-local-storage/context.functions.ts"],"sourcesContent":["import { FC, createContext, useCallback, useEffect, useState } from 'react'\n\nimport { LocalStorageContextProps, ProviderLocalStorageProps, ValidLocalStorageObject } from '.'\n\nexport const LocalStorageContext = createContext<LocalStorageContextProps | null>(null)\n\n/**\n * Provider component for managing local storage.\n *\n * @remarks\n * The local storage is typed using the `jenesei-kit-react.d.ts` file:\n *\n * ```typescript\n * import '@jenesei-software/jenesei-kit-react'\n *\n * declare module '@jenesei-software/jenesei-kit-react' {\n * export interface ValidLocalStorageObject {\n * access_token: string\n * refresh_token: string\n * }\n * }\n * ```\n */\nexport const ProviderLocalStorage: FC<ProviderLocalStorageProps> = props => {\n const {\n getLocalStorage,\n setLocalStorage,\n removeLocalStorageValue,\n removeLocalStorageValues,\n checkLocalStorage,\n localStorageValues\n } = useProviderLocalStorage(props)\n\n return (\n <LocalStorageContext.Provider\n value={{\n getLocalStorage,\n setLocalStorage,\n removeLocalStorageValue,\n removeLocalStorageValues,\n checkLocalStorage,\n localStorageValues\n }}\n >\n {props.children}\n </LocalStorageContext.Provider>\n )\n}\n\nconst useProviderLocalStorage = (props: ProviderLocalStorageProps) => {\n const [localStorageValues, setLocalStorageValues] = useState<ValidLocalStorageObject>()\n\n const getLocalStorage = useCallback(\n <K extends keyof ValidLocalStorageObject>(name: K): ValidLocalStorageObject[K] | undefined => {\n const localStorageValue = localStorage.getItem(name)\n setLocalStorageValues(prevState => ({\n ...prevState,\n [name]: localStorageValue ? JSON.parse(localStorageValue) : undefined\n }))\n return localStorageValue ? JSON.parse(localStorageValue) : undefined\n },\n []\n )\n\n const changeLocalStorage = useCallback(\n <K extends keyof ValidLocalStorageObject>(name: K, value: ValidLocalStorageObject[K]) => {\n try {\n localStorage.setItem(String(name), JSON.stringify(value))\n setLocalStorageValues(prevState => ({ ...prevState, [name]: value }))\n } catch {\n console.info(`Provider LocalStorage. ChangeLocalStorage error - key:${name}, value:${value}.`)\n }\n },\n []\n )\n\n const removeLocalStorageValue = useCallback(<K extends keyof ValidLocalStorageObject>(name: K) => {\n try {\n localStorage.removeItem(String(name))\n setLocalStorageValues(prevState => ({\n ...prevState,\n [name]: undefined\n }))\n } catch {\n console.info(`Provider LocalStorage. RemoveLocalStorageValue error - key:${name}.`)\n }\n }, [])\n\n const removeLocalStorageValues = useCallback(() => {\n if (props.validate && props.validate.validateKeys) {\n props.validate?.validateKeys.forEach(key => {\n removeLocalStorageValue(String(key) as never)\n })\n } else {\n console.info('Provider LocalStorage. RemoveLocalStorageValues - validate is not defined.')\n }\n }, [props.validate, removeLocalStorageValue])\n\n const checkLocalStorage = useCallback(() => {\n if (props.validate && props.validate.validateKeys && props.validate.getValidateLocalStorageValue) {\n props.validate?.validateKeys.forEach(key => {\n const localStorageValue = localStorage.getItem(key)\n if (localStorageValue) {\n try {\n const parsedValue = JSON.parse(localStorageValue)\n if (!props.validate?.getValidateLocalStorageValue(String(key) as never, parsedValue as never)) {\n removeLocalStorageValue(String(key) as never)\n } else {\n setLocalStorageValues(prevState => ({\n ...prevState,\n [key]: parsedValue\n }))\n }\n } catch {\n removeLocalStorageValue(String(key) as never)\n }\n } else {\n removeLocalStorageValue(String(key) as never)\n }\n })\n } else {\n console.info('Provider LocalStorage. CheckLocalStorage - validate is not defined.')\n }\n }, [props.validate, removeLocalStorageValue])\n\n useEffect(() => {\n checkLocalStorage()\n }, [checkLocalStorage])\n\n return {\n getLocalStorage,\n setLocalStorage: changeLocalStorage,\n removeLocalStorageValue,\n removeLocalStorageValues,\n checkLocalStorage,\n localStorageValues\n }\n}\n","import { useContext } from 'react'\n\nimport { LocalStorageContext, LocalStorageContextProps } from '.'\n\n/**\n * Custom hook to access the LocalStorageContext.\n */\nexport const useLocalStorage = (): LocalStorageContextProps => {\n const context = useContext(LocalStorageContext)\n if (!context) {\n throw new Error('useLocalStorage must be used within an ProviderLocalStorage')\n }\n return context\n}\n","export function getFromLocalStorage<T>(key: string): T | null {\n const item = localStorage.getItem(key)\n if (item) {\n try {\n return JSON.parse(item) as T\n } catch (error) {\n console.error(`Error parsing localStorage item \"${key}\":`, error)\n return null\n }\n }\n return null\n}\n\nexport function setToLocalStorage<T>(key: string, value: T): void {\n try {\n const item = JSON.stringify(value)\n localStorage.setItem(key, item)\n } catch (error) {\n console.error(`Error setting localStorage item \"${key}\":`, error)\n }\n}\n"],"names":["jsx","_a"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";exports.urlBase64ToUint8Array=e=>{const r=(e+"=".repeat((4-e.length%4)%4)).replace(/-/g,"+").replace(/_/g,"/"),t=window.atob(r),n=new Uint8Array(t.length);for(let a=0;a<t.length;++a)n[a]=t.charCodeAt(a);return n};
2
+ //# sourceMappingURL=context.functions-ar41xFVo.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.functions-ar41xFVo.cjs","sources":["../src/contexts/context-permission/context.functions.ts"],"sourcesContent":["export const urlBase64ToUint8Array = (base64String: string) => {\n const padding = '='.repeat((4 - (base64String.length % 4)) % 4)\n const base64 = (base64String + padding).replace(/-/g, '+').replace(/_/g, '/')\n\n const rawData = window.atob(base64)\n const outputArray = new Uint8Array(rawData.length)\n\n for (let i = 0; i < rawData.length; ++i) {\n outputArray[i] = rawData.charCodeAt(i)\n }\n\n return outputArray\n}\n"],"names":["base64String","base64","repeat","length","replace","rawData","window","atob","outputArray","Uint8Array","i","charCodeAt"],"mappings":"2CAAsCA,IACpC,MACMC,GAAUD,EADA,IAAIE,QAAQ,EAAKF,EAAaG,OAAS,GAAM,IACrBC,QAAQ,KAAM,KAAKA,QAAQ,KAAM,KAEnEC,EAAUC,OAAOC,KAAKN,GACtBO,EAAc,IAAIC,WAAWJ,EAAQF,QAE3C,IAAA,IAASO,EAAI,EAAGA,EAAIL,EAAQF,SAAUO,EACpCF,EAAYE,GAAKL,EAAQM,WAAWD,GAGtC,OAAOF"}
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("react"),a=require("./jsx-runtime-BcGej2Kr.cjs"),o=e.createContext(null),t=a=>{const[o,t]=e.useState(),r=e.useCallback(e=>{const a=localStorage.getItem(e);return t(o=>({...o,[e]:a?JSON.parse(a):void 0})),a?JSON.parse(a):void 0},[]),l=e.useCallback((e,a)=>{try{localStorage.setItem(String(e),JSON.stringify(a)),t(o=>({...o,[e]:a}))}catch{console.info(`Provider LocalStorage. ChangeLocalStorage error - key:${e}, value:${a}.`)}},[]),c=e.useCallback(e=>{try{localStorage.removeItem(String(e)),t(a=>({...a,[e]:void 0}))}catch{console.info(`Provider LocalStorage. RemoveLocalStorageValue error - key:${e}.`)}},[]),s=e.useCallback(()=>{var e;a.validate&&a.validate.validateKeys?null==(e=a.validate)||e.validateKeys.forEach(e=>{c(String(e))}):console.info("Provider LocalStorage. RemoveLocalStorageValues - validate is not defined.")},[a.validate,c]),i=e.useCallback(()=>{var e;a.validate&&a.validate.validateKeys&&a.validate.getValidateLocalStorageValue?null==(e=a.validate)||e.validateKeys.forEach(e=>{var o;const r=localStorage.getItem(e);if(r)try{const l=JSON.parse(r);(null==(o=a.validate)?void 0:o.getValidateLocalStorageValue(String(e),l))?t(a=>({...a,[e]:l})):c(String(e))}catch{c(String(e))}else c(String(e))}):console.info("Provider LocalStorage. CheckLocalStorage - validate is not defined.")},[a.validate,c]);return e.useEffect(()=>{i()},[i]),{getLocalStorage:r,setLocalStorage:l,removeLocalStorageValue:c,removeLocalStorageValues:s,checkLocalStorage:i,localStorageValues:o}};exports.LocalStorageContext=o,exports.ProviderLocalStorage=e=>{const{getLocalStorage:r,setLocalStorage:l,removeLocalStorageValue:c,removeLocalStorageValues:s,checkLocalStorage:i,localStorageValues:g}=t(e);return a.jsxRuntimeExports.jsx(o.Provider,{value:{getLocalStorage:r,setLocalStorage:l,removeLocalStorageValue:c,removeLocalStorageValues:s,checkLocalStorage:i,localStorageValues:g},children:e.children})},exports.getFromLocalStorage=function(e){const a=localStorage.getItem(e);if(a)try{return JSON.parse(a)}catch(o){return console.error(`Error parsing localStorage item "${e}":`,o),null}return null},exports.setToLocalStorage=function(e,a){try{const o=JSON.stringify(a);localStorage.setItem(e,o)}catch(o){console.error(`Error setting localStorage item "${e}":`,o)}},exports.useLocalStorage=()=>{const a=e.useContext(o);if(!a)throw new Error("useLocalStorage must be used within an ProviderLocalStorage");return a};
2
+ //# sourceMappingURL=context.functions-ohI9H54j.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.functions-ohI9H54j.cjs","sources":["../src/contexts/context-local-storage/context.tsx","../src/contexts/context-local-storage/context.functions.ts","../src/contexts/context-local-storage/context.hooks.ts"],"sourcesContent":["import { FC, createContext, useCallback, useEffect, useState } from 'react'\n\nimport { LocalStorageContextProps, ProviderLocalStorageProps, ValidLocalStorageObject } from '.'\n\nexport const LocalStorageContext = createContext<LocalStorageContextProps | null>(null)\n\n/**\n * Provider component for managing local storage.\n *\n * @remarks\n * The local storage is typed using the `jenesei-kit-react.d.ts` file:\n *\n * ```typescript\n * import '@jenesei-software/jenesei-kit-react'\n *\n * declare module '@jenesei-software/jenesei-kit-react' {\n * export interface ValidLocalStorageObject {\n * access_token: string\n * refresh_token: string\n * }\n * }\n * ```\n */\nexport const ProviderLocalStorage: FC<ProviderLocalStorageProps> = props => {\n const {\n getLocalStorage,\n setLocalStorage,\n removeLocalStorageValue,\n removeLocalStorageValues,\n checkLocalStorage,\n localStorageValues\n } = useProviderLocalStorage(props)\n\n return (\n <LocalStorageContext.Provider\n value={{\n getLocalStorage,\n setLocalStorage,\n removeLocalStorageValue,\n removeLocalStorageValues,\n checkLocalStorage,\n localStorageValues\n }}\n >\n {props.children}\n </LocalStorageContext.Provider>\n )\n}\n\nconst useProviderLocalStorage = (props: ProviderLocalStorageProps) => {\n const [localStorageValues, setLocalStorageValues] = useState<ValidLocalStorageObject>()\n\n const getLocalStorage = useCallback(\n <K extends keyof ValidLocalStorageObject>(name: K): ValidLocalStorageObject[K] | undefined => {\n const localStorageValue = localStorage.getItem(name)\n setLocalStorageValues(prevState => ({\n ...prevState,\n [name]: localStorageValue ? JSON.parse(localStorageValue) : undefined\n }))\n return localStorageValue ? JSON.parse(localStorageValue) : undefined\n },\n []\n )\n\n const changeLocalStorage = useCallback(\n <K extends keyof ValidLocalStorageObject>(name: K, value: ValidLocalStorageObject[K]) => {\n try {\n localStorage.setItem(String(name), JSON.stringify(value))\n setLocalStorageValues(prevState => ({ ...prevState, [name]: value }))\n } catch {\n console.info(`Provider LocalStorage. ChangeLocalStorage error - key:${name}, value:${value}.`)\n }\n },\n []\n )\n\n const removeLocalStorageValue = useCallback(<K extends keyof ValidLocalStorageObject>(name: K) => {\n try {\n localStorage.removeItem(String(name))\n setLocalStorageValues(prevState => ({\n ...prevState,\n [name]: undefined\n }))\n } catch {\n console.info(`Provider LocalStorage. RemoveLocalStorageValue error - key:${name}.`)\n }\n }, [])\n\n const removeLocalStorageValues = useCallback(() => {\n if (props.validate && props.validate.validateKeys) {\n props.validate?.validateKeys.forEach(key => {\n removeLocalStorageValue(String(key) as never)\n })\n } else {\n console.info('Provider LocalStorage. RemoveLocalStorageValues - validate is not defined.')\n }\n }, [props.validate, removeLocalStorageValue])\n\n const checkLocalStorage = useCallback(() => {\n if (props.validate && props.validate.validateKeys && props.validate.getValidateLocalStorageValue) {\n props.validate?.validateKeys.forEach(key => {\n const localStorageValue = localStorage.getItem(key)\n if (localStorageValue) {\n try {\n const parsedValue = JSON.parse(localStorageValue)\n if (!props.validate?.getValidateLocalStorageValue(String(key) as never, parsedValue as never)) {\n removeLocalStorageValue(String(key) as never)\n } else {\n setLocalStorageValues(prevState => ({\n ...prevState,\n [key]: parsedValue\n }))\n }\n } catch {\n removeLocalStorageValue(String(key) as never)\n }\n } else {\n removeLocalStorageValue(String(key) as never)\n }\n })\n } else {\n console.info('Provider LocalStorage. CheckLocalStorage - validate is not defined.')\n }\n }, [props.validate, removeLocalStorageValue])\n\n useEffect(() => {\n checkLocalStorage()\n }, [checkLocalStorage])\n\n return {\n getLocalStorage,\n setLocalStorage: changeLocalStorage,\n removeLocalStorageValue,\n removeLocalStorageValues,\n checkLocalStorage,\n localStorageValues\n }\n}\n","export function getFromLocalStorage<T>(key: string): T | null {\n const item = localStorage.getItem(key)\n if (item) {\n try {\n return JSON.parse(item) as T\n } catch (error) {\n console.error(`Error parsing localStorage item \"${key}\":`, error)\n return null\n }\n }\n return null\n}\n\nexport function setToLocalStorage<T>(key: string, value: T): void {\n try {\n const item = JSON.stringify(value)\n localStorage.setItem(key, item)\n } catch (error) {\n console.error(`Error setting localStorage item \"${key}\":`, error)\n }\n}\n","import { useContext } from 'react'\n\nimport { LocalStorageContext, LocalStorageContextProps } from '.'\n\n/**\n * Custom hook to access the LocalStorageContext.\n */\nexport const useLocalStorage = (): LocalStorageContextProps => {\n const context = useContext(LocalStorageContext)\n if (!context) {\n throw new Error('useLocalStorage must be used within an ProviderLocalStorage')\n }\n return context\n}\n"],"names":["LocalStorageContext","createContext","useProviderLocalStorage","props","localStorageValues","setLocalStorageValues","useState","getLocalStorage","useCallback","name","localStorageValue","localStorage","getItem","prevState","JSON","parse","changeLocalStorage","value","setItem","String","stringify","console","info","removeLocalStorageValue","removeItem","removeLocalStorageValues","validate","validateKeys","_a","forEach","key","checkLocalStorage","getValidateLocalStorageValue","parsedValue","useEffect","setLocalStorage","jsx","Provider","children","item","error","context","useContext","Error"],"mappings":"8EAIaA,EAAsBC,EAAAA,cAA+C,MA6C5EC,EAA2BC,IAC/B,MAAOC,EAAoBC,GAAyBC,aAE9CC,EAAkBC,EAAAA,YACoBC,IACxC,MAAMC,EAAoBC,aAAaC,QAAQH,GAK/C,OAJAJ,EAAsBQ,IAAA,IACjBA,EACHJ,CAACA,GAAOC,EAAoBI,KAAKC,MAAML,QAAqB,KAEvDA,EAAoBI,KAAKC,MAAML,QAAqB,GAE7D,IAGIM,EAAqBR,EAAAA,YACzB,CAA0CC,EAASQ,KACjD,IACEN,aAAaO,QAAQC,OAAOV,GAAOK,KAAKM,UAAUH,IAClDZ,EAAsBQ,QAAmBA,EAAWJ,CAACA,GAAOQ,IAAQ,CAAA,MAEpEI,QAAQC,KAAK,yDAAyDb,YAAeQ,KAAQ,GAGjG,IAGIM,EAA0Bf,cAAsDC,IACpF,IACEE,aAAaa,WAAWL,OAAOV,IAC/BJ,EAAsBQ,IAAA,IACjBA,EACHJ,CAACA,QAAO,IACR,CAAA,MAEFY,QAAQC,KAAK,8DAA8Db,KAAO,GAEnF,IAEGgB,EAA2BjB,EAAAA,YAAY,WACvCL,EAAMuB,UAAYvB,EAAMuB,SAASC,aACnC,OAAAC,EAAAzB,EAAMuB,WAANE,EAAgBD,aAAaE,QAAQC,IACnCP,EAAwBJ,OAAOW,MAGjCT,QAAQC,KAAK,+EAEd,CAACnB,EAAMuB,SAAUH,IAEdQ,EAAoBvB,EAAAA,YAAY,WAChCL,EAAMuB,UAAYvB,EAAMuB,SAASC,cAAgBxB,EAAMuB,SAASM,6BAClE,OAAAJ,EAAAzB,EAAMuB,WAANE,EAAgBD,aAAaE,QAAQC,UACnC,MAAMpB,EAAoBC,aAAaC,QAAQkB,GAC/C,GAAIpB,EACF,IACE,MAAMuB,EAAcnB,KAAKC,MAAML,IAC1B,OAAAkB,EAAAzB,EAAMuB,eAAN,EAAAE,EAAgBI,6BAA6Bb,OAAOW,GAAeG,IAGtE5B,EAAsBQ,IAAA,IACjBA,EACHiB,CAACA,GAAMG,KAJTV,EAAwBJ,OAAOW,GAMjC,CAAA,MAEAP,EAAwBJ,OAAOW,GAAa,MAG9CP,EAAwBJ,OAAOW,MAInCT,QAAQC,KAAK,wEAEd,CAACnB,EAAMuB,SAAUH,IAMpB,OAJAW,EAAAA,UAAU,KACRH,KACC,CAACA,IAEG,CACLxB,kBACA4B,gBAAiBnB,EACjBO,0BACAE,2BACAM,oBACA3B,kFAhH+DD,IACjE,MAAMI,gBACJA,EAAA4B,gBACAA,EAAAZ,wBACAA,EAAAE,yBACAA,EAAAM,kBACAA,EAAA3B,mBACAA,GACEF,EAAwBC,GAE5B,SACEiC,kBAAAA,IAACpC,EAAoBqC,SAApB,CACCpB,MAAO,CACLV,kBACA4B,kBACAZ,0BACAE,2BACAM,oBACA3B,sBAGDkC,SAAAnC,EAAMmC,wCC5CN,SAAgCR,GACrC,MAAMS,EAAO5B,aAAaC,QAAQkB,GAClC,GAAIS,EACF,IACE,OAAOzB,KAAKC,MAAMwB,EAAI,OACfC,GAEP,OADAnB,QAAQmB,MAAM,oCAAoCV,MAASU,GACpD,IAAA,CAGX,OAAO,IACT,4BAEO,SAA8BV,EAAab,GAChD,IACE,MAAMsB,EAAOzB,KAAKM,UAAUH,GAC5BN,aAAaO,QAAQY,EAAKS,EAAI,OACvBC,GACPnB,QAAQmB,MAAM,oCAAoCV,MAASU,EAAK,CAEpE,0BCb+B,KAC7B,MAAMC,EAAUC,EAAAA,WAAW1C,GAC3B,IAAKyC,EACH,MAAM,IAAIE,MAAM,+DAElB,OAAOF"}
@@ -0,0 +1,117 @@
1
+ import { createContext, useState, useEffect, useCallback, useContext } from "react";
2
+ import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
3
+ const PermissionContext = createContext(null);
4
+ const ProviderPermission = (props) => {
5
+ const { pushNotificationSupported } = usePushNotificationSupported();
6
+ const { isBiometricSupported } = useBiometricSupported();
7
+ const { notificationPermission, requestNotificationPermission, isNotificationPermissionLoading } = useNotificationPermission();
8
+ const { geolocationPermission, requestGeolocationPermission } = useGeolocationPermission();
9
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
10
+ PermissionContext.Provider,
11
+ {
12
+ value: {
13
+ isBiometricSupported,
14
+ geolocationPermission,
15
+ pushNotificationSupported,
16
+ requestGeolocationPermission,
17
+ notificationPermission,
18
+ requestNotificationPermission,
19
+ isNotificationPermissionLoading
20
+ },
21
+ children: props.children
22
+ }
23
+ );
24
+ };
25
+ const useBiometricSupported = () => {
26
+ const [isBiometricSupported, setIsBiometricSupported] = useState(false);
27
+ useEffect(() => {
28
+ const checkBiometricAvailability = async () => {
29
+ try {
30
+ if (window.PublicKeyCredential && typeof window.PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable === "function") {
31
+ const available = await window.PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable();
32
+ setIsBiometricSupported(available);
33
+ } else {
34
+ setIsBiometricSupported(false);
35
+ }
36
+ } catch (error) {
37
+ console.error("Error checking biometric availability:", error);
38
+ setIsBiometricSupported(false);
39
+ }
40
+ };
41
+ checkBiometricAvailability();
42
+ }, []);
43
+ return { isBiometricSupported };
44
+ };
45
+ const useGeolocationPermission = () => {
46
+ const [geolocationPermission, setGeolocationPermission] = useState(null);
47
+ useEffect(() => {
48
+ if ("permissions" in window.navigator) {
49
+ window.navigator.permissions.query({ name: "geolocation" }).then((permissionStatus) => {
50
+ setGeolocationPermission(permissionStatus.state);
51
+ permissionStatus.onchange = () => {
52
+ setGeolocationPermission(permissionStatus.state);
53
+ };
54
+ });
55
+ }
56
+ }, []);
57
+ const requestGeolocationPermission = useCallback(() => {
58
+ if ("geolocation" in window.navigator) {
59
+ window.navigator.geolocation.getCurrentPosition(
60
+ () => setGeolocationPermission("granted"),
61
+ () => setGeolocationPermission("denied")
62
+ );
63
+ } else {
64
+ console.warn("Provider Permission. Geolocation is not supported in this browser.");
65
+ }
66
+ }, []);
67
+ return { geolocationPermission, requestGeolocationPermission };
68
+ };
69
+ const useNotificationPermission = () => {
70
+ const [notificationPermission, setNotificationPermission] = useState(null);
71
+ const [isNotificationPermissionLoading, setIsNotificationPermissionLoading] = useState(false);
72
+ const requestNotificationPermission = useCallback(async () => {
73
+ setIsNotificationPermissionLoading(true);
74
+ if ("Notification" in window) {
75
+ try {
76
+ setIsNotificationPermissionLoading(true);
77
+ const permission = await window.Notification.requestPermission();
78
+ setNotificationPermission(permission);
79
+ setIsNotificationPermissionLoading(false);
80
+ return permission;
81
+ } catch (error) {
82
+ console.error("Provider Permission. Failed to request notification permission:", error);
83
+ }
84
+ } else {
85
+ console.warn("Provider Permission. Notifications are not supported in this browser.");
86
+ }
87
+ setIsNotificationPermissionLoading(false);
88
+ }, []);
89
+ useEffect(() => {
90
+ if ("Notification" in window) {
91
+ setNotificationPermission(window.Notification.permission);
92
+ }
93
+ }, []);
94
+ return { notificationPermission, requestNotificationPermission, isNotificationPermissionLoading };
95
+ };
96
+ const usePushNotificationSupported = () => {
97
+ const [pushNotificationSupported, setPushNotificationSupported] = useState(false);
98
+ useEffect(() => {
99
+ if ("PushManager" in window) {
100
+ setPushNotificationSupported(true);
101
+ }
102
+ }, []);
103
+ return { pushNotificationSupported };
104
+ };
105
+ const usePermission = () => {
106
+ const context = useContext(PermissionContext);
107
+ if (!context) {
108
+ throw new Error("usePermission must be used within an PermissionProvider");
109
+ }
110
+ return context;
111
+ };
112
+ export {
113
+ PermissionContext as P,
114
+ ProviderPermission as a,
115
+ usePermission as u
116
+ };
117
+ //# sourceMappingURL=context.hooks-7ydA7mGj.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.hooks-7ydA7mGj.js","sources":["../src/contexts/context-permission/context.tsx","../src/contexts/context-permission/context.hooks.ts"],"sourcesContent":["import { createContext, useCallback, useEffect, useState } from 'react'\n\nimport { PermissionContextProps, ProviderPermissionProps } from '.'\n\nexport const PermissionContext = createContext<PermissionContextProps | null>(null)\n\nexport const ProviderPermission = (props: ProviderPermissionProps) => {\n const { pushNotificationSupported } = usePushNotificationSupported()\n const { isBiometricSupported } = useBiometricSupported()\n const { notificationPermission, requestNotificationPermission, isNotificationPermissionLoading } =\n useNotificationPermission()\n const { geolocationPermission, requestGeolocationPermission } = useGeolocationPermission()\n\n return (\n <PermissionContext.Provider\n value={{\n isBiometricSupported,\n geolocationPermission,\n pushNotificationSupported,\n requestGeolocationPermission,\n notificationPermission,\n requestNotificationPermission,\n isNotificationPermissionLoading\n }}\n >\n {props.children}\n </PermissionContext.Provider>\n )\n}\n\nconst useBiometricSupported = () => {\n const [isBiometricSupported, setIsBiometricSupported] = useState(false)\n\n useEffect(() => {\n const checkBiometricAvailability = async () => {\n try {\n if (\n window.PublicKeyCredential &&\n typeof window.PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable === 'function'\n ) {\n const available = await window.PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable()\n setIsBiometricSupported(available)\n } else {\n setIsBiometricSupported(false)\n }\n } catch (error) {\n console.error('Error checking biometric availability:', error)\n setIsBiometricSupported(false)\n }\n }\n\n checkBiometricAvailability()\n }, [])\n\n return { isBiometricSupported }\n}\n\nconst useGeolocationPermission = () => {\n // eslint-disable-next-line no-undef\n const [geolocationPermission, setGeolocationPermission] = useState<PermissionState | null>(null)\n\n useEffect(() => {\n if ('permissions' in window.navigator) {\n window.navigator.permissions.query({ name: 'geolocation' }).then(permissionStatus => {\n setGeolocationPermission(permissionStatus.state)\n permissionStatus.onchange = () => {\n setGeolocationPermission(permissionStatus.state)\n }\n })\n }\n }, [])\n\n const requestGeolocationPermission = useCallback(() => {\n if ('geolocation' in window.navigator) {\n window.navigator.geolocation.getCurrentPosition(\n () => setGeolocationPermission('granted'),\n () => setGeolocationPermission('denied')\n )\n } else {\n console.warn('Provider Permission. Geolocation is not supported in this browser.')\n }\n }, [])\n\n return { geolocationPermission, requestGeolocationPermission }\n}\n\nconst useNotificationPermission = () => {\n // eslint-disable-next-line no-undef\n const [notificationPermission, setNotificationPermission] = useState<NotificationPermission | null>(null)\n const [isNotificationPermissionLoading, setIsNotificationPermissionLoading] = useState<boolean>(false)\n\n const requestNotificationPermission = useCallback(async () => {\n setIsNotificationPermissionLoading(true)\n if ('Notification' in window) {\n try {\n setIsNotificationPermissionLoading(true)\n const permission = await window.Notification.requestPermission()\n setNotificationPermission(permission)\n setIsNotificationPermissionLoading(false)\n return permission\n } catch (error) {\n console.error('Provider Permission. Failed to request notification permission:', error)\n }\n } else {\n console.warn('Provider Permission. Notifications are not supported in this browser.')\n }\n setIsNotificationPermissionLoading(false)\n }, [])\n\n useEffect(() => {\n if ('Notification' in window) {\n setNotificationPermission(window.Notification.permission)\n }\n }, [])\n\n return { notificationPermission, requestNotificationPermission, isNotificationPermissionLoading }\n}\n\nconst usePushNotificationSupported = () => {\n const [pushNotificationSupported, setPushNotificationSupported] = useState<boolean>(false)\n\n useEffect(() => {\n if ('PushManager' in window) {\n setPushNotificationSupported(true)\n }\n }, [])\n\n return { pushNotificationSupported }\n}\n","import { useContext } from 'react'\n\nimport { PermissionContext, PermissionContextProps } from '.'\n\n/**\n * Custom hook to access the PermissionContext.\n */\nexport const usePermission = (): PermissionContextProps => {\n const context = useContext(PermissionContext)\n if (!context) {\n throw new Error('usePermission must be used within an PermissionProvider')\n }\n return context\n}\n"],"names":["jsx"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("react"),r=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("styled-components"),n=e.createContext(null);exports.ProviderScreenWidth=s=>{const c=t.useTheme(),[i,o]=e.useState("default"),u=e.useMemo(()=>Object.entries(c.screens).map(([e])=>({isScreen:i===e,value:e})),[i,c.screens]),d=e.useMemo(()=>{const e=u.find(e=>e.isScreen);return(null==e?void 0:e.value)??"default"},[u]);return e.useEffect(()=>{const e=Object.entries(c.screens).map(([e,r])=>({key:e,bp:r.width})).sort((e,r)=>e.bp-r.bp).map(({key:e,bp:r})=>({key:e,mq:window.matchMedia(`(max-width: ${r}px)`)})),r=()=>{for(const{key:r,mq:t}of e)if(t.matches)return void o(r);o("default")};return e.forEach(({mq:e})=>e.addEventListener("change",r)),r(),()=>{e.forEach(({mq:e})=>e.removeEventListener("change",r))}},[c.screens]),r.jsxRuntimeExports.jsx(n.Provider,{value:{screens:u,screenActual:d,screenWidth:i},children:s.children})},exports.ScreenWidthContext=n,exports.useScreenWidth=()=>{const r=e.useContext(n);if(!r)throw new Error("useScreenWidth must be used within an ProviderScreenWidth");return r};
2
+ //# sourceMappingURL=context.hooks-BIsapq-0.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.hooks-BIsapq-0.cjs","sources":["../src/contexts/context-screen-width/context.tsx","../src/contexts/context-screen-width/context.hooks.ts"],"sourcesContent":["import { FC, createContext, useEffect, useMemo, useState } from 'react'\nimport { useTheme } from 'styled-components'\n\nimport { ProviderScreenWidthProps, ScreenWidthContextProps, Screens } from '.'\n\nexport const ScreenWidthContext = createContext<ScreenWidthContextProps | null>(null)\n\nexport const ProviderScreenWidth: FC<ProviderScreenWidthProps> = props => {\n const theme = useTheme()\n const [screenWidth, setScreenWidth] = useState<Screens>('default')\n\n const screens: ScreenWidthContextProps['screens'] = useMemo(() => {\n const allSizes = Object.entries(theme.screens).map(([key]) => {\n return {\n isScreen: screenWidth === key,\n value: key as Screens\n }\n })\n return allSizes\n }, [screenWidth, theme.screens])\n\n const screenActual: ScreenWidthContextProps['screenActual'] = useMemo(() => {\n const find = screens.find(item => item.isScreen)\n return find?.value ?? 'default'\n }, [screens])\n\n useEffect(() => {\n const sortedScreens = Object.entries(theme.screens)\n .map(([key, value]) => ({\n key: key as Screens,\n bp: (value as { width: number }).width\n }))\n .sort((a, b) => a.bp - b.bp)\n\n const queries = sortedScreens.map(({ key, bp }) => {\n return { key, mq: window.matchMedia(`(max-width: ${bp}px)`) }\n })\n const updateScreen = () => {\n for (const { key, mq } of queries) {\n if (mq.matches) {\n setScreenWidth(key)\n return\n }\n }\n // На всякий случай fallback\n setScreenWidth('default')\n }\n\n queries.forEach(({ mq }) => mq.addEventListener('change', updateScreen))\n updateScreen()\n\n return () => {\n queries.forEach(({ mq }) => mq.removeEventListener('change', updateScreen))\n }\n }, [theme.screens])\n return (\n <ScreenWidthContext.Provider\n value={{\n screens,\n screenActual,\n screenWidth\n }}\n >\n {props.children}\n </ScreenWidthContext.Provider>\n )\n}\n","import { useContext } from 'react'\n\nimport { ScreenWidthContext, ScreenWidthContextProps } from '.'\n\nexport const useScreenWidth = (): ScreenWidthContextProps => {\n const context = useContext(ScreenWidthContext)\n if (!context) {\n throw new Error('useScreenWidth must be used within an ProviderScreenWidth')\n }\n return context\n}\n"],"names":["ScreenWidthContext","createContext","props","theme","useTheme","screenWidth","setScreenWidth","useState","screens","useMemo","Object","entries","map","key","isScreen","value","screenActual","find","item","useEffect","queries","bp","width","sort","a","b","mq","window","matchMedia","updateScreen","matches","forEach","addEventListener","removeEventListener","jsx","Provider","children","context","useContext","Error"],"mappings":"6GAKaA,EAAqBC,EAAAA,cAA8C,kCAEfC,IAC/D,MAAMC,EAAQC,EAAAA,YACPC,EAAaC,GAAkBC,EAAAA,SAAkB,WAElDC,EAA8CC,EAAAA,QAAQ,IACzCC,OAAOC,QAAQR,EAAMK,SAASI,IAAI,EAAEC,MAC5C,CACLC,SAAUT,IAAgBQ,EAC1BE,MAAOF,KAIV,CAACR,EAAaF,EAAMK,UAEjBQ,EAAwDP,EAAAA,QAAQ,KACpE,MAAMQ,EAAOT,EAAQS,KAAKC,GAAQA,EAAKJ,UACvC,aAAOG,WAAMF,QAAS,WACrB,CAACP,IA+BJ,OA7BAW,EAAAA,UAAU,KACR,MAOMC,EAPgBV,OAAOC,QAAQR,EAAMK,SACxCI,IAAI,EAAEC,EAAKE,MAAK,CACfF,MACAQ,GAAKN,EAA4BO,SAElCC,KAAK,CAACC,EAAGC,IAAMD,EAAEH,GAAKI,EAAEJ,IAEGT,IAAI,EAAGC,MAAKQ,SACjC,CAAER,MAAKa,GAAIC,OAAOC,WAAW,eAAeP,WAE/CQ,EAAe,KACnB,IAAA,MAAWhB,IAAEA,EAAAa,GAAKA,KAAQN,EACxB,GAAIM,EAAGI,QAEL,YADAxB,EAAeO,GAKnBP,EAAe,YAMjB,OAHAc,EAAQW,QAAQ,EAAGL,QAASA,EAAGM,iBAAiB,SAAUH,IAC1DA,IAEO,KACLT,EAAQW,QAAQ,EAAGL,QAASA,EAAGO,oBAAoB,SAAUJ,MAE9D,CAAC1B,EAAMK,YAER0B,kBAAAA,IAAClC,EAAmBmC,SAAnB,CACCpB,MAAO,CACLP,UACAQ,eACAX,eAGD+B,SAAAlC,EAAMkC,gEC3DiB,KAC5B,MAAMC,EAAUC,EAAAA,WAAWtC,GAC3B,IAAKqC,EACH,MAAM,IAAIE,MAAM,6DAElB,OAAOF"}
@@ -0,0 +1,68 @@
1
+ import { createContext, useState, useMemo, useEffect, useContext } from "react";
2
+ import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
3
+ import { useTheme } from "styled-components";
4
+ const ScreenWidthContext = createContext(null);
5
+ const ProviderScreenWidth = (props) => {
6
+ const theme = useTheme();
7
+ const [screenWidth, setScreenWidth] = useState("default");
8
+ const screens = useMemo(() => {
9
+ const allSizes = Object.entries(theme.screens).map(([key]) => {
10
+ return {
11
+ isScreen: screenWidth === key,
12
+ value: key
13
+ };
14
+ });
15
+ return allSizes;
16
+ }, [screenWidth, theme.screens]);
17
+ const screenActual = useMemo(() => {
18
+ const find = screens.find((item) => item.isScreen);
19
+ return (find == null ? void 0 : find.value) ?? "default";
20
+ }, [screens]);
21
+ useEffect(() => {
22
+ const sortedScreens = Object.entries(theme.screens).map(([key, value]) => ({
23
+ key,
24
+ bp: value.width
25
+ })).sort((a, b) => a.bp - b.bp);
26
+ const queries = sortedScreens.map(({ key, bp }) => {
27
+ return { key, mq: window.matchMedia(`(max-width: ${bp}px)`) };
28
+ });
29
+ const updateScreen = () => {
30
+ for (const { key, mq } of queries) {
31
+ if (mq.matches) {
32
+ setScreenWidth(key);
33
+ return;
34
+ }
35
+ }
36
+ setScreenWidth("default");
37
+ };
38
+ queries.forEach(({ mq }) => mq.addEventListener("change", updateScreen));
39
+ updateScreen();
40
+ return () => {
41
+ queries.forEach(({ mq }) => mq.removeEventListener("change", updateScreen));
42
+ };
43
+ }, [theme.screens]);
44
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
45
+ ScreenWidthContext.Provider,
46
+ {
47
+ value: {
48
+ screens,
49
+ screenActual,
50
+ screenWidth
51
+ },
52
+ children: props.children
53
+ }
54
+ );
55
+ };
56
+ const useScreenWidth = () => {
57
+ const context = useContext(ScreenWidthContext);
58
+ if (!context) {
59
+ throw new Error("useScreenWidth must be used within an ProviderScreenWidth");
60
+ }
61
+ return context;
62
+ };
63
+ export {
64
+ ProviderScreenWidth as P,
65
+ ScreenWidthContext as S,
66
+ useScreenWidth as u
67
+ };
68
+ //# sourceMappingURL=context.hooks-BmwyZ1p3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.hooks-BmwyZ1p3.js","sources":["../src/contexts/context-screen-width/context.tsx","../src/contexts/context-screen-width/context.hooks.ts"],"sourcesContent":["import { FC, createContext, useEffect, useMemo, useState } from 'react'\nimport { useTheme } from 'styled-components'\n\nimport { ProviderScreenWidthProps, ScreenWidthContextProps, Screens } from '.'\n\nexport const ScreenWidthContext = createContext<ScreenWidthContextProps | null>(null)\n\nexport const ProviderScreenWidth: FC<ProviderScreenWidthProps> = props => {\n const theme = useTheme()\n const [screenWidth, setScreenWidth] = useState<Screens>('default')\n\n const screens: ScreenWidthContextProps['screens'] = useMemo(() => {\n const allSizes = Object.entries(theme.screens).map(([key]) => {\n return {\n isScreen: screenWidth === key,\n value: key as Screens\n }\n })\n return allSizes\n }, [screenWidth, theme.screens])\n\n const screenActual: ScreenWidthContextProps['screenActual'] = useMemo(() => {\n const find = screens.find(item => item.isScreen)\n return find?.value ?? 'default'\n }, [screens])\n\n useEffect(() => {\n const sortedScreens = Object.entries(theme.screens)\n .map(([key, value]) => ({\n key: key as Screens,\n bp: (value as { width: number }).width\n }))\n .sort((a, b) => a.bp - b.bp)\n\n const queries = sortedScreens.map(({ key, bp }) => {\n return { key, mq: window.matchMedia(`(max-width: ${bp}px)`) }\n })\n const updateScreen = () => {\n for (const { key, mq } of queries) {\n if (mq.matches) {\n setScreenWidth(key)\n return\n }\n }\n // На всякий случай fallback\n setScreenWidth('default')\n }\n\n queries.forEach(({ mq }) => mq.addEventListener('change', updateScreen))\n updateScreen()\n\n return () => {\n queries.forEach(({ mq }) => mq.removeEventListener('change', updateScreen))\n }\n }, [theme.screens])\n return (\n <ScreenWidthContext.Provider\n value={{\n screens,\n screenActual,\n screenWidth\n }}\n >\n {props.children}\n </ScreenWidthContext.Provider>\n )\n}\n","import { useContext } from 'react'\n\nimport { ScreenWidthContext, ScreenWidthContextProps } from '.'\n\nexport const useScreenWidth = (): ScreenWidthContextProps => {\n const context = useContext(ScreenWidthContext)\n if (!context) {\n throw new Error('useScreenWidth must be used within an ProviderScreenWidth')\n }\n return context\n}\n"],"names":["jsx"],"mappings":";;;AAKO,MAAM,qBAAqB,cAA8C,IAAI;AAE7E,MAAM,sBAAoD,CAAA,UAAS;AACxE,QAAM,QAAQ,SAAA;AACd,QAAM,CAAC,aAAa,cAAc,IAAI,SAAkB,SAAS;AAEjE,QAAM,UAA8C,QAAQ,MAAM;AAChE,UAAM,WAAW,OAAO,QAAQ,MAAM,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM;AAC5D,aAAO;AAAA,QACL,UAAU,gBAAgB;AAAA,QAC1B,OAAO;AAAA,MAAA;AAAA,IACT,CACD;AACD,WAAO;AAAA,EAAA,GACN,CAAC,aAAa,MAAM,OAAO,CAAC;AAE/B,QAAM,eAAwD,QAAQ,MAAM;AAC1E,UAAM,OAAO,QAAQ,KAAK,CAAA,SAAQ,KAAK,QAAQ;AAC/C,YAAO,6BAAM,UAAS;AAAA,EAAA,GACrB,CAAC,OAAO,CAAC;AAEZ,YAAU,MAAM;AACd,UAAM,gBAAgB,OAAO,QAAQ,MAAM,OAAO,EAC/C,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO;AAAA,MACtB;AAAA,MACA,IAAK,MAA4B;AAAA,IAAA,EACjC,EACD,KAAK,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE;AAE7B,UAAM,UAAU,cAAc,IAAI,CAAC,EAAE,KAAK,SAAS;AACjD,aAAO,EAAE,KAAK,IAAI,OAAO,WAAW,eAAe,EAAE,KAAK,EAAA;AAAA,IAAE,CAC7D;AACD,UAAM,eAAe,MAAM;AACzB,iBAAW,EAAE,KAAK,GAAA,KAAQ,SAAS;AACjC,YAAI,GAAG,SAAS;AACd,yBAAe,GAAG;AAClB;AAAA,QAAA;AAAA,MACF;AAGF,qBAAe,SAAS;AAAA,IAAA;AAG1B,YAAQ,QAAQ,CAAC,EAAE,GAAA,MAAS,GAAG,iBAAiB,UAAU,YAAY,CAAC;AACvE,iBAAA;AAEA,WAAO,MAAM;AACX,cAAQ,QAAQ,CAAC,EAAE,GAAA,MAAS,GAAG,oBAAoB,UAAU,YAAY,CAAC;AAAA,IAAA;AAAA,EAC5E,GACC,CAAC,MAAM,OAAO,CAAC;AAClB,SACEA,kCAAAA;AAAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAGD,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;AC9DO,MAAM,iBAAiB,MAA+B;AAC3D,QAAM,UAAU,WAAW,kBAAkB;AAC7C,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,2DAA2D;AAAA,EAAA;AAE7E,SAAO;AACT;"}
@@ -0,0 +1,52 @@
1
+ import { createContext, useState, useEffect, useContext } from "react";
2
+ import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
3
+ import { u as usePermission } from "./context.hooks-7ydA7mGj.js";
4
+ const GeolocationContext = createContext(null);
5
+ const ProviderGeolocation = (props) => {
6
+ const { geolocationPermission, requestGeolocationPermission } = usePermission();
7
+ const [location, setLocation] = useState(null);
8
+ const [error, setError] = useState(null);
9
+ useEffect(() => {
10
+ const handleSuccess = (position) => {
11
+ setLocation(position);
12
+ };
13
+ const handleError = (error2) => {
14
+ setError(error2);
15
+ };
16
+ if (geolocationPermission === "granted") {
17
+ navigator.geolocation.getCurrentPosition(handleSuccess, handleError);
18
+ }
19
+ }, [geolocationPermission, props.isAskEntrance, requestGeolocationPermission]);
20
+ useEffect(() => {
21
+ if (props.isAskEntrance) {
22
+ if (geolocationPermission !== "granted") {
23
+ requestGeolocationPermission();
24
+ }
25
+ }
26
+ }, [geolocationPermission, props.isAskEntrance, requestGeolocationPermission]);
27
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
28
+ GeolocationContext.Provider,
29
+ {
30
+ value: {
31
+ requestGeolocationPermission,
32
+ geolocationPermission,
33
+ location,
34
+ error
35
+ },
36
+ children: props.children
37
+ }
38
+ );
39
+ };
40
+ const useGeolocation = () => {
41
+ const context = useContext(GeolocationContext);
42
+ if (!context) {
43
+ throw new Error("useGeolocation must be used within an ProviderGeolocation");
44
+ }
45
+ return context;
46
+ };
47
+ export {
48
+ GeolocationContext as G,
49
+ ProviderGeolocation as P,
50
+ useGeolocation as u
51
+ };
52
+ //# sourceMappingURL=context.hooks-BzMTkJNv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.hooks-BzMTkJNv.js","sources":["../src/contexts/context-geolocation/context.tsx","../src/contexts/context-geolocation/context.hooks.ts"],"sourcesContent":["import { FC, createContext, useEffect, useState } from 'react'\n\nimport { usePermission } from '@local/contexts/context-permission'\n\nimport { GeolocationContextProps, ProviderGeolocationProps } from '.'\n\nexport const GeolocationContext = createContext<GeolocationContextProps | null>(null)\n\nexport const ProviderGeolocation: FC<ProviderGeolocationProps> = props => {\n const { geolocationPermission, requestGeolocationPermission } = usePermission()\n\n const [location, setLocation] = useState<GeolocationPosition | null>(null)\n const [error, setError] = useState<GeolocationPositionError | null>(null)\n\n useEffect(() => {\n const handleSuccess = (position: GeolocationPosition) => {\n setLocation(position)\n }\n\n const handleError = (error: GeolocationPositionError) => {\n setError(error)\n }\n\n if (geolocationPermission === 'granted') {\n navigator.geolocation.getCurrentPosition(handleSuccess, handleError)\n }\n }, [geolocationPermission, props.isAskEntrance, requestGeolocationPermission])\n\n useEffect(() => {\n if (props.isAskEntrance) {\n if (geolocationPermission !== 'granted') {\n requestGeolocationPermission()\n }\n }\n }, [geolocationPermission, props.isAskEntrance, requestGeolocationPermission])\n return (\n <GeolocationContext.Provider\n value={{\n requestGeolocationPermission,\n geolocationPermission,\n location,\n error\n }}\n >\n {props.children}\n </GeolocationContext.Provider>\n )\n}\n","import { useContext } from 'react'\n\nimport { GeolocationContext, GeolocationContextProps } from '.'\n\nexport const useGeolocation = (): GeolocationContextProps => {\n const context = useContext(GeolocationContext)\n if (!context) {\n throw new Error('useGeolocation must be used within an ProviderGeolocation')\n }\n return context\n}\n"],"names":["error","jsx"],"mappings":";;;AAMO,MAAM,qBAAqB,cAA8C,IAAI;AAE7E,MAAM,sBAAoD,CAAA,UAAS;AACxE,QAAM,EAAE,uBAAuB,6BAAA,IAAiC,cAAA;AAEhE,QAAM,CAAC,UAAU,WAAW,IAAI,SAAqC,IAAI;AACzE,QAAM,CAAC,OAAO,QAAQ,IAAI,SAA0C,IAAI;AAExE,YAAU,MAAM;AACd,UAAM,gBAAgB,CAAC,aAAkC;AACvD,kBAAY,QAAQ;AAAA,IAAA;AAGtB,UAAM,cAAc,CAACA,WAAoC;AACvD,eAASA,MAAK;AAAA,IAAA;AAGhB,QAAI,0BAA0B,WAAW;AACvC,gBAAU,YAAY,mBAAmB,eAAe,WAAW;AAAA,IAAA;AAAA,EACrE,GACC,CAAC,uBAAuB,MAAM,eAAe,4BAA4B,CAAC;AAE7E,YAAU,MAAM;AACd,QAAI,MAAM,eAAe;AACvB,UAAI,0BAA0B,WAAW;AACvC,qCAAA;AAAA,MAA6B;AAAA,IAC/B;AAAA,EACF,GACC,CAAC,uBAAuB,MAAM,eAAe,4BAA4B,CAAC;AAC7E,SACEC,kCAAAA;AAAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAGD,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;AC3CO,MAAM,iBAAiB,MAA+B;AAC3D,QAAM,UAAU,WAAW,kBAAkB;AAC7C,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,2DAA2D;AAAA,EAAA;AAE7E,SAAO;AACT;"}
@@ -0,0 +1,72 @@
1
+ "use strict";const e=require("react"),t=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("./area-9NUxwBGc.cjs"),o=require("./theme.global-D6XU05Et.cjs"),r=require("styled-components"),l=require("./style-Dm74EPGE.cjs"),n=require("./context.hooks-BIsapq-0.cjs"),s=e.createContext(null),a=t=>{const[i,o]=e.useState(t||{visible:!0,defaultVisible:!0}),r=e.useCallback(e=>{o(e)},[]);return e.useEffect(()=>{t&&o(t)},[t]),{previewProps:i,changePreview:r}},d=t=>{const[i,o]=e.useState({bgColor:t,bgColorHistory:[t],bgColorIndex:0}),r=e.useCallback(e=>{o(t=>{const i=[...t.bgColorHistory.slice(0,t.bgColorIndex+1),e];return{bgColor:e,bgColorHistory:i,bgColorIndex:i.length-1}})},[]),l=e.useCallback(e=>{o(t=>{const i=t.bgColorIndex+e;return i>=0&&i<t.bgColorHistory.length?{...t,bgColor:t.bgColorHistory[i],bgColorIndex:i}:t})},[]),n=e.useCallback(()=>{o({bgColor:t,bgColorHistory:[t],bgColorIndex:0})},[t]);return e.useEffect(()=>{o({bgColor:t,bgColorHistory:[t],bgColorIndex:0})},[t]),{bgColor:i.bgColor,changeBgColor:r,historyBgColor:l,setDefaultBgColor:n,bgColorIndex:i.bgColorIndex}},u=t=>{const[i,o]=e.useState({statusBarColor:t,statusBarColorHistory:[t],statusBarColorIndex:0}),r=e.useCallback(e=>{o(t=>{const i=[...t.statusBarColorHistory.slice(0,t.statusBarColorIndex+1),e];return{statusBarColor:e,statusBarColorHistory:i,statusBarColorIndex:i.length-1}})},[]),l=e.useCallback(e=>{o(t=>{const i=t.statusBarColorIndex+e;return i>=0&&i<t.statusBarColorHistory.length?{...t,statusBarColor:t.statusBarColorHistory[i],statusBarColorIndex:i}:t})},[]),n=e.useCallback(()=>{o({statusBarColor:t,statusBarColorHistory:[t],statusBarColorIndex:0})},[t]);return e.useEffect(()=>{o({statusBarColor:t,statusBarColorHistory:[t],statusBarColorIndex:0})},[t]),{statusBarColor:i.statusBarColor,changeStatusBarColor:r,historyStatusBarColor:l,setDefaultStatusBarColor:n,statusBarColorIndex:i.statusBarColorIndex}},g=t=>{const[i,o]=e.useState({bgImage:t,bgImageHistory:[t],bgImageIndex:0}),r=e.useCallback(e=>{o(t=>{const i=[...t.bgImageHistory.slice(0,t.bgImageIndex+1),e];return{bgImage:e,bgImageHistory:i,bgImageIndex:i.length-1}})},[]),l=e.useCallback(e=>{o(t=>{const i=t.bgImageIndex+e;return i>=0&&i<t.bgImageHistory.length?{...t,bgImage:t.bgImageHistory[i],bgImageIndex:i}:t})},[]),n=e.useCallback(()=>{o({bgImage:t,bgImageHistory:[t],bgImageIndex:0})},[t]);return e.useEffect(()=>{o({bgImage:t,bgImageHistory:[t],bgImageIndex:0})},[t]),{bgImage:i.bgImage,changeBgImage:r,historyBgImage:l,setDefaultBgImage:n,bgImageIndex:i.bgImageIndex}},c=t=>{const[i,o]=e.useState({title:t,titleHistory:[t],titleIndex:0}),r=e.useCallback(e=>{o(t=>{const i=[...t.titleHistory.slice(0,t.titleIndex+1),e];return{title:e,titleHistory:i,titleIndex:i.length-1}})},[]),l=e.useCallback(e=>{o(t=>{const i=t.titleIndex+e;return i>=0&&i<t.titleHistory.length?{...t,title:t.titleHistory[i],titleIndex:i}:t})},[]),n=e.useCallback(()=>{o({title:t,titleHistory:[t],titleIndex:0})},[t]);return e.useEffect(()=>{o({title:t,titleHistory:[t],titleIndex:0})},[t]),{title:i.title,titleIndex:i.titleIndex,titleHistory:i.titleHistory,changeTitle:r,setHistoryTitle:l,setDefaultTitle:n}},h=t=>{const[i,o]=e.useState({description:t,descriptionHistory:[t],descriptionIndex:0}),r=e.useCallback(e=>{o(t=>{const i=[...t.descriptionHistory.slice(0,t.descriptionIndex+1),e];return{description:e,descriptionHistory:i,descriptionIndex:i.length-1}})},[]),l=e.useCallback(e=>{o(t=>{const i=t.descriptionIndex+e;return i>=0&&i<t.descriptionHistory.length?{...t,description:t.descriptionHistory[i],descriptionIndex:i}:t})},[]),n=e.useCallback(()=>{o({description:t,descriptionHistory:[t],descriptionIndex:0})},[t]);return e.useEffect(()=>{o({description:t,descriptionHistory:[t],descriptionIndex:0})},[t]),{description:i.description,changeDescription:r,historyDescription:l,setDefaultDescription:n,descriptionIndex:i.descriptionIndex}},x=r.styled.div`
2
+ display: flex;
3
+ flex-direction: column;
4
+ max-width: 100dvw;
5
+ min-height: 100dvh;
6
+ width: 100%;
7
+ overflow: hidden;
8
+ position: relative;
9
+
10
+ background-color: ${e=>o.JeneseiPalette[e.$bgColor]};
11
+ background-image: url(${e=>e.$bgImage});
12
+ `;function p(e){return r.css`
13
+ grid-template-columns: ${()=>`${e.leftAsideWidth} 1fr ${e.rightAsideWidth}`};
14
+ grid-template-rows: ${()=>`${e.notificationHeight} ${e.headerHeight} ${e.navHeight} 1fr ${e.footerHeight}`};
15
+ `}const v=r.css`
16
+ ${e=>{var t,i,o,r,l,n,s,a,d,u,g,c;return p({leftAsideWidth:(null==(i=null==(t=e.$leftAside)?void 0:t.length)?void 0:i.default)??"0px",rightAsideWidth:(null==(r=null==(o=e.$rightAside)?void 0:o.length)?void 0:r.default)??"0px",notificationHeight:(null==(n=null==(l=e.$notification)?void 0:l.length)?void 0:n.default)??"0px",headerHeight:(null==(a=null==(s=e.$header)?void 0:s.length)?void 0:a.default)??"0px",navHeight:(null==(u=null==(d=e.$nav)?void 0:d.length)?void 0:u.default)??"0px",footerHeight:(null==(c=null==(g=e.$footer)?void 0:g.length)?void 0:c.default)??"0px"})}}
17
+ ${e=>{var t,i,o,l,n,s;const a=null==(t=e.$leftAside)?void 0:t.length,d=null==(i=e.$rightAside)?void 0:i.length,u=null==(o=e.$notification)?void 0:o.length,g=null==(l=e.$header)?void 0:l.length,c=null==(n=e.$nav)?void 0:n.length,h=null==(s=e.$footer)?void 0:s.length;return Object.entries(e.theme.screens).filter(([e])=>"default"!==e).map(([t])=>{var i;const o=t,l=null==(i=e.theme.screens[o])?void 0:i.width;return l?r.css`
18
+ @media (max-width: ${l}px) {
19
+ ${p({leftAsideWidth:a&&a[o]?a[o]:"0px",rightAsideWidth:d&&d[o]?d[o]:"0px",notificationHeight:u&&u[o]?u[o]:"0px",headerHeight:g&&g[o]?g[o]:"0px",navHeight:c&&c[o]?c[o]:"0px",footerHeight:h&&h[o]?h[o]:"0px"})}
20
+ }
21
+ `:null})}}
22
+ `,f=r.styled.div`
23
+ display: grid;
24
+ width: 100%;
25
+ height: 100%;
26
+
27
+ min-height: 100dvh;
28
+
29
+ ${l.addGridTransition};
30
+
31
+ ${e=>`\n grid-template-areas: ${(e=>{var t,i,o,r,l,n,s,a;let d='\n "notification notification notification"\n "header header header"\n "nav nav nav"\n "leftAside children rightAside"\n "footer footer footer"\n ';return d=`\n "notification notification notification"\n "${(null==(t=e.$leftAside)?void 0:t.isTopHeader)?"leftAside":"header"} header ${(null==(i=e.$rightAside)?void 0:i.isTopHeader)?"rightAside":"header"}"\n "${(null==(o=e.$leftAside)?void 0:o.isTopHeader)||(null==(r=e.$leftAside)?void 0:r.isTopNav)?"leftAside":"nav"} nav ${(null==(l=e.$rightAside)?void 0:l.isTopHeader)||(null==(n=e.$rightAside)?void 0:n.isTopNav)?"rightAside":"nav"}"\n "leftAside children rightAside"\n "${(null==(s=e.$leftAside)?void 0:s.isTopFooter)?"leftAside":"footer"} footer ${(null==(a=e.$rightAside)?void 0:a.isTopFooter)?"rightAside":"footer"}"\n `,d})(e)};\n `}
32
+
33
+ ${e=>e.$isScrollOutlet?r.css`
34
+ max-height: 100dvh;
35
+ `:r.css`
36
+ max-height: none;
37
+ `};
38
+
39
+ ${v};
40
+ `,m=r.styled.main`
41
+ z-index: ${e=>{var t;return(null==(t=null==e?void 0:e.$main)?void 0:t.zIndex)??"auto"}};
42
+ display: flex;
43
+ grid-area: children;
44
+ max-width: 100%;
45
+ max-height: 100%;
46
+ overflow: auto;
47
+ `,C=r.styled.section`
48
+ z-index: ${e=>{var t;return(null==(t=null==e?void 0:e.$notification)?void 0:t.zIndex)??"auto"}};
49
+ grid-area: notification;
50
+ display: flex;
51
+ `,I=r.styled.header`
52
+ z-index: ${e=>{var t;return(null==(t=null==e?void 0:e.$header)?void 0:t.zIndex)??"auto"}};
53
+ grid-area: header;
54
+ display: flex;
55
+ `,b=r.styled.footer`
56
+ z-index: ${e=>{var t;return(null==(t=null==e?void 0:e.$footer)?void 0:t.zIndex)??"auto"}};
57
+ grid-area: footer;
58
+ display: flex;
59
+ `,$=r.styled.nav`
60
+ z-index: ${e=>{var t;return(null==(t=null==e?void 0:e.$nav)?void 0:t.zIndex)??"auto"}};
61
+ grid-area: nav;
62
+ display: flex;
63
+ `,y=r.styled.aside`
64
+ z-index: ${e=>{var t;return(null==(t=null==e?void 0:e.$leftAside)?void 0:t.zIndex)??"auto"}};
65
+ grid-area: leftAside;
66
+ display: flex;
67
+ `,A=r.styled.aside`
68
+ z-index: ${e=>{var t;return(null==(t=null==e?void 0:e.$rightAside)?void 0:t.zIndex)??"auto"}};
69
+ grid-area: rightAside;
70
+ display: flex;
71
+ `;exports.AppContext=s,exports.ProviderApp=e=>{var r,l,p,v,B,H,j,D,E,w,P,S,k,T,R,z,O,W,q,N,F,J,G,L;const{bgColor:V,changeBgColor:K,historyBgColor:M,setDefaultBgColor:Q}=d(e.defaultBgColor),{statusBarColor:U,changeStatusBarColor:X,historyStatusBarColor:Y,setDefaultStatusBarColor:Z}=u(e.defaultStatusBarColor),{bgImage:_,changeBgImage:ee,historyBgImage:te,setDefaultBgImage:ie}=g(e.defaultBgImage||null),{title:oe,changeTitle:re,setHistoryTitle:le,setDefaultTitle:ne}=c(e.defaultTitle||null),{description:se,changeDescription:ae,historyDescription:de,setDefaultDescription:ue}=h(e.defaultDescription),{changePreview:ge,previewProps:ce}=a(e.defaultPreview),{screenActual:he}=n.useScreenWidth();return t.jsxRuntimeExports.jsxs(s.Provider,{value:{changePreview:ge,changeStatusBarColor:X,changeBgColor:K,changeBgImage:ee,changeTitle:re,changeDescription:ae,historyStatusBarColor:Y,historyBgColor:M,historyBgImage:te,setHistoryTitle:le,historyDescription:de,setDefaultStatusBarColor:Z,setDefaultBgColor:Q,setDefaultBgImage:ie,setDefaultTitle:ne,setDefaultDescription:ue},children:[t.jsxRuntimeExports.jsx("title",{children:oe}),t.jsxRuntimeExports.jsx("meta",{name:"description",content:se}),t.jsxRuntimeExports.jsx("meta",{name:"theme-color",content:o.JeneseiPalette[U]}),t.jsxRuntimeExports.jsx("meta",{name:"apple-mobile-web-app-status-bar-style",content:"default"}),t.jsxRuntimeExports.jsx("meta",{name:"mobile-web-app-capable",content:"yes"}),t.jsxRuntimeExports.jsx(i.Preview,{...ce,children:t.jsxRuntimeExports.jsx(x,{$bgColor:V,$bgImage:_,children:t.jsxRuntimeExports.jsxs(f,{$isScrollOutlet:e.isScrollOutlet,$footer:e.footer,$notification:e.notification,$header:e.header,$nav:e.nav,$leftAside:e.leftAside,$rightAside:e.rightAside,children:[(null==(r=e.notification)?void 0:r.length)&&(null==(p=null==(l=e.notification)?void 0:l.length)?void 0:p[he])?t.jsxRuntimeExports.jsx(C,{$notification:e.notification,children:(null==(v=e.notification)?void 0:v.component)||null}):null,(null==(B=e.header)?void 0:B.length)&&(null==(j=null==(H=e.header)?void 0:H.length)?void 0:j[he])?t.jsxRuntimeExports.jsx(I,{$header:e.header,children:(null==(D=e.header)?void 0:D.component)||null}):null,(null==(E=e.nav)?void 0:E.length)&&(null==(P=null==(w=e.nav)?void 0:w.length)?void 0:P[he])?t.jsxRuntimeExports.jsx($,{$nav:e.nav,children:(null==(S=e.nav)?void 0:S.component)||null}):null,(null==(k=e.leftAside)?void 0:k.length)&&(null==(R=null==(T=e.leftAside)?void 0:T.length)?void 0:R[he])?t.jsxRuntimeExports.jsx(y,{$leftAside:e.leftAside,children:(null==(z=e.leftAside)?void 0:z.component)||null}):null,t.jsxRuntimeExports.jsx(m,{$main:e.main,children:e.children}),(null==(O=e.rightAside)?void 0:O.length)&&(null==(q=null==(W=e.rightAside)?void 0:W.length)?void 0:q[he])?t.jsxRuntimeExports.jsx(A,{$rightAside:e.rightAside,children:(null==(N=e.rightAside)?void 0:N.component)||null}):null,(null==(F=e.footer)?void 0:F.length)&&(null==(G=null==(J=e.footer)?void 0:J.length)?void 0:G[he])?t.jsxRuntimeExports.jsx(b,{$footer:e.footer,children:(null==(L=e.footer)?void 0:L.component)||null}):null]})})})]})},exports.ProviderAppOutlet=f,exports.ProviderAppOutletChildren=m,exports.ProviderAppOutletFooter=b,exports.ProviderAppOutletHeader=I,exports.ProviderAppOutletLeftAside=y,exports.ProviderAppOutletNav=$,exports.ProviderAppOutletNotification=C,exports.ProviderAppOutletRightAside=A,exports.ProviderAppWrapper=x,exports.useApp=()=>{const t=e.useContext(s);if(!t)throw new Error("useApp must be used within an ProviderApp");return t},exports.useBgColor=d,exports.useBgImage=g,exports.useDescription=h,exports.useStatusBarColor=u;
72
+ //# sourceMappingURL=context.hooks-CTi-CVKx.cjs.map