1import{a as e}from"./chunk-BEqpzyXh.js";import{n as t,t as n}from"./jsx-runtime-CUGJq-9t.js";import{t as r}from"./Paper-DaW7UUFc.js";import{t as i}from"./IconButton-BYa6p8v1.js";import{t as a}from"./MenuItem-DXI-zn41.js";import{i as o,n as s,o as c,t as l}from"./TableRow-DIH0BDrI.js";import{t as u}from"./TableContainer-6xQSgU9c.js";import{t as d}from"./TableHead-DGJRxX6C.js";import{r as f,t as p}from"./AnyUtil-CdE-A3BY.js";import{t as m}from"./LoadingIndicator-DyehsH3m.js";import{n as h,r as g}from"./i18nDomainDrivenDesign-C5aAHCcf.js";import{t as _}from"./v4-Ckb5exia.js";import{$r as v,hr as y}from"./FontAwesome-DXhSLJFm.js";import{t as b}from"./TextInput-pV8Bsgag.js";import{t as x}from"./variables.module-C3_WPQ7S.js";import{t as S}from"./AutocompleteSelect-Qsm4zHRr.js";import{t as C}from"./DateInput-DCq6XnYo.js";import{t as w}from"./DateTimeInput-DCnXhgTE.js";import{t as T}from"./DezimalInput-6ZzviIyr.js";import{t as E}from"./GanzzahlInput-HoUxdRA1.js";import{t as D}from"./MultipleSelect-C0unlIJq.js";import{t as O}from"./SimpleSelect-CHyQUT4I.js";var k=e(t()),A=n();function j(e){if(!p.isNullOrUndefined(e.feld))return e.feld;if(!p.isNullOrUndefined(e.zusatzfeldDefinitionId))return e.zusatzfeldDefinitionId;throw Error(`Ungültiger Filter. Filter hat keinen Feldnamen und keine ZusatzfeldDefinitionId.`,{cause:e})}function M(e){let{filter:t,setFilter:n,findeFilterInfos:M}=e,[N,P]=k.useState({}),[F,I]=k.useState(_()),{t:L}=g(),R=Object.keys(N),z=t.filter(e=>!R.includes(j(e)));k.useEffect(()=>{z.forEach(e=>{M(j(e)).then(e=>{P(t=>e.reduce((e,t)=>({...e,[t.feld]:t}),t))})})},[z.length]);function B(t,r){let i={ignoreTooltip:!0,caption:``,typBezeichnung:e.commandName,required:!0,autoFocus:!0};if(t.operator===`HATKEINENWERT`||t.operator===`HATWERT`)return null;switch(t.wert.typ){case`BOOLEAN`:return(0,A.jsxs)(O,{...i,value:String(t.wert.als.boolean??``),onChange:e=>{let t=e.target.value===`true`;n(e=>e.map((e,n)=>n===r?{...e,wert:{...e.wert,als:{boolean:t}}}:e))},feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`boolean`)],children:[(0,A.jsx)(a,{style:{display:`none`},value:``}),(0,A.jsx)(a,{value:`true`,children:L(h.filterTable.ja)}),(0,A.jsx)(a,{value:`false`,children:L(h.filterTable.nein)})]});case`ENUM`:{let o=N[j(t)]?.optionen??[],s=o.map(e=>String(e.als.enum)),c=o.reduce((e,t)=>{let n=String(t.als.enum);return e[n]=t.name,e},{});return(0,A.jsx)(O,{...i,value:String(t.wert.als.enum??``),onChange:e=>{let t=Number(e.target.value);n(e=>e.map((e,n)=>n===r?{...e,wert:{...e.wert,als:{enum:t}}}:e))},feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`enum`)],children:s.map((e,t)=>(0,A.jsx)(a,{value:e,children:c[e]},t))})}case`DECIMAL`:return(0,A.jsx)(T,{...i,value:t.wert.als.decimal??null,onChange:e=>{n(t=>t.map((t,n)=>n===r?{...t,wert:{...t.wert,als:{decimal:e??void 0}}}:t))},feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`decimal`)]});case`INTEGER`:return(0,A.jsx)(E,{...i,min:-1e9,max:1e9,value:t.wert.als.integer??null,onChange:e=>{n(t=>t.map((t,n)=>n===r?{...t,wert:{...t.wert,als:{integer:e??void 0}}}:t))},feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`integer`)]});case`GUID`:return(0,A.jsx)(b,{...i,value:t.wert.als.guid??``,onChange:e=>{let t=e.target.value;n(e=>e.map((e,n)=>n===r?{...e,wert:{...e.wert,als:{guid:t}}}:e))},feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`guid`)
1]});case`STRING`:return(0,A.jsx)(b,{...i,value:t.wert.als.string??``,onChange:e=>{let t=e.target.value;n(e=>e.map((e,n)=>n===r?{...e,wert:{...e.wert,als:{string:t}}}:e))},feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`string`)]});case`DATETIME`:return(0,A.jsx)(w,{...i,ignoreTooltip:!0,autoFocus:!0,value:t.wert.als.dateTime??``,onChange:e=>{n(t=>t.map((t,n)=>n===r?{...t,wert:{...t.wert,als:{dateTime:e}}}:t))},caption:``,feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`dateTime`)]});case`DATE`:return(0,A.jsx)(C,{...i,ignoreTooltip:!0,autoFocus:!0,value:t.wert.als.dateTime??``,onChange:e=>{n(t=>t.map((t,n)=>n===r?{...t,wert:{...t.wert,als:{dateTime:e}}}:t))},caption:``,feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`dateTime`)]});case`STRINGARRAY`:{let a=N[j(t)]?.optionen??[],o=a.map(e=>e.als.string??``),s=a.reduce((e,t)=>{let n=t.als.string??``;return e[n]=t.name,e},{}),c=e=>{n(t=>t.map((t,n)=>n===r?{...t,wert:{...t.wert,als:{stringArray:(t.wert.als.stringArray??[]).filter(t=>t!==e)}}}:t))};return(0,A.jsx)(D,{...i,optionen:o,render:e=>s[e],value:t.wert.als.stringArray??[],onChange:e=>{n(t=>t.map((t,n)=>n===r?{...t,wert:{...t.wert,als:{stringArray:e}}}:t))},onDelete:c,feldBezeichnung:[...e.pfadZuFilter,`filter`,String(r),f(`wert`),f(`als`),f(`stringArray`)]})}default:return null}}let V=e=>t=>{t&&(P(e=>({...e,[t.feld]:t})),n(n=>n.map((n,r)=>r===e?{...n,feld:t.feld,operator:t.operatoren[0],wert:{typ:t.typ,als:{}}}:n)))},H=e=>t=>{let r=t.target.value;n(t=>t.map((t,n)=>n===e?{...t,operator:r}:t))},U=e=>()=>n(t=>t.filter((t,n)=>n!==e));function W(e){e&&(P(t=>({...t,[e.feld]:e})),n(t=>{let n={feld:e.feld,operator:e.operatoren[0],wert:{typ:e.typ,als:{}},zusatzfeldDefinitionId:e.zusatzfeldDefinitionId};return[...t,n]}),I(_()))}return(0,A.jsx)(u,{component:r,variant:`outlined`,sx:{borderColor:x.colorsDefaultBorder},children:(0,A.jsxs)(c,{stickyHeader:!0,children:[(0,A.jsxs)(`colgroup`,{children:[(0,A.jsx)(`col`,{width:`25%`}),(0,A.jsx)(`col`,{width:`25%`}),(0,A.jsx)(`col`,{width:`calc(50% - 72px)`}),(0,A.jsx)(`col`,{width:`72px`})]}),(0,A.jsx)(d,{children:(0,A.jsxs)(l,{children:[(0,A.jsx)(s,{children:L(h.filterTable.spalte)}),(0,A.jsx)(s,{children:L(h.filterTable.operator)}),(0,A.jsx)(s,{children:L(h.filterTable.wert)}),(0,A.jsx)(s,{})]})}),(0,A.jsxs)(o,{children:[z.length>0?(0,A.jsx)(l,{children:(0,A.jsx)(s,{colSpan:4,children:(0,A.jsx)(m,{loading:!0})})}):t.map((t,n)=>(0,A.jsxs)(l,{children:[(0,A.jsx)(s,{"aria-label":L(h.filterTable.spaltenLabel),title:L(h.filterTable.spaltenTitel),children:(0,A.jsx)(S,{ignoreTooltip:!0,placeholder:L(h.filterTable.filterHinzufuegen),value:N[j(t)],onChange:V(n),getOptionLabel:e=>e.feld,getOptionSelected:(e,t)=>p.equals(e,t),executeQuery:M,caption:``,typBezeichnung:e.commandName,feldBezeichnung:[`filter`,String(n),f(`feld`)]})}),(0,A.jsx)(s,{"aria-label":L(h.filterTable.operatorLabel),title:L(h.filterTable.operatorTitel),children:(0,A.jsx)(O,{ignoreTooltip:!0,value:t.operator,onChange:H(n),caption:``,typBezeichnung:e.commandName,feldBezeichnung:[`filter`,String(n),f(`operator`)],children:(N[j(t)]?.operatoren??[]).map(e=>(0,A.jsx)(a,{value:e,children:L(h.filterTable[e])},e))})}),(0,A.jsx)(s,{title:L(h.filterTable.filterwertTitel),"aria-label":L(h.filterTable.filterwertLabel),children:B(t,n)}),(0,A.jsx)(s,{children:(0,A.jsx)(i,{onClick:U(n),title:L(h.filterTable.loeschenButtonTitel),"aria-label":L(h.filterTable.loeschenButtonLabel),children:(0,A.jsx)(v,{})})})]},n)),(0,A.jsx)(l,{children:(0,A.jsx)(s,{colSpan:4,sx:{borderBottom:`none`},children:(0,A.jsx)(S,{ignoreTooltip:!0,InputProps:{startAdornment:(0,A.jsx)(y,{color:`action`})},placeholder:L(h.filterTable.filterHinzufuegen),value:null,onChange:W,getOptionLabel:e=>e?.feld??``,getOptionSelected:(e,t)=>e===t,executeQuery:M,caption:``,typBezeichnung:``,feldBezeichnung:``},F)})})]})]})})}export{M as t};
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.