@roxyapi/ui 0.1.3 → 0.2.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 (161) hide show
  1. package/AGENTS.md +6 -0
  2. package/README.md +9 -3
  3. package/dist/cdn/components/ashtakavarga-grid.js +349 -0
  4. package/dist/cdn/components/ashtakavarga-grid.js.map +7 -0
  5. package/dist/cdn/components/choghadiya-grid.js +239 -0
  6. package/dist/cdn/components/choghadiya-grid.js.map +7 -0
  7. package/dist/cdn/components/compatibility-card.js +6 -6
  8. package/dist/cdn/components/compatibility-card.js.map +1 -1
  9. package/dist/cdn/components/dasha-timeline.js +4 -4
  10. package/dist/cdn/components/dasha-timeline.js.map +1 -1
  11. package/dist/cdn/components/data.js +9 -9
  12. package/dist/cdn/components/data.js.map +4 -4
  13. package/dist/cdn/components/divisional-chart.js +279 -0
  14. package/dist/cdn/components/divisional-chart.js.map +7 -0
  15. package/dist/cdn/components/dosha-card.js +39 -39
  16. package/dist/cdn/components/dosha-card.js.map +3 -3
  17. package/dist/cdn/components/endpoint-form.js +8 -8
  18. package/dist/cdn/components/endpoint-form.js.map +4 -4
  19. package/dist/cdn/components/guna-milan.js +64 -22
  20. package/dist/cdn/components/guna-milan.js.map +3 -3
  21. package/dist/cdn/components/hexagram.js +9 -9
  22. package/dist/cdn/components/hexagram.js.map +3 -3
  23. package/dist/cdn/components/horoscope-card.js +28 -21
  24. package/dist/cdn/components/horoscope-card.js.map +4 -4
  25. package/dist/cdn/components/kp-planets-table.js +4 -4
  26. package/dist/cdn/components/kp-planets-table.js.map +1 -1
  27. package/dist/cdn/components/location-search.js.map +2 -2
  28. package/dist/cdn/components/moon-phase.js +13 -13
  29. package/dist/cdn/components/moon-phase.js.map +3 -3
  30. package/dist/cdn/components/natal-chart.js +196 -22
  31. package/dist/cdn/components/natal-chart.js.map +4 -4
  32. package/dist/cdn/components/numerology-card.js +6 -6
  33. package/dist/cdn/components/numerology-card.js.map +4 -4
  34. package/dist/cdn/components/panchang-table.js +9 -9
  35. package/dist/cdn/components/panchang-table.js.map +1 -1
  36. package/dist/cdn/components/shadbala-table.js +312 -0
  37. package/dist/cdn/components/shadbala-table.js.map +7 -0
  38. package/dist/cdn/components/synastry-chart.js +21 -21
  39. package/dist/cdn/components/synastry-chart.js.map +4 -4
  40. package/dist/cdn/components/transits-table.js +391 -0
  41. package/dist/cdn/components/transits-table.js.map +7 -0
  42. package/dist/cdn/components/vedic-kundli.js +51 -29
  43. package/dist/cdn/components/vedic-kundli.js.map +4 -4
  44. package/dist/cdn/components/yoga-list.js +334 -0
  45. package/dist/cdn/components/yoga-list.js.map +7 -0
  46. package/dist/cdn/roxy-ui.js +1872 -522
  47. package/dist/cdn/roxy-ui.js.map +4 -4
  48. package/dist/components/ashtakavarga-grid.d.ts +26 -0
  49. package/dist/components/ashtakavarga-grid.d.ts.map +1 -0
  50. package/dist/components/ashtakavarga-grid.js +457 -0
  51. package/dist/components/ashtakavarga-grid.js.map +7 -0
  52. package/dist/components/choghadiya-grid.d.ts +19 -0
  53. package/dist/components/choghadiya-grid.d.ts.map +1 -0
  54. package/dist/components/choghadiya-grid.js +304 -0
  55. package/dist/components/choghadiya-grid.js.map +7 -0
  56. package/dist/components/compatibility-card.js.map +1 -1
  57. package/dist/components/dasha-timeline.js.map +1 -1
  58. package/dist/components/data.d.ts +5 -7
  59. package/dist/components/data.d.ts.map +1 -1
  60. package/dist/components/data.js +7 -5
  61. package/dist/components/data.js.map +3 -3
  62. package/dist/components/divisional-chart.d.ts +20 -0
  63. package/dist/components/divisional-chart.d.ts.map +1 -0
  64. package/dist/components/divisional-chart.js +471 -0
  65. package/dist/components/divisional-chart.js.map +7 -0
  66. package/dist/components/dosha-card.d.ts.map +1 -1
  67. package/dist/components/dosha-card.js +33 -30
  68. package/dist/components/dosha-card.js.map +2 -2
  69. package/dist/components/endpoint-form.d.ts.map +1 -1
  70. package/dist/components/endpoint-form.js +5 -3
  71. package/dist/components/endpoint-form.js.map +3 -3
  72. package/dist/components/guna-milan.d.ts.map +1 -1
  73. package/dist/components/guna-milan.js +61 -12
  74. package/dist/components/guna-milan.js.map +3 -3
  75. package/dist/components/hexagram.js +17 -0
  76. package/dist/components/hexagram.js.map +2 -2
  77. package/dist/components/horoscope-card.d.ts.map +1 -1
  78. package/dist/components/horoscope-card.js +30 -3
  79. package/dist/components/horoscope-card.js.map +3 -3
  80. package/dist/components/kp-planets-table.js.map +1 -1
  81. package/dist/components/location-search.d.ts +2 -3
  82. package/dist/components/location-search.d.ts.map +1 -1
  83. package/dist/components/location-search.js.map +2 -2
  84. package/dist/components/moon-phase.js +17 -0
  85. package/dist/components/moon-phase.js.map +2 -2
  86. package/dist/components/natal-chart.d.ts +2 -0
  87. package/dist/components/natal-chart.d.ts.map +1 -1
  88. package/dist/components/natal-chart.js +243 -36
  89. package/dist/components/natal-chart.js.map +3 -3
  90. package/dist/components/numerology-card.d.ts.map +1 -1
  91. package/dist/components/numerology-card.js +5 -3
  92. package/dist/components/numerology-card.js.map +3 -3
  93. package/dist/components/panchang-table.js.map +1 -1
  94. package/dist/components/shadbala-table.d.ts +18 -0
  95. package/dist/components/shadbala-table.d.ts.map +1 -0
  96. package/dist/components/shadbala-table.js +400 -0
  97. package/dist/components/shadbala-table.js.map +7 -0
  98. package/dist/components/synastry-chart.d.ts.map +1 -1
  99. package/dist/components/synastry-chart.js +34 -29
  100. package/dist/components/synastry-chart.js.map +3 -3
  101. package/dist/components/transits-table.d.ts +21 -0
  102. package/dist/components/transits-table.d.ts.map +1 -0
  103. package/dist/components/transits-table.js +515 -0
  104. package/dist/components/transits-table.js.map +7 -0
  105. package/dist/components/vedic-kundli.d.ts +3 -6
  106. package/dist/components/vedic-kundli.d.ts.map +1 -1
  107. package/dist/components/vedic-kundli.js +132 -80
  108. package/dist/components/vedic-kundli.js.map +3 -3
  109. package/dist/components/yoga-list.d.ts +29 -0
  110. package/dist/components/yoga-list.d.ts.map +1 -0
  111. package/dist/components/yoga-list.js +389 -0
  112. package/dist/components/yoga-list.js.map +7 -0
  113. package/dist/index.cjs +2693 -971
  114. package/dist/index.cjs.map +4 -4
  115. package/dist/index.d.ts +7 -2
  116. package/dist/index.d.ts.map +1 -1
  117. package/dist/index.js +2712 -990
  118. package/dist/index.js.map +4 -4
  119. package/dist/manifest.d.ts +4 -10
  120. package/dist/manifest.d.ts.map +1 -1
  121. package/dist/manifest.json +7 -2
  122. package/dist/styles/tokens.css +26 -0
  123. package/dist/tokens/index.d.ts +6 -0
  124. package/dist/tokens/index.d.ts.map +1 -1
  125. package/dist/types/types.gen.d.ts +2 -2
  126. package/dist/utils/format.d.ts +15 -1
  127. package/dist/utils/format.d.ts.map +1 -1
  128. package/dist/utils/kundli-render.d.ts +63 -0
  129. package/dist/utils/kundli-render.d.ts.map +1 -0
  130. package/dist/utils/string.d.ts +14 -0
  131. package/dist/utils/string.d.ts.map +1 -0
  132. package/dist/version.d.ts +1 -1
  133. package/package.json +1 -1
  134. package/src/components/ashtakavarga-grid.ts +354 -0
  135. package/src/components/choghadiya-grid.ts +185 -0
  136. package/src/components/data.ts +8 -15
  137. package/src/components/divisional-chart.ts +214 -0
  138. package/src/components/dosha-card.ts +53 -36
  139. package/src/components/endpoint-form.ts +1 -7
  140. package/src/components/guna-milan.ts +74 -16
  141. package/src/components/horoscope-card.ts +8 -4
  142. package/src/components/location-search.ts +2 -3
  143. package/src/components/natal-chart.ts +251 -42
  144. package/src/components/numerology-card.ts +1 -7
  145. package/src/components/shadbala-table.ts +286 -0
  146. package/src/components/synastry-chart.ts +13 -39
  147. package/src/components/transits-table.ts +350 -0
  148. package/src/components/vedic-kundli.ts +38 -143
  149. package/src/components/yoga-list.ts +328 -0
  150. package/src/index.ts +8 -6
  151. package/src/manifest.ts +74 -100
  152. package/src/styles/tokens.css +26 -0
  153. package/src/tokens/index.ts +9 -0
  154. package/src/types/types.gen.ts +2 -2
  155. package/src/utils/format.ts +21 -3
  156. package/src/utils/kundli-render.ts +197 -0
  157. package/src/utils/string.ts +23 -0
  158. package/src/version.ts +1 -1
  159. package/dist/utils/motion.d.ts +0 -13
  160. package/dist/utils/motion.d.ts.map +0 -1
  161. package/src/utils/motion.ts +0 -18
