blue-chestnut-solar-expert 0.0.54 → 0.0.56
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/app-globals-I24yU8do.js +10 -0
- package/dist/cjs/app-globals-I24yU8do.js.map +1 -0
- package/dist/cjs/basedecoder-CQuzfSgz.js +116 -0
- package/dist/cjs/basedecoder-CQuzfSgz.js.map +1 -0
- package/dist/cjs/deflate-AzGzQSW2.js +17 -0
- package/dist/cjs/deflate-AzGzQSW2.js.map +1 -0
- package/dist/cjs/eraser-icon_18.cjs.entry.js +30 -0
- package/dist/cjs/eraser-icon_18.cjs.entry.js.map +1 -0
- package/dist/cjs/index-HgRXF6kp.js +1470 -0
- package/dist/cjs/index-HgRXF6kp.js.map +1 -0
- package/dist/cjs/index.cjs.js +7 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/jpeg-Bx3bTm32.js +904 -0
- package/dist/cjs/jpeg-Bx3bTm32.js.map +1 -0
- package/dist/cjs/lerc-BC1SKbTC.js +4427 -0
- package/dist/cjs/lerc-BC1SKbTC.js.map +1 -0
- package/dist/cjs/loader.cjs.js +18 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/loading-widget.cjs.entry.js +22 -0
- package/dist/cjs/loading-widget.cjs.entry.js.map +1 -0
- package/dist/cjs/loading-widget.entry.cjs.js.map +1 -0
- package/dist/cjs/lzw-BmFug486.js +140 -0
- package/dist/cjs/lzw-BmFug486.js.map +1 -0
- package/dist/cjs/packbits-CYx9fB0v.js +35 -0
- package/dist/cjs/packbits-CYx9fB0v.js.map +1 -0
- package/dist/cjs/pako.esm-0mKI6Jik.js +3243 -0
- package/dist/cjs/pako.esm-0mKI6Jik.js.map +1 -0
- package/dist/cjs/raw-DC82yoyr.js +16 -0
- package/dist/cjs/raw-DC82yoyr.js.map +1 -0
- package/dist/cjs/stencil-library.cjs.js +30 -0
- package/dist/cjs/stencil-library.cjs.js.map +1 -0
- package/dist/cjs/webimage-Dc0t2xAB.js +49 -0
- package/dist/cjs/webimage-Dc0t2xAB.js.map +1 -0
- package/dist/collection/build/assets/tutorial1.mp4 +0 -0
- package/dist/collection/build/assets/tutorial2.mp4 +0 -0
- package/dist/collection/build/assets/tutorial3.mp4 +0 -0
- package/dist/collection/collection-manifest.json +30 -0
- package/dist/collection/components/icons/eraser.js +64 -0
- package/dist/collection/components/icons/eraser.js.map +1 -0
- package/dist/collection/components/icons/house.js +64 -0
- package/dist/collection/components/icons/house.js.map +1 -0
- package/dist/collection/components/icons/icon.js +108 -0
- package/dist/collection/components/icons/icon.js.map +1 -0
- package/dist/collection/components/icons/marker.js +64 -0
- package/dist/collection/components/icons/marker.js.map +1 -0
- package/dist/collection/components/icons/move.js +64 -0
- package/dist/collection/components/icons/move.js.map +1 -0
- package/dist/collection/components/icons/octagonMinus.js +64 -0
- package/dist/collection/components/icons/octagonMinus.js.map +1 -0
- package/dist/collection/components/icons/search.js +64 -0
- package/dist/collection/components/icons/search.js.map +1 -0
- package/dist/collection/components/icons/settings.js +64 -0
- package/dist/collection/components/icons/settings.js.map +1 -0
- package/dist/collection/components/icons/undo.js +64 -0
- package/dist/collection/components/icons/undo.js.map +1 -0
- package/dist/collection/components/map-draw/map-draw.js +797 -0
- package/dist/collection/components/map-draw/map-draw.js.map +1 -0
- package/dist/collection/components/map-draw/map-selector.js +246 -0
- package/dist/collection/components/map-draw/map-selector.js.map +1 -0
- package/dist/collection/components/map-draw/polygon-buttons.js +86 -0
- package/dist/collection/components/map-draw/polygon-buttons.js.map +1 -0
- package/dist/collection/components/map-draw/polygon-information.js +204 -0
- package/dist/collection/components/map-draw/polygon-information.js.map +1 -0
- package/dist/collection/components/map-draw/tool-box.js +108 -0
- package/dist/collection/components/map-draw/tool-box.js.map +1 -0
- package/dist/collection/components/map-draw/tutorial-component.js +118 -0
- package/dist/collection/components/map-draw/tutorial-component.js.map +1 -0
- package/dist/collection/components/settings/settings.js +127 -0
- package/dist/collection/components/settings/settings.js.map +1 -0
- package/dist/collection/components/solar-expert/solar-expert.js +239 -0
- package/dist/collection/components/solar-expert/solar-expert.js.map +1 -0
- package/dist/collection/components/solar-system-form/solar-system-form.js +573 -0
- package/dist/collection/components/solar-system-form/solar-system-form.js.map +1 -0
- package/dist/collection/components/widgets/loading-widget.js +18 -0
- package/dist/collection/components/widgets/loading-widget.js.map +1 -0
- package/dist/{stencil-library/config-CWfV1nKn.js → collection/config.js} +4 -10
- package/dist/collection/config.js.map +1 -0
- package/dist/collection/constants.js +90 -0
- package/dist/collection/constants.js.map +1 -0
- package/dist/collection/index.js +2 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/output.css +1175 -0
- package/dist/collection/store.js +43 -0
- package/dist/collection/store.js.map +1 -0
- package/dist/collection/types/lang.js +2 -0
- package/dist/collection/types/lang.js.map +1 -0
- package/dist/collection/types/shapes.js +2 -0
- package/dist/collection/types/shapes.js.map +1 -0
- package/dist/{stencil-library/api-Did5lAE0.js → collection/utils/api.js} +27 -32
- package/dist/collection/utils/api.js.map +1 -0
- package/dist/collection/utils/images.js +2 -0
- package/dist/collection/utils/images.js.map +1 -0
- package/dist/collection/utils/lang/english.js +150 -0
- package/dist/collection/utils/lang/english.js.map +1 -0
- package/dist/collection/utils/lang/general.js +30 -0
- package/dist/collection/utils/lang/general.js.map +1 -0
- package/dist/collection/utils/lang/german.js +150 -0
- package/dist/collection/utils/lang/german.js.map +1 -0
- package/dist/collection/utils/lang/spanish.js +150 -0
- package/dist/collection/utils/lang/spanish.js.map +1 -0
- package/dist/{stencil-library/tools-BCET7NeO.js → collection/utils/render/tools.js} +10 -15
- package/dist/collection/utils/render/tools.js.map +1 -0
- package/dist/collection/utils/solar.js +135 -0
- package/dist/collection/utils/solar.js.map +1 -0
- package/dist/collection/utils/theme.js +97 -0
- package/dist/collection/utils/theme.js.map +1 -0
- package/dist/{stencil-library/utils-BCUZxI9u.js → collection/utils/utils.js} +3 -9
- package/dist/collection/utils/utils.js.map +1 -0
- package/dist/components/eraser-icon.js +11 -0
- package/dist/components/eraser-icon.js.map +1 -0
- package/dist/components/house-icon.js +11 -0
- package/dist/components/house-icon.js.map +1 -0
- package/dist/components/icon-selector.js +11 -0
- package/dist/components/icon-selector.js.map +1 -0
- package/dist/components/index.js +1269 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/loading-widget.js +38 -0
- package/dist/components/loading-widget.js.map +1 -0
- package/dist/components/map-draw.js +11 -0
- package/dist/components/map-draw.js.map +1 -0
- package/dist/components/map-selector.js +11 -0
- package/dist/components/map-selector.js.map +1 -0
- package/dist/components/{solar-calculator.d.ts → marker-icon.d.ts} +4 -4
- package/dist/components/marker-icon.js +11 -0
- package/dist/components/marker-icon.js.map +1 -0
- package/dist/components/move-icon.js +11 -0
- package/dist/components/move-icon.js.map +1 -0
- package/dist/components/octagon-minus-icon.js +11 -0
- package/dist/components/octagon-minus-icon.js.map +1 -0
- package/dist/components/p-B54Ul0nf.js +15 -0
- package/dist/components/p-B54Ul0nf.js.map +1 -0
- package/dist/components/p-B5WTRCh8.js +3241 -0
- package/dist/components/p-B5WTRCh8.js.map +1 -0
- package/dist/components/p-B7UJpRdF.js +40 -0
- package/dist/components/p-B7UJpRdF.js.map +1 -0
- package/dist/components/p-BELtn8mh.js +40 -0
- package/dist/components/p-BELtn8mh.js.map +1 -0
- package/dist/components/p-BFxdD9Vs.js +40 -0
- package/dist/components/p-BFxdD9Vs.js.map +1 -0
- package/dist/{stencil-library/jpeg-CjOJHUd1.js → components/p-BGoSj_DR.js} +3 -11
- package/dist/components/p-BGoSj_DR.js.map +1 -0
- package/dist/components/p-BXbeMtbx.js +76 -0
- package/dist/components/p-BXbeMtbx.js.map +1 -0
- package/dist/components/p-BYE5N70N.js +163 -0
- package/dist/components/p-BYE5N70N.js.map +1 -0
- package/dist/components/p-BnTinS5t.js +40 -0
- package/dist/components/p-BnTinS5t.js.map +1 -0
- package/dist/components/p-BsLLB46f.js +114 -0
- package/dist/components/p-BsLLB46f.js.map +1 -0
- package/dist/{stencil-library/packbits-BMYGgS0z.js → components/p-ByX6QP-E.js} +3 -9
- package/dist/components/p-ByX6QP-E.js.map +1 -0
- package/dist/{stencil-library/lerc-BQF80JgE.js → components/p-CH_OwRlu.js} +1981 -27
- package/dist/components/p-CH_OwRlu.js.map +1 -0
- package/dist/components/p-CO7fYxHj.js +40 -0
- package/dist/components/p-CO7fYxHj.js.map +1 -0
- package/dist/{stencil-library/store-4trH9erz.js → components/p-CRQ8cKpY.js} +72 -9
- package/dist/components/p-CRQ8cKpY.js.map +1 -0
- package/dist/components/p-CZydnQHs.js +114 -0
- package/dist/components/p-CZydnQHs.js.map +1 -0
- package/dist/components/p-CcItlhA2.js +60 -0
- package/dist/components/p-CcItlhA2.js.map +1 -0
- package/dist/{stencil-library/webimage-V5ihYILu.js → components/p-Cgchl6bA.js} +3 -9
- package/dist/components/p-Cgchl6bA.js.map +1 -0
- package/dist/components/p-DJcc5dax.js +1959 -0
- package/dist/components/p-DJcc5dax.js.map +1 -0
- package/dist/components/p-Dcu7-bdb.js +623 -0
- package/dist/components/p-Dcu7-bdb.js.map +1 -0
- package/dist/components/p-DotCjbjt.js +40 -0
- package/dist/components/p-DotCjbjt.js.map +1 -0
- package/dist/components/p-Dqekrz_n.js +40 -0
- package/dist/components/p-Dqekrz_n.js.map +1 -0
- package/dist/components/p-DvYICeab.js +40 -0
- package/dist/components/p-DvYICeab.js.map +1 -0
- package/dist/components/p-Dvlk0vkV.js +47 -0
- package/dist/components/p-Dvlk0vkV.js.map +1 -0
- package/dist/components/p-N0461-xw.js +15944 -0
- package/dist/components/p-N0461-xw.js.map +1 -0
- package/dist/components/p-WmcSqXD8.js +14 -0
- package/dist/components/p-WmcSqXD8.js.map +1 -0
- package/dist/components/p-j-vOrhhh.js +114 -0
- package/dist/components/p-j-vOrhhh.js.map +1 -0
- package/dist/{stencil-library/lzw-PA2aOuVK.js → components/p-q8auDIJ2.js} +4 -10
- package/dist/components/p-q8auDIJ2.js.map +1 -0
- package/dist/components/polygon-buttons.js +11 -0
- package/dist/components/polygon-buttons.js.map +1 -0
- package/dist/components/polygon-information.js +11 -0
- package/dist/components/polygon-information.js.map +1 -0
- package/dist/components/search-icon.js +11 -0
- package/dist/components/search-icon.js.map +1 -0
- package/dist/components/settings-icon.js +11 -0
- package/dist/components/settings-icon.js.map +1 -0
- package/dist/components/settings-modal.js +11 -0
- package/dist/components/settings-modal.js.map +1 -0
- package/dist/components/solar-expert.js +373 -0
- package/dist/components/solar-expert.js.map +1 -0
- package/dist/components/solar-system-form.js +11 -0
- package/dist/components/solar-system-form.js.map +1 -0
- package/dist/components/tool-box.js +11 -0
- package/dist/components/tool-box.js.map +1 -0
- package/dist/components/tutorial-component.d.ts +11 -0
- package/dist/components/tutorial-component.js +11 -0
- package/dist/components/tutorial-component.js.map +1 -0
- package/dist/components/undo-icon.js +11 -0
- package/dist/components/undo-icon.js.map +1 -0
- package/dist/esm/basedecoder-j-vOrhhh.js +114 -0
- package/dist/esm/basedecoder-j-vOrhhh.js.map +1 -0
- package/dist/esm/deflate-DHgPf9CO.js +15 -0
- package/dist/{stencil-library/deflate-BrCNE9ec.js.map → esm/deflate-DHgPf9CO.js.map} +1 -1
- package/dist/esm/eraser-icon_18.entry.js +7 -0
- package/dist/esm/eraser-icon_18.entry.js.map +1 -0
- package/dist/esm/index-C2JRBB5c.js +1458 -0
- package/dist/esm/index-C2JRBB5c.js.map +1 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/jpeg-CJLm1GkA.js +902 -0
- package/dist/esm/jpeg-CJLm1GkA.js.map +1 -0
- package/dist/esm/lerc-C1dTV3Ec.js +4424 -0
- package/dist/esm/lerc-C1dTV3Ec.js.map +1 -0
- package/dist/esm/loader.js +16 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/loading-widget.entry.js +20 -0
- package/dist/esm/loading-widget.entry.js.map +1 -0
- package/dist/esm/lzw-DaOzWJUD.js +138 -0
- package/dist/esm/lzw-DaOzWJUD.js.map +1 -0
- package/dist/esm/packbits-CZPyx9kx.js +33 -0
- package/dist/esm/packbits-CZPyx9kx.js.map +1 -0
- package/dist/esm/pako.esm-B5WTRCh8.js +3241 -0
- package/dist/{stencil-library/pako.esm-CPorU236.js.map → esm/pako.esm-B5WTRCh8.js.map} +1 -1
- package/dist/esm/raw-pqeeWc2_.js +14 -0
- package/dist/esm/raw-pqeeWc2_.js.map +1 -0
- package/dist/esm/stencil-library.js +26 -0
- package/dist/esm/stencil-library.js.map +1 -0
- package/dist/esm/webimage-BiHardhv.js +47 -0
- package/dist/{stencil-library/webimage-V5ihYILu.js.map → esm/webimage-BiHardhv.js.map} +1 -1
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/stencil-library/build/assets/tutorial1.mp4 +0 -0
- package/dist/stencil-library/build/assets/tutorial2.mp4 +0 -0
- package/dist/stencil-library/build/assets/tutorial3.mp4 +0 -0
- package/dist/stencil-library/index.esm.js +1 -13
- package/dist/stencil-library/index.esm.js.map +1 -1
- package/dist/stencil-library/loading-widget.entry.esm.js.map +1 -1
- package/dist/stencil-library/p-0cc467c4.entry.js +2 -0
- package/dist/stencil-library/p-0cc467c4.entry.js.map +1 -0
- package/dist/stencil-library/p-B54Ul0nf.js +2 -0
- package/dist/stencil-library/p-B54Ul0nf.js.map +1 -0
- package/dist/stencil-library/p-B5WTRCh8.js +2 -0
- package/dist/stencil-library/p-B5WTRCh8.js.map +1 -0
- package/dist/stencil-library/p-BGoSj_DR.js +2 -0
- package/dist/stencil-library/p-BGoSj_DR.js.map +1 -0
- package/dist/stencil-library/p-ByX6QP-E.js +2 -0
- package/dist/stencil-library/p-ByX6QP-E.js.map +1 -0
- package/dist/stencil-library/p-C2JRBB5c.js +3 -0
- package/dist/stencil-library/p-C2JRBB5c.js.map +1 -0
- package/dist/stencil-library/p-CX8V3eiN.js +2 -0
- package/dist/stencil-library/p-CX8V3eiN.js.map +1 -0
- package/dist/stencil-library/p-Cgchl6bA.js +2 -0
- package/dist/stencil-library/p-Cgchl6bA.js.map +1 -0
- package/dist/stencil-library/p-DN5z5Lnk.js +2 -0
- package/dist/stencil-library/p-DN5z5Lnk.js.map +1 -0
- package/dist/stencil-library/p-DYtW7_ih.js +10 -0
- package/dist/stencil-library/p-DYtW7_ih.js.map +1 -0
- package/dist/stencil-library/p-WmcSqXD8.js +2 -0
- package/dist/stencil-library/p-WmcSqXD8.js.map +1 -0
- package/dist/stencil-library/p-d3e17162.entry.js +2 -0
- package/dist/stencil-library/p-d3e17162.entry.js.map +1 -0
- package/dist/stencil-library/p-j-vOrhhh.js +2 -0
- package/dist/stencil-library/p-j-vOrhhh.js.map +1 -0
- package/dist/stencil-library/p-q8auDIJ2.js +2 -0
- package/dist/stencil-library/p-q8auDIJ2.js.map +1 -0
- package/dist/stencil-library/stencil-library.esm.js +1 -52
- package/dist/stencil-library/stencil-library.esm.js.map +1 -1
- package/dist/types/components/icons/marker.d.ts +5 -0
- package/dist/types/components/map-draw/map-draw.d.ts +8 -1
- package/dist/types/components/map-draw/map-selector.d.ts +1 -0
- package/dist/types/components/map-draw/polygon-buttons.d.ts +0 -1
- package/dist/types/components/map-draw/polygon-information.d.ts +2 -0
- package/dist/types/components/map-draw/tutorial-component.d.ts +8 -0
- package/dist/types/components.d.ts +42 -17
- package/dist/types/types/lang.d.ts +21 -0
- package/dist/types/utils/api.d.ts +1 -1
- package/dist/types/utils/images.d.ts +1 -0
- package/package.json +2 -1
- package/dist/stencil-library/api-90JQS7b6.js +0 -104
- package/dist/stencil-library/api-90JQS7b6.js.map +0 -1
- package/dist/stencil-library/api-B5514wut.js +0 -102
- package/dist/stencil-library/api-B5514wut.js.map +0 -1
- package/dist/stencil-library/api-CLbMaqt3.js +0 -103
- package/dist/stencil-library/api-CLbMaqt3.js.map +0 -1
- package/dist/stencil-library/api-Cfi-C6kT.js +0 -104
- package/dist/stencil-library/api-Cfi-C6kT.js.map +0 -1
- package/dist/stencil-library/api-CiNFC5mG.js +0 -104
- package/dist/stencil-library/api-CiNFC5mG.js.map +0 -1
- package/dist/stencil-library/api-D_61gY2X.js +0 -102
- package/dist/stencil-library/api-D_61gY2X.js.map +0 -1
- package/dist/stencil-library/api-Did5lAE0.js.map +0 -1
- package/dist/stencil-library/api-S3oJcLL5.js +0 -103
- package/dist/stencil-library/api-S3oJcLL5.js.map +0 -1
- package/dist/stencil-library/api-iAs1ZQr1.js +0 -104
- package/dist/stencil-library/api-iAs1ZQr1.js.map +0 -1
- package/dist/stencil-library/api-vropRvpT.js +0 -102
- package/dist/stencil-library/api-vropRvpT.js.map +0 -1
- package/dist/stencil-library/config-CWfV1nKn.js.map +0 -1
- package/dist/stencil-library/constants-pXQQsEkH.js +0 -1519
- package/dist/stencil-library/constants-pXQQsEkH.js.map +0 -1
- package/dist/stencil-library/decoder-BDfrXE7e.js +0 -39
- package/dist/stencil-library/decoder-BDfrXE7e.js.map +0 -1
- package/dist/stencil-library/deflate-BrCNE9ec.js +0 -21
- package/dist/stencil-library/eraser-icon.entry.esm.js.map +0 -1
- package/dist/stencil-library/eraser-icon.entry.js +0 -22
- package/dist/stencil-library/eraser-icon.entry.js.map +0 -1
- package/dist/stencil-library/house-icon.entry.esm.js.map +0 -1
- package/dist/stencil-library/house-icon.entry.js +0 -22
- package/dist/stencil-library/house-icon.entry.js.map +0 -1
- package/dist/stencil-library/icon-selector.entry.esm.js.map +0 -1
- package/dist/stencil-library/icon-selector.entry.js +0 -44
- package/dist/stencil-library/icon-selector.entry.js.map +0 -1
- package/dist/stencil-library/index-CChkgM3J.js +0 -414
- package/dist/stencil-library/index-CChkgM3J.js.map +0 -1
- package/dist/stencil-library/index-Cx8GOJRA.js +0 -4172
- package/dist/stencil-library/index-Cx8GOJRA.js.map +0 -1
- package/dist/stencil-library/jpeg-CjOJHUd1.js.map +0 -1
- package/dist/stencil-library/lerc-BQF80JgE.js.map +0 -1
- package/dist/stencil-library/loading-widget.entry.js +0 -20
- package/dist/stencil-library/loading-widget.entry.js.map +0 -1
- package/dist/stencil-library/lzw-PA2aOuVK.js.map +0 -1
- package/dist/stencil-library/map-draw-CaQc1QTP.js +0 -25429
- package/dist/stencil-library/map-draw-CaQc1QTP.js.map +0 -1
- package/dist/stencil-library/map-draw.entry.esm.js.map +0 -1
- package/dist/stencil-library/map-draw.entry.js +0 -12
- package/dist/stencil-library/map-draw.entry.js.map +0 -1
- package/dist/stencil-library/map-selector.entry.esm.js.map +0 -1
- package/dist/stencil-library/map-selector.entry.js +0 -171
- package/dist/stencil-library/map-selector.entry.js.map +0 -1
- package/dist/stencil-library/move-icon.entry.esm.js.map +0 -1
- package/dist/stencil-library/move-icon.entry.js +0 -22
- package/dist/stencil-library/move-icon.entry.js.map +0 -1
- package/dist/stencil-library/octagon-minus-icon.entry.esm.js.map +0 -1
- package/dist/stencil-library/octagon-minus-icon.entry.js +0 -22
- package/dist/stencil-library/octagon-minus-icon.entry.js.map +0 -1
- package/dist/stencil-library/packbits-BMYGgS0z.js.map +0 -1
- package/dist/stencil-library/pako.esm-CPorU236.js +0 -6881
- package/dist/stencil-library/polygon-buttons.entry.esm.js.map +0 -1
- package/dist/stencil-library/polygon-buttons.entry.js +0 -30
- package/dist/stencil-library/polygon-buttons.entry.js.map +0 -1
- package/dist/stencil-library/polygon-information.entry.esm.js.map +0 -1
- package/dist/stencil-library/polygon-information.entry.js +0 -53
- package/dist/stencil-library/polygon-information.entry.js.map +0 -1
- package/dist/stencil-library/raw-D-Vfg78n.js +0 -20
- package/dist/stencil-library/raw-D-Vfg78n.js.map +0 -1
- package/dist/stencil-library/search-icon.entry.esm.js.map +0 -1
- package/dist/stencil-library/search-icon.entry.js +0 -22
- package/dist/stencil-library/search-icon.entry.js.map +0 -1
- package/dist/stencil-library/settings-icon.entry.esm.js.map +0 -1
- package/dist/stencil-library/settings-icon.entry.js +0 -22
- package/dist/stencil-library/settings-icon.entry.js.map +0 -1
- package/dist/stencil-library/settings-modal.entry.esm.js.map +0 -1
- package/dist/stencil-library/settings-modal.entry.js +0 -58
- package/dist/stencil-library/settings-modal.entry.js.map +0 -1
- package/dist/stencil-library/solar-calculator.entry.esm.js.map +0 -1
- package/dist/stencil-library/solar-calculator.entry.js +0 -26666
- package/dist/stencil-library/solar-calculator.entry.js.map +0 -1
- package/dist/stencil-library/solar-expert.entry.esm.js.map +0 -1
- package/dist/stencil-library/solar-expert.entry.js +0 -241
- package/dist/stencil-library/solar-expert.entry.js.map +0 -1
- package/dist/stencil-library/solar-system-form.entry.esm.js.map +0 -1
- package/dist/stencil-library/solar-system-form.entry.js +0 -444
- package/dist/stencil-library/solar-system-form.entry.js.map +0 -1
- package/dist/stencil-library/store-4trH9erz.js.map +0 -1
- package/dist/stencil-library/tool-box.entry.esm.js.map +0 -1
- package/dist/stencil-library/tool-box.entry.js +0 -36
- package/dist/stencil-library/tool-box.entry.js.map +0 -1
- package/dist/stencil-library/tools-BCET7NeO.js.map +0 -1
- package/dist/stencil-library/undo-icon.entry.esm.js.map +0 -1
- package/dist/stencil-library/undo-icon.entry.js +0 -22
- package/dist/stencil-library/undo-icon.entry.js.map +0 -1
- package/dist/stencil-library/utils-BCUZxI9u.js.map +0 -1
- package/dist/types/components/solar-calculator/solar-calculator.d.ts +0 -15
- /package/dist/{stencil-library → esm}/app-globals-CX8V3eiN.js +0 -0
- /package/dist/{stencil-library → esm}/app-globals-CX8V3eiN.js.map +0 -0
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { getLanguageStrings } from "../../utils/lang/general";
|
|
3
|
+
import { state } from "../../store";
|
|
4
|
+
import { azimuthToCardinal } from "../../utils/utils";
|
|
5
|
+
export class PolygonInformation {
|
|
6
|
+
currentPolygon;
|
|
7
|
+
numberOfPanels;
|
|
8
|
+
handleAzimuthChange;
|
|
9
|
+
handlePitchChange;
|
|
10
|
+
calculateSolarPanels;
|
|
11
|
+
markAsFlatRoof;
|
|
12
|
+
currentTool;
|
|
13
|
+
render() {
|
|
14
|
+
const t = getLanguageStrings(state.settings.language);
|
|
15
|
+
// console.log(this.currentPolygon);
|
|
16
|
+
return (h("div", { key: 'ea12d974f8928984d3ef4138bdd516dec317c5b0', class: "flex gap-4 flex-row justify-center items-center w-full rounded-4xl pb-2", style: {
|
|
17
|
+
border: "1px solid var(--color-border)",
|
|
18
|
+
} }, h("div", { key: 'dd5c55a781b771779783e1e90c5918089d668de9', class: "w-full bg-primary rounded-4xl p-3 text-secondary" }, h("h3", { key: 'beb6358d3ec077a11163f377829182f0d21a115d', class: "text-lg font-semibold mb-4 text-center" }, t.mapDraw.information), h("polygon-buttons", { key: '1d866d933593dbd31b385a1aeb2b384144b1aa10', calculateSolarPanels: this.calculateSolarPanels, markAsFlatRoof: this.markAsFlatRoof, currentTool: this.currentTool }), this.currentPolygon?.area
|
|
19
|
+
? (h("div", { class: "space-y-4" }, h("div", null, h("div", { class: "grid grid-cols-2 gap-2" }, h("div", null, h("h4", { class: "text-sm font-medium text-text-muted" }, t.mapDraw.area), h("p", { class: "text-lg" }, this.currentPolygon
|
|
20
|
+
?.area
|
|
21
|
+
.toFixed(2), " m\u00B2")), h("div", null, h("div", null, h("h4", { class: "text-sm font-medium text-text-muted" }, t.mapDraw.panels), h("p", { class: "text-lg" }, this.numberOfPanels ?? 0))))), h("div", null, h("h4", { class: "text-sm font-medium text-text-muted" }, t.mapDraw.azimuth), h("div", { class: "flex gap-2 flex-row justify-start bg-muted rounded-4xl p-2" }, h("input", { class: "text-lg w-full", onKeyDown: (e) => {
|
|
22
|
+
if (e.key === "Enter") {
|
|
23
|
+
this.handleAzimuthChange(e);
|
|
24
|
+
e.target
|
|
25
|
+
.blur();
|
|
26
|
+
}
|
|
27
|
+
}, value: this.currentPolygon
|
|
28
|
+
?.azimuth ?? 0 }), "(", azimuthToCardinal(this.currentPolygon.azimuth), ")"), !state.isIOS && (h("input", { type: "range", min: "0", max: "360", 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.currentPolygon
|
|
29
|
+
?.azimuth ?? 0, onInput: (e) => {
|
|
30
|
+
this.handleAzimuthChange(e);
|
|
31
|
+
} }))), h("div", null, h("h4", { class: "text-sm font-medium text-text-muted pl-2" }, t.mapDraw.pitch), h("div", { class: "flex gap-2 flex-row justify-start bg-muted rounded-4xl p-2" }, h("input", { class: "text-lg w-full", onKeyDown: (e) => {
|
|
32
|
+
if (e.key === "Enter") {
|
|
33
|
+
this.handlePitchChange(e);
|
|
34
|
+
e.target
|
|
35
|
+
.blur();
|
|
36
|
+
}
|
|
37
|
+
}, value: this.currentPolygon
|
|
38
|
+
?.pitch ?? 0 }), "\u00B0"), !state.isIOS && (h("input", { type: "range", min: "0", max: "90", 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.currentPolygon
|
|
39
|
+
?.pitch ?? 0, onInput: (e) => {
|
|
40
|
+
this.handlePitchChange(e);
|
|
41
|
+
} })))))
|
|
42
|
+
: (h("p", { class: "text-text-secondary text-center" }, t.mapDraw.noPolygonSelected)))));
|
|
43
|
+
}
|
|
44
|
+
static get is() { return "polygon-information"; }
|
|
45
|
+
static get originalStyleUrls() {
|
|
46
|
+
return {
|
|
47
|
+
"$": ["../../output.css"]
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
static get styleUrls() {
|
|
51
|
+
return {
|
|
52
|
+
"$": ["../../output.css"]
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
static get properties() {
|
|
56
|
+
return {
|
|
57
|
+
"currentPolygon": {
|
|
58
|
+
"type": "unknown",
|
|
59
|
+
"attribute": "current-polygon",
|
|
60
|
+
"mutable": false,
|
|
61
|
+
"complexType": {
|
|
62
|
+
"original": "Polygon",
|
|
63
|
+
"resolved": "Polygon",
|
|
64
|
+
"references": {
|
|
65
|
+
"Polygon": {
|
|
66
|
+
"location": "import",
|
|
67
|
+
"path": "harmonia-types",
|
|
68
|
+
"id": "../../../harmonia/packages/harmonia-types/dist/index.d.ts::Polygon"
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"required": false,
|
|
73
|
+
"optional": false,
|
|
74
|
+
"docs": {
|
|
75
|
+
"tags": [],
|
|
76
|
+
"text": ""
|
|
77
|
+
},
|
|
78
|
+
"getter": false,
|
|
79
|
+
"setter": false
|
|
80
|
+
},
|
|
81
|
+
"numberOfPanels": {
|
|
82
|
+
"type": "number",
|
|
83
|
+
"attribute": "number-of-panels",
|
|
84
|
+
"mutable": false,
|
|
85
|
+
"complexType": {
|
|
86
|
+
"original": "number | undefined",
|
|
87
|
+
"resolved": "number",
|
|
88
|
+
"references": {}
|
|
89
|
+
},
|
|
90
|
+
"required": false,
|
|
91
|
+
"optional": false,
|
|
92
|
+
"docs": {
|
|
93
|
+
"tags": [],
|
|
94
|
+
"text": ""
|
|
95
|
+
},
|
|
96
|
+
"getter": false,
|
|
97
|
+
"setter": false,
|
|
98
|
+
"reflect": false
|
|
99
|
+
},
|
|
100
|
+
"handleAzimuthChange": {
|
|
101
|
+
"type": "unknown",
|
|
102
|
+
"attribute": "handle-azimuth-change",
|
|
103
|
+
"mutable": false,
|
|
104
|
+
"complexType": {
|
|
105
|
+
"original": "(event: Event) => void",
|
|
106
|
+
"resolved": "(event: Event) => void",
|
|
107
|
+
"references": {
|
|
108
|
+
"Event": {
|
|
109
|
+
"location": "global",
|
|
110
|
+
"id": "global::Event"
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"required": false,
|
|
115
|
+
"optional": false,
|
|
116
|
+
"docs": {
|
|
117
|
+
"tags": [],
|
|
118
|
+
"text": ""
|
|
119
|
+
},
|
|
120
|
+
"getter": false,
|
|
121
|
+
"setter": false
|
|
122
|
+
},
|
|
123
|
+
"handlePitchChange": {
|
|
124
|
+
"type": "unknown",
|
|
125
|
+
"attribute": "handle-pitch-change",
|
|
126
|
+
"mutable": false,
|
|
127
|
+
"complexType": {
|
|
128
|
+
"original": "(event: Event) => void",
|
|
129
|
+
"resolved": "(event: Event) => void",
|
|
130
|
+
"references": {
|
|
131
|
+
"Event": {
|
|
132
|
+
"location": "global",
|
|
133
|
+
"id": "global::Event"
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
"required": false,
|
|
138
|
+
"optional": false,
|
|
139
|
+
"docs": {
|
|
140
|
+
"tags": [],
|
|
141
|
+
"text": ""
|
|
142
|
+
},
|
|
143
|
+
"getter": false,
|
|
144
|
+
"setter": false
|
|
145
|
+
},
|
|
146
|
+
"calculateSolarPanels": {
|
|
147
|
+
"type": "unknown",
|
|
148
|
+
"attribute": "calculate-solar-panels",
|
|
149
|
+
"mutable": false,
|
|
150
|
+
"complexType": {
|
|
151
|
+
"original": "() => void",
|
|
152
|
+
"resolved": "() => void",
|
|
153
|
+
"references": {}
|
|
154
|
+
},
|
|
155
|
+
"required": false,
|
|
156
|
+
"optional": false,
|
|
157
|
+
"docs": {
|
|
158
|
+
"tags": [],
|
|
159
|
+
"text": ""
|
|
160
|
+
},
|
|
161
|
+
"getter": false,
|
|
162
|
+
"setter": false
|
|
163
|
+
},
|
|
164
|
+
"markAsFlatRoof": {
|
|
165
|
+
"type": "unknown",
|
|
166
|
+
"attribute": "mark-as-flat-roof",
|
|
167
|
+
"mutable": false,
|
|
168
|
+
"complexType": {
|
|
169
|
+
"original": "() => void",
|
|
170
|
+
"resolved": "() => void",
|
|
171
|
+
"references": {}
|
|
172
|
+
},
|
|
173
|
+
"required": false,
|
|
174
|
+
"optional": false,
|
|
175
|
+
"docs": {
|
|
176
|
+
"tags": [],
|
|
177
|
+
"text": ""
|
|
178
|
+
},
|
|
179
|
+
"getter": false,
|
|
180
|
+
"setter": false
|
|
181
|
+
},
|
|
182
|
+
"currentTool": {
|
|
183
|
+
"type": "string",
|
|
184
|
+
"attribute": "current-tool",
|
|
185
|
+
"mutable": false,
|
|
186
|
+
"complexType": {
|
|
187
|
+
"original": "string",
|
|
188
|
+
"resolved": "string",
|
|
189
|
+
"references": {}
|
|
190
|
+
},
|
|
191
|
+
"required": false,
|
|
192
|
+
"optional": false,
|
|
193
|
+
"docs": {
|
|
194
|
+
"tags": [],
|
|
195
|
+
"text": ""
|
|
196
|
+
},
|
|
197
|
+
"getter": false,
|
|
198
|
+
"setter": false,
|
|
199
|
+
"reflect": false
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
//# sourceMappingURL=polygon-information.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polygon-information.js","sourceRoot":"","sources":["../../../src/components/map-draw/polygon-information.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Prop } from \"@stencil/core\";\r\nimport { Polygon } from \"harmonia-types\";\r\nimport { getLanguageStrings } from \"../../utils/lang/general\";\r\nimport { state } from \"../../store\";\r\nimport { azimuthToCardinal } from \"../../utils/utils\";\r\n\r\n@Component({\r\n tag: \"polygon-information\",\r\n styleUrl: \"../../output.css\",\r\n shadow: false,\r\n})\r\nexport class PolygonInformation {\r\n @Prop()\r\n currentPolygon: Polygon;\r\n @Prop()\r\n numberOfPanels: number | undefined;\r\n @Prop()\r\n handleAzimuthChange: (event: Event) => void;\r\n @Prop()\r\n handlePitchChange: (event: Event) => void;\r\n @Prop()\r\n calculateSolarPanels: () => void;\r\n @Prop()\r\n markAsFlatRoof: () => void;\r\n @Prop()\r\n currentTool: string;\r\n\r\n render() {\r\n const t = getLanguageStrings(state.settings.language);\r\n // console.log(this.currentPolygon);\r\n\r\n return (\r\n <div\r\n class=\"flex gap-4 flex-row justify-center items-center w-full rounded-4xl pb-2\"\r\n style={{\r\n border: \"1px solid var(--color-border)\",\r\n }}\r\n >\r\n <div class=\"w-full bg-primary rounded-4xl p-3 text-secondary\">\r\n <h3 class=\"text-lg font-semibold mb-4 text-center\">\r\n {t.mapDraw.information}\r\n </h3>\r\n <polygon-buttons\r\n calculateSolarPanels={this.calculateSolarPanels}\r\n markAsFlatRoof={this.markAsFlatRoof}\r\n currentTool={this.currentTool}\r\n />\r\n {this.currentPolygon?.area\r\n ? (\r\n <div class=\"space-y-4\">\r\n <div>\r\n <div class=\"grid grid-cols-2 gap-2\">\r\n <div>\r\n <h4 class=\"text-sm font-medium text-text-muted\">\r\n {t.mapDraw.area}\r\n </h4>\r\n <p class=\"text-lg\">\r\n {this.currentPolygon\r\n ?.area\r\n .toFixed(2)} m²\r\n </p>\r\n </div>\r\n <div>\r\n <div>\r\n <h4 class=\"text-sm font-medium text-text-muted\">\r\n {t.mapDraw.panels}\r\n </h4>\r\n <p class=\"text-lg\">\r\n {this.numberOfPanels ?? 0}\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div>\r\n <h4 class=\"text-sm font-medium text-text-muted\">\r\n {t.mapDraw.azimuth}\r\n </h4>\r\n <div class=\"flex gap-2 flex-row justify-start bg-muted rounded-4xl p-2\">\r\n <input\r\n class=\"text-lg w-full\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n this.handleAzimuthChange(\r\n e,\r\n );\r\n (e.target as HTMLInputElement)\r\n .blur();\r\n }\r\n }}\r\n value={this.currentPolygon\r\n ?.azimuth ?? 0}\r\n />\r\n ({azimuthToCardinal(\r\n this.currentPolygon.azimuth,\r\n )})\r\n </div>\r\n {!state.isIOS && (\r\n <input\r\n type=\"range\"\r\n min=\"0\"\r\n max=\"360\"\r\n 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\"\r\n value={this.currentPolygon\r\n ?.azimuth ?? 0}\r\n onInput={(e) => {\r\n this.handleAzimuthChange(e);\r\n }}\r\n />\r\n )}\r\n </div>\r\n <div>\r\n <h4 class=\"text-sm font-medium text-text-muted pl-2\">\r\n {t.mapDraw.pitch}\r\n </h4>\r\n <div class=\"flex gap-2 flex-row justify-start bg-muted rounded-4xl p-2\">\r\n <input\r\n class=\"text-lg w-full\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n this.handlePitchChange(\r\n e,\r\n );\r\n (e.target as HTMLInputElement)\r\n .blur();\r\n }\r\n }}\r\n value={this.currentPolygon\r\n ?.pitch ?? 0}\r\n />\r\n °\r\n </div>\r\n {!state.isIOS && (\r\n <input\r\n type=\"range\"\r\n min=\"0\"\r\n max=\"90\"\r\n 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\"\r\n value={this.currentPolygon\r\n ?.pitch ?? 0}\r\n onInput={(e) => {\r\n this.handlePitchChange(e);\r\n }}\r\n />\r\n )}\r\n </div>\r\n </div>\r\n )\r\n : (\r\n <p class=\"text-text-secondary text-center\">\r\n {t.mapDraw.noPolygonSelected}\r\n </p>\r\n )}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { getLanguageStrings } from "../../utils/lang/general";
|
|
3
|
+
import { state } from "../../store";
|
|
4
|
+
import { tools, undoTool } from "../../utils/render/tools";
|
|
5
|
+
export class ToolBox {
|
|
6
|
+
currentTool;
|
|
7
|
+
undoCallback;
|
|
8
|
+
onToolSelect;
|
|
9
|
+
render() {
|
|
10
|
+
const t = getLanguageStrings(state.settings.language);
|
|
11
|
+
const undoToolStrings = t.mapDraw.tools[undoTool.name];
|
|
12
|
+
return (h("div", { key: '8e967f7d9c64bb3144fb452fafc507e46e4943d1', class: "flex gap-1 sm:gap-4 rounded-4xl bg-primary pt-3 pl-3 pr-3 flex-wrap justify-center w-full text-xs" }, tools.map((tool) => {
|
|
13
|
+
const toolStrings = t.mapDraw.tools[tool.name];
|
|
14
|
+
return (h("button", { class: `px-3 py-2 rounded-4xl transition-colors duration-200 ${this.currentTool.name === tool.name
|
|
15
|
+
? "bg-secondary hover:bg-secondary/80"
|
|
16
|
+
: "bg-primary hover:bg-muted"}`, style: {
|
|
17
|
+
color: this.currentTool.name === tool.name
|
|
18
|
+
? "var(--color-secondary-foreground)"
|
|
19
|
+
: "var(--color-primary-foreground)",
|
|
20
|
+
border: "1px solid var(--color-border)",
|
|
21
|
+
}, "aria-label": toolStrings.ariaLabel, title: toolStrings.explanation, onClick: () => this.onToolSelect(tool) }, h("div", { class: "flex items-center gap-1 flex-col" }, h("icon-selector", { name: tool.icon }), h("span", null, toolStrings.name))));
|
|
22
|
+
}), h("button", { key: 'ef4c27258c2cfa29ad937319c8260f885d94b234', class: `px-3 py-2 rounded-4xl transition-colors duration-200 bg-primary hover:bg-muted text-primary-foreground focus:border-2 focus:border-secondary`, style: {
|
|
23
|
+
border: "1px solid var(--color-border)",
|
|
24
|
+
}, "aria-label": undoToolStrings.ariaLabel, title: undoToolStrings.explanation, onClick: () => this.undoCallback() }, h("div", { key: '37d59dc02ab0a8f61a9ef983030756a56dc2c8dc', class: "flex items-center gap-1 flex-col" }, h("undo-icon", { key: 'a4a581a73623722219ecf944bf9eda8613a31944' }), h("span", { key: 'df5e5aeca411a468f4024037d8cc27c7038c3dae' }, undoToolStrings.name)))));
|
|
25
|
+
}
|
|
26
|
+
static get is() { return "tool-box"; }
|
|
27
|
+
static get originalStyleUrls() {
|
|
28
|
+
return {
|
|
29
|
+
"$": ["../../output.css"]
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
static get styleUrls() {
|
|
33
|
+
return {
|
|
34
|
+
"$": ["../../output.css"]
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
static get properties() {
|
|
38
|
+
return {
|
|
39
|
+
"currentTool": {
|
|
40
|
+
"type": "unknown",
|
|
41
|
+
"attribute": "current-tool",
|
|
42
|
+
"mutable": false,
|
|
43
|
+
"complexType": {
|
|
44
|
+
"original": "Tool",
|
|
45
|
+
"resolved": "Tool",
|
|
46
|
+
"references": {
|
|
47
|
+
"Tool": {
|
|
48
|
+
"location": "import",
|
|
49
|
+
"path": "../../utils/render/tools",
|
|
50
|
+
"id": "src/utils/render/tools.ts::Tool"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"required": false,
|
|
55
|
+
"optional": false,
|
|
56
|
+
"docs": {
|
|
57
|
+
"tags": [],
|
|
58
|
+
"text": ""
|
|
59
|
+
},
|
|
60
|
+
"getter": false,
|
|
61
|
+
"setter": false
|
|
62
|
+
},
|
|
63
|
+
"undoCallback": {
|
|
64
|
+
"type": "unknown",
|
|
65
|
+
"attribute": "undo-callback",
|
|
66
|
+
"mutable": false,
|
|
67
|
+
"complexType": {
|
|
68
|
+
"original": "() => void",
|
|
69
|
+
"resolved": "() => void",
|
|
70
|
+
"references": {}
|
|
71
|
+
},
|
|
72
|
+
"required": false,
|
|
73
|
+
"optional": false,
|
|
74
|
+
"docs": {
|
|
75
|
+
"tags": [],
|
|
76
|
+
"text": ""
|
|
77
|
+
},
|
|
78
|
+
"getter": false,
|
|
79
|
+
"setter": false
|
|
80
|
+
},
|
|
81
|
+
"onToolSelect": {
|
|
82
|
+
"type": "unknown",
|
|
83
|
+
"attribute": "on-tool-select",
|
|
84
|
+
"mutable": false,
|
|
85
|
+
"complexType": {
|
|
86
|
+
"original": "(tool: Tool) => void",
|
|
87
|
+
"resolved": "(tool: Tool) => void",
|
|
88
|
+
"references": {
|
|
89
|
+
"Tool": {
|
|
90
|
+
"location": "import",
|
|
91
|
+
"path": "../../utils/render/tools",
|
|
92
|
+
"id": "src/utils/render/tools.ts::Tool"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
"required": false,
|
|
97
|
+
"optional": false,
|
|
98
|
+
"docs": {
|
|
99
|
+
"tags": [],
|
|
100
|
+
"text": ""
|
|
101
|
+
},
|
|
102
|
+
"getter": false,
|
|
103
|
+
"setter": false
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=tool-box.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-box.js","sourceRoot":"","sources":["../../../src/components/map-draw/tool-box.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAO3D,MAAM,OAAO,OAAO;IAEhB,WAAW,CAAO;IAElB,YAAY,CAAa;IAEzB,YAAY,CAAuB;IAEnC,MAAM;QACF,MAAM,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvD,OAAO,CACH,4DAAK,KAAK,EAAC,mGAAmG;YACzG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAChB,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/C,OAAO,CACH,cACI,KAAK,EAAE,wDACH,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;wBAC/B,CAAC,CAAC,oCAAoC;wBACtC,CAAC,CAAC,2BACV,EAAE,EACF,KAAK,EAAE;wBACH,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;4BACtC,CAAC,CAAC,mCAAmC;4BACrC,CAAC,CAAC,iCAAiC;wBACvC,MAAM,EAAE,+BAA+B;qBAC1C,gBACW,WAAW,CAAC,SAAS,EACjC,KAAK,EAAE,WAAW,CAAC,WAAW,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;oBAEtC,WAAK,KAAK,EAAC,kCAAkC;wBACzC,qBAAe,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI;wBAClC,gBAAO,WAAW,CAAC,IAAI,CAAQ,CAC7B,CACD,CACZ,CAAC;YACN,CAAC,CAAC;YACF,+DACI,KAAK,EAAE,8IAA8I,EACrJ,KAAK,EAAE;oBACH,MAAM,EAAE,+BAA+B;iBAC1C,gBACW,eAAe,CAAC,SAAS,EACrC,KAAK,EAAE,eAAe,CAAC,WAAW,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE;gBAElC,4DAAK,KAAK,EAAC,kCAAkC;oBACzC,mEAAa;oBACb,+DAAO,eAAe,CAAC,IAAI,CAAQ,CACjC,CACD,CACP,CACT,CAAC;IACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, h, Prop } from \"@stencil/core\";\r\nimport { Tool } from \"../../utils/render/tools\";\r\nimport { getLanguageStrings } from \"../../utils/lang/general\";\r\nimport { state } from \"../../store\";\r\nimport { tools, undoTool } from \"../../utils/render/tools\";\r\n\r\n@Component({\r\n tag: \"tool-box\",\r\n styleUrl: \"../../output.css\",\r\n shadow: false,\r\n})\r\nexport class ToolBox {\r\n @Prop()\r\n currentTool: Tool;\r\n @Prop()\r\n undoCallback: () => void;\r\n @Prop()\r\n onToolSelect: (tool: Tool) => void;\r\n\r\n render() {\r\n const t = getLanguageStrings(state.settings.language);\r\n const undoToolStrings = t.mapDraw.tools[undoTool.name];\r\n\r\n return (\r\n <div class=\"flex gap-1 sm:gap-4 rounded-4xl bg-primary pt-3 pl-3 pr-3 flex-wrap justify-center w-full text-xs\">\r\n {tools.map((tool) => {\r\n const toolStrings = t.mapDraw.tools[tool.name];\r\n return (\r\n <button\r\n class={`px-3 py-2 rounded-4xl transition-colors duration-200 ${\r\n this.currentTool.name === tool.name\r\n ? \"bg-secondary hover:bg-secondary/80\"\r\n : \"bg-primary hover:bg-muted\"\r\n }`}\r\n style={{\r\n color: this.currentTool.name === tool.name\r\n ? \"var(--color-secondary-foreground)\"\r\n : \"var(--color-primary-foreground)\",\r\n border: \"1px solid var(--color-border)\",\r\n }}\r\n aria-label={toolStrings.ariaLabel}\r\n title={toolStrings.explanation}\r\n onClick={() => this.onToolSelect(tool)}\r\n >\r\n <div class=\"flex items-center gap-1 flex-col\">\r\n <icon-selector name={tool.icon} />\r\n <span>{toolStrings.name}</span>\r\n </div>\r\n </button>\r\n );\r\n })}\r\n <button\r\n class={`px-3 py-2 rounded-4xl transition-colors duration-200 bg-primary hover:bg-muted text-primary-foreground focus:border-2 focus:border-secondary`}\r\n style={{\r\n border: \"1px solid var(--color-border)\",\r\n }}\r\n aria-label={undoToolStrings.ariaLabel}\r\n title={undoToolStrings.explanation}\r\n onClick={() => this.undoCallback()}\r\n >\r\n <div class=\"flex items-center gap-1 flex-col\">\r\n <undo-icon />\r\n <span>{undoToolStrings.name}</span>\r\n </div>\r\n </button>\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { getLanguageStrings } from "../../utils/lang/general";
|
|
3
|
+
import { state } from "../../store";
|
|
4
|
+
export class TutorialComponent {
|
|
5
|
+
onClose;
|
|
6
|
+
title;
|
|
7
|
+
description;
|
|
8
|
+
videoSource;
|
|
9
|
+
handleCloseTutorial = () => {
|
|
10
|
+
if (this.onClose) {
|
|
11
|
+
this.onClose();
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
render() {
|
|
15
|
+
const t = getLanguageStrings(state.settings.language);
|
|
16
|
+
// Use provided props or fall back to default values
|
|
17
|
+
const tutorialTitle = this.title || t.mapDraw.tutorial.title;
|
|
18
|
+
const tutorialDescription = this.description ||
|
|
19
|
+
t.mapDraw.tutorial.description;
|
|
20
|
+
const videoSrc = this.videoSource || "/assets/videos/tutorial1.mp4";
|
|
21
|
+
return (h("div", { key: '643a38ae57803cd738f5f464865bbec10921342b', class: "fixed inset-0 z-50 flex items-center justify-center p-4" }, h("div", { key: '1ad50622d2eb1e2c424f83419d25598981ec01c8', class: "absolute inset-0", style: {
|
|
22
|
+
backgroundColor: "rgba(0, 0, 0, 0.5)",
|
|
23
|
+
} }), h("div", { key: '10fe5b27d17f5ec1fc28e511e0b877581257fd00', class: "relative z-10 w-full max-w-2xl max-h-full overflow-y-auto" }, h("div", { key: 'db270c472ef606242ae62682b4b2d249172674bc', class: "flex flex-col gap-4 bg-primary rounded-4xl p-6" }, h("div", { key: '6462e61e1321d3b95b034cfbbd6eceb28959b963', class: "w-full text-center space-y-4" }, h("h2", { key: 'a791ba0ffec5eb1939009302eca9e5422d0c4416', class: "text-2xl font-bold text-secondary" }, tutorialTitle), h("p", { key: '755ed2d0833e846b2b9b4670a9f5e5ec1be6ff4f', class: "text-text-secondary" }, tutorialDescription)), h("div", { key: '89f8c0c7153b01c9791c5eb0370adca0879d3aeb', class: "flex items-start justify-center bg-primary rounded-4xl" }, h("div", { key: '2ec0595cbefdb0b848dec1435d2ee5f3036ad979', class: "relative flex items-center justify-center rounded-4xl bg-secondary overflow-hidden w-64 h-64" }, h("video", { key: '2322bae4f2748420738c5ddaee1fabf47be63d27', class: "w-full h-full object-contain rounded-4xl pointer-events-none", autoplay: true, muted: true, loop: true, playsinline: true, style: {
|
|
24
|
+
aspectRatio: "1/1",
|
|
25
|
+
} }, h("source", { key: '2702618ed0bee274b48f1888ac4ba2b04575db7d', src: videoSrc, type: "video/mp4" }), "Your browser does not support the video tag."))), h("div", { key: '61a438be7abd35566ebc9ad4ea97d575789bf32f', class: "w-full flex justify-center" }, h("button", { key: '139055174d1bb51a87da48787fd218526de872e1', onClick: this.handleCloseTutorial, class: "px-6 py-3 bg-tertiary text-white rounded-lg font-medium hover:bg-tertiary/80 transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-tertiary focus:ring-offset-0" }, t.mapDraw.tutorial.understood))))));
|
|
26
|
+
}
|
|
27
|
+
static get is() { return "tutorial-component"; }
|
|
28
|
+
static get originalStyleUrls() {
|
|
29
|
+
return {
|
|
30
|
+
"$": ["../../output.css"]
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
static get styleUrls() {
|
|
34
|
+
return {
|
|
35
|
+
"$": ["../../output.css"]
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
static get properties() {
|
|
39
|
+
return {
|
|
40
|
+
"onClose": {
|
|
41
|
+
"type": "unknown",
|
|
42
|
+
"attribute": "on-close",
|
|
43
|
+
"mutable": false,
|
|
44
|
+
"complexType": {
|
|
45
|
+
"original": "() => void",
|
|
46
|
+
"resolved": "() => void",
|
|
47
|
+
"references": {}
|
|
48
|
+
},
|
|
49
|
+
"required": false,
|
|
50
|
+
"optional": false,
|
|
51
|
+
"docs": {
|
|
52
|
+
"tags": [],
|
|
53
|
+
"text": ""
|
|
54
|
+
},
|
|
55
|
+
"getter": false,
|
|
56
|
+
"setter": false
|
|
57
|
+
},
|
|
58
|
+
"title": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"attribute": "title",
|
|
61
|
+
"mutable": false,
|
|
62
|
+
"complexType": {
|
|
63
|
+
"original": "string",
|
|
64
|
+
"resolved": "string",
|
|
65
|
+
"references": {}
|
|
66
|
+
},
|
|
67
|
+
"required": false,
|
|
68
|
+
"optional": true,
|
|
69
|
+
"docs": {
|
|
70
|
+
"tags": [],
|
|
71
|
+
"text": ""
|
|
72
|
+
},
|
|
73
|
+
"getter": false,
|
|
74
|
+
"setter": false,
|
|
75
|
+
"reflect": false
|
|
76
|
+
},
|
|
77
|
+
"description": {
|
|
78
|
+
"type": "string",
|
|
79
|
+
"attribute": "description",
|
|
80
|
+
"mutable": false,
|
|
81
|
+
"complexType": {
|
|
82
|
+
"original": "string",
|
|
83
|
+
"resolved": "string",
|
|
84
|
+
"references": {}
|
|
85
|
+
},
|
|
86
|
+
"required": false,
|
|
87
|
+
"optional": true,
|
|
88
|
+
"docs": {
|
|
89
|
+
"tags": [],
|
|
90
|
+
"text": ""
|
|
91
|
+
},
|
|
92
|
+
"getter": false,
|
|
93
|
+
"setter": false,
|
|
94
|
+
"reflect": false
|
|
95
|
+
},
|
|
96
|
+
"videoSource": {
|
|
97
|
+
"type": "string",
|
|
98
|
+
"attribute": "video-source",
|
|
99
|
+
"mutable": false,
|
|
100
|
+
"complexType": {
|
|
101
|
+
"original": "string",
|
|
102
|
+
"resolved": "string",
|
|
103
|
+
"references": {}
|
|
104
|
+
},
|
|
105
|
+
"required": false,
|
|
106
|
+
"optional": true,
|
|
107
|
+
"docs": {
|
|
108
|
+
"tags": [],
|
|
109
|
+
"text": ""
|
|
110
|
+
},
|
|
111
|
+
"getter": false,
|
|
112
|
+
"setter": false,
|
|
113
|
+
"reflect": false
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=tutorial-component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tutorial-component.js","sourceRoot":"","sources":["../../../src/components/map-draw/tutorial-component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAOpC,MAAM,OAAO,iBAAiB;IAE1B,OAAO,CAAa;IAEpB,KAAK,CAAU;IAEf,WAAW,CAAU;IAErB,WAAW,CAAU;IAEb,mBAAmB,GAAG,GAAG,EAAE;QAC/B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACL,CAAC,CAAC;IAEF,MAAM;QACF,MAAM,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEtD,oDAAoD;QACpD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC7D,MAAM,mBAAmB,GAAG,IAAI,CAAC,WAAW;YACxC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,IAAI,8BAA8B,CAAC;QAEpE,OAAO,CACH,4DAAK,KAAK,EAAC,yDAAyD;YAEhE,4DACI,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAE;oBACH,eAAe,EAAE,oBAAoB;iBACxC,GACH;YAGF,4DAAK,KAAK,EAAC,2DAA2D;gBAClE,4DAAK,KAAK,EAAC,gDAAgD;oBAEvD,4DAAK,KAAK,EAAC,8BAA8B;wBACrC,2DAAI,KAAK,EAAC,mCAAmC,IACxC,aAAa,CACb;wBACL,0DAAG,KAAK,EAAC,qBAAqB,IACzB,mBAAmB,CACpB,CACF;oBAGN,4DAAK,KAAK,EAAC,wDAAwD;wBAC/D,4DAAK,KAAK,EAAC,8FAA8F;4BACrG,8DACI,KAAK,EAAC,8DAA8D,EACpE,QAAQ,QACR,KAAK,QACL,IAAI,QACJ,WAAW,QACX,KAAK,EAAE;oCACH,WAAW,EAAE,KAAK;iCACrB;gCAED,+DACI,GAAG,EAAE,QAAQ,EACb,IAAI,EAAC,WAAW,GAClB;+EAEE,CACN,CACJ;oBAGN,4DAAK,KAAK,EAAC,4BAA4B;wBACnC,+DACI,OAAO,EAAE,IAAI,CAAC,mBAAmB,EACjC,KAAK,EAAC,qLAAqL,IAE1L,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CACzB,CACP,CACJ,CACJ,CACJ,CACT,CAAC;IACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, h, Prop } from \"@stencil/core\";\r\nimport { getLanguageStrings } from \"../../utils/lang/general\";\r\nimport { state } from \"../../store\";\r\n\r\n@Component({\r\n tag: \"tutorial-component\",\r\n styleUrl: \"../../output.css\",\r\n shadow: false,\r\n})\r\nexport class TutorialComponent {\r\n @Prop()\r\n onClose: () => void;\r\n @Prop()\r\n title?: string;\r\n @Prop()\r\n description?: string;\r\n @Prop()\r\n videoSource?: string;\r\n\r\n private handleCloseTutorial = () => {\r\n if (this.onClose) {\r\n this.onClose();\r\n }\r\n };\r\n\r\n render() {\r\n const t = getLanguageStrings(state.settings.language);\r\n\r\n // Use provided props or fall back to default values\r\n const tutorialTitle = this.title || t.mapDraw.tutorial.title;\r\n const tutorialDescription = this.description ||\r\n t.mapDraw.tutorial.description;\r\n const videoSrc = this.videoSource || \"/assets/videos/tutorial1.mp4\";\r\n\r\n return (\r\n <div class=\"fixed inset-0 z-50 flex items-center justify-center p-4\">\r\n {/* Backdrop */}\r\n <div\r\n class=\"absolute inset-0\"\r\n style={{\r\n backgroundColor: \"rgba(0, 0, 0, 0.5)\",\r\n }}\r\n />\r\n\r\n {/* Scrollable content container */}\r\n <div class=\"relative z-10 w-full max-w-2xl max-h-full overflow-y-auto\">\r\n <div class=\"flex flex-col gap-4 bg-primary rounded-4xl p-6\">\r\n {/* Title and Description */}\r\n <div class=\"w-full text-center space-y-4\">\r\n <h2 class=\"text-2xl font-bold text-secondary\">\r\n {tutorialTitle}\r\n </h2>\r\n <p class=\"text-text-secondary\">\r\n {tutorialDescription}\r\n </p>\r\n </div>\r\n\r\n {/* Tutorial Video Container */}\r\n <div class=\"flex items-start justify-center bg-primary rounded-4xl\">\r\n <div class=\"relative flex items-center justify-center rounded-4xl bg-secondary overflow-hidden w-64 h-64\">\r\n <video\r\n class=\"w-full h-full object-contain rounded-4xl pointer-events-none\"\r\n autoplay\r\n muted\r\n loop\r\n playsinline\r\n style={{\r\n aspectRatio: \"1/1\",\r\n }}\r\n >\r\n <source\r\n src={videoSrc}\r\n type=\"video/mp4\"\r\n />\r\n Your browser does not support the video tag.\r\n </video>\r\n </div>\r\n </div>\r\n\r\n {/* Close Button */}\r\n <div class=\"w-full flex justify-center\">\r\n <button\r\n onClick={this.handleCloseTutorial}\r\n class=\"px-6 py-3 bg-tertiary text-white rounded-lg font-medium hover:bg-tertiary/80 transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-tertiary focus:ring-offset-0\"\r\n >\r\n {t.mapDraw.tutorial.understood}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { state } from "../../store";
|
|
3
|
+
import { getLanguageStrings } from "../../utils/lang/general";
|
|
4
|
+
export class SettingsModal {
|
|
5
|
+
settings;
|
|
6
|
+
tempSettings;
|
|
7
|
+
close;
|
|
8
|
+
save;
|
|
9
|
+
componentWillLoad() {
|
|
10
|
+
this.tempSettings = { ...this.settings };
|
|
11
|
+
}
|
|
12
|
+
handleClose = () => {
|
|
13
|
+
if (JSON.stringify(this.tempSettings) !== JSON.stringify(this.settings)) {
|
|
14
|
+
if (confirm("Are you sure you want to close without saving your changes?")) {
|
|
15
|
+
this.close.emit();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
this.close.emit();
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
handleSave = () => {
|
|
23
|
+
this.save.emit(this.tempSettings);
|
|
24
|
+
this.close.emit();
|
|
25
|
+
};
|
|
26
|
+
handleInputChange = (key, value) => {
|
|
27
|
+
this.tempSettings = {
|
|
28
|
+
...this.tempSettings,
|
|
29
|
+
[key]: value,
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
render() {
|
|
33
|
+
const t = getLanguageStrings(state.settings.language);
|
|
34
|
+
return (h("div", { key: '86e2e853f3ae4fc186e301f088fa2f51ed21eb96', class: "fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50" }, h("div", { key: 'ecbc4afefad160dd8817d0fc236398d50307fd5f', class: "bg-primary rounded-4xl p-6 w-full max-w-md" }, h("div", { key: '26db379fce6ea21297ef5637378cb8d45e65c632', class: "flex justify-between items-center mb-6" }, h("h2", { key: 'edffc0b3e2e5bd2b63a939a5e7bd859ee6544565', class: "text-xl font-semibold" }, "Settings"), h("button", { key: '1ec7763b94b8cab41086f56fcd3436cdb09d4100', class: "p-2 hover:bg-hover rounded-full transition-colors", onClick: this.handleClose }, h("svg", { key: 'a2b4082236931c900c39dafc638d4eead0545f31', xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, h("line", { key: '8f5a732d61e4858f14c598cba60eb0e9503b6154', x1: "18", y1: "6", x2: "6", y2: "18" }), h("line", { key: 'bc1f1e063fe710bb386952c01fc7248d1480583c', x1: "6", y1: "6", x2: "18", y2: "18" })))), h("div", { key: '22202217c1a00baf20781dc6a55ef534b0d54248', class: "space-y-4" }, h("div", { key: '0d900965d565e5339513885777faa16778d16fba' }, h("h3", { key: 'df440a1e1cc685bc7034c12abe22ab58631dc39b', class: "text-sm font-medium text-text-muted mb-1" }, "Debug Information"), h("p", { key: '1b2490b4fe7ab72f1ce00129972c8b2a1c68e98a', class: "text-sm text-text-muted mb-1" }, "state: ", JSON.stringify(state, null, 2)), h("p", { key: '02f856480ed33470efbe5a8315dbca9b5a7a77fa', class: "text-sm text-text-muted mb-1" }, navigator.userAgent), h("p", { key: '7c54fd31d753d17ec97a62d71743efe04a89adb3', class: "text-sm text-text-muted mb-1" }, navigator.userAgent.indexOf("Safari")), h("p", { key: '593a28bae68b1ee15f3f86e744a12e984ca02a37', class: "text-sm text-text-muted mb-1" }, "maxTouchPoints: ", navigator.maxTouchPoints), h("p", { key: '896bfdcae3012911e364718aaeb7a91edd367ad3', class: "text-sm text-text-muted mb-1" }, "iPhone: ", navigator.userAgent.indexOf("iPhone")), h("p", { key: '37633d9ec6303d386745742f50b9f583e966ebf6', class: "text-sm text-text-muted mb-1" }, "Mac OS: ", navigator.userAgent.indexOf("Mac OS"))), h("div", { key: '4d007f8d19fe1b3b95f80b92850fbfd6db55d656' }, h("label", { key: '1b2447f96a44ba2d1d8d0184a09a9b77106e0679', class: "block text-sm font-medium text-text-muted mb-1" }, t.settings.language), h("select", { key: '64dc07edfff00c017bb10c01b7940f3413a111d6', class: "w-full bg-muted rounded-4xl p-2", onInput: (e) => this.handleInputChange("language", e.target
|
|
35
|
+
.value) }, h("option", { key: '13e54cf9f9b27ca9bf9b9ab01ca7ee9b91887d75', value: "en", selected: this.tempSettings.language ===
|
|
36
|
+
"en" }, "English"), h("option", { key: 'abccf307e6c730659a2d68bbf8432ad7dad7a9d9', value: "es", selected: this.tempSettings.language ===
|
|
37
|
+
"es" }, "Espa\u00F1ol"), h("option", { key: '0f6e16122daace282c5ef3426ecc5875a323c9a4', value: "de", selected: this.tempSettings.language ===
|
|
38
|
+
"de" }, "Deutsch"))), h("div", { key: '33a2256b3b6000dbace5ce05baf5f535a7a3de9c' }, h("label", { key: 'b22ffcb5bd477c8298d34b2a905475d5c5aadaba', class: "block text-sm font-medium text-text-muted mb-1" }, t.settings.rowSpacing), h("input", { key: '91672a7397a83f11f3711d1ab8f52e5626b8e09f', type: "number", class: "w-full bg-muted rounded-4xl p-2", value: this.tempSettings.rowSpacing, onInput: (e) => this.handleInputChange("rowSpacing", parseFloat(e.target
|
|
39
|
+
.value)) })), h("div", { key: 'deee24a2c07fbdf4a852ba5566087a11242ee1b9' }, h("label", { key: '5384d7f0877af2b94b21f610628a410fec60d017', class: "block text-sm font-medium text-text-muted mb-1" }, t.settings.columnSpacing), h("input", { key: '17be549e097c08ae9bde1bc4f00154963b71ea33', type: "number", class: "w-full bg-muted rounded-4xl p-2", value: this.tempSettings.columnSpacing, onInput: (e) => this.handleInputChange("columnSpacing", parseFloat(e.target
|
|
40
|
+
.value)) })), h("div", { key: '026f0919812b1a45d8daba4aa71730c4b171d8a1' }, h("label", { key: '912d5ac6b6b188b29864d85af180044d551efc36', class: "block text-sm font-medium text-text-muted mb-1" }, t.settings.borderInset), h("input", { key: '8d6970dc513500a524b4fc0e825c55f51f8a47ee', type: "number", class: "w-full bg-muted rounded-4xl p-2", value: this.tempSettings.borderInset, onInput: (e) => this.handleInputChange("borderInset", parseFloat(e.target
|
|
41
|
+
.value)) }))), h("div", { key: 'ecd39b394ee608569a097305a85a197da04f41b9', class: "flex justify-end gap-4 mt-6" }, h("button", { key: '3b696ab9a2120619bd0f6b34f0c0baa9807b6a0d', class: "px-4 py-2 bg-surface rounded-4xl hover:bg-surface-hover transition-colors", onClick: this.handleClose }, "Cancel"), h("button", { key: '1c74e08866a5888acd29abd31a07149a58e41e1b', class: "px-4 py-2 bg-secondary text-muted rounded-4xl hover:bg-text-secondary transition-colors", onClick: this.handleSave }, "Save Changes")))));
|
|
42
|
+
}
|
|
43
|
+
static get is() { return "settings-modal"; }
|
|
44
|
+
static get originalStyleUrls() {
|
|
45
|
+
return {
|
|
46
|
+
"$": ["../../output.css"]
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
static get styleUrls() {
|
|
50
|
+
return {
|
|
51
|
+
"$": ["../../output.css"]
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
static get properties() {
|
|
55
|
+
return {
|
|
56
|
+
"settings": {
|
|
57
|
+
"type": "unknown",
|
|
58
|
+
"attribute": "settings",
|
|
59
|
+
"mutable": false,
|
|
60
|
+
"complexType": {
|
|
61
|
+
"original": "Settings",
|
|
62
|
+
"resolved": "Settings",
|
|
63
|
+
"references": {
|
|
64
|
+
"Settings": {
|
|
65
|
+
"location": "import",
|
|
66
|
+
"path": "../../store",
|
|
67
|
+
"id": "src/store.ts::Settings"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"required": false,
|
|
72
|
+
"optional": false,
|
|
73
|
+
"docs": {
|
|
74
|
+
"tags": [],
|
|
75
|
+
"text": ""
|
|
76
|
+
},
|
|
77
|
+
"getter": false,
|
|
78
|
+
"setter": false
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
static get states() {
|
|
83
|
+
return {
|
|
84
|
+
"tempSettings": {}
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
static get events() {
|
|
88
|
+
return [{
|
|
89
|
+
"method": "close",
|
|
90
|
+
"name": "close",
|
|
91
|
+
"bubbles": true,
|
|
92
|
+
"cancelable": true,
|
|
93
|
+
"composed": true,
|
|
94
|
+
"docs": {
|
|
95
|
+
"tags": [],
|
|
96
|
+
"text": ""
|
|
97
|
+
},
|
|
98
|
+
"complexType": {
|
|
99
|
+
"original": "void",
|
|
100
|
+
"resolved": "void",
|
|
101
|
+
"references": {}
|
|
102
|
+
}
|
|
103
|
+
}, {
|
|
104
|
+
"method": "save",
|
|
105
|
+
"name": "save",
|
|
106
|
+
"bubbles": true,
|
|
107
|
+
"cancelable": true,
|
|
108
|
+
"composed": true,
|
|
109
|
+
"docs": {
|
|
110
|
+
"tags": [],
|
|
111
|
+
"text": ""
|
|
112
|
+
},
|
|
113
|
+
"complexType": {
|
|
114
|
+
"original": "Settings",
|
|
115
|
+
"resolved": "Settings",
|
|
116
|
+
"references": {
|
|
117
|
+
"Settings": {
|
|
118
|
+
"location": "import",
|
|
119
|
+
"path": "../../store",
|
|
120
|
+
"id": "src/store.ts::Settings"
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}];
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=settings.js.map
|