tokentracker-cli 1.3.13 → 1.3.15

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 (121) hide show
  1. package/README.md +1 -1
  2. package/README.zh-CN.md +1 -1
  3. package/dashboard/dist/assets/{AchievementBadge-DkNsd5tj.js → AchievementBadge-CSXb26DC.js} +1 -1
  4. package/dashboard/dist/assets/{AchievementsPage-Dr72Hcog.js → AchievementsPage-Bs6vIpd0.js} +2 -2
  5. package/dashboard/dist/assets/{AchievementsSection-CkOdGlnD.js → AchievementsSection-BO4u-574.js} +1 -1
  6. package/dashboard/dist/assets/{BadgeDetailModal-DADLfBsK.js → BadgeDetailModal-ic60vrZX.js} +1 -1
  7. package/dashboard/dist/assets/{BotAnimated-k6u1GRzw.js → BotAnimated-BHHAUEQL.js} +1 -1
  8. package/dashboard/dist/assets/{Card-Dk6s3h-P.js → Card-8t2FYLJV.js} +1 -1
  9. package/dashboard/dist/assets/{CloudCheckoutPage-DL0pvok0.js → CloudCheckoutPage-CXaDDial.js} +1 -1
  10. package/dashboard/dist/assets/{CloudPage-BizN1MZL.js → CloudPage-DN6s_UrT.js} +2 -2
  11. package/dashboard/dist/assets/{CommandPalette-B2crDNlV.js → CommandPalette-D7dHMpHK.js} +1 -1
  12. package/dashboard/dist/assets/{CommunityStatsModal-C6Rc5NME.js → CommunityStatsModal-C55r20Vb.js} +1 -1
  13. package/dashboard/dist/assets/{ConfirmModal-BrxBQn4n.js → ConfirmModal-jSEqSSnW.js} +1 -1
  14. package/dashboard/dist/assets/{Controls-C2mEPI72.js → Controls-CqmoR37l.js} +1 -1
  15. package/dashboard/dist/assets/{DashboardPage-BomPd7nt.js → DashboardPage-BLr2XmyZ.js} +1 -1
  16. package/dashboard/dist/assets/{DateRangePopover-Gz-N_D7O.js → DateRangePopover-z89rKqjK.js} +1 -1
  17. package/dashboard/dist/assets/{DevicePage-wmnNx9bd.js → DevicePage-Ddm5uKOw.js} +1 -1
  18. package/dashboard/dist/assets/{DialogClose-D1dzj_on.js → DialogClose-imfpTM8a.js} +1 -1
  19. package/dashboard/dist/assets/DialogDescription-BE5CNMW0.js +1 -0
  20. package/dashboard/dist/assets/{DialogTitle-BBxNf3O8.js → DialogTitle-Ca1-hka8.js} +1 -1
  21. package/dashboard/dist/assets/{ElectricLogo-DCopeDc8.js → ElectricLogo-CrnDjhtG.js} +1 -1
  22. package/dashboard/dist/assets/{FadeIn-DSndojVd.js → FadeIn-CAr2EMcK.js} +1 -1
  23. package/dashboard/dist/assets/{HeaderGithubStar-BBAGbevf.js → HeaderGithubStar-UK7qFFNh.js} +1 -1
  24. package/dashboard/dist/assets/{HoverTooltip-COD3xE9E.js → HoverTooltip-fs1HBOXB.js} +1 -1
  25. package/dashboard/dist/assets/{IpCheckPage-BtMWefop.js → IpCheckPage-Bk-MlPWf.js} +1 -1
  26. package/dashboard/dist/assets/{LandingPage-DN2IVBw7.js → LandingPage-DJnPCdqP.js} +2 -2
  27. package/dashboard/dist/assets/{LeaderboardPage-DkJowsRI.js → LeaderboardPage-wVjwsqyc.js} +2 -2
  28. package/dashboard/dist/assets/{LeaderboardProBadge-CRRphJNs.js → LeaderboardProBadge-BaQdHu06.js} +1 -1
  29. package/dashboard/dist/assets/{LeaderboardProfileModal-WmZAsZx5.js → LeaderboardProfileModal-D5ZZtIPl.js} +3 -3
  30. package/dashboard/dist/assets/{LeaderboardProfilePage-DWHu-eOp.js → LeaderboardProfilePage-BZsBL2jT.js} +1 -1
  31. package/dashboard/dist/assets/{LimitsPage-BRFAWm-1.js → LimitsPage-Cks_mKSL.js} +1 -1
  32. package/dashboard/dist/assets/{LocalOnlyNotice-BjJ8N4Zc.js → LocalOnlyNotice-DLnC_Tq4.js} +1 -1
  33. package/dashboard/dist/assets/{LoginCard-CYmjHoYK.js → LoginCard-FXZbjmOY.js} +1 -1
  34. package/dashboard/dist/assets/{LoginModal-DX1D9F8b.js → LoginModal-_R-0ZtpQ.js} +1 -1
  35. package/dashboard/dist/assets/{LoginPage-D7Ok7HiZ.js → LoginPage-MzDRyv1Q.js} +1 -1
  36. package/dashboard/dist/assets/{PetPage-BYISPev2.js → PetPage-DJ58EiPT.js} +2 -2
  37. package/dashboard/dist/assets/{PopoverPopup-BlzqlKqF.js → PopoverPopup-uQa7G-IO.js} +1 -1
  38. package/dashboard/dist/assets/{ProviderIcon-BuLwtYjj.js → ProviderIcon-xSNRuia-.js} +1 -1
  39. package/dashboard/dist/assets/{ResetPasswordPage-BJRKclq9.js → ResetPasswordPage-BcVcWbsW.js} +1 -1
  40. package/dashboard/dist/assets/{Select-0YyBw95W.js → Select-Dwix4ZFd.js} +1 -1
  41. package/dashboard/dist/assets/{SelectItemText-CZKyxUjE.js → SelectItemText-Bz5cn5Gk.js} +1 -1
  42. package/dashboard/dist/assets/{SelfHostPage-C_Afofs-.js → SelfHostPage-BLocCkUo.js} +1 -1
  43. package/dashboard/dist/assets/{ServiceStatusPage-0KpLdpon.js → ServiceStatusPage-CzMjS7EQ.js} +1 -1
  44. package/dashboard/dist/assets/{SessionsPage-YtSyWMd0.js → SessionsPage-Dqzuthrd.js} +1 -1
  45. package/dashboard/dist/assets/{SettingsPage-Bm641_AH.js → SettingsPage-DEdNhzKR.js} +3 -3
  46. package/dashboard/dist/assets/{SkillsPage-DNg-I2g_.js → SkillsPage-CqocOQID.js} +1 -1
  47. package/dashboard/dist/assets/{TokenGalaxy-BMN7WiRH.js → TokenGalaxy-B2sMNsM0.js} +1 -1
  48. package/dashboard/dist/assets/{TooltipPopup-BF56BHfc.js → TooltipPopup-LzbtjRSA.js} +1 -1
  49. package/dashboard/dist/assets/{TrendMonitor-D0ea5xMA.js → TrendMonitor-DpMcMWVh.js} +1 -1
  50. package/dashboard/dist/assets/{WidgetsPage-CIAoHmJG.js → WidgetsPage-aKfztwsk.js} +1 -1
  51. package/dashboard/dist/assets/{WrappedPage-CC_57Zr2.js → WrappedPage-NoY2hqbF.js} +1 -1
  52. package/dashboard/dist/assets/__vite-browser-external-BnGukaND.js +45 -0
  53. package/dashboard/dist/assets/{agent-logos-CcJUaB75.js → agent-logos-Oh8CLAYk.js} +1 -1
  54. package/dashboard/dist/assets/{arrow-left-CUiT31ZF.js → arrow-left-Mwggxctm.js} +1 -1
  55. package/dashboard/dist/assets/{arrow-right-Tds6Mert.js → arrow-right-Crx-kuck.js} +1 -1
  56. package/dashboard/dist/assets/{arrow-up-right-CGSxdyzM.js → arrow-up-right-uwoo8I0B.js} +1 -1
  57. package/dashboard/dist/assets/{calendar-days-Cc8AtMa3.js → calendar-days-C6MeKaqh.js} +1 -1
  58. package/dashboard/dist/assets/{check-CzJylQ9j.js → check-dsWQRYNj.js} +1 -1
  59. package/dashboard/dist/assets/{chevron-down-DyG9JVDO.js → chevron-down-BIf5bhyB.js} +1 -1
  60. package/dashboard/dist/assets/{cloud-checkout-DP5zddOq.js → cloud-checkout-GnFRQdnr.js} +1 -1
  61. package/dashboard/dist/assets/{composite-I_1t6PMI.js → composite-lINFdwLI.js} +1 -1
  62. package/dashboard/dist/assets/{download-B_LvkErh.js → download-B7eyvOxn.js} +1 -1
  63. package/dashboard/dist/assets/{external-link-DDA3ObBn.js → external-link-RNTsFDG4.js} +1 -1
  64. package/dashboard/dist/assets/{flame-BqpVWH_1.js → flame-uwCJ6brb.js} +1 -1
  65. package/dashboard/dist/assets/{format-tokens-D6QEOnGq.js → format-tokens-Bf7JxB4E.js} +1 -1
  66. package/dashboard/dist/assets/{gift-BxbKo3W6.js → gift-BY7kCGBK.js} +1 -1
  67. package/dashboard/dist/assets/{host-mode-o3qQY7tz.js → host-mode-Bs-UHw-7.js} +1 -1
  68. package/dashboard/dist/assets/{icons-oGPZPj2n.js → icons-CrLu8vlW.js} +1 -1
  69. package/dashboard/dist/assets/{index-DX--5z1g.js → index-CXQag63s.js} +1 -1
  70. package/dashboard/dist/assets/{index-BxtvQ1J7.js → index-DYIIk93n.js} +1 -1
  71. package/dashboard/dist/assets/{index-Byukv2Nu.js → index-DieuzFHA.js} +1 -1
  72. package/dashboard/dist/assets/{info-BoTz1AGZ.js → info-BteHQN_N.js} +1 -1
  73. package/dashboard/dist/assets/{link-2-C09a122s.js → link-2-C1RSbOHv.js} +1 -1
  74. package/dashboard/dist/assets/{loader-circle--9U0axVe.js → loader-circle-BM3x6_YL.js} +1 -1
  75. package/dashboard/dist/assets/{modifiers.esm-Cra0I6RP.js → modifiers.esm-BHzOJfH3.js} +1 -1
  76. package/dashboard/dist/assets/{monitor-smartphone-C1ENjmOu.js → monitor-smartphone-Ps3VptSt.js} +1 -1
  77. package/dashboard/dist/assets/{play-NqPqbW59.js → play-7MpFYU7a.js} +1 -1
  78. package/dashboard/dist/assets/{plus-DZP82JeP.js → plus-Dk-p9OaZ.js} +1 -1
  79. package/dashboard/dist/assets/{provider-display-BLo4k0bi.js → provider-display-Czwv4ClR.js} +1 -1
  80. package/dashboard/dist/assets/{react-CTLavVze.js → react-D9vco0ZF.js} +1 -1
  81. package/dashboard/dist/assets/{safePolygon-Yw5w5Nw8.js → safePolygon-Ca2iBTNb.js} +1 -1
  82. package/dashboard/dist/assets/{search-DgV6mpMO.js → search-Z2Hfw99-.js} +1 -1
  83. package/dashboard/dist/assets/{server-BybwAQjW.js → server-Dh_OraRG.js} +1 -1
  84. package/dashboard/dist/assets/{shield-check-BiTYwWdT.js → shield-check-59NUSZvk.js} +1 -1
  85. package/dashboard/dist/assets/{skills-api-Dx_Z8_SO.js → skills-api-Bguk8iPD.js} +1 -1
  86. package/dashboard/dist/assets/{sortable.esm-CmJnBLcr.js → sortable.esm-C9M-1k5o.js} +1 -1
  87. package/dashboard/dist/assets/{store-DzNIKGzf.js → store-nR9Ah4fr.js} +1 -1
  88. package/dashboard/dist/assets/{terminal-DPly-UPW.js → terminal-DKTXh9tj.js} +1 -1
  89. package/dashboard/dist/assets/{trash-DsL2ZAN5.js → trash-CQRRKbCs.js} +1 -1
  90. package/dashboard/dist/assets/{use-community-stats-CSTkXFed.js → use-community-stats-BoOd2Hhq.js} +1 -1
  91. package/dashboard/dist/assets/{use-latest-request-guard-CbAXXNlU.js → use-latest-request-guard-vQtFEBIX.js} +1 -1
  92. package/dashboard/dist/assets/{use-limits-display-prefs-mDl6Yv_-.js → use-limits-display-prefs-BRTj9_xd.js} +1 -1
  93. package/dashboard/dist/assets/{use-native-settings-Bu2C3b20.js → use-native-settings-CC6uEn3j.js} +1 -1
  94. package/dashboard/dist/assets/{use-ordered-list-DkGSfMTv.js → use-ordered-list-BUx6eIN7.js} +1 -1
  95. package/dashboard/dist/assets/use-reduced-motion-BZBrXeyc.js +1 -0
  96. package/dashboard/dist/assets/{use-session-efficiency-pref-B2GDf83h.js → use-session-efficiency-pref-BsUypXPb.js} +1 -1
  97. package/dashboard/dist/assets/{use-transform-BVVduBPJ.js → use-transform-oomGXI86.js} +1 -1
  98. package/dashboard/dist/assets/{use-usage-limits-fuzpbbVh.js → use-usage-limits-CXeCKJZ_.js} +1 -1
  99. package/dashboard/dist/assets/{useCurrency-CdDQzroJ.js → useCurrency-DIZEXq5g.js} +1 -1
  100. package/dashboard/dist/assets/{usePositioner-b6XXJtxE.js → usePositioner-Drh2sy7w.js} +1 -1
  101. package/dashboard/dist/assets/{useTokenFormat-90RoMQgI.js → useTokenFormat-DKURSOqb.js} +1 -1
  102. package/dashboard/dist/assets/{zap-xEHzTW-T.js → zap-BQ8nGK7b.js} +1 -1
  103. package/dashboard/dist/index.html +1 -1
  104. package/dashboard/dist/ip-check.html +1 -1
  105. package/dashboard/dist/leaderboard.html +1 -1
  106. package/dashboard/dist/pricing.html +1 -1
  107. package/dashboard/dist/share.html +1 -1
  108. package/dashboard/dist/terms.html +1 -1
  109. package/package.json +1 -1
  110. package/src/commands/status.js +5 -1
  111. package/src/commands/sync.js +28 -1
  112. package/src/lib/jsonl-lines.js +34 -4
  113. package/src/lib/pricing/curated-overrides.json +47 -0
  114. package/src/lib/pricing/matcher.js +11 -3
  115. package/src/lib/pricing/seed-snapshot.json +1 -1
  116. package/src/lib/rollout.js +148 -52
  117. package/src/lib/session-analytics.js +11 -10
  118. package/src/lib/upload-queue.js +1 -1
  119. package/dashboard/dist/assets/DialogDescription-ChbOGLc_.js +0 -1
  120. package/dashboard/dist/assets/__vite-browser-external-CPskAZuH.js +0 -45
  121. package/dashboard/dist/assets/use-reduced-motion-6nBw3cR5.js +0 -1
