@chenpu17/cc-gw 0.10.4 → 0.12.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 (54) hide show
  1. package/README.md +2 -0
  2. package/package.json +6 -6
  3. package/src/web/dist/assets/{About-DVONGhC8.js → About-B4KoKSAM.js} +1 -1
  4. package/src/web/dist/assets/{ApiKeys-C3UcR3Xt.js → ApiKeys-CwiStTlS.js} +1 -1
  5. package/src/web/dist/assets/{ConfirmDialog-Ci29hhDD.js → ConfirmDialog-cZsL-k-v.js} +1 -1
  6. package/src/web/dist/assets/{Dashboard-C5pBcbjh.js → Dashboard-khRk8U0-.js} +1 -1
  7. package/src/web/dist/assets/{DialogShell-iCyqEFRA.js → DialogShell-BbpG8sot.js} +1 -1
  8. package/src/web/dist/assets/{Events-DXuVlVli.js → Events-BGQklKqB.js} +1 -1
  9. package/src/web/dist/assets/{Help-DoBQVllq.js → Help-B2MDKuj8.js} +1 -1
  10. package/src/web/dist/assets/{Login-BKBhBrF_.js → Login-CrvH8tn2.js} +1 -1
  11. package/src/web/dist/assets/{Logs-Cl14ySgm.js → Logs-DoAgVjw3.js} +1 -1
  12. package/src/web/dist/assets/{PageSection-BE4JZURK.js → PageSection-Bv6dZZwN.js} +1 -1
  13. package/src/web/dist/assets/{PageState-BzdQq00f.js → PageState-U6DpaNu4.js} +1 -1
  14. package/src/web/dist/assets/{PageToolbar-xVyzEX46.js → PageToolbar-BnDacS2l.js} +1 -1
  15. package/src/web/dist/assets/ProvidersWorkbench-CI7TbMf1.js +1 -0
  16. package/src/web/dist/assets/{Settings-BxtiQXA0.js → Settings-BnqMqPol.js} +1 -1
  17. package/src/web/dist/assets/{Setup-r8hTQIkT.js → Setup-deGPdPcE.js} +1 -1
  18. package/src/web/dist/assets/{apiKeys-C7NN8p2H.js → apiKeys-Ol_q3sZL.js} +1 -1
  19. package/src/web/dist/assets/{app-WMvqYU5W.js → app-BBAnVEPg.js} +4 -4
  20. package/src/web/dist/assets/{badge-DMgopDMC.js → badge-RZTsODn-.js} +1 -1
  21. package/src/web/dist/assets/{card-kh1_vqEo.js → card-DhuLMeO9.js} +1 -1
  22. package/src/web/dist/assets/{charts-core-BTTtAoo-.js → charts-core-DlIzYcw_.js} +1 -1
  23. package/src/web/dist/assets/{charts-engine-CFhx8nba.js → charts-engine-C14rMTiz.js} +1 -1
  24. package/src/web/dist/assets/{charts-react-BQP6-BFp.js → charts-react-Bz6GVFr3.js} +1 -1
  25. package/src/web/dist/assets/{disclosure-Dpus5Sms.js → disclosure-CJdf1-ap.js} +1 -1
  26. package/src/web/dist/assets/{gateway-T6-6vX59.js → gateway-B_xLF-Rk.js} +1 -1
  27. package/src/web/dist/assets/{global-D5dyWHqO.js → global-CJOj9WGx.js} +1 -1
  28. package/src/web/dist/assets/global-CWlBZlIY.css +1 -0
  29. package/src/web/dist/assets/{i18n-PeX9kBVO.js → i18n-Dp-o1LhZ.js} +1 -1
  30. package/src/web/dist/assets/{label-Dg8bOG83.js → label-Da-JMxO2.js} +1 -1
  31. package/src/web/dist/assets/{landing-CQeQu2bM.js → landing-MsSWlQKc.js} +1 -1
  32. package/src/web/dist/assets/{metric-card-DMOLvKiC.js → metric-card-B_6litu2.js} +1 -1
  33. package/src/web/dist/assets/package-DHb277_G.js +1 -0
  34. package/src/web/dist/assets/{popover-BPqySDlA.js → popover-JpUYyIhi.js} +1 -1
  35. package/src/web/dist/assets/{query-DZF7K6hv.js → query-DVc6ZTRQ.js} +1 -1
  36. package/src/web/dist/assets/{radix-Bux_1C5J.js → radix-B9EIjzyN.js} +1 -1
  37. package/src/web/dist/assets/{router-BoBrmro7.js → router-CUBM_FND.js} +1 -1
  38. package/src/web/dist/assets/{segmented-control-C1wXb26c.js → segmented-control-D80bc13p.js} +1 -1
  39. package/src/web/dist/assets/{select-BMTHg2Ox.js → select-BTwqvh0l.js} +1 -1
  40. package/src/web/dist/assets/{shared-lc9s0nIr.js → shared-BIsbTzWd.js} +1 -1
  41. package/src/web/dist/assets/{switch-BjJJ5nhB.js → switch-CeKtgMDT.js} +1 -1
  42. package/src/web/dist/assets/{table-Cmf9Rq18.js → table-rPjqxS-f.js} +1 -1
  43. package/src/web/dist/assets/{tabs-kDNBpHZ8.js → tabs-DYNHHISl.js} +1 -1
  44. package/src/web/dist/assets/{useAppMutation-aXncU1Ie.js → useAppMutation-Ds2SX3kE.js} +1 -1
  45. package/src/web/dist/assets/{useEventStream-BYg6oKvQ.js → useEventStream-CQTreYBE.js} +1 -1
  46. package/src/web/dist/assets/useProviderForm-CtZEenP9.js +1 -0
  47. package/src/web/dist/assets/{utils-C0ba36BP.js → utils-HY2ZFw0f.js} +1 -1
  48. package/src/web/dist/assets/{vendor-CITafuNQ.js → vendor-D2wC0h2o.js} +1 -1
  49. package/src/web/dist/index.html +8 -8
  50. package/src/web/dist/landing.html +5 -5
  51. package/src/web/dist/assets/ProvidersWorkbench-CMXcjnjA.js +0 -1
  52. package/src/web/dist/assets/global-CjRN4Kqi.css +0 -1
  53. package/src/web/dist/assets/package-B6sWB4v8.js +0 -1
  54. package/src/web/dist/assets/useProviderForm-BRhWbili.js +0 -1
