@roxyapi/ui 0.4.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/AGENTS.md +21 -0
  2. package/README.md +16 -0
  3. package/dist/cdn/components/ashtakavarga-grid.js +12 -12
  4. package/dist/cdn/components/ashtakavarga-grid.js.map +4 -4
  5. package/dist/cdn/components/biorhythm-chart.js +8 -8
  6. package/dist/cdn/components/biorhythm-chart.js.map +4 -4
  7. package/dist/cdn/components/choghadiya-grid.js +12 -12
  8. package/dist/cdn/components/choghadiya-grid.js.map +4 -4
  9. package/dist/cdn/components/compatibility-card.js +7 -7
  10. package/dist/cdn/components/compatibility-card.js.map +4 -4
  11. package/dist/cdn/components/dasha-timeline.js +8 -8
  12. package/dist/cdn/components/dasha-timeline.js.map +4 -4
  13. package/dist/cdn/components/data.js +14 -14
  14. package/dist/cdn/components/data.js.map +4 -4
  15. package/dist/cdn/components/divisional-chart.js +29 -29
  16. package/dist/cdn/components/divisional-chart.js.map +4 -4
  17. package/dist/cdn/components/dosha-card.js +6 -6
  18. package/dist/cdn/components/dosha-card.js.map +4 -4
  19. package/dist/cdn/components/guna-milan.js +11 -11
  20. package/dist/cdn/components/guna-milan.js.map +4 -4
  21. package/dist/cdn/components/hexagram.js +9 -9
  22. package/dist/cdn/components/hexagram.js.map +4 -4
  23. package/dist/cdn/components/horoscope-card.js +18 -18
  24. package/dist/cdn/components/horoscope-card.js.map +4 -4
  25. package/dist/cdn/components/kp-chart.js +40 -40
  26. package/dist/cdn/components/kp-chart.js.map +4 -4
  27. package/dist/cdn/components/kp-planets-table.js +7 -7
  28. package/dist/cdn/components/kp-planets-table.js.map +4 -4
  29. package/dist/cdn/components/kp-ruling-planets.js +13 -13
  30. package/dist/cdn/components/kp-ruling-planets.js.map +4 -4
  31. package/dist/cdn/components/moon-phase.js +11 -11
  32. package/dist/cdn/components/moon-phase.js.map +4 -4
  33. package/dist/cdn/components/nakshatra-card.js +16 -16
  34. package/dist/cdn/components/nakshatra-card.js.map +4 -4
  35. package/dist/cdn/components/natal-chart.js +14 -14
  36. package/dist/cdn/components/natal-chart.js.map +4 -4
  37. package/dist/cdn/components/numerology-card.js +8 -8
  38. package/dist/cdn/components/numerology-card.js.map +4 -4
  39. package/dist/cdn/components/panchang-table.js +9 -9
  40. package/dist/cdn/components/panchang-table.js.map +4 -4
  41. package/dist/cdn/components/shadbala-table.js +13 -13
  42. package/dist/cdn/components/shadbala-table.js.map +4 -4
  43. package/dist/cdn/components/synastry-chart.js +18 -18
  44. package/dist/cdn/components/synastry-chart.js.map +4 -4
  45. package/dist/cdn/components/tarot-card.js +21 -21
  46. package/dist/cdn/components/tarot-card.js.map +4 -4
  47. package/dist/cdn/components/tarot-spread.js +27 -27
  48. package/dist/cdn/components/tarot-spread.js.map +4 -4
  49. package/dist/cdn/components/transits-table.js +15 -15
  50. package/dist/cdn/components/transits-table.js.map +4 -4
  51. package/dist/cdn/components/vedic-kundli.js +36 -36
  52. package/dist/cdn/components/vedic-kundli.js.map +4 -4
  53. package/dist/cdn/components/vedic-planets-table.js +11 -11
  54. package/dist/cdn/components/vedic-planets-table.js.map +4 -4
  55. package/dist/cdn/components/western-planets-table.js +8 -8
  56. package/dist/cdn/components/western-planets-table.js.map +4 -4
  57. package/dist/cdn/components/yoga-list.js +6 -6
  58. package/dist/cdn/components/yoga-list.js.map +4 -4
  59. package/dist/cdn/roxy-ui.js +231 -231
  60. package/dist/cdn/roxy-ui.js.map +4 -4
  61. package/dist/components/ashtakavarga-grid.d.ts +1 -0
  62. package/dist/components/ashtakavarga-grid.d.ts.map +1 -1
  63. package/dist/components/ashtakavarga-grid.js +47 -1
  64. package/dist/components/ashtakavarga-grid.js.map +3 -3
  65. package/dist/components/biorhythm-chart.d.ts +1 -0
  66. package/dist/components/biorhythm-chart.d.ts.map +1 -1
  67. package/dist/components/biorhythm-chart.js +47 -1
  68. package/dist/components/biorhythm-chart.js.map +3 -3
  69. package/dist/components/choghadiya-grid.d.ts +1 -0
  70. package/dist/components/choghadiya-grid.d.ts.map +1 -1
  71. package/dist/components/choghadiya-grid.js +47 -1
  72. package/dist/components/choghadiya-grid.js.map +3 -3
  73. package/dist/components/compatibility-card.d.ts +1 -0
  74. package/dist/components/compatibility-card.d.ts.map +1 -1
  75. package/dist/components/compatibility-card.js +47 -1
  76. package/dist/components/compatibility-card.js.map +3 -3
  77. package/dist/components/dasha-timeline.d.ts +1 -0
  78. package/dist/components/dasha-timeline.d.ts.map +1 -1
  79. package/dist/components/dasha-timeline.js +47 -1
  80. package/dist/components/dasha-timeline.js.map +3 -3
  81. package/dist/components/data.d.ts +1 -0
  82. package/dist/components/data.d.ts.map +1 -1
  83. package/dist/components/data.js +47 -1
  84. package/dist/components/data.js.map +3 -3
  85. package/dist/components/divisional-chart.d.ts +1 -0
  86. package/dist/components/divisional-chart.d.ts.map +1 -1
  87. package/dist/components/divisional-chart.js +47 -1
  88. package/dist/components/divisional-chart.js.map +3 -3
  89. package/dist/components/dosha-card.d.ts +1 -0
  90. package/dist/components/dosha-card.d.ts.map +1 -1
  91. package/dist/components/dosha-card.js +47 -1
  92. package/dist/components/dosha-card.js.map +3 -3
  93. package/dist/components/guna-milan.d.ts +1 -0
  94. package/dist/components/guna-milan.d.ts.map +1 -1
  95. package/dist/components/guna-milan.js +47 -1
  96. package/dist/components/guna-milan.js.map +3 -3
  97. package/dist/components/hexagram.d.ts +1 -0
  98. package/dist/components/hexagram.d.ts.map +1 -1
  99. package/dist/components/hexagram.js +47 -1
  100. package/dist/components/hexagram.js.map +3 -3
  101. package/dist/components/horoscope-card.d.ts +1 -0
  102. package/dist/components/horoscope-card.d.ts.map +1 -1
  103. package/dist/components/horoscope-card.js +47 -1
  104. package/dist/components/horoscope-card.js.map +3 -3
  105. package/dist/components/kp-chart.d.ts +1 -0
  106. package/dist/components/kp-chart.d.ts.map +1 -1
  107. package/dist/components/kp-chart.js +47 -1
  108. package/dist/components/kp-chart.js.map +3 -3
  109. package/dist/components/kp-planets-table.d.ts +1 -0
  110. package/dist/components/kp-planets-table.d.ts.map +1 -1
  111. package/dist/components/kp-planets-table.js +47 -1
  112. package/dist/components/kp-planets-table.js.map +3 -3
  113. package/dist/components/kp-ruling-planets.d.ts +1 -0
  114. package/dist/components/kp-ruling-planets.d.ts.map +1 -1
  115. package/dist/components/kp-ruling-planets.js +47 -1
  116. package/dist/components/kp-ruling-planets.js.map +3 -3
  117. package/dist/components/moon-phase.d.ts +1 -0
  118. package/dist/components/moon-phase.d.ts.map +1 -1
  119. package/dist/components/moon-phase.js +47 -1
  120. package/dist/components/moon-phase.js.map +3 -3
  121. package/dist/components/nakshatra-card.d.ts +1 -0
  122. package/dist/components/nakshatra-card.d.ts.map +1 -1
  123. package/dist/components/nakshatra-card.js +47 -1
  124. package/dist/components/nakshatra-card.js.map +3 -3
  125. package/dist/components/natal-chart.d.ts +1 -0
  126. package/dist/components/natal-chart.d.ts.map +1 -1
  127. package/dist/components/natal-chart.js +47 -1
  128. package/dist/components/natal-chart.js.map +3 -3
  129. package/dist/components/numerology-card.d.ts +1 -0
  130. package/dist/components/numerology-card.d.ts.map +1 -1
  131. package/dist/components/numerology-card.js +47 -1
  132. package/dist/components/numerology-card.js.map +3 -3
  133. package/dist/components/panchang-table.d.ts +1 -0
  134. package/dist/components/panchang-table.d.ts.map +1 -1
  135. package/dist/components/panchang-table.js +47 -1
  136. package/dist/components/panchang-table.js.map +3 -3
  137. package/dist/components/shadbala-table.d.ts +1 -0
  138. package/dist/components/shadbala-table.d.ts.map +1 -1
  139. package/dist/components/shadbala-table.js +47 -1
  140. package/dist/components/shadbala-table.js.map +3 -3
  141. package/dist/components/synastry-chart.d.ts +1 -0
  142. package/dist/components/synastry-chart.d.ts.map +1 -1
  143. package/dist/components/synastry-chart.js +47 -1
  144. package/dist/components/synastry-chart.js.map +3 -3
  145. package/dist/components/tarot-card.d.ts +1 -0
  146. package/dist/components/tarot-card.d.ts.map +1 -1
  147. package/dist/components/tarot-card.js +47 -1
  148. package/dist/components/tarot-card.js.map +3 -3
  149. package/dist/components/tarot-spread.d.ts +1 -0
  150. package/dist/components/tarot-spread.d.ts.map +1 -1
  151. package/dist/components/tarot-spread.js +47 -1
  152. package/dist/components/tarot-spread.js.map +3 -3
  153. package/dist/components/transits-table.d.ts +1 -0
  154. package/dist/components/transits-table.d.ts.map +1 -1
  155. package/dist/components/transits-table.js +47 -1
  156. package/dist/components/transits-table.js.map +3 -3
  157. package/dist/components/vedic-kundli.d.ts +1 -0
  158. package/dist/components/vedic-kundli.d.ts.map +1 -1
  159. package/dist/components/vedic-kundli.js +47 -1
  160. package/dist/components/vedic-kundli.js.map +3 -3
  161. package/dist/components/vedic-planets-table.d.ts +1 -0
  162. package/dist/components/vedic-planets-table.d.ts.map +1 -1
  163. package/dist/components/vedic-planets-table.js +47 -1
  164. package/dist/components/vedic-planets-table.js.map +3 -3
  165. package/dist/components/western-planets-table.d.ts +1 -0
  166. package/dist/components/western-planets-table.d.ts.map +1 -1
  167. package/dist/components/western-planets-table.js +47 -1
  168. package/dist/components/western-planets-table.js.map +3 -3
  169. package/dist/components/yoga-list.d.ts +1 -0
  170. package/dist/components/yoga-list.d.ts.map +1 -1
  171. package/dist/components/yoga-list.js +47 -1
  172. package/dist/components/yoga-list.js.map +3 -3
  173. package/dist/index.cjs +102 -29
  174. package/dist/index.cjs.map +3 -3
  175. package/dist/index.js +102 -29
  176. package/dist/index.js.map +3 -3
  177. package/dist/types/index.d.ts +1 -1
  178. package/dist/types/index.d.ts.map +1 -1
  179. package/dist/types/types.gen.d.ts +590 -202
  180. package/dist/types/types.gen.d.ts.map +1 -1
  181. package/dist/utils/markup-data.d.ts +57 -0
  182. package/dist/utils/markup-data.d.ts.map +1 -0
  183. package/dist/version.d.ts +1 -1
  184. package/package.json +1 -1
  185. package/src/components/ashtakavarga-grid.ts +9 -0
  186. package/src/components/biorhythm-chart.ts +9 -0
  187. package/src/components/choghadiya-grid.ts +9 -0
  188. package/src/components/compatibility-card.ts +9 -0
  189. package/src/components/dasha-timeline.ts +9 -0
  190. package/src/components/data.ts +9 -0
  191. package/src/components/divisional-chart.ts +9 -0
  192. package/src/components/dosha-card.ts +9 -0
  193. package/src/components/guna-milan.ts +9 -0
  194. package/src/components/hexagram.ts +9 -0
  195. package/src/components/horoscope-card.ts +9 -0
  196. package/src/components/kp-chart.ts +9 -0
  197. package/src/components/kp-planets-table.ts +9 -0
  198. package/src/components/kp-ruling-planets.ts +9 -0
  199. package/src/components/moon-phase.ts +9 -0
  200. package/src/components/nakshatra-card.ts +9 -0
  201. package/src/components/natal-chart.ts +9 -0
  202. package/src/components/numerology-card.ts +9 -0
  203. package/src/components/panchang-table.ts +9 -0
  204. package/src/components/shadbala-table.ts +9 -0
  205. package/src/components/synastry-chart.ts +9 -0
  206. package/src/components/tarot-card.ts +9 -0
  207. package/src/components/tarot-spread.ts +9 -0
  208. package/src/components/transits-table.ts +9 -0
  209. package/src/components/vedic-kundli.ts +9 -0
  210. package/src/components/vedic-planets-table.ts +9 -0
  211. package/src/components/western-planets-table.ts +9 -0
  212. package/src/components/yoga-list.ts +9 -0
  213. package/src/types/index.ts +1 -1
  214. package/src/types/types.gen.ts +602 -200
  215. package/src/utils/markup-data.ts +115 -0
  216. package/src/version.ts +1 -1
