@eaprelsky/nocturna-wheel 4.0.2 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/svg/zodiac/zodiac-planet-rahu-1.svg +3 -0
- package/dist/assets/svg/zodiac/zodiac-planet-rahu.svg +40 -3
- package/dist/nocturna-wheel.bundle.js +151 -112
- package/dist/nocturna-wheel.bundle.js.map +1 -1
- package/dist/nocturna-wheel.es.js +151 -112
- package/dist/nocturna-wheel.es.js.map +1 -1
- package/dist/nocturna-wheel.min.js +1 -1
- package/dist/nocturna-wheel.min.js.map +1 -1
- package/dist/nocturna-wheel.umd.js +151 -112
- package/dist/nocturna-wheel.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -287,7 +287,7 @@ class IconProvider {
|
|
|
287
287
|
/**
|
|
288
288
|
* IconData.js
|
|
289
289
|
* Auto-generated module containing inline SVG icons as data URLs
|
|
290
|
-
* Generated at:
|
|
290
|
+
* Generated at: 2026-01-11T15:58:22.972Z
|
|
291
291
|
*
|
|
292
292
|
* This file is automatically generated by the build process.
|
|
293
293
|
* Do not edit manually - changes will be overwritten.
|
|
@@ -312,7 +312,8 @@ IconData.planets['mercury'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%2
|
|
|
312
312
|
IconData.planets['moon'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%20%3Cpath%20d%3D%22M%20106.38%2031%20C%20133.61%2035.85%20154.8%2057.4%20159.18%2084.71%20C%20163.56%20112.02%20150.17%20139.12%20125.82%20152.23%20C%20101.46%20165.35%2071.47%20161.61%2051.08%20142.92%20Q%2059.25%20148.63%2089.31%20129.94%20Q%20119.38%20111.25%20119.38%2074.69%20Q%20119.38%2038.13%20108.81%2031.63%20Z%22%20fill%3D%22white%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fsvg%3E';
|
|
313
313
|
IconData.planets['neptune'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-13%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20170%20L%20100%2061.18%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20105.67%2072.59%20L%20100%2055.59%20L%2094.33%2072.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-14%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%20140%20L%2060%20140%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-15%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2061.18%20Q%2060%20100%2080%20110%20Q%20100%20120%20120%20110%20Q%20140%20100%20140%2061.18%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%2063.67%2066.59%20L%2060%2055.59%20L%2056.33%2066.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20145.67%2072.59%20L%20140%2055.59%20L%20134.33%2072.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22zbcp-zu0BkE59QIL-Zbj-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E';
|
|
314
314
|
IconData.planets['pluto'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-9%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22149%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20129%20L%20100.5%20110%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%2070.4%20C%20139.78%2092.49%20121.69%20110.22%2099.6%20110%20C%2077.51%20109.78%2059.78%2091.69%2060%2069.6%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-12%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%2270%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%227pAuGvqZmXAXuP9MepSf-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E';
|
|
315
|
-
IconData.planets['rahu'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-6%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%2265%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-8%22%3E%3Cg%3E%3Cellipse%20cx%3D%22135%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20124.39%2054.39%20Q%20120%2060%20120%2065%20Q%20120%2070%20130%2095%20Q%20140%20120%20130%20135%20Q%20120%20150%20100%20150%20Q%2080%20150%2070%20135%20Q%2060%20120%2070%2095%20Q%2080%2070%2080%2065%20Q%2080%2060%2075.61%2054.39%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%223M6Cx9xprG5cO1lWqNEw-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E';
|
|
315
|
+
IconData.planets['rahu-1'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-1%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-3%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-6%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-7%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-8%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-9%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-10%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-11%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-12%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-13%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-14%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-15%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-16%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-17%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-20%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-21%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-22%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-23%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-24%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-25%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-26%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-27%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-32%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-28%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-29%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-30%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-31%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-33%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-34%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-35%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-36%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-37%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-68%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-69%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-70%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-71%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-73%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-38%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-39%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-40%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-41%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-42%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-48%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-49%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-50%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-51%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-52%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-53%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-54%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-74%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-44%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-45%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-138%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-139%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-140%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-141%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-142%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-143%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-144%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-145%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-146%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-147%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-148%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-149%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-150%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-151%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-152%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-153%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-154%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-155%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-156%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-157%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-158%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-159%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-160%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-161%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-162%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-166%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-167%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-168%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-169%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-170%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-174%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-175%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-176%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-177%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-178%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-208%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-209%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-210%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-211%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-212%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-55%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-56%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-213%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-214%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-215%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-216%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-217%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-4%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-1%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-2%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-3%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-218%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-219%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-220%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-221%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-222%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-196%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-197%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-201%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-203%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-204%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-206%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-207%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-223%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-224%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-225%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-226%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-227%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-5%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-6%22%3E%3Cg%20transform%3D%22translate(0.5%2C0.5)%22%3E%3Cellipse%20cx%3D%22165%22%20cy%3D%22165%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20transform%3D%22rotate(-180%2C165%2C165)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-7%22%3E%3Cg%20transform%3D%22translate(0.5%2C0.5)%22%3E%3Cellipse%20cx%3D%2235%22%20cy%3D%22165%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20transform%3D%22rotate(-180%2C35%2C165)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-8%22%3E%3Cg%20transform%3D%22translate(0.5%2C0.5)%22%3E%3Cpath%20d%3D%22M%2055.61%20185.61%20Q%2065%20175%2065%20165%20Q%2065%20155%2045%20105%20Q%2025%2055%2045%2025%20Q%2065%20-5%20105%20-5%20Q%20145%20-5%20165%2025%20Q%20185%2055%20165%20105%20Q%20145%20155%20145%20165%20Q%20145%20175%20154.39%20185.61%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-228%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-229%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-230%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-231%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-232%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-265%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-266%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-233%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-234%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-235%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-236%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-237%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-238%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-239%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-240%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-241%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-242%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-294%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-295%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-243%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-244%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-245%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-246%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-247%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-298%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-299%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-300%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-58%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-59%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-57%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-63%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-64%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-66%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-248%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-249%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-254%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-256%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-257%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-258%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-259%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-260%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-261%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-262%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-263%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-264%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-292%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-267%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-268%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-269%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-270%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-271%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-272%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-273%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-274%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-277%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-278%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-279%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-281%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-282%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-283%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-284%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-291%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-286%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-287%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-288%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-290%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-302%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-303%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-304%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-305%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-306%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-362%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-307%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-308%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-309%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-310%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-311%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-312%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-313%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-314%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-315%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-316%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-363%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-317%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-318%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-319%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-320%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-321%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-322%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-323%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-324%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-325%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-326%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-364%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-365%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-366%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-327%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-328%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-329%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-330%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-331%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-332%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-333%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-334%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-335%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-336%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-367%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-368%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-337%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-338%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-339%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-340%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-341%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-342%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-343%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-344%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-345%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-346%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-371%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-372%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-373%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-347%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-348%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-349%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-350%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-351%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-357%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-358%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-359%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-360%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-361%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-6%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-7%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-9%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-10%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-11%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-12%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-13%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-22%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-23%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-24%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-20%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-21%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-14%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-15%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-16%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-17%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-18%22%2F%3E%3Cg%20data-cell-id%3D%22cskn5mqhr9ZncGVoWKjj-2%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-26%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-27%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-28%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-29%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-30%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22cskn5mqhr9ZncGVoWKjj-3%22%2F%3E%3Cg%20data-cell-id%3D%22cskn5mqhr9ZncGVoWKjj-4%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-1%22%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-2%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-3%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-4%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-5%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-353%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-354%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-355%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-356%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-15%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-22%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-23%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E';
|
|
316
|
+
IconData.planets['rahu'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%20xmlns%3Abx%3D%22https%3A%2F%2Fboxy-svg.com%22%3E%20%3Cdefs%3E%20%3Cbx%3Aexport%3E%20%3Cbx%3Afile%20format%3D%22svg%22%20href%3D%22%23object-0%22%2F%3E%20%3C%2Fbx%3Aexport%3E%20%3C%2Fdefs%3E%20%3Cg%20style%3D%22%22%20transform%3D%22matrix(1%2C%200%2C%200%2C%20-1%2C%200%2C%20200.000003)%22%20id%3D%22object-0%22%3E%20%3Cg%20data-cell-id%3D%220%22%3E%20%3Cg%20data-cell-id%3D%221%22%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-1%22%3E%20%3Cg%2F%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-6%22%3E%20%3Cg%2F%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-7%22%3E%20%3Cg%3E%20%3Cellipse%20cx%3D%2265%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-8%22%3E%20%3Cg%3E%20%3Cellipse%20cx%3D%22135%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-9%22%3E%20%3Cg%3E%20%3Cpath%20d%3D%22M%20124.39%2054.39%20Q%20120%2060%20120%2065%20Q%20120%2070%20130%2095%20Q%20140%20120%20130%20135%20Q%20120%20150%20100%20150%20Q%2080%20150%2070%20135%20Q%2060%20120%2070%2095%20Q%2080%2070%2080%2065%20Q%2080%2060%2075.61%2054.39%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3Cg%20data-cell-id%3D%22fzDwOAeg_iJ89Dt6VeXd-1%22%3E%20%3Cg%3E%20%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E';
|
|
316
317
|
IconData.planets['saturn'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-5%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2090%20139%20L%2090%2039%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2059%20L%20120%2059%20L%2090%2059%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20150%20169%20Q%20138%20179%20129%20174%20Q%20120%20169%20129%20144%20Q%20138%20119%20134%20104%20Q%20130%2089%20110%2089%20Q%2090%2089%2090%20109%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%226yAxXstixJTfL81ozoQc-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22sU4-NP-8qgTjRoMx9Fv4-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E';
|
|
317
318
|
IconData.planets['selena'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%20150%20L%2060%20150%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2099.2%20117.1%20L%20100%20180%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2073.37%2031.14%20C%2062.66%2048.46%2065.45%2070.65%2080.13%2084.94%20C%2094.81%2099.23%20117.6%20101.95%20135.38%2091.52%20C%20125.69%20107.19%20107.04%20115.39%2088.56%20112.1%20C%2070.07%20108.81%2055.61%2094.73%2052.23%2076.73%20C%2048.85%2058.74%2057.27%2040.58%2073.37%2031.14%20Z%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(225%2C92.12%2C73.26)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22B7BV3EczgGRAOl1qaG-U-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E';
|
|
318
319
|
IconData.planets['sun'] = 'data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22KMRcx8_Z6FSBlqI5tEZE-1%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22100%22%20rx%3D%2265%22%20ry%3D%2260%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KMRcx8_Z6FSBlqI5tEZE-2%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22100%22%20rx%3D%2210%22%20ry%3D%2210%22%20fill%3D%22%23000000%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(237%2C%20237%2C%20237))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22adE6InmPBndy7Uo4bRgR-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E';
|
|
@@ -887,7 +888,11 @@ class ChartConfig {
|
|
|
887
888
|
saturn: 0,
|
|
888
889
|
uranus: 0,
|
|
889
890
|
neptune: 0,
|
|
890
|
-
pluto: 0
|
|
891
|
+
pluto: 0,
|
|
892
|
+
rahu: 0,
|
|
893
|
+
ketu: 0,
|
|
894
|
+
lilith: 0,
|
|
895
|
+
selena: 0
|
|
891
896
|
}
|
|
892
897
|
};
|
|
893
898
|
|
|
@@ -962,7 +967,11 @@ class ChartConfig {
|
|
|
962
967
|
saturn: 6,
|
|
963
968
|
uranus: 4,
|
|
964
969
|
neptune: 4,
|
|
965
|
-
pluto: 4
|
|
970
|
+
pluto: 4,
|
|
971
|
+
rahu: 4,
|
|
972
|
+
ketu: 4,
|
|
973
|
+
lilith: 4,
|
|
974
|
+
selena: 4
|
|
966
975
|
},
|
|
967
976
|
colors: {
|
|
968
977
|
// Default colors for each planet
|
|
@@ -975,7 +984,11 @@ class ChartConfig {
|
|
|
975
984
|
saturn: "#336633",
|
|
976
985
|
uranus: "#33cccc",
|
|
977
986
|
neptune: "#3366ff",
|
|
978
|
-
pluto: "#663366"
|
|
987
|
+
pluto: "#663366",
|
|
988
|
+
rahu: "#666666",
|
|
989
|
+
ketu: "#888888",
|
|
990
|
+
lilith: "#330033",
|
|
991
|
+
selena: "#ffccff"
|
|
979
992
|
},
|
|
980
993
|
visible: {
|
|
981
994
|
// Default visibility for each planet
|
|
@@ -988,7 +1001,11 @@ class ChartConfig {
|
|
|
988
1001
|
saturn: true,
|
|
989
1002
|
uranus: true,
|
|
990
1003
|
neptune: true,
|
|
991
|
-
pluto: true
|
|
1004
|
+
pluto: true,
|
|
1005
|
+
rahu: true,
|
|
1006
|
+
ketu: true,
|
|
1007
|
+
lilith: true,
|
|
1008
|
+
selena: true
|
|
992
1009
|
}
|
|
993
1010
|
};
|
|
994
1011
|
|
|
@@ -1831,7 +1848,8 @@ class AstrologyUtils {
|
|
|
1831
1848
|
static getPlanets() {
|
|
1832
1849
|
return [
|
|
1833
1850
|
"sun", "moon", "mercury", "venus", "mars",
|
|
1834
|
-
"jupiter", "saturn", "uranus", "neptune", "pluto"
|
|
1851
|
+
"jupiter", "saturn", "uranus", "neptune", "pluto",
|
|
1852
|
+
"rahu", "ketu", "lilith", "selena"
|
|
1835
1853
|
];
|
|
1836
1854
|
}
|
|
1837
1855
|
|
|
@@ -1863,7 +1881,11 @@ class AstrologyUtils {
|
|
|
1863
1881
|
"saturn": "Saturn",
|
|
1864
1882
|
"uranus": "Uranus",
|
|
1865
1883
|
"neptune": "Neptune",
|
|
1866
|
-
"pluto": "Pluto"
|
|
1884
|
+
"pluto": "Pluto",
|
|
1885
|
+
"rahu": "Rahu",
|
|
1886
|
+
"ketu": "Ketu",
|
|
1887
|
+
"lilith": "Lilith",
|
|
1888
|
+
"selena": "Selena"
|
|
1867
1889
|
},
|
|
1868
1890
|
ru: {
|
|
1869
1891
|
"sun": "Солнце",
|
|
@@ -1875,7 +1897,11 @@ class AstrologyUtils {
|
|
|
1875
1897
|
"saturn": "Сатурн",
|
|
1876
1898
|
"uranus": "Уран",
|
|
1877
1899
|
"neptune": "Нептун",
|
|
1878
|
-
"pluto": "Плутон"
|
|
1900
|
+
"pluto": "Плутон",
|
|
1901
|
+
"rahu": "Раху",
|
|
1902
|
+
"ketu": "Кету",
|
|
1903
|
+
"lilith": "Лилит",
|
|
1904
|
+
"selena": "Селена"
|
|
1879
1905
|
}
|
|
1880
1906
|
};
|
|
1881
1907
|
|
|
@@ -2744,6 +2770,16 @@ class PlanetSymbolRenderer extends BasePlanetRenderer {
|
|
|
2744
2770
|
*/
|
|
2745
2771
|
|
|
2746
2772
|
class PlanetPositionCalculator {
|
|
2773
|
+
static _normalizeAngle(angle) {
|
|
2774
|
+
return ((angle % 360) + 360) % 360;
|
|
2775
|
+
}
|
|
2776
|
+
|
|
2777
|
+
static _getAngle(position) {
|
|
2778
|
+
return position && position.adjustedLongitude !== undefined
|
|
2779
|
+
? position.adjustedLongitude
|
|
2780
|
+
: position.longitude;
|
|
2781
|
+
}
|
|
2782
|
+
|
|
2747
2783
|
/**
|
|
2748
2784
|
* Calculate position for a planet on a circle
|
|
2749
2785
|
* @param {Object} params - Position parameters
|
|
@@ -2828,7 +2864,8 @@ class PlanetPositionCalculator {
|
|
|
2828
2864
|
centerX,
|
|
2829
2865
|
centerY,
|
|
2830
2866
|
baseRadius,
|
|
2831
|
-
iconSize = 24
|
|
2867
|
+
iconSize = 24,
|
|
2868
|
+
maxIterations = 5
|
|
2832
2869
|
} = options;
|
|
2833
2870
|
|
|
2834
2871
|
if (!positions || positions.length <= 1) {
|
|
@@ -2842,72 +2879,51 @@ class PlanetPositionCalculator {
|
|
|
2842
2879
|
|
|
2843
2880
|
console.log(`PlanetPositionCalculator: Adjusting overlaps for ${positions.length} positions`);
|
|
2844
2881
|
|
|
2845
|
-
// Make a copy to not modify originals
|
|
2846
|
-
const adjustedPositions =
|
|
2882
|
+
// Make a copy to not modify originals (also ensures we can add fields safely)
|
|
2883
|
+
const adjustedPositions = positions.map(p => ({ ...p }));
|
|
2847
2884
|
|
|
2848
2885
|
// The minimum angular distance needed to prevent overlap at base radius
|
|
2849
2886
|
// minDistance already includes the desired spacing (iconSize * 1.5)
|
|
2850
2887
|
const minAngularDistance = (minDistance / baseRadius) * (180 / Math.PI);
|
|
2851
2888
|
console.log(`PlanetPositionCalculator: Minimum angular distance: ${minAngularDistance.toFixed(2)}°`);
|
|
2852
|
-
|
|
2853
|
-
//
|
|
2854
|
-
|
|
2855
|
-
|
|
2856
|
-
|
|
2857
|
-
|
|
2858
|
-
const sortedPositions = sortedPositionIndices.map(item => ({
|
|
2859
|
-
...adjustedPositions[item.idx],
|
|
2860
|
-
originalIndex: item.idx
|
|
2861
|
-
}));
|
|
2862
|
-
|
|
2863
|
-
// Find clusters of planets that are too close angularly
|
|
2864
|
-
const clusters = this._findOverlappingClusters(sortedPositions, minAngularDistance);
|
|
2865
|
-
console.log(`PlanetPositionCalculator: Found ${clusters.length} clusters of overlapping positions`);
|
|
2866
|
-
clusters.forEach((cluster, i) => {
|
|
2867
|
-
console.log(`PlanetPositionCalculator: Cluster ${i+1} has ${cluster.length} positions`);
|
|
2868
|
-
});
|
|
2869
|
-
|
|
2870
|
-
// Process each cluster
|
|
2871
|
-
clusters.forEach((cluster, clusterIndex) => {
|
|
2872
|
-
console.log(`PlanetPositionCalculator: Processing cluster ${clusterIndex+1}`);
|
|
2873
|
-
|
|
2874
|
-
if (cluster.length <= 1) {
|
|
2875
|
-
// Single planet - just place at exact base radius with no angle change
|
|
2876
|
-
const planet = cluster[0];
|
|
2877
|
-
console.log(`PlanetPositionCalculator: Single position in cluster, keeping at original longitude ${planet.longitude.toFixed(2)}°`);
|
|
2878
|
-
this._setExactPosition(planet, planet.longitude, baseRadius, centerX, centerY, iconSize);
|
|
2879
|
-
} else {
|
|
2880
|
-
// Handle cluster with multiple planets - distribute by angle
|
|
2881
|
-
console.log(`PlanetPositionCalculator: Distributing ${cluster.length} positions in cluster`);
|
|
2882
|
-
this._distributeClusterByAngle(cluster, baseRadius, minAngularDistance, centerX, centerY, iconSize);
|
|
2883
|
-
|
|
2884
|
-
// Log the distributions
|
|
2885
|
-
cluster.forEach((pos, i) => {
|
|
2886
|
-
console.log(`PlanetPositionCalculator: Position ${i+1} in cluster ${clusterIndex+1} adjusted from ${pos.longitude.toFixed(2)}° to ${pos.adjustedLongitude.toFixed(2)}°`);
|
|
2887
|
-
});
|
|
2889
|
+
|
|
2890
|
+
// Initialize adjustedLongitude for all positions
|
|
2891
|
+
adjustedPositions.forEach(pos => {
|
|
2892
|
+
if (pos.adjustedLongitude === undefined) {
|
|
2893
|
+
pos.adjustedLongitude = pos.longitude;
|
|
2888
2894
|
}
|
|
2895
|
+
this._setExactPosition(pos, this._getAngle(pos), baseRadius, centerX, centerY, iconSize);
|
|
2889
2896
|
});
|
|
2890
|
-
|
|
2891
|
-
//
|
|
2892
|
-
|
|
2893
|
-
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
|
-
|
|
2897
|
-
|
|
2898
|
-
|
|
2899
|
-
|
|
2900
|
-
|
|
2901
|
-
|
|
2902
|
-
|
|
2903
|
-
|
|
2904
|
-
|
|
2905
|
-
|
|
2906
|
-
adjustedPositions[origIndex].adjustedLongitude = pos.adjustedLongitude;
|
|
2907
|
-
}
|
|
2897
|
+
|
|
2898
|
+
// Iteratively resolve overlaps. This avoids "new overlaps" created after distributing a cluster.
|
|
2899
|
+
for (let iteration = 0; iteration < maxIterations; iteration++) {
|
|
2900
|
+
// Sort by current (possibly adjusted) angle for overlap detection
|
|
2901
|
+
const sortedPositions = [...adjustedPositions].sort(
|
|
2902
|
+
(a, b) => this._getAngle(a) - this._getAngle(b)
|
|
2903
|
+
);
|
|
2904
|
+
|
|
2905
|
+
// Find clusters of planets that are too close angularly
|
|
2906
|
+
const clusters = this._findOverlappingClusters(sortedPositions, minAngularDistance);
|
|
2907
|
+
console.log(`PlanetPositionCalculator: Iteration ${iteration + 1}/${maxIterations}, clusters: ${clusters.length}`);
|
|
2908
|
+
|
|
2909
|
+
// No overlaps -> done
|
|
2910
|
+
const hasRealClusters = clusters.some(c => c.length > 1);
|
|
2911
|
+
if (!hasRealClusters) {
|
|
2912
|
+
break;
|
|
2908
2913
|
}
|
|
2909
|
-
|
|
2910
|
-
|
|
2914
|
+
|
|
2915
|
+
// Process each cluster
|
|
2916
|
+
clusters.forEach(cluster => {
|
|
2917
|
+
if (cluster.length <= 1) {
|
|
2918
|
+
const planet = cluster[0];
|
|
2919
|
+
this._setExactPosition(planet, this._getAngle(planet), baseRadius, centerX, centerY, iconSize);
|
|
2920
|
+
return;
|
|
2921
|
+
}
|
|
2922
|
+
|
|
2923
|
+
this._distributeClusterByPush(cluster, baseRadius, minAngularDistance, centerX, centerY, iconSize);
|
|
2924
|
+
});
|
|
2925
|
+
}
|
|
2926
|
+
|
|
2911
2927
|
return adjustedPositions;
|
|
2912
2928
|
}
|
|
2913
2929
|
|
|
@@ -2937,7 +2953,9 @@ class PlanetPositionCalculator {
|
|
|
2937
2953
|
const currPosition = sortedPositions[i];
|
|
2938
2954
|
|
|
2939
2955
|
// Check angular distance, considering wrap-around at 360°
|
|
2940
|
-
|
|
2956
|
+
const prevAngle = this._getAngle(prevPosition);
|
|
2957
|
+
const currAngle = this._getAngle(currPosition);
|
|
2958
|
+
let angleDiff = currAngle - prevAngle;
|
|
2941
2959
|
if (angleDiff < 0) angleDiff += 360;
|
|
2942
2960
|
|
|
2943
2961
|
if (angleDiff < minAngularDistance) {
|
|
@@ -2961,7 +2979,9 @@ class PlanetPositionCalculator {
|
|
|
2961
2979
|
const lastPlanet = sortedPositions[posCount - 1];
|
|
2962
2980
|
const firstPlanetOriginal = sortedPositions[0];
|
|
2963
2981
|
|
|
2964
|
-
|
|
2982
|
+
const lastAngle = this._getAngle(lastPlanet);
|
|
2983
|
+
const firstAngle = this._getAngle(firstPlanetOriginal);
|
|
2984
|
+
let wrapDiff = (firstAngle + 360) - lastAngle;
|
|
2965
2985
|
if (wrapDiff < 0) wrapDiff += 360;
|
|
2966
2986
|
|
|
2967
2987
|
if (wrapDiff < minAngularDistance) {
|
|
@@ -2985,7 +3005,8 @@ class PlanetPositionCalculator {
|
|
|
2985
3005
|
}
|
|
2986
3006
|
|
|
2987
3007
|
/**
|
|
2988
|
-
* Distribute positions in a cluster
|
|
3008
|
+
* Distribute positions in a cluster using a "push-apart" algorithm.
|
|
3009
|
+
* This keeps adjustments as small as possible while ensuring minimum spacing.
|
|
2989
3010
|
* @private
|
|
2990
3011
|
* @param {Array} positions - Array of positions in the cluster
|
|
2991
3012
|
* @param {number} radius - The exact radius to place all positions
|
|
@@ -2994,49 +3015,62 @@ class PlanetPositionCalculator {
|
|
|
2994
3015
|
* @param {number} centerY - Y coordinate of center
|
|
2995
3016
|
* @param {number} iconSize - Size of the icon
|
|
2996
3017
|
*/
|
|
2997
|
-
static
|
|
3018
|
+
static _distributeClusterByPush(positions, radius, minAngularDistance, centerX, centerY, iconSize) {
|
|
2998
3019
|
const n = positions.length;
|
|
2999
|
-
|
|
3000
|
-
|
|
3001
|
-
|
|
3002
|
-
this._setExactPosition(positions[0], positions[0].longitude, radius, centerX, centerY, iconSize);
|
|
3020
|
+
if (n <= 1) {
|
|
3021
|
+
const p = positions[0];
|
|
3022
|
+
this._setExactPosition(p, this._getAngle(p), radius, centerX, centerY, iconSize);
|
|
3003
3023
|
return;
|
|
3004
3024
|
}
|
|
3005
|
-
|
|
3006
|
-
//
|
|
3007
|
-
positions.
|
|
3008
|
-
|
|
3009
|
-
|
|
3010
|
-
const
|
|
3011
|
-
|
|
3012
|
-
|
|
3013
|
-
|
|
3014
|
-
//
|
|
3015
|
-
|
|
3016
|
-
|
|
3025
|
+
|
|
3026
|
+
// Unwrap angles if cluster spans the 0°/360° boundary
|
|
3027
|
+
const baseAngles = positions.map(p => this._getAngle(p));
|
|
3028
|
+
const min = Math.min(...baseAngles);
|
|
3029
|
+
const max = Math.max(...baseAngles);
|
|
3030
|
+
const unwrappedAngles = (max - min > 180)
|
|
3031
|
+
? baseAngles.map(a => (a < 180 ? a + 360 : a))
|
|
3032
|
+
: baseAngles;
|
|
3033
|
+
|
|
3034
|
+
// Sort by unwrapped angle
|
|
3035
|
+
const items = positions
|
|
3036
|
+
.map((p, idx) => ({ p, orig: unwrappedAngles[idx] }))
|
|
3037
|
+
.sort((a, b) => a.orig - b.orig);
|
|
3038
|
+
|
|
3039
|
+
const origAngles = items.map(it => it.orig);
|
|
3040
|
+
let adjusted = [...origAngles];
|
|
3041
|
+
|
|
3042
|
+
// Forward pass: enforce minimum distance
|
|
3043
|
+
for (let i = 1; i < n; i++) {
|
|
3044
|
+
const minAllowed = adjusted[i - 1] + minAngularDistance;
|
|
3045
|
+
if (adjusted[i] < minAllowed) {
|
|
3046
|
+
adjusted[i] = minAllowed;
|
|
3047
|
+
}
|
|
3017
3048
|
}
|
|
3018
|
-
|
|
3019
|
-
//
|
|
3020
|
-
|
|
3021
|
-
|
|
3022
|
-
|
|
3049
|
+
|
|
3050
|
+
// Shift the whole cluster to keep it centered around the original mean angle
|
|
3051
|
+
const origCenter = origAngles.reduce((s, a) => s + a, 0) / n;
|
|
3052
|
+
const adjustedCenter = adjusted.reduce((s, a) => s + a, 0) / n;
|
|
3053
|
+
const shift = origCenter - adjustedCenter;
|
|
3054
|
+
adjusted = adjusted.map(a => a + shift);
|
|
3055
|
+
|
|
3056
|
+
// Re-enforce constraints after shifting
|
|
3057
|
+
for (let i = 1; i < n; i++) {
|
|
3058
|
+
const minAllowed = adjusted[i - 1] + minAngularDistance;
|
|
3059
|
+
if (adjusted[i] < minAllowed) {
|
|
3060
|
+
adjusted[i] = minAllowed;
|
|
3061
|
+
}
|
|
3023
3062
|
}
|
|
3024
|
-
let
|
|
3025
|
-
|
|
3026
|
-
|
|
3027
|
-
|
|
3028
|
-
|
|
3029
|
-
|
|
3030
|
-
|
|
3031
|
-
|
|
3032
|
-
|
|
3033
|
-
// Calculate start angle (center - half of span)
|
|
3034
|
-
const startAngle = (centerAngle - spanToUse/2 + 360) % 360;
|
|
3035
|
-
|
|
3036
|
-
// Distribute planets evenly from the start angle
|
|
3063
|
+
for (let i = n - 2; i >= 0; i--) {
|
|
3064
|
+
const maxAllowed = adjusted[i + 1] - minAngularDistance;
|
|
3065
|
+
if (adjusted[i] > maxAllowed) {
|
|
3066
|
+
adjusted[i] = maxAllowed;
|
|
3067
|
+
}
|
|
3068
|
+
}
|
|
3069
|
+
|
|
3070
|
+
// Apply results
|
|
3037
3071
|
for (let i = 0; i < n; i++) {
|
|
3038
|
-
const angle = (
|
|
3039
|
-
this._setExactPosition(
|
|
3072
|
+
const angle = this._normalizeAngle(adjusted[i]);
|
|
3073
|
+
this._setExactPosition(items[i].p, angle, radius, centerX, centerY, iconSize);
|
|
3040
3074
|
}
|
|
3041
3075
|
}
|
|
3042
3076
|
|
|
@@ -3236,7 +3270,7 @@ class PrimaryPlanetRenderer extends BasePlanetRenderer {
|
|
|
3236
3270
|
this.symbolRenderer.addPlanetTooltip(planetGroup, planet);
|
|
3237
3271
|
|
|
3238
3272
|
// Render connector if needed
|
|
3239
|
-
const connector = this.symbolRenderer.renderConnector(planetGroup, planet, iconSize);
|
|
3273
|
+
const connector = this.symbolRenderer.renderConnector(planetGroup, planet, iconSize, 0.9);
|
|
3240
3274
|
if (connector) {
|
|
3241
3275
|
planetGroup.appendChild(connector);
|
|
3242
3276
|
}
|
|
@@ -3418,7 +3452,7 @@ class SecondaryPlanetRenderer extends BasePlanetRenderer {
|
|
|
3418
3452
|
this.symbolRenderer.addPlanetTooltip(planetGroup, planet);
|
|
3419
3453
|
|
|
3420
3454
|
// Render connector if needed
|
|
3421
|
-
const connector = this.symbolRenderer.renderConnector(planetGroup, planet, iconSize);
|
|
3455
|
+
const connector = this.symbolRenderer.renderConnector(planetGroup, planet, iconSize, 0.9);
|
|
3422
3456
|
if (connector) {
|
|
3423
3457
|
planetGroup.appendChild(connector);
|
|
3424
3458
|
}
|
|
@@ -5457,8 +5491,13 @@ class ChartRenderer {
|
|
|
5457
5491
|
const centerY = this.chart.config.svg.center.y;
|
|
5458
5492
|
const c3Radius = this.chart.config.radius.innermost; // C3
|
|
5459
5493
|
|
|
5460
|
-
// Only draw the innermost circle if secondary planets are enabled
|
|
5461
|
-
|
|
5494
|
+
// Only draw the innermost circle if secondary planets are enabled AND we actually have secondary data
|
|
5495
|
+
const hasSecondaryPlanetsData =
|
|
5496
|
+
this.chart?.secondaryPlanets &&
|
|
5497
|
+
typeof this.chart.secondaryPlanets === 'object' &&
|
|
5498
|
+
Object.keys(this.chart.secondaryPlanets).length > 0;
|
|
5499
|
+
|
|
5500
|
+
if (this.chart.config.planetSettings.secondaryEnabled !== false && hasSecondaryPlanetsData) {
|
|
5462
5501
|
this.drawInnermostCircle(zodiacGroup, this.svgUtils, centerX, centerY, c3Radius);
|
|
5463
5502
|
}
|
|
5464
5503
|
|