@@ -1 +0,0 @@
1
- *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Archivo,Noto Sans SC,PingFang SC,ui-sans-serif,system-ui,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:Archivo,SF Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: #f3f2f2;--foreground: #201e1d;--card: #ffffff;--card-foreground: #201e1d;--popover: #ffffff;--popover-foreground: #201e1d;--primary: #ec3013;--primary-foreground: #ffffff;--secondary: #f8f4f4;--secondary-foreground: #201e1d;--muted: #eae7e7;--muted-foreground: #605d5d;--accent: #f8f4f4;--accent-foreground: #201e1d;--destructive: #dd2b0f;--destructive-foreground: #ffffff;--border: #d7d3d3;--input: #d7d3d3;--ring: #ec3013;--radius: 0px;--success: #444141;--success-bg: #eae7e7;--warning: #ae1800;--warning-bg: #ffe0d9;--error: #dd2b0f;--error-bg: #fff2ef;--info: #605d5d;--info-bg: #eae7e7;--chart-1: #ec3013;--chart-2: #ae1800;--chart-3: #ff9783;--chart-4: #444141;--chart-5: #9b9797;--surface-shadow: none;--surface-shadow-lg: none;--surface-border: #d7d3d3;--ease-surface: cubic-bezier(.22, 1, .36, 1)}.dark,[data-theme=dark]{--background: #201e1d;--foreground: #f8f4f4;--card: #2d2b2b;--card-foreground: #f8f4f4;--popover: #2d2b2b;--popover-foreground: #f8f4f4;--primary: #ff563c;--primary-foreground: #201e1d;--secondary: #363333;--secondary-foreground: #f8f4f4;--muted: #444141;--muted-foreground: #d7d3d3;--accent: #363333;--accent-foreground: #f8f4f4;--destructive: #ff563c;--destructive-foreground: #201e1d;--border: #605d5d;--input: #605d5d;--ring: #ff563c;--success: #d7d3d3;--success-bg: #444141;--warning: #ff9783;--warning-bg: #71261b;--error: #ff563c;--error-bg: #7c1405;--info: #d7d3d3;--info-bg: #444141;--chart-1: #ff563c;--chart-2: #ff9783;--chart-3: #ae1800;--chart-4: #d7d3d3;--chart-5: #9b9797;--surface-shadow: none;--surface-shadow-lg: none;--surface-border: #605d5d}*{--tw-border-opacity: 1;border-color:rgb(from var(--border) r g b / var(--tw-border-opacity, 1))}html,body,#root{height:100%;width:100%;overflow-x:hidden}body{--tw-bg-opacity: 1;background-color:rgb(from var(--background) r g b / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(from var(--foreground) r g b / var(--tw-text-opacity, 1));font-family:Archivo,Noto Sans SC,PingFang SC,system-ui,-apple-system,sans-serif;font-variant-numeric:tabular-nums;font-feature-settings:"rlig" 1,"calt" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-weight:800;letter-spacing:-.015em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-right-1{right:-.25rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-0{left:0}.left-2{left:.5rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1\.5{right:.375rem}.right-3{right:.75rem}.right-4{right:1rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-20{top:5rem}.top-3{top:.75rem}.top-4{top:1rem}.top-6{top:1.5rem}.top-\[18\%\]{top:18%}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.m-0{margin:0}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-1\.5{margin-left:.375rem;margin-right:.375rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-ml-0\.5{margin-left:-.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-3{margin-left:.75rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-9{margin-top:2.25rem}.mt-\[3px\]{margin-top:3px}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-\[220px\]{height:220px}.h-\[280px\]{height:280px}.h-\[30px\]{height:30px}.h-\[320px\]{height:320px}.h-\[36vh\]{height:36vh}.h-\[72px\]{height:72px}.h-\[7px\]{height:7px}.h-\[9px\]{height:9px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-40{max-height:10rem}.max-h-56{max-height:14rem}.max-h-72{max-height:18rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[172px\]{max-height:172px}.max-h-\[400px\]{max-height:400px}.max-h-\[52vh\]{max-height:52vh}.max-h-\[62vh\]{max-height:62vh}.max-h-\[78vh\]{max-height:78vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[min\(28rem\,var\(--radix-popover-content-available-height\)\)\]{max-height:min(28rem,var(--radix-popover-content-available-height))}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-10{min-height:2.5rem}.min-h-\[160px\]{min-height:160px}.min-h-\[180px\]{min-height:180px}.min-h-\[188px\]{min-height:188px}.min-h-\[220px\]{min-height:220px}.min-h-\[240px\]{min-height:240px}.min-h-\[260px\]{min-height:260px}.min-h-\[280px\]{min-height:280px}.min-h-\[320px\]{min-height:320px}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[104px\]{width:104px}.w-\[130px\]{width:130px}.w-\[132px\]{width:132px}.w-\[168px\]{width:168px}.w-\[1px\]{width:1px}.w-\[220px\]{width:220px}.w-\[236px\]{width:236px}.w-\[7px\]{width:7px}.w-\[80px\]{width:80px}.w-\[9px\]{width:9px}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-\[min\(96vw\,1200px\)\]{width:min(96vw,1200px)}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-14{min-width:3.5rem}.min-w-24{min-width:6rem}.min-w-5{min-width:1.25rem}.min-w-\[1180px\]{min-width:1180px}.min-w-\[180px\]{min-width:180px}.min-w-\[2rem\]{min-width:2rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[980px\]{min-width:980px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-\[100px\]{max-width:100px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[120px\]{max-width:120px}.max-w-\[1280px\]{max-width:1280px}.max-w-\[180px\]{max-width:180px}.max-w-\[220px\]{max-width:220px}.max-w-\[90px\]{max-width:90px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-\[1\.15\]{flex:1.15}.flex-shrink-0,.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:left}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-0{--tw-scale-x: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-100{--tw-scale-x: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .2s ease-out}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.82)}}.animate-live-pulse{animation:live-pulse 2.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[14px_1fr\]{grid-template-columns:14px 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-px{gap:1px}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(from var(--border) r g b / var(--tw-divide-opacity, 1))}.divide-border\/50>:not([hidden])~:not([hidden]){border-color:rgb(from var(--border) r g b / .5)}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl,.rounded-3xl{border-radius:var(--radius)}.rounded-\[3px\]{border-radius:3px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg,.rounded-md,.rounded-sm,.rounded-xl{border-radius:var(--radius)}.rounded-b-xl{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[color\:var\(--surface-border\)\]{border-color:var(--surface-border)}.border-border{--tw-border-opacity: 1;border-color:rgb(from var(--border) r g b / var(--tw-border-opacity, 1))}.border-border\/30{border-color:rgb(from var(--border) r g b / .3)}.border-border\/40{border-color:rgb(from var(--border) r g b / .4)}.border-border\/45{border-color:rgb(from var(--border) r g b / .45)}.border-border\/50{border-color:rgb(from var(--border) r g b / .5)}.border-border\/55{border-color:rgb(from var(--border) r g b / .55)}.border-border\/60{border-color:rgb(from var(--border) r g b / .6)}.border-border\/70{border-color:rgb(from var(--border) r g b / .7)}.border-destructive{--tw-border-opacity: 1;border-color:rgb(from var(--destructive) r g b / var(--tw-border-opacity, 1))}.border-destructive\/15{border-color:rgb(from var(--destructive) r g b / .15)}.border-destructive\/20{border-color:rgb(from var(--destructive) r g b / .2)}.border-destructive\/25{border-color:rgb(from var(--destructive) r g b / .25)}.border-destructive\/30{border-color:rgb(from var(--destructive) r g b / .3)}.border-destructive\/40{border-color:rgb(from var(--destructive) r g b / .4)}.border-destructive\/50{border-color:rgb(from var(--destructive) r g b / .5)}.border-error\/30{border-color:rgb(from var(--error) r g b / .3)}.border-input{--tw-border-opacity: 1;border-color:rgb(from var(--input) r g b / var(--tw-border-opacity, 1))}.border-primary{--tw-border-opacity: 1;border-color:rgb(from var(--primary) r g b / var(--tw-border-opacity, 1))}.border-primary\/10{border-color:rgb(from var(--primary) r g b / .1)}.border-primary\/20{border-color:rgb(from var(--primary) r g b / .2)}.border-primary\/30{border-color:rgb(from var(--primary) r g b / .3)}.border-primary\/40{border-color:rgb(from var(--primary) r g b / .4)}.border-success{--tw-border-opacity: 1;border-color:rgb(from var(--success) r g b / var(--tw-border-opacity, 1))}.border-success\/20{border-color:rgb(from var(--success) r g b / .2)}.border-success\/30{border-color:rgb(from var(--success) r g b / .3)}.border-transparent{border-color:transparent}.border-warning\/30{border-color:rgb(from var(--warning) r g b / .3)}.border-l-error{--tw-border-opacity: 1;border-left-color:rgb(from var(--error) r g b / var(--tw-border-opacity, 1))}.border-l-success{--tw-border-opacity: 1;border-left-color:rgb(from var(--success) r g b / var(--tw-border-opacity, 1))}.border-l-transparent{border-left-color:transparent}.border-l-warning{--tw-border-opacity: 1;border-left-color:rgb(from var(--warning) r g b / var(--tw-border-opacity, 1))}.border-t-transparent{border-top-color:transparent}.bg-accent{--tw-bg-opacity: 1;background-color:rgb(from var(--accent) r g b / var(--tw-bg-opacity, 1))}.bg-background{--tw-bg-opacity: 1;background-color:rgb(from var(--background) r g b / var(--tw-bg-opacity, 1))}.bg-background\/95{background-color:rgb(from var(--background) r g b / .95)}.bg-border{--tw-bg-opacity: 1;background-color:rgb(from var(--border) r g b / var(--tw-bg-opacity, 1))}.bg-border\/55{background-color:rgb(from var(--border) r g b / .55)}.bg-border\/60{background-color:rgb(from var(--border) r g b / .6)}.bg-card{--tw-bg-opacity: 1;background-color:rgb(from var(--card) r g b / var(--tw-bg-opacity, 1))}.bg-destructive{--tw-bg-opacity: 1;background-color:rgb(from var(--destructive) r g b / var(--tw-bg-opacity, 1))}.bg-destructive\/10{background-color:rgb(from var(--destructive) r g b / .1)}.bg-destructive\/5{background-color:rgb(from var(--destructive) r g b / .05)}.bg-error-bg{--tw-bg-opacity: 1;background-color:rgb(from var(--error-bg) r g b / var(--tw-bg-opacity, 1))}.bg-foreground{--tw-bg-opacity: 1;background-color:rgb(from var(--foreground) r g b / var(--tw-bg-opacity, 1))}.bg-info-bg{--tw-bg-opacity: 1;background-color:rgb(from var(--info-bg) r g b / var(--tw-bg-opacity, 1))}.bg-muted{--tw-bg-opacity: 1;background-color:rgb(from var(--muted) r g b / var(--tw-bg-opacity, 1))}.bg-muted-foreground{--tw-bg-opacity: 1;background-color:rgb(from var(--muted-foreground) r g b / var(--tw-bg-opacity, 1))}.bg-muted-foreground\/40{background-color:rgb(from var(--muted-foreground) r g b / .4)}.bg-muted\/30{background-color:rgb(from var(--muted) r g b / .3)}.bg-muted\/50{background-color:rgb(from var(--muted) r g b / .5)}.bg-popover{--tw-bg-opacity: 1;background-color:rgb(from var(--popover) r g b / var(--tw-bg-opacity, 1))}.bg-primary{--tw-bg-opacity: 1;background-color:rgb(from var(--primary) r g b / var(--tw-bg-opacity, 1))}.bg-primary\/10{background-color:rgb(from var(--primary) r g b / .1)}.bg-primary\/15{background-color:rgb(from var(--primary) r g b / .15)}.bg-primary\/40{background-color:rgb(from var(--primary) r g b / .4)}.bg-primary\/5{background-color:rgb(from var(--primary) r g b / .05)}.bg-primary\/\[0\.03\]{background-color:rgb(from var(--primary) r g b / .03)}.bg-secondary{--tw-bg-opacity: 1;background-color:rgb(from var(--secondary) r g b / var(--tw-bg-opacity, 1))}.bg-secondary\/30{background-color:rgb(from var(--secondary) r g b / .3)}.bg-secondary\/40{background-color:rgb(from var(--secondary) r g b / .4)}.bg-secondary\/45{background-color:rgb(from var(--secondary) r g b / .45)}.bg-secondary\/50{background-color:rgb(from var(--secondary) r g b / .5)}.bg-secondary\/55{background-color:rgb(from var(--secondary) r g b / .55)}.bg-secondary\/60{background-color:rgb(from var(--secondary) r g b / .6)}.bg-success{--tw-bg-opacity: 1;background-color:rgb(from var(--success) r g b / var(--tw-bg-opacity, 1))}.bg-success-bg{--tw-bg-opacity: 1;background-color:rgb(from var(--success-bg) r g b / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-warning{--tw-bg-opacity: 1;background-color:rgb(from var(--warning) r g b / var(--tw-bg-opacity, 1))}.bg-warning-bg{--tw-bg-opacity: 1;background-color:rgb(from var(--warning-bg) r g b / var(--tw-bg-opacity, 1))}.fill-current{fill:currentColor}.fill-primary\/5{fill:rgb(from var(--primary) r g b / .05)}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-px{padding-top:1px;padding-bottom:1px}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-20{padding-bottom:5rem}.pb-24{padding-bottom:6rem}.pb-3\.5{padding-bottom:.875rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pb-\[env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-14{padding-right:3.5rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-0\.5{padding-top:.125rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-20{padding-top:5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-mono{font-family:Archivo,SF Mono,ui-monospace,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.95em\]{font-size:.95em}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[2\.4rem\]{font-size:2.4rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-\[1\.05\]{line-height:1.05}.leading-\[1\.55\]{line-height:1.55}.leading-\[1\.65\]{line-height:1.65}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[-0\.035em\]{letter-spacing:-.035em}.tracking-\[0\.06em\]{letter-spacing:.06em}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.16em\]{letter-spacing:.16em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-\[0\.34em\]{letter-spacing:.34em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{--tw-text-opacity: 1;color:rgb(from var(--accent-foreground) r g b / var(--tw-text-opacity, 1))}.text-background{--tw-text-opacity: 1;color:rgb(from var(--background) r g b / var(--tw-text-opacity, 1))}.text-background\/60{color:rgb(from var(--background) r g b / .6)}.text-background\/80{color:rgb(from var(--background) r g b / .8)}.text-card-foreground{--tw-text-opacity: 1;color:rgb(from var(--card-foreground) r g b / var(--tw-text-opacity, 1))}.text-destructive{--tw-text-opacity: 1;color:rgb(from var(--destructive) r g b / var(--tw-text-opacity, 1))}.text-destructive-foreground{--tw-text-opacity: 1;color:rgb(from var(--destructive-foreground) r g b / var(--tw-text-opacity, 1))}.text-error{--tw-text-opacity: 1;color:rgb(from var(--error) r g b / var(--tw-text-opacity, 1))}.text-foreground{--tw-text-opacity: 1;color:rgb(from var(--foreground) r g b / var(--tw-text-opacity, 1))}.text-foreground\/50{color:rgb(from var(--foreground) r g b / .5)}.text-foreground\/90{color:rgb(from var(--foreground) r g b / .9)}.text-info{--tw-text-opacity: 1;color:rgb(from var(--info) r g b / var(--tw-text-opacity, 1))}.text-muted-foreground{--tw-text-opacity: 1;color:rgb(from var(--muted-foreground) r g b / var(--tw-text-opacity, 1))}.text-muted-foreground\/40{color:rgb(from var(--muted-foreground) r g b / .4)}.text-muted-foreground\/50{color:rgb(from var(--muted-foreground) r g b / .5)}.text-muted-foreground\/60{color:rgb(from var(--muted-foreground) r g b / .6)}.text-muted-foreground\/70{color:rgb(from var(--muted-foreground) r g b / .7)}.text-popover-foreground{--tw-text-opacity: 1;color:rgb(from var(--popover-foreground) r g b / var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity: 1;color:rgb(from var(--primary) r g b / var(--tw-text-opacity, 1))}.text-primary-foreground{--tw-text-opacity: 1;color:rgb(from var(--primary-foreground) r g b / var(--tw-text-opacity, 1))}.text-primary\/60{color:rgb(from var(--primary) r g b / .6)}.text-primary\/75{color:rgb(from var(--primary) r g b / .75)}.text-primary\/80{color:rgb(from var(--primary) r g b / .8)}.text-secondary-foreground{--tw-text-opacity: 1;color:rgb(from var(--secondary-foreground) r g b / var(--tw-text-opacity, 1))}.text-success{--tw-text-opacity: 1;color:rgb(from var(--success) r g b / var(--tw-text-opacity, 1))}.text-warning{--tw-text-opacity: 1;color:rgb(from var(--warning) r g b / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-primary{accent-color:rgb(from var(--primary) r g b / 1)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[var\(--surface-shadow\)\]{--tw-shadow-color: var(--surface-shadow);--tw-shadow: var(--tw-shadow-colored)}.shadow-\[var\(--surface-shadow-lg\)\]{--tw-shadow-color: var(--surface-shadow-lg);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-border{--tw-ring-opacity: 1;--tw-ring-color: rgb(from var(--border) r g b / var(--tw-ring-opacity, 1))}.ring-destructive\/20{--tw-ring-color: rgb(from var(--destructive) r g b / .2)}.ring-destructive\/30{--tw-ring-color: rgb(from var(--destructive) r g b / .3)}.ring-primary\/20{--tw-ring-color: rgb(from var(--primary) r g b / .2)}.ring-ring{--tw-ring-opacity: 1;--tw-ring-color: rgb(from var(--ring) r g b / var(--tw-ring-opacity, 1))}.ring-warning\/30{--tw-ring-color: rgb(from var(--warning) r g b / .3)}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-background{--tw-ring-offset-color: rgb(from var(--background) r g b / 1)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-160{transition-duration:.16s}.duration-200{transition-duration:.2s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-surface{transition-timing-function:cubic-bezier(.22,1,.36,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in,.fade-in-0{--tw-enter-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.slide-in-from-left{--tw-enter-translate-x: -100%}.slide-in-from-top-2{--tw-enter-translate-y: -.5rem}.duration-150{animation-duration:.15s}.duration-160{animation-duration:.16s}.duration-200{animation-duration:.2s}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.ease-surface{animation-timing-function:cubic-bezier(.22,1,.36,1)}.running{animation-play-state:running}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-thumb{background:var(--border);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground);background-clip:content-box}*:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(from var(--primary) r g b / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px;--tw-ring-offset-color: rgb(from var(--background) r g b / 1)}::-moz-selection{background:color-mix(in srgb,var(--primary) 30%,transparent)}::selection{background:color-mix(in srgb,var(--primary) 30%,transparent)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .2s ease-out}.motion-surface{transition-property:transform,box-shadow,border-color,background-color,color;transition-duration:.16s;transition-timing-function:var(--ease-surface, cubic-bezier(.22, 1, .36, 1))}.metric-number{font-family:Archivo,SF Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.02em}@media (hover: none) and (pointer: coarse){button,a,[role=button]{min-height:44px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@keyframes toastIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toastOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.animate-toast-in{animation:toastIn .3s ease-out}.animate-toast-out{animation:toastOut .2s ease-in forwards}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{--tw-text-opacity: 1;color:rgb(from var(--foreground) r g b / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground::-moz-placeholder{--tw-text-opacity: 1;color:rgb(from var(--muted-foreground) r g b / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground::placeholder{--tw-text-opacity: 1;color:rgb(from var(--muted-foreground) r g b / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground\/50::-moz-placeholder{color:rgb(from var(--muted-foreground) r g b / .5)}.placeholder\:text-muted-foreground\/50::placeholder{color:rgb(from var(--muted-foreground) r g b / .5)}.before\:h-1\.5:before{content:var(--tw-content);height:.375rem}.before\:w-1\.5:before{content:var(--tw-content);width:.375rem}@keyframes live-pulse{0%,to{content:var(--tw-content);opacity:1;transform:scale(1)}50%{content:var(--tw-content);opacity:.35;transform:scale(.82)}}.before\:animate-live-pulse:before{content:var(--tw-content);animation:live-pulse 2.4s ease-in-out infinite}.before\:rounded-full:before{content:var(--tw-content);border-radius:9999px}.before\:bg-destructive:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(from var(--destructive) r g b / var(--tw-bg-opacity, 1))}.before\:bg-success:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(from var(--success) r g b / var(--tw-bg-opacity, 1))}.before\:bg-warning:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(from var(--warning) r g b / var(--tw-bg-opacity, 1))}.first\:pt-0:first-child{padding-top:0}.last\:pb-0:last-child{padding-bottom:0}.focus-within\:bg-accent:focus-within{--tw-bg-opacity: 1;background-color:rgb(from var(--accent) r g b / var(--tw-bg-opacity, 1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-border\/60:hover{border-color:rgb(from var(--border) r g b / .6)}.hover\:border-primary:hover{--tw-border-opacity: 1;border-color:rgb(from var(--primary) r g b / var(--tw-border-opacity, 1))}.hover\:border-primary\/20:hover{border-color:rgb(from var(--primary) r g b / .2)}.hover\:border-primary\/40:hover{border-color:rgb(from var(--primary) r g b / .4)}.hover\:bg-accent:hover{--tw-bg-opacity: 1;background-color:rgb(from var(--accent) r g b / var(--tw-bg-opacity, 1))}.hover\:bg-accent\/50:hover{background-color:rgb(from var(--accent) r g b / .5)}.hover\:bg-background:hover{--tw-bg-opacity: 1;background-color:rgb(from var(--background) r g b / var(--tw-bg-opacity, 1))}.hover\:bg-destructive\/10:hover{background-color:rgb(from var(--destructive) r g b / .1)}.hover\:bg-destructive\/90:hover{background-color:rgb(from var(--destructive) r g b / .9)}.hover\:bg-muted:hover{--tw-bg-opacity: 1;background-color:rgb(from var(--muted) r g b / var(--tw-bg-opacity, 1))}.hover\:bg-muted\/30:hover{background-color:rgb(from var(--muted) r g b / .3)}.hover\:bg-muted\/40:hover{background-color:rgb(from var(--muted) r g b / .4)}.hover\:bg-muted\/50:hover{background-color:rgb(from var(--muted) r g b / .5)}.hover\:bg-primary\/5:hover{background-color:rgb(from var(--primary) r g b / .05)}.hover\:bg-primary\/90:hover{background-color:rgb(from var(--primary) r g b / .9)}.hover\:bg-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(from var(--secondary) r g b / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/45:hover{background-color:rgb(from var(--secondary) r g b / .45)}.hover\:bg-secondary\/50:hover{background-color:rgb(from var(--secondary) r g b / .5)}.hover\:bg-secondary\/80:hover{background-color:rgb(from var(--secondary) r g b / .8)}.hover\:bg-transparent:hover{background-color:transparent}.hover\:text-destructive:hover{--tw-text-opacity: 1;color:rgb(from var(--destructive) r g b / var(--tw-text-opacity, 1))}.hover\:text-foreground:hover{--tw-text-opacity: 1;color:rgb(from var(--foreground) r g b / var(--tw-text-opacity, 1))}.hover\:text-primary:hover{--tw-text-opacity: 1;color:rgb(from var(--primary) r g b / var(--tw-text-opacity, 1))}.hover\:text-primary\/80:hover{color:rgb(from var(--primary) r g b / .8)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[var\(--surface-shadow-lg\)\]:hover{--tw-shadow-color: var(--surface-shadow-lg);--tw-shadow: var(--tw-shadow-colored)}.focus\:not-sr-only:focus{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.focus\:absolute:focus{position:absolute}.focus\:z-50:focus{z-index:50}.focus\:m-4:focus{margin:1rem}.focus\:rounded-md:focus{border-radius:var(--radius)}.focus\:bg-accent:focus{--tw-bg-opacity: 1;background-color:rgb(from var(--accent) r g b / var(--tw-bg-opacity, 1))}.focus\:bg-accent\/80:focus{background-color:rgb(from var(--accent) r g b / .8)}.focus\:bg-primary:focus{--tw-bg-opacity: 1;background-color:rgb(from var(--primary) r g b / var(--tw-bg-opacity, 1))}.focus\:px-4:focus{padding-left:1rem;padding-right:1rem}.focus\:py-2:focus{padding-top:.5rem;padding-bottom:.5rem}.focus\:text-accent-foreground:focus{--tw-text-opacity: 1;color:rgb(from var(--accent-foreground) r g b / var(--tw-text-opacity, 1))}.focus\:text-primary-foreground:focus{--tw-text-opacity: 1;color:rgb(from var(--primary-foreground) r g b / var(--tw-text-opacity, 1))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(from var(--ring) r g b / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(from var(--primary) r g b / var(--tw-ring-opacity, 1))}.focus-visible\:ring-ring:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(from var(--ring) r g b / var(--tw-ring-opacity, 1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: rgb(from var(--background) r g b / 1)}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.group[open] .group-open\:rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[open] .group-open\:bg-primary\/10{background-color:rgb(from var(--primary) r g b / .1)}.group[open] .group-open\:text-primary{--tw-text-opacity: 1;color:rgb(from var(--primary) r g b / var(--tw-text-opacity, 1))}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-destructive\/20{border-color:rgb(from var(--destructive) r g b / .2)}.group.destructive .group-\[\.destructive\]\:text-destructive{--tw-text-opacity: 1;color:rgb(from var(--destructive) r g b / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:rgb(from var(--destructive) r g b / .3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive\/10:hover{background-color:rgb(from var(--destructive) r g b / .1)}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive:hover{--tw-text-opacity: 1;color:rgb(from var(--destructive) r g b / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(from var(--destructive) r g b / var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-destructive:focus{--tw-ring-offset-color: rgb(from var(--destructive) r g b / 1)}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled],.data-\[state\=closed\]\:pointer-events-none[data-state=closed]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=active\]\:border-primary[data-state=active]{--tw-border-opacity: 1;border-color:rgb(from var(--primary) r g b / var(--tw-border-opacity, 1))}.data-\[selected\=true\]\:bg-secondary[data-selected=true]{--tw-bg-opacity: 1;background-color:rgb(from var(--secondary) r g b / var(--tw-bg-opacity, 1))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{--tw-bg-opacity: 1;background-color:rgb(from var(--primary) r g b / var(--tw-bg-opacity, 1))}.data-\[state\=open\]\:bg-accent\/80[data-state=open]{background-color:rgb(from var(--accent) r g b / .8)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{--tw-bg-opacity: 1;background-color:rgb(from var(--muted) r g b / var(--tw-bg-opacity, 1))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{--tw-bg-opacity: 1;background-color:rgb(from var(--input) r g b / var(--tw-bg-opacity, 1))}.data-\[state\=active\]\:font-semibold[data-state=active]{font-weight:600}.data-\[selected\=true\]\:text-foreground[data-selected=true],.data-\[state\=active\]\:text-foreground[data-state=active]{--tw-text-opacity: 1;color:rgb(from var(--foreground) r g b / var(--tw-text-opacity, 1))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top-\[12\%\][data-state=closed]{--tw-exit-translate-y: -12%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-top-\[12\%\][data-state=open]{--tw-enter-translate-y: -12%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=inactive\]\:hover\:text-foreground:hover[data-state=inactive]{--tw-text-opacity: 1;color:rgb(from var(--foreground) r g b / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:mt-2\.5{margin-top:.625rem}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:h-8{height:2rem}.sm\:w-56{width:14rem}.sm\:w-64{width:16rem}.sm\:w-8{width:2rem}.sm\:w-9{width:2.25rem}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:self-auto{align-self:auto}.sm\:justify-self-end{justify-self:end}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:p-3\.5{padding:.875rem}.sm\:px-12{padding-left:3rem;padding-right:3rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:text-left{text-align:left}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-\[13px\]{font-size:13px}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-xs{font-size:.75rem;line-height:1rem}.sm\:leading-5{line-height:1.25rem}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:block{display:block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:w-56{width:14rem}.md\:w-\[200px\]{width:200px}.md\:w-auto{width:auto}.md\:max-w-\[420px\]{max-width:420px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:items-start{align-items:flex-start}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:px-0{padding-left:0;padding-right:0}.md\:pb-4{padding-bottom:1rem}}@media (min-width: 1024px){.lg\:mx-0{margin-left:0;margin-right:0}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-full{height:100%}.lg\:w-auto{width:auto}.lg\:max-w-3xl{max-width:48rem}.lg\:shrink{flex-shrink:1}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1\.2fr_auto\]{grid-template-columns:1.2fr auto}.lg\:grid-cols-\[1fr_auto_1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr auto 1fr}.lg\:grid-cols-\[200px_minmax\(0\,1fr\)_288px\]{grid-template-columns:200px minmax(0,1fr) 288px}.lg\:grid-cols-\[280px_minmax\(0\,1fr\)\]{grid-template-columns:280px minmax(0,1fr)}.lg\:grid-cols-\[minmax\(0\,1\.05fr\)_minmax\(0\,0\.95fr\)\]{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.lg\:grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,0\.85fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1\.05fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(400px\,0\.8fr\)\]{grid-template-columns:minmax(0,1fr) minmax(400px,.8fr)}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:flex-wrap{flex-wrap:wrap}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:items-stretch{align-items:stretch}.lg\:justify-end{justify-content:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-1{gap:.25rem}.lg\:overflow-visible{overflow:visible}.lg\:border-b-0{border-bottom-width:0px}.lg\:border-r{border-right-width:1px}.lg\:p-10{padding:2.5rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:pb-0{padding-bottom:0}.lg\:pt-28{padding-top:7rem}.lg\:text-right{text-align:right}}@media (min-width: 1280px){.xl\:sticky{position:sticky}.xl\:top-4{top:1rem}.xl\:block{display:block}.xl\:hidden{display:none}.xl\:w-auto{width:auto}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:grid-cols-\[200px_1fr\]{grid-template-columns:200px 1fr}.xl\:grid-cols-\[208px_minmax\(0\,1fr\)\]{grid-template-columns:208px minmax(0,1fr)}.xl\:grid-cols-\[minmax\(0\,0\.9fr\)_minmax\(0\,1\.1fr\)\]{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.xl\:grid-cols-\[minmax\(0\,1\.15fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.xl\:grid-cols-\[minmax\(0\,1\.35fr\)_minmax\(320px\,0\.85fr\)\]{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr)}.xl\:grid-cols-\[minmax\(0\,1fr\)_280px\]{grid-template-columns:minmax(0,1fr) 280px}.xl\:flex-row{flex-direction:row}.xl\:flex-nowrap{flex-wrap:nowrap}.xl\:items-start{align-items:flex-start}.xl\:items-center{align-items:center}}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-\[10px\] [cmdk-group-heading]{font-size:10px}.\[\&_\[cmdk-group-heading\]\]\:font-semibold [cmdk-group-heading]{font-weight:600}.\[\&_\[cmdk-group-heading\]\]\:uppercase [cmdk-group-heading]{text-transform:uppercase}.\[\&_\[cmdk-group-heading\]\]\:tracking-wider [cmdk-group-heading]{letter-spacing:.05em}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{--tw-text-opacity: 1;color:rgb(from var(--muted-foreground) r g b / var(--tw-text-opacity, 1))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-1\.5 [cmdk-group]{padding-left:.375rem;padding-right:.375rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-4 [cmdk-input-wrapper] svg{height:1rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-4 [cmdk-input-wrapper] svg{width:1rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-2 [cmdk-item]{padding-top:.5rem;padding-bottom:.5rem}.\[\&_\[cmdk-item\]_svg\]\:h-4 [cmdk-item] svg{height:1rem}.\[\&_\[cmdk-item\]_svg\]\:w-4 [cmdk-item] svg{width:1rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}.\[\&_tr\]\:border-border tr{--tw-border-opacity: 1;border-color:rgb(from var(--border) r g b / var(--tw-border-opacity, 1))}
@@ -1 +0,0 @@
1
- const o="0.10.4",s={version:o};export{s as p};
@@ -1 +0,0 @@
1
- import{r as S,j as s,$ as oe}from"./vendor-CITafuNQ.js";import{u as ce}from"./query-DZF7K6hv.js";import{a as ue,c as me,q as J,e as pe,i as P,d as I,B as E}from"./app-WMvqYU5W.js";import{g as he}from"./gateway-T6-6vX59.js";import{u as O}from"./i18n-PeX9kBVO.js";import{c as H}from"./global-D5dyWHqO.js";import{D as W}from"./disclosure-Dpus5Sms.js";import{L as M,I as C}from"./label-Dg8bOG83.js";import{S as xe,a as fe,b as be,c as ge,d as B}from"./select-BMTHg2Ox.js";import{S as F}from"./switch-BjJJ5nhB.js";import{B as ve}from"./badge-DMgopDMC.js";const Ge=["claude-sonnet-4-5-20250929","claude-sonnet-4-5-20250929-thinking","claude-sonnet-4-20250514","claude-opus-4-1-20250805","claude-opus-4-1-20250805-thinking","claude-haiku-4-5-20251001","claude-haiku-4-5-20251001-thinking","claude-3-5-haiku-20241022"],Qe=["gpt-4o-mini","gpt-4o","o4-mini","o4-large","gpt-5-codex"];function ye(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Math.random().toString(36).slice(2,10)}function T(e,r){var t;return(t=e==null?void 0:e.customEndpoints)!=null&&t.length?e.customEndpoints:r}function z(e){return e?Object.entries(e).map(([r,t])=>({id:ye(),source:r,target:t})):[]}function Je(e,r){var a,n,h;if(!e)return{};const t={},i=e.endpointRouting??{};t.anthropic=z(((a=i.anthropic)==null?void 0:a.modelRoutes)??e.modelRoutes??{}),t.openai=z(((n=i.openai)==null?void 0:n.modelRoutes)??{});for(const u of T(e,r))(h=u.routing)!=null&&h.modelRoutes?t[u.id]=z(u.routing.modelRoutes):t[u.id]=[];return t}function je(e,r,t){var n,h,u;const i=T(e,r).find(y=>y.id===t);if(i)return((n=i.routing)==null?void 0:n.modelRoutes)??{};const a=e.endpointRouting??{};return t==="anthropic"?((h=a.anthropic)==null?void 0:h.modelRoutes)??e.modelRoutes??{}:t==="openai"?((u=a.openai)==null?void 0:u.modelRoutes)??{}:{}}function q(e,r,t){var a,n,h;if(t==="anthropic"||t==="openai")return((n=(a=e.endpointRouting)==null?void 0:a[t])==null?void 0:n.defaults)??e.defaults;const i=T(e,r).find(u=>u.id===t);return((h=i==null?void 0:i.routing)==null?void 0:h.defaults)??{completion:null,reasoning:null,background:null,longContextThreshold:e.defaults.longContextThreshold}}function Xe(e,r){if(!e)return{};const t={anthropic:q(e,r,"anthropic"),openai:q(e,r,"openai")};for(const i of T(e,r))t[i.id]=q(e,r,i.id);return t}function Ne(e){const r={};for(const t of e){const i=t.source.trim(),a=t.target.trim();i&&a&&(r[i]=a)}return r}function Ye(e,r){return JSON.stringify(Ne(e))!==JSON.stringify(r)}function We(e,r,t){var a,n,h;if(!r)return;if(e==="anthropic"||e==="openai")return(n=(a=r.endpointRouting)==null?void 0:a[e])==null?void 0:n.compatibility;const i=T(r,t).find(u=>u.id===e);return(h=i==null?void 0:i.routing)==null?void 0:h.compatibility}function Ze(e,r){var i,a;const t={anthropic:((i=e.routingPresets)==null?void 0:i.anthropic)??[],openai:((a=e.routingPresets)==null?void 0:a.openai)??[]};for(const n of T(e,r))t[n.id]=n.routingPresets??[];return t}function we(e,r){const t=[{key:"providers",label:e("modelManagement.tabs.providers"),description:e("modelManagement.tabs.providersDesc"),isSystem:!0,canDelete:!1},{key:"anthropic",label:e("modelManagement.tabs.anthropic"),description:e("modelManagement.tabs.anthropicDesc"),isSystem:!0,canDelete:!1,protocols:["anthropic"]},{key:"openai",label:e("modelManagement.tabs.openai"),description:e("modelManagement.tabs.openaiDesc"),isSystem:!0,canDelete:!1,protocols:["openai-auto","openai-chat","openai-responses"]}],i=r.map(a=>{let n=e("modelManagement.tabs.customEndpoint"),h=[];if(a.paths&&a.paths.length>0)n=`${e("modelManagement.tabs.customEndpoint")}: ${a.paths.map(u=>`${u.path} (${u.protocol})`).join(", ")}`,h=[...new Set(a.paths.map(u=>u.protocol))];else if(a.path){const u=a.protocol||"anthropic";n=`${e("modelManagement.tabs.customEndpoint")}: ${a.path} (${u})`,h=[u]}return{key:a.id,label:a.label||a.id,description:n,isSystem:!1,canDelete:a.deletable!==!1,protocols:h}});return[...t,...i]}function es(e){return e.label&&e.label.trim().length>0?`${e.label} (${e.id})`:e.id}function Se(e,r){if(!e)return!1;const[t]=e.split(":");return t===r||e===r}function Me(e,r,t){if(!e)return[];const i=["anthropic","openai",...T(e,r).map(n=>n.id)],a=[];for(const n of i){const h=je(e,r,n);for(const[u,y]of Object.entries(h))Se(y,t)&&a.push({endpoint:n,source:u,target:y})}return a}function ss(e,r,t){return Me(e,r,t).length}function rs(){var N;const{t:e}=O(),{pushToast:r}=ue(),t=me(J.config.full(),he.configRequest()),i=ce({queryKey:J.customEndpoints.all(),queryFn:pe.list,refetchInterval:1e4}),a=S.useMemo(()=>{var g;return((g=i.data)==null?void 0:g.endpoints)??[]},[(N=i.data)==null?void 0:N.endpoints]),n=S.useMemo(()=>we(e,a),[a,e]),[h,u]=S.useState(null);return S.useEffect(()=>{t.data&&u(t.data)},[t.data]),S.useEffect(()=>{!t.isError||!t.error||r({title:e("providers.toast.loadFailure",{message:t.error.message}),variant:"error"})},[t.error,t.isError,r,e]),{t:e,pushToast:r,config:h,setConfig:u,configQuery:t,customEndpoints:a,customEndpointsQuery:i,tabs:n,ensureConfig:()=>h?!0:(r({title:e("settings.toast.missingConfig"),variant:"error"}),t.refetch(),!1)}}const as={savePreset(e,r){return P(I.post(`/api/routing-presets/${e}`,{name:r}))},applyPreset(e,r){return P(I.post(`/api/routing-presets/${e}/apply`,{name:r}))},deletePreset(e,r){return P(I.delete(`/api/routing-presets/${e}/${encodeURIComponent(r)}`))},testProvider(e,r){return P(I.post(`/api/providers/${e}/test`,r??{}))},probeModels(e,r){return P(I.post(`/api/providers/${e}/models/probe`,r?{provider:r}:{}))}},ke={complete:"border-primary bg-primary text-primary-foreground",current:"border-primary bg-card text-primary ring-2 ring-primary/20",error:"border-destructive bg-card text-destructive ring-2 ring-destructive/20",upcoming:"border-border bg-card text-muted-foreground"},Ue={complete:"text-foreground",current:"text-foreground font-medium",error:"text-destructive font-medium",upcoming:"text-muted-foreground"};function ts({steps:e,current:r,onSelect:t,className:i}){return s.jsx("nav",{"aria-label":"steps",className:H("flex items-start",i),children:e.map((a,n)=>{const h=t&&(a.status==="complete"||a.status==="current"),u=n===e.length-1,y=a.status==="complete"?"bg-primary/40":"bg-border",N=s.jsx("span",{className:H("motion-surface flex h-7 w-7 shrink-0 items-center justify-center rounded-lg border text-xs font-semibold",ke[a.status]),"aria-current":a.id===r?"step":void 0,children:a.status==="complete"?s.jsx(oe,{className:"h-3.5 w-3.5","aria-hidden":!0}):n+1}),g=`stepnav-${a.id}-label`;return s.jsxs("div",{className:"flex flex-1 items-start",children:[s.jsxs("div",{className:"flex min-w-0 flex-col items-center gap-1.5",children:[h?s.jsx("button",{type:"button",onClick:()=>t==null?void 0:t(a.id),"aria-labelledby":g,className:"rounded-lg outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 focus-visible:ring-offset-background motion-surface",children:N}):N,s.jsx("span",{id:g,className:H("text-center text-[11px] leading-tight",Ue[a.status]),children:a.label})]}),u?null:s.jsx("span",{"aria-hidden":!0,className:H("mx-1.5 mt-3.5 h-px flex-1",y)})]},a.id)})})}function Ce({result:e,className:r}){const{t}=O();return s.jsxs("div",{className:H("flex flex-wrap items-center gap-2 rounded-lg px-3 py-2 text-xs",e.ok?"bg-success-bg text-success":"bg-destructive/10 text-destructive",r),children:[s.jsx(ve,{variant:e.ok?"success":"destructive",className:"shrink-0",children:e.ok?t("workbench.testResult.success"):t("workbench.testResult.failure")}),e.status?s.jsx("span",{className:"shrink-0",children:t("workbench.testResult.status",{status:e.status})}):null,e.durationMs?s.jsx("span",{className:"shrink-0",children:t("workbench.testResult.duration",{duration:`${e.durationMs} ms`})}):null,e.message?s.jsx("span",{className:"min-w-0 truncate",title:e.message,children:e.message}):null]})}function V(){return typeof globalThis.crypto<"u"&&typeof globalThis.crypto.randomUUID=="function"?globalThis.crypto.randomUUID():Math.random().toString(36).slice(2,10)}function X(){return{_key:V(),id:"",label:""}}function Re(){return{_key:V(),name:"",value:""}}const _={openai:{baseUrl:"https://api.openai.com/v1"},deepseek:{baseUrl:"https://api.deepseek.com/v1"},huawei:{baseUrl:"https://api.modelarts-maas.com/v1"},kimi:{baseUrl:"https://api.moonshot.cn/v1"},anthropic:{baseUrl:"https://api.anthropic.com/v1"},custom:{}},Te=[{value:"openai",label:"OpenAI"},{value:"deepseek",label:"DeepSeek"},{value:"huawei",label:"Huawei Cloud"},{value:"kimi",label:"Kimi"},{value:"anthropic",label:"Anthropic"},{value:"custom",label:"Custom"}],ds=[{id:"basics",labelKey:"providers.drawer.steps.basics"},{id:"models",labelKey:"providers.drawer.steps.modelsVerify"}];function $(e){return e==="anthropic"?"authToken":"apiKey"}function Ee(e,r,t){return t(r==="authToken"?"providers.drawer.fields.authModeAuthToken":r==="xAuthToken"?"providers.drawer.fields.authModeXAuthToken":e==="anthropic"?"providers.drawer.fields.authModeApiKey":"providers.drawer.fields.authModeProviderDefault")}function Y(e){return e?{id:e.id,label:e.label??e.id,baseUrl:e.baseUrl,apiKey:e.apiKey??"",type:e.type??"custom",defaultModel:e.defaultModel??"",models:(e.models??[]).map(r=>({...r,_key:V()})),authMode:e.authMode??$(e.type??"custom"),nonStreamViaStream:e.nonStreamViaStream??!1,useAbsoluteUrl:e.useAbsoluteUrl??!1,streamUsage:e.streamUsage===!0,extraHeaders:Object.entries(e.extraHeaders??{}).map(([r,t])=>({name:r,value:t,_key:V()}))}:{id:"",label:"",baseUrl:"",apiKey:"",type:"custom",defaultModel:"",models:[],authMode:$("custom"),nonStreamViaStream:!1,useAbsoluteUrl:!1,streamUsage:!1,extraHeaders:[]}}function He(e){return{_key:V(),id:e.id,label:e.label,nonStreamViaStream:e.nonStreamViaStream}}function ls({form:e,errors:r,isCreate:t,advancedOpen:i,onAdvancedOpenChange:a,idInputRef:n,onProviderIdChange:h,onFieldChange:u,onTypeChange:y,onAuthModeChange:N,onNonStreamViaStreamChange:g,onUseAbsoluteUrlChange:k,onStreamUsageChange:m,onAddHeader:A,onRemoveHeader:j,onHeaderChange:w}){const{t:o}=O();return s.jsxs("div",{className:"space-y-8",children:[s.jsxs("section",{className:"space-y-5","aria-labelledby":"provider-type-fields",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("h3",{id:"provider-type-fields",className:"text-sm font-semibold",children:o("providers.drawer.sections.type")}),s.jsx("p",{className:"text-xs text-muted-foreground",children:o("providers.drawer.hints.type")})]}),s.jsx("div",{className:"grid gap-2 md:grid-cols-3",children:Te.map(b=>{var U;const R=b.value===e.type;return s.jsxs("button",{type:"button",onClick:()=>y(b.value),className:H("rounded-2xl border px-4 py-3 text-left transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",R?"border-primary bg-primary/10 text-primary":"border-border bg-card text-foreground hover:border-primary/20 hover:bg-accent/50"),children:[s.jsx("div",{className:"text-sm font-semibold",children:b.label}),s.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:((U=_[b.value??"custom"])==null?void 0:U.baseUrl)??o("providers.drawer.hints.customProvider")})]},b.value??"custom")})})]}),s.jsxs("section",{className:"space-y-4","aria-labelledby":"provider-basic-info",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("h3",{id:"provider-basic-info",className:"text-sm font-semibold",children:o("providers.drawer.sections.basic")}),s.jsx("p",{className:"text-xs text-muted-foreground",children:o("providers.drawer.hints.basic")})]}),s.jsxs("div",{className:"grid gap-4 md:grid-cols-2",children:[s.jsxs(M,{className:"flex flex-col gap-2 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:o("providers.drawer.fields.id")}),s.jsx(C,{value:e.id,ref:n,onChange:b=>h(b.target.value),disabled:!t,placeholder:o("providers.drawer.fields.idPlaceholder"),"aria-invalid":!!r.id}),r.id?s.jsx("span",{className:"text-xs text-destructive",children:r.id}):null]}),s.jsxs(M,{className:"flex flex-col gap-2 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:o("providers.drawer.fields.label")}),s.jsx(C,{value:e.label,onChange:b=>u("label")(b.target.value),placeholder:o("providers.drawer.fields.labelPlaceholder")})]})]}),s.jsxs(M,{className:"flex flex-col gap-2 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:o("providers.drawer.fields.baseUrl")}),s.jsx(C,{value:e.baseUrl,onChange:b=>u("baseUrl")(b.target.value),placeholder:o("providers.drawer.fields.baseUrlPlaceholder"),"aria-invalid":!!r.baseUrl}),r.baseUrl?s.jsx("span",{className:"text-xs text-destructive",children:r.baseUrl}):null]})]}),s.jsxs("section",{className:"space-y-4","aria-labelledby":"provider-auth-fields",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("h3",{id:"provider-auth-fields",className:"text-sm font-semibold",children:o("providers.drawer.sections.auth")}),s.jsx("p",{className:"text-xs text-muted-foreground",children:o("providers.drawer.hints.auth")})]}),s.jsxs(M,{className:"flex flex-col gap-2 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:o("providers.drawer.fields.apiKey")}),s.jsx(C,{value:e.apiKey,onChange:b=>u("apiKey")(b.target.value),placeholder:o("providers.drawer.fields.apiKeyPlaceholder")})]}),s.jsxs("fieldset",{className:"grid gap-2 rounded-xl border border-transparent bg-card p-4 text-xs shadow-[var(--surface-shadow)]",children:[s.jsx("legend",{className:"px-1 text-muted-foreground",children:o("providers.drawer.fields.authMode")}),s.jsx("p",{className:"text-[11px] text-muted-foreground",children:o("providers.drawer.fields.authModeHint")}),s.jsxs("label",{className:"flex cursor-pointer items-start gap-3 rounded-xl border border-transparent px-3 py-2 transition hover:bg-accent focus-within:bg-accent",children:[s.jsx("input",{type:"radio",name:"provider-auth-mode",value:"apiKey",checked:e.authMode==="apiKey",onChange:()=>N("apiKey"),className:"mt-0.5 h-4 w-4 accent-primary"}),s.jsx("span",{children:Ee(e.type,"apiKey",o)})]}),s.jsxs("label",{className:"flex cursor-pointer items-start gap-3 rounded-xl border border-transparent px-3 py-2 transition hover:bg-accent focus-within:bg-accent",children:[s.jsx("input",{type:"radio",name:"provider-auth-mode",value:"authToken",checked:e.authMode==="authToken",onChange:()=>N("authToken"),className:"mt-0.5 h-4 w-4 accent-primary"}),s.jsx("span",{children:o("providers.drawer.fields.authModeAuthToken")})]}),s.jsxs("label",{className:"flex cursor-pointer items-start gap-3 rounded-xl border border-transparent px-3 py-2 transition hover:bg-accent focus-within:bg-accent",children:[s.jsx("input",{type:"radio",name:"provider-auth-mode",value:"xAuthToken",checked:e.authMode==="xAuthToken",onChange:()=>N("xAuthToken"),className:"mt-0.5 h-4 w-4 accent-primary"}),s.jsx("span",{children:o("providers.drawer.fields.authModeXAuthToken")})]})]}),s.jsxs(W,{open:i,onOpenChange:a,summary:o("providers.drawer.fields.advancedOptions"),className:"rounded-xl border border-transparent bg-card shadow-[var(--surface-shadow)]",summaryClassName:"px-4 py-3 text-sm font-medium",contentClassName:"border-t border-border px-4 py-4",children:[s.jsxs("div",{className:"flex items-start justify-between gap-4",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("p",{className:"text-sm font-medium",children:o("providers.drawer.fields.nonStreamViaStream")}),s.jsx("p",{className:"text-xs leading-relaxed text-muted-foreground",children:o("providers.drawer.fields.nonStreamViaStreamHint")})]}),s.jsx(F,{checked:e.nonStreamViaStream,onCheckedChange:g,"aria-label":o("providers.drawer.fields.nonStreamViaStream")})]}),s.jsx("div",{className:"mt-4 border-t border-border pt-4",children:s.jsxs("div",{className:"flex items-start justify-between gap-4",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("p",{className:"text-sm font-medium",children:o("providers.drawer.fields.useAbsoluteUrl")}),s.jsx("p",{className:"text-xs leading-relaxed text-muted-foreground",children:o("providers.drawer.fields.useAbsoluteUrlHint")})]}),s.jsx(F,{checked:e.useAbsoluteUrl,onCheckedChange:k,"aria-label":o("providers.drawer.fields.useAbsoluteUrl")})]})}),s.jsx("div",{className:"mt-4 border-t border-border pt-4",children:s.jsxs("div",{className:"flex items-start justify-between gap-4",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("p",{className:"text-sm font-medium",children:o("providers.drawer.fields.streamUsage")}),s.jsx("p",{className:"text-xs leading-relaxed text-warning",children:o("providers.drawer.fields.streamUsageHint")})]}),s.jsx(F,{checked:e.streamUsage,onCheckedChange:m,"aria-label":o("providers.drawer.fields.streamUsage")})]})}),s.jsxs("div",{className:"mt-4 border-t border-border pt-4",children:[s.jsxs("div",{className:"flex items-start justify-between gap-4",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("p",{className:"text-sm font-medium",children:o("providers.drawer.fields.extraHeaders")}),s.jsx("p",{className:"text-xs leading-relaxed text-muted-foreground",children:o("providers.drawer.fields.extraHeadersHint")})]}),s.jsx(E,{type:"button",variant:"outline",size:"sm",onClick:A,className:"bg-card text-xs",children:o("providers.drawer.fields.addHeader")})]}),r.extraHeaders?s.jsx("p",{className:"mt-2 text-xs text-destructive",children:r.extraHeaders}):null,e.extraHeaders.length>0?s.jsx("div",{className:"mt-3 space-y-3",children:e.extraHeaders.map((b,R)=>s.jsxs("div",{className:"rounded-xl border border-transparent bg-secondary/40 p-3",children:[s.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[s.jsxs(M,{className:"flex flex-col gap-1.5 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:o("providers.drawer.fields.headerName")}),s.jsx(C,{value:b.name,onChange:U=>w(R,{name:U.target.value}),placeholder:o("providers.drawer.fields.headerNamePlaceholder")})]}),s.jsxs(M,{className:"flex flex-col gap-1.5 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:o("providers.drawer.fields.headerValue")}),s.jsx(C,{value:b.value,onChange:U=>w(R,{value:U.target.value}),placeholder:o("providers.drawer.fields.headerValuePlaceholder")})]})]}),s.jsx("div",{className:"mt-2 flex justify-end",children:s.jsx(E,{type:"button",variant:"ghost",size:"sm",className:"h-auto px-2 text-destructive",onClick:()=>j(R),children:o("providers.drawer.fields.removeHeader")})})]},b._key))}):null]})]})]})]})}function ns({form:e,errors:r,advancedOpen:t,onAdvancedOpenChange:i,onModelIdChange:a,onModelChange:n,onAddModel:h,onRemoveModel:u,onModelNonStreamViaStreamChange:y,onSetDefaultModel:N,testVerification:g,probeModels:k}){const{t:m}=O(),A=e.models.filter(j=>j.id.trim().length>0);return s.jsxs("div",{className:"space-y-8",children:[s.jsxs("section",{className:"space-y-4","aria-labelledby":"provider-model-fields",children:[s.jsxs("div",{className:"flex items-start justify-between gap-4",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("h3",{id:"provider-model-fields",className:"text-sm font-semibold",children:m("providers.drawer.fields.models")}),s.jsx("p",{className:"text-xs text-muted-foreground",children:m("providers.drawer.modelsDescription")})]}),s.jsxs("div",{className:"flex shrink-0 gap-2",children:[k?s.jsx(E,{type:"button",variant:"outline",size:"sm",onClick:k.onProbe,disabled:!k.available,title:k.available?void 0:m("providers.drawer.probe.needsBaseUrl"),className:"bg-card text-xs",children:m("providers.drawer.probe.button")}):null,s.jsx(E,{type:"button",variant:"outline",size:"sm",onClick:h,className:"bg-card text-xs",children:m("providers.drawer.fields.addModel")})]})]}),r.models?s.jsx("p",{className:"text-xs text-destructive",children:r.models}):null,s.jsxs("div",{className:"space-y-4",children:[e.models.map((j,w)=>s.jsxs("div",{className:"rounded-xl border border-transparent bg-card p-4 shadow-[var(--surface-shadow)]",children:[s.jsx("div",{className:"grid gap-4 md:grid-cols-2",children:s.jsxs(M,{className:"flex flex-col gap-2 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:m("providers.drawer.fields.modelId")}),s.jsx(C,{value:j.id,onChange:o=>a(w,o.target.value),placeholder:m("providers.drawer.fields.modelIdPlaceholder")})]})}),s.jsxs(W,{open:t,onOpenChange:i,summary:m("providers.drawer.fields.advancedOptions"),className:"mt-4 rounded-xl bg-secondary/50",summaryClassName:"px-3 py-2 text-xs font-medium",contentClassName:"space-y-4 px-3 py-3",children:[s.jsxs(M,{className:"flex flex-col gap-2 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:m("providers.drawer.fields.modelLabel")}),s.jsx(C,{value:j.label??"",onChange:o=>n(w,{label:o.target.value}),placeholder:m("providers.drawer.fields.modelLabelPlaceholder")})]}),s.jsxs(M,{className:"flex flex-col gap-2 text-sm",children:[s.jsx("span",{className:"text-xs text-muted-foreground",children:m("providers.drawer.fields.modelNonStreamViaStream")}),s.jsxs(xe,{value:j.nonStreamViaStream===void 0?"inherit":j.nonStreamViaStream?"enabled":"disabled",onValueChange:o=>y(w,o),children:[s.jsx(fe,{children:s.jsx(be,{})}),s.jsxs(ge,{children:[s.jsx(B,{value:"inherit",children:m("providers.drawer.fields.modelNonStreamViaStreamInherit")}),s.jsx(B,{value:"enabled",children:m("providers.drawer.fields.modelNonStreamViaStreamEnabled")}),s.jsx(B,{value:"disabled",children:m("providers.drawer.fields.modelNonStreamViaStreamDisabled")})]})]})]})]}),s.jsxs("div",{className:"mt-3 flex flex-wrap items-center justify-between gap-3 text-xs",children:[s.jsxs("label",{className:"flex items-center gap-2 text-muted-foreground",children:[s.jsx("input",{type:"radio",name:"defaultModel",value:j.id,"aria-label":m("providers.drawer.fields.setDefault"),checked:e.defaultModel===j.id,onChange:()=>N(j.id),disabled:j.id.trim().length===0,className:"h-4 w-4 accent-primary"}),m("providers.drawer.fields.setDefault")]}),s.jsx(E,{type:"button",variant:"ghost",size:"sm",className:"h-auto px-2 text-destructive",onClick:()=>u(w),disabled:e.models.length===0,children:m("providers.drawer.fields.removeModel")})]})]},j._key)),e.models.length===0?s.jsx("div",{className:"rounded-xl border border-warning/30 bg-warning-bg p-5",children:s.jsxs("div",{className:"space-y-2",children:[s.jsx("p",{className:"text-sm font-semibold text-warning",children:m("providers.drawer.noModelsTitle")}),s.jsx("p",{className:"text-xs leading-relaxed text-warning",children:m("providers.drawer.noModelsHint",{providerId:e.id||"provider-id"})}),s.jsxs("div",{className:"rounded-lg bg-secondary/50 p-2.5",children:[s.jsx("p",{className:"mb-1.5 text-xs font-medium text-foreground",children:m("providers.drawer.routeExample")}),s.jsxs("code",{className:"block rounded-lg border border-transparent bg-card px-2.5 py-1.5 font-mono text-xs text-foreground shadow-[var(--surface-shadow)]",children:['"claude-*": "',(e.id||"provider-id").trim()||"provider-id",':*"']})]})]})}):null]}),A.length>1?s.jsx("div",{className:"text-xs text-muted-foreground",children:m("providers.drawer.defaultHint",{model:e.defaultModel||m("providers.card.noDefault")})}):null]}),g?s.jsxs("section",{className:"space-y-3","aria-labelledby":"provider-verify-fields",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("h3",{id:"provider-verify-fields",className:"text-sm font-semibold",children:m("workbench.drawer.verifyTitle")}),s.jsx("p",{className:"text-xs text-muted-foreground",children:m("workbench.drawer.verifyHint")})]}),g.available?s.jsxs("div",{className:"space-y-3 rounded-xl border border-transparent bg-card p-4 shadow-[var(--surface-shadow)]",children:[s.jsx(E,{type:"button",variant:"outline",size:"sm",onClick:g.onTest,disabled:g.testing,children:g.testing?m("common.actions.testingConnection"):m("workbench.drawer.verifyRun")}),g.result?s.jsx(Ce,{result:g.result}):null]}):s.jsx("p",{className:"rounded-xl bg-secondary/50 px-4 py-3 text-xs text-muted-foreground",children:m("workbench.drawer.verifySaveFirst")})]}):null]})}const Ae=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function is({mode:e,provider:r,existingProviderIds:t}){const{t:i}=O(),[a,n]=S.useState(()=>Y(r)),[h,u]=S.useState({}),[y,N]=S.useState(e==="edit"),g=S.useRef(null),k=S.useCallback(()=>{n(Y(r)),u({}),N(e==="edit")},[r,e]),m=l=>d=>{n(x=>({...x,[l]:d}))},A=l=>{n(d=>{const c=!y||d.label.trim().length===0||d.label===d.id?l:d.label;return{...d,id:l,label:c}})},j=l=>{n(d=>{var Q;const c=_[l??"custom"]??_.custom,p=$(d.type),f=$(l),v=Object.values(_).map(D=>D.baseUrl).filter(D=>!!D),L=!d.baseUrl||v.includes(d.baseUrl),ie=e==="create"&&(d.models.length===0||d.models.every(D=>D.id.trim().length===0)),K={...d,type:l,authMode:d.authMode===p?f:d.authMode};return c!=null&&c.baseUrl&&L&&(K.baseUrl=c.baseUrl),c!=null&&c.models&&ie&&(K.models=c.models.map(He),K.defaultModel=c.defaultModel??((Q=c.models[0])==null?void 0:Q.id)??""),K})},w=(l,d)=>{n(x=>{const c=[...x.models];return c[l]={...c[l],...d},{...x,models:c}})},o=(l,d)=>{n(x=>{const c=[...x.models],p=c[l];if(!p)return x;const f=!y||!p.label||p.label===p.id,v={...p,id:d,label:f?d:p.label};c[l]=v;const L=x.defaultModel===p.id?d:x.defaultModel;return{...x,models:c,defaultModel:L}})},b=l=>{n(d=>{if(l<0||l>=d.models.length)return d;const x=d.models.filter((p,f)=>f!==l);let c=d.defaultModel;return x.some(p=>p.id===c)||(c=""),{...d,models:x,defaultModel:c}})},R=()=>{n(l=>({...l,models:[...l.models,X()]}))},U=l=>{n(d=>{const x=new Set(d.models.map(p=>p.id.trim())),c=l.filter(p=>p.id.trim().length>0&&!x.has(p.id.trim())).map(p=>{var f;return{...X(),id:p.id.trim(),label:((f=p.label)==null?void 0:f.trim())??""}});return c.length===0?d:{...d,models:[...d.models,...c]}})},Z=(l,d)=>{n(x=>{const c=[...x.extraHeaders];return c[l]={...c[l],...d},{...x,extraHeaders:c}})},ee=()=>{n(l=>({...l,extraHeaders:[...l.extraHeaders,Re()]}))},se=l=>{n(d=>{if(l<0||l>=d.extraHeaders.length)return d;const x=d.extraHeaders.filter((c,p)=>p!==l);return{...d,extraHeaders:x}})},re=l=>{n(d=>({...d,authMode:l}))},ae=l=>{n(d=>({...d,nonStreamViaStream:l}))},te=l=>{n(d=>({...d,useAbsoluteUrl:l}))},de=l=>{n(d=>({...d,streamUsage:l}))},le=(l,d)=>{w(l,{nonStreamViaStream:d==="inherit"?void 0:d==="enabled"})},ne=l=>{n(d=>({...d,defaultModel:l}))},G=()=>{const l={},d=a.id.trim(),x=a.baseUrl.trim();if(e==="create"&&(d.length===0?l.id=i("providers.drawer.errors.idRequired"):t.includes(d)&&(l.id=i("providers.drawer.errors.idDuplicate"))),e==="edit"&&d.length===0&&(l.id=i("providers.drawer.errors.idRequired")),x.length===0)l.baseUrl=i("providers.drawer.errors.baseUrlInvalid");else try{new URL(x)}catch{l.baseUrl=i("providers.drawer.errors.baseUrlInvalid")}if(a.models.length>0){const c=new Set;a.models.some(f=>{const v=f.id.trim();return v.length===0||c.has(v)?!0:(c.add(v),!1)})&&(l.models=i("providers.drawer.errors.modelInvalid"))}if(a.defaultModel&&!a.models.some(c=>c.id===a.defaultModel)&&(l.models=i("providers.drawer.errors.defaultInvalid")),a.extraHeaders.length>0){const c=new Set;for(const p of a.extraHeaders){const f=p.name.trim();if(f.length===0)continue;if(!Ae.test(f)){l.extraHeaders=i("providers.drawer.errors.headerNameInvalid");break}const v=f.toLowerCase();if(c.has(v)){l.extraHeaders=i("providers.drawer.errors.headerNameDuplicate");break}c.add(v)}}return u(l),l};return{form:a,errors:h,advancedOpen:y,setAdvancedOpen:N,providerIdRef:g,isCreate:e==="create",resetForm:k,validate:()=>Object.keys(G()).length===0,validateErrors:G,serialize:()=>{const l=a.models.map(f=>{var v;return{id:f.id.trim(),label:(v=f.label)!=null&&v.trim()?f.label.trim():void 0,nonStreamViaStream:f.nonStreamViaStream}}).filter(f=>f.id.length>0),d={};for(const f of a.extraHeaders){const v=f.name.trim();v.length>0&&(d[v]=f.value)}const x=Object.keys(d).length>0,c=a.authMode==="apiKey"&&a.type!=="anthropic"?void 0:a.authMode,p={id:a.id.trim(),label:a.label.trim()||a.id.trim(),baseUrl:a.baseUrl.trim(),apiKey:a.apiKey.trim()||void 0,type:a.type??"custom",defaultModel:a.defaultModel||void 0,models:l.length>0?l:void 0,extraHeaders:x?d:void 0,authMode:c};return a.nonStreamViaStream&&(p.nonStreamViaStream=!0),a.useAbsoluteUrl&&(p.useAbsoluteUrl=!0),a.streamUsage&&(p.streamUsage=!0),p},handleFieldChange:m,handleProviderIdChange:A,handleTypeChange:j,handleModelChange:w,handleModelIdChange:o,handleRemoveModel:b,handleAddModel:R,handleImportModels:U,handleHeaderChange:Z,handleAddHeader:ee,handleRemoveHeader:se,handleAuthModeChange:re,handleProviderNonStreamViaStreamChange:ae,handleUseAbsoluteUrlChange:te,handleStreamUsageChange:de,handleModelNonStreamViaStreamChange:le,handleSetDefaultModel:ne}}export{ls as B,Ge as C,ns as M,Qe as O,Te as P,ts as S,Ce as T,Ye as a,Xe as b,q as c,Je as d,Ze as e,ye as f,je as g,es as h,Ee as i,ds as j,Me as k,We as l,as as m,rs as n,ss as o,Se as r,is as u};