package/AGENTS.md CHANGED
@@ -320,6 +320,27 @@ export default function BirthChartView({ data }: { data: unknown }) {
320
320
  }
321
321
  ```
322
322
 
323
+ ### Pattern 7: server-rendered markup (WordPress, JSX SSR, static HTML)
324
+
325
+ When the page is rendered on the server or served from cache, there may be no JavaScript to set the `data` property per element. Render the response into a child `<script type="application/json" class="roxy-data">` instead. The component reads the embedded JSON on load. No per-element script, no API key in the browser.
326
+
327
+ ```html
328
+ <roxy-natal-chart>
329
+ <script type="application/json" class="roxy-data">
330
+ { "planets": [ ], "houses": [ ], "aspects": [ ] }
331
+ </script>
332
+ </roxy-natal-chart>
333
+ ```
334
+
335
+ Rules for this pattern:
336
+
337
+ - The JSON must be the unwrapped RoxyAPI response, the same shape you would assign to `element.data`. Do not embed the SDK envelope (`{ data, error, request, response }`); embed `data`.
338
+ - The script must be a direct child of the component and carry both `type="application/json"` and `class="roxy-data"`.
339
+ - The JavaScript property always wins. If you assign `element.data` in script, the markup is ignored. One component covers both server-rendered and dynamic pages with no branching.
340
+ - You can nest a server-rendered HTML fallback inside the same element for no-JavaScript and crawler views. The component reads only the marked script and leaves the fallback in place.
341
+
342
+ This is how the WordPress plugin renders: PHP fetches the response server-side, caches it, and writes the script into the page. The same shape works in any framework that emits HTML.
343
+
323
344
  ## Theming and dark mode
324
345
 
325
346
  Components react to three signals in priority order. No events to dispatch. No JS bridge to write.
package/README.md CHANGED
@@ -281,6 +281,22 @@ Always call `/location/search` first. Every chart endpoint expects latitude, lon
281
281
 
282
282
  > **Timezone format.** RoxyAPI accepts both forms: a decimal-hour offset (`5.5` for IST, `-5` for EST) or an IANA name (`'Asia/Kolkata'`, `'America/New_York'`). Pick one and stay consistent. The decimal form is shorter and what `/location/search` returns; examples on this page use it. The IANA form is correct over DST boundaries when historical accuracy matters.
283
283
 
284
+ ## Server-rendered, no JavaScript wiring
285
+
286
+ Server-rendered and cached pages (WordPress, JSX SSR, static HTML) cannot always run JavaScript to set the `data` property per element. Render the response into a child `<script type="application/json" class="roxy-data">` on the server instead. The component reads it on load. No per-element script, no API key in the browser.
287
+
288
+ ```html
289
+ <roxy-natal-chart>
290
+ <script type="application/json" class="roxy-data">
291
+ { "planets": [ ... ], "houses": [ ... ], "aspects": [ ... ] }
292
+ </script>
293
+ </roxy-natal-chart>
294
+ ```
295
+
296
+ The component picks up the embedded JSON when no `data` property has been set. The JavaScript property always wins: assign `element.data` and the markup is ignored, so dynamic pages and server-rendered pages share one component with no branching. You can nest a server-rendered HTML fallback inside the same element for no-JavaScript and crawler views; the component leaves it untouched and reads only the marked script.
297
+
298
+ This is how the WordPress plugin renders: PHP fetches the response server-side, caches it, and embeds it in the page. The same shape works in any framework that emits HTML.
299
+
284
300
  ## Most-used components per domain
285
301
 
286
302
  The highest-demand components by domain, in the order you are most likely to ship them. Each pairing shows the SDK call that returns the response shape the component renders. Spec change in the API translates to typed change at the component boundary; the pairing below is derived from the live OpenAPI spec, not invented. Full catalog in the [Components](#components) table.
@@ -1,6 +1,6 @@
1
- "use strict";var RoxyUI_ashtakavarga_grid=(()=>{var L=Object.defineProperty;var ot=Object.getOwnPropertyDescriptor;var Et=Object.getOwnPropertyNames;var Pt=Object.prototype.hasOwnProperty;var Ct=(i,t)=>{for(var e in t)L(i,e,{get:t[e],enumerable:!0})},Tt=(i,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Et(t))!Pt.call(i,s)&&s!==e&&L(i,s,{get:()=>t[s],enumerable:!(r=ot(t,s))||r.enumerable});return i};var kt=i=>Tt(L({},"__esModule",{value:!0}),i),B=(i,t,e,r)=>{for(var s=r>1?void 0:r?ot(t,e):t,o=i.length-1,a;o>=0;o--)(a=i[o])&&(s=(r?a(t,e,s):a(s))||s);return r&&s&&L(t,e,s),s};var Ft={};Ct(Ft,{RoxyAshtakavargaGrid:()=>v});var q=globalThis,j=q.ShadowRoot&&(q.ShadyCSS===void 0||q.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,G=Symbol(),at=new WeakMap,P=class{constructor(t,e,r){if(this._$cssResult$=!0,r!==G)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(j&&t===void 0){let r=e!==void 0&&e.length===1;r&&(t=at.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),r&&at.set(e,t))}return t}toString(){return this.cssText}},nt=i=>new P(typeof i=="string"?i:i+"",void 0,G),C=(i,...t)=>{let e=i.length===1?i[0]:t.reduce((r,s,o)=>r+(a=>{if(a._$cssResult$===!0)return a.cssText;if(typeof a=="number")return a;throw Error("Value passed to 'css' function must be a 'css' function result: "+a+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+i[o+1],i[0]);return new P(e,i,G)},ht=(i,t)=>{if(j)i.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let r=document.createElement("style"),s=q.litNonce;s!==void 0&&r.setAttribute("nonce",s),r.textContent=e.cssText,i.appendChild(r)}},W=j?i=>i:i=>i instanceof CSSStyleSheet?(t=>{let e="";for(let r of t.cssRules)e+=r.cssText;return nt(e)})(i):i;var{is:Rt,defineProperty:Mt,getOwnPropertyDescriptor:Nt,getOwnPropertyNames:Ot,getOwnPropertySymbols:Ut,getPrototypeOf:Ht}=Object,z=globalThis,lt=z.trustedTypes,Lt=lt?lt.emptyScript:"",Bt=z.reactiveElementPolyfillSupport,T=(i,t)=>i,k={toAttribute(i,t){switch(t){case Boolean:i=i?Lt:null;break;case Object:case Array:i=i==null?i:JSON.stringify(i)}return i},fromAttribute(i,t){let e=i;switch(t){case Boolean:e=i!==null;break;case Number:e=i===null?null:Number(i);break;case Object:case Array:try{e=JSON.parse(i)}catch{e=null}}return e}},D=(i,t)=>!Rt(i,t),ct={attribute:!0,type:String,converter:k,reflect:!1,useDefault:!1,hasChanged:D};Symbol.metadata??=Symbol("metadata"),z.litPropertyMetadata??=new WeakMap;var f=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=ct){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let r=Symbol(),s=this.getPropertyDescriptor(t,r,e);s!==void 0&&Mt(this.prototype,t,s)}}static getPropertyDescriptor(t,e,r){let{get:s,set:o}=Nt(this.prototype,t)??{get(){return this[e]},set(a){this[e]=a}};return{get:s,set(a){let h=s?.call(this);o?.call(this,a),this.requestUpdate(t,h,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??ct}static _$Ei(){if(this.hasOwnProperty(T("elementProperties")))return;let t=Ht(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(T("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(T("properties"))){let e=this.properties,r=[...Ot(e),...Ut(e)];for(let s of r)this.createProperty(s,e[s])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[r,s]of e)this.elementProperties.set(r,s)}this._$Eh=new Map;for(let[e,r]of this.elementProperties){let s=this._$Eu(e,r);s!==void 0&&this._$Eh.set(s,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let r=new Set(t.flat(1/0).reverse());for(let s of r)e.unshift(W(s))}else t!==void 0&&e.push(W(t));return e}static _$Eu(t,e){let r=e.attribute;return r===!1?void 0:typeof r=="string"?r:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let r of e.keys())this.hasOwnProperty(r)&&(t.set(r,this[r]),delete this[r]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return ht(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,r){this._$AK(t,r)}_$ET(t,e){let r=this.constructor.elementProperties.get(t),s=this.constructor._$Eu(t,r);if(s!==void 0&&r.reflect===!0){let o=(r.converter?.toAttribute!==void 0?r.converter:k).toAttribute(e,r.type);this._$Em=t,o==null?this.removeAttribute(s):this.setAttribute(s,o),this._$Em=null}}_$AK(t,e){let r=this.constructor,s=r._$Eh.get(t);if(s!==void 0&&this._$Em!==s){let o=r.getPropertyOptions(s),a=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:k;this._$Em=s;let h=a.fromAttribute(e,o.type);this[s]=h??this._$Ej?.get(s)??h,this._$Em=null}}requestUpdate(t,e,r,s=!1,o){if(t!==void 0){let a=this.constructor;if(s===!1&&(o=this[t]),r??=a.getPropertyOptions(t),!((r.hasChanged??D)(o,e)||r.useDefault&&r.reflect&&o===this._$Ej?.get(t)&&!this.hasAttribute(a._$Eu(t,r))))return;this.C(t,e,r)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:r,reflect:s,wrapped:o},a){r&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,a??e??this[t]),o!==!0||a!==void 0)||(this._$AL.has(t)||(this.hasUpdated||r||(e=void 0),this._$AL.set(t,e)),s===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[s,o]of this._$Ep)this[s]=o;this._$Ep=void 0}let r=this.constructor.elementProperties;if(r.size>0)for(let[s,o]of r){let{wrapped:a}=o,h=this[s];a!==!0||this._$AL.has(s)||h===void 0||this.C(s,void 0,o,h)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(r=>r.hostUpdate?.()),this.update(e)):this._$EM()}catch(r){throw t=!1,this._$EM(),r}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};f.elementStyles=[],f.shadowRootOptions={mode:"open"},f[T("elementProperties")]=new Map,f[T("finalized")]=new Map,Bt?.({ReactiveElement:f}),(z.reactiveElementVersions??=[]).push("2.1.2");var tt=globalThis,dt=i=>i,I=tt.trustedTypes,pt=I?I.createPolicy("lit-html",{createHTML:i=>i}):void 0,bt="$lit$",y=`lit$${Math.random().toFixed(9).slice(2)}$`,vt="?"+y,qt=`<${vt}>`,_=document,M=()=>_.createComment(""),N=i=>i===null||typeof i!="object"&&typeof i!="function",et=Array.isArray,jt=i=>et(i)||typeof i?.[Symbol.iterator]=="function",F=`[
2
- \f\r]`,R=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ut=/-->/g,mt=/>/g,$=RegExp(`>|${F}(?:([^\\s"'>=/]+)(${F}*=${F}*(?:[^
3
- \f\r"'\`<>=]|("|')|))|$)`,"g"),ft=/'/g,gt=/"/g,$t=/^(?:script|style|textarea|title)$/i,rt=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),u=rt(1),te=rt(2),ee=rt(3),A=Symbol.for("lit-noChange"),c=Symbol.for("lit-nothing"),yt=new WeakMap,x=_.createTreeWalker(_,129);function xt(i,t){if(!et(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return pt!==void 0?pt.createHTML(t):t}var zt=(i,t)=>{let e=i.length-1,r=[],s,o=t===2?"<svg>":t===3?"<math>":"",a=R;for(let h=0;h<e;h++){let n=i[h],d,p,l=-1,m=0;for(;m<n.length&&(a.lastIndex=m,p=a.exec(n),p!==null);)m=a.lastIndex,a===R?p[1]==="!--"?a=ut:p[1]!==void 0?a=mt:p[2]!==void 0?($t.test(p[2])&&(s=RegExp("</"+p[2],"g")),a=$):p[3]!==void 0&&(a=$):a===$?p[0]===">"?(a=s??R,l=-1):p[1]===void 0?l=-2:(l=a.lastIndex-p[2].length,d=p[1],a=p[3]===void 0?$:p[3]==='"'?gt:ft):a===gt||a===ft?a=$:a===ut||a===mt?a=R:(a=$,s=void 0);let g=a===$&&i[h+1].startsWith("/>")?" ":"";o+=a===R?n+qt:l>=0?(r.push(d),n.slice(0,l)+bt+n.slice(l)+y+g):n+y+(l===-2?h:g)}return[xt(i,o+(i[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),r]},O=class i{constructor({strings:t,_$litType$:e},r){let s;this.parts=[];let o=0,a=0,h=t.length-1,n=this.parts,[d,p]=zt(t,e);if(this.el=i.createElement(d,r),x.currentNode=this.el.content,e===2||e===3){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(s=x.nextNode())!==null&&n.length<h;){if(s.nodeType===1){if(s.hasAttributes())for(let l of s.getAttributeNames())if(l.endsWith(bt)){let m=p[a++],g=s.getAttribute(l).split(y),H=/([.?@])?(.*)/.exec(m);n.push({type:1,index:o,name:H[2],strings:g,ctor:H[1]==="."?J:H[1]==="?"?Z:H[1]==="@"?Q:E}),s.removeAttribute(l)}else l.startsWith(y)&&(n.push({type:6,index:o}),s.removeAttribute(l));if($t.test(s.tagName)){let l=s.textContent.split(y),m=l.length-1;if(m>0){s.textContent=I?I.emptyScript:"";for(let g=0;g<m;g++)s.append(l[g],M()),x.nextNode(),n.push({type:2,index:++o});s.append(l[m],M())}}}else if(s.nodeType===8)if(s.data===vt)n.push({type:2,index:o});else{let l=-1;for(;(l=s.data.indexOf(y,l+1))!==-1;)n.push({type:7,index:o}),l+=y.length-1}o++}}static createElement(t,e){let r=_.createElement("template");return r.innerHTML=t,r}};function w(i,t,e=i,r){if(t===A)return t;let s=r!==void 0?e._$Co?.[r]:e._$Cl,o=N(t)?void 0:t._$litDirective$;return s?.constructor!==o&&(s?._$AO?.(!1),o===void 0?s=void 0:(s=new o(i),s._$AT(i,e,r)),r!==void 0?(e._$Co??=[])[r]=s:e._$Cl=s),s!==void 0&&(t=w(i,s._$AS(i,t.values),s,r)),t}var Y=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:r}=this._$AD,s=(t?.creationScope??_).importNode(e,!0);x.currentNode=s;let o=x.nextNode(),a=0,h=0,n=r[0];for(;n!==void 0;){if(a===n.index){let d;n.type===2?d=new U(o,o.nextSibling,this,t):n.type===1?d=new n.ctor(o,n.name,n.strings,this,t):n.type===6&&(d=new X(o,this,t)),this._$AV.push(d),n=r[++h]}a!==n?.index&&(o=x.nextNode(),a++)}return x.currentNode=_,s}p(t){let e=0;for(let r of this._$AV)r!==void 0&&(r.strings!==void 0?(r._$AI(t,r,e),e+=r.strings.length-2):r._$AI(t[e])),e++}},U=class i{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,r,s){this.type=2,this._$AH=c,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=r,this.options=s,this._$Cv=s?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=w(this,t,e),N(t)?t===c||t==null||t===""?(this._$AH!==c&&this._$AR(),this._$AH=c):t!==this._$AH&&t!==A&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):jt(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==c&&N(this._$AH)?this._$AA.nextSibling.data=t:this.T(_.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:r}=t,s=typeof r=="number"?this._$AC(t):(r.el===void 0&&(r.el=O.createElement(xt(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===s)this._$AH.p(e);else{let o=new Y(s,this),a=o.u(this.options);o.p(e),this.T(a),this._$AH=o}}_$AC(t){let e=yt.get(t.strings);return e===void 0&&yt.set(t.strings,e=new O(t)),e}k(t){et(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,r,s=0;for(let o of t)s===e.length?e.push(r=new i(this.O(M()),this.O(M()),this,this.options)):r=e[s],r._$AI(o),s++;s<e.length&&(this._$AR(r&&r._$AB.nextSibling,s),e.length=s)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let r=dt(t).nextSibling;dt(t).remove(),t=r}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},E=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,r,s,o){this.type=1,this._$AH=c,this._$AN=void 0,this.element=t,this.name=e,this._$AM=s,this.options=o,r.length>2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=c}_$AI(t,e=this,r,s){let o=this.strings,a=!1;if(o===void 0)t=w(this,t,e,0),a=!N(t)||t!==this._$AH&&t!==A,a&&(this._$AH=t);else{let h=t,n,d;for(t=o[0],n=0;n<o.length-1;n++)d=w(this,h[r+n],e,n),d===A&&(d=this._$AH[n]),a||=!N(d)||d!==this._$AH[n],d===c?t=c:t!==c&&(t+=(d??"")+o[n+1]),this._$AH[n]=d}a&&!s&&this.j(t)}j(t){t===c?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},J=class extends E{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===c?void 0:t}},Z=class extends E{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==c)}},Q=class extends E{constructor(t,e,r,s,o){super(t,e,r,s,o),this.type=5}_$AI(t,e=this){if((t=w(this,t,e,0)??c)===A)return;let r=this._$AH,s=t===c&&r!==c||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,o=t!==c&&(r===c||s);s&&this.element.removeEventListener(this.name,this,r),o&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},X=class{constructor(t,e,r){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(t){w(this,t)}};var Dt=tt.litHtmlPolyfillSupport;Dt?.(O,U),(tt.litHtmlVersions??=[]).push("3.3.2");var _t=(i,t,e)=>{let r=e?.renderBefore??t,s=r._$litPart$;if(s===void 0){let o=e?.renderBefore??null;r._$litPart$=s=new U(t.insertBefore(M(),o),o,void 0,e??{})}return s._$AI(i),s};var st=globalThis,b=class extends f{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=_t(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return A}};b._$litElement$=!0,b.finalized=!0,st.litElementHydrateSupport?.({LitElement:b});var It=st.litElementPolyfillSupport;It?.({LitElement:b});(st.litElementVersions??=[]).push("4.2.2");var At=i=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(i,t)}):customElements.define(i,t)};var Vt={attribute:!0,type:String,converter:k,reflect:!1,hasChanged:D},Kt=(i=Vt,t,e)=>{let{kind:r,metadata:s}=e,o=globalThis.litPropertyMetadata.get(s);if(o===void 0&&globalThis.litPropertyMetadata.set(s,o=new Map),r==="setter"&&((i=Object.create(i)).wrapped=!0),o.set(e.name,i),r==="accessor"){let{name:a}=e;return{set(h){let n=t.get.call(this);t.set.call(this,h),this.requestUpdate(a,n,i,!0,h)},init(h){return h!==void 0&&this.C(a,void 0,i,h),h}}}if(r==="setter"){let{name:a}=e;return function(h){let n=this[a];t.call(this,h),this.requestUpdate(a,n,i,!0,h)}}throw Error("Unsupported decorator location: "+r)};function V(i){return(t,e)=>typeof e=="object"?Kt(i,t,e):((r,s,o)=>{let a=s.hasOwnProperty(o);return s.constructor.createProperty(o,r),a?Object.getOwnPropertyDescriptor(s,o):void 0})(i,t,e)}function St(i){return V({...i,state:!0,attribute:!1})}var it={Aries:"\u2648",Taurus:"\u2649",Gemini:"\u264A",Cancer:"\u264B",Leo:"\u264C",Virgo:"\u264D",Libra:"\u264E",Scorpio:"\u264F",Sagittarius:"\u2650",Capricorn:"\u2651",Aquarius:"\u2652",Pisces:"\u2653"};var Gt=["Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn","Aquarius","Pisces"],ze=Gt.map(i=>i.toLowerCase());var wt=C`
1
+ "use strict";var RoxyUI_ashtakavarga_grid=(()=>{var L=Object.defineProperty;var nt=Object.getOwnPropertyDescriptor;var Ct=Object.getOwnPropertyNames;var Pt=Object.prototype.hasOwnProperty;var Tt=(i,t)=>{for(var e in t)L(i,e,{get:t[e],enumerable:!0})},kt=(i,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Ct(t))!Pt.call(i,s)&&s!==e&&L(i,s,{get:()=>t[s],enumerable:!(r=nt(t,s))||r.enumerable});return i};var Rt=i=>kt(L({},"__esModule",{value:!0}),i),q=(i,t,e,r)=>{for(var s=r>1?void 0:r?nt(t,e):t,o=i.length-1,n;o>=0;o--)(n=i[o])&&(s=(r?n(t,e,s):n(s))||s);return r&&s&&L(t,e,s),s};var Xt={};Tt(Xt,{RoxyAshtakavargaGrid:()=>v});var B=globalThis,j=B.ShadowRoot&&(B.ShadyCSS===void 0||B.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,W=Symbol(),at=new WeakMap,C=class{constructor(t,e,r){if(this._$cssResult$=!0,r!==W)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(j&&t===void 0){let r=e!==void 0&&e.length===1;r&&(t=at.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),r&&at.set(e,t))}return t}toString(){return this.cssText}},ht=i=>new C(typeof i=="string"?i:i+"",void 0,W),P=(i,...t)=>{let e=i.length===1?i[0]:t.reduce((r,s,o)=>r+(n=>{if(n._$cssResult$===!0)return n.cssText;if(typeof n=="number")return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+i[o+1],i[0]);return new C(e,i,W)},lt=(i,t)=>{if(j)i.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let r=document.createElement("style"),s=B.litNonce;s!==void 0&&r.setAttribute("nonce",s),r.textContent=e.cssText,i.appendChild(r)}},F=j?i=>i:i=>i instanceof CSSStyleSheet?(t=>{let e="";for(let r of t.cssRules)e+=r.cssText;return ht(e)})(i):i;var{is:Mt,defineProperty:Nt,getOwnPropertyDescriptor:Ot,getOwnPropertyNames:Ht,getOwnPropertySymbols:Ut,getPrototypeOf:Lt}=Object,D=globalThis,ct=D.trustedTypes,qt=ct?ct.emptyScript:"",Bt=D.reactiveElementPolyfillSupport,T=(i,t)=>i,k={toAttribute(i,t){switch(t){case Boolean:i=i?qt:null;break;case Object:case Array:i=i==null?i:JSON.stringify(i)}return i},fromAttribute(i,t){let e=i;switch(t){case Boolean:e=i!==null;break;case Number:e=i===null?null:Number(i);break;case Object:case Array:try{e=JSON.parse(i)}catch{e=null}}return e}},z=(i,t)=>!Mt(i,t),dt={attribute:!0,type:String,converter:k,reflect:!1,useDefault:!1,hasChanged:z};Symbol.metadata??=Symbol("metadata"),D.litPropertyMetadata??=new WeakMap;var f=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=dt){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let r=Symbol(),s=this.getPropertyDescriptor(t,r,e);s!==void 0&&Nt(this.prototype,t,s)}}static getPropertyDescriptor(t,e,r){let{get:s,set:o}=Ot(this.prototype,t)??{get(){return this[e]},set(n){this[e]=n}};return{get:s,set(n){let h=s?.call(this);o?.call(this,n),this.requestUpdate(t,h,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??dt}static _$Ei(){if(this.hasOwnProperty(T("elementProperties")))return;let t=Lt(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(T("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(T("properties"))){let e=this.properties,r=[...Ht(e),...Ut(e)];for(let s of r)this.createProperty(s,e[s])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[r,s]of e)this.elementProperties.set(r,s)}this._$Eh=new Map;for(let[e,r]of this.elementProperties){let s=this._$Eu(e,r);s!==void 0&&this._$Eh.set(s,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let r=new Set(t.flat(1/0).reverse());for(let s of r)e.unshift(F(s))}else t!==void 0&&e.push(F(t));return e}static _$Eu(t,e){let r=e.attribute;return r===!1?void 0:typeof r=="string"?r:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let r of e.keys())this.hasOwnProperty(r)&&(t.set(r,this[r]),delete this[r]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return lt(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,r){this._$AK(t,r)}_$ET(t,e){let r=this.constructor.elementProperties.get(t),s=this.constructor._$Eu(t,r);if(s!==void 0&&r.reflect===!0){let o=(r.converter?.toAttribute!==void 0?r.converter:k).toAttribute(e,r.type);this._$Em=t,o==null?this.removeAttribute(s):this.setAttribute(s,o),this._$Em=null}}_$AK(t,e){let r=this.constructor,s=r._$Eh.get(t);if(s!==void 0&&this._$Em!==s){let o=r.getPropertyOptions(s),n=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:k;this._$Em=s;let h=n.fromAttribute(e,o.type);this[s]=h??this._$Ej?.get(s)??h,this._$Em=null}}requestUpdate(t,e,r,s=!1,o){if(t!==void 0){let n=this.constructor;if(s===!1&&(o=this[t]),r??=n.getPropertyOptions(t),!((r.hasChanged??z)(o,e)||r.useDefault&&r.reflect&&o===this._$Ej?.get(t)&&!this.hasAttribute(n._$Eu(t,r))))return;this.C(t,e,r)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:r,reflect:s,wrapped:o},n){r&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,n??e??this[t]),o!==!0||n!==void 0)||(this._$AL.has(t)||(this.hasUpdated||r||(e=void 0),this._$AL.set(t,e)),s===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[s,o]of this._$Ep)this[s]=o;this._$Ep=void 0}let r=this.constructor.elementProperties;if(r.size>0)for(let[s,o]of r){let{wrapped:n}=o,h=this[s];n!==!0||this._$AL.has(s)||h===void 0||this.C(s,void 0,o,h)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(r=>r.hostUpdate?.()),this.update(e)):this._$EM()}catch(r){throw t=!1,this._$EM(),r}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};f.elementStyles=[],f.shadowRootOptions={mode:"open"},f[T("elementProperties")]=new Map,f[T("finalized")]=new Map,Bt?.({ReactiveElement:f}),(D.reactiveElementVersions??=[]).push("2.1.2");var et=globalThis,pt=i=>i,I=et.trustedTypes,ut=I?I.createPolicy("lit-html",{createHTML:i=>i}):void 0,vt="$lit$",y=`lit$${Math.random().toFixed(9).slice(2)}$`,$t="?"+y,jt=`<${$t}>`,_=document,M=()=>_.createComment(""),N=i=>i===null||typeof i!="object"&&typeof i!="function",rt=Array.isArray,Dt=i=>rt(i)||typeof i?.[Symbol.iterator]=="function",Y=`[
2
+ \f\r]`,R=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,mt=/-->/g,ft=/>/g,$=RegExp(`>|${Y}(?:([^\\s"'>=/]+)(${Y}*=${Y}*(?:[^
3
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),gt=/'/g,yt=/"/g,xt=/^(?:script|style|textarea|title)$/i,st=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),u=st(1),se=st(2),ie=st(3),A=Symbol.for("lit-noChange"),c=Symbol.for("lit-nothing"),bt=new WeakMap,x=_.createTreeWalker(_,129);function _t(i,t){if(!rt(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return ut!==void 0?ut.createHTML(t):t}var zt=(i,t)=>{let e=i.length-1,r=[],s,o=t===2?"<svg>":t===3?"<math>":"",n=R;for(let h=0;h<e;h++){let a=i[h],d,p,l=-1,m=0;for(;m<a.length&&(n.lastIndex=m,p=n.exec(a),p!==null);)m=n.lastIndex,n===R?p[1]==="!--"?n=mt:p[1]!==void 0?n=ft:p[2]!==void 0?(xt.test(p[2])&&(s=RegExp("</"+p[2],"g")),n=$):p[3]!==void 0&&(n=$):n===$?p[0]===">"?(n=s??R,l=-1):p[1]===void 0?l=-2:(l=n.lastIndex-p[2].length,d=p[1],n=p[3]===void 0?$:p[3]==='"'?yt:gt):n===yt||n===gt?n=$:n===mt||n===ft?n=R:(n=$,s=void 0);let g=n===$&&i[h+1].startsWith("/>")?" ":"";o+=n===R?a+jt:l>=0?(r.push(d),a.slice(0,l)+vt+a.slice(l)+y+g):a+y+(l===-2?h:g)}return[_t(i,o+(i[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),r]},O=class i{constructor({strings:t,_$litType$:e},r){let s;this.parts=[];let o=0,n=0,h=t.length-1,a=this.parts,[d,p]=zt(t,e);if(this.el=i.createElement(d,r),x.currentNode=this.el.content,e===2||e===3){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(s=x.nextNode())!==null&&a.length<h;){if(s.nodeType===1){if(s.hasAttributes())for(let l of s.getAttributeNames())if(l.endsWith(vt)){let m=p[n++],g=s.getAttribute(l).split(y),U=/([.?@])?(.*)/.exec(m);a.push({type:1,index:o,name:U[2],strings:g,ctor:U[1]==="."?X:U[1]==="?"?Z:U[1]==="@"?Q:E}),s.removeAttribute(l)}else l.startsWith(y)&&(a.push({type:6,index:o}),s.removeAttribute(l));if(xt.test(s.tagName)){let l=s.textContent.split(y),m=l.length-1;if(m>0){s.textContent=I?I.emptyScript:"";for(let g=0;g<m;g++)s.append(l[g],M()),x.nextNode(),a.push({type:2,index:++o});s.append(l[m],M())}}}else if(s.nodeType===8)if(s.data===$t)a.push({type:2,index:o});else{let l=-1;for(;(l=s.data.indexOf(y,l+1))!==-1;)a.push({type:7,index:o}),l+=y.length-1}o++}}static createElement(t,e){let r=_.createElement("template");return r.innerHTML=t,r}};function w(i,t,e=i,r){if(t===A)return t;let s=r!==void 0?e._$Co?.[r]:e._$Cl,o=N(t)?void 0:t._$litDirective$;return s?.constructor!==o&&(s?._$AO?.(!1),o===void 0?s=void 0:(s=new o(i),s._$AT(i,e,r)),r!==void 0?(e._$Co??=[])[r]=s:e._$Cl=s),s!==void 0&&(t=w(i,s._$AS(i,t.values),s,r)),t}var J=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:r}=this._$AD,s=(t?.creationScope??_).importNode(e,!0);x.currentNode=s;let o=x.nextNode(),n=0,h=0,a=r[0];for(;a!==void 0;){if(n===a.index){let d;a.type===2?d=new H(o,o.nextSibling,this,t):a.type===1?d=new a.ctor(o,a.name,a.strings,this,t):a.type===6&&(d=new tt(o,this,t)),this._$AV.push(d),a=r[++h]}n!==a?.index&&(o=x.nextNode(),n++)}return x.currentNode=_,s}p(t){let e=0;for(let r of this._$AV)r!==void 0&&(r.strings!==void 0?(r._$AI(t,r,e),e+=r.strings.length-2):r._$AI(t[e])),e++}},H=class i{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,r,s){this.type=2,this._$AH=c,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=r,this.options=s,this._$Cv=s?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=w(this,t,e),N(t)?t===c||t==null||t===""?(this._$AH!==c&&this._$AR(),this._$AH=c):t!==this._$AH&&t!==A&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):Dt(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==c&&N(this._$AH)?this._$AA.nextSibling.data=t:this.T(_.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:r}=t,s=typeof r=="number"?this._$AC(t):(r.el===void 0&&(r.el=O.createElement(_t(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===s)this._$AH.p(e);else{let o=new J(s,this),n=o.u(this.options);o.p(e),this.T(n),this._$AH=o}}_$AC(t){let e=bt.get(t.strings);return e===void 0&&bt.set(t.strings,e=new O(t)),e}k(t){rt(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,r,s=0;for(let o of t)s===e.length?e.push(r=new i(this.O(M()),this.O(M()),this,this.options)):r=e[s],r._$AI(o),s++;s<e.length&&(this._$AR(r&&r._$AB.nextSibling,s),e.length=s)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let r=pt(t).nextSibling;pt(t).remove(),t=r}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},E=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,r,s,o){this.type=1,this._$AH=c,this._$AN=void 0,this.element=t,this.name=e,this._$AM=s,this.options=o,r.length>2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=c}_$AI(t,e=this,r,s){let o=this.strings,n=!1;if(o===void 0)t=w(this,t,e,0),n=!N(t)||t!==this._$AH&&t!==A,n&&(this._$AH=t);else{let h=t,a,d;for(t=o[0],a=0;a<o.length-1;a++)d=w(this,h[r+a],e,a),d===A&&(d=this._$AH[a]),n||=!N(d)||d!==this._$AH[a],d===c?t=c:t!==c&&(t+=(d??"")+o[a+1]),this._$AH[a]=d}n&&!s&&this.j(t)}j(t){t===c?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},X=class extends E{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===c?void 0:t}},Z=class extends E{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==c)}},Q=class extends E{constructor(t,e,r,s,o){super(t,e,r,s,o),this.type=5}_$AI(t,e=this){if((t=w(this,t,e,0)??c)===A)return;let r=this._$AH,s=t===c&&r!==c||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,o=t!==c&&(r===c||s);s&&this.element.removeEventListener(this.name,this,r),o&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},tt=class{constructor(t,e,r){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(t){w(this,t)}};var It=et.litHtmlPolyfillSupport;It?.(O,H),(et.litHtmlVersions??=[]).push("3.3.2");var At=(i,t,e)=>{let r=e?.renderBefore??t,s=r._$litPart$;if(s===void 0){let o=e?.renderBefore??null;r._$litPart$=s=new H(t.insertBefore(M(),o),o,void 0,e??{})}return s._$AI(i),s};var it=globalThis,b=class extends f{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=At(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return A}};b._$litElement$=!0,b.finalized=!0,it.litElementHydrateSupport?.({LitElement:b});var Vt=it.litElementPolyfillSupport;Vt?.({LitElement:b});(it.litElementVersions??=[]).push("4.2.2");var St=i=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(i,t)}):customElements.define(i,t)};var Kt={attribute:!0,type:String,converter:k,reflect:!1,hasChanged:z},Gt=(i=Kt,t,e)=>{let{kind:r,metadata:s}=e,o=globalThis.litPropertyMetadata.get(s);if(o===void 0&&globalThis.litPropertyMetadata.set(s,o=new Map),r==="setter"&&((i=Object.create(i)).wrapped=!0),o.set(e.name,i),r==="accessor"){let{name:n}=e;return{set(h){let a=t.get.call(this);t.set.call(this,h),this.requestUpdate(n,a,i,!0,h)},init(h){return h!==void 0&&this.C(n,void 0,i,h),h}}}if(r==="setter"){let{name:n}=e;return function(h){let a=this[n];t.call(this,h),this.requestUpdate(n,a,i,!0,h)}}throw Error("Unsupported decorator location: "+r)};function V(i){return(t,e)=>typeof e=="object"?Gt(i,t,e):((r,s,o)=>{let n=s.hasOwnProperty(o);return s.constructor.createProperty(o,r),n?Object.getOwnPropertyDescriptor(s,o):void 0})(i,t,e)}function wt(i){return V({...i,state:!0,attribute:!1})}var ot={Aries:"\u2648",Taurus:"\u2649",Gemini:"\u264A",Cancer:"\u264B",Leo:"\u264C",Virgo:"\u264D",Libra:"\u264E",Scorpio:"\u264F",Sagittarius:"\u2650",Capricorn:"\u2651",Aquarius:"\u2652",Pisces:"\u2653"};var Wt=["Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn","Aquarius","Pisces"],Ve=Wt.map(i=>i.toLowerCase());var Et=P`
4
4
  :host {
5
5
  display: block;
6
6
  container-type: inline-size;
@@ -96,7 +96,7 @@
96
96
  :host {
97
97
  font-variant-emoji: text;
98
98
  }
99
- `;var Wt={sarva:"Sarvashtakavarga",bhinna:"Bhinnashtakavarga",pinda:"Shodhya Pinda"},S=["sarva","bhinna","pinda"],v=class extends b{constructor(){super(...arguments);this.data=null;this.activeTab="sarva"}render(){if(!this.data)return u`<div class="roxy-empty" role="status">No ashtakavarga data</div>`;let e=this.data.signs??[];return u`<div class="wrap" aria-label="Ashtakavarga grid">
99
+ `;var Ft="roxy-data";function Yt(i){return i.nodeName==="SCRIPT"&&i.getAttribute("type")==="application/json"}var G=class{constructor(t){this.host=t,t.addController(this)}hostConnected(){if(this.host.data!=null)return;let t=this.read();t!==void 0&&(this.host.data=t,this.host.requestUpdate())}read(){let t=this.findInlineScript();return t?this.parse(t.textContent):void 0}findInlineScript(){for(let t of Array.from(this.host.children))if(Yt(t)&&t.classList.contains(Ft))return t;return null}parse(t){if(t?.trim())try{return JSON.parse(t)}catch{return}}};var Jt={sarva:"Sarvashtakavarga",bhinna:"Bhinnashtakavarga",pinda:"Shodhya Pinda"},S=["sarva","bhinna","pinda"],v=class extends b{constructor(){super();this.data=null;this.activeTab="sarva";new G(this)}render(){if(!this.data)return u`<div class="roxy-empty" role="status">No ashtakavarga data</div>`;let e=this.data.signs??[];return u`<div class="wrap" aria-label="Ashtakavarga grid">
100
100
  <div class="head">
101
101
  <h2 class="title">Ashtakavarga</h2>
102
102
  ${e.length?u`<p class="subtitle">${e.length} signs</p>`:c}
@@ -117,7 +117,7 @@
117
117
  tabindex=${this.activeTab===r?"0":"-1"}
118
118
  @click=${()=>{this.activeTab=r}}
119
119
  >
120
- ${Wt[r]}
120
+ ${Jt[r]}
121
121
  </button>`)}
122
122
  </div>
123
123
 
@@ -137,14 +137,14 @@
137
137
  </tr>
138
138
  </thead>
139
139
  <tbody>
140
- ${e.map((s,o)=>{let a=r.bindus[o]??0,h=this.sarvaHeat(a);return u`<tr>
140
+ ${e.map((s,o)=>{let n=r.bindus[o]??0,h=this.sarvaHeat(n);return u`<tr>
141
141
  <td>
142
142
  <div class="planet-cell">
143
- <span class="glyph" aria-hidden="true">${it[s]??""}</span>
143
+ <span class="glyph" aria-hidden="true">${ot[s]??""}</span>
144
144
  ${s}
145
145
  </div>
146
146
  </td>
147
- <td class="${`heat-cell ${h}`}">${a}</td>
147
+ <td class="${`heat-cell ${h}`}">${n}</td>
148
148
  </tr>`})}
149
149
  </tbody>
150
150
  <tfoot>
@@ -159,14 +159,14 @@
159
159
  <thead>
160
160
  <tr>
161
161
  <th scope="col">Planet</th>
162
- ${e.map(s=>u`<th scope="col" title=${s}>${it[s]??s.slice(0,2)}</th>`)}
162
+ ${e.map(s=>u`<th scope="col" title=${s}>${ot[s]??s.slice(0,2)}</th>`)}
163
163
  <th scope="col">Total</th>
164
164
  </tr>
165
165
  </thead>
166
166
  <tbody>
167
167
  ${r.map(s=>u`<tr>
168
168
  <td>${s.planet}</td>
169
- ${s.bindus.map(o=>{let a=this.bhinnaHeat(o);return u`<td class="${`heat-cell ${a}`}">${o}</td>`})}
169
+ ${s.bindus.map(o=>{let n=this.bhinnaHeat(o);return u`<td class="${`heat-cell ${n}`}">${o}</td>`})}
170
170
  <td>${s.total}</td>
171
171
  </tr>`)}
172
172
  </tbody>
@@ -190,7 +190,7 @@
190
190
  </tr>`)}
191
191
  </tbody>
192
192
  </table>
193
- </div>`:u`<p class="roxy-empty">No shodhya pinda data</p>`}};v.styles=[wt,C`
193
+ </div>`:u`<p class="roxy-empty">No shodhya pinda data</p>`}};v.styles=[Et,P`
194
194
  .wrap {
195
195
  display: grid;
196
196
  gap: var(--roxy-space-md, 1rem);
@@ -359,7 +359,7 @@
359
359
  transparent 100%
360
360
  );
361
361
  }
362
- `],B([V({attribute:!1})],v.prototype,"data",2),B([St()],v.prototype,"activeTab",2),v=B([At("roxy-ashtakavarga-grid")],v);return kt(Ft);})();
362
+ `],q([V({attribute:!1})],v.prototype,"data",2),q([wt()],v.prototype,"activeTab",2),v=q([St("roxy-ashtakavarga-grid")],v);return Rt(Xt);})();
363
363
  /*! Bundled license information:
364
364
 
365
365
  @lit/reactive-element/css-tag.js: