@devgateway/dvz-ui-react 1.7.8 → 1.7.9
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const h=require("react/jsx-runtime"),i=require("react"),ce=require("semantic-ui-react"),s=require("../../utils/data.js"),ue=require("../../redux/hooks.js"),ye=require("react-redux"),de=require("./CategoricalFilter.js"),pe=require("./YearFilter.js"),R=require("react-intl"),Fe=q=>{const{"data-alphabetical-sort":v,"data-asc-order":M,"data-group":c,"data-placeholder":C,"data-all-label":T,"data-none-label":B,"data-use-single-column":j,"data-enable-text-search":D,"data-filter-type":p,"data-show-no-data-option":P,"data-close-on-select":z,"data-all-none-same-behaviour":J,"data-auto-apply":K,"data-taxonomy":u,"data-categories":F="[]","data-is-country-filter":U,"data-is-year-filter":k,"data-type":$,"data-sort-first-by":b,"data-default-values":G="[]","data-wordpress-source-type":me,"data-wordpress-source":O,editing:x=!1}=q,d=ue.useAppDispatch(),{locale:H}=R.useIntl(),t=ye.useSelector(e=>e.getIn(["data","posts",c]))||{},a=p==="multi-select",[N,fe]=i.useState(0),V=e=>x?e:decodeURIComponent(e),A=e=>{try{return JSON.parse(V(e))}catch(o){return console.warn("JSON parsing failed for value:",e,"- treating as plain string. Error:",o),V(e)}};let l=A(G);l||(l=[]),typeof l=="string"&&(l=l.split(",").map(Number)),typeof l=="number"&&(l=[l]);const Q=s.toBoolean(v),W=s.toBoolean(M),I=s.toBoolean(P),_=s.toBoolean(z),w=s.toBoolean(J),Y=s.toBoolean(K),r=s.toBoolean(U),n=s.toBoolean(k),E=s.toBoolean(j),L=s.toBoolean(D),g=b!=="none"?s.toNumber(b):null,[y,X]=i.useState([]),[m,Z]=i.useState(!1),S=(e,o)=>o?Array.isArray(e)?e:e!=null?[e]:[]:e||void 0,ee=i.useMemo(()=>S(t.countryFilter,a),[t.countryFilter,a]),te=i.useMemo(()=>S(t.categoryFilter,a),[t.categoryFilter,a]),re=i.useMemo(()=>n?S(t.yearFilter,a):void 0,[t.yearFilter,a,n]),f=i.useMemo(()=>{if(!F)return[];const e=A(F);return Array.isArray(e)?e:typeof e=="string"?e.split(",").filter(Boolean):[]},[F,x]),oe=e=>{d({type:"SET_POSTS_FILTER",group:c,...t,isYearFilter:n,yearFilter:n?e:null,isCountryFilter:r,categoryFilter:t.categoryFilter,countryFilter:t.countryFilter,sortFirstBy:g})},ae=e=>{d({type:"SET_POSTS_FILTER",group:c,...t,categoryFilter:r?t.categoryFilter:e,countryFilter:r?e:t.countryFilter,isYearFilter:t.isYearFilter,yearFilter:t.yearFilter,isCountryFilter:t.isCountryFilter,sortFirstBy:r?g:t.sortFirstBy,countryCategory:r?u:t.countryCategory,categoryCategory:r?t.categoryCategory:e,categoryTaxonomy:r?t.categoryTaxonomy:u,countryTaxonomy:r?u:t.countryTaxonomy})};return i.useEffect(()=>{const e=l.length>0,o=a?l:l[0],le=r?t.categoryFilter:e?o:a?f.map(Number):t.categoryFilter,ne=r?e?o:a?f.map(Number):t.countryFilter:t.countryFilter,se=n&&a?y.length>0?y.map(ie=>ie.value):[]:t.yearFilter;d({type:"SET_INITIAL_POSTS_FILTER",group:c,categoryFilter:le,countryFilter:ne,isYearFilter:n,isCountryFilter:r,sortFirstBy:g,yearFilter:n?se:null,categoryCategory:r?null:t.categoryCategory,categoryTaxonomy:r?null:u,countryCategory:r?u:null,countryTaxonomy:r?u:null,page:1})},[]),i.useEffect(()=>{if(n&&!m&&a&&y.length>0){const e=y.map(o=>o.value);d({type:"SET_INITIAL_POSTS_FILTER",group:c,isYearFilter:n,yearFilter:e})}},[m]),h.jsxs(ce.Container,{fluid:!0,className:"filter post-filter",children:[n&&h.jsx(pe.default,{group:c,placeholder:C,allLabel:T,noneLabel:B,useSingleColumn:E,enableTextSearch:L,filterType:p,showNoDataOption:I,closeOnSelect:_,allNoneSameBehaviour:w,autoApply:Y,alphabeticalSort:Q,ascOrder:W,options:y,value:re,yearOptions:y,setYearOptions:X,yearFilterLoading:m,setYearFilterLoading:Z,onChange:(e,o)=>{oe(o)},resetKey:N,wpApiBase:O??void 0}),!n&&h.jsx(de.default,{group:c,placeholder:C,allLabel:T,noneLabel:B,useSingleColumn:E,enableTextSearch:L,filterType:p,showNoDataOption:I,closeOnSelect:_,allNoneSameBehaviour:w,autoApply:Y,taxonomy:u,type:$,value:r?ee:te,onChange:(e,o)=>{ae(o)},categories:f,resetKey:N,wpApiBase:O??void 0,locale:H},`cat-${c}`)]})},ge=R.injectIntl(i.memo(Fe));exports.default=ge;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const A=require("./data-api.js"),J=require("immutable"),V=require("papaparse");function H(r){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const s in r)if(s!=="default"){const e=Object.getOwnPropertyDescriptor(r,s);Object.defineProperty(a,s,e.get?e:{enumerable:!0,get:()=>r[s]})}}return a.default=r,Object.freeze(a)}const d=H(J),O="LOAD_DATA",m="LOAD_DATA_DONE",F="LOAD_DATA_ERROR",D="LOAD_CATEGORIES",R="LOAD_CATEGORIES_DONE",L="LOAD_CATEGORIES_ERROR",P="SET_PAGE_MODULE_PROPS",h="RELOAD_CHILD_FILTER_ITEMS",N="SET_FILTER",Y="SET_FILTERS",C="SET_INITIAL_FILTER",M="SET_APPLY",w="CLEAN_FILTER",b="UNSET_FILTER",B=d.Map({mode:"info"}),v="SET_MEASURES",U="CLEAN_MEASURES",K="SET_POSTS_PAGINATION",Q="SET_POSTS_FILTER",G="SET_INITIAL_POSTS_FILTER",W=({app:r,group:a})=>(s,e)=>{s({type:U,app:r,group:a})},X=({app:r,group:a,mGroup:s})=>(e,t)=>{const l=Object.keys(s.measures).filter(o=>s.measures[o].selected),n={...s};n[r]={measures:{}},l.forEach(o=>{n[r].measures[o]={...s.measures[o]}}),n[r].format=s.format,e({type:v,app:r,group:a,measure:n})},Z=({app:r,type:a,group:s,param:e,autoApply:t,params:l,parentParam:n,parentType:o,parentSelectedItems:i,uniqueStorage:I,dvzProxyDatasetId:p})=>(g,u)=>{const f={...l};f[n]=i,A.getCategory({app:r,params:f,type:a}).then(E=>{g({type:h,filterType:a,parentType:o,param:e,app:r,group:s,data:E,uniqueStorage:I,dvzProxyDatasetId:p,autoApply:t})})},$=r=>(a,s)=>{const{app:e,group:t,param:l,value:n,autoApply:o,parent:i}=r;console.log("set filters"),a({type:N,app:e,group:t,param:l,value:n,autoApply:o,parent:i})},k=({app:r,group:a})=>(s,e)=>{s({type:w,app:r,group:a})},ee=({app:r,group:a,param:s,parent:e})=>(t,l)=>{t({type:b,app:r,group:a,param:s,parent:e})},te=({app:r,group:a})=>(s,e)=>{s({type:M,app:r,group:a})},se=({app:r,group:a,param:s,value:e})=>(t,l)=>{t({type:C,app:r,group:a,param:s,value:e})},re=r=>(a,s)=>{const{app:e,params:t,dvzProxyDatasetId:l,uniqueStorage:n}=r;a({type:D,params:t,app:e,uniqueStorage:n,dvzProxyDatasetId:l}),A.getCategories({app:e,params:t}).then(o=>(o.appliedFilters=t,a({type:R,app:e,data:o,uniqueStorage:n,dvzProxyDatasetId:l}))).catch(o=>a({type:L,app:e,uniqueStorage:n,error:o,dvzProxyDatasetId:l}))},ne=({app:r,group:a,csv:s,store:e,params:t})=>(l,n)=>{const o=n().get("data").getIn(["filters",r,a]);o?t={...t,...o.toJS()}:t=t||{};const i=V.parse(s,{header:!0,dynamicTyping:!0}),I=i.data.filter(g=>{let u=!1;return Object.keys(t).forEach(f=>{const E=t[f];if(g[f]){const S=g[f].toString().trim().toLowerCase();u=E.filter(_=>_&&_.toString().trim().toLowerCase()==S).length==0}}),!u}),p={...i,data:I,appliedFilters:t};l({type:m,app:r,group:a,store:e,data:{count:p.data.length,itemsSize:p.data.length,...p}})},ae=r=>(a,s)=>{const{app:e,group:t,source:l,store:n,params:o,parent:i}=r;let I=s().get("data").getIn(["filters",e,t]);i&&o&&Object.keys(o).forEach(u=>{if(I&&I.has(u)){let f=o[u],S=I.get(u).filter(_=>f.indexOf(_)>-1);I=I.set(u,S)}});let p={...o};I&&(p={...p,...I.toJS()}),a({type:O,app:e,group:t,params:p,store:n}),A.getData({app:e,source:l,params:p}).then(g=>(g.appliedFilters=p,a({type:m,app:e,group:t,store:n,data:g,params:p}))).catch(g=>a({type:F,app:e,group:t,store:n,error:g}))},le=({data:r})=>(a,s)=>{a({type:P,data:r})},oe=(r=B,a)=>{switch(a.type){case O:{const{store:s,app:e,group:t,params:l}=a,n=Date.now();return r.deleteIn([...s,"error"]).setIn([...s,"loading"],!0).setIn([...s,"time"],n).setIn([...s,"presetFilter"],l)}case F:{const{error:s,store:e,app:t,group:l}=a;return r.setIn([...e,"loading"],!1).setIn([...e,"error"],s).setIn(["filters-settings",t,l,"apply"],null)}case m:{const{data:s,app:e,group:t,store:l}=a;return r.setIn([...l,"loading"],!1).deleteIn([...l,"error"]).setIn([...l,"data"],s).setIn(["filters-settings",e,t,"apply"],null)}case P:{const{data:s}=a;return r.setIn(["pageModuleProps"],s)}case D:{const{data:s,app:e,uniqueStorage:t,dvzProxyDatasetId:l}=a,n=["categories",e];return t&&n.push(t),l&&n.push(l),r.setIn([...n,"loading"],!0).deleteIn([...n,"error"])}case R:{const{data:s,app:e,uniqueStorage:t,dvzProxyDatasetId:l}=a,n=["categories",e];return l&&n.push(l),t&&n.push(t),r.setIn([...n,"loading"],!1).setIn([...n,"items"],d.fromJS(s))}case L:{const{data:s,app:e,uniqueStorage:t,dvzProxyDatasetId:l}=a,n=["categories",e];return t&&n.push(t),l&&n.push(l),r.setIn([...n,"loading"],!1).setIn([...n,"error"],s)}case M:{const{app:s,group:e}=a;return r.setIn(["filters-settings",s,e,"apply"],new Date().getTime())}case N:{const s=Date.now(),{app:e,group:t,param:l,value:n,autoApply:o,parent:i}=a;return r.setIn(["filters-settings",e,t,"autoApply"],o).setIn(["filters",e,t,l],n.length===0?[Number.MIN_SAFE_INTEGER]:n).setIn(["filters-settings",e,t,"apply"],null).setIn(["filters-settings",e,t,"lastUserFilterChange"],s).setIn(["filters-settings",e,t,"parent"],i||null)}case Y:{const s=Date.now(),{app:e,group:t,filters:l,autoApply:n}=a;return r.setIn(["filters-settings",e,t,"autoApply"],n).setIn(["filters",e,t,param],value.length===0?[Number.MIN_SAFE_INTEGER]:value).setIn(["filters-settings",e,t,"apply"],null).setIn(["filters-settings",e,t,"lastUserFilterChange"],s)}case h:{const{data:s,app:e,group:t,param:l,uniqueStorage:n,dvzProxyDatasetId:o,filterType:i,parentType:I,autoApply:p}=a,g=Date.now(),u=["categories",e];o&&u.push(o),n&&u.push(n);const f=s.filter(c=>c.type==i),S=r.getIn([...u,"items"]).filter(c=>c.get("type")==i).get(0).get("items").map(c=>c.value),x=r.getIn([...u,"items"]).filter(c=>c.get("type")!=i).push(d.Map(f[0])),j=r.getIn(["filters",e,t,l]),y=s[0].items.map(c=>c.value),q=j.filter(c=>y.indexOf(c)>-1),z=y.filter(c=>S.indexOf(c)==-1),T=Array.from(new Set([...q,...z]));return r.setIn([...u,"items"],x).setIn(["filters",e,t,l],Array.from(T)).setIn(["filters-settings",e,t,"autoApply"],p).setIn(["filters",e,t,l],T.length===0?[Number.MIN_SAFE_INTEGER]:T).setIn(["filters-settings",e,t,"apply"],null).setIn(["filters-settings",e,t,"lastUserFilterChange"],g)}case C:{const s=Date.now(),{app:e,group:t,param:l,value:n}=a;return r.setIn(["filters","initial",e,t,l],n.length===0?[Number.MIN_SAFE_INTEGER]:n).setIn(["filters",e,t,l],n.length===0?[Number.MIN_SAFE_INTEGER]:n).setIn(["filters-settings",e,t,"lastInitialFilterChange"],s).setIn(["filters-settings",e,t,"lastUserFilterChange"],s)}case b:{const s=Date.now(),{app:e,group:t,param:l,parent:n}=a;return r.deleteIn(["filters",e,t,l]).setIn(["filters-settings",e,t,"lastUserFilterChange"],s).setIn(["filters-settings",e,t,"parent"],n||null)}case w:{const{app:s,group:e}=a,t=r.getIn(["filters","initial",s,e]);return r.setIn(["filters",s,e],t)}case v:{const{app:s,group:e,measure:t}=a;return r.setIn(["measures",s,e],t)}case U:{const{app:s,group:e,measure:t}=a;return r.deleteIn(["measures",s,e])}case K:{const{group:s,totalPages:e,totalItems:t}=a;return r.setIn(["postsPagination",s],{totalPages:e,totalItems:t})}case Q:{const{type:s,group:e,...t}=a;return r.setIn(["posts",e],t)}case G:{const{type:s,group:e,...t}=a,n={...r.getIn(["posts",e])||{}};return Object.keys(t).forEach(o=>{const i=t[o];i!=null?n[o]=i:o in n||(n[o]=i)}),r.setIn(["posts",e],n).setIn(["posts","initialFilters",e],n)}default:return r}},ie=({group:r,dispatch:a,initialFilters:s})=>{a({type:G,group:r,...s,reset:!0,page:1})};exports.applyFilter=te;exports.cleanFilter=k;exports.cleanMeasures=W;exports.clearPostsFilter=ie;exports.default=oe;exports.getCategories=re;exports.getData=ae;exports.loadFilterItems=Z;exports.setData=ne;exports.setFilter=$;exports.setInitialFilters=se;exports.setMeasures=X;exports.setPageModuleProps=le;exports.unsetFilter=ee;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const A=require("./data-api.js"),J=require("immutable"),V=require("papaparse");function H(r){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const s in r)if(s!=="default"){const e=Object.getOwnPropertyDescriptor(r,s);Object.defineProperty(a,s,e.get?e:{enumerable:!0,get:()=>r[s]})}}return a.default=r,Object.freeze(a)}const d=H(J),O="LOAD_DATA",m="LOAD_DATA_DONE",F="LOAD_DATA_ERROR",D="LOAD_CATEGORIES",R="LOAD_CATEGORIES_DONE",L="LOAD_CATEGORIES_ERROR",P="SET_PAGE_MODULE_PROPS",h="RELOAD_CHILD_FILTER_ITEMS",N="SET_FILTER",Y="SET_FILTERS",C="SET_INITIAL_FILTER",M="SET_APPLY",w="CLEAN_FILTER",b="UNSET_FILTER",B=d.Map({mode:"info"}),v="SET_MEASURES",U="CLEAN_MEASURES",K="SET_POSTS_PAGINATION",Q="SET_POSTS_FILTER",G="SET_INITIAL_POSTS_FILTER",W=({app:r,group:a})=>(s,e)=>{s({type:U,app:r,group:a})},X=({app:r,group:a,mGroup:s})=>(e,t)=>{const l=Object.keys(s.measures).filter(o=>s.measures[o].selected),n={...s};n[r]={measures:{}},l.forEach(o=>{n[r].measures[o]={...s.measures[o]}}),n[r].format=s.format,e({type:v,app:r,group:a,measure:n})},Z=({app:r,type:a,group:s,param:e,autoApply:t,params:l,parentParam:n,parentType:o,parentSelectedItems:i,uniqueStorage:I,dvzProxyDatasetId:p})=>(g,u)=>{const f={...l};f[n]=i,A.getCategory({app:r,params:f,type:a}).then(E=>{g({type:h,filterType:a,parentType:o,param:e,app:r,group:s,data:E,uniqueStorage:I,dvzProxyDatasetId:p,autoApply:t})})},$=r=>(a,s)=>{const{app:e,group:t,param:l,value:n,autoApply:o,parent:i}=r;console.log("set filters"),a({type:N,app:e,group:t,param:l,value:n,autoApply:o,parent:i})},k=({app:r,group:a})=>(s,e)=>{s({type:w,app:r,group:a})},ee=({app:r,group:a,param:s,parent:e})=>(t,l)=>{t({type:b,app:r,group:a,param:s,parent:e})},te=({app:r,group:a})=>(s,e)=>{s({type:M,app:r,group:a})},se=({app:r,group:a,param:s,value:e})=>(t,l)=>{t({type:C,app:r,group:a,param:s,value:e})},re=r=>(a,s)=>{const{app:e,params:t,dvzProxyDatasetId:l,uniqueStorage:n}=r;a({type:D,params:t,app:e,uniqueStorage:n,dvzProxyDatasetId:l}),A.getCategories({app:e,params:t}).then(o=>(o.appliedFilters=t,a({type:R,app:e,data:o,uniqueStorage:n,dvzProxyDatasetId:l}))).catch(o=>a({type:L,app:e,uniqueStorage:n,error:o,dvzProxyDatasetId:l}))},ne=({app:r,group:a,csv:s,store:e,params:t})=>(l,n)=>{const o=n().get("data").getIn(["filters",r,a]);o?t={...t,...o.toJS()}:t=t||{};const i=V.parse(s,{header:!0,dynamicTyping:!0}),I=i.data.filter(g=>{let u=!1;return Object.keys(t).forEach(f=>{const E=t[f];if(g[f]){const S=g[f].toString().trim().toLowerCase();u=E.filter(_=>_&&_.toString().trim().toLowerCase()==S).length==0}}),!u}),p={...i,data:I,appliedFilters:t};l({type:m,app:r,group:a,store:e,data:{count:p.data.length,itemsSize:p.data.length,...p}})},ae=r=>(a,s)=>{const{app:e,group:t,source:l,store:n,params:o,parent:i}=r;let I=s().get("data").getIn(["filters",e,t]);i&&o&&Object.keys(o).forEach(u=>{if(I&&I.has(u)){let f=o[u],S=I.get(u).filter(_=>f.indexOf(_)>-1);I=I.set(u,S)}});let p={...o};I&&(p={...p,...I.toJS()}),a({type:O,app:e,group:t,params:p,store:n}),A.getData({app:e,source:l,params:p}).then(g=>(g.appliedFilters=p,a({type:m,app:e,group:t,store:n,data:g,params:p}))).catch(g=>a({type:F,app:e,group:t,store:n,error:g}))},le=({data:r})=>(a,s)=>{a({type:P,data:r})},oe=(r=B,a)=>{switch(a.type){case O:{const{store:s,app:e,group:t,params:l}=a,n=Date.now();return r.deleteIn([...s,"error"]).setIn([...s,"loading"],!0).setIn([...s,"time"],n).setIn([...s,"presetFilter"],l)}case F:{const{error:s,store:e,app:t,group:l}=a;return r.setIn([...e,"loading"],!1).setIn([...e,"error"],s).setIn(["filters-settings",t,l,"apply"],null)}case m:{const{data:s,app:e,group:t,store:l}=a;return r.setIn([...l,"loading"],!1).deleteIn([...l,"error"]).setIn([...l,"data"],s).setIn(["filters-settings",e,t,"apply"],null)}case P:{const{data:s}=a;return r.setIn(["pageModuleProps"],s)}case D:{const{data:s,app:e,uniqueStorage:t,dvzProxyDatasetId:l}=a,n=["categories",e];return t&&n.push(t),l&&n.push(l),r.setIn([...n,"loading"],!0).deleteIn([...n,"error"])}case R:{const{data:s,app:e,uniqueStorage:t,dvzProxyDatasetId:l}=a,n=["categories",e];return l&&n.push(l),t&&n.push(t),r.setIn([...n,"loading"],!1).setIn([...n,"items"],d.fromJS(s))}case L:{const{data:s,app:e,uniqueStorage:t,dvzProxyDatasetId:l}=a,n=["categories",e];return t&&n.push(t),l&&n.push(l),r.setIn([...n,"loading"],!1).setIn([...n,"error"],s)}case M:{const{app:s,group:e}=a;return r.setIn(["filters-settings",s,e,"apply"],new Date().getTime())}case N:{const s=Date.now(),{app:e,group:t,param:l,value:n,autoApply:o,parent:i}=a;return r.setIn(["filters-settings",e,t,"autoApply"],o).setIn(["filters",e,t,l],n.length===0?[Number.MIN_SAFE_INTEGER]:n).setIn(["filters-settings",e,t,"apply"],null).setIn(["filters-settings",e,t,"lastUserFilterChange"],s).setIn(["filters-settings",e,t,"parent"],i||null)}case Y:{const s=Date.now(),{app:e,group:t,filters:l,autoApply:n}=a;return r.setIn(["filters-settings",e,t,"autoApply"],n).setIn(["filters",e,t,param],value.length===0?[Number.MIN_SAFE_INTEGER]:value).setIn(["filters-settings",e,t,"apply"],null).setIn(["filters-settings",e,t,"lastUserFilterChange"],s)}case h:{const{data:s,app:e,group:t,param:l,uniqueStorage:n,dvzProxyDatasetId:o,filterType:i,parentType:I,autoApply:p}=a,g=Date.now(),u=["categories",e];o&&u.push(o),n&&u.push(n);const f=s.filter(c=>c.type==i),S=r.getIn([...u,"items"]).filter(c=>c.get("type")==i).get(0).get("items").map(c=>c.value),x=r.getIn([...u,"items"]).filter(c=>c.get("type")!=i).push(d.Map(f[0])),j=r.getIn(["filters",e,t,l]),y=s[0].items.map(c=>c.value),q=j.filter(c=>y.indexOf(c)>-1),z=y.filter(c=>S.indexOf(c)==-1),T=Array.from(new Set([...q,...z]));return r.setIn([...u,"items"],x).setIn(["filters",e,t,l],Array.from(T)).setIn(["filters-settings",e,t,"autoApply"],p).setIn(["filters",e,t,l],T.length===0?[Number.MIN_SAFE_INTEGER]:T).setIn(["filters-settings",e,t,"apply"],null).setIn(["filters-settings",e,t,"lastUserFilterChange"],g)}case C:{const s=Date.now(),{app:e,group:t,param:l,value:n}=a;return r.setIn(["filters","initial",e,t,l],n.length===0?[Number.MIN_SAFE_INTEGER]:n).setIn(["filters",e,t,l],n.length===0?[Number.MIN_SAFE_INTEGER]:n).setIn(["filters-settings",e,t,"lastInitialFilterChange"],s).setIn(["filters-settings",e,t,"lastUserFilterChange"],s)}case b:{const s=Date.now(),{app:e,group:t,param:l,parent:n}=a;return r.deleteIn(["filters",e,t,l]).setIn(["filters-settings",e,t,"lastUserFilterChange"],s).setIn(["filters-settings",e,t,"parent"],n||null)}case w:{const{app:s,group:e}=a,t=r.getIn(["filters","initial",s,e]);return r.setIn(["filters",s,e],t)}case v:{const{app:s,group:e,measure:t}=a;return r.setIn(["measures",s,e],t)}case U:{const{app:s,group:e,measure:t}=a;return r.deleteIn(["measures",s,e])}case K:{const{group:s,totalPages:e,totalItems:t}=a;return r.setIn(["postsPagination",s],{totalPages:e,totalItems:t})}case Q:{const{type:s,group:e,...t}=a;return r.setIn(["posts",e],t)}case G:{const{type:s,group:e,...t}=a;if(t.reset){const{reset:o,...i}=t;return r.setIn(["posts",e],i).setIn(["posts","initialFilters",e],r.getIn(["posts","initialFilters",e]))}const n={...r.getIn(["posts",e])||{}};return Object.keys(t).forEach(o=>{const i=t[o];i!=null?n[o]=i:o in n||(n[o]=i)}),r.setIn(["posts",e],n).setIn(["posts","initialFilters",e],n)}default:return r}},ie=({group:r,dispatch:a,initialFilters:s})=>{a({type:G,group:r,...s,reset:!0,page:1})};exports.applyFilter=te;exports.cleanFilter=k;exports.cleanMeasures=W;exports.clearPostsFilter=ie;exports.default=oe;exports.getCategories=re;exports.getData=ae;exports.loadFilterItems=Z;exports.setData=ne;exports.setFilter=$;exports.setInitialFilters=se;exports.setMeasures=X;exports.setPageModuleProps=le;exports.unsetFilter=ee;
|
|
@@ -1,175 +1,175 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import
|
|
3
|
-
import { Container as
|
|
4
|
-
import { toBoolean as i, toNumber as
|
|
1
|
+
import { jsxs as ye, jsx as R } from "react/jsx-runtime";
|
|
2
|
+
import ue, { useState as h, useMemo as p, useEffect as v } from "react";
|
|
3
|
+
import { Container as pe } from "semantic-ui-react";
|
|
4
|
+
import { toBoolean as i, toNumber as de } from "../../utils/data.js";
|
|
5
5
|
import { useAppDispatch as Fe } from "../../redux/hooks.js";
|
|
6
|
-
import { useSelector as
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import { injectIntl as
|
|
10
|
-
const
|
|
6
|
+
import { useSelector as me } from "react-redux";
|
|
7
|
+
import ge from "./CategoricalFilter.js";
|
|
8
|
+
import fe from "./YearFilter.js";
|
|
9
|
+
import { injectIntl as Se, useIntl as he } from "react-intl";
|
|
10
|
+
const Ce = (D) => {
|
|
11
11
|
const {
|
|
12
|
-
"data-alphabetical-sort":
|
|
13
|
-
"data-asc-order":
|
|
12
|
+
"data-alphabetical-sort": P,
|
|
13
|
+
"data-asc-order": z,
|
|
14
14
|
"data-group": s,
|
|
15
15
|
"data-placeholder": C,
|
|
16
16
|
"data-all-label": T,
|
|
17
17
|
"data-none-label": b,
|
|
18
|
-
"data-use-single-column":
|
|
19
|
-
"data-enable-text-search":
|
|
20
|
-
"data-filter-type":
|
|
21
|
-
"data-show-no-data-option":
|
|
22
|
-
"data-close-on-select":
|
|
23
|
-
"data-all-none-same-behaviour":
|
|
24
|
-
"data-auto-apply":
|
|
18
|
+
"data-use-single-column": j,
|
|
19
|
+
"data-enable-text-search": J,
|
|
20
|
+
"data-filter-type": d,
|
|
21
|
+
"data-show-no-data-option": K,
|
|
22
|
+
"data-close-on-select": M,
|
|
23
|
+
"data-all-none-same-behaviour": U,
|
|
24
|
+
"data-auto-apply": $,
|
|
25
25
|
"data-taxonomy": c,
|
|
26
|
-
"data-categories":
|
|
27
|
-
"data-is-country-filter":
|
|
28
|
-
"data-is-year-filter":
|
|
29
|
-
"data-type":
|
|
26
|
+
"data-categories": F = "[]",
|
|
27
|
+
"data-is-country-filter": k,
|
|
28
|
+
"data-is-year-filter": q,
|
|
29
|
+
"data-type": G,
|
|
30
30
|
"data-sort-first-by": O,
|
|
31
|
-
"data-default-values":
|
|
32
|
-
"data-wordpress-source-type":
|
|
31
|
+
"data-default-values": H = "[]",
|
|
32
|
+
"data-wordpress-source-type": Te,
|
|
33
33
|
"data-wordpress-source": x,
|
|
34
|
-
editing:
|
|
35
|
-
} =
|
|
36
|
-
let n = ((t) => {
|
|
34
|
+
editing: N = !1
|
|
35
|
+
} = D, u = Fe(), { locale: Q } = he(), t = me((e) => e.getIn(["data", "posts", s])) || {}, o = d === "multi-select", [V, Oe] = h(0), A = (e) => N ? e : decodeURIComponent(e), B = (e) => {
|
|
37
36
|
try {
|
|
38
|
-
return JSON.parse(
|
|
39
|
-
} catch (
|
|
40
|
-
return console.warn("JSON parsing failed for value:",
|
|
37
|
+
return JSON.parse(A(e));
|
|
38
|
+
} catch (a) {
|
|
39
|
+
return console.warn("JSON parsing failed for value:", e, "- treating as plain string. Error:", a), A(e);
|
|
41
40
|
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
() => f(e.categoryFilter, l),
|
|
49
|
-
[e.categoryFilter, l]
|
|
41
|
+
};
|
|
42
|
+
let l = B(H);
|
|
43
|
+
l || (l = []), typeof l == "string" && (l = l.split(",").map(Number)), typeof l == "number" && (l = [l]);
|
|
44
|
+
const W = i(P), X = i(z), I = i(K), w = i(M), Y = i(U), _ = i($), r = i(k), n = i(q), E = i(j), L = i(J), m = O !== "none" ? de(O) : null, [y, Z] = h([]), [g, ee] = h(!1), f = (e, a) => a ? Array.isArray(e) ? e : e != null ? [e] : [] : e || void 0, te = p(
|
|
45
|
+
() => f(t.countryFilter, o),
|
|
46
|
+
[t.countryFilter, o]
|
|
50
47
|
), re = p(
|
|
51
|
-
() =>
|
|
52
|
-
[
|
|
53
|
-
),
|
|
54
|
-
() =>
|
|
55
|
-
[
|
|
56
|
-
),
|
|
48
|
+
() => f(t.categoryFilter, o),
|
|
49
|
+
[t.categoryFilter, o]
|
|
50
|
+
), ae = p(
|
|
51
|
+
() => n ? f(t.yearFilter, o) : void 0,
|
|
52
|
+
[t.yearFilter, o, n]
|
|
53
|
+
), S = p(() => {
|
|
54
|
+
if (!F) return [];
|
|
55
|
+
const e = B(F);
|
|
56
|
+
return Array.isArray(e) ? e : typeof e == "string" ? e.split(",").filter(Boolean) : [];
|
|
57
|
+
}, [F, N]), oe = (e) => {
|
|
57
58
|
u({
|
|
58
59
|
type: "SET_POSTS_FILTER",
|
|
59
60
|
group: s,
|
|
60
|
-
...
|
|
61
|
-
isYearFilter:
|
|
62
|
-
yearFilter:
|
|
61
|
+
...t,
|
|
62
|
+
isYearFilter: n,
|
|
63
|
+
yearFilter: n ? e : null,
|
|
63
64
|
isCountryFilter: r,
|
|
64
|
-
categoryFilter:
|
|
65
|
-
countryFilter:
|
|
65
|
+
categoryFilter: t.categoryFilter,
|
|
66
|
+
countryFilter: t.countryFilter,
|
|
66
67
|
sortFirstBy: m
|
|
67
68
|
});
|
|
68
|
-
},
|
|
69
|
+
}, le = (e) => {
|
|
69
70
|
u({
|
|
70
71
|
type: "SET_POSTS_FILTER",
|
|
71
72
|
group: s,
|
|
72
|
-
...
|
|
73
|
+
...t,
|
|
73
74
|
// Preserve both filters so they can work together
|
|
74
|
-
categoryFilter: r ?
|
|
75
|
-
countryFilter: r ?
|
|
76
|
-
isYearFilter:
|
|
77
|
-
yearFilter:
|
|
78
|
-
isCountryFilter:
|
|
79
|
-
sortFirstBy: r ? m :
|
|
80
|
-
countryCategory: r ? c :
|
|
81
|
-
categoryCategory: r ?
|
|
82
|
-
categoryTaxonomy: r ?
|
|
83
|
-
countryTaxonomy: r ? c :
|
|
75
|
+
categoryFilter: r ? t.categoryFilter : e,
|
|
76
|
+
countryFilter: r ? e : t.countryFilter,
|
|
77
|
+
isYearFilter: t.isYearFilter,
|
|
78
|
+
yearFilter: t.yearFilter,
|
|
79
|
+
isCountryFilter: t.isCountryFilter,
|
|
80
|
+
sortFirstBy: r ? m : t.sortFirstBy,
|
|
81
|
+
countryCategory: r ? c : t.countryCategory,
|
|
82
|
+
categoryCategory: r ? t.categoryCategory : e,
|
|
83
|
+
categoryTaxonomy: r ? t.categoryTaxonomy : c,
|
|
84
|
+
countryTaxonomy: r ? c : t.countryTaxonomy
|
|
84
85
|
});
|
|
85
86
|
};
|
|
86
|
-
return
|
|
87
|
-
const
|
|
87
|
+
return v(() => {
|
|
88
|
+
const e = l.length > 0, a = o ? l : l[0], ne = r ? t.categoryFilter : e ? a : o ? S.map(Number) : t.categoryFilter, ie = r ? e ? a : o ? S.map(Number) : t.countryFilter : t.countryFilter, se = n && o ? y.length > 0 ? y.map((ce) => ce.value) : [] : t.yearFilter;
|
|
88
89
|
u({
|
|
89
90
|
type: "SET_INITIAL_POSTS_FILTER",
|
|
90
91
|
group: s,
|
|
91
|
-
categoryFilter:
|
|
92
|
-
countryFilter:
|
|
93
|
-
isYearFilter:
|
|
92
|
+
categoryFilter: ne,
|
|
93
|
+
countryFilter: ie,
|
|
94
|
+
isYearFilter: n,
|
|
94
95
|
isCountryFilter: r,
|
|
95
96
|
sortFirstBy: m,
|
|
96
|
-
yearFilter:
|
|
97
|
-
categoryCategory: r ? null :
|
|
97
|
+
yearFilter: n ? se : null,
|
|
98
|
+
categoryCategory: r ? null : t.categoryCategory,
|
|
98
99
|
categoryTaxonomy: r ? null : c,
|
|
99
100
|
countryCategory: r ? c : null,
|
|
100
101
|
countryTaxonomy: r ? c : null,
|
|
101
102
|
page: 1
|
|
102
103
|
});
|
|
103
|
-
}, []),
|
|
104
|
-
if (
|
|
105
|
-
const
|
|
104
|
+
}, []), v(() => {
|
|
105
|
+
if (n && !g && o && y.length > 0) {
|
|
106
|
+
const e = y.map((a) => a.value);
|
|
106
107
|
u({
|
|
107
108
|
type: "SET_INITIAL_POSTS_FILTER",
|
|
108
109
|
group: s,
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
yearFilter: a ? t : null
|
|
110
|
+
isYearFilter: n,
|
|
111
|
+
yearFilter: e
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
|
-
}, [g]), /* @__PURE__ */
|
|
115
|
-
|
|
116
|
-
|
|
114
|
+
}, [g]), /* @__PURE__ */ ye(pe, { fluid: !0, className: "filter post-filter", children: [
|
|
115
|
+
n && /* @__PURE__ */ R(
|
|
116
|
+
fe,
|
|
117
117
|
{
|
|
118
118
|
group: s,
|
|
119
119
|
placeholder: C,
|
|
120
120
|
allLabel: T,
|
|
121
121
|
noneLabel: b,
|
|
122
|
-
useSingleColumn:
|
|
123
|
-
enableTextSearch:
|
|
124
|
-
filterType:
|
|
122
|
+
useSingleColumn: E,
|
|
123
|
+
enableTextSearch: L,
|
|
124
|
+
filterType: d,
|
|
125
125
|
showNoDataOption: I,
|
|
126
|
-
closeOnSelect:
|
|
127
|
-
allNoneSameBehaviour:
|
|
128
|
-
autoApply:
|
|
129
|
-
alphabeticalSort:
|
|
130
|
-
ascOrder:
|
|
126
|
+
closeOnSelect: w,
|
|
127
|
+
allNoneSameBehaviour: Y,
|
|
128
|
+
autoApply: _,
|
|
129
|
+
alphabeticalSort: W,
|
|
130
|
+
ascOrder: X,
|
|
131
131
|
options: y,
|
|
132
|
-
value:
|
|
132
|
+
value: ae,
|
|
133
133
|
yearOptions: y,
|
|
134
|
-
setYearOptions:
|
|
134
|
+
setYearOptions: Z,
|
|
135
135
|
yearFilterLoading: g,
|
|
136
|
-
setYearFilterLoading:
|
|
137
|
-
onChange: (
|
|
138
|
-
|
|
136
|
+
setYearFilterLoading: ee,
|
|
137
|
+
onChange: (e, a) => {
|
|
138
|
+
oe(a);
|
|
139
139
|
},
|
|
140
|
-
resetKey:
|
|
140
|
+
resetKey: V,
|
|
141
141
|
wpApiBase: x ?? void 0
|
|
142
142
|
}
|
|
143
143
|
),
|
|
144
|
-
!
|
|
145
|
-
|
|
144
|
+
!n && /* @__PURE__ */ R(
|
|
145
|
+
ge,
|
|
146
146
|
{
|
|
147
147
|
group: s,
|
|
148
148
|
placeholder: C,
|
|
149
149
|
allLabel: T,
|
|
150
150
|
noneLabel: b,
|
|
151
|
-
useSingleColumn:
|
|
152
|
-
enableTextSearch:
|
|
153
|
-
filterType:
|
|
151
|
+
useSingleColumn: E,
|
|
152
|
+
enableTextSearch: L,
|
|
153
|
+
filterType: d,
|
|
154
154
|
showNoDataOption: I,
|
|
155
|
-
closeOnSelect:
|
|
156
|
-
allNoneSameBehaviour:
|
|
157
|
-
autoApply:
|
|
155
|
+
closeOnSelect: w,
|
|
156
|
+
allNoneSameBehaviour: Y,
|
|
157
|
+
autoApply: _,
|
|
158
158
|
taxonomy: c,
|
|
159
|
-
type:
|
|
160
|
-
value: r ?
|
|
161
|
-
onChange: (
|
|
162
|
-
|
|
159
|
+
type: G,
|
|
160
|
+
value: r ? te : re,
|
|
161
|
+
onChange: (e, a) => {
|
|
162
|
+
le(a);
|
|
163
163
|
},
|
|
164
164
|
categories: S,
|
|
165
|
-
resetKey:
|
|
165
|
+
resetKey: V,
|
|
166
166
|
wpApiBase: x ?? void 0,
|
|
167
|
-
locale:
|
|
167
|
+
locale: Q
|
|
168
168
|
},
|
|
169
169
|
`cat-${s}`
|
|
170
170
|
)
|
|
171
171
|
] });
|
|
172
|
-
}, Ee =
|
|
172
|
+
}, Ee = Se(ue.memo(Ce));
|
|
173
173
|
export {
|
|
174
174
|
Ee as default
|
|
175
175
|
};
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { getData as j, getCategory as J, getCategories as V } from "./data-api.js";
|
|
2
2
|
import * as A from "immutable";
|
|
3
3
|
import H from "papaparse";
|
|
4
|
-
const y = "LOAD_DATA", d = "LOAD_DATA_DONE", O = "LOAD_DATA_ERROR", R = "LOAD_CATEGORIES", L = "LOAD_CATEGORIES_DONE", D = "LOAD_CATEGORIES_ERROR", F = "SET_PAGE_MODULE_PROPS", h = "RELOAD_CHILD_FILTER_ITEMS", N = "SET_FILTER", Y = "SET_FILTERS", P = "SET_INITIAL_FILTER", C = "SET_APPLY", w = "CLEAN_FILTER", M = "UNSET_FILTER", $ = A.Map({ mode: "info" }), v = "SET_MEASURES", U = "CLEAN_MEASURES", B = "SET_POSTS_PAGINATION", K = "SET_POSTS_FILTER", b = "SET_INITIAL_POSTS_FILTER", X = ({ app:
|
|
5
|
-
s({ type: U, app:
|
|
6
|
-
}, Z = ({ app:
|
|
7
|
-
const o = Object.keys(s.measures).filter((l) => s.measures[l].selected),
|
|
8
|
-
r
|
|
9
|
-
r
|
|
10
|
-
}), r
|
|
11
|
-
}, k = ({ app:
|
|
4
|
+
const y = "LOAD_DATA", d = "LOAD_DATA_DONE", O = "LOAD_DATA_ERROR", R = "LOAD_CATEGORIES", L = "LOAD_CATEGORIES_DONE", D = "LOAD_CATEGORIES_ERROR", F = "SET_PAGE_MODULE_PROPS", h = "RELOAD_CHILD_FILTER_ITEMS", N = "SET_FILTER", Y = "SET_FILTERS", P = "SET_INITIAL_FILTER", C = "SET_APPLY", w = "CLEAN_FILTER", M = "UNSET_FILTER", $ = A.Map({ mode: "info" }), v = "SET_MEASURES", U = "CLEAN_MEASURES", B = "SET_POSTS_PAGINATION", K = "SET_POSTS_FILTER", b = "SET_INITIAL_POSTS_FILTER", X = ({ app: r, group: a }) => (s, e) => {
|
|
5
|
+
s({ type: U, app: r, group: a });
|
|
6
|
+
}, Z = ({ app: r, group: a, mGroup: s }) => (e, t) => {
|
|
7
|
+
const o = Object.keys(s.measures).filter((l) => s.measures[l].selected), n = { ...s };
|
|
8
|
+
n[r] = { measures: {} }, o.forEach((l) => {
|
|
9
|
+
n[r].measures[l] = { ...s.measures[l] };
|
|
10
|
+
}), n[r].format = s.format, e({ type: v, app: r, group: a, measure: n });
|
|
11
|
+
}, k = ({ app: r, type: a, group: s, param: e, autoApply: t, params: o, parentParam: n, parentType: l, parentSelectedItems: i, uniqueStorage: c, dvzProxyDatasetId: p }) => (g, I) => {
|
|
12
12
|
const E = { ...o };
|
|
13
|
-
E[
|
|
13
|
+
E[n] = i, J({ app: r, params: E, type: a }).then(
|
|
14
14
|
(f) => {
|
|
15
15
|
g({
|
|
16
16
|
type: h,
|
|
17
17
|
filterType: a,
|
|
18
18
|
parentType: l,
|
|
19
19
|
param: e,
|
|
20
|
-
app:
|
|
20
|
+
app: r,
|
|
21
21
|
group: s,
|
|
22
22
|
data: f,
|
|
23
23
|
uniqueStorage: c,
|
|
@@ -26,34 +26,34 @@ const y = "LOAD_DATA", d = "LOAD_DATA_DONE", O = "LOAD_DATA_ERROR", R = "LOAD_CA
|
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
28
|
);
|
|
29
|
-
}, ee = (
|
|
30
|
-
const { app: e, group: t, param: o, value:
|
|
31
|
-
console.log("set filters"), a({ type: N, app: e, group: t, param: o, value:
|
|
32
|
-
}, te = ({ app:
|
|
33
|
-
s({ type: w, app:
|
|
34
|
-
}, se = ({ app:
|
|
35
|
-
t({ type: M, app:
|
|
36
|
-
}, re = ({ app:
|
|
37
|
-
s({ type: C, app:
|
|
38
|
-
}, ne = ({ app:
|
|
39
|
-
t({ type: P, app:
|
|
40
|
-
}, ae = (
|
|
41
|
-
const { app: e, params: t, dvzProxyDatasetId: o, uniqueStorage:
|
|
42
|
-
a({ type: R, params: t, app: e, uniqueStorage:
|
|
29
|
+
}, ee = (r) => (a, s) => {
|
|
30
|
+
const { app: e, group: t, param: o, value: n, autoApply: l, parent: i } = r;
|
|
31
|
+
console.log("set filters"), a({ type: N, app: e, group: t, param: o, value: n, autoApply: l, parent: i });
|
|
32
|
+
}, te = ({ app: r, group: a }) => (s, e) => {
|
|
33
|
+
s({ type: w, app: r, group: a });
|
|
34
|
+
}, se = ({ app: r, group: a, param: s, parent: e }) => (t, o) => {
|
|
35
|
+
t({ type: M, app: r, group: a, param: s, parent: e });
|
|
36
|
+
}, re = ({ app: r, group: a }) => (s, e) => {
|
|
37
|
+
s({ type: C, app: r, group: a });
|
|
38
|
+
}, ne = ({ app: r, group: a, param: s, value: e }) => (t, o) => {
|
|
39
|
+
t({ type: P, app: r, group: a, param: s, value: e });
|
|
40
|
+
}, ae = (r) => (a, s) => {
|
|
41
|
+
const { app: e, params: t, dvzProxyDatasetId: o, uniqueStorage: n } = r;
|
|
42
|
+
a({ type: R, params: t, app: e, uniqueStorage: n, dvzProxyDatasetId: o }), V({ app: e, params: t }).then((l) => (l.appliedFilters = t, a({
|
|
43
43
|
type: L,
|
|
44
44
|
app: e,
|
|
45
45
|
data: l,
|
|
46
|
-
uniqueStorage:
|
|
46
|
+
uniqueStorage: n,
|
|
47
47
|
dvzProxyDatasetId: o
|
|
48
48
|
}))).catch((l) => a({
|
|
49
49
|
type: D,
|
|
50
50
|
app: e,
|
|
51
|
-
uniqueStorage:
|
|
51
|
+
uniqueStorage: n,
|
|
52
52
|
error: l,
|
|
53
53
|
dvzProxyDatasetId: o
|
|
54
54
|
}));
|
|
55
|
-
}, oe = ({ app:
|
|
56
|
-
const l =
|
|
55
|
+
}, oe = ({ app: r, group: a, csv: s, store: e, params: t }) => (o, n) => {
|
|
56
|
+
const l = n().get("data").getIn(["filters", r, a]);
|
|
57
57
|
l ? t = { ...t, ...l.toJS() } : t = t || {};
|
|
58
58
|
const i = H.parse(s, { header: !0, dynamicTyping: !0 }), c = i.data.filter((g) => {
|
|
59
59
|
let I = !1;
|
|
@@ -65,9 +65,9 @@ const y = "LOAD_DATA", d = "LOAD_DATA_DONE", O = "LOAD_DATA_ERROR", R = "LOAD_CA
|
|
|
65
65
|
}
|
|
66
66
|
}), !I;
|
|
67
67
|
}), p = { ...i, data: c, appliedFilters: t };
|
|
68
|
-
o({ type: d, app:
|
|
69
|
-
}, le = (
|
|
70
|
-
const { app: e, group: t, source: o, store:
|
|
68
|
+
o({ type: d, app: r, group: a, store: e, data: { count: p.data.length, itemsSize: p.data.length, ...p } });
|
|
69
|
+
}, le = (r) => (a, s) => {
|
|
70
|
+
const { app: e, group: t, source: o, store: n, params: l, parent: i } = r;
|
|
71
71
|
let c = s().get("data").getIn(["filters", e, t]);
|
|
72
72
|
i && l && Object.keys(l).forEach((I) => {
|
|
73
73
|
if (c && c.has(I)) {
|
|
@@ -76,99 +76,104 @@ const y = "LOAD_DATA", d = "LOAD_DATA_DONE", O = "LOAD_DATA_ERROR", R = "LOAD_CA
|
|
|
76
76
|
}
|
|
77
77
|
});
|
|
78
78
|
let p = { ...l };
|
|
79
|
-
c && (p = { ...p, ...c.toJS() }), a({ type: y, app: e, group: t, params: p, store:
|
|
80
|
-
}, ie = ({ data:
|
|
81
|
-
a({ type: F, data:
|
|
82
|
-
}, pe = (
|
|
79
|
+
c && (p = { ...p, ...c.toJS() }), a({ type: y, app: e, group: t, params: p, store: n }), j({ app: e, source: o, params: p }).then((g) => (g.appliedFilters = p, a({ type: d, app: e, group: t, store: n, data: g, params: p }))).catch((g) => a({ type: O, app: e, group: t, store: n, error: g }));
|
|
80
|
+
}, ie = ({ data: r }) => (a, s) => {
|
|
81
|
+
a({ type: F, data: r });
|
|
82
|
+
}, pe = (r = $, a) => {
|
|
83
83
|
switch (a.type) {
|
|
84
84
|
case y: {
|
|
85
|
-
const { store: s, app: e, group: t, params: o } = a,
|
|
86
|
-
return
|
|
85
|
+
const { store: s, app: e, group: t, params: o } = a, n = Date.now();
|
|
86
|
+
return r.deleteIn([...s, "error"]).setIn([...s, "loading"], !0).setIn([...s, "time"], n).setIn([...s, "presetFilter"], o);
|
|
87
87
|
}
|
|
88
88
|
case O: {
|
|
89
89
|
const { error: s, store: e, app: t, group: o } = a;
|
|
90
|
-
return
|
|
90
|
+
return r.setIn([...e, "loading"], !1).setIn([...e, "error"], s).setIn(["filters-settings", t, o, "apply"], null);
|
|
91
91
|
}
|
|
92
92
|
case d: {
|
|
93
93
|
const { data: s, app: e, group: t, store: o } = a;
|
|
94
|
-
return
|
|
94
|
+
return r.setIn([...o, "loading"], !1).deleteIn([...o, "error"]).setIn([...o, "data"], s).setIn(["filters-settings", e, t, "apply"], null);
|
|
95
95
|
}
|
|
96
96
|
case F: {
|
|
97
97
|
const { data: s } = a;
|
|
98
|
-
return
|
|
98
|
+
return r.setIn(["pageModuleProps"], s);
|
|
99
99
|
}
|
|
100
100
|
case R: {
|
|
101
|
-
const { data: s, app: e, uniqueStorage: t, dvzProxyDatasetId: o } = a,
|
|
102
|
-
return t &&
|
|
101
|
+
const { data: s, app: e, uniqueStorage: t, dvzProxyDatasetId: o } = a, n = ["categories", e];
|
|
102
|
+
return t && n.push(t), o && n.push(o), r.setIn([...n, "loading"], !0).deleteIn([...n, "error"]);
|
|
103
103
|
}
|
|
104
104
|
case L: {
|
|
105
|
-
const { data: s, app: e, uniqueStorage: t, dvzProxyDatasetId: o } = a,
|
|
106
|
-
return o &&
|
|
105
|
+
const { data: s, app: e, uniqueStorage: t, dvzProxyDatasetId: o } = a, n = ["categories", e];
|
|
106
|
+
return o && n.push(o), t && n.push(t), r.setIn([...n, "loading"], !1).setIn([...n, "items"], A.fromJS(s));
|
|
107
107
|
}
|
|
108
108
|
case D: {
|
|
109
|
-
const { data: s, app: e, uniqueStorage: t, dvzProxyDatasetId: o } = a,
|
|
110
|
-
return t &&
|
|
109
|
+
const { data: s, app: e, uniqueStorage: t, dvzProxyDatasetId: o } = a, n = ["categories", e];
|
|
110
|
+
return t && n.push(t), o && n.push(o), r.setIn([...n, "loading"], !1).setIn([...n, "error"], s);
|
|
111
111
|
}
|
|
112
112
|
case C: {
|
|
113
113
|
const { app: s, group: e } = a;
|
|
114
|
-
return
|
|
114
|
+
return r.setIn(["filters-settings", s, e, "apply"], (/* @__PURE__ */ new Date()).getTime());
|
|
115
115
|
}
|
|
116
116
|
case N: {
|
|
117
|
-
const s = Date.now(), { app: e, group: t, param: o, value:
|
|
118
|
-
return
|
|
117
|
+
const s = Date.now(), { app: e, group: t, param: o, value: n, autoApply: l, parent: i } = a;
|
|
118
|
+
return r.setIn(["filters-settings", e, t, "autoApply"], l).setIn(["filters", e, t, o], n.length === 0 ? [Number.MIN_SAFE_INTEGER] : n).setIn(["filters-settings", e, t, "apply"], null).setIn(["filters-settings", e, t, "lastUserFilterChange"], s).setIn(["filters-settings", e, t, "parent"], i || null);
|
|
119
119
|
}
|
|
120
120
|
case Y: {
|
|
121
|
-
const s = Date.now(), { app: e, group: t, filters: o, autoApply:
|
|
122
|
-
return
|
|
121
|
+
const s = Date.now(), { app: e, group: t, filters: o, autoApply: n } = a;
|
|
122
|
+
return r.setIn(["filters-settings", e, t, "autoApply"], n).setIn(["filters", e, t, param], value.length === 0 ? [Number.MIN_SAFE_INTEGER] : value).setIn(["filters-settings", e, t, "apply"], null).setIn(["filters-settings", e, t, "lastUserFilterChange"], s);
|
|
123
123
|
}
|
|
124
124
|
case h: {
|
|
125
|
-
const { data: s, app: e, group: t, param: o, uniqueStorage:
|
|
126
|
-
l && I.push(l),
|
|
127
|
-
const E = s.filter((u) => u.type == i), S =
|
|
128
|
-
return
|
|
125
|
+
const { data: s, app: e, group: t, param: o, uniqueStorage: n, dvzProxyDatasetId: l, filterType: i, parentType: c, autoApply: p } = a, g = Date.now(), I = ["categories", e];
|
|
126
|
+
l && I.push(l), n && I.push(n);
|
|
127
|
+
const E = s.filter((u) => u.type == i), S = r.getIn([...I, "items"]).filter((u) => u.get("type") == i).get(0).get("items").map((u) => u.value), x = r.getIn([...I, "items"]).filter((u) => u.get("type") != i).push(A.Map(E[0])), G = r.getIn(["filters", e, t, o]), m = s[0].items.map((u) => u.value), z = G.filter((u) => m.indexOf(u) > -1), q = m.filter((u) => S.indexOf(u) == -1), T = Array.from(/* @__PURE__ */ new Set([...z, ...q]));
|
|
128
|
+
return r.setIn([...I, "items"], x).setIn(["filters", e, t, o], Array.from(T)).setIn(["filters-settings", e, t, "autoApply"], p).setIn(["filters", e, t, o], T.length === 0 ? [Number.MIN_SAFE_INTEGER] : T).setIn(["filters-settings", e, t, "apply"], null).setIn(["filters-settings", e, t, "lastUserFilterChange"], g);
|
|
129
129
|
}
|
|
130
130
|
case P: {
|
|
131
|
-
const s = Date.now(), { app: e, group: t, param: o, value:
|
|
132
|
-
return
|
|
131
|
+
const s = Date.now(), { app: e, group: t, param: o, value: n } = a;
|
|
132
|
+
return r.setIn(["filters", "initial", e, t, o], n.length === 0 ? [Number.MIN_SAFE_INTEGER] : n).setIn(["filters", e, t, o], n.length === 0 ? [Number.MIN_SAFE_INTEGER] : n).setIn(["filters-settings", e, t, "lastInitialFilterChange"], s).setIn(["filters-settings", e, t, "lastUserFilterChange"], s);
|
|
133
133
|
}
|
|
134
134
|
case M: {
|
|
135
|
-
const s = Date.now(), { app: e, group: t, param: o, parent:
|
|
136
|
-
return
|
|
135
|
+
const s = Date.now(), { app: e, group: t, param: o, parent: n } = a;
|
|
136
|
+
return r.deleteIn(["filters", e, t, o]).setIn(["filters-settings", e, t, "lastUserFilterChange"], s).setIn(["filters-settings", e, t, "parent"], n || null);
|
|
137
137
|
}
|
|
138
138
|
case w: {
|
|
139
|
-
const { app: s, group: e } = a, t =
|
|
140
|
-
return
|
|
139
|
+
const { app: s, group: e } = a, t = r.getIn(["filters", "initial", s, e]);
|
|
140
|
+
return r.setIn(["filters", s, e], t);
|
|
141
141
|
}
|
|
142
142
|
case v: {
|
|
143
143
|
const { app: s, group: e, measure: t } = a;
|
|
144
|
-
return
|
|
144
|
+
return r.setIn(["measures", s, e], t);
|
|
145
145
|
}
|
|
146
146
|
case U: {
|
|
147
147
|
const { app: s, group: e, measure: t } = a;
|
|
148
|
-
return
|
|
148
|
+
return r.deleteIn(["measures", s, e]);
|
|
149
149
|
}
|
|
150
150
|
case B: {
|
|
151
151
|
const { group: s, totalPages: e, totalItems: t } = a;
|
|
152
|
-
return
|
|
152
|
+
return r.setIn(["postsPagination", s], { totalPages: e, totalItems: t });
|
|
153
153
|
}
|
|
154
154
|
case K: {
|
|
155
155
|
const { type: s, group: e, ...t } = a;
|
|
156
|
-
return
|
|
156
|
+
return r.setIn(["posts", e], t);
|
|
157
157
|
}
|
|
158
158
|
case b: {
|
|
159
|
-
const { type: s, group: e, ...t } = a
|
|
159
|
+
const { type: s, group: e, ...t } = a;
|
|
160
|
+
if (t.reset) {
|
|
161
|
+
const { reset: l, ...i } = t;
|
|
162
|
+
return r.setIn(["posts", e], i).setIn(["posts", "initialFilters", e], r.getIn(["posts", "initialFilters", e]));
|
|
163
|
+
}
|
|
164
|
+
const n = { ...r.getIn(["posts", e]) || {} };
|
|
160
165
|
return Object.keys(t).forEach((l) => {
|
|
161
166
|
const i = t[l];
|
|
162
|
-
i != null ?
|
|
163
|
-
}),
|
|
167
|
+
i != null ? n[l] = i : l in n || (n[l] = i);
|
|
168
|
+
}), r.setIn(["posts", e], n).setIn(["posts", "initialFilters", e], n);
|
|
164
169
|
}
|
|
165
170
|
default:
|
|
166
|
-
return
|
|
171
|
+
return r;
|
|
167
172
|
}
|
|
168
|
-
}, Ie = ({ group:
|
|
173
|
+
}, Ie = ({ group: r, dispatch: a, initialFilters: s }) => {
|
|
169
174
|
a({
|
|
170
175
|
type: b,
|
|
171
|
-
group:
|
|
176
|
+
group: r,
|
|
172
177
|
...s,
|
|
173
178
|
reset: !0,
|
|
174
179
|
page: 1
|