PageSourceSearch

https://compass.sustainablecommodities.com/assets/AdminTaxonomy-CxATdkM7.js

js sustainablecommodities.com collected 2026-10-09 23:01:36 UTC 19,852 bytes, 1 lines download raw bytes

1import{a7 as es,a8 as ss,r as t,j as e,a as ts,S as O,k as Ue,a9 as as,aa as is,ab as ns,z as rs,P as ls,B as ds,O as cs,o as os}from"./index-VHvS917D.js";import{u as ms,a as xs,b as ps,c as us,d as hs,e as js,f as gs,g as bs}from"./useThemes-DLhi05Wz.js";import{B as l}from"./button-BH_J3qFj.js";import{C as Q}from"./card-D9HvhA6t.js";import{I as f}from"./input-1Iy640q7.js";import{T as L}from"./textarea-BuWjHIjc.js";import{D as w,a as R,b as S,c as T,d as k}from"./dialog-BTYHpvRB.js";import{T as fs,a as Cs,b as K,c as G}from"./tabs-CM8MjdaE.js";import{C as qe}from"./CommodityBadge-Q0DCGerx.js";import{a as We,A as Ns}from"./AdminCompanyFilter-CJM1AVE0.js";import{C as He}from"./checkbox-DSQ0LFO1.js";import{S as Z,C as vs,a as ys}from"./scroll-area-DzBoplAz.js";import{U as ws}from"./upload-B8hHjqn7.js";import{P as J}from"./plus-CS-wTUsT.js";import{E as Ss}from"./external-link-KGsaRcNx.js";import{P as X}from"./pencil-CLDbboKF.js";import{T as Y}from"./trash-2-Ced2wmIx.js";import"./index-286EOskY.js";import"./index-Cc2JbMH-.js";import"./index-txIoFUyw.js";import"./badge-Fzr_yDpb.js";import"./news-types-iES-UvgZ.js";import"./profile-emails-jLpqik9F.js";import"./select-C84WXGNK.js";import"./index-DwKdH5_t.js";function Ts({companyId:o,visibility:m,onVisibilityChange:x}){const{data:p=[],isLoading:N}=We(),{data:u=[]}=es(o),d=ss(),[c,g]=t.useState([]),[h,j]=t.useState("");t.useEffect(()=>g(u),[u.join(",")]);const y=t.useMemo(()=>{const i=h.trim().toLowerCase(),n=[...p].sort((v,D)=>v.name.localeCompare(D.name));return i?n.filter(v=>v.name.toLowerCase().includes(i)):n},[p,h]),C=i=>g(n=>n.includes(i)?n.filter(v=>v!==i):[...n,i]),r=c.length!==u.length||c.some(i=>!u.includes(i));return e.jsxs("div",{className:"space-y-3 border-t pt-4",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground mb-2",children:"Visibility"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("button",{type:"button",onClick:()=>x("public"),className:`text-xs px-3 py-1.5 rounded border ${m==="public"?"bg-primary text-primary-foreground border-primary":"bg-muted"}`,children:"All licensed subscribers"}),e.jsx("button",{type:"button",onClick:()=>x("restricted"),className:`text-xs px-3 py-1.5 rounded border ${m==="restricted"?"bg-primary text-primary-foreground border-primary":"bg-muted"}`,children:"Restricted to selected"})]}),e.jsx("p",{className:"text-[10px] text-muted-foreground mt-1",children:"Restricted companies are still filtered by each subscriber's commodity license."})]}),m==="restricted"&&e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"relative",children:[e.jsx(ts,{className:"absolute left-2 top-1/2 -translate-y-1/2 h-3 w-3 text-muted-foreground"}),e.jsx(f,{placeholder:"Search subscribers…",value:h,onChange:i=>j(i.target.value),className:"h-8 pl-7 text-xs"})]}),e.jsx(Z,{className:"h-44 border rounded-md p-2",children:N?e.jsx(O,{className:"h-20"}):y.length===0?e.jsx("p",{className:"text-xs text-muted-foreground text-center py-4",children:"No subscribers"}):e.jsx("div",{className:"space-y-1",children:y.map(i=>e.jsxs("label",{className:"flex items-center gap-2 text-xs px-1 py-0.5 hover:bg-muted/40 rounded cursor-pointer",children:[e.jsx(He,{checked:c.includes(i.id),onCheckedChange:()=>C(i.id)}),e.jsx("span",{children:i.name})]},i.id))})}),e.jsxs("p",{className:"text-[10px] text-muted-foreground",children:[c.length," selected of ",p.length]})]}),e.jsx(l,{size:"sm",disabled:!r||d.isPending,onClick:()=>d.mutate({companyId:o,userCompanyIds:m==="restricted"?c:[]}),className:"w-full",children:d.isPending?"Saving…":"Save Visibility"})]})}const ks=["palm","soy","cocoa"];function Is(o){const m=o.split(/\r?\n/).map(d=>d.trim()).filter(Boolean);if(m.length===0)return[];const x=d=>d.split(",").map(c=>c.trim().replace(/^"|"$/g,""));let p=null;const N=x(m[0]).map(d=>d.toLowerCase());(N.includes("name")||N.includes("company"))&&(p=N);const u=[];for(let d=p?1:0;d<m.length;d++){const c=x(m[d]);let g="",h="",j="";if(p){const C=p.findIndex(n=>n==="name"||n==="company"),r=p.findIndex(n=>n==="website"||n==="url"),i=p.findIndex(n=>n==="commodities"||n==="commodity");
1g=c[C]??"",h=r>=0?c[r]??"":"",j=i>=0?c[i]??"":""}else[g="",h="",j=""]=c;if(!g)continue;const y=j.split(/[;|]/).map(C=>C.trim().toLowerCase()).filter(C=>ks.includes(C));u.push({name:g,website:h||void 0,commodities:y.length?y:void 0})}return u}function Es(){const[o,m]=t.useState(!1),[x,p]=t.useState([]),[N,u]=t.useState(!1),{data:d=[]}=Ue(),c=as(),g=t.useMemo(()=>new Set(d.map(r=>r.name.toLowerCase())),[d]),{newRows:h,dupRows:j}=t.useMemo(()=>{const r=[],i=[];for(const n of x)g.has(n.name.toLowerCase())?i.push(n.name):r.push(n);return{newRows:r,dupRows:i}},[x,g]),y=async r=>{var n;const i=(n=r.target.files)==null?void 0:n[0];i&&p(Is(await i.text()))},C=()=>{c.mutate(h.map(r=>({...r,visibility:N?"restricted":"public"})),{onSuccess:()=>{m(!1),p([])}})};return e.jsxs(w,{open:o,onOpenChange:r=>{m(r),r||p([])},children:[e.jsx(R,{asChild:!0,children:e.jsxs(l,{size:"sm",variant:"outline",children:[e.jsx(ws,{className:"h-3 w-3 mr-1"})," Bulk Import"]})}),e.jsxs(S,{className:"max-w-xl",children:[e.jsx(T,{children:e.jsx(k,{children:"Bulk Import Companies"})}),e.jsxs("div",{className:"space-y-3 pt-2",children:[e.jsxs("div",{className:"text-xs text-muted-foreground space-y-1",children:[e.jsxs("p",{children:["CSV columns (header row optional): ",e.jsx("code",{children:"name, website, commodities"})]}),e.jsxs("p",{children:["Commodities: ",e.jsx("code",{children:"palm"}),", ",e.jsx("code",{children:"soy"}),", ",e.jsx("code",{children:"cocoa"})," — separate multiple with ",e.jsx("code",{children:";"})," or ",e.jsx("code",{children:"|"}),"."]}),e.jsx("p",{children:"Existing companies (matched by name, case-insensitive) are skipped."})]}),e.jsx(f,{type:"file",accept:".csv,.txt,text/csv",onChange:y,className:"text-xs"}),e.jsxs("label",{className:"flex items-center gap-2 text-xs cursor-pointer",children:[e.jsx("input",{type:"checkbox",checked:N,onChange:r=>u(r.target.checked)}),"Mark all imported companies as ",e.jsx("strong",{children:"Restricted"})," (you can grant subscriber access afterwards)"]}),x.length>0&&e.jsxs("div",{className:"border rounded-md p-3 space-y-2",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-2 text-xs",children:[e.jsxs("div",{className:"flex items-center gap-1 text-emerald-600",children:[e.jsx(vs,{className:"h-3 w-3"})," ",h.length," to create"]}),e.jsxs("div",{className:"flex items-center gap-1 text-muted-foreground",children:[e.jsx(ys,{className:"h-3 w-3"})," ",j.length," duplicates skipped"]})]}),e.jsx(Z,{className:"h-40 border rounded p-2",children:e.jsx("ul",{className:"text-xs space-y-0.5",children:h.map((r,i)=>{var n;return e.jsxs("li",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"font-medium",children:r.name}),(n=r.commodities)==null?void 0:n.map(v=>e.jsx("span",{className:"text-[10px] uppercase px-1 rounded bg-muted",children:v},v)),r.website&&e.jsx("span",{className:"text-muted-foreground truncate",children:r.website})]},i)})})})]}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx(l,{variant:"ghost",size:"sm",onClick:()=>m(!1),children:"Cancel"}),e.jsx(l,{size:"sm",disabled:h.length===0||c.isPending,onClick:C,children:c.isPending?"Importing…":`Create ${h.length} companies`})]})]})]})]})}const Ds=["palm","soy","cocoa"],A=({selected:o,onToggle:m})=>e.jsx("div",{className:"flex gap-2",children:Ds.map(x=>e.jsx("button",{type:"button",onClick:()=>m(x),className:`text-xs px-2 py-1 rounded border uppercase ${o.includes(x)?"bg-primary text-primary-foreground":"bg-muted"}`,children:x},x))}),tt=()=>{const{data:o,isLoading:m}=ms(),x=xs(),p=ps(),N=us(),{data:u,isLoading:d}=hs(),c=js(),g=gs(),h=bs(),{data:j,isLoading:y}=Ue(),C=is(),r=ns(),i=rs(),{toast:n}=ls(),[v,D]=t.useState(!1),[z,ee]=t.useState(""),[Fe,Qe]=t.useState("all"),[se,te]=t.useState(""),[Ke,ae]=t.useState(!1),[V,ie]=t.useState(""),[ne,re]=t.useState(""),[le,de]=t.useState(""),[B,ce]=t.useState([]),[Ge,oe]=t.useState(!1),[P,me]=t.useState(""),[xe,pe]=t.useState(""),[_,ue]=t.useState([]),[I,M]=t.useState("public"),[he,je]=t.useState([]),{data:ge=[]}=We(),[be,$]=t.useState(null),[fe,q]=t.useState(null),[E,U]=t.useState(null),[W,Ce]=t.useState(""),[Ne,ve]=t.useState(""),[H,ye]=t.useState(""),[we,Se]=t.useState(""),[Te,ke]=t.useState(""),[Ie,Ee]=t.useState([]),[F,De]=t.useState(""),[Le,Ae]=t.useState(""),[Oe,Re]=t.useState([]),[ze,Ve]=t.useState(""),[Be,Pe]=t.useState(""),[_e,Me]=t.useState("public"),Je=s=>{$(s),Ce(s.name),ve(s.description||"")},Xe=s=>{q(s),ye(s.name),Se(s.description||""),ke(s.theme_id||""),Ee(s.commodity_scope||[])},Ye=s=>{U(s),De(s.name),Ae(s.website||""),Re(s.commodities||[]),Ve(s.country||""),Pe(s.headquarters||""),Me(s.visibility||"public")},Ze=async s=>{const{error:a}=await os.from("companies").delete().eq("id",s);a?n({title:"Delete failed",description:a.message,variant:"destructive"}):(i.invalidateQueries({queryKey:["companies"]}),n({title:"Company deleted"}))};return e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsx("div",{className:"bg-primary text-primary-foreground sticky top-0 z-40 py-8",children:e.jsx("div",{className:"container",children:e.jsxs("div",{className:"flex items-start justify-between gap-4",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-semibold mb-1",children:"Tags"}
1),e.jsx("p",{className:"text-primary-foreground/60 text-sm",children:"Manage companies, themes and indicators"})]}),e.jsx(Ns,{value:Fe,onChange:Qe})]})})}),e.jsx("main",{className:"container py-6 max-w-5xl",children:e.jsxs(fs,{defaultValue:"companies",children:[e.jsxs(Cs,{children:[e.jsx(K,{value:"companies",children:"Companies"}),e.jsx(K,{value:"themes",children:"Themes"}),e.jsx(K,{value:"indicators",children:"Indicators"})]}),e.jsxs(G,{value:"companies",className:"mt-4 space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("p",{className:"text-sm text-muted-foreground",children:[(j==null?void 0:j.length)??0," companies"]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(Es,{}),e.jsxs(w,{open:Ge,onOpenChange:oe,children:[e.jsx(R,{asChild:!0,children:e.jsxs(l,{size:"sm",children:[e.jsx(J,{className:"h-3 w-3 mr-1"})," Add Company"]})}),e.jsxs(S,{className:"max-w-md",children:[e.jsx(T,{children:e.jsx(k,{children:"Add Company"})}),e.jsxs("div",{className:"space-y-3 pt-2",children:[e.jsx(f,{placeholder:"Company name",value:P,onChange:s=>me(s.target.value)}),e.jsx(f,{placeholder:"Website (optional)",value:xe,onChange:s=>pe(s.target.value)}),e.jsxs("div",{children:[e.jsx("p",{className:"text-xs text-muted-foreground mb-2",children:"Commodities"}),e.jsx(A,{selected:_,onToggle:s=>ue(a=>a.includes(s)?a.filter(b=>b!==s):[...a,s])})]}),e.jsxs("div",{className:"border-t pt-3",children:[e.jsx("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground mb-2",children:"Visibility"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("button",{type:"button",onClick:()=>M("public"),className:`text-xs px-3 py-1.5 rounded border ${I==="public"?"bg-primary text-primary-foreground border-primary":"bg-muted"}`,children:"All licensed subscribers"}),e.jsx("button",{type:"button",onClick:()=>M("restricted"),className:`text-xs px-3 py-1.5 rounded border ${I==="restricted"?"bg-primary text-primary-foreground border-primary":"bg-muted"}`,children:"Restricted to selected"})]}),I==="restricted"&&e.jsx(Z,{className:"h-36 border rounded-md p-2 mt-2",children:ge.length===0?e.jsx("p",{className:"text-xs text-muted-foreground text-center py-4",children:"No subscribers"}):e.jsx("div",{className:"space-y-1",children:[...ge].sort((s,a)=>s.name.localeCompare(a.name)).map(s=>e.jsxs("label",{className:"flex items-center gap-2 text-xs px-1 py-0.5 hover:bg-muted/40 rounded cursor-pointer",children:[e.jsx(He,{checked:he.includes(s.id),onCheckedChange:()=>je(a=>a.includes(s.id)?a.filter(b=>b!==s.id):[...a,s.id])}),e.jsx("span",{children:s.name})]},s.id))})})]}),e.jsx(l,{onClick:()=>C.mutate({name:P.trim(),website:xe.trim()||void 0,commodities:_.length?_:void 0,visibility:I,visibleToUserCompanyIds:I==="restricted"?he:void 0},{onSuccess:()=>{oe(!1),me(""),pe(""),ue([]),M("public"),je([])}}),disabled:!P.trim(),className:"w-full",children:"Add"})]})]})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[y&&e.jsx(O,{className:"h-12 w-full"}),j==null?void 0:j.map(s=>e.jsxs(Q,{className:"p-3 flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(ds,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.jsxs("div",{children:[e.jsxs("p",{className:"font-medium text-sm flex items-center gap-2",children:[s.name,s.visibility==="restricted"&&e.jsx("span",{className:"text-[9px] uppercase tracking-wider px-1.5 py-0.5 rounded bg-amber-500/15 text-amber-700 dark:text-amber-400 border border-amber-500/30",children:"Restricted"})]}),e.jsxs("div",{className:"flex items-center gap-2 mt-0.5",children:[(s.commodities||[]).map(a=>e.jsx(qe,{commodity:a},a)),s.website&&e.jsxs("a",{href:cs(s.website,"article")??void 0,target:"_blank",rel:"noopener noreferrer",className:"text-[10px] text-muted-foreground hover:text-foreground flex items-center gap-0.5",children:[e.jsx(Ss,{className:"h-2.5 w-2.5"})," Website"]})]})]})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(l,{size:"sm",variant:"ghost",onClick:()=>Ye(s),children:e.jsx(X,{className:"h-3 w-3"})}),e.jsx(l,{size:"sm",variant:"ghost",className:"text-destructive",onClick:()=>Ze(s.id),children:e.jsx(Y,{className:"h-3 w-3"})})]})]},s.id))]}),e.jsx(w,{open:!!E,onOpenChange:s=>!s&&U(null),children:e.jsxs(S,{children:[e.jsx(T,{children:e.jsx(k,{children:"Edit Company"})}),e.jsxs("div",{className:"space-y-3 pt-2",children:[e.jsx(f,{placeholder:"Company name",value:F,onChange:s=>De(s.target.value)}),e.jsx(f,{placeholder:"Website",value:Le,onChange:s=>Ae(s.target.value)}),e.jsx(f,{placeholder:"Country",value:ze,onChange:s=>Ve(s.target.value)}
1),e.jsx(f,{placeholder:"Headquarters",value:Be,onChange:s=>Pe(s.target.value)}),e.jsxs("div",{children:[e.jsx("p",{className:"text-xs text-muted-foreground mb-2",children:"Commodities"}),e.jsx(A,{selected:Oe,onToggle:s=>Re(a=>a.includes(s)?a.filter(b=>b!==s):[...a,s])})]}),e.jsx(l,{onClick:()=>r.mutate({id:E.id,name:F.trim(),website:Le.trim()||null,commodities:Oe,country:ze.trim()||null,headquarters:Be.trim()||null,visibility:_e},{onSuccess:()=>U(null)}),disabled:!F.trim(),className:"w-full",children:"Save Changes"}),E&&e.jsx(Ts,{companyId:E.id,visibility:_e,onVisibilityChange:Me},E.id)]})]})})]}),e.jsxs(G,{value:"themes",className:"mt-4 space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("p",{className:"text-sm text-muted-foreground",children:[(o==null?void 0:o.length)??0," themes"]}),e.jsxs(w,{open:v,onOpenChange:D,children:[e.jsx(R,{asChild:!0,children:e.jsxs(l,{size:"sm",children:[e.jsx(J,{className:"h-3 w-3 mr-1"})," Add Theme"]})}),e.jsxs(S,{children:[e.jsx(T,{children:e.jsx(k,{children:"Add Theme"})}),e.jsxs("div",{className:"space-y-3 pt-2",children:[e.jsx(f,{placeholder:"Name",value:z,onChange:s=>ee(s.target.value)}),e.jsx(L,{placeholder:"Description",value:se,onChange:s=>te(s.target.value)}),e.jsx(l,{onClick:()=>x.mutate({name:z,description:se||void 0},{onSuccess:()=>{D(!1),ee(""),te("")}}),disabled:!z.trim(),className:"w-full",children:"Add"})]})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[m&&e.jsx(O,{className:"h-12 w-full"}),o==null?void 0:o.map(s=>e.jsxs(Q,{className:"p-3 flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-sm",children:s.name}),s.description&&e.jsx("p",{className:"text-xs text-muted-foreground",children:s.description})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(l,{size:"sm",variant:"ghost",onClick:()=>Je(s),children:e.jsx(X,{className:"h-3 w-3"})}),e.jsx(l,{size:"sm",variant:"ghost",className:"text-destructive",onClick:()=>p.mutate(s.id),children:e.jsx(Y,{className:"h-3 w-3"})})]})]},s.id))]}),e.jsx(w,{open:!!be,onOpenChange:s=>!s&&$(null),children:e.jsxs(S,{children:[e.jsx(T,{children:e.jsx(k,{children:"Edit Theme"})}),e.jsxs("div",{className:"space-y-3 pt-2",children:[e.jsx(f,{placeholder:"Name",value:W,onChange:s=>Ce(s.target.value)}),e.jsx(L,{placeholder:"Description",value:Ne,onChange:s=>ve(s.target.value)}),e.jsx(l,{onClick:()=>N.mutate({id:be.id,name:W.trim(),description:Ne.trim()||void 0},{onSuccess:()=>$(null)}),disabled:!W.trim(),className:"w-full",children:"Save Changes"})]})]})})]}),e.jsxs(G,{value:"indicators",className:"mt-4 space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("p",{className:"text-sm text-muted-foreground",children:[(u==null?void 0:u.length)??0," indicators"]}),e.jsxs(w,{open:Ke,onOpenChange:ae,children:[e.jsx(R,{asChild:!0,children:e.jsxs(l,{size:"sm",children:[e.jsx(J,{className:"h-3 w-3 mr-1"})," Add Indicator"]})}),e.jsxs(S,{children:[e.jsx(T,{children:e.jsx(k,{children:"Add Indicator"})}),e.jsxs("div",{className:"space-y-3 pt-2",children:[e.jsx(f,{placeholder:"Name",value:V,onChange:s=>ie(s.target.value)}),e.jsx(L,{placeholder:"Description",value:ne,onChange:s=>re(s.target.value)}),e.jsxs("select",{className:"w-full border border-border rounded px-3 py-2 text-sm bg-card text-foreground",value:le,onChange:s=>de(s.target.value),children:[e.jsx("option",{value:"",children:"No theme"}),[...o??[]].sort((s,a)=>s.name.localeCompare(a.name)).map(s=>e.jsx("option",{value:s.id,children:s.name},s.id))]}),e.jsx(A,{selected:B,onToggle:s=>ce(a=>a.includes(s)?a.filter(b=>b!==s):[...a,s])}),e.jsx(l,{onClick:()=>c.mutate({name:V,description:ne||void 0,theme_id:le||void 0,commodity_scope:B.length?B:void 0},{onSuccess:()=>{ae(!1),ie(""),re(""),de(""),ce([])}}),disabled:!V.trim(),className:"w-full",children:"Add"})]})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[d&&e.jsx(O,{className:"h-12 w-full"}),u==null?void 0:u.map(s=>{var a,b;return e.jsxs(Q,{className:"p-3 flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-sm",children:s.name}),e.jsxs("div",{className:"flex items-center gap-2 mt-0.5",children:[((a=s.themes)==null?void 0:a.name)&&e.jsx("span",{className:"text-xs text-muted-foreground",children:s.themes.name}),(b=s.commodity_scope)==null?void 0:b.map($e=>e.jsx(qe,{commodity:$e},$e))]})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(l,{size:"sm",variant:"ghost",onClick:()=>Xe(s),children:e.jsx(X,{className:"h-3 w-3"})}),e.jsx(l,{size:"sm",variant:"ghost",className:"text-destructive",onClick:()=>g.mutate(s.id),children:e.jsx(Y,{className:"h-3 w-3"})})]})]},s.id)})]}),e.jsx(w,{open:!!fe,onOpenChange:s=>!s&&q(null),children:e.jsxs(S,{children:[e.jsx(T,{children:e.jsx(k,{children:"Edit Indicator"})}),e.jsxs("div",{className:"space-y-3 pt-2",children:[e.jsx(f,{placeholder:"Name",value:H,onChange:s=>ye(s.target.value)}),e.jsx(L,{placeholder:"Description",value:we,onChange:s=>Se(s.target.value)}),e.jsxs("select",{className:"w-full border border-border rounded px-3 py-2 text-sm bg-card text-foreground",value:Te,onChange:s=>ke(s.target.value),children:[e.jsx("option",{value:"",children:"No theme"}),[...o??[]].sort((s,a)=>s.name.localeCompare(a.name)).map(s=>e.jsx("option",{value:s.id,children:s.name},s.id))]}),e.jsx(A,{selected:Ie,onToggle:s=>Ee(a=>a.includes(s)?a.filter(b=>b!==s):[...a,s])}),e.jsx(l,{onClick:()=>h.mutate({id:fe.id,name:H.trim(),description:we.trim()||void 0,theme_id:Te||null,commodity_scope:Ie},{onSuccess:()=>q(null)}),disabled:!H.trim(),className:"w-full",children:"Save Changes"})]})]})})]})]})})]})};export{tt as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.