@@ -1 +1 @@
1
- import{r as c,bm as N,K as I,c7 as V,bF as K,j as C,bB as L,bE as _,b7 as H,ba as W,b1 as z,bn as Y,N as q,bt as G,bs as J}from"./__vite-browser-external-CPskAZuH.js";import{y as Q,z as X,v as Z,w as $,x as ee,C as te,I as ne,n as oe,B as se,o as ae,e as re,P as ie,m as le,h as ue,j as ce,k as de,l as pe,u as ge}from"./composite-I_1t6PMI.js";import{p as fe,c as me}from"./store-DzNIKGzf.js";const F=c.createContext(void 0);function b(e){const t=c.useContext(F);if(!e&&t===void 0)throw new Error(N(27));return t}const we=c.forwardRef(function(t,o){const{render:a,className:p,style:l,forceRender:u=!1,...d}=t,s=b(),n=s.useState("open"),g=s.useState("nested"),S=s.useState("mounted"),m=s.useState("transitionStatus");return I("div",t,{state:{open:n,transitionStatus:m},ref:[s.context.backdropRef,o],stateAttributesMapping:Q,props:[{role:"presentation",hidden:!S,style:{userSelect:"none",WebkitUserSelect:"none"}},d],enabled:u||!g})}),B=c.createContext(void 0);function j(){const e=c.useContext(B);if(e===void 0)throw new Error(N(26));return e}const Se="--nested-dialogs",he="data-nested-dialog-open",A={...X,...V,nestedDialogOpen(e){return e?{[he]:""}:null}},ye=c.forwardRef(function(t,o){const{render:a,className:p,style:l,finalFocus:u,initialFocus:d,...s}=t,n=b(),g=n.useState("descriptionElementId"),S=n.useState("disablePointerDismissal"),m=n.useState("floatingRootContext"),h=n.useState("popupProps"),i=n.useState("modal"),f=n.useState("mounted"),D=n.useState("nested"),P=n.useState("nestedOpenDialogCount"),O=n.useState("open"),E=n.useState("openMethod"),r=n.useState("titleElementId"),R=n.useState("transitionStatus"),w=n.useState("role"),y=m.useState("floatingId");j(),K({open:O,ref:n.context.popupRef,onComplete(){O&&n.context.onOpenChangeComplete?.(!0)}});const x=d===void 0?Z(n.context.popupRef):d,k=P>0,v=n.useStateSetter("popupElement"),U=I("div",t,{state:{open:O,nested:D,transitionStatus:R,nestedDialogOpen:k},props:[h,{id:y,"aria-labelledby":r,"aria-describedby":g,role:w,...ee,hidden:!f,onKeyDown(T){te.has(T.key)&&T.stopPropagation()},style:{[Se]:P}},s],ref:[o,n.context.popupRef,v],stateAttributesMapping:A});return C.jsx($,{context:m,openInteractionType:E,disabled:!f,closeOnFocusOut:!S,initialFocus:x,returnFocus:u,modal:i!==!1,restoreFocus:"popup",children:U})}),ke=c.forwardRef(function(t,o){const{keepMounted:a=!1,...p}=t,l=b(),u=l.useState("mounted"),d=l.useState("modal"),s=l.useState("open");return u||a?C.jsx(B.Provider,{value:a,children:C.jsxs(L,{ref:o,...p,children:[u&&d===!0&&C.jsx(ne,{ref:l.context.internalBackdropRef,inert:_(!s)}),t.children]})}):null});function Pe({store:e,parentContext:t,isDrawer:o}){const a=e.useState("open"),p=e.useState("disablePointerDismissal"),l=e.useState("modal"),u=e.useState("popupElement"),d=e.useState("floatingRootContext"),[s,n]=c.useState(0),[g,S]=c.useState(0),m=s===0,h=oe(d,{outsidePressEvent(){return e.context.internalBackdropRef.current||e.context.backdropRef.current?"intentional":{mouse:l==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}},outsidePress(i){if(!e.context.outsidePressEnabledRef.current||"button"in i&&i.button!==0)return!1;if("touches"in i){if(i.type==="touchend"){if(i.changedTouches.length!==1||i.touches.length!==0)return!1}else if(i.touches.length!==1)return!1}const f=H(i);if(m&&!p){if(l){const D=e.context.internalBackdropRef.current,P=e.context.backdropRef.current;return D||P?D===f||P===f||W(f,u)&&!f?.hasAttribute("data-base-ui-portal"):!0}return!0}return!1},escapeKey:m});return se(a&&l===!0,u),e.useContextCallback("onNestedDialogOpen",(i,f)=>{n(i),S(f)}),z(()=>(t?.onNestedDialogOpen&&(a?t.onNestedDialogOpen(s+1,g+(o?1:0)):t.onNestedDialogOpen(0,0)),()=>{t?.onNestedDialogOpen&&a&&t.onNestedDialogOpen(0,0)}),[o,a,s,g,t]),ae(e,{activeTriggerProps:h.reference,inactiveTriggerProps:h.trigger,popupProps:h.floating,nestedOpenDialogCount:s,nestedOpenDrawerCount:g}),null}const De={...fe,modal:e=>e.modal,nested:e=>e.nested,nestedOpenDialogCount:e=>e.nestedOpenDialogCount,nestedOpenDrawerCount:e=>e.nestedOpenDrawerCount,disablePointerDismissal:e=>e.disablePointerDismissal,openMethod:e=>e.openMethod,descriptionElementId:e=>e.descriptionElementId,titleElementId:e=>e.titleElementId,viewportElement:e=>e.viewportElement,role:e=>e.role};class Ce extends Y{constructor(t,o,a){const p=new ie,l=Oe(t,p,o,a);super(l,be(p),De)}setOpen=(t,o)=>{o.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},!t&&o.trigger==null&&this.state.activeTriggerId!=null&&(o.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(t,o),!o.isCanceled&&(this.state.floatingRootContext.dispatchOpenChange(t,o),this.update(re(this.state,t,o.trigger)))}}function Oe(e,t,o,a=!1){return{...me(t,o,a),modal:!0,disablePointerDismissal:!1,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,nestedOpenDrawerCount:0,role:"dialog",...e}}function be(e){return{popupRef:c.createRef(),backdropRef:c.createRef(),internalBackdropRef:c.createRef(),outsidePressEnabledRef:{current:!0},triggerElements:e,onOpenChange:void 0,onOpenChangeComplete:void 0}}function Re(e,t){const{children:o,open:a,defaultOpen:p=!1,onOpenChange:l,onOpenChangeComplete:u,disablePointerDismissal:d=!1,modal:s=!0,actionsRef:n,handle:g,triggerId:S,defaultTriggerId:m=null}=t,h=e==="drawer",i=s,f=d,D="dialog",P=b(!0),O=P!=null,E={modal:i,disablePointerDismissal:f,nested:O,role:D},r=le((v,M)=>new Ce({open:p,openProp:a,activeTriggerId:m,triggerIdProp:S,...E},v,M),!0);r.useControlledProp("openProp",a),r.useControlledProp("triggerIdProp",S),r.useSyncedValues(E),r.useContextCallback("onOpenChange",l),r.useContextCallback("onOpenChangeComplete",u);const R=r.useState("open"),w=r.useState("mounted"),y=r.useState("payload");ue(r,R),ce(r);const{forceUnmount:x}=de(R,r);c.useImperativeHandle(n,()=>({unmount:x,close:()=>r.setOpen(!1,q(G))}),[x,r]);const k=R||w;return C.jsxs(F.Provider,{value:r,children:[g&&C.jsx(pe,{handle:g,store:r}),k&&C.jsx(Pe,{store:r,parentContext:P?.context,isDrawer:h}),typeof o=="function"?o({payload:y}):o]})}const ve=J(function(t){return Re("dialog",t)}),Me=c.forwardRef(function(t,o){const{render:a,className:p,style:l,children:u,...d}=t,s=j(),n=b(),g=n.useState("open"),S=n.useState("nested"),m=n.useState("transitionStatus"),h=n.useState("nestedOpenDialogCount"),i=n.useState("mounted"),f=n.useStateSetter("viewportElement"),D=h>0;return I("div",t,{enabled:s||i,state:{open:g,nested:S,transitionStatus:m,nestedDialogOpen:D},ref:[o,f],stateAttributesMapping:A,props:[{role:"presentation",hidden:!i,style:{pointerEvents:g?void 0:"none"},children:u},d]})}),Te=c.forwardRef(function(t,o){const{render:a,className:p,style:l,id:u,...d}=t,s=b(),n=ge(u);return s.useSyncedValueWithCleanup("titleElementId",n),I("h2",t,{ref:o,props:[{id:n},d]})});export{ve as D,ke as a,we as b,Me as c,ye as d,Te as e,b as u};
1
+ import{r as c,bm as N,K as I,c7 as V,bF as K,j as C,bB as L,bE as _,b7 as H,ba as W,b1 as z,bn as Y,N as q,bt as G,bs as J}from"./__vite-browser-external-BnGukaND.js";import{y as Q,z as X,v as Z,w as $,x as ee,C as te,I as ne,n as oe,B as se,o as ae,e as re,P as ie,m as le,h as ue,j as ce,k as de,l as pe,u as ge}from"./composite-lINFdwLI.js";import{p as fe,c as me}from"./store-nR9Ah4fr.js";const F=c.createContext(void 0);function b(e){const t=c.useContext(F);if(!e&&t===void 0)throw new Error(N(27));return t}const we=c.forwardRef(function(t,o){const{render:a,className:p,style:l,forceRender:u=!1,...d}=t,s=b(),n=s.useState("open"),g=s.useState("nested"),S=s.useState("mounted"),m=s.useState("transitionStatus");return I("div",t,{state:{open:n,transitionStatus:m},ref:[s.context.backdropRef,o],stateAttributesMapping:Q,props:[{role:"presentation",hidden:!S,style:{userSelect:"none",WebkitUserSelect:"none"}},d],enabled:u||!g})}),B=c.createContext(void 0);function j(){const e=c.useContext(B);if(e===void 0)throw new Error(N(26));return e}const Se="--nested-dialogs",he="data-nested-dialog-open",A={...X,...V,nestedDialogOpen(e){return e?{[he]:""}:null}},ye=c.forwardRef(function(t,o){const{render:a,className:p,style:l,finalFocus:u,initialFocus:d,...s}=t,n=b(),g=n.useState("descriptionElementId"),S=n.useState("disablePointerDismissal"),m=n.useState("floatingRootContext"),h=n.useState("popupProps"),i=n.useState("modal"),f=n.useState("mounted"),D=n.useState("nested"),P=n.useState("nestedOpenDialogCount"),O=n.useState("open"),E=n.useState("openMethod"),r=n.useState("titleElementId"),R=n.useState("transitionStatus"),w=n.useState("role"),y=m.useState("floatingId");j(),K({open:O,ref:n.context.popupRef,onComplete(){O&&n.context.onOpenChangeComplete?.(!0)}});const x=d===void 0?Z(n.context.popupRef):d,k=P>0,v=n.useStateSetter("popupElement"),U=I("div",t,{state:{open:O,nested:D,transitionStatus:R,nestedDialogOpen:k},props:[h,{id:y,"aria-labelledby":r,"aria-describedby":g,role:w,...ee,hidden:!f,onKeyDown(T){te.has(T.key)&&T.stopPropagation()},style:{[Se]:P}},s],ref:[o,n.context.popupRef,v],stateAttributesMapping:A});return C.jsx($,{context:m,openInteractionType:E,disabled:!f,closeOnFocusOut:!S,initialFocus:x,returnFocus:u,modal:i!==!1,restoreFocus:"popup",children:U})}),ke=c.forwardRef(function(t,o){const{keepMounted:a=!1,...p}=t,l=b(),u=l.useState("mounted"),d=l.useState("modal"),s=l.useState("open");return u||a?C.jsx(B.Provider,{value:a,children:C.jsxs(L,{ref:o,...p,children:[u&&d===!0&&C.jsx(ne,{ref:l.context.internalBackdropRef,inert:_(!s)}),t.children]})}):null});function Pe({store:e,parentContext:t,isDrawer:o}){const a=e.useState("open"),p=e.useState("disablePointerDismissal"),l=e.useState("modal"),u=e.useState("popupElement"),d=e.useState("floatingRootContext"),[s,n]=c.useState(0),[g,S]=c.useState(0),m=s===0,h=oe(d,{outsidePressEvent(){return e.context.internalBackdropRef.current||e.context.backdropRef.current?"intentional":{mouse:l==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}},outsidePress(i){if(!e.context.outsidePressEnabledRef.current||"button"in i&&i.button!==0)return!1;if("touches"in i){if(i.type==="touchend"){if(i.changedTouches.length!==1||i.touches.length!==0)return!1}else if(i.touches.length!==1)return!1}const f=H(i);if(m&&!p){if(l){const D=e.context.internalBackdropRef.current,P=e.context.backdropRef.current;return D||P?D===f||P===f||W(f,u)&&!f?.hasAttribute("data-base-ui-portal"):!0}return!0}return!1},escapeKey:m});return se(a&&l===!0,u),e.useContextCallback("onNestedDialogOpen",(i,f)=>{n(i),S(f)}),z(()=>(t?.onNestedDialogOpen&&(a?t.onNestedDialogOpen(s+1,g+(o?1:0)):t.onNestedDialogOpen(0,0)),()=>{t?.onNestedDialogOpen&&a&&t.onNestedDialogOpen(0,0)}),[o,a,s,g,t]),ae(e,{activeTriggerProps:h.reference,inactiveTriggerProps:h.trigger,popupProps:h.floating,nestedOpenDialogCount:s,nestedOpenDrawerCount:g}),null}const De={...fe,modal:e=>e.modal,nested:e=>e.nested,nestedOpenDialogCount:e=>e.nestedOpenDialogCount,nestedOpenDrawerCount:e=>e.nestedOpenDrawerCount,disablePointerDismissal:e=>e.disablePointerDismissal,openMethod:e=>e.openMethod,descriptionElementId:e=>e.descriptionElementId,titleElementId:e=>e.titleElementId,viewportElement:e=>e.viewportElement,role:e=>e.role};class Ce extends Y{constructor(t,o,a){const p=new ie,l=Oe(t,p,o,a);super(l,be(p),De)}setOpen=(t,o)=>{o.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},!t&&o.trigger==null&&this.state.activeTriggerId!=null&&(o.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(t,o),!o.isCanceled&&(this.state.floatingRootContext.dispatchOpenChange(t,o),this.update(re(this.state,t,o.trigger)))}}function Oe(e,t,o,a=!1){return{...me(t,o,a),modal:!0,disablePointerDismissal:!1,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,nestedOpenDrawerCount:0,role:"dialog",...e}}function be(e){return{popupRef:c.createRef(),backdropRef:c.createRef(),internalBackdropRef:c.createRef(),outsidePressEnabledRef:{current:!0},triggerElements:e,onOpenChange:void 0,onOpenChangeComplete:void 0}}function Re(e,t){const{children:o,open:a,defaultOpen:p=!1,onOpenChange:l,onOpenChangeComplete:u,disablePointerDismissal:d=!1,modal:s=!0,actionsRef:n,handle:g,triggerId:S,defaultTriggerId:m=null}=t,h=e==="drawer",i=s,f=d,D="dialog",P=b(!0),O=P!=null,E={modal:i,disablePointerDismissal:f,nested:O,role:D},r=le((v,M)=>new Ce({open:p,openProp:a,activeTriggerId:m,triggerIdProp:S,...E},v,M),!0);r.useControlledProp("openProp",a),r.useControlledProp("triggerIdProp",S),r.useSyncedValues(E),r.useContextCallback("onOpenChange",l),r.useContextCallback("onOpenChangeComplete",u);const R=r.useState("open"),w=r.useState("mounted"),y=r.useState("payload");ue(r,R),ce(r);const{forceUnmount:x}=de(R,r);c.useImperativeHandle(n,()=>({unmount:x,close:()=>r.setOpen(!1,q(G))}),[x,r]);const k=R||w;return C.jsxs(F.Provider,{value:r,children:[g&&C.jsx(pe,{handle:g,store:r}),k&&C.jsx(Pe,{store:r,parentContext:P?.context,isDrawer:h}),typeof o=="function"?o({payload:y}):o]})}const ve=J(function(t){return Re("dialog",t)}),Me=c.forwardRef(function(t,o){const{render:a,className:p,style:l,children:u,...d}=t,s=j(),n=b(),g=n.useState("open"),S=n.useState("nested"),m=n.useState("transitionStatus"),h=n.useState("nestedOpenDialogCount"),i=n.useState("mounted"),f=n.useStateSetter("viewportElement"),D=h>0;return I("div",t,{enabled:s||i,state:{open:g,nested:S,transitionStatus:m,nestedDialogOpen:D},ref:[o,f],stateAttributesMapping:A,props:[{role:"presentation",hidden:!i,style:{pointerEvents:g?void 0:"none"},children:u},d]})}),Te=c.forwardRef(function(t,o){const{render:a,className:p,style:l,id:u,...d}=t,s=b(),n=ge(u);return s.useSyncedValueWithCleanup("titleElementId",n),I("h2",t,{ref:o,props:[{id:n},d]})});export{ve as D,ke as a,we as b,Me as c,ye as d,Te as e,b as u};
@@ -1,4 +1,4 @@
1
- import{r as at,j as Ce}from"./__vite-browser-external-CPskAZuH.js";function pt(e){let t=e[0],i=e[1],s=e[2];return Math.sqrt(t*t+i*i+s*s)}function Pt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function Le(e,t,i,s){return e[0]=t,e[1]=i,e[2]=s,e}function Zt(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e}function Qt(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e}function Ie(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e}function ke(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e}function Ct(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e}function Ue(e,t){let i=t[0]-e[0],s=t[1]-e[1],r=t[2]-e[2];return Math.sqrt(i*i+s*s+r*r)}function Pe(e,t){let i=t[0]-e[0],s=t[1]-e[1],r=t[2]-e[2];return i*i+s*s+r*r}function Kt(e){let t=e[0],i=e[1],s=e[2];return t*t+i*i+s*s}function Oe(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}function De(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e}function Ot(e,t){let i=t[0],s=t[1],r=t[2],n=i*i+s*s+r*r;return n>0&&(n=1/Math.sqrt(n)),e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function Me(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Jt(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[0],a=i[1],l=i[2];return e[0]=r*l-n*a,e[1]=n*h-s*l,e[2]=s*a-r*h,e}function Be(e,t,i,s){let r=t[0],n=t[1],h=t[2];return e[0]=r+s*(i[0]-r),e[1]=n+s*(i[1]-n),e[2]=h+s*(i[2]-h),e}function Ne(e,t,i,s,r){const n=Math.exp(-s*r);let h=t[0],a=t[1],l=t[2];return e[0]=i[0]+(h-i[0])*n,e[1]=i[1]+(a-i[1])*n,e[2]=i[2]+(l-i[2])*n,e}function Ge(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[3]*s+i[7]*r+i[11]*n+i[15];return h=h||1,e[0]=(i[0]*s+i[4]*r+i[8]*n+i[12])/h,e[1]=(i[1]*s+i[5]*r+i[9]*n+i[13])/h,e[2]=(i[2]*s+i[6]*r+i[10]*n+i[14])/h,e}function qe(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[3]*s+i[7]*r+i[11]*n+i[15];return h=h||1,e[0]=(i[0]*s+i[4]*r+i[8]*n)/h,e[1]=(i[1]*s+i[5]*r+i[9]*n)/h,e[2]=(i[2]*s+i[6]*r+i[10]*n)/h,e}function Xe(e,t,i){let s=t[0],r=t[1],n=t[2];return e[0]=s*i[0]+r*i[3]+n*i[6],e[1]=s*i[1]+r*i[4]+n*i[7],e[2]=s*i[2]+r*i[5]+n*i[8],e}function je(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[0],a=i[1],l=i[2],o=i[3],c=a*n-l*r,d=l*s-h*n,f=h*r-a*s,g=a*f-l*d,u=l*c-h*f,m=h*d-a*c,p=o*2;return c*=p,d*=p,f*=p,g*=2,u*=2,m*=2,e[0]=s+c+g,e[1]=r+d+u,e[2]=n+f+m,e}const $e=(function(){const e=[0,0,0],t=[0,0,0];return function(i,s){Pt(e,i),Pt(t,s),Ot(e,e),Ot(t,t);let r=Me(e,t);return r>1?0:r<-1?Math.PI:Math.acos(r)}})();function We(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}class K extends Array{constructor(t=0,i=t,s=t){return super(t,i,s),this}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(t){this[0]=t}set y(t){this[1]=t}set z(t){this[2]=t}set(t,i=t,s=t){return t.length?this.copy(t):(Le(this,t,i,s),this)}copy(t){return Pt(this,t),this}add(t,i){return i?Zt(this,t,i):Zt(this,this,t),this}sub(t,i){return i?Qt(this,t,i):Qt(this,this,t),this}multiply(t){return t.length?Ie(this,this,t):Ct(this,this,t),this}divide(t){return t.length?ke(this,this,t):Ct(this,this,1/t),this}inverse(t=this){return De(this,t),this}len(){return pt(this)}distance(t){return t?Ue(this,t):pt(this)}squaredLen(){return Kt(this)}squaredDistance(t){return t?Pe(this,t):Kt(this)}negate(t=this){return Oe(this,t),this}cross(t,i){return i?Jt(this,t,i):Jt(this,this,t),this}scale(t){return Ct(this,this,t),this}normalize(){return Ot(this,this),this}dot(t){return Me(this,t)}equals(t){return We(this,t)}applyMatrix3(t){return Xe(this,this,t),this}applyMatrix4(t){return Ge(this,this,t),this}scaleRotateMatrix4(t){return qe(this,this,t),this}applyQuaternion(t){return je(this,this,t),this}angle(t){return $e(this,t)}lerp(t,i){return Be(this,this,t,i),this}smoothLerp(t,i,s){return Ne(this,this,t,i,s),this}clone(){return new K(this[0],this[1],this[2])}fromArray(t,i=0){return this[0]=t[i],this[1]=t[i+1],this[2]=t[i+2],this}toArray(t=[],i=0){return t[i]=this[0],t[i+1]=this[1],t[i+2]=this[2],t}transformDirection(t){const i=this[0],s=this[1],r=this[2];return this[0]=t[0]*i+t[4]*s+t[8]*r,this[1]=t[1]*i+t[5]*s+t[9]*r,this[2]=t[2]*i+t[6]*s+t[10]*r,this.normalize()}}const te=new K;let Ve=1,Ye=1,ee=!1;class He{constructor(t,i={}){t.canvas||console.error("gl not passed as first argument to Geometry"),this.gl=t,this.attributes=i,this.id=Ve++,this.VAOs={},this.drawRange={start:0,count:0},this.instancedCount=0,this.gl.renderer.bindVertexArray(null),this.gl.renderer.currentGeometry=null,this.glState=this.gl.renderer.state;for(let s in i)this.addAttribute(s,i[s])}addAttribute(t,i){if(this.attributes[t]=i,i.id=Ye++,i.size=i.size||1,i.type=i.type||(i.data.constructor===Float32Array?this.gl.FLOAT:i.data.constructor===Uint16Array?this.gl.UNSIGNED_SHORT:this.gl.UNSIGNED_INT),i.target=t==="index"?this.gl.ELEMENT_ARRAY_BUFFER:this.gl.ARRAY_BUFFER,i.normalized=i.normalized||!1,i.stride=i.stride||0,i.offset=i.offset||0,i.count=i.count||(i.stride?i.data.byteLength/i.stride:i.data.length/i.size),i.divisor=i.instanced||0,i.needsUpdate=!1,i.usage=i.usage||this.gl.STATIC_DRAW,i.buffer||this.updateAttribute(i),i.divisor){if(this.isInstanced=!0,this.instancedCount&&this.instancedCount!==i.count*i.divisor)return console.warn("geometry has multiple instanced buffers of different length"),this.instancedCount=Math.min(this.instancedCount,i.count*i.divisor);this.instancedCount=i.count*i.divisor}else t==="index"?this.drawRange.count=i.count:this.attributes.index||(this.drawRange.count=Math.max(this.drawRange.count,i.count))}updateAttribute(t){const i=!t.buffer;i&&(t.buffer=this.gl.createBuffer()),this.glState.boundBuffer!==t.buffer&&(this.gl.bindBuffer(t.target,t.buffer),this.glState.boundBuffer=t.buffer),i?this.gl.bufferData(t.target,t.data,t.usage):this.gl.bufferSubData(t.target,0,t.data),t.needsUpdate=!1}setIndex(t){this.addAttribute("index",t)}setDrawRange(t,i){this.drawRange.start=t,this.drawRange.count=i}setInstancedCount(t){this.instancedCount=t}createVAO(t){this.VAOs[t.attributeOrder]=this.gl.renderer.createVertexArray(),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.bindAttributes(t)}bindAttributes(t){t.attributeLocations.forEach((i,{name:s,type:r})=>{if(!this.attributes[s]){console.warn(`active attribute ${s} not being supplied`);return}const n=this.attributes[s];this.gl.bindBuffer(n.target,n.buffer),this.glState.boundBuffer=n.buffer;let h=1;r===35674&&(h=2),r===35675&&(h=3),r===35676&&(h=4);const a=n.size/h,l=h===1?0:h*h*4,o=h===1?0:h*4;for(let c=0;c<h;c++)this.gl.vertexAttribPointer(i+c,a,n.type,n.normalized,n.stride+l,n.offset+c*o),this.gl.enableVertexAttribArray(i+c),this.gl.renderer.vertexAttribDivisor(i+c,n.divisor)}),this.attributes.index&&this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.attributes.index.buffer)}draw({program:t,mode:i=this.gl.TRIANGLES}){this.gl.renderer.currentGeometry!==`${this.id}_${t.attributeOrder}`&&(this.VAOs[t.attributeOrder]||this.createVAO(t),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.gl.renderer.currentGeometry=`${this.id}_${t.attributeOrder}`),t.attributeLocations.forEach((r,{name:n})=>{const h=this.attributes[n];h.needsUpdate&&this.updateAttribute(h)});let s=2;this.attributes.index?.type===this.gl.UNSIGNED_INT&&(s=4),this.isInstanced?this.attributes.index?this.gl.renderer.drawElementsInstanced(i,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*s,this.instancedCount):this.gl.renderer.drawArraysInstanced(i,this.drawRange.start,this.drawRange.count,this.instancedCount):this.attributes.index?this.gl.drawElements(i,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*s):this.gl.drawArrays(i,this.drawRange.start,this.drawRange.count)}getPosition(){const t=this.attributes.position;if(t.data)return t;if(!ee)return console.warn("No position buffer data found to compute bounds"),ee=!0}computeBoundingBox(t){t||(t=this.getPosition());const i=t.data,s=t.size;this.bounds||(this.bounds={min:new K,max:new K,center:new K,scale:new K,radius:1/0});const r=this.bounds.min,n=this.bounds.max,h=this.bounds.center,a=this.bounds.scale;r.set(1/0),n.set(-1/0);for(let l=0,o=i.length;l<o;l+=s){const c=i[l],d=i[l+1],f=i[l+2];r.x=Math.min(c,r.x),r.y=Math.min(d,r.y),r.z=Math.min(f,r.z),n.x=Math.max(c,n.x),n.y=Math.max(d,n.y),n.z=Math.max(f,n.z)}a.sub(n,r),h.add(r,n).divide(2)}computeBoundingSphere(t){t||(t=this.getPosition());const i=t.data,s=t.size;this.bounds||this.computeBoundingBox(t);let r=0;for(let n=0,h=i.length;n<h;n+=s)te.fromArray(i,n),r=Math.max(r,this.bounds.center.squaredDistance(te));this.bounds.radius=Math.sqrt(r)}remove(){for(let t in this.VAOs)this.gl.renderer.deleteVertexArray(this.VAOs[t]),delete this.VAOs[t];for(let t in this.attributes)this.gl.deleteBuffer(this.attributes[t].buffer),delete this.attributes[t]}}let Ze=1;const ie={};class Qe{constructor(t,{vertex:i,fragment:s,uniforms:r={},transparent:n=!1,cullFace:h=t.BACK,frontFace:a=t.CCW,depthTest:l=!0,depthWrite:o=!0,depthFunc:c=t.LEQUAL}={}){t.canvas||console.error("gl not passed as first argument to Program"),this.gl=t,this.uniforms=r,this.id=Ze++,i||console.warn("vertex shader not supplied"),s||console.warn("fragment shader not supplied"),this.transparent=n,this.cullFace=h,this.frontFace=a,this.depthTest=l,this.depthWrite=o,this.depthFunc=c,this.blendFunc={},this.blendEquation={},this.stencilFunc={},this.stencilOp={},this.transparent&&!this.blendFunc.src&&(this.gl.renderer.premultipliedAlpha?this.setBlendFunc(this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA):this.setBlendFunc(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA)),this.vertexShader=t.createShader(t.VERTEX_SHADER),this.fragmentShader=t.createShader(t.FRAGMENT_SHADER),this.program=t.createProgram(),t.attachShader(this.program,this.vertexShader),t.attachShader(this.program,this.fragmentShader),this.setShaders({vertex:i,fragment:s})}setShaders({vertex:t,fragment:i}){if(t&&(this.gl.shaderSource(this.vertexShader,t),this.gl.compileShader(this.vertexShader),this.gl.getShaderInfoLog(this.vertexShader)!==""&&console.warn(`${this.gl.getShaderInfoLog(this.vertexShader)}
1
+ import{r as at,j as Ce}from"./__vite-browser-external-BnGukaND.js";function pt(e){let t=e[0],i=e[1],s=e[2];return Math.sqrt(t*t+i*i+s*s)}function Pt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function Le(e,t,i,s){return e[0]=t,e[1]=i,e[2]=s,e}function Zt(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e}function Qt(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e}function Ie(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e}function ke(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e}function Ct(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e}function Ue(e,t){let i=t[0]-e[0],s=t[1]-e[1],r=t[2]-e[2];return Math.sqrt(i*i+s*s+r*r)}function Pe(e,t){let i=t[0]-e[0],s=t[1]-e[1],r=t[2]-e[2];return i*i+s*s+r*r}function Kt(e){let t=e[0],i=e[1],s=e[2];return t*t+i*i+s*s}function Oe(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}function De(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e}function Ot(e,t){let i=t[0],s=t[1],r=t[2],n=i*i+s*s+r*r;return n>0&&(n=1/Math.sqrt(n)),e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function Me(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Jt(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[0],a=i[1],l=i[2];return e[0]=r*l-n*a,e[1]=n*h-s*l,e[2]=s*a-r*h,e}function Be(e,t,i,s){let r=t[0],n=t[1],h=t[2];return e[0]=r+s*(i[0]-r),e[1]=n+s*(i[1]-n),e[2]=h+s*(i[2]-h),e}function Ne(e,t,i,s,r){const n=Math.exp(-s*r);let h=t[0],a=t[1],l=t[2];return e[0]=i[0]+(h-i[0])*n,e[1]=i[1]+(a-i[1])*n,e[2]=i[2]+(l-i[2])*n,e}function Ge(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[3]*s+i[7]*r+i[11]*n+i[15];return h=h||1,e[0]=(i[0]*s+i[4]*r+i[8]*n+i[12])/h,e[1]=(i[1]*s+i[5]*r+i[9]*n+i[13])/h,e[2]=(i[2]*s+i[6]*r+i[10]*n+i[14])/h,e}function qe(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[3]*s+i[7]*r+i[11]*n+i[15];return h=h||1,e[0]=(i[0]*s+i[4]*r+i[8]*n)/h,e[1]=(i[1]*s+i[5]*r+i[9]*n)/h,e[2]=(i[2]*s+i[6]*r+i[10]*n)/h,e}function Xe(e,t,i){let s=t[0],r=t[1],n=t[2];return e[0]=s*i[0]+r*i[3]+n*i[6],e[1]=s*i[1]+r*i[4]+n*i[7],e[2]=s*i[2]+r*i[5]+n*i[8],e}function je(e,t,i){let s=t[0],r=t[1],n=t[2],h=i[0],a=i[1],l=i[2],o=i[3],c=a*n-l*r,d=l*s-h*n,f=h*r-a*s,g=a*f-l*d,u=l*c-h*f,m=h*d-a*c,p=o*2;return c*=p,d*=p,f*=p,g*=2,u*=2,m*=2,e[0]=s+c+g,e[1]=r+d+u,e[2]=n+f+m,e}const $e=(function(){const e=[0,0,0],t=[0,0,0];return function(i,s){Pt(e,i),Pt(t,s),Ot(e,e),Ot(t,t);let r=Me(e,t);return r>1?0:r<-1?Math.PI:Math.acos(r)}})();function We(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}class K extends Array{constructor(t=0,i=t,s=t){return super(t,i,s),this}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(t){this[0]=t}set y(t){this[1]=t}set z(t){this[2]=t}set(t,i=t,s=t){return t.length?this.copy(t):(Le(this,t,i,s),this)}copy(t){return Pt(this,t),this}add(t,i){return i?Zt(this,t,i):Zt(this,this,t),this}sub(t,i){return i?Qt(this,t,i):Qt(this,this,t),this}multiply(t){return t.length?Ie(this,this,t):Ct(this,this,t),this}divide(t){return t.length?ke(this,this,t):Ct(this,this,1/t),this}inverse(t=this){return De(this,t),this}len(){return pt(this)}distance(t){return t?Ue(this,t):pt(this)}squaredLen(){return Kt(this)}squaredDistance(t){return t?Pe(this,t):Kt(this)}negate(t=this){return Oe(this,t),this}cross(t,i){return i?Jt(this,t,i):Jt(this,this,t),this}scale(t){return Ct(this,this,t),this}normalize(){return Ot(this,this),this}dot(t){return Me(this,t)}equals(t){return We(this,t)}applyMatrix3(t){return Xe(this,this,t),this}applyMatrix4(t){return Ge(this,this,t),this}scaleRotateMatrix4(t){return qe(this,this,t),this}applyQuaternion(t){return je(this,this,t),this}angle(t){return $e(this,t)}lerp(t,i){return Be(this,this,t,i),this}smoothLerp(t,i,s){return Ne(this,this,t,i,s),this}clone(){return new K(this[0],this[1],this[2])}fromArray(t,i=0){return this[0]=t[i],this[1]=t[i+1],this[2]=t[i+2],this}toArray(t=[],i=0){return t[i]=this[0],t[i+1]=this[1],t[i+2]=this[2],t}transformDirection(t){const i=this[0],s=this[1],r=this[2];return this[0]=t[0]*i+t[4]*s+t[8]*r,this[1]=t[1]*i+t[5]*s+t[9]*r,this[2]=t[2]*i+t[6]*s+t[10]*r,this.normalize()}}const te=new K;let Ve=1,Ye=1,ee=!1;class He{constructor(t,i={}){t.canvas||console.error("gl not passed as first argument to Geometry"),this.gl=t,this.attributes=i,this.id=Ve++,this.VAOs={},this.drawRange={start:0,count:0},this.instancedCount=0,this.gl.renderer.bindVertexArray(null),this.gl.renderer.currentGeometry=null,this.glState=this.gl.renderer.state;for(let s in i)this.addAttribute(s,i[s])}addAttribute(t,i){if(this.attributes[t]=i,i.id=Ye++,i.size=i.size||1,i.type=i.type||(i.data.constructor===Float32Array?this.gl.FLOAT:i.data.constructor===Uint16Array?this.gl.UNSIGNED_SHORT:this.gl.UNSIGNED_INT),i.target=t==="index"?this.gl.ELEMENT_ARRAY_BUFFER:this.gl.ARRAY_BUFFER,i.normalized=i.normalized||!1,i.stride=i.stride||0,i.offset=i.offset||0,i.count=i.count||(i.stride?i.data.byteLength/i.stride:i.data.length/i.size),i.divisor=i.instanced||0,i.needsUpdate=!1,i.usage=i.usage||this.gl.STATIC_DRAW,i.buffer||this.updateAttribute(i),i.divisor){if(this.isInstanced=!0,this.instancedCount&&this.instancedCount!==i.count*i.divisor)return console.warn("geometry has multiple instanced buffers of different length"),this.instancedCount=Math.min(this.instancedCount,i.count*i.divisor);this.instancedCount=i.count*i.divisor}else t==="index"?this.drawRange.count=i.count:this.attributes.index||(this.drawRange.count=Math.max(this.drawRange.count,i.count))}updateAttribute(t){const i=!t.buffer;i&&(t.buffer=this.gl.createBuffer()),this.glState.boundBuffer!==t.buffer&&(this.gl.bindBuffer(t.target,t.buffer),this.glState.boundBuffer=t.buffer),i?this.gl.bufferData(t.target,t.data,t.usage):this.gl.bufferSubData(t.target,0,t.data),t.needsUpdate=!1}setIndex(t){this.addAttribute("index",t)}setDrawRange(t,i){this.drawRange.start=t,this.drawRange.count=i}setInstancedCount(t){this.instancedCount=t}createVAO(t){this.VAOs[t.attributeOrder]=this.gl.renderer.createVertexArray(),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.bindAttributes(t)}bindAttributes(t){t.attributeLocations.forEach((i,{name:s,type:r})=>{if(!this.attributes[s]){console.warn(`active attribute ${s} not being supplied`);return}const n=this.attributes[s];this.gl.bindBuffer(n.target,n.buffer),this.glState.boundBuffer=n.buffer;let h=1;r===35674&&(h=2),r===35675&&(h=3),r===35676&&(h=4);const a=n.size/h,l=h===1?0:h*h*4,o=h===1?0:h*4;for(let c=0;c<h;c++)this.gl.vertexAttribPointer(i+c,a,n.type,n.normalized,n.stride+l,n.offset+c*o),this.gl.enableVertexAttribArray(i+c),this.gl.renderer.vertexAttribDivisor(i+c,n.divisor)}),this.attributes.index&&this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.attributes.index.buffer)}draw({program:t,mode:i=this.gl.TRIANGLES}){this.gl.renderer.currentGeometry!==`${this.id}_${t.attributeOrder}`&&(this.VAOs[t.attributeOrder]||this.createVAO(t),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.gl.renderer.currentGeometry=`${this.id}_${t.attributeOrder}`),t.attributeLocations.forEach((r,{name:n})=>{const h=this.attributes[n];h.needsUpdate&&this.updateAttribute(h)});let s=2;this.attributes.index?.type===this.gl.UNSIGNED_INT&&(s=4),this.isInstanced?this.attributes.index?this.gl.renderer.drawElementsInstanced(i,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*s,this.instancedCount):this.gl.renderer.drawArraysInstanced(i,this.drawRange.start,this.drawRange.count,this.instancedCount):this.attributes.index?this.gl.drawElements(i,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*s):this.gl.drawArrays(i,this.drawRange.start,this.drawRange.count)}getPosition(){const t=this.attributes.position;if(t.data)return t;if(!ee)return console.warn("No position buffer data found to compute bounds"),ee=!0}computeBoundingBox(t){t||(t=this.getPosition());const i=t.data,s=t.size;this.bounds||(this.bounds={min:new K,max:new K,center:new K,scale:new K,radius:1/0});const r=this.bounds.min,n=this.bounds.max,h=this.bounds.center,a=this.bounds.scale;r.set(1/0),n.set(-1/0);for(let l=0,o=i.length;l<o;l+=s){const c=i[l],d=i[l+1],f=i[l+2];r.x=Math.min(c,r.x),r.y=Math.min(d,r.y),r.z=Math.min(f,r.z),n.x=Math.max(c,n.x),n.y=Math.max(d,n.y),n.z=Math.max(f,n.z)}a.sub(n,r),h.add(r,n).divide(2)}computeBoundingSphere(t){t||(t=this.getPosition());const i=t.data,s=t.size;this.bounds||this.computeBoundingBox(t);let r=0;for(let n=0,h=i.length;n<h;n+=s)te.fromArray(i,n),r=Math.max(r,this.bounds.center.squaredDistance(te));this.bounds.radius=Math.sqrt(r)}remove(){for(let t in this.VAOs)this.gl.renderer.deleteVertexArray(this.VAOs[t]),delete this.VAOs[t];for(let t in this.attributes)this.gl.deleteBuffer(this.attributes[t].buffer),delete this.attributes[t]}}let Ze=1;const ie={};class Qe{constructor(t,{vertex:i,fragment:s,uniforms:r={},transparent:n=!1,cullFace:h=t.BACK,frontFace:a=t.CCW,depthTest:l=!0,depthWrite:o=!0,depthFunc:c=t.LEQUAL}={}){t.canvas||console.error("gl not passed as first argument to Program"),this.gl=t,this.uniforms=r,this.id=Ze++,i||console.warn("vertex shader not supplied"),s||console.warn("fragment shader not supplied"),this.transparent=n,this.cullFace=h,this.frontFace=a,this.depthTest=l,this.depthWrite=o,this.depthFunc=c,this.blendFunc={},this.blendEquation={},this.stencilFunc={},this.stencilOp={},this.transparent&&!this.blendFunc.src&&(this.gl.renderer.premultipliedAlpha?this.setBlendFunc(this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA):this.setBlendFunc(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA)),this.vertexShader=t.createShader(t.VERTEX_SHADER),this.fragmentShader=t.createShader(t.FRAGMENT_SHADER),this.program=t.createProgram(),t.attachShader(this.program,this.vertexShader),t.attachShader(this.program,this.fragmentShader),this.setShaders({vertex:i,fragment:s})}setShaders({vertex:t,fragment:i}){if(t&&(this.gl.shaderSource(this.vertexShader,t),this.gl.compileShader(this.vertexShader),this.gl.getShaderInfoLog(this.vertexShader)!==""&&console.warn(`${this.gl.getShaderInfoLog(this.vertexShader)}
2
2
  Vertex Shader
3
3
  ${se(t)}`)),i&&(this.gl.shaderSource(this.fragmentShader,i),this.gl.compileShader(this.fragmentShader),this.gl.getShaderInfoLog(this.fragmentShader)!==""&&console.warn(`${this.gl.getShaderInfoLog(this.fragmentShader)}
4
4
  Fragment Shader
@@ -1 +1 @@
1
- import{j as o}from"./__vite-browser-external-CPskAZuH.js";import{m as s}from"./react-CTLavVze.js";import{u as d}from"./use-reduced-motion-6nBw3cR5.js";function m({children:i,delay:t=0,duration:n=.35,y:e=12,className:r="",once:a=!0}){return d()?o.jsx("div",{className:r,children:i}):o.jsx(s.div,{initial:{opacity:0,y:e},animate:{opacity:1,y:0},transition:{duration:n,delay:t,ease:[.16,1,.3,1]},className:r,children:i})}function p({children:i,staggerDelay:t=.1,initialDelay:n=0,className:e=""}){return d()?o.jsx("div",{className:e,children:i}):o.jsx(s.div,{initial:"hidden",animate:"visible",variants:{hidden:{},visible:{transition:{staggerChildren:t,delayChildren:n}}},className:e,children:i})}function x({children:i,className:t="",y:n=12}){return d()?o.jsx("div",{className:t,children:i}):o.jsx(s.div,{variants:{hidden:{opacity:0,y:n},visible:{opacity:1,y:0,transition:{duration:.35,ease:[.16,1,.3,1]}}},className:t,children:i})}export{m as F,p as S,x as a};
1
+ import{j as o}from"./__vite-browser-external-BnGukaND.js";import{m as s}from"./react-D9vco0ZF.js";import{u as d}from"./use-reduced-motion-BZBrXeyc.js";function m({children:i,delay:t=0,duration:n=.35,y:e=12,className:r="",once:a=!0}){return d()?o.jsx("div",{className:r,children:i}):o.jsx(s.div,{initial:{opacity:0,y:e},animate:{opacity:1,y:0},transition:{duration:n,delay:t,ease:[.16,1,.3,1]},className:r,children:i})}function p({children:i,staggerDelay:t=.1,initialDelay:n=0,className:e=""}){return d()?o.jsx("div",{className:e,children:i}):o.jsx(s.div,{initial:"hidden",animate:"visible",variants:{hidden:{},visible:{transition:{staggerChildren:t,delayChildren:n}}},className:e,children:i})}function x({children:i,className:t="",y:n=12}){return d()?o.jsx("div",{className:t,children:i}):o.jsx(s.div,{variants:{hidden:{opacity:0,y:n},visible:{opacity:1,y:0,transition:{duration:.35,ease:[.16,1,.3,1]}}},className:t,children:i})}export{m as F,p as S,x as a};
@@ -1 +1 @@
1
- import{r as s,s as c,j as t,c as d}from"./__vite-browser-external-CPskAZuH.js";function h({repo:r="xiufengsun/TokenTracker"}){const[a,n]=s.useState(null);return s.useEffect(()=>{if(typeof window>"u")return;const o=typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches,i=typeof document<"u"&&(document.documentElement?.classList.contains("screenshot-capture")||document.body?.classList.contains("screenshot-capture"));c({prefersReducedMotion:o,screenshotCapture:i})&&fetch(`https://api.github.com/repos/${r}`).then(e=>e.json()).then(e=>{e&&typeof e.stargazers_count=="number"&&n(e.stargazers_count)}).catch(()=>{})},[r]),t.jsxs("a",{href:`https://github.com/${r}`,target:"_blank",rel:"noopener noreferrer",className:"inline-flex shrink-0 items-center gap-2 px-3 py-1.5 rounded-md border border-oai-gray-200 dark:border-oai-gray-700 bg-oai-gray-50 dark:bg-oai-gray-800 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-700 transition-colors no-underline",children:[t.jsx("svg",{height:"16",viewBox:"0 0 16 16",width:"16",className:"shrink-0 fill-oai-gray-700 dark:fill-oai-gray-300",children:t.jsx("path",{d:"M8 0c4.42 0 8 3.58 8 8a8.013 8.013 0 0 1-5.45 7.59c-.4.08-.55-.17-.55-.38 0-.27.01-1.13.01-2.2 0-.75-.25-1.23-.54-1.48 1.78-.2 3.65-.88 3.65-3.95 0-.88-.31-1.59-.82-2.15.08-.2.36-1.02-.08-2.12 0 0-.67-.22-2.2.82-.64-.18-1.32-.27-2-.27-.68 0-1.36.09-2 .27-1.53-1.03-2.2-.82-2.2-.82-.44 1.1-.16 1.92-.08 2.12-.51.56-.82 1.28-.82 2.15 0 3.06 1.86 3.75 3.64 3.95-.23.2-.44.55-.51 1.07-.46.21-1.61.55-2.33-.66-.15-.24-.6-.83-1.23-.82-.67.01-.27.38.01.53.34.19.73.9.82 1.13.16.45.68 1.31 2.69.94 0 .67.01 1.3.01 1.49 0 .21-.15.45-.55.38A7.995 7.995 0 0 1 0 8c0-4.42 3.58-8 8-8Z"})}),t.jsx("span",{className:"text-xs font-medium text-oai-gray-700 dark:text-oai-gray-300 whitespace-nowrap",children:d("shared.github.star")}),a!==null&&t.jsx("span",{className:"text-xs font-semibold text-oai-gray-900 dark:text-oai-white tabular-nums whitespace-nowrap",children:a})]})}export{h as H};
1
+ import{r as s,s as c,j as t,c as d}from"./__vite-browser-external-BnGukaND.js";function h({repo:r="xiufengsun/TokenTracker"}){const[a,n]=s.useState(null);return s.useEffect(()=>{if(typeof window>"u")return;const o=typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches,i=typeof document<"u"&&(document.documentElement?.classList.contains("screenshot-capture")||document.body?.classList.contains("screenshot-capture"));c({prefersReducedMotion:o,screenshotCapture:i})&&fetch(`https://api.github.com/repos/${r}`).then(e=>e.json()).then(e=>{e&&typeof e.stargazers_count=="number"&&n(e.stargazers_count)}).catch(()=>{})},[r]),t.jsxs("a",{href:`https://github.com/${r}`,target:"_blank",rel:"noopener noreferrer",className:"inline-flex shrink-0 items-center gap-2 px-3 py-1.5 rounded-md border border-oai-gray-200 dark:border-oai-gray-700 bg-oai-gray-50 dark:bg-oai-gray-800 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-700 transition-colors no-underline",children:[t.jsx("svg",{height:"16",viewBox:"0 0 16 16",width:"16",className:"shrink-0 fill-oai-gray-700 dark:fill-oai-gray-300",children:t.jsx("path",{d:"M8 0c4.42 0 8 3.58 8 8a8.013 8.013 0 0 1-5.45 7.59c-.4.08-.55-.17-.55-.38 0-.27.01-1.13.01-2.2 0-.75-.25-1.23-.54-1.48 1.78-.2 3.65-.88 3.65-3.95 0-.88-.31-1.59-.82-2.15.08-.2.36-1.02-.08-2.12 0 0-.67-.22-2.2.82-.64-.18-1.32-.27-2-.27-.68 0-1.36.09-2 .27-1.53-1.03-2.2-.82-2.2-.82-.44 1.1-.16 1.92-.08 2.12-.51.56-.82 1.28-.82 2.15 0 3.06 1.86 3.75 3.64 3.95-.23.2-.44.55-.51 1.07-.46.21-1.61.55-2.33-.66-.15-.24-.6-.83-1.23-.82-.67.01-.27.38.01.53.34.19.73.9.82 1.13.16.45.68 1.31 2.69.94 0 .67.01 1.3.01 1.49 0 .21-.15.45-.55.38A7.995 7.995 0 0 1 0 8c0-4.42 3.58-8 8-8Z"})}),t.jsx("span",{className:"text-xs font-medium text-oai-gray-700 dark:text-oai-gray-300 whitespace-nowrap",children:d("shared.github.star")}),a!==null&&t.jsx("span",{className:"text-xs font-semibold text-oai-gray-900 dark:text-oai-white tabular-nums whitespace-nowrap",children:a})]})}export{h as H};
@@ -1 +1 @@
1
- import{j as t,y as a}from"./__vite-browser-external-CPskAZuH.js";function i({text:o,placement:r="top"}){return o?t.jsx("div",{role:"tooltip",className:a("pointer-events-none absolute left-1/2 z-10 w-max max-w-[260px] -translate-x-1/2 whitespace-pre-line rounded-xl border border-oai-gray-200/50 dark:border-oai-gray-800/50 bg-white/90 dark:bg-oai-gray-900/90 backdrop-blur-md px-2.5 py-1.5 text-[10.5px] leading-snug text-oai-gray-700 dark:text-oai-gray-200 shadow-xl opacity-0 transition-opacity duration-150 group-hover:opacity-100",r==="bottom"?"top-full mt-2":"bottom-full mb-2"),children:o}):null}export{i as H};
1
+ import{j as t,y as a}from"./__vite-browser-external-BnGukaND.js";function i({text:o,placement:r="top"}){return o?t.jsx("div",{role:"tooltip",className:a("pointer-events-none absolute left-1/2 z-10 w-max max-w-[260px] -translate-x-1/2 whitespace-pre-line rounded-xl border border-oai-gray-200/50 dark:border-oai-gray-800/50 bg-white/90 dark:bg-oai-gray-900/90 backdrop-blur-md px-2.5 py-1.5 text-[10.5px] leading-snug text-oai-gray-700 dark:text-oai-gray-200 shadow-xl opacity-0 transition-opacity duration-150 group-hover:opacity-100",r==="bottom"?"top-full mt-2":"bottom-full mb-2"),children:o}):null}export{i as H};
@@ -1,4 +1,4 @@
1
- import{r as ge,c as t,j as n}from"./__vite-browser-external-CPskAZuH.js";const Ge=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),j=Ge?"/proxy/ipcheck":"https://ip.net.coffee",fe="claude_ip_history",Se=6,Ue=["CN","HK","MO","RU","KP","IR","SY","CU","BY","VE"],ze={CN:"Asia/Shanghai",TW:"Asia/Taipei",HK:"Asia/Hong_Kong",MO:"Asia/Macau",JP:"Asia/Tokyo",KR:"Asia/Seoul",SG:"Asia/Singapore",MY:"Asia/Kuala_Lumpur",TH:"Asia/Bangkok",VN:"Asia/Ho_Chi_Minh",ID:"Asia/Jakarta",PH:"Asia/Manila",IN:"Asia/Kolkata",PK:"Asia/Karachi",BD:"Asia/Dhaka",IR:"Asia/Tehran",IL:"Asia/Jerusalem",AE:"Asia/Dubai",SA:"Asia/Riyadh",TR:"Europe/Istanbul",RU:"Europe/Moscow",UA:"Europe/Kyiv",GB:"Europe/London",IE:"Europe/Dublin",FR:"Europe/Paris",DE:"Europe/Berlin",IT:"Europe/Rome",ES:"Europe/Madrid",PT:"Europe/Lisbon",NL:"Europe/Amsterdam",BE:"Europe/Brussels",CH:"Europe/Zurich",AT:"Europe/Vienna",SE:"Europe/Stockholm",NO:"Europe/Oslo",DK:"Europe/Copenhagen",FI:"Europe/Helsinki",PL:"Europe/Warsaw",CZ:"Europe/Prague",GR:"Europe/Athens",RO:"Europe/Bucharest",US:"America/Los_Angeles",CA:"America/Toronto",MX:"America/Mexico_City",BR:"America/Sao_Paulo",AR:"America/Argentina/Buenos_Aires",CL:"America/Santiago",AU:"Australia/Sydney",NZ:"Pacific/Auckland",ZA:"Africa/Johannesburg",EG:"Africa/Cairo",NG:"Africa/Lagos",KE:"Africa/Nairobi"},We={CN:["zh"],TW:["zh"],HK:["zh","en"],MO:["zh","en"],JP:["ja"],KR:["ko"],TH:["th"],VN:["vi"],SG:["en","zh","ms","ta"],MY:["ms","en","zh","ta"],ID:["id","en"],PH:["en","tl","fil"],IN:["en","hi"],PK:["ur","en"],BD:["bn","en"],LK:["si","ta","en"],NP:["ne","en"],US:["en"],GB:["en"],IE:["en","ga"],AU:["en"],NZ:["en","mi"],CA:["en","fr"],DE:["de"],AT:["de"],CH:["de","fr","it","rm"],BE:["nl","fr","de"],FR:["fr"],IT:["it"],ES:["es","ca","gl","eu"],PT:["pt"],NL:["nl","fy"],LU:["lb","fr","de"],SE:["sv"],NO:["no","nb","nn"],DK:["da"],FI:["fi","sv"],IS:["is","en"],PL:["pl"],CZ:["cs"],SK:["sk"],HU:["hu"],RO:["ro"],BG:["bg"],GR:["el"],RU:["ru"],UA:["uk","ru"],BY:["be","ru"],TR:["tr"],IL:["he","ar","en"],SA:["ar"],AE:["ar","en"],EG:["ar"],IR:["fa"],IQ:["ar","ku"],ZA:["en","af","zu","xh"],KE:["en","sw"],NG:["en"],ET:["am","en"],BR:["pt"],AR:["es"],MX:["es"],CL:["es"],CO:["es"],PE:["es"],VE:["es"]},Be={jp:"Japan",tw:"Taiwan",hk:"Hong Kong",sg:"Singapore",us:"United States",de:"Germany",kr:"South Korea",fr:"France",nl:"Netherlands",gb:"United Kingdom",au:"Australia",ca:"Canada",br:"Brazil",in:"India"};function Z(p){return!!p&&p.includes(":")}function Ke(p){return!Z(p)||p.length<=20?p:p.substring(0,18)+"..."}function w(p){return p==null?"":String(p).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function B(p){if(!p||!/^[a-zA-Z]{2}$/.test(p))return"";const b=p.toLowerCase();return`<img src="${b==="cn"?`${j}/favicons/cn.png`:b==="tw"?`${j}/favicons/flags/tw.png`:`${j}/favicons/flags/${b}.png`}" alt="${b}" class="inline-block h-4 w-auto align-[-2px]" onerror="this.onerror=null;this.style.display='none'">`}function Fe(p){if(!p)return"";const b=String(p).trim();if(/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(b)){const S=b.split(".");return S[0]+"."+S[1]+".*.*"}if(b.includes("…")){const S=b.lastIndexOf("…");return b.substring(0,S+1)+"*"}if(b.includes(":")){const S=b.split(":");if(S.length>=2)return S[0]+":"+S[1]+":*"}return b}function Ve(p){if(!p)return null;try{const S=new Intl.DateTimeFormat("en-US",{timeZone:p,timeZoneName:"longOffset"}).formatToParts(new Date).find(q=>q.type==="timeZoneName");if(!S)return null;if(S.value==="GMT"||S.value==="UTC")return 0;const M=S.value.match(/GMT([+-])(\d{1,2}):?(\d{0,2})/);return M?(M[1]==="+"?1:-1)*(parseInt(M[2],10)*60+parseInt(M[3]||"0",10)):null}catch{return null}}function Ye(p){if(p==null)return"";const b=p>=0?"+":"-",S=Math.abs(p),M=Math.floor(S/60),D=S%60;return"UTC"+b+M+(D?":"+String(D).padStart(2,"0"):"")}const Te={safe:"bg-emerald-50 text-emerald-700 dark:bg-emerald-500/15 dark:text-emerald-300",warn:"bg-amber-50 text-amber-800 dark:bg-amber-500/15 dark:text-amber-300",danger:"bg-red-50 text-red-700 dark:bg-red-500/15 dark:text-red-300",info:"bg-blue-50 text-blue-700 dark:bg-blue-500/15 dark:text-blue-300",neutral:"bg-oai-gray-100 text-oai-gray-600 dark:bg-oai-gray-800 dark:text-oai-gray-400"};function Je(){const p=ge.useRef(null),[b,S]=ge.useState(!1);ge.useEffect(()=>{const _=p.current;if(!_)return;const C=a=>_.querySelector(`#${a}`);let se=!1;const e={unknown:t("ipcheck.common.unknown"),failed:t("ipcheck.ip.failed"),regionAccessible:t("ipcheck.trust.region.accessible"),regionWarnTitle:a=>t("ipcheck.trust.region_warn.title",{region:a}),regionWarnBody:t("ipcheck.trust.region_warn.body"),regionRestrictedText:t("ipcheck.trust.text.restricted"),noData:t("ipcheck.trust.no_data"),noIp:t("ipcheck.trust.no_ip"),noScore:t("ipcheck.trust.no_score"),score:{pristine:t("ipcheck.trust.label.pristine"),clean:t("ipcheck.trust.label.clean"),good:t("ipcheck.trust.label.good"),neutral:t("ipcheck.trust.label.neutral"),suspicious:t("ipcheck.trust.label.suspicious"),unreachable:t("ipcheck.trust.label.unreachable")},scoreText:{excellent:t("ipcheck.trust.text.excellent"),great:t("ipcheck.trust.text.great"),minor:t("ipcheck.trust.text.minor"),moderate:t("ipcheck.trust.text.moderate"),severe:t("ipcheck.trust.text.severe")},propsRegion:t("ipcheck.props.region"),propsCity:t("ipcheck.props.city"),propsType:t("ipcheck.props.type"),propsAsn:t("ipcheck.props.asn"),propsOrg:t("ipcheck.props.org"),propsResidential:t("ipcheck.props.residential"),propsDatacenter:t("ipcheck.props.datacenter"),secVpn:t("ipcheck.security.vpn"),secProxy:t("ipcheck.security.proxy"),secTor:t("ipcheck.security.tor"),secCrawler:t("ipcheck.security.crawler"),secAbuser:t("ipcheck.security.abuser"),secProxyFlag:t("ipcheck.security.proxy_flag"),secCrawlerYes:t("ipcheck.security.crawler_yes"),secCrawlerNo:t("ipcheck.security.crawler_no"),secAbuserYes:t("ipcheck.security.abuser_yes"),secAbuserNo:t("ipcheck.security.abuser_no"),secClean:t("ipcheck.security.clean"),availSvc:t("ipcheck.avail.svc_row"),availLat:{normal:t("ipcheck.avail.latency.normal"),good:t("ipcheck.avail.latency.good"),slow:t("ipcheck.avail.latency.slow"),unreachable:t("ipcheck.avail.latency.unreachable")},availSvcStatus:{none:t("ipcheck.avail.svc.none"),minor:t("ipcheck.avail.svc.minor"),major:t("ipcheck.avail.svc.major"),critical:t("ipcheck.avail.svc.critical"),maintenance:t("ipcheck.avail.svc.maintenance"),other:t("ipcheck.avail.svc.other")},dnsStatus:t("ipcheck.dns.status"),dnsOutlet:t("ipcheck.dns.outlet"),dnsOutletIp:t("ipcheck.dns.outlet_ip"),dnsIsp:t("ipcheck.dns.isp"),dnsLeaked:t("ipcheck.dns.leaked"),dnsNoLeak:t("ipcheck.dns.no_leak"),dnsEncrypted:t("ipcheck.dns.encrypted"),dnsCnTag:t("ipcheck.dns.cn_tag"),udpStatus:t("ipcheck.udp.status"),udpOutlet:t("ipcheck.udp.outlet"),udpOutletIp:t("ipcheck.udp.outlet_ip"),udpOrigin:t("ipcheck.udp.origin"),udpDisabled:t("ipcheck.udp.disabled"),udpNoLeak:t("ipcheck.udp.no_leak"),udpLeaked:t("ipcheck.udp.leaked"),udpAnomaly:t("ipcheck.udp.anomaly"),devTz:t("ipcheck.device.tz"),devLang:t("ipcheck.device.lang"),devOs:t("ipcheck.device.os"),devTouch:t("ipcheck.device.touch"),devNet:t("ipcheck.device.net"),devDnt:t("ipcheck.device.dnt"),devWebglRender:t("ipcheck.device.webgl_render"),devCanvasFp:t("ipcheck.device.canvas_fp"),devWebglFp:t("ipcheck.device.webgl_fp"),devMatch:t("ipcheck.device.match"),devMismatch:t("ipcheck.device.mismatch"),devLocal:t("ipcheck.device.local"),devEstSuffix:t("ipcheck.device.estimate_suffix"),devDiffEqual:t("ipcheck.device.diff_equal"),devDiffAhead:a=>t("ipcheck.device.diff_ahead",{h:a}),devDiffBehind:a=>t("ipcheck.device.diff_behind",{h:a}),devLangExpected:t("ipcheck.device.lang_expected"),devTouchYes:t("ipcheck.device.touch_yes"),devTouchNo:t("ipcheck.device.touch_no"),devDntOn:t("ipcheck.device.dnt_on"),devDntOff:t("ipcheck.device.dnt_off"),devDntUnset:t("ipcheck.device.dnt_unset"),devNetUnsupported:t("ipcheck.device.net_unsupported"),devUnsupported:t("ipcheck.device.unsupported"),histEmpty:t("ipcheck.history.empty"),histCurrent:t("ipcheck.history.current"),histLoading:t("ipcheck.ip.loading")};function f(a,i="neutral"){return`<span class="inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${Te[i]||Te.neutral}">${a}</span>`}function J(a,i,r){return a===!0?f(i,"danger"):a===!1?f(r,"safe"):f(e.unknown,"neutral")}function he(a){if(!a)return`<span class="text-oai-gray-400 dark:text-oai-gray-500">${w(e.failed)}</span>`;const i=w(a);return Z(a)?`<span class="ip-mask-target truncate" title="${i}">${w(Ke(a))}</span>`:`<span class="ip-mask-target">${i}</span>`}function K(a){return a?`<span class="ip-link">${he(a)}</span>`:`<span class="text-oai-gray-400 dark:text-oai-gray-500">${w(e.failed)}</span>`}function d(a,i,r=!1){let u=i;return i===void 0?r?u=`<div class="inline-flex items-center gap-1.5 text-xs text-oai-gray-400">
1
+ import{r as ge,c as t,j as n}from"./__vite-browser-external-BnGukaND.js";const Ge=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),j=Ge?"/proxy/ipcheck":"https://ip.net.coffee",fe="claude_ip_history",Se=6,Ue=["CN","HK","MO","RU","KP","IR","SY","CU","BY","VE"],ze={CN:"Asia/Shanghai",TW:"Asia/Taipei",HK:"Asia/Hong_Kong",MO:"Asia/Macau",JP:"Asia/Tokyo",KR:"Asia/Seoul",SG:"Asia/Singapore",MY:"Asia/Kuala_Lumpur",TH:"Asia/Bangkok",VN:"Asia/Ho_Chi_Minh",ID:"Asia/Jakarta",PH:"Asia/Manila",IN:"Asia/Kolkata",PK:"Asia/Karachi",BD:"Asia/Dhaka",IR:"Asia/Tehran",IL:"Asia/Jerusalem",AE:"Asia/Dubai",SA:"Asia/Riyadh",TR:"Europe/Istanbul",RU:"Europe/Moscow",UA:"Europe/Kyiv",GB:"Europe/London",IE:"Europe/Dublin",FR:"Europe/Paris",DE:"Europe/Berlin",IT:"Europe/Rome",ES:"Europe/Madrid",PT:"Europe/Lisbon",NL:"Europe/Amsterdam",BE:"Europe/Brussels",CH:"Europe/Zurich",AT:"Europe/Vienna",SE:"Europe/Stockholm",NO:"Europe/Oslo",DK:"Europe/Copenhagen",FI:"Europe/Helsinki",PL:"Europe/Warsaw",CZ:"Europe/Prague",GR:"Europe/Athens",RO:"Europe/Bucharest",US:"America/Los_Angeles",CA:"America/Toronto",MX:"America/Mexico_City",BR:"America/Sao_Paulo",AR:"America/Argentina/Buenos_Aires",CL:"America/Santiago",AU:"Australia/Sydney",NZ:"Pacific/Auckland",ZA:"Africa/Johannesburg",EG:"Africa/Cairo",NG:"Africa/Lagos",KE:"Africa/Nairobi"},We={CN:["zh"],TW:["zh"],HK:["zh","en"],MO:["zh","en"],JP:["ja"],KR:["ko"],TH:["th"],VN:["vi"],SG:["en","zh","ms","ta"],MY:["ms","en","zh","ta"],ID:["id","en"],PH:["en","tl","fil"],IN:["en","hi"],PK:["ur","en"],BD:["bn","en"],LK:["si","ta","en"],NP:["ne","en"],US:["en"],GB:["en"],IE:["en","ga"],AU:["en"],NZ:["en","mi"],CA:["en","fr"],DE:["de"],AT:["de"],CH:["de","fr","it","rm"],BE:["nl","fr","de"],FR:["fr"],IT:["it"],ES:["es","ca","gl","eu"],PT:["pt"],NL:["nl","fy"],LU:["lb","fr","de"],SE:["sv"],NO:["no","nb","nn"],DK:["da"],FI:["fi","sv"],IS:["is","en"],PL:["pl"],CZ:["cs"],SK:["sk"],HU:["hu"],RO:["ro"],BG:["bg"],GR:["el"],RU:["ru"],UA:["uk","ru"],BY:["be","ru"],TR:["tr"],IL:["he","ar","en"],SA:["ar"],AE:["ar","en"],EG:["ar"],IR:["fa"],IQ:["ar","ku"],ZA:["en","af","zu","xh"],KE:["en","sw"],NG:["en"],ET:["am","en"],BR:["pt"],AR:["es"],MX:["es"],CL:["es"],CO:["es"],PE:["es"],VE:["es"]},Be={jp:"Japan",tw:"Taiwan",hk:"Hong Kong",sg:"Singapore",us:"United States",de:"Germany",kr:"South Korea",fr:"France",nl:"Netherlands",gb:"United Kingdom",au:"Australia",ca:"Canada",br:"Brazil",in:"India"};function Z(p){return!!p&&p.includes(":")}function Ke(p){return!Z(p)||p.length<=20?p:p.substring(0,18)+"..."}function w(p){return p==null?"":String(p).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function B(p){if(!p||!/^[a-zA-Z]{2}$/.test(p))return"";const b=p.toLowerCase();return`<img src="${b==="cn"?`${j}/favicons/cn.png`:b==="tw"?`${j}/favicons/flags/tw.png`:`${j}/favicons/flags/${b}.png`}" alt="${b}" class="inline-block h-4 w-auto align-[-2px]" onerror="this.onerror=null;this.style.display='none'">`}function Fe(p){if(!p)return"";const b=String(p).trim();if(/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(b)){const S=b.split(".");return S[0]+"."+S[1]+".*.*"}if(b.includes("…")){const S=b.lastIndexOf("…");return b.substring(0,S+1)+"*"}if(b.includes(":")){const S=b.split(":");if(S.length>=2)return S[0]+":"+S[1]+":*"}return b}function Ve(p){if(!p)return null;try{const S=new Intl.DateTimeFormat("en-US",{timeZone:p,timeZoneName:"longOffset"}).formatToParts(new Date).find(q=>q.type==="timeZoneName");if(!S)return null;if(S.value==="GMT"||S.value==="UTC")return 0;const M=S.value.match(/GMT([+-])(\d{1,2}):?(\d{0,2})/);return M?(M[1]==="+"?1:-1)*(parseInt(M[2],10)*60+parseInt(M[3]||"0",10)):null}catch{return null}}function Ye(p){if(p==null)return"";const b=p>=0?"+":"-",S=Math.abs(p),M=Math.floor(S/60),D=S%60;return"UTC"+b+M+(D?":"+String(D).padStart(2,"0"):"")}const Te={safe:"bg-emerald-50 text-emerald-700 dark:bg-emerald-500/15 dark:text-emerald-300",warn:"bg-amber-50 text-amber-800 dark:bg-amber-500/15 dark:text-amber-300",danger:"bg-red-50 text-red-700 dark:bg-red-500/15 dark:text-red-300",info:"bg-blue-50 text-blue-700 dark:bg-blue-500/15 dark:text-blue-300",neutral:"bg-oai-gray-100 text-oai-gray-600 dark:bg-oai-gray-800 dark:text-oai-gray-400"};function Je(){const p=ge.useRef(null),[b,S]=ge.useState(!1);ge.useEffect(()=>{const _=p.current;if(!_)return;const C=a=>_.querySelector(`#${a}`);let se=!1;const e={unknown:t("ipcheck.common.unknown"),failed:t("ipcheck.ip.failed"),regionAccessible:t("ipcheck.trust.region.accessible"),regionWarnTitle:a=>t("ipcheck.trust.region_warn.title",{region:a}),regionWarnBody:t("ipcheck.trust.region_warn.body"),regionRestrictedText:t("ipcheck.trust.text.restricted"),noData:t("ipcheck.trust.no_data"),noIp:t("ipcheck.trust.no_ip"),noScore:t("ipcheck.trust.no_score"),score:{pristine:t("ipcheck.trust.label.pristine"),clean:t("ipcheck.trust.label.clean"),good:t("ipcheck.trust.label.good"),neutral:t("ipcheck.trust.label.neutral"),suspicious:t("ipcheck.trust.label.suspicious"),unreachable:t("ipcheck.trust.label.unreachable")},scoreText:{excellent:t("ipcheck.trust.text.excellent"),great:t("ipcheck.trust.text.great"),minor:t("ipcheck.trust.text.minor"),moderate:t("ipcheck.trust.text.moderate"),severe:t("ipcheck.trust.text.severe")},propsRegion:t("ipcheck.props.region"),propsCity:t("ipcheck.props.city"),propsType:t("ipcheck.props.type"),propsAsn:t("ipcheck.props.asn"),propsOrg:t("ipcheck.props.org"),propsResidential:t("ipcheck.props.residential"),propsDatacenter:t("ipcheck.props.datacenter"),secVpn:t("ipcheck.security.vpn"),secProxy:t("ipcheck.security.proxy"),secTor:t("ipcheck.security.tor"),secCrawler:t("ipcheck.security.crawler"),secAbuser:t("ipcheck.security.abuser"),secProxyFlag:t("ipcheck.security.proxy_flag"),secCrawlerYes:t("ipcheck.security.crawler_yes"),secCrawlerNo:t("ipcheck.security.crawler_no"),secAbuserYes:t("ipcheck.security.abuser_yes"),secAbuserNo:t("ipcheck.security.abuser_no"),secClean:t("ipcheck.security.clean"),availSvc:t("ipcheck.avail.svc_row"),availLat:{normal:t("ipcheck.avail.latency.normal"),good:t("ipcheck.avail.latency.good"),slow:t("ipcheck.avail.latency.slow"),unreachable:t("ipcheck.avail.latency.unreachable")},availSvcStatus:{none:t("ipcheck.avail.svc.none"),minor:t("ipcheck.avail.svc.minor"),major:t("ipcheck.avail.svc.major"),critical:t("ipcheck.avail.svc.critical"),maintenance:t("ipcheck.avail.svc.maintenance"),other:t("ipcheck.avail.svc.other")},dnsStatus:t("ipcheck.dns.status"),dnsOutlet:t("ipcheck.dns.outlet"),dnsOutletIp:t("ipcheck.dns.outlet_ip"),dnsIsp:t("ipcheck.dns.isp"),dnsLeaked:t("ipcheck.dns.leaked"),dnsNoLeak:t("ipcheck.dns.no_leak"),dnsEncrypted:t("ipcheck.dns.encrypted"),dnsCnTag:t("ipcheck.dns.cn_tag"),udpStatus:t("ipcheck.udp.status"),udpOutlet:t("ipcheck.udp.outlet"),udpOutletIp:t("ipcheck.udp.outlet_ip"),udpOrigin:t("ipcheck.udp.origin"),udpDisabled:t("ipcheck.udp.disabled"),udpNoLeak:t("ipcheck.udp.no_leak"),udpLeaked:t("ipcheck.udp.leaked"),udpAnomaly:t("ipcheck.udp.anomaly"),devTz:t("ipcheck.device.tz"),devLang:t("ipcheck.device.lang"),devOs:t("ipcheck.device.os"),devTouch:t("ipcheck.device.touch"),devNet:t("ipcheck.device.net"),devDnt:t("ipcheck.device.dnt"),devWebglRender:t("ipcheck.device.webgl_render"),devCanvasFp:t("ipcheck.device.canvas_fp"),devWebglFp:t("ipcheck.device.webgl_fp"),devMatch:t("ipcheck.device.match"),devMismatch:t("ipcheck.device.mismatch"),devLocal:t("ipcheck.device.local"),devEstSuffix:t("ipcheck.device.estimate_suffix"),devDiffEqual:t("ipcheck.device.diff_equal"),devDiffAhead:a=>t("ipcheck.device.diff_ahead",{h:a}),devDiffBehind:a=>t("ipcheck.device.diff_behind",{h:a}),devLangExpected:t("ipcheck.device.lang_expected"),devTouchYes:t("ipcheck.device.touch_yes"),devTouchNo:t("ipcheck.device.touch_no"),devDntOn:t("ipcheck.device.dnt_on"),devDntOff:t("ipcheck.device.dnt_off"),devDntUnset:t("ipcheck.device.dnt_unset"),devNetUnsupported:t("ipcheck.device.net_unsupported"),devUnsupported:t("ipcheck.device.unsupported"),histEmpty:t("ipcheck.history.empty"),histCurrent:t("ipcheck.history.current"),histLoading:t("ipcheck.ip.loading")};function f(a,i="neutral"){return`<span class="inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${Te[i]||Te.neutral}">${a}</span>`}function J(a,i,r){return a===!0?f(i,"danger"):a===!1?f(r,"safe"):f(e.unknown,"neutral")}function he(a){if(!a)return`<span class="text-oai-gray-400 dark:text-oai-gray-500">${w(e.failed)}</span>`;const i=w(a);return Z(a)?`<span class="ip-mask-target truncate" title="${i}">${w(Ke(a))}</span>`:`<span class="ip-mask-target">${i}</span>`}function K(a){return a?`<span class="ip-link">${he(a)}</span>`:`<span class="text-oai-gray-400 dark:text-oai-gray-500">${w(e.failed)}</span>`}function d(a,i,r=!1){let u=i;return i===void 0?r?u=`<div class="inline-flex items-center gap-1.5 text-xs text-oai-gray-400">
2
2
  <svg class="animate-spin-subtle h-3.5 w-3.5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24">
3
3
  <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="3"></circle>
4
4
  <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>