blue-chestnut-solar-expert 0.0.68 → 0.0.69

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 (329) hide show
  1. package/dist/cjs/app-globals-I24yU8do.js +10 -0
  2. package/dist/cjs/app-globals-I24yU8do.js.map +1 -0
  3. package/dist/cjs/basedecoder-CQuzfSgz.js +116 -0
  4. package/dist/cjs/basedecoder-CQuzfSgz.js.map +1 -0
  5. package/dist/cjs/deflate-AzGzQSW2.js +17 -0
  6. package/dist/cjs/deflate-AzGzQSW2.js.map +1 -0
  7. package/dist/cjs/eraser-icon_19.cjs.entry.js +31 -0
  8. package/dist/cjs/eraser-icon_19.cjs.entry.js.map +1 -0
  9. package/dist/cjs/index-HgRXF6kp.js +1470 -0
  10. package/dist/cjs/index-HgRXF6kp.js.map +1 -0
  11. package/dist/cjs/index.cjs.js +7 -0
  12. package/dist/cjs/index.cjs.js.map +1 -0
  13. package/dist/cjs/jpeg-Bx3bTm32.js +904 -0
  14. package/dist/cjs/jpeg-Bx3bTm32.js.map +1 -0
  15. package/dist/cjs/lerc-Bdx5y-yw.js +4427 -0
  16. package/dist/cjs/lerc-Bdx5y-yw.js.map +1 -0
  17. package/dist/cjs/loader.cjs.js +18 -0
  18. package/dist/cjs/loader.cjs.js.map +1 -0
  19. package/dist/cjs/loading-widget.cjs.entry.js +22 -0
  20. package/dist/{stencil-library/polygon-information.entry.esm.js.map → cjs/loading-widget.cjs.entry.js.map} +1 -1
  21. package/dist/cjs/loading-widget.entry.cjs.js.map +1 -0
  22. package/dist/cjs/lzw-BmFug486.js +140 -0
  23. package/dist/cjs/lzw-BmFug486.js.map +1 -0
  24. package/dist/cjs/packbits-CYx9fB0v.js +35 -0
  25. package/dist/cjs/packbits-CYx9fB0v.js.map +1 -0
  26. package/dist/cjs/pako.esm-0mKI6Jik.js +3243 -0
  27. package/dist/cjs/pako.esm-0mKI6Jik.js.map +1 -0
  28. package/dist/cjs/raw-DC82yoyr.js +16 -0
  29. package/dist/cjs/raw-DC82yoyr.js.map +1 -0
  30. package/dist/cjs/stencil-library.cjs.js +30 -0
  31. package/dist/cjs/stencil-library.cjs.js.map +1 -0
  32. package/dist/cjs/webimage-Dc0t2xAB.js +49 -0
  33. package/dist/cjs/webimage-Dc0t2xAB.js.map +1 -0
  34. package/dist/collection/collection-manifest.json +31 -0
  35. package/dist/collection/components/icons/eraser.js +64 -0
  36. package/dist/collection/components/icons/eraser.js.map +1 -0
  37. package/dist/collection/components/icons/house.js +64 -0
  38. package/dist/collection/components/icons/house.js.map +1 -0
  39. package/dist/collection/components/icons/icon.js +108 -0
  40. package/dist/collection/components/icons/icon.js.map +1 -0
  41. package/dist/collection/components/icons/marker.js +64 -0
  42. package/dist/collection/components/icons/marker.js.map +1 -0
  43. package/dist/collection/components/icons/move.js +64 -0
  44. package/dist/collection/components/icons/move.js.map +1 -0
  45. package/dist/collection/components/icons/octagonMinus.js +64 -0
  46. package/dist/collection/components/icons/octagonMinus.js.map +1 -0
  47. package/dist/collection/components/icons/search.js +64 -0
  48. package/dist/collection/components/icons/search.js.map +1 -0
  49. package/dist/collection/components/icons/settings.js +64 -0
  50. package/dist/collection/components/icons/settings.js.map +1 -0
  51. package/dist/collection/components/icons/undo.js +64 -0
  52. package/dist/collection/components/icons/undo.js.map +1 -0
  53. package/dist/collection/components/map-draw/map-draw.js +824 -0
  54. package/dist/collection/components/map-draw/map-draw.js.map +1 -0
  55. package/dist/collection/components/map-draw/map-selector.js +246 -0
  56. package/dist/collection/components/map-draw/map-selector.js.map +1 -0
  57. package/dist/collection/components/map-draw/polygon-buttons.js +86 -0
  58. package/dist/collection/components/map-draw/polygon-buttons.js.map +1 -0
  59. package/dist/collection/components/map-draw/polygon-information.js +211 -0
  60. package/dist/collection/components/map-draw/polygon-information.js.map +1 -0
  61. package/dist/collection/components/map-draw/tool-box.js +108 -0
  62. package/dist/collection/components/map-draw/tool-box.js.map +1 -0
  63. package/dist/collection/components/map-draw/tutorial-component.js +219 -0
  64. package/dist/collection/components/map-draw/tutorial-component.js.map +1 -0
  65. package/dist/collection/components/settings/settings.js +127 -0
  66. package/dist/collection/components/settings/settings.js.map +1 -0
  67. package/dist/collection/components/solar-expert/solar-expert.js +241 -0
  68. package/dist/collection/components/solar-expert/solar-expert.js.map +1 -0
  69. package/dist/collection/components/solar-system-form/solar-system-form.js +617 -0
  70. package/dist/collection/components/solar-system-form/solar-system-form.js.map +1 -0
  71. package/dist/collection/components/widgets/loading-widget.js +18 -0
  72. package/dist/collection/components/widgets/loading-widget.js.map +1 -0
  73. package/dist/collection/components/widgets/toast-notification.js +133 -0
  74. package/dist/collection/components/widgets/toast-notification.js.map +1 -0
  75. package/dist/{stencil-library/config-CWfV1nKn.js → collection/config.js} +4 -10
  76. package/dist/collection/config.js.map +1 -0
  77. package/dist/collection/constants.js +90 -0
  78. package/dist/collection/constants.js.map +1 -0
  79. package/dist/collection/index.js +2 -0
  80. package/dist/collection/index.js.map +1 -0
  81. package/dist/collection/output.css +1126 -0
  82. package/dist/collection/store.js +43 -0
  83. package/dist/collection/store.js.map +1 -0
  84. package/dist/collection/types/lang.js +2 -0
  85. package/dist/collection/types/lang.js.map +1 -0
  86. package/dist/collection/types/shapes.js +2 -0
  87. package/dist/collection/types/shapes.js.map +1 -0
  88. package/dist/collection/utils/api.js +94 -0
  89. package/dist/collection/utils/api.js.map +1 -0
  90. package/dist/collection/utils/images.js +2 -0
  91. package/dist/collection/utils/images.js.map +1 -0
  92. package/dist/collection/utils/lang/english.js +164 -0
  93. package/dist/collection/utils/lang/english.js.map +1 -0
  94. package/dist/collection/utils/lang/general.js +30 -0
  95. package/dist/collection/utils/lang/general.js.map +1 -0
  96. package/dist/collection/utils/lang/german.js +164 -0
  97. package/dist/collection/utils/lang/german.js.map +1 -0
  98. package/dist/collection/utils/lang/spanish.js +164 -0
  99. package/dist/collection/utils/lang/spanish.js.map +1 -0
  100. package/dist/{stencil-library/tools-BNYKV5H5.js → collection/utils/render/tools.js} +8 -14
  101. package/dist/collection/utils/render/tools.js.map +1 -0
  102. package/dist/collection/utils/solar.js +135 -0
  103. package/dist/collection/utils/solar.js.map +1 -0
  104. package/dist/collection/utils/theme.js +97 -0
  105. package/dist/collection/utils/theme.js.map +1 -0
  106. package/dist/{stencil-library/utils-BCUZxI9u.js → collection/utils/utils.js} +3 -9
  107. package/dist/collection/utils/utils.js.map +1 -0
  108. package/dist/components/eraser-icon.js +11 -0
  109. package/dist/components/eraser-icon.js.map +1 -0
  110. package/dist/components/house-icon.js +11 -0
  111. package/dist/components/house-icon.js.map +1 -0
  112. package/dist/components/icon-selector.js +11 -0
  113. package/dist/components/icon-selector.js.map +1 -0
  114. package/dist/components/index.js +1269 -0
  115. package/dist/components/index.js.map +1 -0
  116. package/dist/components/loading-widget.js +38 -0
  117. package/dist/{stencil-library/marker-icon.entry.esm.js.map → components/loading-widget.js.map} +1 -1
  118. package/dist/components/map-draw.js +11 -0
  119. package/dist/components/map-draw.js.map +1 -0
  120. package/dist/components/map-selector.js +11 -0
  121. package/dist/components/map-selector.js.map +1 -0
  122. package/dist/components/marker-icon.js +11 -0
  123. package/dist/components/marker-icon.js.map +1 -0
  124. package/dist/components/move-icon.js +11 -0
  125. package/dist/components/move-icon.js.map +1 -0
  126. package/dist/components/octagon-minus-icon.js +11 -0
  127. package/dist/components/octagon-minus-icon.js.map +1 -0
  128. package/dist/{stencil-library/polygon-buttons.entry.js → components/p-26DHwbCE.js} +29 -10
  129. package/dist/{stencil-library/solar-expert.entry.js.map → components/p-26DHwbCE.js.map} +1 -1
  130. package/dist/components/p-B54Ul0nf.js +15 -0
  131. package/dist/components/p-B54Ul0nf.js.map +1 -0
  132. package/dist/components/p-B5WTRCh8.js +3241 -0
  133. package/dist/components/p-B5WTRCh8.js.map +1 -0
  134. package/dist/{stencil-library/jpeg-Dd5nnHR5.js → components/p-BGoSj_DR.js} +3 -11
  135. package/dist/components/p-BGoSj_DR.js.map +1 -0
  136. package/dist/{stencil-library/octagon-minus-icon.entry.js → components/p-BJLO76Yi.js} +27 -9
  137. package/dist/components/p-BJLO76Yi.js.map +1 -0
  138. package/dist/components/p-BOe-Z8rz.js +16323 -0
  139. package/dist/components/p-BOe-Z8rz.js.map +1 -0
  140. package/dist/{stencil-library/map-selector.entry.js → components/p-Bduzzygj.js} +453 -12
  141. package/dist/components/p-Bduzzygj.js.map +1 -0
  142. package/dist/{stencil-library/packbits-X3R_utTs.js → components/p-ByX6QP-E.js} +3 -9
  143. package/dist/components/p-ByX6QP-E.js.map +1 -0
  144. package/dist/{stencil-library/solar-system-form.entry.js → components/p-C3ZXE525.js} +382 -80
  145. package/dist/components/p-C3ZXE525.js.map +1 -0
  146. package/dist/{stencil-library/icon-selector.entry.js → components/p-C5QieOat.js} +76 -9
  147. package/dist/components/p-C5QieOat.js.map +1 -0
  148. package/dist/{stencil-library/eraser-icon.entry.js → components/p-CL74Q4VR.js} +27 -9
  149. package/dist/components/p-CL74Q4VR.js.map +1 -0
  150. package/dist/{stencil-library/webimage-CBrfoxHM.js → components/p-Cgchl6bA.js} +3 -9
  151. package/dist/components/p-Cgchl6bA.js.map +1 -0
  152. package/dist/{stencil-library/tool-box.entry.js → components/p-Cx7fffWb.js} +135 -11
  153. package/dist/components/p-Cx7fffWb.js.map +1 -0
  154. package/dist/{stencil-library/tutorial-component.entry.js → components/p-D2AHNjbG.js} +35 -10
  155. package/dist/{stencil-library/toast-notification.entry.esm.js.map → components/p-D2AHNjbG.js.map} +1 -1
  156. package/dist/{stencil-library/house-icon.entry.js → components/p-D8w3bTPO.js} +27 -9
  157. package/dist/components/p-D8w3bTPO.js.map +1 -0
  158. package/dist/{stencil-library/search-icon.entry.js → components/p-DBwr8xSB.js} +27 -9
  159. package/dist/components/p-DBwr8xSB.js.map +1 -0
  160. package/dist/{stencil-library/lerc-7W4E8EBs.js → components/p-DLWzgdrw.js} +1981 -27
  161. package/dist/components/p-DLWzgdrw.js.map +1 -0
  162. package/dist/{stencil-library/settings-icon.entry.js → components/p-DTXeHbuh.js} +27 -9
  163. package/dist/{stencil-library/octagon-minus-icon.entry.esm.js.map → components/p-DTXeHbuh.js.map} +1 -1
  164. package/dist/{stencil-library/settings-modal.entry.js → components/p-Ddk3b30j.js} +30 -12
  165. package/dist/{stencil-library/polygon-buttons.entry.esm.js.map → components/p-Ddk3b30j.js.map} +1 -1
  166. package/dist/{stencil-library/store-CcqrFuBK.js → components/p-DfzSejIb.js} +3 -3
  167. package/dist/components/p-DfzSejIb.js.map +1 -0
  168. package/dist/{stencil-library/move-icon.entry.js → components/p-FdEV2qPo.js} +27 -9
  169. package/dist/components/p-FdEV2qPo.js.map +1 -0
  170. package/dist/{stencil-library/polygon-information.entry.js → components/p-OxUYjaAL.js} +68 -11
  171. package/dist/components/p-OxUYjaAL.js.map +1 -0
  172. package/dist/{stencil-library/toast-notification.entry.js → components/p-P28NBglk.js} +30 -9
  173. package/dist/{stencil-library/loading-widget.entry.js.map → components/p-P28NBglk.js.map} +1 -1
  174. package/dist/{stencil-library/marker-icon.entry.js → components/p-Umz6nJIv.js} +27 -9
  175. package/dist/components/p-Umz6nJIv.js.map +1 -0
  176. package/dist/components/p-WmcSqXD8.js +14 -0
  177. package/dist/components/p-WmcSqXD8.js.map +1 -0
  178. package/dist/components/p-j-vOrhhh.js +114 -0
  179. package/dist/components/p-j-vOrhhh.js.map +1 -0
  180. package/dist/{stencil-library/lzw--P4c0ZHH.js → components/p-q8auDIJ2.js} +4 -10
  181. package/dist/components/p-q8auDIJ2.js.map +1 -0
  182. package/dist/{stencil-library/undo-icon.entry.js → components/p-waOPoUcA.js} +27 -9
  183. package/dist/components/p-waOPoUcA.js.map +1 -0
  184. package/dist/components/polygon-buttons.js +11 -0
  185. package/dist/components/polygon-buttons.js.map +1 -0
  186. package/dist/components/polygon-information.js +11 -0
  187. package/dist/components/polygon-information.js.map +1 -0
  188. package/dist/components/search-icon.js +11 -0
  189. package/dist/components/search-icon.js.map +1 -0
  190. package/dist/components/settings-icon.js +11 -0
  191. package/dist/components/settings-icon.js.map +1 -0
  192. package/dist/components/settings-modal.js +11 -0
  193. package/dist/components/settings-modal.js.map +1 -0
  194. package/dist/{stencil-library/solar-expert.entry.js → components/solar-expert.js} +149 -13
  195. package/dist/components/solar-expert.js.map +1 -0
  196. package/dist/components/solar-system-form.js +11 -0
  197. package/dist/components/solar-system-form.js.map +1 -0
  198. package/dist/components/toast-notification.js +11 -0
  199. package/dist/components/toast-notification.js.map +1 -0
  200. package/dist/components/tool-box.js +11 -0
  201. package/dist/components/tool-box.js.map +1 -0
  202. package/dist/components/tutorial-component.js +11 -0
  203. package/dist/components/tutorial-component.js.map +1 -0
  204. package/dist/components/undo-icon.js +11 -0
  205. package/dist/components/undo-icon.js.map +1 -0
  206. package/dist/esm/basedecoder-j-vOrhhh.js +114 -0
  207. package/dist/esm/basedecoder-j-vOrhhh.js.map +1 -0
  208. package/dist/esm/deflate-DHgPf9CO.js +15 -0
  209. package/dist/{stencil-library/deflate-0Vdd6-55.js.map → esm/deflate-DHgPf9CO.js.map} +1 -1
  210. package/dist/esm/eraser-icon_19.entry.js +7 -0
  211. package/dist/esm/eraser-icon_19.entry.js.map +1 -0
  212. package/dist/esm/index-C2JRBB5c.js +1458 -0
  213. package/dist/esm/index-C2JRBB5c.js.map +1 -0
  214. package/dist/esm/index.js +5 -0
  215. package/dist/esm/index.js.map +1 -0
  216. package/dist/esm/jpeg-CJLm1GkA.js +902 -0
  217. package/dist/esm/jpeg-CJLm1GkA.js.map +1 -0
  218. package/dist/esm/lerc-DF5Lrv5A.js +4424 -0
  219. package/dist/esm/lerc-DF5Lrv5A.js.map +1 -0
  220. package/dist/esm/loader.js +16 -0
  221. package/dist/esm/loader.js.map +1 -0
  222. package/dist/{stencil-library → esm}/loading-widget.entry.js +2 -2
  223. package/dist/esm/loading-widget.entry.js.map +1 -0
  224. package/dist/esm/lzw-DaOzWJUD.js +138 -0
  225. package/dist/esm/lzw-DaOzWJUD.js.map +1 -0
  226. package/dist/esm/packbits-CZPyx9kx.js +33 -0
  227. package/dist/esm/packbits-CZPyx9kx.js.map +1 -0
  228. package/dist/esm/pako.esm-B5WTRCh8.js +3241 -0
  229. package/dist/{stencil-library/pako.esm-CPorU236.js.map → esm/pako.esm-B5WTRCh8.js.map} +1 -1
  230. package/dist/esm/raw-pqeeWc2_.js +14 -0
  231. package/dist/esm/raw-pqeeWc2_.js.map +1 -0
  232. package/dist/esm/stencil-library.js +26 -0
  233. package/dist/esm/stencil-library.js.map +1 -0
  234. package/dist/esm/webimage-BiHardhv.js +47 -0
  235. package/dist/{stencil-library/webimage-CBrfoxHM.js.map → esm/webimage-BiHardhv.js.map} +1 -1
  236. package/dist/index.cjs.js +1 -0
  237. package/dist/index.js +1 -0
  238. package/dist/stencil-library/index.esm.js +1 -13
  239. package/dist/stencil-library/index.esm.js.map +1 -1
  240. package/dist/stencil-library/{search-icon.entry.js.map → p-9b4e52c3.entry.js} +2 -1
  241. package/dist/stencil-library/p-9b4e52c3.entry.js.map +1 -0
  242. package/dist/stencil-library/p-B54Ul0nf.js +2 -0
  243. package/dist/stencil-library/p-B54Ul0nf.js.map +1 -0
  244. package/dist/stencil-library/p-B5WTRCh8.js +2 -0
  245. package/dist/stencil-library/p-B5WTRCh8.js.map +1 -0
  246. package/dist/stencil-library/p-BGoSj_DR.js +2 -0
  247. package/dist/stencil-library/p-BGoSj_DR.js.map +1 -0
  248. package/dist/stencil-library/p-ByX6QP-E.js +2 -0
  249. package/dist/stencil-library/p-ByX6QP-E.js.map +1 -0
  250. package/dist/stencil-library/p-C2JRBB5c.js +3 -0
  251. package/dist/stencil-library/p-C2JRBB5c.js.map +1 -0
  252. package/dist/stencil-library/p-CX8V3eiN.js +2 -0
  253. package/dist/stencil-library/p-CX8V3eiN.js.map +1 -0
  254. package/dist/stencil-library/p-Cgchl6bA.js +2 -0
  255. package/dist/stencil-library/p-Cgchl6bA.js.map +1 -0
  256. package/dist/stencil-library/p-CymYGBJH.js +2 -0
  257. package/dist/stencil-library/p-CymYGBJH.js.map +1 -0
  258. package/dist/stencil-library/p-DHgjDQwz.js +10 -0
  259. package/dist/stencil-library/p-DHgjDQwz.js.map +1 -0
  260. package/dist/stencil-library/p-WmcSqXD8.js +2 -0
  261. package/dist/stencil-library/p-WmcSqXD8.js.map +1 -0
  262. package/dist/stencil-library/p-ba64c5e4.entry.js +2 -0
  263. package/dist/stencil-library/p-ba64c5e4.entry.js.map +1 -0
  264. package/dist/stencil-library/p-j-vOrhhh.js +2 -0
  265. package/dist/stencil-library/p-j-vOrhhh.js.map +1 -0
  266. package/dist/stencil-library/p-q8auDIJ2.js +2 -0
  267. package/dist/stencil-library/p-q8auDIJ2.js.map +1 -0
  268. package/dist/stencil-library/stencil-library.esm.js +1 -52
  269. package/dist/stencil-library/stencil-library.esm.js.map +1 -1
  270. package/dist/types/components/solar-system-form/solar-system-form.d.ts +1 -0
  271. package/dist/types/components.d.ts +2 -0
  272. package/dist/types/utils/api.d.ts +1 -0
  273. package/package.json +1 -1
  274. package/dist/stencil-library/config-CWfV1nKn.js.map +0 -1
  275. package/dist/stencil-library/constants-hboFofU4.js +0 -1522
  276. package/dist/stencil-library/constants-hboFofU4.js.map +0 -1
  277. package/dist/stencil-library/decoder-DNOvLSaS.js +0 -39
  278. package/dist/stencil-library/decoder-DNOvLSaS.js.map +0 -1
  279. package/dist/stencil-library/deflate-0Vdd6-55.js +0 -21
  280. package/dist/stencil-library/eraser-icon.entry.esm.js.map +0 -1
  281. package/dist/stencil-library/eraser-icon.entry.js.map +0 -1
  282. package/dist/stencil-library/house-icon.entry.esm.js.map +0 -1
  283. package/dist/stencil-library/house-icon.entry.js.map +0 -1
  284. package/dist/stencil-library/icon-selector.entry.esm.js.map +0 -1
  285. package/dist/stencil-library/icon-selector.entry.js.map +0 -1
  286. package/dist/stencil-library/index-CChkgM3J.js +0 -414
  287. package/dist/stencil-library/index-CChkgM3J.js.map +0 -1
  288. package/dist/stencil-library/index-ICfDNUMe.js +0 -4172
  289. package/dist/stencil-library/index-ICfDNUMe.js.map +0 -1
  290. package/dist/stencil-library/jpeg-Dd5nnHR5.js.map +0 -1
  291. package/dist/stencil-library/lerc-7W4E8EBs.js.map +0 -1
  292. package/dist/stencil-library/lzw--P4c0ZHH.js.map +0 -1
  293. package/dist/stencil-library/map-draw-Cx9WZoKH.js +0 -25567
  294. package/dist/stencil-library/map-draw-Cx9WZoKH.js.map +0 -1
  295. package/dist/stencil-library/map-draw.entry.esm.js.map +0 -1
  296. package/dist/stencil-library/map-draw.entry.js +0 -12
  297. package/dist/stencil-library/map-draw.entry.js.map +0 -1
  298. package/dist/stencil-library/map-selector.entry.esm.js.map +0 -1
  299. package/dist/stencil-library/map-selector.entry.js.map +0 -1
  300. package/dist/stencil-library/marker-icon.entry.js.map +0 -1
  301. package/dist/stencil-library/move-icon.entry.esm.js.map +0 -1
  302. package/dist/stencil-library/move-icon.entry.js.map +0 -1
  303. package/dist/stencil-library/octagon-minus-icon.entry.js.map +0 -1
  304. package/dist/stencil-library/packbits-X3R_utTs.js.map +0 -1
  305. package/dist/stencil-library/pako.esm-CPorU236.js +0 -6881
  306. package/dist/stencil-library/polygon-buttons.entry.js.map +0 -1
  307. package/dist/stencil-library/polygon-information.entry.js.map +0 -1
  308. package/dist/stencil-library/raw-BxukYehy.js +0 -20
  309. package/dist/stencil-library/raw-BxukYehy.js.map +0 -1
  310. package/dist/stencil-library/search-icon.entry.esm.js.map +0 -1
  311. package/dist/stencil-library/settings-icon.entry.esm.js.map +0 -1
  312. package/dist/stencil-library/settings-icon.entry.js.map +0 -1
  313. package/dist/stencil-library/settings-modal.entry.esm.js.map +0 -1
  314. package/dist/stencil-library/settings-modal.entry.js.map +0 -1
  315. package/dist/stencil-library/solar-expert.entry.esm.js.map +0 -1
  316. package/dist/stencil-library/solar-system-form.entry.esm.js.map +0 -1
  317. package/dist/stencil-library/solar-system-form.entry.js.map +0 -1
  318. package/dist/stencil-library/store-CcqrFuBK.js.map +0 -1
  319. package/dist/stencil-library/toast-notification.entry.js.map +0 -1
  320. package/dist/stencil-library/tool-box.entry.esm.js.map +0 -1
  321. package/dist/stencil-library/tool-box.entry.js.map +0 -1
  322. package/dist/stencil-library/tools-BNYKV5H5.js.map +0 -1
  323. package/dist/stencil-library/tutorial-component.entry.esm.js.map +0 -1
  324. package/dist/stencil-library/tutorial-component.entry.js.map +0 -1
  325. package/dist/stencil-library/undo-icon.entry.esm.js.map +0 -1
  326. package/dist/stencil-library/undo-icon.entry.js.map +0 -1
  327. package/dist/stencil-library/utils-BCUZxI9u.js.map +0 -1
  328. /package/dist/{stencil-library → esm}/app-globals-CX8V3eiN.js +0 -0
  329. /package/dist/{stencil-library → esm}/app-globals-CX8V3eiN.js.map +0 -0
