umwd-components 0.1.730 → 0.1.731

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.
@@ -3,4 +3,4 @@
3
3
  * @copyright Jelle Paulus
4
4
  * @license MIT
5
5
  */
6
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@mui/material/Paper"),a=require("@mui/material/Typography"),n=require("@mui/material/Button"),i=require("@mui/material/Stack"),r=require("@mui/material/Grid"),s=require("@mui/material/IconButton"),l=require("@mui/material/Checkbox"),c=require("@mui/material/Divider"),d=require("@mui/material/Collapse"),u=require("@mui/material/Autocomplete"),m=require("@mui/material/TextField"),o=require("../../../../node_modules/react-csv/index.js"),x=require("@mui/x-date-pickers"),h=require("@mui/x-date-pickers/AdapterDayjs"),j=require("@mui/x-date-pickers/DatePicker"),b=require("@mui/icons-material/KeyboardArrowDown"),g=require("@mui/icons-material/KeyboardArrowUp"),p=require("react"),f=require("../../../../node_modules/dayjs/dayjs.min.js"),C=require("../../../../node_modules/qs/lib/index.js");exports.default=function(k){const{defaultAttributes:y,defaultRelations:w,defaultStrapiAttributes:S,additionalDateTypes:q,fetchCSVData:v,entityCode:D="FU"}=k,Y=[...S.map(e=>e.name),...q],[A,M]=p.useState(f.default(Date.now()).startOf("day")),[I,z]=p.useState("createdAt"),[E,P]=p.useState(f.default(A).subtract(1,"month")),[$,_]=p.useState(!1),[O,T]=p.useState([]),[V,F]=p.useState([]),[R,U]=p.useState([]),[B,K]=p.useState([]),[L,G]=p.useState(null),H=p.useRef(null),[J,N]=p.useState(""),Q=p.useCallback(e=>{const{name:t}=e.target;T(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t])},[]),W=p.useCallback(e=>{const{name:t}=e.target;U(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t])},[]),X=p.useCallback(e=>{const{name:t}=e.target;F(e=>e.some(e=>e.name===t)?e.filter(e=>e.name!==t):[...e,{name:t,attributes:w.find(e=>e.name===t)?.attributes.map(e=>e.name)||[]}])},[w]),Z=p.useCallback(e=>{const[t,a]=e.target.name.split("|");F(e=>e.find(e=>e.name===a)?e.map(e=>e.name===a?{...e,attributes:e.attributes.includes(t)?e.attributes.filter(e=>e!==t):[...e.attributes,t]}:e):[...e,{name:a,attributes:[t]}])},[]),ee=p.useCallback(e=>{K(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),te=p.useCallback(e=>{const{checked:t}=e.target;T(t?y.map(e=>e.name):[])},[y]),ae=p.useCallback(e=>{const{checked:t}=e.target;U(t?S.map(e=>e.name):[])},[S]),ne=p.useCallback(e=>{const{checked:t}=e.target;F(t?w.map(e=>({name:e.name,attributes:e.attributes.map(e=>e.name)})):[])},[w]),ie=p.useCallback(async()=>{try{const e=await v(J);if(0===e.length)G(null);else{const t=e.data.map(e=>{const t={};return O.forEach(a=>{t[a]=e.attributes?.[a]??e[a]}),O.includes("id")&&(t.id=e.id),R.forEach(a=>{t[a]=e.attributes?.[a]??e[a]}),V.forEach(a=>{const n=e[a.name]?.data??e[a.name];null===n?t[a.name]=null:Array.isArray(n)?t[a.name]=n.map(e=>Object.values(e.attributes??e).join(" | ")).join(" | "):t[a.name]=Object.values(n.attributes??n).join(" | ")}),t});G(t)}}catch(e){console.error("Error fetching CSV data:",e),G(null)}},[J,O,V,R,v]);return p.useEffect(()=>{L&&H.current&&setTimeout(()=>{H.current?.link?.click(),G(null)})},[L]),p.useEffect(()=>{N(C.default.stringify({fields:O,filters:{[I]:{$between:[f.default(E).format("YYYY-MM-DD"),f.default(A).format("YYYY-MM-DD")]}},populate:V.reduce((e,t)=>(e[t.name]={fields:t.attributes},e),{})},{encodeValuesOnly:!0}))},[O,V,E,A,I]),e.jsx(t,{sx:{width:"100%",p:2},children:e.jsx(x.LocalizationProvider,{dateAdapter:h.AdapterDayjs,children:e.jsxs(r,{container:!0,spacing:2,children:[$&&e.jsxs(e.Fragment,{children:[e.jsxs(r,{item:!0,xs:12,children:[e.jsx(i,{direction:"row",justifyContent:"flex-end",children:e.jsx(s,{"aria-label":"expand row",size:"small",onClick:()=>_(!$),children:$?e.jsx(g,{}):e.jsx(b,{})})}),e.jsx(c,{})]}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",justifyContent:"space-between",children:[e.jsx(a,{variant:"h6",children:"Attributes"}),e.jsx(l,{checked:y.length===O.length,indeterminate:y.length!==O.length&&O.length>0,sx:{"& .MuiSvgIcon-root":{fontSize:28}},onChange:te})]})}),y.map(t=>e.jsx(r,{item:!0,xs:4,children:e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:t.name,checked:O.includes(t.name),onChange:Q}),e.jsx(a,{children:t.label})]})},t.name)),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",justifyContent:"space-between",children:[e.jsx(a,{variant:"h6",children:"Relations"}),e.jsx(l,{checked:w.length===V.length,indeterminate:w.length!==V.length&&V.length>0,sx:{"& .MuiSvgIcon-root":{fontSize:28}},onChange:ne})]})}),w.map(t=>{const n=B.includes(t.name),u=V.some(e=>e.name===t.name),m=u&&V.some(e=>e.name===t.name&&e.attributes.length!==t.attributes.length);return e.jsxs(r,{item:!0,xs:12,children:[e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:t.name,checked:u,indeterminate:m,onChange:X}),e.jsx(a,{children:t.label}),e.jsx(s,{name:t.name,onClick:()=>ee(t.name),children:n?e.jsx(b,{}):e.jsx(g,{})})]}),e.jsx(c,{}),e.jsx(d,{in:n,children:e.jsx(r,{container:!0,sx:{pl:2},children:t.attributes.map(n=>e.jsx(r,{item:!0,xs:3,children:e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:`${n.name}|${t.name}`,checked:V.some(e=>e.name===t.name&&e.attributes.includes(n.name)),onChange:Z,size:"small"}),e.jsx(a,{variant:"body2",children:n.label})]})},n.name))})})]},t.name)}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",justifyContent:"space-between",children:[e.jsx(a,{variant:"h6",children:"Creation, Publication and Update"}),e.jsx(l,{checked:S.length===R.length,indeterminate:S.length!==R.length&&R.length>0,sx:{"& .MuiSvgIcon-root":{fontSize:28}},onChange:ae})]})}),S.map(t=>e.jsx(r,{item:!0,xs:4,children:e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:t.name,checked:R.includes(t.name),onChange:W}),e.jsx(a,{children:t.label})]})},t.name)),e.jsx(r,{item:!0,xs:12,children:e.jsx(a,{variant:"h6",children:"Select date range"})}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",spacing:2,children:[e.jsx(u,{value:I,options:Y,multiple:!1,onChange:(e,t)=>z(t),renderInput:t=>e.jsx(m,{...t,label:"Date Type"}),sx:{width:300},disableClearable:!0}),e.jsx(j.DatePicker,{value:E,label:"start date",onChange:e=>e&&P(e)}),e.jsx(j.DatePicker,{value:A,label:"end date",onChange:e=>e&&M(e)})]})})]}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",spacing:2,sx:{justifyContent:"space-between"},children:[e.jsxs(p.Fragment,{children:[e.jsx(n,{variant:"contained",disabled:0===O.length&&0===V.length,onClick:ie,children:"Export CSV"}),L&&e.jsx(o.reactCsv.CSVLink,{data:L,filename:`${f.default(E).format("DD-MM-YYYY")}_${f.default(A).format("DD-MM-YYYY")}/${I}_${D}-export.csv`,ref:H})]}),e.jsx(s,{"aria-label":"expand row",size:"small",onClick:()=>_(!$),children:$?e.jsx(g,{}):e.jsx(b,{})})]})})]})})})};
6
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@mui/material/Paper"),a=require("@mui/material/Typography"),n=require("@mui/material/Button"),i=require("@mui/material/Stack"),r=require("@mui/material/Grid"),s=require("@mui/material/IconButton"),l=require("@mui/material/Checkbox"),c=require("@mui/material/Divider"),d=require("@mui/material/Collapse"),u=require("@mui/material/Autocomplete"),o=require("@mui/material/TextField"),m=require("../../../../node_modules/react-csv/index.js"),x=require("@mui/x-date-pickers"),h=require("@mui/x-date-pickers/AdapterDayjs"),j=require("@mui/x-date-pickers/DatePicker"),g=require("@mui/icons-material/KeyboardArrowDown"),b=require("@mui/icons-material/KeyboardArrowUp"),p=require("react"),f=require("../../../../node_modules/dayjs/dayjs.min.js"),C=require("../../../../node_modules/qs/lib/index.js");exports.default=function(k){const{defaultAttributes:y,defaultRelations:w,defaultStrapiAttributes:S,additionalDateTypes:q,fetchCSVData:v,entityCode:D="FU"}=k,Y=[...S.map(e=>e.name),...q],[A,M]=p.useState(f.default(Date.now()).startOf("day")),[I,z]=p.useState("createdAt"),[E,P]=p.useState(f.default(A).subtract(1,"month")),[$,_]=p.useState(!1),[V,O]=p.useState([]),[T,F]=p.useState([]),[R,U]=p.useState([]),[B,K]=p.useState([]),[L,G]=p.useState(null),H=p.useRef(null),[J,N]=p.useState(""),Q=p.useCallback(e=>{const{name:t}=e.target;O(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t])},[]),W=p.useCallback(e=>{const{name:t}=e.target;U(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t])},[]),X=p.useCallback(e=>{const{name:t}=e.target;F(e=>e.some(e=>e.name===t)?e.filter(e=>e.name!==t):[...e,{name:t,attributes:w.find(e=>e.name===t)?.attributes.map(e=>e.name)||[]}])},[w]),Z=p.useCallback(e=>{const[t,a]=e.target.name.split("|");F(e=>e.find(e=>e.name===a)?e.map(e=>e.name===a?{...e,attributes:e.attributes.includes(t)?e.attributes.filter(e=>e!==t):[...e.attributes,t]}:e):[...e,{name:a,attributes:[t]}])},[]),ee=p.useCallback(e=>{K(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),te=p.useCallback(e=>{const{checked:t}=e.target;O(t?y.map(e=>e.name):[])},[y]),ae=p.useCallback(e=>{const{checked:t}=e.target;U(t?S.map(e=>e.name):[])},[S]),ne=p.useCallback(e=>{const{checked:t}=e.target;F(t?w.map(e=>({name:e.name,attributes:e.attributes.map(e=>e.name)})):[])},[w]),ie=p.useCallback(async()=>{try{const e=await v(J);if(0===e.length)G(null);else{console.log("CSV Data:",e);const t=e.data.map(e=>{const t={};return V.forEach(a=>{t[a]=e.attributes?.[a]??e[a]}),V.includes("id")&&(t.id=e.id),R.forEach(a=>{t[a]=e.attributes?.[a]??e[a]}),T.forEach(a=>{const n=e[a.name]?.data??e[a.name];null===n?t[a.name]=null:Array.isArray(n)?t[a.name]=n.map(e=>Object.values(e.attributes??e).join(" | ")).join(" | "):t[a.name]=Object.values(n.attributes??n).join(" | ")}),t});G(t)}}catch(e){console.error("Error fetching CSV data:",e),G(null)}},[J,V,T,R,v]);return p.useEffect(()=>{L&&H.current&&setTimeout(()=>{H.current?.link?.click(),G(null)})},[L]),p.useEffect(()=>{N(C.default.stringify({fields:[...V,...R],filters:{[I]:{$between:[f.default(E).format("YYYY-MM-DD"),f.default(A).format("YYYY-MM-DD")]}},populate:T.reduce((e,t)=>(e[t.name]={fields:t.attributes},e),{})},{encodeValuesOnly:!0}))},[V,T,E,A,I]),e.jsx(t,{sx:{width:"100%",p:2},children:e.jsx(x.LocalizationProvider,{dateAdapter:h.AdapterDayjs,children:e.jsxs(r,{container:!0,spacing:2,children:[$&&e.jsxs(e.Fragment,{children:[e.jsxs(r,{item:!0,xs:12,children:[e.jsx(i,{direction:"row",justifyContent:"flex-end",children:e.jsx(s,{"aria-label":"expand row",size:"small",onClick:()=>_(!$),children:$?e.jsx(b,{}):e.jsx(g,{})})}),e.jsx(c,{})]}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",justifyContent:"space-between",children:[e.jsx(a,{variant:"h6",children:"Attributes"}),e.jsx(l,{checked:y.length===V.length,indeterminate:y.length!==V.length&&V.length>0,sx:{"& .MuiSvgIcon-root":{fontSize:28}},onChange:te})]})}),y.map(t=>e.jsx(r,{item:!0,xs:4,children:e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:t.name,checked:V.includes(t.name),onChange:Q}),e.jsx(a,{children:t.label})]})},t.name)),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",justifyContent:"space-between",children:[e.jsx(a,{variant:"h6",children:"Relations"}),e.jsx(l,{checked:w.length===T.length,indeterminate:w.length!==T.length&&T.length>0,sx:{"& .MuiSvgIcon-root":{fontSize:28}},onChange:ne})]})}),w.map(t=>{const n=B.includes(t.name),u=T.some(e=>e.name===t.name),o=u&&T.some(e=>e.name===t.name&&e.attributes.length!==t.attributes.length);return e.jsxs(r,{item:!0,xs:12,children:[e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:t.name,checked:u,indeterminate:o,onChange:X}),e.jsx(a,{children:t.label}),e.jsx(s,{name:t.name,onClick:()=>ee(t.name),children:n?e.jsx(g,{}):e.jsx(b,{})})]}),e.jsx(c,{}),e.jsx(d,{in:n,children:e.jsx(r,{container:!0,sx:{pl:2},children:t.attributes.map(n=>e.jsx(r,{item:!0,xs:3,children:e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:`${n.name}|${t.name}`,checked:T.some(e=>e.name===t.name&&e.attributes.includes(n.name)),onChange:Z,size:"small"}),e.jsx(a,{variant:"body2",children:n.label})]})},n.name))})})]},t.name)}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",justifyContent:"space-between",children:[e.jsx(a,{variant:"h6",children:"Creation, Publication and Update"}),e.jsx(l,{checked:S.length===R.length,indeterminate:S.length!==R.length&&R.length>0,sx:{"& .MuiSvgIcon-root":{fontSize:28}},onChange:ae})]})}),S.map(t=>e.jsx(r,{item:!0,xs:4,children:e.jsxs(i,{spacing:1,direction:"row",sx:{alignItems:"center"},children:[e.jsx(l,{name:t.name,checked:R.includes(t.name),onChange:W}),e.jsx(a,{children:t.label})]})},t.name)),e.jsx(r,{item:!0,xs:12,children:e.jsx(a,{variant:"h6",children:"Select date range"})}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",spacing:2,children:[e.jsx(u,{value:I,options:Y,multiple:!1,onChange:(e,t)=>z(t),renderInput:t=>e.jsx(o,{...t,label:"Date Type"}),sx:{width:300},disableClearable:!0}),e.jsx(j.DatePicker,{value:E,label:"start date",onChange:e=>e&&P(e)}),e.jsx(j.DatePicker,{value:A,label:"end date",onChange:e=>e&&M(e)})]})})]}),e.jsx(r,{item:!0,xs:12,children:e.jsxs(i,{direction:"row",spacing:2,sx:{justifyContent:"space-between"},children:[e.jsxs(p.Fragment,{children:[e.jsx(n,{variant:"contained",disabled:0===V.length&&0===T.length,onClick:ie,children:"Export CSV"}),L&&e.jsx(m.reactCsv.CSVLink,{data:L,filename:`${f.default(E).format("DD-MM-YYYY")}_${f.default(A).format("DD-MM-YYYY")}/${I}_${D}-export.csv`,ref:H})]}),e.jsx(s,{"aria-label":"expand row",size:"small",onClick:()=>_(!$),children:$?e.jsx(b,{}):e.jsx(g,{})})]})})]})})})};