blue-chestnut-solar-expert 0.0.20 → 0.0.21
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.
- package/dist/cjs/eraser-icon.house-icon.icon-selector.map-draw.map-selector.move-icon.octagon-minus-icon.polygon-buttons.polygon-information.search-icon.settings-icon.settings-modal.solar-expert.solar-system-form.tool-box.undo-icon.entry.cjs.js.map +1 -1
- package/dist/cjs/eraser-icon_16.cjs.entry.js +91 -55
- package/dist/cjs/eraser-icon_16.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/loading-widget.cjs.entry.js +1 -1
- package/dist/cjs/stencil-library.cjs.js +1 -1
- package/dist/collection/components/map-draw/polygon-buttons.js +2 -3
- package/dist/collection/components/map-draw/polygon-buttons.js.map +1 -1
- package/dist/collection/components/solar-expert/solar-expert.js +2 -16
- package/dist/collection/components/solar-expert/solar-expert.js.map +1 -1
- package/dist/collection/components/solar-system-form/solar-system-form.js +85 -37
- package/dist/collection/components/solar-system-form/solar-system-form.js.map +1 -1
- package/dist/collection/components/widgets/loading-widget.js +1 -1
- package/dist/collection/store.js +1 -0
- package/dist/collection/store.js.map +1 -1
- package/dist/collection/types/lang.js.map +1 -1
- package/dist/collection/utils/geometry/fitting.js +0 -228
- package/dist/collection/utils/geometry/fitting.js.map +1 -1
- package/dist/collection/utils/lang/english.js +1 -0
- package/dist/collection/utils/lang/english.js.map +1 -1
- package/dist/collection/utils/lang/german.js +1 -0
- package/dist/collection/utils/lang/german.js.map +1 -1
- package/dist/collection/utils/lang/spanish.js +1 -0
- package/dist/collection/utils/lang/spanish.js.map +1 -1
- package/dist/components/loading-widget.js +1 -1
- package/dist/components/map-draw.js +1 -1
- package/dist/components/map-selector.js +1 -1
- package/dist/components/{p-CmFUQbz_.js → p-CTYaeZhp.js} +88 -40
- package/dist/components/p-CTYaeZhp.js.map +1 -0
- package/dist/components/{p-CPLDlLfb.js → p-CaedRXrz.js} +8 -8
- package/dist/components/p-CaedRXrz.js.map +1 -0
- package/dist/components/{p-DPfpDV5e.js → p-CvYS8YPD.js} +3 -3
- package/dist/components/{p-DPfpDV5e.js.map → p-CvYS8YPD.js.map} +1 -1
- package/dist/components/{p-CwVUc6Hq.js → p-DlAht76f.js} +6 -2
- package/dist/components/p-DlAht76f.js.map +1 -0
- package/dist/components/{p-CRnyqUKc.js → p-DufgH4Gd.js} +5 -6
- package/dist/components/p-DufgH4Gd.js.map +1 -0
- package/dist/components/{p-BxEeUA4s.js → p-G74Ln5vx.js} +3 -3
- package/dist/components/{p-BxEeUA4s.js.map → p-G74Ln5vx.js.map} +1 -1
- package/dist/components/{p-C-_6TJs5.js → p-bu76_2XI.js} +3 -3
- package/dist/components/{p-C-_6TJs5.js.map → p-bu76_2XI.js.map} +1 -1
- package/dist/components/{p-Bq1PVegq.js → p-oY2qkchz.js} +3 -3
- package/dist/components/{p-Bq1PVegq.js.map → p-oY2qkchz.js.map} +1 -1
- package/dist/components/polygon-buttons.js +1 -1
- package/dist/components/polygon-information.js +1 -1
- package/dist/components/settings-modal.js +1 -1
- package/dist/components/solar-expert.js +10 -24
- package/dist/components/solar-expert.js.map +1 -1
- package/dist/components/solar-system-form.js +1 -1
- package/dist/components/tool-box.js +1 -1
- package/dist/esm/eraser-icon.house-icon.icon-selector.map-draw.map-selector.move-icon.octagon-minus-icon.polygon-buttons.polygon-information.search-icon.settings-icon.settings-modal.solar-expert.solar-system-form.tool-box.undo-icon.entry.js.map +1 -1
- package/dist/esm/eraser-icon_16.entry.js +91 -55
- package/dist/esm/eraser-icon_16.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loading-widget.entry.js +1 -1
- package/dist/esm/stencil-library.js +1 -1
- package/dist/stencil-library/eraser-icon.house-icon.icon-selector.map-draw.map-selector.move-icon.octagon-minus-icon.polygon-buttons.polygon-information.search-icon.settings-icon.settings-modal.solar-expert.solar-system-form.tool-box.undo-icon.entry.esm.js.map +1 -1
- package/dist/stencil-library/p-abc3b199.entry.js +2 -0
- package/dist/stencil-library/p-abc3b199.entry.js.map +1 -0
- package/dist/stencil-library/{p-56f8bd65.entry.js → p-c4c3bbee.entry.js} +2 -2
- package/dist/stencil-library/stencil-library.esm.js +1 -1
- package/dist/types/components/solar-expert/solar-expert.d.ts +0 -1
- package/dist/types/components/solar-system-form/solar-system-form.d.ts +2 -0
- package/dist/types/store.d.ts +1 -0
- package/dist/types/types/lang.d.ts +1 -0
- package/dist/types/utils/geometry/fitting.d.ts +0 -23
- package/package.json +1 -1
- package/dist/components/p-CPLDlLfb.js.map +0 -1
- package/dist/components/p-CRnyqUKc.js.map +0 -1
- package/dist/components/p-CmFUQbz_.js.map +0 -1
- package/dist/components/p-CwVUc6Hq.js.map +0 -1
- package/dist/stencil-library/p-1e2ddc82.entry.js +0 -2
- package/dist/stencil-library/p-1e2ddc82.entry.js.map +0 -1
- /package/dist/stencil-library/{p-56f8bd65.entry.js.map → p-c4c3bbee.entry.js.map} +0 -0
|
@@ -1086,6 +1086,7 @@ const en = {
|
|
|
1086
1086
|
chargingTime: "Charging Time",
|
|
1087
1087
|
chargingTimeDay: "Day (06:00 - 18:00)",
|
|
1088
1088
|
chargingTimeNight: "Night (18:00 - 06:00)",
|
|
1089
|
+
kilometersPerYear: "Kilometers per Year",
|
|
1089
1090
|
},
|
|
1090
1091
|
annualPriceIncrease: "Annual Price Increase (%)",
|
|
1091
1092
|
costSavings25Years: "25-Year Savings",
|
|
@@ -1201,6 +1202,7 @@ const de = {
|
|
|
1201
1202
|
chargingTime: "Zeitpunkt der Ladung",
|
|
1202
1203
|
chargingTimeDay: "Tag (06:00 - 18:00)",
|
|
1203
1204
|
chargingTimeNight: "Nacht (18:00 - 06:00)",
|
|
1205
|
+
kilometersPerYear: "Kilometer pro Jahr",
|
|
1204
1206
|
},
|
|
1205
1207
|
annualPriceIncrease: "Jährliche Preissteigerung (%) ",
|
|
1206
1208
|
costSavings25Years: "25-Jährige Einsparungen",
|
|
@@ -1316,6 +1318,7 @@ const es = {
|
|
|
1316
1318
|
chargingTime: "Hora de carga",
|
|
1317
1319
|
chargingTimeDay: "Día (06:00 - 18:00)",
|
|
1318
1320
|
chargingTimeNight: "Noche (18:00 - 06:00)",
|
|
1321
|
+
kilometersPerYear: "Kilómetros por año",
|
|
1319
1322
|
},
|
|
1320
1323
|
annualPriceIncrease: "Aumento anual del precio (%)",
|
|
1321
1324
|
costSavings25Years: "Ahorro en 25 años",
|
|
@@ -1601,6 +1604,7 @@ const { state, onChange } = createStore({
|
|
|
1601
1604
|
},
|
|
1602
1605
|
settingsVersion: 1,
|
|
1603
1606
|
isMobile: false,
|
|
1607
|
+
isIOS: false,
|
|
1604
1608
|
});
|
|
1605
1609
|
onChange("latitude", (value) => {
|
|
1606
1610
|
state.latitude = value;
|
|
@@ -2431,12 +2435,11 @@ const PolygonButtons = class {
|
|
|
2431
2435
|
currentTool;
|
|
2432
2436
|
render() {
|
|
2433
2437
|
const t = getLanguageStrings(state.settings.language);
|
|
2434
|
-
|
|
2435
|
-
return (index.h("div", { key: '0395148df27fa4749435da350c48b48f48631b9e', class: "flex w-full gap-2 justify-end" }, index.h("button", { key: '8e1c15c7ebfca7970c240c02f1280834100fea59', class: `px-4 py-2 rounded-4xl hover:bg-[#0000003c] text-[#271200] transition-colors duration-200 text-xs ${this.currentTool === "markRoofEdge"
|
|
2438
|
+
return (index.h("div", { key: 'bfd9f90e4d9102dd46b27a74e53d8f6f58af9361', class: "flex w-full gap-2 justify-end" }, index.h("button", { key: '3b0866d091627579b479b3009800f12b27d13d5e', class: `px-4 py-2 rounded-4xl hover:bg-[#0000003c] text-[#271200] transition-colors duration-200 text-xs ${this.currentTool === "markRoofEdge"
|
|
2436
2439
|
? "bg-[#00000056]"
|
|
2437
2440
|
: "bg-white"}`,
|
|
2438
2441
|
// style={edgeSelectedStyle}
|
|
2439
|
-
onClick: () => this.selectEdgeTool() }, t.mapDraw.markRoofEdge), index.h("button", { key: '
|
|
2442
|
+
onClick: () => this.selectEdgeTool() }, t.mapDraw.markRoofEdge), index.h("button", { key: '12f39460c0a87249a639d2834f923f7abd0e592d', class: "px-4 py-2 rounded-4xl hover:bg-[#0000003c] text-[#271200] transition-colors duration-200 text-xs bg-[#ffffff]", onClick: () => this.calculateSolarPanels() }, t.mapDraw.calculateSolarPanels)));
|
|
2440
2443
|
}
|
|
2441
2444
|
};
|
|
2442
2445
|
PolygonButtons.style = outputCss$8;
|
|
@@ -2600,17 +2603,6 @@ const SolarExpert = class {
|
|
|
2600
2603
|
place = null;
|
|
2601
2604
|
showMapSelector = false;
|
|
2602
2605
|
inputElement;
|
|
2603
|
-
iosPolyfill(slider, e) {
|
|
2604
|
-
var val = (e.pageX - slider.getBoundingClientRect().left) /
|
|
2605
|
-
(slider.getBoundingClientRect().right -
|
|
2606
|
-
slider.getBoundingClientRect().left), max = parseInt(slider.getAttribute("max") || "0", 10), segment = 1 / (max - 1), segmentArr = [];
|
|
2607
|
-
max++;
|
|
2608
|
-
for (var i = 0; i < max; i++) {
|
|
2609
|
-
segmentArr.push(segment * i);
|
|
2610
|
-
}
|
|
2611
|
-
var segCopy = segmentArr.slice(), ind = segmentArr.sort((a, b) => Math.abs(val - a) - Math.abs(val - b))[0];
|
|
2612
|
-
slider.value = String(segCopy.indexOf(ind) + 1);
|
|
2613
|
-
}
|
|
2614
2606
|
componentWillLoad() {
|
|
2615
2607
|
state.isMobile =
|
|
2616
2608
|
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i
|
|
@@ -2623,10 +2615,7 @@ const SolarExpert = class {
|
|
|
2623
2615
|
}
|
|
2624
2616
|
});
|
|
2625
2617
|
state.settings.language = this.language;
|
|
2626
|
-
|
|
2627
|
-
sliders.forEach((slider) => {
|
|
2628
|
-
slider.addEventListener("touchend", (e) => this.iosPolyfill(slider, e), { passive: true });
|
|
2629
|
-
});
|
|
2618
|
+
state.isIOS = /iPhone|iPad|iPod/.test(navigator.userAgent);
|
|
2630
2619
|
}
|
|
2631
2620
|
async loadGoogleMapsScript() {
|
|
2632
2621
|
try {
|
|
@@ -2674,7 +2663,7 @@ const SolarExpert = class {
|
|
|
2674
2663
|
}
|
|
2675
2664
|
render() {
|
|
2676
2665
|
const t = getLanguageStrings(this.language);
|
|
2677
|
-
return (index.h("div", { key: '
|
|
2666
|
+
return (index.h("div", { key: 'b1c1d01d1d2a0101474830ce1994c440aa968af7', class: "flex flex-col w-full h-full p-3 m-auto", id: "solar-calculator" }, this.showMapSelector
|
|
2678
2667
|
? (index.h("map-selector", { "api-key": this.apiKey, language: this.language }))
|
|
2679
2668
|
: (index.h(index.h.Fragment, null, index.h("div", { class: "pb-3 flex flex-row gap-4 items-stretch w-full" }, index.h("div", { class: "relative flex-3" }, index.h("div", { class: "absolute left-3 top-1/2 transform -translate-y-1/2" }, index.h("search-icon", null)), index.h("input", { ref: (el) => this.inputElement = el, type: "text", placeholder: t.solarExpert
|
|
2680
2669
|
.searchPlaceholder, class: "w-full pl-10 pr-4 py-2 border border-gray-300 rounded-4xl focus:ring-[#271200] bg-white h-full" })), index.h("button", { onClick: () => this.handleChooseOnMap(), class: "flex-1 pl-4 pr-4 py-2 border border-gray-300 bg-white rounded-4xl focus:ring-[#271200] hover:bg-[#271200] hover:text-white" }, t.mapSelector.chooseOnMap)), index.h("map-draw", { apiKey: this.apiKey })))));
|
|
@@ -2849,6 +2838,7 @@ const SolarSystemForm = class {
|
|
|
2849
2838
|
compensation25Years = 0;
|
|
2850
2839
|
savedCosts25Years = 0;
|
|
2851
2840
|
maxPanels = 5;
|
|
2841
|
+
kmDrivenPerYear = 10000;
|
|
2852
2842
|
updateSystemConfigs() {
|
|
2853
2843
|
if (Object.keys(this.systemConfigs).length === 0) {
|
|
2854
2844
|
this.numberOfPanels = 0;
|
|
@@ -2893,7 +2883,7 @@ const SolarSystemForm = class {
|
|
|
2893
2883
|
},
|
|
2894
2884
|
electricCar: this.electricCar
|
|
2895
2885
|
? {
|
|
2896
|
-
averageKilometersPerDay:
|
|
2886
|
+
averageKilometersPerDay: this.kmDrivenPerYear / 365,
|
|
2897
2887
|
consumptionkWhPer100km: 17,
|
|
2898
2888
|
batteryKWh: 20,
|
|
2899
2889
|
chargingHours: this.electricCarChargingTime === "day"
|
|
@@ -2953,103 +2943,149 @@ const SolarSystemForm = class {
|
|
|
2953
2943
|
obstructionPolygons: this.obstructionPolygons,
|
|
2954
2944
|
});
|
|
2955
2945
|
}
|
|
2946
|
+
isIOS() {
|
|
2947
|
+
return state.isIOS;
|
|
2948
|
+
}
|
|
2956
2949
|
render() {
|
|
2957
2950
|
const t = getLanguageStrings(state.settings.language);
|
|
2958
|
-
return (index.h("div", { key: '
|
|
2951
|
+
return (index.h("div", { key: '2dba1a7d4b79678b3361a902cde4f01b1a60723c', class: "flex flex-col justify-center items-center w-full h-full pt-4" // style={{
|
|
2959
2952
|
,
|
|
2960
2953
|
// display: (Object.keys(this.systemConfigs).length === 0)
|
|
2961
2954
|
// ? "none"
|
|
2962
2955
|
// : "flex",
|
|
2963
2956
|
// }}
|
|
2964
|
-
id: "solar-system-form" }, index.h("h1", { key: '
|
|
2965
|
-
|
|
2966
|
-
|
|
2967
|
-
|
|
2968
|
-
|
|
2969
|
-
|
|
2957
|
+
id: "solar-system-form" }, index.h("h1", { key: '0972b02752b45df6c041612092d464e92452b98a', class: "text-2xl font-bold text-[#271200] mb-4 w-full" }, t.solarSystemForm.title), index.h("div", { key: 'd66e6215be092ffed8fa69f876e2184ce734f9dc', class: "w-full bg-[#f3ebda] rounded-4xl p-6 space-y-6" }, index.h("div", { key: '5036c23117c8fdb9497746ad8eba7c0b4cf509e3', class: "space-y-4" }, index.h("h2", { key: 'f0342a639b9c11f6d30693da91001d01ea758de4', class: "text-lg font-semibold text-[#271200]" }, t.solarSystemForm.systemInformation), index.h("div", { key: 'bf6748d062b9e3d3505f77b3a3862be7f4b2d8af', class: "grid grid-rows-3 gap-0" }, index.h("div", { key: '21e6341bc4dadc41cfe755312ed6bf7ff24febbc', class: "grid grid-cols-2 gap-4" }, index.h("label", { key: 'ad9b6d44fa4a0feedcb67f9c697963af10ae3e5f', class: "block text-sm font-medium text-gray-600 mb-1" }, t.solarSystemForm.numberOfPanels), index.h("label", { key: '48045b48436b408c29e21f005fde2ace05d75703', class: "block text-sm font-medium text-gray-600 mb-1" }, t.solarSystemForm.panelPeakPower)), index.h("div", { key: '13c5228111f38d156672b74486804bfe34d28ad7', class: "grid grid-cols-2 gap-4" }, !this.isIOS()
|
|
2958
|
+
? (index.h("input", { type: "number", class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.numberOfPanels, readOnly: true }))
|
|
2959
|
+
: (index.h("input", { type: "number", min: "1", max: this.maxPanels, class: "flex-1 px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.numberOfPanels, onInput: (e) => {
|
|
2960
|
+
const value = parseInt(e.target
|
|
2961
|
+
.value);
|
|
2962
|
+
if (value >= 1 &&
|
|
2963
|
+
value <=
|
|
2964
|
+
this.maxPanels) {
|
|
2965
|
+
this.numberOfPanels = value;
|
|
2966
|
+
this.recalculate();
|
|
2967
|
+
}
|
|
2968
|
+
} })), index.h("input", { key: '53d8ea2e917661f9151ddf9b185af5d6756bf632', type: "number", class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.panelPeakPower, readonly: true })), index.h("div", { key: '17477ccb77a6f5953cf9976d743f3ba7009781af', class: "grid grid-cols-2 gap-4" }, index.h("div", { key: '85b218da4a521d88740d6f3921fb25cfbeaf7dbe', class: "w-full pt-2" }, !this.isIOS() &&
|
|
2969
|
+
(index.h("input", { key: '52e835a0cb277b040a36af6a06e312e9a573fe0f', 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-white", value: this.numberOfPanels, onInput: (e) => {
|
|
2970
|
+
this.numberOfPanels =
|
|
2971
|
+
parseInt(e.target
|
|
2972
|
+
.value);
|
|
2973
|
+
this.recalculate();
|
|
2974
|
+
} }))))), index.h("div", { key: 'afe5465d0eeb4de5f8cacb1defd003ebf67a8308', class: "bg-white rounded-4xl p-4" }, index.h("div", { key: 'caf3fa20ee512be50c0ee47dd446325589c708cb', class: "flex items-center justify-between" }, index.h("span", { key: '4478560c195bd1fb0c2a37b409fc94b437d89576', class: "text-gray-600" }, t.solarSystemForm.totalSystemPeakPower), index.h("span", { key: '955d70d3c451a120e939dd6812f6d5a56b93b91c', class: "text-xl font-bold text-[#271200]" }, (DEFAULT_SOLAR_PANEL_TYPE.kWattPeak *
|
|
2975
|
+
this.numberOfPanels).toFixed(1), " kW")))), index.h("div", { key: '7be99868bcb573b69940ae0eed1dd339c276182a', class: "space-y-4" }, index.h("h2", { key: '4c707b1f87c2f1ee48f21523910876298c1d50cc', class: "text-lg font-semibold text-[#271200]" }, t.solarSystemForm.householdConsumptionTitle), index.h("div", { key: '91275b282cd1deef545ccc09971c6e8f501c27a2', class: "grid grid-rows-2 gap-0" }, index.h("div", { key: 'a64d9f3934d296ee3efe68796d1dba323797d67d', class: "grid grid-cols-2 gap-4" }, index.h("label", { key: '63772879247a7c9a099fabcd3bcec1b0e1ab4ee8', class: "block text-sm font-medium text-gray-600" }, t.solarSystemForm.annualConsumption), index.h("label", { key: '6a5754992670dbe36b25f6bc0e39f4bab847dca0', class: "block text-sm font-medium text-gray-600" }, t.solarSystemForm.consumptionProfileTitle)), index.h("div", { key: 'cf7ff437e16df324a0f193e3b98828ec44d0c46f', class: "grid grid-cols-2 gap-4" }, index.h("input", { key: 'b4b67d847c8f8f9fae7a1a7d51d95cb50b8a258b', type: "number", class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.householdConsumption, onInput: (e) => {
|
|
2970
2976
|
this.householdConsumption = parseInt(e.target
|
|
2971
2977
|
.value);
|
|
2972
2978
|
this.recalculate();
|
|
2973
|
-
} }), index.h("select", { key: '
|
|
2979
|
+
} }), index.h("select", { key: '6673bebb683bf19abe42f519f1cb04b422c6b364', class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", onChange: (e) => {
|
|
2974
2980
|
this.consumptionProfile =
|
|
2975
2981
|
e.target
|
|
2976
2982
|
.value;
|
|
2977
2983
|
this.recalculate();
|
|
2978
|
-
} }, index.h("option", { key: '
|
|
2984
|
+
} }, index.h("option", { key: 'b2d9dd9c783e5f245cc0b2543334e3be9ae5bd69', value: "mostly_at_home", selected: this.consumptionProfile ===
|
|
2979
2985
|
"mostly_at_home" }, t.solarSystemForm.consumptionProfiles
|
|
2980
|
-
.mostlyAtHome), index.h("option", { key: '
|
|
2986
|
+
.mostlyAtHome), index.h("option", { key: 'eb3e39a87362b3d39ca11c00449456ec677cbfc8', value: "mostly_away", selected: this.consumptionProfile ===
|
|
2981
2987
|
"mostly_away" }, t.solarSystemForm.consumptionProfiles
|
|
2982
|
-
.mostlyAway))))), index.h("div", { key: '
|
|
2988
|
+
.mostlyAway))))), index.h("div", { key: '1e5da3eb5db4fcb7c48d667e0a2cd5fa7a54faed', class: "space-y-4" }, index.h("h2", { key: 'f9b05e006eee674279060a15f1f1dbb9d6c10d50', class: "text-lg font-semibold text-[#271200]" }, t.solarSystemForm.additionalComponents.title), index.h("div", { key: '0b9489a8e1ce2adcdce15f3223ac88601173a801', class: "flex flex-col gap-4" }, index.h("div", { key: 'c89bb7cc403c428bbd443ca87e8992e91785fde4', class: "flex flex-col bg-white rounded-4xl p-4 gap-4" }, index.h("div", { key: '273475b46f1486f1e7231f44349322a91c3c301b', class: "flex items-center justify-between" }, index.h("div", { key: '4bbf86342e38d59b24c3a7417374452a3c73b8ed', class: "flex items-center gap-2" }, index.h("input", { key: '124da317438aa1e19c3d5ac68af68266cd1e3564', type: "checkbox", id: "heatPump", class: "w-4 h-4 accent-[#964500] border-gray-300 rounded-full focus:ring-[#964500] focus:ring-offset-0 focus:ring-2", checked: this.heatPump > 0, onChange: (e) => {
|
|
2983
2989
|
this.heatPump =
|
|
2984
2990
|
e.target
|
|
2985
2991
|
.checked
|
|
2986
2992
|
? 100
|
|
2987
2993
|
: 0;
|
|
2988
2994
|
this.recalculate();
|
|
2989
|
-
} }), index.h("label", { key: '
|
|
2995
|
+
} }), index.h("label", { key: '7845fc7124ea276e780ee5f0e53b0795f254e31f', htmlFor: "heatPump", class: "text-gray-600" }, t.solarSystemForm
|
|
2990
2996
|
.additionalComponents
|
|
2991
|
-
.heatPump)), this.heatPump > 0 && (index.h("span", { key: '
|
|
2992
|
-
|
|
2993
|
-
.
|
|
2994
|
-
|
|
2995
|
-
|
|
2997
|
+
.heatPump)), (this.heatPump > 0 && !this.isIOS()) && (index.h("span", { key: '0eda4b5459b14430bc9be00ef740e216df7cd15c', class: "text-gray-600" }, this.heatPump, " m\u00B2"))), this.heatPump > 0 && (index.h("div", { key: '91f8bf5247aa936892ed10e3987f8201f078cd92', class: "flex flex-col gap-2" }, this.isIOS()
|
|
2998
|
+
? (index.h("div", { class: "flex items-center gap-2" }, index.h("input", { type: "number", min: "10", max: "300", step: "10", class: "flex-1 px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.heatPump, onInput: (e) => {
|
|
2999
|
+
const value = parseInt(e.target
|
|
3000
|
+
.value);
|
|
3001
|
+
if (value >= 10 &&
|
|
3002
|
+
value <= 300) {
|
|
3003
|
+
this.heatPump =
|
|
3004
|
+
value;
|
|
3005
|
+
this.recalculate();
|
|
3006
|
+
}
|
|
3007
|
+
} }), index.h("span", { class: "text-sm text-gray-600" }, "m\u00B2")))
|
|
3008
|
+
: (index.h("input", { type: "range", min: "10", max: "300", step: "10", class: "input-slider 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-white", value: this.heatPump, onInput: (e) => {
|
|
3009
|
+
this.heatPump =
|
|
3010
|
+
parseInt(e.target
|
|
3011
|
+
.value);
|
|
3012
|
+
this.recalculate();
|
|
3013
|
+
} }))))), index.h("div", { key: 'dde5da644a165acb42ae0c23c8a129851728fb40', class: "flex flex-col bg-white rounded-4xl p-4 gap-4" }, index.h("div", { key: '657c3e78f58d54e26305071d60948a334a06e68c', class: "flex items-center justify-between" }, index.h("div", { key: '88718f9d326fc4824d77f5ee1ad120684f42c5c7', class: "flex items-center gap-2" }, index.h("input", { key: 'e2f3c3f9978d11471aea4736745169aa61a90206', type: "checkbox", id: "electricCar", class: "w-4 h-4 accent-[#964500] border-gray-300 rounded focus:ring-[#964500] focus:ring-offset-0 focus:ring-2", checked: this.electricCar, onChange: (e) => {
|
|
2996
3014
|
this.electricCar =
|
|
2997
3015
|
e.target
|
|
2998
3016
|
.checked;
|
|
2999
3017
|
this.recalculate();
|
|
3000
|
-
} }), index.h("label", { key: '
|
|
3018
|
+
} }), index.h("label", { key: '6df782a0b807a3c4463686804e71a65360c651ac', htmlFor: "electricCar", class: "text-gray-600" }, t.solarSystemForm
|
|
3001
3019
|
.additionalComponents
|
|
3002
|
-
.electricCar))), this.electricCar && (index.h("div", { key: '
|
|
3020
|
+
.electricCar))), this.electricCar && (index.h("div", { key: 'f3d23a7c239c4a32bd838825fc5c2bdb018c0922', class: "flex flex-col gap-2" }, index.h("div", { key: 'bf5b72bdad1771baace0b191d698c2f083d50e19', class: "grid grid-cols-2 gap-4" }, index.h("label", { key: '6df23bf10da5d23735c3c5cfab6301a35d9575ec', class: "text-sm text-gray-600" }, t.solarSystemForm
|
|
3003
3021
|
.additionalComponents
|
|
3004
|
-
.chargingTime), index.h("
|
|
3022
|
+
.chargingTime), index.h("label", { key: 'c33783c4485f9076190f0c47992e1594a8cc3548', class: "text-sm text-gray-600" }, t.solarSystemForm
|
|
3023
|
+
.additionalComponents
|
|
3024
|
+
.kilometersPerYear)), index.h("div", { key: '5722c0e3fca87593f93bb22168a776dc7d12a51f', class: "grid grid-cols-2 gap-4" }, index.h("select", { key: '0f38ea2f92d1bbb1aa24dca501a46ef510c3de9d', class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", onChange: (e) => {
|
|
3005
3025
|
this.electricCarChargingTime =
|
|
3006
3026
|
e.target
|
|
3007
3027
|
.value;
|
|
3008
3028
|
this.recalculate();
|
|
3009
|
-
} }, index.h("option", { key: '
|
|
3029
|
+
} }, index.h("option", { key: 'b25ca2e4796760fb657905e3840c073696c9ced9', value: "day", selected: this
|
|
3010
3030
|
.electricCarChargingTime ===
|
|
3011
3031
|
"day" }, t.solarSystemForm
|
|
3012
3032
|
.additionalComponents
|
|
3013
|
-
.chargingTimeDay), index.h("option", { key: '
|
|
3033
|
+
.chargingTimeDay), index.h("option", { key: '8569ac468010bf4aa8017b04855a2c3eb929f9c3', value: "night", selected: this
|
|
3014
3034
|
.electricCarChargingTime ===
|
|
3015
3035
|
"night" }, t.solarSystemForm
|
|
3016
3036
|
.additionalComponents
|
|
3017
|
-
.chargingTimeNight))
|
|
3018
|
-
|
|
3019
|
-
|
|
3020
|
-
|
|
3037
|
+
.chargingTimeNight)), index.h("input", { key: '234a97ea1a54194dd5213debeafdcee3d18472af', type: "number", min: "1000", max: "50000", step: "1000", class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.kmDrivenPerYear, onInput: (e) => {
|
|
3038
|
+
this.kmDrivenPerYear =
|
|
3039
|
+
parseInt(e.target
|
|
3040
|
+
.value);
|
|
3021
3041
|
this.recalculate();
|
|
3022
|
-
} }))))), index.h("div", { key: '
|
|
3042
|
+
} }))))), index.h("div", { key: '2b9ec6f3abefbc9a12a0c412376a117201d9cbf7', class: "flex flex-col bg-white rounded-4xl p-4 gap-4" }, index.h("div", { key: 'b8007674c3f2fcaa9b1120f452804737c2e60b61', class: "flex items-center justify-between" }, index.h("label", { key: 'b10b40d2079c8a6643e0e5c7078170c8ec1fd07a', class: "text-gray-600" }, t.solarSystemForm.additionalComponents
|
|
3043
|
+
.battery), !this.isIOS() && (index.h("span", { key: '8abfc38292626294d96cd46134ae6c9efcd45caf', class: "text-gray-600" }, this.battery, " kWh"))), index.h("div", { key: '89dd22648545df7ea017a704793aeab8cf193437', class: "flex flex-col gap-2" }, this.isIOS()
|
|
3044
|
+
? (index.h("div", { class: "flex items-center gap-2" }, index.h("input", { type: "number", min: "0", max: "20", step: "1", class: "flex-1 px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.battery, onInput: (e) => {
|
|
3045
|
+
const value = parseInt(e.target
|
|
3046
|
+
.value);
|
|
3047
|
+
if (value >= 0 &&
|
|
3048
|
+
value <= 20) {
|
|
3049
|
+
this.battery =
|
|
3050
|
+
value;
|
|
3051
|
+
this.recalculate();
|
|
3052
|
+
}
|
|
3053
|
+
}, placeholder: "Battery capacity" }), index.h("span", { class: "text-sm text-gray-600" }, "kWh")))
|
|
3054
|
+
: (index.h("input", { type: "range", min: "0", max: "20", 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-white", value: this.battery, onInput: (e) => {
|
|
3055
|
+
this.battery = parseInt(e.target
|
|
3056
|
+
.value);
|
|
3057
|
+
this.recalculate();
|
|
3058
|
+
} })))))), index.h("div", { key: '8729a38d3c447d702dbd962ce732cb835683cc40', class: "space-y-4" }, index.h("h2", { key: '1baeb07b6e4d9b80d8d5238730c5f24679fd8056', class: "text-lg font-semibold text-[#271200]" }, t.solarSystemForm.electricityCostsTitle), index.h("div", { key: '55af89837e9c511c6e38d13e8b43edb3a3188831', class: "grid grid-rows-2 gap-0" }, index.h("div", { key: '7810a1fcfa5e3bd3bae3ae8860b5f3b88cffc7fd', class: "grid grid-cols-3 gap-4" }, index.h("label", { key: '93f0fdcad9d8a0293686630b5bd7c1de1f2ce6f3', class: "block text-sm font-medium text-gray-600 mb-1" }, t.solarSystemForm.electricityPrice), index.h("label", { key: '4a90ddf97d30c14e7dadc0668bd99b67b67fbe10', class: "block text-sm font-medium text-gray-600 mb-1" }, t.solarSystemForm.compensationRate), index.h("label", { key: '51d4537d803746c154a0beead97fc1385c5ce3ff', class: "block text-sm font-medium text-gray-600 mb-1" }, t.solarSystemForm.annualPriceIncrease)), index.h("div", { key: 'ffe8e05a5d0cb78ce9521e45bf1432f8cf071535', class: "grid grid-cols-3 gap-4" }, index.h("input", { key: '589327000adc4bf5611dbfeab5146cd9dbfcd117', type: "number", step: "0.01", class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.electricityPrice.toFixed(2), onInput: (e) => {
|
|
3023
3059
|
this.electricityPrice = parseFloat(e.target
|
|
3024
3060
|
.value);
|
|
3025
3061
|
this.recalculate();
|
|
3026
|
-
} }), index.h("input", { key: '
|
|
3062
|
+
} }), index.h("input", { key: '385e5e85ecde6812807e02c6fb5e45f64d41bb97', type: "number", step: "0.01", class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.compensationRate.toFixed(2), onInput: (e) => {
|
|
3027
3063
|
this.compensationRate = parseFloat(e.target
|
|
3028
3064
|
.value);
|
|
3029
3065
|
this.recalculate();
|
|
3030
|
-
} }), index.h("input", { key: '
|
|
3066
|
+
} }), index.h("input", { key: 'f71a1b7236c0ff45b24f1c012e4e6c5fb05f512c', type: "number", step: "0.1", class: "w-full px-4 py-2 rounded-4xl border border-gray-300 focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white", value: this.annualPriceIncrease.toFixed(1), onInput: (e) => {
|
|
3031
3067
|
this.annualPriceIncrease = parseFloat(e.target
|
|
3032
3068
|
.value);
|
|
3033
3069
|
this.recalculate();
|
|
3034
|
-
} })))), index.h("div", { key: '
|
|
3070
|
+
} })))), index.h("div", { key: 'ec6d113a5645a3e3de006a51ed2eb022f5545b2f', class: "space-y-4 pt-4 border-t border-gray-200" }, index.h("h2", { key: 'b1f8e2e61ef2e0155867bde9ca7b72ccc409bcca', class: "text-lg font-semibold text-[#271200]" }, t.solarSystemForm.resultsTitle), index.h("div", { key: 'f6f6baef1de50a71e400a86c7cf0af838430d759', class: "bg-white rounded-4xl p-4" }, index.h("div", { key: '21bd3865da59dfa154c371b1f0df48e94fbe2ebe', class: "flex items-center justify-between" }, index.h("span", { key: '8fedb2c918d3aa1d3fadb0d07aaabccb2d78281f', class: "text-gray-600" }, t.solarSystemForm.autonomy), index.h("span", { key: '14600dda39b1cbee3281145836b03087bfaf99e7', class: "text-xl font-bold text-[#271200]" }, this.autonomy > 100
|
|
3035
3071
|
? "100"
|
|
3036
|
-
: this.autonomy.toFixed(1), "%")), index.h("div", { key: '
|
|
3037
|
-
.savingsDisclaimer))), index.h("span", { key: '
|
|
3038
|
-
.solarSystemForm.year)), index.h("div", { key: '
|
|
3072
|
+
: this.autonomy.toFixed(1), "%")), index.h("div", { key: '8be640248569dfcae408ca9b9552d23147129203', class: "flex items-center justify-between mt-4" }, index.h("div", { key: 'dbfc7ce335696180abfe84e5b976cdd4e820267e', class: "flex items-center gap-2" }, index.h("span", { key: 'b81ab0aca1d04a307a88160215188c986da9e14e', class: "text-gray-600" }, t.solarSystemForm.costSavings), index.h("div", { key: 'd188d4ebfc268417cafc92513ab60dda64ee4a2c', class: "relative group" }, index.h("svg", { key: '432b93be3b94a02afd9594183ea7aad458851cb8', xmlns: "http://www.w3.org/2000/svg", class: "h-5 w-5 text-gray-400 cursor-help", viewBox: "0 0 20 20", fill: "currentColor" }, index.h("path", { key: '85c79119ab2e4986dd80ebc615067881be8aef47', "fill-rule": "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z", "clip-rule": "evenodd" })), index.h("div", { key: '97d984d70cc4e468c96d1efa407fbb5d907f878f', class: "absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 w-64 p-2 bg-gray-800 text-white text-sm rounded-lg opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none" }, t.solarSystemForm
|
|
3073
|
+
.savingsDisclaimer))), index.h("span", { key: '2ebf755861a392d0334051bc74dba3ecf3da54c8', class: "text-xl font-bold text-green-600" }, this.costSavings.toFixed(2), "\u20AC/", t
|
|
3074
|
+
.solarSystemForm.year)), index.h("div", { key: 'e8d6aed4a3090691a8e099033e10fd7402101bd0', class: "flex items-center justify-between mt-4" }, index.h("div", { key: '8620e5ee6cc66670ee8edc67e31ad47f5e2e7cfc', class: "flex items-center gap-2" }, index.h("span", { key: '7eeb068aa83f5f022f4ae89ef101239370717fb8', class: "text-gray-600" }, "Einspeiseverg\u00FCtung 25 Jahre")), index.h("span", { key: '2cf06969e5e77e70059e1e9394f2d8524301929c', class: "text-xl font-bold text-green-600" }, this.compensation25Years.toFixed(2), "\u20AC")), index.h("div", { key: '36601f46327e20a1208647b83d58bd4dbf74d27f', class: "flex items-center justify-between mt-4" }, index.h("div", { key: 'a14b9f951cf78e264836c2324ca67200b00d19ca', class: "flex items-center gap-2" }, index.h("span", { key: 'b10ccfdd861677e499c0ca6932359aed155c77fb', class: "text-gray-600" }, "Geldwerter Vorteil 25 Jahre")), index.h("span", { key: '4d76e1c00dc6faf30a136d4b87a9e48b10295c21', class: "text-xl font-bold text-green-600" }, this.savedCosts25Years.toFixed(2), "\u20AC")))), index.h("div", { key: '86702fecf5d88cffad85540fd0a6bdf85a7d2819', class: "space-y-4 pt-4 border-t border-gray-200" }, index.h("h2", { key: 'e5a175e49d3005cf3550870ea701f9f2a9c01563', class: "text-lg font-semibold text-[#271200]" }, t.solarSystemForm.requestOffer), index.h("div", { key: '90835fc6003c9c3aac3599b0a84c17a4db8fb234', class: "grid grid-rows-2 gap-0" }, index.h("div", { key: 'e06697367b1c321538d930de33135d24bc924c25', class: "grid grid-cols-2 gap-4" }, index.h("label", { key: '99dd59c35f123f57b8ebfc78d0c4f7dc204fb515', class: "block text-sm font-medium text-gray-600 mb-1" }, t.solarSystemForm.name), index.h("label", { key: '0a47717b2397f4cae1540992a43bf167b2f6a9a0', class: "block text-sm font-medium text-gray-600 mb-1" }, t.solarSystemForm.email)), index.h("div", { key: 'f23dba91b9af821b44119e71cc5649f61ce3e8cb', class: "grid grid-cols-2 gap-4" }, index.h("input", { key: '91bfb8d4c0ec6f9bc92ae3c8b96ab8cb22338c6f', type: "text", class: `w-full px-4 py-2 rounded-4xl border ${this.nameError
|
|
3039
3075
|
? "border-red-500"
|
|
3040
3076
|
: "border-gray-300"} focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white`, value: this.name, onInput: (e) => {
|
|
3041
3077
|
this.name =
|
|
3042
3078
|
e.target
|
|
3043
3079
|
.value;
|
|
3044
3080
|
this.validateForm();
|
|
3045
|
-
}, placeholder: "Your name" }), this.nameError && (index.h("p", { key: '
|
|
3081
|
+
}, placeholder: "Your name" }), this.nameError && (index.h("p", { key: '393b5f1217e7f130d03ef1ce33f2c80d0ece5287', class: "text-red-500 text-sm mt-1" }, this.nameError)), index.h("input", { key: '3dad5518450c61625c301028e2ccac01ed3c1068', type: "email", class: `w-full px-4 py-2 rounded-4xl border ${this.emailError
|
|
3046
3082
|
? "border-red-500"
|
|
3047
3083
|
: "border-gray-300"} focus:ring-2 focus:ring-[#964500] focus:border-transparent bg-white`, value: this.email, onInput: (e) => {
|
|
3048
3084
|
this.email =
|
|
3049
3085
|
e.target
|
|
3050
3086
|
.value;
|
|
3051
3087
|
this.validateForm();
|
|
3052
|
-
}, placeholder: "your.email@example.com" }), this.emailError && (index.h("p", { key: '
|
|
3088
|
+
}, placeholder: "your.email@example.com" }), this.emailError && (index.h("p", { key: 'ab9abb1cf9d94af195ab1e0db0e4ae3bfa1f9dac', class: "text-red-500 text-sm mt-1" }, this.emailError)))), index.h("div", { key: '30e9097ad6a2ac886da307dc199ef19f3a685e4a', class: "flex justify-center" }, index.h("button", { key: '6a27417c30b6dc43685e03b30593a97a70c8caa0', onClick: () => this.handleRequestOffer(), disabled: !this.name.trim() ||
|
|
3053
3089
|
!this.email.trim() || !!this.nameError ||
|
|
3054
3090
|
!!this.emailError, class: "px-4 py-2 bg-[#271200] rounded-4xl hover:bg-[#964500] transition-colors duration-200", style: { color: "white" } }, t.solarSystemForm.requestOfferButton))))));
|
|
3055
3091
|
}
|