@@ -0,0 +1,334 @@
1
+ "use strict";var RoxyUI_yoga_list=(()=>{var H=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var Ee=Object.getOwnPropertyNames;var we=Object.prototype.hasOwnProperty;var Ce=(o,e)=>{for(var t in e)H(o,t,{get:e[t],enumerable:!0})},Pe=(o,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ee(e))!we.call(o,r)&&r!==t&&H(o,r,{get:()=>e[r],enumerable:!(s=re(e,r))||s.enumerable});return o};var Re=o=>Pe(H({},"__esModule",{value:!0}),o),z=(o,e,t,s)=>{for(var r=s>1?void 0:s?re(e,t):e,i=o.length-1,n;i>=0;i--)(n=o[i])&&(r=(s?n(e,t,r):n(r))||r);return s&&r&&H(e,t,r),r};var Fe={};Ce(Fe,{RoxyYogaList:()=>v});var D=globalThis,q=D.ShadowRoot&&(D.ShadyCSS===void 0||D.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,F=Symbol(),oe=new WeakMap,w=class{constructor(e,t,s){if(this._$cssResult$=!0,s!==F)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(q&&e===void 0){let s=t!==void 0&&t.length===1;s&&(e=oe.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),s&&oe.set(t,e))}return e}toString(){return this.cssText}},ie=o=>new w(typeof o=="string"?o:o+"",void 0,F),C=(o,...e)=>{let t=o.length===1?o[0]:e.reduce((s,r,i)=>s+(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.")})(r)+o[i+1],o[0]);return new w(t,o,F)},ne=(o,e)=>{if(q)o.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let s=document.createElement("style"),r=D.litNonce;r!==void 0&&s.setAttribute("nonce",r),s.textContent=t.cssText,o.appendChild(s)}},V=q?o=>o:o=>o instanceof CSSStyleSheet?(e=>{let t="";for(let s of e.cssRules)t+=s.cssText;return ie(t)})(o):o;var{is:Ue,defineProperty:Oe,getOwnPropertyDescriptor:Te,getOwnPropertyNames:ke,getOwnPropertySymbols:Me,getPrototypeOf:Ne}=Object,L=globalThis,ae=L.trustedTypes,He=ae?ae.emptyScript:"",ze=L.reactiveElementPolyfillSupport,P=(o,e)=>o,R={toAttribute(o,e){switch(e){case Boolean:o=o?He:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,e){let t=o;switch(e){case Boolean:t=o!==null;break;case Number:t=o===null?null:Number(o);break;case Object:case Array:try{t=JSON.parse(o)}catch{t=null}}return t}},j=(o,e)=>!Ue(o,e),le={attribute:!0,type:String,converter:R,reflect:!1,useDefault:!1,hasChanged:j};Symbol.metadata??=Symbol("metadata"),L.litPropertyMetadata??=new WeakMap;var f=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=le){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let s=Symbol(),r=this.getPropertyDescriptor(e,s,t);r!==void 0&&Oe(this.prototype,e,r)}}static getPropertyDescriptor(e,t,s){let{get:r,set:i}=Te(this.prototype,e)??{get(){return this[t]},set(n){this[t]=n}};return{get:r,set(n){let l=r?.call(this);i?.call(this,n),this.requestUpdate(e,l,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??le}static _$Ei(){if(this.hasOwnProperty(P("elementProperties")))return;let e=Ne(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(P("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(P("properties"))){let t=this.properties,s=[...ke(t),...Me(t)];for(let r of s)this.createProperty(r,t[r])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[s,r]of t)this.elementProperties.set(s,r)}this._$Eh=new Map;for(let[t,s]of this.elementProperties){let r=this._$Eu(t,s);r!==void 0&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let s=new Set(e.flat(1/0).reverse());for(let r of s)t.unshift(V(r))}else e!==void 0&&t.push(V(e));return t}static _$Eu(e,t){let s=t.attribute;return s===!1?void 0:typeof s=="string"?s:typeof e=="string"?e.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(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let s of t.keys())this.hasOwnProperty(s)&&(e.set(s,this[s]),delete this[s]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return ne(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,s){this._$AK(e,s)}_$ET(e,t){let s=this.constructor.elementProperties.get(e),r=this.constructor._$Eu(e,s);if(r!==void 0&&s.reflect===!0){let i=(s.converter?.toAttribute!==void 0?s.converter:R).toAttribute(t,s.type);this._$Em=e,i==null?this.removeAttribute(r):this.setAttribute(r,i),this._$Em=null}}_$AK(e,t){let s=this.constructor,r=s._$Eh.get(e);if(r!==void 0&&this._$Em!==r){let i=s.getPropertyOptions(r),n=typeof i.converter=="function"?{fromAttribute:i.converter}:i.converter?.fromAttribute!==void 0?i.converter:R;this._$Em=r;let l=n.fromAttribute(t,i.type);this[r]=l??this._$Ej?.get(r)??l,this._$Em=null}}requestUpdate(e,t,s,r=!1,i){if(e!==void 0){let n=this.constructor;if(r===!1&&(i=this[e]),s??=n.getPropertyOptions(e),!((s.hasChanged??j)(i,t)||s.useDefault&&s.reflect&&i===this._$Ej?.get(e)&&!this.hasAttribute(n._$Eu(e,s))))return;this.C(e,t,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:s,reflect:r,wrapped:i},n){s&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,n??t??this[e]),i!==!0||n!==void 0)||(this._$AL.has(e)||(this.hasUpdated||s||(t=void 0),this._$AL.set(e,t)),r===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,i]of this._$Ep)this[r]=i;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[r,i]of s){let{wrapped:n}=i,l=this[r];n!==!0||this._$AL.has(r)||l===void 0||this.C(r,void 0,i,l)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(s=>s.hostUpdate?.()),this.update(t)):this._$EM()}catch(s){throw e=!1,this._$EM(),s}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};f.elementStyles=[],f.shadowRootOptions={mode:"open"},f[P("elementProperties")]=new Map,f[P("finalized")]=new Map,ze?.({ReactiveElement:f}),(L.reactiveElementVersions??=[]).push("2.1.2");var X=globalThis,ce=o=>o,I=X.trustedTypes,de=I?I.createPolicy("lit-html",{createHTML:o=>o}):void 0,ye="$lit$",g=`lit$${Math.random().toFixed(9).slice(2)}$`,ge="?"+g,De=`<${ge}>`,b=document,O=()=>b.createComment(""),T=o=>o===null||typeof o!="object"&&typeof o!="function",ee=Array.isArray,qe=o=>ee(o)||typeof o?.[Symbol.iterator]=="function",G=`[
2
+ \f\r]`,U=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,he=/-->/g,pe=/>/g,x=RegExp(`>|${G}(?:([^\\s"'>=/]+)(${G}*=${G}*(?:[^
3
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),ue=/'/g,me=/"/g,$e=/^(?:script|style|textarea|title)$/i,te=o=>(e,...t)=>({_$litType$:o,strings:e,values:t}),u=te(1),Qe=te(2),Ze=te(3),A=Symbol.for("lit-noChange"),h=Symbol.for("lit-nothing"),fe=new WeakMap,_=b.createTreeWalker(b,129);function ve(o,e){if(!ee(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return de!==void 0?de.createHTML(e):e}var Le=(o,e)=>{let t=o.length-1,s=[],r,i=e===2?"<svg>":e===3?"<math>":"",n=U;for(let l=0;l<t;l++){let a=o[l],d,p,c=-1,m=0;for(;m<a.length&&(n.lastIndex=m,p=n.exec(a),p!==null);)m=n.lastIndex,n===U?p[1]==="!--"?n=he:p[1]!==void 0?n=pe:p[2]!==void 0?($e.test(p[2])&&(r=RegExp("</"+p[2],"g")),n=x):p[3]!==void 0&&(n=x):n===x?p[0]===">"?(n=r??U,c=-1):p[1]===void 0?c=-2:(c=n.lastIndex-p[2].length,d=p[1],n=p[3]===void 0?x:p[3]==='"'?me:ue):n===me||n===ue?n=x:n===he||n===pe?n=U:(n=x,r=void 0);let y=n===x&&o[l+1].startsWith("/>")?" ":"";i+=n===U?a+De:c>=0?(s.push(d),a.slice(0,c)+ye+a.slice(c)+g+y):a+g+(c===-2?l:y)}return[ve(o,i+(o[t]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),s]},k=class o{constructor({strings:e,_$litType$:t},s){let r;this.parts=[];let i=0,n=0,l=e.length-1,a=this.parts,[d,p]=Le(e,t);if(this.el=o.createElement(d,s),_.currentNode=this.el.content,t===2||t===3){let c=this.el.content.firstChild;c.replaceWith(...c.childNodes)}for(;(r=_.nextNode())!==null&&a.length<l;){if(r.nodeType===1){if(r.hasAttributes())for(let c of r.getAttributeNames())if(c.endsWith(ye)){let m=p[n++],y=r.getAttribute(c).split(g),N=/([.?@])?(.*)/.exec(m);a.push({type:1,index:i,name:N[2],strings:y,ctor:N[1]==="."?K:N[1]==="?"?J:N[1]==="@"?Q:E}),r.removeAttribute(c)}else c.startsWith(g)&&(a.push({type:6,index:i}),r.removeAttribute(c));if($e.test(r.tagName)){let c=r.textContent.split(g),m=c.length-1;if(m>0){r.textContent=I?I.emptyScript:"";for(let y=0;y<m;y++)r.append(c[y],O()),_.nextNode(),a.push({type:2,index:++i});r.append(c[m],O())}}}else if(r.nodeType===8)if(r.data===ge)a.push({type:2,index:i});else{let c=-1;for(;(c=r.data.indexOf(g,c+1))!==-1;)a.push({type:7,index:i}),c+=g.length-1}i++}}static createElement(e,t){let s=b.createElement("template");return s.innerHTML=e,s}};function S(o,e,t=o,s){if(e===A)return e;let r=s!==void 0?t._$Co?.[s]:t._$Cl,i=T(e)?void 0:e._$litDirective$;return r?.constructor!==i&&(r?._$AO?.(!1),i===void 0?r=void 0:(r=new i(o),r._$AT(o,t,s)),s!==void 0?(t._$Co??=[])[s]=r:t._$Cl=r),r!==void 0&&(e=S(o,r._$AS(o,e.values),r,s)),e}var W=class{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){let{el:{content:t},parts:s}=this._$AD,r=(e?.creationScope??b).importNode(t,!0);_.currentNode=r;let i=_.nextNode(),n=0,l=0,a=s[0];for(;a!==void 0;){if(n===a.index){let d;a.type===2?d=new M(i,i.nextSibling,this,e):a.type===1?d=new a.ctor(i,a.name,a.strings,this,e):a.type===6&&(d=new Z(i,this,e)),this._$AV.push(d),a=s[++l]}n!==a?.index&&(i=_.nextNode(),n++)}return _.currentNode=b,r}p(e){let t=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(e,s,t),t+=s.strings.length-2):s._$AI(e[t])),t++}},M=class o{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,s,r){this.type=2,this._$AH=h,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=s,this.options=r,this._$Cv=r?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode,t=this._$AM;return t!==void 0&&e?.nodeType===11&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=S(this,e,t),T(e)?e===h||e==null||e===""?(this._$AH!==h&&this._$AR(),this._$AH=h):e!==this._$AH&&e!==A&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):qe(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==h&&T(this._$AH)?this._$AA.nextSibling.data=e:this.T(b.createTextNode(e)),this._$AH=e}$(e){let{values:t,_$litType$:s}=e,r=typeof s=="number"?this._$AC(e):(s.el===void 0&&(s.el=k.createElement(ve(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===r)this._$AH.p(t);else{let i=new W(r,this),n=i.u(this.options);i.p(t),this.T(n),this._$AH=i}}_$AC(e){let t=fe.get(e.strings);return t===void 0&&fe.set(e.strings,t=new k(e)),t}k(e){ee(this._$AH)||(this._$AH=[],this._$AR());let t=this._$AH,s,r=0;for(let i of e)r===t.length?t.push(s=new o(this.O(O()),this.O(O()),this,this.options)):s=t[r],s._$AI(i),r++;r<t.length&&(this._$AR(s&&s._$AB.nextSibling,r),t.length=r)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){let s=ce(e).nextSibling;ce(e).remove(),e=s}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}},E=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,s,r,i){this.type=1,this._$AH=h,this._$AN=void 0,this.element=e,this.name=t,this._$AM=r,this.options=i,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=h}_$AI(e,t=this,s,r){let i=this.strings,n=!1;if(i===void 0)e=S(this,e,t,0),n=!T(e)||e!==this._$AH&&e!==A,n&&(this._$AH=e);else{let l=e,a,d;for(e=i[0],a=0;a<i.length-1;a++)d=S(this,l[s+a],t,a),d===A&&(d=this._$AH[a]),n||=!T(d)||d!==this._$AH[a],d===h?e=h:e!==h&&(e+=(d??"")+i[a+1]),this._$AH[a]=d}n&&!r&&this.j(e)}j(e){e===h?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}},K=class extends E{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===h?void 0:e}},J=class extends E{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==h)}},Q=class extends E{constructor(e,t,s,r,i){super(e,t,s,r,i),this.type=5}_$AI(e,t=this){if((e=S(this,e,t,0)??h)===A)return;let s=this._$AH,r=e===h&&s!==h||e.capture!==s.capture||e.once!==s.once||e.passive!==s.passive,i=e!==h&&(s===h||r);r&&this.element.removeEventListener(this.name,this,s),i&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}},Z=class{constructor(e,t,s){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(e){S(this,e)}};var je=X.litHtmlPolyfillSupport;je?.(k,M),(X.litHtmlVersions??=[]).push("3.3.2");var xe=(o,e,t)=>{let s=t?.renderBefore??e,r=s._$litPart$;if(r===void 0){let i=t?.renderBefore??null;s._$litPart$=r=new M(e.insertBefore(O(),i),i,void 0,t??{})}return r._$AI(o),r};var se=globalThis,$=class extends f{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=xe(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return A}};$._$litElement$=!0,$.finalized=!0,se.litElementHydrateSupport?.({LitElement:$});var Ie=se.litElementPolyfillSupport;Ie?.({LitElement:$});(se.litElementVersions??=[]).push("4.2.2");var _e=o=>(e,t)=>{t!==void 0?t.addInitializer(()=>{customElements.define(o,e)}):customElements.define(o,e)};var Ye={attribute:!0,type:String,converter:R,reflect:!1,hasChanged:j},Be=(o=Ye,e,t)=>{let{kind:s,metadata:r}=t,i=globalThis.litPropertyMetadata.get(r);if(i===void 0&&globalThis.litPropertyMetadata.set(r,i=new Map),s==="setter"&&((o=Object.create(o)).wrapped=!0),i.set(t.name,o),s==="accessor"){let{name:n}=t;return{set(l){let a=e.get.call(this);e.set.call(this,l),this.requestUpdate(n,a,o,!0,l)},init(l){return l!==void 0&&this.C(n,void 0,o,l),l}}}if(s==="setter"){let{name:n}=t;return function(l){let a=this[n];e.call(this,l),this.requestUpdate(n,a,o,!0,l)}}throw Error("Unsupported decorator location: "+s)};function Y(o){return(e,t)=>typeof t=="object"?Be(o,e,t):((s,r,i)=>{let n=r.hasOwnProperty(i);return r.constructor.createProperty(i,s),n?Object.getOwnPropertyDescriptor(r,i):void 0})(o,e,t)}function be(o){return Y({...o,state:!0,attribute:!1})}var Ae=C`
4
+ :host {
5
+ display: block;
6
+ container-type: inline-size;
7
+ font-family: var(
8
+ --roxy-font-sans,
9
+ system-ui,
10
+ -apple-system,
11
+ BlinkMacSystemFont,
12
+ 'Segoe UI',
13
+ Roboto,
14
+ sans-serif
15
+ );
16
+ color: var(--roxy-fg, #0a0a0a);
17
+ background: transparent;
18
+ font-size: var(--roxy-text-base, 1rem);
19
+ line-height: var(--roxy-leading-normal, 1.5);
20
+ animation: roxy-fade-in var(--roxy-motion-duration, 200ms)
21
+ var(--roxy-motion-easing, cubic-bezier(0.4, 0, 0.2, 1)) both;
22
+ }
23
+
24
+ *,
25
+ *::before,
26
+ *::after {
27
+ box-sizing: border-box;
28
+ }
29
+
30
+ @keyframes roxy-fade-in {
31
+ from {
32
+ opacity: 0;
33
+ transform: translateY(2px);
34
+ }
35
+ to {
36
+ opacity: 1;
37
+ transform: translateY(0);
38
+ }
39
+ }
40
+
41
+ @media (prefers-reduced-motion: reduce) {
42
+ :host {
43
+ animation: none;
44
+ }
45
+ }
46
+
47
+ .roxy-skeleton {
48
+ background: linear-gradient(
49
+ 90deg,
50
+ var(--roxy-border, #e4e4e7) 0%,
51
+ color-mix(in srgb, var(--roxy-border, #e4e4e7) 60%, transparent) 50%,
52
+ var(--roxy-border, #e4e4e7) 100%
53
+ );
54
+ background-size: 200% 100%;
55
+ animation: roxy-shimmer 1.4s ease-in-out infinite;
56
+ border-radius: var(--roxy-radius-md, 8px);
57
+ }
58
+
59
+ @keyframes roxy-shimmer {
60
+ 0% {
61
+ background-position: 200% 0;
62
+ }
63
+ 100% {
64
+ background-position: -200% 0;
65
+ }
66
+ }
67
+
68
+ @media (prefers-reduced-motion: reduce) {
69
+ .roxy-skeleton {
70
+ animation: none;
71
+ }
72
+ }
73
+
74
+ .roxy-empty {
75
+ padding: var(--roxy-space-lg, 1.5rem);
76
+ color: var(--roxy-muted, #71717a);
77
+ text-align: center;
78
+ font-size: var(--roxy-text-sm, 0.875rem);
79
+ }
80
+
81
+ :host(:focus-within) .roxy-card {
82
+ outline: 2px solid var(--roxy-ring, rgba(245, 158, 11, 0.4));
83
+ outline-offset: 2px;
84
+ }
85
+ `;function Se(o,e){let t,s=((...r)=>{t&&clearTimeout(t),t=setTimeout(()=>{t=void 0,o(...r)},e)});return s.cancel=()=>{t&&(clearTimeout(t),t=void 0)},s}var v=class extends ${constructor(){super(...arguments);this.data=null;this.filter="";this.handleInput=Se(t=>{this.filter=t.target.value},200)}renderQualityChip(t){let s=`quality-chip quality-${t}`;return u`<span class=${s}>${t}</span>`}renderDetailCard(t){return u`<div class="detail-card">
86
+ <p class="detail-name">
87
+ ${t.name}
88
+ ${t.quality?this.renderQualityChip(t.quality):h}
89
+ </p>
90
+ ${t.description?u`<p class="description">${t.description}</p>`:h}
91
+ ${t.result?u`<details>
92
+ <summary>Effects</summary>
93
+ <div class="result-body">${t.result}</div>
94
+ </details>`:h}
95
+ </div>`}render(){if(!this.data)return u`<div class="roxy-empty" role="status">No yoga data</div>`;let t=this.data,s=this.filter.toLowerCase();if("description"in t&&typeof t.description=="string"){let r=t;return u`<div class="wrap">${this.renderDetailCard(r)}</div>`}if("yogas"in t&&Array.isArray(t.yogas)){let r=t.yogas;if(r.length>0&&"description"in r[0]){let d=r,p=s?d.filter(m=>m.name.toLowerCase().includes(s)):d,c=t.total;return u`<div class="wrap">
96
+ <div class="head">
97
+ <h2 class="title">Yoga catalog</h2>
98
+ ${c!==void 0?u`<span class="count">${c} total</span>`:h}
99
+ </div>
100
+ <div class="search-wrap">
101
+ <input
102
+ class="search"
103
+ type="search"
104
+ placeholder="Filter yogas..."
105
+ aria-label="Filter yoga list by name"
106
+ .value=${this.filter}
107
+ @input=${this.handleInput}
108
+ />
109
+ </div>
110
+ <div
111
+ class="detail-grid"
112
+ role="region"
113
+ aria-live="polite"
114
+ aria-label="Yoga results"
115
+ >
116
+ ${p.length>0?p.map(m=>this.renderDetailCard(m)):u`<p class="no-results">No yogas match your search.</p>`}
117
+ </div>
118
+ </div>`}let n=r,l=s?n.filter(d=>d.name.toLowerCase().includes(s)):n,a=t.total;return u`<div class="wrap">
119
+ <div class="head">
120
+ <h2 class="title">Yoga catalog</h2>
121
+ ${a!==void 0?u`<span class="count">${a} total</span>`:h}
122
+ </div>
123
+ <div class="search-wrap">
124
+ <input
125
+ class="search"
126
+ type="search"
127
+ placeholder="Filter yogas..."
128
+ aria-label="Filter yoga list by name"
129
+ .value=${this.filter}
130
+ @input=${this.handleInput}
131
+ />
132
+ </div>
133
+ <div
134
+ class="grid"
135
+ role="region"
136
+ aria-live="polite"
137
+ aria-label="Yoga results"
138
+ >
139
+ ${l.length>0?l.map(d=>u`<div class="yoga-chip">
140
+ ${d.name}
141
+ <span class="yoga-id">${d.id}</span>
142
+ </div>`):u`<p class="no-results">No yogas match your search.</p>`}
143
+ </div>
144
+ </div>`}return u`<div class="roxy-empty" role="status">No yoga data</div>`}};v.styles=[Ae,C`
145
+ .wrap {
146
+ display: grid;
147
+ gap: var(--roxy-space-md, 1rem);
148
+ }
149
+ .head {
150
+ display: flex;
151
+ justify-content: space-between;
152
+ align-items: baseline;
153
+ flex-wrap: wrap;
154
+ gap: var(--roxy-space-sm, 0.5rem);
155
+ }
156
+ .title {
157
+ font-size: var(--roxy-text-lg, 1.125rem);
158
+ font-weight: var(--roxy-weight-bold, 600);
159
+ margin: 0;
160
+ }
161
+ .count {
162
+ font-size: var(--roxy-text-sm, 0.875rem);
163
+ color: var(--roxy-muted, #71717a);
164
+ }
165
+ .search-wrap {
166
+ display: flex;
167
+ align-items: center;
168
+ gap: var(--roxy-space-sm, 0.5rem);
169
+ }
170
+ .search {
171
+ width: 100%;
172
+ max-width: 280px;
173
+ padding: 0.35em 0.75em;
174
+ font-size: var(--roxy-text-sm, 0.875rem);
175
+ font-family: var(--roxy-font-sans);
176
+ border: 1px solid var(--roxy-border, #e4e4e7);
177
+ border-radius: var(--roxy-radius-md, 8px);
178
+ background: var(--roxy-bg, #fff);
179
+ color: var(--roxy-fg, #0a0a0a);
180
+ outline: none;
181
+ }
182
+ .search::placeholder {
183
+ color: var(--roxy-fg, #0a0a0a);
184
+ opacity: 0.65;
185
+ }
186
+ .search:focus {
187
+ border-color: var(--roxy-accent, #f59e0b);
188
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--roxy-accent, #f59e0b) 30%, transparent);
189
+ }
190
+ .grid {
191
+ display: grid;
192
+ gap: var(--roxy-space-sm, 0.5rem);
193
+ grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
194
+ }
195
+ .yoga-chip {
196
+ padding: 0.4em 0.8em;
197
+ border: 1px solid var(--roxy-border, #e4e4e7);
198
+ border-radius: var(--roxy-radius-md, 8px);
199
+ font-size: var(--roxy-text-sm, 0.875rem);
200
+ background: var(--roxy-bg, #fff);
201
+ color: var(--roxy-fg, #0a0a0a);
202
+ word-break: break-word;
203
+ }
204
+ .yoga-chip .yoga-id {
205
+ display: block;
206
+ font-size: 0.7em;
207
+ color: var(--roxy-fg, #0a0a0a);
208
+ opacity: 0.75;
209
+ margin-top: 0.15em;
210
+ }
211
+ .detail-card {
212
+ border: 1px solid var(--roxy-border, #e4e4e7);
213
+ border-radius: var(--roxy-radius-md, 8px);
214
+ padding: var(--roxy-space-md, 1rem);
215
+ background: var(--roxy-bg, #fff);
216
+ display: grid;
217
+ gap: var(--roxy-space-sm, 0.5rem);
218
+ }
219
+ .detail-name {
220
+ font-size: var(--roxy-text-lg, 1.125rem);
221
+ font-weight: var(--roxy-weight-bold, 600);
222
+ margin: 0;
223
+ display: flex;
224
+ align-items: center;
225
+ gap: var(--roxy-space-sm, 0.5rem);
226
+ flex-wrap: wrap;
227
+ }
228
+ .quality-chip {
229
+ display: inline-block;
230
+ font-size: var(--roxy-text-xs, 0.75rem);
231
+ font-weight: 600;
232
+ padding: 0.15em 0.6em;
233
+ border-radius: 999px;
234
+ }
235
+ .quality-Positive {
236
+ background: color-mix(in srgb, var(--roxy-success, #22c55e) 18%, transparent);
237
+ color: var(--roxy-success-fg, #15803d);
238
+ border: 1px solid color-mix(in srgb, var(--roxy-success, #22c55e) 40%, transparent);
239
+ }
240
+ .quality-Negative {
241
+ background: color-mix(in srgb, var(--roxy-danger, #ef4444) 18%, transparent);
242
+ color: var(--roxy-danger-fg, #b91c1c);
243
+ border: 1px solid color-mix(in srgb, var(--roxy-danger, #ef4444) 40%, transparent);
244
+ }
245
+ .quality-Both {
246
+ background: color-mix(in srgb, var(--roxy-warning, #f59e0b) 18%, transparent);
247
+ color: var(--roxy-warning-fg, #b45309);
248
+ border: 1px solid color-mix(in srgb, var(--roxy-warning, #f59e0b) 40%, transparent);
249
+ }
250
+ .description {
251
+ font-size: var(--roxy-text-sm, 0.875rem);
252
+ color: var(--roxy-muted, #71717a);
253
+ margin: 0;
254
+ line-height: var(--roxy-leading-normal, 1.5);
255
+ }
256
+ details {
257
+ font-size: var(--roxy-text-sm, 0.875rem);
258
+ }
259
+ details summary {
260
+ cursor: pointer;
261
+ color: var(--roxy-accent-fg, #b45309);
262
+ font-weight: 500;
263
+ padding: 0.25em 0;
264
+ list-style: none;
265
+ display: flex;
266
+ align-items: center;
267
+ gap: 0.4em;
268
+ }
269
+ details summary::before {
270
+ content: '+';
271
+ font-size: 1.1em;
272
+ line-height: 1;
273
+ }
274
+ details[open] summary::before {
275
+ content: '-';
276
+ }
277
+ details .result-body {
278
+ padding-top: var(--roxy-space-xs, 0.25rem);
279
+ color: var(--roxy-fg, #0a0a0a);
280
+ line-height: var(--roxy-leading-normal, 1.5);
281
+ }
282
+ .no-results {
283
+ color: var(--roxy-muted, #71717a);
284
+ font-size: var(--roxy-text-sm, 0.875rem);
285
+ padding: var(--roxy-space-md, 1rem) 0;
286
+ text-align: center;
287
+ }
288
+ .detail-grid {
289
+ display: grid;
290
+ gap: var(--roxy-space-sm, 0.5rem);
291
+ }
292
+ `],z([Y({attribute:!1})],v.prototype,"data",2),z([be()],v.prototype,"filter",2),v=z([_e("roxy-yoga-list")],v);return Re(Fe);})();
293
+ /*! Bundled license information:
294
+
295
+ @lit/reactive-element/css-tag.js:
296
+ (**
297
+ * @license
298
+ * Copyright 2019 Google LLC
299
+ * SPDX-License-Identifier: BSD-3-Clause
300
+ *)
301
+
302
+ @lit/reactive-element/reactive-element.js:
303
+ lit-html/lit-html.js:
304
+ lit-element/lit-element.js:
305
+ @lit/reactive-element/decorators/custom-element.js:
306
+ @lit/reactive-element/decorators/property.js:
307
+ @lit/reactive-element/decorators/state.js:
308
+ @lit/reactive-element/decorators/event-options.js:
309
+ @lit/reactive-element/decorators/base.js:
310
+ @lit/reactive-element/decorators/query.js:
311
+ @lit/reactive-element/decorators/query-all.js:
312
+ @lit/reactive-element/decorators/query-async.js:
313
+ @lit/reactive-element/decorators/query-assigned-nodes.js:
314
+ (**
315
+ * @license
316
+ * Copyright 2017 Google LLC
317
+ * SPDX-License-Identifier: BSD-3-Clause
318
+ *)
319
+
320
+ lit-html/is-server.js:
321
+ (**
322
+ * @license
323
+ * Copyright 2022 Google LLC
324
+ * SPDX-License-Identifier: BSD-3-Clause
325
+ *)
326
+
327
+ @lit/reactive-element/decorators/query-assigned-elements.js:
328
+ (**
329
+ * @license
330
+ * Copyright 2021 Google LLC
331
+ * SPDX-License-Identifier: BSD-3-Clause
332
+ *)
333
+ */
334
+ //# sourceMappingURL=yoga-list.js.map