@@ -1,46 +1,294 @@
1
1
 
2
2
  if (typeof global === "undefined") { var global = globalThis || window || self; }
3
- import { r as registerInstance, h } from './index-ICfDNUMe.js';
4
- import { b as DEFAULT_SOLAR_PANEL_TYPE } from './config-CWfV1nKn.js';
5
- import { g as getLanguageStrings, s as state } from './store-CcqrFuBK.js';
6
- import { d as distExports, H as HEAT_PUMP_CONSUMPTION } from './constants-hboFofU4.js';
3
+ import { p as proxyCustomElement, H, h } from './index.js';
4
+ import { g as getLanguageStrings, s as state } from './p-DfzSejIb.js';
7
5
 
8
- async function fetchSolarData(latitude, longitude, apiKey) {
9
- if (latitude === 0 || longitude === 0) {
10
- return null;
6
+ const SOLAR_RADIATION = [
7
+ 0,
8
+ 0,
9
+ 0,
10
+ 0,
11
+ 0,
12
+ 0,
13
+ 0,
14
+ 0.1,
15
+ 0.2,
16
+ 0.4,
17
+ 0.8,
18
+ 0.9,
19
+ 1,
20
+ 0.95,
21
+ 0.9,
22
+ 0.7,
23
+ 0.5,
24
+ 0.3,
25
+ 0.16,
26
+ 0.02,
27
+ 0,
28
+ 0,
29
+ 0,
30
+ 0,
31
+ ];
32
+ function getSolarRadiation(discountFactor) {
33
+ return SOLAR_RADIATION.map((value) => value * discountFactor);
34
+ }
35
+ const CONSUMPTION_PROFILES = {
36
+ mostly_at_home: [
37
+ 0.1,
38
+ 0.1,
39
+ 0.1,
40
+ 0.1,
41
+ 0.1,
42
+ 0.15,
43
+ 0.23,
44
+ 0.26,
45
+ 0.16,
46
+ 0.16,
47
+ 0.15,
48
+ 0.19,
49
+ 0.23,
50
+ 0.24,
51
+ 0.35,
52
+ 0.28,
53
+ 0.275,
54
+ 0.8,
55
+ 0.78,
56
+ 0.74,
57
+ 0.75,
58
+ 0.73,
59
+ 0.26,
60
+ 0.1,
61
+ ],
62
+ mostly_away: [
63
+ 0.1,
64
+ 0.1,
65
+ 0.1,
66
+ 0.1,
67
+ 0.1,
68
+ 0.15,
69
+ 0.29,
70
+ 0.32,
71
+ 0.25,
72
+ 0.15,
73
+ 0.12,
74
+ 0.14,
75
+ 0.15,
76
+ 0.12,
77
+ 0.16,
78
+ 0.21,
79
+ 0.285,
80
+ 1,
81
+ 0.81,
82
+ 0.77,
83
+ 0.79,
84
+ 0.73,
85
+ 0.26,
86
+ 0.1,
87
+ ],
88
+ };
89
+
90
+ const DEFAULT_GENERAL_SIMULATION_CONFIG = {
91
+ simulationYears: 25,
92
+ };
93
+
94
+ function generateElectricCarChargingHours(start, end) {
95
+ let hours = new Array(24).fill(false);
96
+ if (start < end) {
97
+ for (let i = start; i <= end; i++) {
98
+ hours[i] = true;
99
+ }
11
100
  }
12
- try {
13
- const args = {
14
- "location.latitude": latitude.toFixed(5),
15
- "location.longitude": longitude.toFixed(5),
16
- };
17
- const params = new URLSearchParams({
18
- ...args,
19
- key: apiKey,
20
- });
21
- const response = await fetch(`https://solar.googleapis.com/v1/buildingInsights:findClosest?${params}`);
22
- if (!response.ok) {
23
- const errorText = await response.text();
24
- throw new Error(`HTTP error! status: ${response.status}, body: ${errorText}`);
101
+ else {
102
+ for (let i = start; i <= 24; i++) {
103
+ hours[i] = true;
25
104
  }
26
- const contentType = response.headers.get("content-type");
27
- if (!contentType || !contentType.includes("application/json")) {
28
- const text = await response.text();
29
- console.error("Unexpected content type:", contentType, "Response:", text);
30
- return null;
105
+ for (let i = 0; i <= end; i++) {
106
+ hours[i] = true;
31
107
  }
32
- const rawData = await response.json();
33
- return rawData;
34
108
  }
35
- catch (error) {
36
- console.error("Error fetching solar data:", error);
37
- if (error instanceof TypeError &&
38
- error.message === "Failed to fetch") {
39
- throw new Error("Unable to connect to the solar data API.");
109
+ return hours;
110
+ }
111
+ function simulateDay(production, consumption, dailyConsumption, battery) {
112
+ let batteryCharge = 0;
113
+ let soldEnergy = 0;
114
+ let energyUsageOfProduction = 0;
115
+ for (let hour = 0; hour < production.length; hour++) {
116
+ const energyDifference = production[hour] - consumption[hour];
117
+ if (energyDifference > 0) {
118
+ energyUsageOfProduction += consumption[hour];
119
+ if (batteryCharge < battery &&
120
+ batteryCharge + energyDifference <= battery) {
121
+ batteryCharge = batteryCharge + energyDifference;
122
+ }
123
+ else if (batteryCharge < battery) {
124
+ const batteryDifference = battery - batteryCharge;
125
+ batteryCharge = battery;
126
+ soldEnergy += energyDifference - batteryDifference;
127
+ }
128
+ else {
129
+ soldEnergy += energyDifference;
130
+ }
40
131
  }
41
- throw error;
132
+ else {
133
+ if (batteryCharge > 0) {
134
+ if (batteryCharge >= -energyDifference) {
135
+ batteryCharge += energyDifference;
136
+ energyUsageOfProduction += consumption[hour];
137
+ }
138
+ else {
139
+ energyUsageOfProduction += production[hour] + batteryCharge;
140
+ batteryCharge = 0;
141
+ }
142
+ }
143
+ else {
144
+ energyUsageOfProduction += production[hour];
145
+ }
146
+ }
147
+ }
148
+ if (batteryCharge > 0) {
149
+ soldEnergy += batteryCharge;
150
+ }
151
+ const autonomy = energyUsageOfProduction / dailyConsumption;
152
+ return {
153
+ autonomy: autonomy > 1 ? 1 : autonomy,
154
+ soldEnergy,
155
+ energyUsageOfProduction,
156
+ };
157
+ }
158
+ function simulate(config) {
159
+ const generalConfig = {
160
+ ...DEFAULT_GENERAL_SIMULATION_CONFIG,
161
+ ...config.general,
162
+ };
163
+ const consumption = CONSUMPTION_PROFILES[config.householdConsumption.consumptionProfile];
164
+ const norm = consumption.reduce((acc, curr) => acc + curr, 0);
165
+ let additionalConsumption = 0;
166
+ if (config.heatPump) {
167
+ additionalConsumption =
168
+ (config.heatPump.m2 || 0) * config.heatPump.consumptionPerM2 || 0;
169
+ }
170
+ let electricCarConsumption = 0;
171
+ let electricCarNorm = 1;
172
+ let electricCarChargingHours = consumption.map((_) => false);
173
+ if (config.electricCar) {
174
+ electricCarChargingHours = config.electricCar.chargingHours;
175
+ const dailyCarUsage = config.electricCar.averageKilometersPerDay / 100 *
176
+ config.electricCar.consumptionkWhPer100km;
177
+ electricCarConsumption = Math.min(dailyCarUsage, config.electricCar.batteryKWh);
178
+ electricCarNorm = config.electricCar.chargingHours.reduce((acc, curr) => acc + (curr ? 1 : 0), 0);
179
+ if (electricCarNorm === 0) {
180
+ electricCarNorm = 1;
181
+ }
182
+ }
183
+ let systemSize = 0;
184
+ if (config.solarSystems) {
185
+ systemSize = Object.values(config.solarSystems).reduce((acc, curr) => {
186
+ return acc + curr.numberOfPanels * curr.panelType.kWattPeak;
187
+ }, 0);
188
+ }
189
+ else if (config.solarSystem) {
190
+ console.warn("solarSystem is deprecated, use solarSystems instead");
191
+ systemSize = config.solarSystem.numberOfPanels *
192
+ config.solarSystem.panelType.kWattPeak;
193
+ }
194
+ else {
195
+ throw new Error("No solar system found");
196
+ }
197
+ const summerProduction = getSolarRadiation(config.solarRadiation.summerFactor * systemSize);
198
+ const winterProduction = getSolarRadiation(config.solarRadiation.winterFactor * systemSize);
199
+ const summerConsumptionWholeDay = config.householdConsumption.averageConsumption *
200
+ config.householdConsumption.summerConsumptionFactor +
201
+ additionalConsumption *
202
+ config.householdConsumption.summerConsumptionFactor;
203
+ const summerConsumptionDaily = consumption.map((c, i) => c / norm * summerConsumptionWholeDay +
204
+ electricCarConsumption / electricCarNorm *
205
+ (electricCarChargingHours[i] ? 1 : 0));
206
+ const winterConsumptionWholeDay = config.householdConsumption.averageConsumption *
207
+ config.householdConsumption.winterConsumptionFactor +
208
+ additionalConsumption *
209
+ config.householdConsumption.winterConsumptionFactor;
210
+ const winterConsumptionDaily = consumption.map((c, i) => c / norm * winterConsumptionWholeDay +
211
+ electricCarConsumption / electricCarNorm *
212
+ (electricCarChargingHours[i] ? 1 : 0));
213
+ const summerDay = simulateDay(summerProduction, summerConsumptionDaily, summerConsumptionWholeDay + electricCarConsumption, config.batteryKWh);
214
+ const winterDay = simulateDay(winterProduction, winterConsumptionDaily, winterConsumptionWholeDay + electricCarConsumption, config.batteryKWh);
215
+ let savedCostsByYear = [];
216
+ const soldEnergy = (summerDay.soldEnergy + winterDay.soldEnergy) / 2;
217
+ const ownConsumption = (summerDay.energyUsageOfProduction +
218
+ winterDay.energyUsageOfProduction) / 2;
219
+ let energyPrice = config.electricityPrice.purchase;
220
+ for (let i = 0; i < generalConfig.simulationYears; i++) {
221
+ const savedCostsThisYear = ownConsumption * energyPrice * 365;
222
+ savedCostsByYear.push(savedCostsThisYear);
223
+ energyPrice = (1 + config.electricityPrice.increase) * energyPrice;
42
224
  }
225
+ const totalEnergyProduction = (summerProduction.reduce((acc, curr) => acc + curr, 0) +
226
+ winterProduction.reduce((acc, curr) => acc + curr, 0)) / 2;
227
+ return {
228
+ autonomy: (summerDay.autonomy + winterDay.autonomy) / 2,
229
+ compensationPerDay: soldEnergy * config.electricityPrice.sell,
230
+ byYearSavedCosts: savedCostsByYear,
231
+ totalEnergyConsumptionDay: (summerConsumptionWholeDay + winterConsumptionWholeDay) / 2 +
232
+ electricCarConsumption,
233
+ totalEnergyProduction,
234
+ };
43
235
  }
236
+
237
+ const DEFAULT_SOLAR_EXPERT_CONFIG = {
238
+ openRoofColor: "#d6eeff",
239
+ closedRoofColor: "#ffffff",
240
+ openObstructionColor: "#f57242",
241
+ closedObstructionColor: "rgba(255, 132, 107, 0.8)",
242
+ roofPolygonFillColor: "rgba(92, 187, 255, 0.5)",
243
+ obstructionPolygonFillColor: "rgba(255, 132, 107, 0.5)",
244
+ roofPolygonHoverFillColor: "rgba(92, 187, 255, 0.8)",
245
+ obstructionPolygonHoverFillColor: "rgba(255, 132, 107, 0.8)",
246
+ roofPolygonSelectedFillColor: "rgba(92, 187, 255, 0.7)",
247
+ obstructionPolygonSelectedFillColor: "rgba(255, 132, 107, 0.7)",
248
+ highlightColor: "rgba(0, 89, 255, 1)",
249
+ };
250
+ const DEFAULT_SOLAR_PANEL_TYPE = {
251
+ widthMeters: 1.134,
252
+ heightMeters: 1.762,
253
+ kWattPeak: 0.455,
254
+ efficiency: 0.224,
255
+ price: 77.68,
256
+ };
257
+ const DEFAULT_COLOR_SCHEME = {
258
+ primary: "hsl(41 51% 90%)",
259
+ primaryForeground: "hsl(0 0% 0%)",
260
+ secondary: "hsl(28 100% 8%)",
261
+ secondaryForeground: "hsl(0 0% 100%)",
262
+ tertiary: "hsl(28 100% 29%)",
263
+ tertiaryForeground: "hsl(0 0% 100%)",
264
+ muted: "hsl(0 0% 100%)",
265
+ mutedForeground: "hsl(0 0% 0%)",
266
+ error: "hsl(0 100% 50%)",
267
+ errorForeground: "hsl(0 0% 100%)",
268
+ // Surface colors
269
+ surface: "hsl(0 0% 88%)", // gray-200
270
+ surfaceHover: "hsl(0 0% 82%)", // gray-300
271
+ surfaceActive: "hsl(0 0% 64%)", // gray-400
272
+ // Text colors
273
+ textMuted: "hsl(0 0% 45%)", // gray-600
274
+ textSecondary: "hsl(0 0% 55%)", // gray-500
275
+ textPlaceholder: "hsl(0 0% 73%)", // gray-400
276
+ // Border colors
277
+ border: "hsl(0 0% 82%)", // gray-300
278
+ borderLight: "hsl(0 0% 93%)", // gray-200
279
+ // Status colors
280
+ success: "hsl(142 76% 36%)", // green-600
281
+ info: "hsl(221 83% 53%)", // blue-500
282
+ // Interactive colors
283
+ hover: "hsl(0 0% 88%)", // gray-200
284
+ hoverDark: "hsl(28 100% 8%)", // darker secondary for hover
285
+ overlay: "rgba(0, 0, 0, 0.24)", // #0000003c
286
+ tooltip: "hsl(0 0% 13%)", // gray-800
287
+ };
288
+
289
+ const BORDER_INSET = 0;
290
+ const HEAT_PUMP_CONSUMPTION = 46; // kWh per m² per year
291
+
44
292
  async function sendLeadToNexvoro(leadData) {
45
293
  try {
46
294
  const extradata = {
@@ -101,14 +349,16 @@ async function sendLeadToNexvoro(leadData) {
101
349
 
102
350
  const outputCss = "/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */\n@layer properties;\n@layer theme, base, components, utilities;\n@layer theme {\n :root, :host {\n --font-sans: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-100: oklch(93.6% 0.032 17.717);\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-red-500: oklch(63.7% 0.237 25.331);\n --color-red-700: oklch(50.5% 0.213 27.518);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --container-md: 28rem;\n --container-2xl: 42rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --radius-lg: 0.5rem;\n --radius-4xl: 2rem;\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n --animate-spin: spin 1s linear infinite;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-mono-font-family: var(--font-mono);\n --color-primary: hsl(41 51% 90%);\n --color-primary-foreground: hsl(0 0% 0%);\n --color-secondary: hsl(28 100% 8%);\n --color-secondary-foreground: hsl(0 0% 100%);\n --color-tertiary: hsl(28 100% 29%);\n --color-tertiary-foreground: hsl(0 0% 100%);\n --color-muted: hsl(0 0% 100%);\n --color-muted-foreground: hsl(0 0% 0%);\n --color-error: hsl(0 100% 50%);\n --color-error-foreground: hsl(0 0% 100%);\n --color-surface: hsl(0 0% 88%);\n --color-surface-hover: hsl(0 0% 82%);\n --color-surface-active: hsl(0 0% 64%);\n --color-text-muted: hsl(0 0% 45%);\n --color-text-secondary: hsl(0 0% 55%);\n --color-text-placeholder: hsl(0 0% 73%);\n --color-border: hsl(0 0% 82%);\n --color-border-light: hsl(0 0% 93%);\n --color-success: hsl(142 76% 36%);\n --color-info: hsl(221 83% 53%);\n --color-hover: hsl(0 0% 88%);\n --color-hover-dark: hsl(28 100% 8%);\n --color-overlay: rgba(0, 0, 0, 0.24);\n --color-tooltip: hsl(0 0% 13%);\n }\n}\n@layer base {\n *, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\n html, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\n hr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\n abbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\n h1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b, strong {\n font-weight: bolder;\n }\n code, kbd, samp, pre {\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n sub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\n sub {\n bottom: -0.25em;\n }\n sup {\n top: -0.5em;\n }\n table {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n :-moz-focusring {\n outline: auto;\n }\n progress {\n vertical-align: baseline;\n }\n summary {\n display: list-item;\n }\n ol, ul, menu {\n list-style: none;\n }\n img, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\n img, video {\n max-width: 100%;\n height: auto;\n }\n button, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n :where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n :where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n ::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n ::-webkit-datetime-edit {\n display: inline-flex;\n }\n ::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n}\n@layer utilities {\n .pointer-events-none {\n pointer-events: none;\n }\n .absolute {\n position: absolute;\n }\n .fixed {\n position: fixed;\n }\n .relative {\n position: relative;\n }\n .inset-0 {\n inset: calc(var(--spacing) * 0);\n }\n .top-0 {\n top: calc(var(--spacing) * 0);\n }\n .bottom-4 {\n bottom: calc(var(--spacing) * 4);\n }\n .left-0 {\n left: calc(var(--spacing) * 0);\n }\n .left-1\\/2 {\n left: calc(1/2 * 100%);\n }\n .left-3 {\n left: calc(var(--spacing) * 3);\n }\n .z-10 {\n z-index: 10;\n }\n .z-20 {\n z-index: 20;\n }\n .z-50 {\n z-index: 50;\n }\n .container {\n width: 100%;\n @media (width >= 40rem) {\n max-width: 40rem;\n }\n @media (width >= 48rem) {\n max-width: 48rem;\n }\n @media (width >= 64rem) {\n max-width: 64rem;\n }\n @media (width >= 80rem) {\n max-width: 80rem;\n }\n @media (width >= 96rem) {\n max-width: 96rem;\n }\n }\n .m-auto {\n margin: auto;\n }\n .mt-1 {\n margin-top: calc(var(--spacing) * 1);\n }\n .mt-4 {\n margin-top: calc(var(--spacing) * 4);\n }\n .mt-6 {\n margin-top: calc(var(--spacing) * 6);\n }\n .mb-1 {\n margin-bottom: calc(var(--spacing) * 1);\n }\n .mb-4 {\n margin-bottom: calc(var(--spacing) * 4);\n }\n .mb-6 {\n margin-bottom: calc(var(--spacing) * 6);\n }\n .block {\n display: block;\n }\n .flex {\n display: flex;\n }\n .grid {\n display: grid;\n }\n .inline {\n display: inline;\n }\n .inline-block {\n display: inline-block;\n }\n .h-4 {\n height: calc(var(--spacing) * 4);\n }\n .h-16 {\n height: calc(var(--spacing) * 16);\n }\n .h-48 {\n height: calc(var(--spacing) * 48);\n }\n .h-64 {\n height: calc(var(--spacing) * 64);\n }\n .h-\\[400px\\] {\n height: 400px;\n }\n .h-full {\n height: 100%;\n }\n .max-h-full {\n max-height: 100%;\n }\n .w-4 {\n width: calc(var(--spacing) * 4);\n }\n .w-16 {\n width: calc(var(--spacing) * 16);\n }\n .w-20 {\n width: calc(var(--spacing) * 20);\n }\n .w-64 {\n width: calc(var(--spacing) * 64);\n }\n .w-full {\n width: 100%;\n }\n .max-w-2xl {\n max-width: var(--container-2xl);\n }\n .max-w-md {\n max-width: var(--container-md);\n }\n .flex-1 {\n flex: 1;\n }\n .-translate-x-1\\/2 {\n --tw-translate-x: calc(calc(1/2 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n .translate-y-0 {\n --tw-translate-y: calc(var(--spacing) * 0);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n .translate-y-2 {\n --tw-translate-y: calc(var(--spacing) * 2);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n .scale-95 {\n --tw-scale-x: 95%;\n --tw-scale-y: 95%;\n --tw-scale-z: 95%;\n scale: var(--tw-scale-x) var(--tw-scale-y);\n }\n .scale-100 {\n --tw-scale-x: 100%;\n --tw-scale-y: 100%;\n --tw-scale-z: 100%;\n scale: var(--tw-scale-x) var(--tw-scale-y);\n }\n .transform {\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n .animate-spin {\n animation: var(--animate-spin);\n }\n .cursor-not-allowed {\n cursor: not-allowed;\n }\n .resize {\n resize: both;\n }\n .appearance-none {\n appearance: none;\n }\n .grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n }\n .grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n .grid-rows-2 {\n grid-template-rows: repeat(2, minmax(0, 1fr));\n }\n .flex-col {\n flex-direction: column;\n }\n .flex-row {\n flex-direction: row;\n }\n .flex-wrap {\n flex-wrap: wrap;\n }\n .items-center {\n align-items: center;\n }\n .items-start {\n align-items: flex-start;\n }\n .items-stretch {\n align-items: stretch;\n }\n .justify-between {\n justify-content: space-between;\n }\n .justify-center {\n justify-content: center;\n }\n .justify-end {\n justify-content: flex-end;\n }\n .justify-start {\n justify-content: flex-start;\n }\n .gap-0 {\n gap: calc(var(--spacing) * 0);\n }\n .gap-1 {\n gap: calc(var(--spacing) * 1);\n }\n .gap-2 {\n gap: calc(var(--spacing) * 2);\n }\n .gap-4 {\n gap: calc(var(--spacing) * 4);\n }\n .space-y-3 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n .space-y-4 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n .space-y-6 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n .overflow-hidden {\n overflow: hidden;\n }\n .overflow-y-auto {\n overflow-y: auto;\n }\n .rounded {\n border-radius: 0.25rem;\n }\n .rounded-4xl {\n border-radius: var(--radius-4xl);\n }\n .rounded-full {\n border-radius: calc(infinity * 1px);\n }\n .rounded-lg {\n border-radius: var(--radius-lg);\n }\n .border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n .border-2 {\n border-style: var(--tw-border-style);\n border-width: 2px;\n }\n .border-t-2 {\n border-top-style: var(--tw-border-style);\n border-top-width: 2px;\n }\n .border-b-2 {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 2px;\n }\n .border-border {\n border-color: var(--color-border);\n }\n .border-current {\n border-color: currentcolor;\n }\n .border-error\\/20 {\n border-color: color-mix(in srgb, hsl(0 100% 50%) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-error) 20%, transparent);\n }\n }\n .border-info\\/20 {\n border-color: color-mix(in srgb, hsl(221 83% 53%) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-info) 20%, transparent);\n }\n }\n .border-red-300 {\n border-color: var(--color-red-300);\n }\n .border-secondary {\n border-color: var(--color-secondary);\n }\n .border-success\\/20 {\n border-color: color-mix(in srgb, hsl(142 76% 36%) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-success) 20%, transparent);\n }\n }\n .border-t-transparent {\n border-top-color: transparent;\n }\n .bg-black {\n background-color: var(--color-black);\n }\n .bg-error\\/10 {\n background-color: color-mix(in srgb, hsl(0 100% 50%) 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-error) 10%, transparent);\n }\n }\n .bg-error\\/90 {\n background-color: color-mix(in srgb, hsl(0 100% 50%) 90%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-error) 90%, transparent);\n }\n }\n .bg-info\\/90 {\n background-color: color-mix(in srgb, hsl(221 83% 53%) 90%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-info) 90%, transparent);\n }\n }\n .bg-muted {\n background-color: var(--color-muted);\n }\n .bg-overlay {\n background-color: var(--color-overlay);\n }\n .bg-primary {\n background-color: var(--color-primary);\n }\n .bg-red-100 {\n background-color: var(--color-red-100);\n }\n .bg-secondary {\n background-color: var(--color-secondary);\n }\n .bg-success\\/10 {\n background-color: color-mix(in srgb, hsl(142 76% 36%) 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-success) 10%, transparent);\n }\n }\n .bg-success\\/90 {\n background-color: color-mix(in srgb, hsl(142 76% 36%) 90%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-success) 90%, transparent);\n }\n }\n .bg-surface {\n background-color: var(--color-surface);\n }\n .bg-tertiary {\n background-color: var(--color-tertiary);\n }\n .bg-transparent {\n background-color: transparent;\n }\n .object-contain {\n object-fit: contain;\n }\n .p-2 {\n padding: calc(var(--spacing) * 2);\n }\n .p-3 {\n padding: calc(var(--spacing) * 3);\n }\n .p-4 {\n padding: calc(var(--spacing) * 4);\n }\n .p-6 {\n padding: calc(var(--spacing) * 6);\n }\n .px-3 {\n padding-inline: calc(var(--spacing) * 3);\n }\n .px-4 {\n padding-inline: calc(var(--spacing) * 4);\n }\n .px-6 {\n padding-inline: calc(var(--spacing) * 6);\n }\n .py-1 {\n padding-block: calc(var(--spacing) * 1);\n }\n .py-2 {\n padding-block: calc(var(--spacing) * 2);\n }\n .py-3 {\n padding-block: calc(var(--spacing) * 3);\n }\n .pt-3 {\n padding-top: calc(var(--spacing) * 3);\n }\n .pt-4 {\n padding-top: calc(var(--spacing) * 4);\n }\n .pt-7 {\n padding-top: calc(var(--spacing) * 7);\n }\n .pr-3 {\n padding-right: calc(var(--spacing) * 3);\n }\n .pr-4 {\n padding-right: calc(var(--spacing) * 4);\n }\n .pb-2 {\n padding-bottom: calc(var(--spacing) * 2);\n }\n .pb-3 {\n padding-bottom: calc(var(--spacing) * 3);\n }\n .pb-4 {\n padding-bottom: calc(var(--spacing) * 4);\n }\n .pl-3 {\n padding-left: calc(var(--spacing) * 3);\n }\n .pl-4 {\n padding-left: calc(var(--spacing) * 4);\n }\n .pl-10 {\n padding-left: calc(var(--spacing) * 10);\n }\n .text-center {\n text-align: center;\n }\n .text-right {\n text-align: right;\n }\n .text-2xl {\n font-size: var(--text-2xl);\n line-height: var(--tw-leading, var(--text-2xl--line-height));\n }\n .text-lg {\n font-size: var(--text-lg);\n line-height: var(--tw-leading, var(--text-lg--line-height));\n }\n .text-sm {\n font-size: var(--text-sm);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n .text-xl {\n font-size: var(--text-xl);\n line-height: var(--tw-leading, var(--text-xl--line-height));\n }\n .text-xs {\n font-size: var(--text-xs);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n .font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: var(--font-weight-bold);\n }\n .font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: var(--font-weight-medium);\n }\n .font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: var(--font-weight-semibold);\n }\n .text-error {\n color: var(--color-error);\n }\n .text-error-foreground {\n color: var(--color-error-foreground);\n }\n .text-muted {\n color: var(--color-muted);\n }\n .text-muted-foreground {\n color: var(--color-muted-foreground);\n }\n .text-primary-foreground {\n color: var(--color-primary-foreground);\n }\n .text-red-500 {\n color: var(--color-red-500);\n }\n .text-red-700 {\n color: var(--color-red-700);\n }\n .text-secondary {\n color: var(--color-secondary);\n }\n .text-success {\n color: var(--color-success);\n }\n .text-text-muted {\n color: var(--color-text-muted);\n }\n .text-text-secondary {\n color: var(--color-text-secondary);\n }\n .text-white {\n color: var(--color-white);\n }\n .accent-tertiary {\n accent-color: var(--color-tertiary);\n }\n .opacity-0 {\n opacity: 0%;\n }\n .opacity-100 {\n opacity: 100%;\n }\n .shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .shadow-lg {\n --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n .transition-all {\n transition-property: all;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n .transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n .duration-200 {\n --tw-duration: 200ms;\n transition-duration: 200ms;\n }\n .duration-300 {\n --tw-duration: 300ms;\n transition-duration: 300ms;\n }\n .ease-in-out {\n --tw-ease: var(--ease-in-out);\n transition-timing-function: var(--ease-in-out);\n }\n .hover\\:bg-hover {\n &:hover {\n @media (hover: hover) {\n background-color: var(--color-hover);\n }\n }\n }\n .hover\\:bg-muted {\n &:hover {\n @media (hover: hover) {\n background-color: var(--color-muted);\n }\n }\n }\n .hover\\:bg-overlay {\n &:hover {\n @media (hover: hover) {\n background-color: var(--color-overlay);\n }\n }\n }\n .hover\\:bg-secondary\\/80 {\n &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, hsl(28 100% 8%) 80%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-secondary) 80%, transparent);\n }\n }\n }\n }\n .hover\\:bg-surface-hover {\n &:hover {\n @media (hover: hover) {\n background-color: var(--color-surface-hover);\n }\n }\n }\n .hover\\:bg-tertiary {\n &:hover {\n @media (hover: hover) {\n background-color: var(--color-tertiary);\n }\n }\n }\n .hover\\:bg-tertiary\\/80 {\n &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, hsl(28 100% 29%) 80%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-tertiary) 80%, transparent);\n }\n }\n }\n }\n .hover\\:bg-text-secondary {\n &:hover {\n @media (hover: hover) {\n background-color: var(--color-text-secondary);\n }\n }\n }\n .focus\\:border-2 {\n &:focus {\n border-style: var(--tw-border-style);\n border-width: 2px;\n }\n }\n .focus\\:border-secondary {\n &:focus {\n border-color: var(--color-secondary);\n }\n }\n .focus\\:border-transparent {\n &:focus {\n border-color: transparent;\n }\n }\n .focus\\:ring-2 {\n &:focus {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n .focus\\:ring-secondary {\n &:focus {\n --tw-ring-color: var(--color-secondary);\n }\n }\n .focus\\:ring-tertiary {\n &:focus {\n --tw-ring-color: var(--color-tertiary);\n }\n }\n .focus\\:ring-offset-0 {\n &:focus {\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n }\n }\n .focus\\:outline-none {\n &:focus {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n .sm\\:mt-0 {\n @media (width >= 40rem) {\n margin-top: calc(var(--spacing) * 0);\n }\n }\n .sm\\:flex-3 {\n @media (width >= 40rem) {\n flex: 3;\n }\n }\n .sm\\:flex-row {\n @media (width >= 40rem) {\n flex-direction: row;\n }\n }\n .sm\\:items-center {\n @media (width >= 40rem) {\n align-items: center;\n }\n }\n .sm\\:gap-4 {\n @media (width >= 40rem) {\n gap: calc(var(--spacing) * 4);\n }\n }\n .md\\:grid-cols-2 {\n @media (width >= 48rem) {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n }\n .md\\:pl-2 {\n @media (width >= 48rem) {\n padding-left: calc(var(--spacing) * 2);\n }\n }\n .\\[\\&\\:\\:-webkit-slider-runnable-track\\]\\:rounded-full {\n &::-webkit-slider-runnable-track {\n border-radius: calc(infinity * 1px);\n }\n }\n .\\[\\&\\:\\:-webkit-slider-runnable-track\\]\\:bg-black\\/25 {\n &::-webkit-slider-runnable-track {\n background-color: color-mix(in srgb, #000 25%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-black) 25%, transparent);\n }\n }\n }\n .\\[\\&\\:\\:-webkit-slider-thumb\\]\\:h-\\[10px\\] {\n &::-webkit-slider-thumb {\n height: 10px;\n }\n }\n .\\[\\&\\:\\:-webkit-slider-thumb\\]\\:w-\\[10px\\] {\n &::-webkit-slider-thumb {\n width: 10px;\n }\n }\n .\\[\\&\\:\\:-webkit-slider-thumb\\]\\:appearance-none {\n &::-webkit-slider-thumb {\n appearance: none;\n }\n }\n .\\[\\&\\:\\:-webkit-slider-thumb\\]\\:rounded-full {\n &::-webkit-slider-thumb {\n border-radius: calc(infinity * 1px);\n }\n }\n .\\[\\&\\:\\:-webkit-slider-thumb\\]\\:bg-muted {\n &::-webkit-slider-thumb {\n background-color: var(--color-muted);\n }\n }\n}\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-scale-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-space-y-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-duration {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ease {\n syntax: \"*\";\n inherits: false;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@layer properties {\n @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-scale-z: 1;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-space-y-reverse: 0;\n --tw-border-style: solid;\n --tw-font-weight: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-duration: initial;\n --tw-ease: initial;\n }\n }\n}\n";
103
351
 
104
- const SolarSystemForm = class {
105
- constructor(hostRef) {
106
- registerInstance(this, hostRef);
352
+ const SolarSystemForm = /*@__PURE__*/ proxyCustomElement(class SolarSystemForm extends H {
353
+ constructor() {
354
+ super();
355
+ this.__registerHost();
107
356
  }
108
357
  systemConfigs = {};
109
358
  polygons = [];
110
359
  roofCanvas;
111
360
  polygonCanvas;
361
+ pixelInMeters;
112
362
  householdConsumption = 4500;
113
363
  consumptionProfile = "mostly_at_home";
114
364
  electricityPrice = 0.3;
@@ -210,12 +460,12 @@ const SolarSystemForm = class {
210
460
  consumptionkWhPer100km: 20,
211
461
  batteryKWh: 80,
212
462
  chargingHours: this.electricCarChargingTime === "day"
213
- ? distExports.generateElectricCarChargingHours(6, 18)
214
- : distExports.generateElectricCarChargingHours(18, 6),
463
+ ? generateElectricCarChargingHours(6, 18)
464
+ : generateElectricCarChargingHours(18, 6),
215
465
  }
216
466
  : undefined,
217
467
  };
218
- const result = distExports.simulate(simulationConfig);
468
+ const result = simulate(simulationConfig);
219
469
  this.compensation20Years = result.compensationPerDay * 365 * 20;
220
470
  this.savedCosts20Years = result.byYearSavedCosts.reduce((acc, curr) => acc + curr, 0) + this.compensation20Years;
221
471
  this.costSavings = result.byYearSavedCosts[0];
@@ -304,6 +554,7 @@ const SolarSystemForm = class {
304
554
  images: {
305
555
  roof: this.roofCanvas.toDataURL(),
306
556
  polygon: this.polygonCanvas.toDataURL(),
557
+ pixelInMeters: this.pixelInMeters,
307
558
  },
308
559
  results: {
309
560
  autonomy: this.autonomy,
@@ -345,13 +596,13 @@ const SolarSystemForm = class {
345
596
  // Reusable style objects
346
597
  const borderStyle = { border: "1px solid var(--color-border)" };
347
598
  const errorBorderStyle = { border: "1px solid var(--color-error)" };
348
- return (h("div", { key: 'b3aac8c415b6f69f2853118cabc74601022d030b', class: "flex flex-col justify-center items-center w-full h-full pt-4" // style={{
599
+ return (h("div", { key: '42867ab1fc1201f981ee3c96a138ff5d999740fc', class: "flex flex-col justify-center items-center w-full h-full pt-4" // style={{
349
600
  ,
350
601
  // display: (Object.keys(this.systemConfigs).length === 0)
351
602
  // ? "none"
352
603
  // : "flex",
353
604
  // }}
354
- id: "solar-system-form" }, h("h1", { key: 'bc5cdebf33d124d8836da4e1088bba4450c816cd', class: "text-2xl font-bold text-secondary mb-4 w-full" }, t.solarSystemForm.title), h("div", { key: '3ab1cec7ed4bd186ba78f49c21917246c630df61', class: "w-full bg-primary rounded-4xl space-y-6" }, h("div", { key: 'c1a2dd948a840ff98d112d129317e5553f530147', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '594a62add2fd8c6288bba7daa6a012756c1d4a10', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.systemInformation), h("div", { key: '5ac796f80e17307ca0fc3259e62b372e2fa12cc4', class: "flex flex-col sm:flex-row gap-4" }, h("div", { key: '9a4bfbceb41b31404fc9e38c69e4b4177a24ec44', class: "flex-1 bg-muted rounded-4xl p-4 space-y-3" }, h("div", { key: '6fc5982c6e841f73054c144a258648b54eb82498', class: "flex items-center justify-between" }, h("label", { key: '894e19c5be12317818b6637d5f250987d8cd621e', class: "text-sm font-medium text-text-muted" }, t.solarSystemForm.numberOfPanels), !this.isIOS()
605
+ id: "solar-system-form" }, h("h1", { key: 'ee1db435412a97d54333c36fc0c1a6fab5fe597f', class: "text-2xl font-bold text-secondary mb-4 w-full" }, t.solarSystemForm.title), h("div", { key: '27dcc67909fcbafd2093792e2ee822d233a23421', class: "w-full bg-primary rounded-4xl space-y-6" }, h("div", { key: '93ae54e79a272a01acdcfe21f1e0983811669ca6', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '2998dbde483a512c28d6b02ace04944eda49ff7c', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.systemInformation), h("div", { key: 'a169b4bdfd3c0b6c175971cfa119c48bdde6ff9d', class: "flex flex-col sm:flex-row gap-4" }, h("div", { key: '72a5c0c40117ddee1d14808898703869e34afb23', class: "flex-1 bg-muted rounded-4xl p-4 space-y-3" }, h("div", { key: '286c9346d417f9325aeb4653a428fc527317f1f2', class: "flex items-center justify-between" }, h("label", { key: 'cd78273dbacea60dfa7d3cd52fd61709c728c179', class: "text-sm font-medium text-text-muted" }, t.solarSystemForm.numberOfPanels), !this.isIOS()
355
606
  ? (h("input", { type: "number", class: "w-20 px-3 py-1 rounded-full bg-muted text-muted-foreground text-right", value: this.numberOfPanels, readOnly: true }))
356
607
  : (h("input", { type: "number", min: "1", max: this.maxPanels, class: "w-20 px-3 py-1 rounded-full focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground text-center", style: borderStyle, value: this.numberOfPanels, onInput: (e) => {
357
608
  const value = parseInt(e.target
@@ -363,37 +614,37 @@ const SolarSystemForm = class {
363
614
  value;
364
615
  this.recalculate();
365
616
  }
366
- } }))), !this.isIOS() && (h("input", { key: '449fb7456001a4a4535cca861d2f6cb5e3524207', type: "range", min: "1", max: this.maxPanels, step: "1", class: "input-slider w-full custom-range appearance-none rounded-full bg-transparent [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:bg-black/25 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:h-[10px] [&::-webkit-slider-thumb]:w-[10px] [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-muted", value: this.numberOfPanels, onInput: (e) => {
617
+ } }))), !this.isIOS() && (h("input", { key: 'db21c520b3151ab4f766bd99092a36707fad3922', type: "range", min: "1", max: this.maxPanels, step: "1", class: "input-slider w-full custom-range appearance-none rounded-full bg-transparent [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:bg-black/25 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:h-[10px] [&::-webkit-slider-thumb]:w-[10px] [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-muted", value: this.numberOfPanels, onInput: (e) => {
367
618
  this.numberOfPanels = parseInt(e.target
368
619
  .value);
369
620
  if (isNaN(this.numberOfPanels)) {
370
621
  this.numberOfPanels = 0;
371
622
  }
372
623
  this.recalculate();
373
- } }))), h("div", { key: '170b71239b4ad1a31a60b07ad5bbbdbe3269b32a', class: "flex-1 bg-muted rounded-4xl p-4" }, h("div", { key: '23fb2ae75eea851bf70d0d45bd6a14ad0326337f', class: "flex items-center justify-between" }, h("label", { key: '22612c4214b995fa656d6cf12e8c45906fc66f5c', class: "text-sm font-medium text-text-muted" }, t.solarSystemForm.panelPeakPower), h("span", { key: '4b05f3ca41f9956242be5426ab1a99da3a377919', class: "text-text-muted" }, this.panelPeakPower.toFixed(2), " kW")), h("div", { key: 'ffdff42649f42580a90379f59c9fcc12377871ac', class: "flex items-center justify-between mt-4" }, h("span", { key: '328257ed6094505f7382fa05dea0d5b311a01c39', class: "text-sm font-medium text-text-muted" }, t.solarSystemForm.totalSystemPeakPower), h("span", { key: '72a1d3242113d6abf88a34e804c1f1b7de4de642', class: "font-bold text-text-muted" }, (DEFAULT_SOLAR_PANEL_TYPE.kWattPeak *
374
- this.numberOfPanels).toFixed(1), " kWp"))))), h("div", { key: '5a75a286d0cf236a32486842bbf42630b063338a', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '2ea2a85bd3ea2699371ad55bc2c307c12c9422fe', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.householdConsumptionTitle), h("div", { key: '5a0806013e7772a3999fb8c33e276d28e6433570', class: "grid grid-rows-2 gap-0" }, h("div", { key: 'df6798dad3f0db54eefb9fe725fdd5dc20ab0148', class: "grid grid-cols-2 gap-4" }, h("label", { key: '08c04771886ab1ed632b2d74414fc696d5c36d48', class: "block text-sm font-medium text-text-muted" }, t.solarSystemForm.annualConsumption), h("label", { key: '5f0f6fa2b92378fc99ca31438132e7b5fb384c5a', class: "block text-sm font-medium text-text-muted" }, t.solarSystemForm.consumptionProfileTitle)), h("div", { key: 'faf1efc7063c7dad129ee51be3942577d4eba3d2', class: "grid grid-cols-2 gap-4" }, h("input", { key: '39020b4fd4aa42cb60ce2ba4074daa6eff49317a', type: "number", step: "100", min: "0", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground", style: borderStyle, value: this.householdConsumption, onInput: (e) => {
624
+ } }))), h("div", { key: 'fed7b9efc92d01c73a34da7dfa3663d801f40ebb', class: "flex-1 bg-muted rounded-4xl p-4" }, h("div", { key: '97cf3fef6db644774469fbca6b7681c5865b54d2', class: "flex items-center justify-between" }, h("label", { key: '7471aeacdeddfe2951b474bb0006bc018b52528c', class: "text-sm font-medium text-text-muted" }, t.solarSystemForm.panelPeakPower), h("span", { key: 'cad4639ae980b4228723c78f0b0bbbc27d9322c0', class: "text-text-muted" }, this.panelPeakPower.toFixed(2), " kW")), h("div", { key: 'b344c0c87bbd7e016681034434a36982759f4107', class: "flex items-center justify-between mt-4" }, h("span", { key: '8619d3662fb929a2b9f185f556ded70de0210f70', class: "text-sm font-medium text-text-muted" }, t.solarSystemForm.totalSystemPeakPower), h("span", { key: '2ad8de7cb701e9410425bb762d03e03a5e9b3181', class: "font-bold text-text-muted" }, (DEFAULT_SOLAR_PANEL_TYPE.kWattPeak *
625
+ this.numberOfPanels).toFixed(1), " kWp"))))), h("div", { key: '2cacc97462ac629a060baad3975179da6ad94e53', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: 'c10ec73052c222c5b3d75f2b28ae98189cf51380', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.householdConsumptionTitle), h("div", { key: '0279cc5c0f7cf3dcfd5c59075f4136edfde0b557', class: "grid grid-rows-2 gap-0" }, h("div", { key: '9e4b72083f26c1c540f757f74297f2bf1fe0c93c', class: "grid grid-cols-2 gap-4" }, h("label", { key: '7a5e9bf3b54bbc8328755837542a3766315247ef', class: "block text-sm font-medium text-text-muted" }, t.solarSystemForm.annualConsumption), h("label", { key: '5e75002062d1e932d451f8350078afe3b34c3126', class: "block text-sm font-medium text-text-muted" }, t.solarSystemForm.consumptionProfileTitle)), h("div", { key: '28ead4dbbe0258b6134a5c0c948ae993865c7da9', class: "grid grid-cols-2 gap-4" }, h("input", { key: '3b4cebdf7e4d38b3503d49f2c3cb2291ad17c6d0', type: "number", step: "100", min: "0", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground", style: borderStyle, value: this.householdConsumption, onInput: (e) => {
375
626
  this.householdConsumption = parseInt(e.target
376
627
  .value);
377
628
  this.recalculate();
378
- } }), h("select", { key: 'fbe2af24809a12043b9d1bfc23b0a480e378327b', class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground", style: borderStyle, onChange: (e) => {
629
+ } }), h("select", { key: '76994946ffe5e5d53037a58ed13fe103d8af3e64', class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground", style: borderStyle, onChange: (e) => {
379
630
  this.consumptionProfile =
380
631
  e.target
381
632
  .value;
382
633
  this.recalculate();
383
- } }, h("option", { key: 'af56d4b4bc9d4623f03745a1bae46915e90b822b', value: "mostly_at_home", selected: this.consumptionProfile ===
634
+ } }, h("option", { key: 'c7d2c8ec8d92f9339e33d5532504e92e1868bd0b', value: "mostly_at_home", selected: this.consumptionProfile ===
384
635
  "mostly_at_home" }, t.solarSystemForm.consumptionProfiles
385
- .mostlyAtHome), h("option", { key: '03050dbc05259fd78693c68d736c65aea84c4692', value: "mostly_away", selected: this.consumptionProfile ===
636
+ .mostlyAtHome), h("option", { key: '668d7edd27b5c923c944ab442b960ae94c12af00', value: "mostly_away", selected: this.consumptionProfile ===
386
637
  "mostly_away" }, t.solarSystemForm.consumptionProfiles
387
- .mostlyAway))))), h("div", { key: '398a347fe923ccf5c245237e4f923946ddccca2b', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '017d2e0d7f9c6bf0960d48ea46e910e52f97ddf0', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.additionalComponents.title), h("div", { key: '8a4c0f966a4256fc34d4ea326e17494cb7c38d08', class: "flex flex-col gap-4" }, h("div", { key: '2802b69b3333ba6093824b4bce0bce34838beef0', class: "flex flex-col bg-muted rounded-4xl p-4 gap-4" }, h("div", { key: '6eb56c4e1a05cc934539ff6834ef303f702d9230', class: "flex items-center justify-between" }, h("div", { key: '8672770642b35589cb5d2b70547545cda6436be8', class: "flex items-center gap-2" }, h("input", { key: '8cf94f816794f0d3fe9511241e33407d0db21cc9', type: "checkbox", id: "heatPump", class: "w-4 h-4 accent-tertiary border-border rounded-full focus:ring-tertiary focus:ring-offset-0 focus:ring-2", checked: this.heatPump > 0, onChange: (e) => {
638
+ .mostlyAway))))), h("div", { key: 'e2e2e002761485d99790c4727bd46ed1ed190123', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '46f8a7b7fc363d6eca28fbe5701d04c7d95e54e5', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.additionalComponents.title), h("div", { key: '08eaa438ae318304b5f2c3de023823b21f19eb75', class: "flex flex-col gap-4" }, h("div", { key: '4d56b31df0ca2935710fcd8d1733ba5f5ef07d92', class: "flex flex-col bg-muted rounded-4xl p-4 gap-4" }, h("div", { key: '0f399db912c4851d1d22d430c479f35a684e8405', class: "flex items-center justify-between" }, h("div", { key: 'af002c41ce930b0c1cb7bd9f9e58890064fc3fe8', class: "flex items-center gap-2" }, h("input", { key: '781624b2b616de5b5d9ade954911950c77224d55', type: "checkbox", id: "heatPump", class: "w-4 h-4 accent-tertiary border-border rounded-full focus:ring-tertiary focus:ring-offset-0 focus:ring-2", checked: this.heatPump > 0, onChange: (e) => {
388
639
  this.heatPump =
389
640
  e.target
390
641
  .checked
391
642
  ? 100
392
643
  : 0;
393
644
  this.recalculate();
394
- } }), h("label", { key: 'd068346b88585730a99bd8c64b86c0348c40f17d', htmlFor: "heatPump", class: "text-text-muted" }, t.solarSystemForm
645
+ } }), h("label", { key: '94e129a09f3af63d049c3b58bb6d3bb1b788739c', htmlFor: "heatPump", class: "text-text-muted" }, t.solarSystemForm
395
646
  .additionalComponents
396
- .heatPump)), (this.heatPump > 0 && !this.isIOS()) && (h("span", { key: '16449a80ae506fd75a2b1c4bb53745ff2dfa9fc2', class: "text-text-muted" }, this.heatPump, " m\u00B2"))), this.heatPump > 0 && (h("div", { key: 'd64daeb593cd78c0b5a6a0c595b4ea68b6f58ecf', class: "flex flex-col gap-2" }, this.isIOS()
647
+ .heatPump)), (this.heatPump > 0 && !this.isIOS()) && (h("span", { key: '9a9c4208690edaa0809435a9bfb219d65ac825a1', class: "text-text-muted" }, this.heatPump, " m\u00B2"))), this.heatPump > 0 && (h("div", { key: 'b71000e853b6f5317f5b5190fdfe57582217dbbe', class: "flex flex-col gap-2" }, this.isIOS()
397
648
  ? (h("div", { class: "flex items-center gap-2" }, h("input", { type: "number", min: "10", max: "300", step: "10", class: "flex-1 px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", style: borderStyle, value: this.heatPump, onInput: (e) => {
398
649
  let value = parseInt(e.target
399
650
  .value);
@@ -412,31 +663,31 @@ const SolarSystemForm = class {
412
663
  parseInt(e.target
413
664
  .value);
414
665
  this.recalculate();
415
- } }))))), h("div", { key: '96e46b97840448e5d33351bb7550d29081b283ae', class: "flex flex-col bg-muted rounded-4xl p-4 gap-4" }, h("div", { key: '8a5e9bfcbab6a380949cfb70aed04102e83524f9', class: "flex items-center justify-between" }, h("div", { key: '7bd3b892a195111d426571f4fd5ebc74ac8e4458', class: "flex items-center gap-2" }, h("input", { key: 'e0465348cd9edace9ea3f6d31b32c01130f599bf', type: "checkbox", id: "electricCar", class: "w-4 h-4 accent-tertiary border-border rounded focus:ring-tertiary focus:ring-offset-0 focus:ring-2", checked: this.electricCar, onChange: (e) => {
666
+ } }))))), h("div", { key: 'a3ffb277ff4f4c5539c8484c1e2b9e9c5dbff64f', class: "flex flex-col bg-muted rounded-4xl p-4 gap-4" }, h("div", { key: '520a1c1f3aff8482bab8206e72fd0f8480192e31', class: "flex items-center justify-between" }, h("div", { key: 'c5dee085ffcc1b93acacf451ce7044c1dbbbd5ae', class: "flex items-center gap-2" }, h("input", { key: '835135fc8cd50873fdc2611526735b2a8b8d238c', type: "checkbox", id: "electricCar", class: "w-4 h-4 accent-tertiary border-border rounded focus:ring-tertiary focus:ring-offset-0 focus:ring-2", checked: this.electricCar, onChange: (e) => {
416
667
  this.electricCar =
417
668
  e.target
418
669
  .checked;
419
670
  this.recalculate();
420
- } }), h("label", { key: '632375d50fcc5d65b6755143fce0b0c6ecc1b9eb', htmlFor: "electricCar", class: "text-text-muted" }, t.solarSystemForm
671
+ } }), h("label", { key: 'f401eb62de0b05c0e65c89294d65e78925f19749', htmlFor: "electricCar", class: "text-text-muted" }, t.solarSystemForm
421
672
  .additionalComponents
422
- .electricCar))), this.electricCar && (h("div", { key: 'ad61c2c776efe4d9ebba427b9077bffe0539845d', class: "flex flex-col gap-2" }, h("div", { key: '5cdebf71f86045d8fad0e34e9c1b3d509c7b009e', class: "grid grid-cols-2 gap-4" }, h("label", { key: 'cf81d88d2d88f6ae1b9a5024c2936876c3ef71fd', class: "text-sm text-text-muted" }, t.solarSystemForm
673
+ .electricCar))), this.electricCar && (h("div", { key: 'a53474411832751c7a30aeb5ea02db0f9f512963', class: "flex flex-col gap-2" }, h("div", { key: '19f2e4448eaaa94fba0b6d922ecb18ff28d052bc', class: "grid grid-cols-2 gap-4" }, h("label", { key: 'bd92f4dd142ef6a732c85d9b71bc9eb3c6b60fa6', class: "text-sm text-text-muted" }, t.solarSystemForm
423
674
  .additionalComponents
424
- .chargingTime), h("label", { key: 'da1dcb1219717fb52575c597c4800d65bb961675', class: "text-sm text-text-muted" }, t.solarSystemForm
675
+ .chargingTime), h("label", { key: 'bb0552899cf2642b866213d91d5d90d2d8a1424e', class: "text-sm text-text-muted" }, t.solarSystemForm
425
676
  .additionalComponents
426
- .kilometersPerYear)), h("div", { key: 'a2757d138453d73b7d8ec6e367e8c1de108ce034', class: "grid grid-cols-2 gap-4" }, h("select", { key: '37346901d46565768147d427051b5618f9e6b116', class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", onChange: (e) => {
677
+ .kilometersPerYear)), h("div", { key: '35ef876cab7b2d4fe0fea2eb2b821b5c59cdbd34', class: "grid grid-cols-2 gap-4" }, h("select", { key: '9b6961f77e163568d4c09b207cec5958c2a5302b', class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", onChange: (e) => {
427
678
  this.electricCarChargingTime =
428
679
  e.target
429
680
  .value;
430
681
  this.recalculate();
431
- }, style: borderStyle }, h("option", { key: 'd81865a15f17acd907c50cdcd78976065fa62652', value: "day", selected: this
682
+ }, style: borderStyle }, h("option", { key: '5e67bdee8a891ace0299fbc3f2faaa82ceab9963', value: "day", selected: this
432
683
  .electricCarChargingTime ===
433
684
  "day" }, t.solarSystemForm
434
685
  .additionalComponents
435
- .chargingTimeDay), h("option", { key: '210248d07239dd91b878b463029afb711da6f883', value: "night", selected: this
686
+ .chargingTimeDay), h("option", { key: '00649f89de616ada4292ff71eb15524a5b946059', value: "night", selected: this
436
687
  .electricCarChargingTime ===
437
688
  "night" }, t.solarSystemForm
438
689
  .additionalComponents
439
- .chargingTimeNight)), h("input", { key: '7f34b587ffda5b9e075adbadd2a5f0bb4fbf5c49', type: "number", min: "1000", max: "100000", step: "1000", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", value: this.kmDrivenPerYear, onInput: (e) => {
690
+ .chargingTimeNight)), h("input", { key: '3234b8ac6c559b57b8d24bacb1794fd2860aab24', type: "number", min: "1000", max: "100000", step: "1000", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", value: this.kmDrivenPerYear, onInput: (e) => {
440
691
  this.kmDrivenPerYear =
441
692
  parseInt(e.target
442
693
  .value);
@@ -445,7 +696,7 @@ const SolarSystemForm = class {
445
696
  0;
446
697
  }
447
698
  this.recalculate();
448
- }, style: borderStyle }))))), h("div", { key: '04b6c11022c91d5f5156211b52f36436e5ee0e3a', class: "flex flex-col bg-muted rounded-4xl p-4 gap-4" }, h("div", { key: '75ec40dd3d6d82e7a347f51e7244934834cb1796', class: "flex items-center justify-between" }, h("div", { key: 'a656e188979e1a26756b1a0e253eb64045c0b6f4', class: "flex items-center gap-2" }, h("input", { key: 'daf0d7f659cbd8c6313a2b633b22853fa3ac1439', type: "checkbox", id: "battery", class: "w-4 h-4 accent-tertiary border-border rounded-full focus:ring-tertiary focus:ring-offset-0 focus:ring-2", checked: this.batteryEnabled, onChange: (e) => {
699
+ }, style: borderStyle }))))), h("div", { key: '8d5eec07f8446d8984d3f6b767b404e5840dc67f', class: "flex flex-col bg-muted rounded-4xl p-4 gap-4" }, h("div", { key: '2321a2419b1f6ab4ab591ac09a44bc9168b591c2', class: "flex items-center justify-between" }, h("div", { key: '33cbfd3dbfac3a3077e73ad3d5a61bd845cfe1c8', class: "flex items-center gap-2" }, h("input", { key: 'd3d6b513e7eb73cc96f4ed1b5b70f4d46eebb8b1', type: "checkbox", id: "battery", class: "w-4 h-4 accent-tertiary border-border rounded-full focus:ring-tertiary focus:ring-offset-0 focus:ring-2", checked: this.batteryEnabled, onChange: (e) => {
449
700
  this.batteryEnabled =
450
701
  e.target
451
702
  .checked;
@@ -454,9 +705,9 @@ const SolarSystemForm = class {
454
705
  ? 5
455
706
  : 0;
456
707
  this.recalculate();
457
- } }), h("label", { key: '934f7b42b97134a6dcbdb566392a331a9824f4b9', htmlFor: "battery", class: "text-text-muted" }, t.solarSystemForm
708
+ } }), h("label", { key: 'd73591c77f3b04c2b78c33a6d71808cdddd782e7', htmlFor: "battery", class: "text-text-muted" }, t.solarSystemForm
458
709
  .additionalComponents
459
- .battery)), (this.batteryEnabled && !this.isIOS()) && (h("span", { key: '2b82db24bc6ea580b38a47720d39180727569fcf', class: "text-text-muted" }, this.battery, " kWh"))), this.batteryEnabled && (h("div", { key: '9cb0af19acffe8b6a22f8dab52d7b58748b89fa7', class: "flex flex-col gap-2" }, this.isIOS()
710
+ .battery)), (this.batteryEnabled && !this.isIOS()) && (h("span", { key: 'dffc91a5159c4e2b8889175751c432e318f47dae', class: "text-text-muted" }, this.battery, " kWh"))), this.batteryEnabled && (h("div", { key: 'ead4529d83f84e9f8e762e7ccc6203c886fea2cf', class: "flex flex-col gap-2" }, this.isIOS()
460
711
  ? (h("div", { class: "flex items-center gap-2" }, h("input", { type: "number", min: "0", max: "20", step: "1", class: "flex-1 px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", value: this.battery, onInput: (e) => {
461
712
  let value = parseInt(e.target
462
713
  .value);
@@ -481,52 +732,52 @@ const SolarSystemForm = class {
481
732
  this.batteryEnabled =
482
733
  value > 0;
483
734
  this.recalculate();
484
- } }))))))), h("div", { key: 'ab35064c9f135bd5b0a3de1e8b58778773bb7183', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: 'f083142c6a3f5943f03f4c8c91e5b0191da2f18a', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.electricityCostsTitle), h("div", { key: '149f07c47577bfa66044711d00950d16f20b4daa', style: {
735
+ } }))))))), h("div", { key: 'cc21f52e0e1ea5d1f731951325053a4615641288', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '413db6f645abd608dc74c0fe9dd2b8538e439ff3', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.electricityCostsTitle), h("div", { key: '36a7f1d8ca5b115cf86c136ab8b2834c621cbff4', style: {
485
736
  display: "grid",
486
737
  gridTemplateColumns: "repeat(auto-fit, minmax(100px, 1fr))",
487
738
  gap: "1rem",
488
- } }, h("div", { key: '7c0c06f3f5de6192ad6f88ca405bebc8164b776e' }, h("label", { key: '4e2624714478f92ee78cd826cb65976b4e1eedfe', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.electricityPrice), h("input", { key: 'c5ee3300484d227731ad4cf9ff156b1523262ce5', type: "number", step: "0.01", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", style: borderStyle, value: this.electricityPrice.toFixed(2), onInput: (e) => {
739
+ } }, h("div", { key: '393a18f5a6d81a557d85a77ec83a764ee22043cb' }, h("label", { key: '23c407eba1f39251193d83320f79feb88a709ce9', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.electricityPrice), h("input", { key: '6e9a5ed3a36231ffccc9dcaa00ac6919668078c7', type: "number", step: "0.01", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", style: borderStyle, value: this.electricityPrice.toFixed(2), onInput: (e) => {
489
740
  this.electricityPrice = parseFloat(e.target
490
741
  .value);
491
742
  this.recalculate();
492
- } })), h("div", { key: '4220bc2ed90aac8e1ac60385872f10503aac2053' }, h("label", { key: '0b10f5c64eb7c77ea4895449726b19aa1450217f', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.compensationRate), h("input", { key: '794d102dfe59d68563e89b5da8ab5b93f66e9ccc', type: "number", step: "0.01", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", style: borderStyle, value: this.compensationRate.toFixed(2), onInput: (e) => {
743
+ } })), h("div", { key: '3942694c95b0b451bca63341cdfb92b5f5829593' }, h("label", { key: 'bdb87c826d37b147c031a2ca53411a7432c845fd', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.compensationRate), h("input", { key: 'b91214ef6aebe7c342ec4bb604f6e3a37b189488', type: "number", step: "0.01", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", style: borderStyle, value: this.compensationRate.toFixed(2), onInput: (e) => {
493
744
  this.compensationRate = parseFloat(e.target
494
745
  .value);
495
746
  this.recalculate();
496
- } })), h("div", { key: '10081bb97392c16a1d99e644cf4d392edee2ffd3' }, h("label", { key: '9727ffc2d1f89923cf0d569dd59f86868b54b723', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.annualPriceIncrease), h("input", { key: 'dca5fa0137b2366589d5adc68ce961c8084a1ea3', type: "number", step: "0.1", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", style: borderStyle, value: this.annualPriceIncrease.toFixed(1), onInput: (e) => {
747
+ } })), h("div", { key: '56684c4d9d65272834bd4cebe8c4c167bb16a958' }, h("label", { key: 'af7337ddaa1529dbc6b07704a2c313a591b6e3bd', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.annualPriceIncrease), h("input", { key: '90bef6067bf8fae6b598a551ab2ddbb4f0725b29', type: "number", step: "0.1", class: "w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted", style: borderStyle, value: this.annualPriceIncrease.toFixed(1), onInput: (e) => {
497
748
  this.annualPriceIncrease = parseFloat(e.target
498
749
  .value);
499
750
  this.recalculate();
500
- } })))), h("div", { key: 'ce396dfca25c42f00914f04db39aeb28465e3ed8', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: 'de2feec636ca79e02f9b895bea7ba35ba2dbe729', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.resultsTitle), h("div", { key: 'c0301e4286db317a049fe43f486db72c9c4632e6', class: "bg-muted rounded-4xl p-4" }, h("div", { key: 'f7eeb9506a80a2111681ba179b2570ae2f823188', class: "flex flex-col sm:flex-row sm:items-center justify-between" }, h("span", { key: '7384e4ef01cdf238dc584def68b9b82dabcf5f90', class: "text-text-muted" }, t.solarSystemForm.autonomy), h("span", { key: 'e015f0adf8216e61e823479687e62e1dc0cd1416', class: "text-xl font-bold text-secondary mt-1 sm:mt-0" }, this.autonomy > 100
751
+ } })))), h("div", { key: '266bd42a4b60349bbb098f8a56a1af6444b85fad', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: 'c24a5e56041eeaf26a5648af092a942ccd41e739', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.resultsTitle), h("div", { key: '3fd59700c6cdb99662f8a7232141d1f7efb2109f', class: "bg-muted rounded-4xl p-4" }, h("div", { key: '25708d8c8cdd04b21e66ac05776cef76ce53725a', class: "flex flex-col sm:flex-row sm:items-center justify-between" }, h("span", { key: '0b45f781be44dd70a66d68446319f17800357984', class: "text-text-muted" }, t.solarSystemForm.autonomy), h("span", { key: 'a56d5b093834c6a42f74619ab569a983057e91a0', class: "text-xl font-bold text-secondary mt-1 sm:mt-0" }, this.autonomy > 100
501
752
  ? "100"
502
- : this.formatEuropeanNumber(this.autonomy, 1), "%")), h("div", { key: '573898821896ccb941a4952db93e1ddcd02f1048', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("span", { key: 'acda47ca6f86a0059de4014c43e4c9da8cf8375a', class: "text-text-muted" }, t.solarSystemForm.totalEnergyConsumption), h("span", { key: 'c7a11736f29c94e9c12aeba2c4f8b4c9a90dabd2', class: "text-xl font-bold text-secondary mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.totalEnergyConsumption, 0), " kWh/", t.solarSystemForm.year)), h("div", { key: 'c2d7dd0636d540a2cfaadb46d51dcca2302a8948', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("span", { key: 'bd7c6d95d354688b6d82dda1d6da8cda06663a77', class: "text-text-muted" }, t.solarSystemForm.totalEnergyProduction), h("span", { key: '2f3a04b1649248b79945aa8fe87f4dfa4e17f074', class: "text-xl font-bold text-secondary mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.totalEnergyProduction, 0), " kWh/", t.solarSystemForm.year)), h("div", { key: 'd56b792fd2305eef5b79da1402a7595e788d6312', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("div", { key: '92deb1c8bfc0f4b30a70becbad935ab9f21c82f1', class: "flex items-center gap-2" }, h("span", { key: '0be5fbc8919d64438c098338731c3e3599b6a031', class: "text-text-muted" }, t.solarSystemForm.costSavings)), h("span", { key: '8693ccc59f8171aa5ac99cbf2c0e52e7a8e93b1c', class: "text-xl font-bold text-success mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.costSavings), " \u20AC/", t
503
- .solarSystemForm.year)), h("div", { key: 'dcdfb4fd6f8599f3a8c680c460f4257365abb588', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("div", { key: '974783bd031dfb875215603e91a43fb324b64a59', class: "flex items-center gap-2" }, h("span", { key: '63453ca13b706b8f8d28471083f568433d938b29', class: "text-text-muted" }, t.solarSystemForm.compensation20Years)), h("span", { key: '4442d42f3f5fea6de6ebfe95eff0773b63384e37', class: "text-xl font-bold text-success mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.compensation20Years), " \u20AC")), h("div", { key: '1ef46e878482497336b6ea9ef07ea6b6b39ca568', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("div", { key: 'b603edaa11df95af89dc40101a0501e95c272383', class: "flex items-center gap-2" }, h("span", { key: '8ad1f403369170986a4bb11f710f5f46a18f8bb9', class: "text-text-muted" }, t.solarSystemForm
504
- .monetaryBenefit20Years)), h("span", { key: 'b02d50932181c8ce00c2ef8be4e1418814e145c6', class: "text-xl font-bold text-success mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.savedCosts20Years), " \u20AC")))), h("div", { key: '8985466e01091bc03c45b0543c5ee26b5f5386db', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '248f011371b5f188bc95347f4a6d38f85743526a', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.requestOffer), h("div", { key: 'c096a6fe9ff9b41f95b6481dead7af57ba961b72', style: {
753
+ : this.formatEuropeanNumber(this.autonomy, 1), "%")), h("div", { key: 'feea3eca497e8f14eb619c4f2ece03c39394ca74', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("span", { key: '3b5ae4b3be1368da0a8c6eb0c9e1c07c6ef6e2d7', class: "text-text-muted" }, t.solarSystemForm.totalEnergyConsumption), h("span", { key: '04d21a3ce938bd47aee28598467984d467c19fba', class: "text-xl font-bold text-secondary mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.totalEnergyConsumption, 0), " kWh/", t.solarSystemForm.year)), h("div", { key: '6812053410e4372e791cf1fc7f74b411549fc8d9', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("span", { key: '2451f60fe0ec7edb6312bc7b8a50b63c4e4af182', class: "text-text-muted" }, t.solarSystemForm.totalEnergyProduction), h("span", { key: '8695bcaee81b83829460639976872d141734bf16', class: "text-xl font-bold text-secondary mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.totalEnergyProduction, 0), " kWh/", t.solarSystemForm.year)), h("div", { key: 'c7bc91f11c89d492cdd4545a96af349e2a643fc9', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("div", { key: 'b28127d6c7cb295a61cd5a5e0a21dbba9acbbdba', class: "flex items-center gap-2" }, h("span", { key: 'f0a7b0e4359155d99e0859da98eb9cbedcd53a00', class: "text-text-muted" }, t.solarSystemForm.costSavings)), h("span", { key: 'ec566bd9d9fb4f2757c8467525bef7a4e584642a', class: "text-xl font-bold text-success mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.costSavings), " \u20AC/", t
754
+ .solarSystemForm.year)), h("div", { key: 'f68554341ba8b734ea64507f705a0d1318317598', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("div", { key: '95ea75c1ada49b28ccbba230fb696660e5892538', class: "flex items-center gap-2" }, h("span", { key: '169dd5d92dad7d8fb54a24eee3f736b30f635600', class: "text-text-muted" }, t.solarSystemForm.compensation20Years)), h("span", { key: 'c1445a608709f8202bf9e9cdc06cce961e1b949f', class: "text-xl font-bold text-success mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.compensation20Years), " \u20AC")), h("div", { key: '9a45d97faab0feefdbbef029c664579347f48aaf', class: "flex flex-col sm:flex-row sm:items-center justify-between mt-4" }, h("div", { key: 'dce377238f8650fb00f90eb31e533e2282e8c02b', class: "flex items-center gap-2" }, h("span", { key: 'd0c04b9c4aca6c4605f04f68eb86d21f994ea7a9', class: "text-text-muted" }, t.solarSystemForm
755
+ .monetaryBenefit20Years)), h("span", { key: 'f56d1995af5bda25c068ee58c36edf4cd6a61d9f', class: "text-xl font-bold text-success mt-1 sm:mt-0" }, this.formatEuropeanNumber(this.savedCosts20Years), " \u20AC")))), h("div", { key: '6b8acc3f0c13fa2b70854214d5882f8024dbcc8c', class: "space-y-4 p-4 rounded-4xl", style: borderStyle }, h("h2", { key: '216a6809e770f9e67d9731e104ed50ec68a3d187', class: "text-lg font-semibold text-secondary" }, t.solarSystemForm.requestOffer), h("div", { key: '7ed284d01cc4f3375e20f8b85d2c0d1af287227e', style: {
505
756
  display: "grid",
506
757
  gridTemplateColumns: "repeat(auto-fit, minmax(1 00px, 1fr))",
507
758
  gap: "1rem",
508
- } }, h("div", { key: '7f700d4bd04704f7aa29d47e739c36a6e54088a6' }, h("label", { key: 'f5668d862e0d487ee0b64899c766ffeed1c25072', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.name), h("input", { key: '9c676dafa8f27c193079f0dd6d68a991c69d4750', type: "text", class: `w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground`, style: this.nameError
759
+ } }, h("div", { key: 'e0f7dc87d379fdccbe3c28fbae46b3104235b68d' }, h("label", { key: '6f3b10b41a081224855dd6aa68df0ede72e0a6c7', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.name), h("input", { key: '1e8f43f9818f896e53fa0fcb859b7865e64a2a64', type: "text", class: `w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground`, style: this.nameError
509
760
  ? errorBorderStyle
510
761
  : borderStyle, value: this.name, onInput: (e) => {
511
762
  this.name =
512
763
  e.target
513
764
  .value;
514
765
  this.validateForm();
515
- }, placeholder: "Your name" }), this.nameError && (h("p", { key: '2ef2fd8d7e69f5039dde0b137568bd45b0e91a79', class: "text-error text-sm mt-1" }, this.nameError))), h("div", { key: 'a7f1d9da636f822aa3eb1936aca6bbb935267623' }, h("label", { key: 'b6eb2ccb8bd50afb00a68ad18efcd43e06a8f2bb', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.email), h("input", { key: '10beb1d64dfd3991e4d57c0504da0326eef9cf25', type: "email", class: `w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground`, style: this.emailError
766
+ }, placeholder: "Your name" }), this.nameError && (h("p", { key: '2057d743304e3e4fbb1367971ac7ff5a008b8ae7', class: "text-error text-sm mt-1" }, this.nameError))), h("div", { key: '4884e8d194a8be9c17ca8f38fc4349e5e79396bb' }, h("label", { key: '329f5d0502c8e685a4abc2f49e153f6c3e69f13f', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.email), h("input", { key: '847cff5833cc8d1872fc8a620344085a74d885ca', type: "email", class: `w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground`, style: this.emailError
516
767
  ? errorBorderStyle
517
768
  : borderStyle, value: this.email, onInput: (e) => {
518
769
  this.email =
519
770
  e.target
520
771
  .value;
521
772
  this.validateForm();
522
- }, placeholder: "your.email@example.com" }), this.emailError && (h("p", { key: 'a0740a7fb12f58639e519e89389c4c60c3a594b0', class: "text-error text-sm mt-1" }, this.emailError))), h("div", { key: '9ce5e139e2c4c0c88dff3f183a42f4966cf861b7' }, h("label", { key: '67f650c9ed7e38dcc0049f3ff7bac0427ca61942', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.phone), h("input", { key: '85eac1db16306e4342f3c52300fa8284e2ea1530', type: "tel", class: `w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground`, style: this.phoneError
773
+ }, placeholder: "your.email@example.com" }), this.emailError && (h("p", { key: '956e51452f32f6c92d70de7ca28beab4922850f9', class: "text-error text-sm mt-1" }, this.emailError))), h("div", { key: '48e2718dd33ab7efa45e0992c8f281083e77b2de' }, h("label", { key: '545eca60f2f30861cbb49f12391098fcd437d51b', class: "block text-sm font-medium text-text-muted mb-1" }, t.solarSystemForm.phone), h("input", { key: '9baca33fb75c16ca3500b8980c6b55ffe35bedfc', type: "tel", class: `w-full px-4 py-2 rounded-4xl focus:ring-2 focus:ring-tertiary focus:border-transparent bg-muted text-muted-foreground`, style: this.phoneError
523
774
  ? errorBorderStyle
524
775
  : borderStyle, value: this.phone, onInput: (e) => {
525
776
  this.phone =
526
777
  e.target
527
778
  .value;
528
779
  this.validateForm();
529
- }, placeholder: "+34 123 456 789" }), this.phoneError && (h("p", { key: 'a6d4c19718f0c822698df428c5541de8e851a7da', class: "text-error text-sm mt-1" }, this.phoneError)))), h("div", { key: '7ca3546cbf81c69d47087c2faa7d1f2e13eedfbd', class: "flex flex-col items-center gap-4" }, h("button", { key: 'ba107a8d0c9bc413c0962ccf8a5aad9d85882b9c', onClick: () => this.handleRequestOffer(), disabled: !this.name.trim() ||
780
+ }, placeholder: "+34 123 456 789" }), this.phoneError && (h("p", { key: '23c1d5ee25d9b01295627db3feea507e2e0804a4', class: "text-error text-sm mt-1" }, this.phoneError)))), h("div", { key: '155f8a5dcecdb0c330b6ce3f3455f39c1d7689b5', class: "flex flex-col items-center gap-4" }, h("button", { key: 'fabacedfac41216d9b48beed1fce03ccd39dd5cd', onClick: () => this.handleRequestOffer(), disabled: !this.name.trim() ||
530
781
  !this.email.trim() || !!this.nameError ||
531
782
  !!this.emailError || !!this.phoneError ||
532
783
  this.isSubmitting, class: `px-6 py-3 rounded-4xl transition-colors duration-200 flex items-center gap-2 ${this.isSubmitting
@@ -535,19 +786,70 @@ const SolarSystemForm = class {
535
786
  color: this.isSubmitting
536
787
  ? "var(--color-text-muted)"
537
788
  : "#ffffff",
538
- } }, this.isSubmitting && (h("div", { key: '599bf6ba45b4f79760828b166451cad579ad99a4', class: "w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin" })), this.isSubmitting
789
+ } }, this.isSubmitting && (h("div", { key: '51b7a0add44644aa898060aeba67ef74cdb32d5d', class: "w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin" })), this.isSubmitting
539
790
  ? t.solarSystemForm.sending
540
- : t.solarSystemForm.requestOfferButton), this.submitMessage && (h("div", { key: 'bff80e01d48c64a17f556446e68b17c7a061d0fb', class: `text-sm px-4 py-2 rounded-4xl ${this.submitSuccess
791
+ : t.solarSystemForm.requestOfferButton), this.submitMessage && (h("div", { key: 'cb54060dff88997e93fc105ebb876c8e518de545', class: `text-sm px-4 py-2 rounded-4xl ${this.submitSuccess
541
792
  ? "bg-success/10 text-success border border-success/20"
542
793
  : "bg-error/10 text-error border border-error/20"}` }, this.submitMessage)))))));
543
794
  }
544
795
  static get watchers() { return {
545
796
  "systemConfigs": ["updateSystemConfigs"]
546
797
  }; }
547
- };
548
- SolarSystemForm.style = outputCss;
798
+ static get style() { return outputCss; }
799
+ }, [0, "solar-system-form", {
800
+ "systemConfigs": [16, "system-configs"],
801
+ "polygons": [16],
802
+ "roofCanvas": [16, "roof-canvas"],
803
+ "polygonCanvas": [16, "polygon-canvas"],
804
+ "pixelInMeters": [2, "pixel-in-meters"],
805
+ "householdConsumption": [32],
806
+ "consumptionProfile": [32],
807
+ "electricityPrice": [32],
808
+ "compensationRate": [32],
809
+ "annualPriceIncrease": [32],
810
+ "autonomy": [32],
811
+ "costSavings": [32],
812
+ "numberOfPanels": [32],
813
+ "panelPeakPower": [32],
814
+ "name": [32],
815
+ "email": [32],
816
+ "phone": [32],
817
+ "nameError": [32],
818
+ "emailError": [32],
819
+ "phoneError": [32],
820
+ "electricCar": [32],
821
+ "electricCarChargingTime": [32],
822
+ "heatPump": [32],
823
+ "battery": [32],
824
+ "batteryEnabled": [32],
825
+ "compensation20Years": [32],
826
+ "savedCosts20Years": [32],
827
+ "maxPanels": [32],
828
+ "kmDrivenPerYear": [32],
829
+ "totalEnergyConsumption": [32],
830
+ "totalEnergyProduction": [32],
831
+ "isSubmitting": [32],
832
+ "submitMessage": [32],
833
+ "submitSuccess": [32]
834
+ }, undefined, {
835
+ "systemConfigs": ["updateSystemConfigs"]
836
+ }]);
837
+ function defineCustomElement() {
838
+ if (typeof customElements === "undefined") {
839
+ return;
840
+ }
841
+ const components = ["solar-system-form"];
842
+ components.forEach(tagName => { switch (tagName) {
843
+ case "solar-system-form":
844
+ if (!customElements.get(tagName)) {
845
+ customElements.define(tagName, SolarSystemForm);
846
+ }
847
+ break;
848
+ } });
849
+ }
850
+ defineCustomElement();
549
851
 
550
- export { SolarSystemForm as solar_system_form };
551
- //# sourceMappingURL=solar-system-form.entry.esm.js.map
852
+ export { BORDER_INSET as B, DEFAULT_COLOR_SCHEME as D, SolarSystemForm as S, DEFAULT_SOLAR_EXPERT_CONFIG as a, DEFAULT_SOLAR_PANEL_TYPE as b, defineCustomElement as d };
853
+ //# sourceMappingURL=p-C3ZXE525.js.map
552
854
 
553
- //# sourceMappingURL=solar-system-form.entry.js.map
855
+ //# sourceMappingURL=p-C3ZXE525.js.map