@bigbinary/neeto-filters-frontend 3.3.0-beta.2 → 3.3.1
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.
- package/app/javascript/src/translations/en.json +7 -2
- package/dist/index.cjs.js +432 -111
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +435 -114
- package/dist/index.js.map +1 -1
- package/package.json +14 -12
- package/types.d.ts +1 -1
package/dist/index.js
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
import React, { useState, useEffect, useMemo, useRef, useTransition } from 'react';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
import i18next, { t as t$1 } from 'i18next';
|
|
4
|
-
import { findBy, isNotEmpty, capitalize, removeBy, toLabelAndValue, hyphenate, noop, replaceBy,
|
|
4
|
+
import { findBy, isNotEmpty, capitalize, removeBy, toLabelAndValue, hyphenate, isNotPresent, noop, replaceBy, existsBy, _existsBy, isPresent, humanize, findById, filterBy } from '@bigbinary/neeto-cist';
|
|
5
5
|
import { useDebounce, useQueryParams, useMutationWithInvalidation, withT } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
6
|
-
import { groupBy, anyPass, isNil, isEmpty, any, concat, omit, mergeLeft, toLower, identity, mergeRight, toPairs, pluck, either, not, has, equals, pick, last, modify, append, mergeDeepRight, prop, assoc, sortBy, project } from 'ramda';
|
|
6
|
+
import { groupBy, anyPass, isNil, isEmpty, any, concat, omit, mergeLeft, toLower, identity, mergeRight, toPairs, pluck, either, not, has, equals, pick, last, modify, append, mergeDeepRight, prop, assoc, reject, sortBy, project } from 'ramda';
|
|
7
7
|
import { useQuery, useQueryClient } from 'react-query';
|
|
8
8
|
import { Help, Delete as Delete$1, Plus, Close, Down } from '@bigbinary/neeto-icons';
|
|
9
|
-
import { Select, DatePicker,
|
|
9
|
+
import { Select, DatePicker, TimePickerInput, Input, Button, Pane as Pane$1, Typography, Accordion, Tooltip, Dropdown as Dropdown$2, Alert, Spinner } from '@bigbinary/neetoui';
|
|
10
10
|
import { Form, Input as Input$1, ActionBlock } from '@bigbinary/neetoui/formik';
|
|
11
11
|
import { useTranslation, Trans } from 'react-i18next';
|
|
12
12
|
import { useHistory } from 'react-router-dom/cjs/react-router-dom.min';
|
|
13
13
|
import { buildUrl, getQueryParams, dateFormat, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/utils';
|
|
14
14
|
import * as yup from 'yup';
|
|
15
|
-
import useHotkeys from '@bigbinary/neeto-hotkeys';
|
|
16
15
|
import { useHistory as useHistory$1, useLocation } from 'react-router-dom';
|
|
16
|
+
import useHotkeys from '@bigbinary/neeto-hotkeys';
|
|
17
17
|
import axios from 'axios';
|
|
18
18
|
import Search from '@bigbinary/neeto-molecules/Search';
|
|
19
|
+
import { PLURAL } from '@bigbinary/neeto-commons-frontend/constants';
|
|
20
|
+
import { DragDropContext, Droppable, Draggable } from '@hello-pangea/dnd';
|
|
19
21
|
import MenuBar from '@bigbinary/neeto-molecules/MenuBar';
|
|
20
22
|
import MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';
|
|
21
23
|
|
|
@@ -239,7 +241,7 @@ var dayjs_min = {exports: {}};
|
|
|
239
241
|
dayjs_min.exports;
|
|
240
242
|
|
|
241
243
|
(function (module, exports) {
|
|
242
|
-
!function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",
|
|
244
|
+
!function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",c="month",f="quarter",h="year",d="date",l="Invalid Date",$=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return "["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()<n.date())return -t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,c),s=n-i<0,u=e.clone().add(r+(s?-1:1),c);return +(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return {M:c,y:h,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:f}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},g="en",D={};D[g]=M;var p="$isDayjsObject",S=function(t){return t instanceof _||!(!t||!t[p])},w=function t(e,n,r){var i;if(!e)return g;if("string"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split("-");if(!i&&u.length>1)return t(u[0])}else {var a=e.name;D[a]=e,i=a;}return !r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0;}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return b},m.isValid=function(){return !(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<O(t)},m.$g=function(t,e,n){return b.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!b.u(e)||e,f=b.p(t),l=function(t,e){var i=b.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return b.w(n.toDate()[t].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v="set"+(this.$u?"UTC":"");switch(f){case h:return r?l(1,0):l(31,11);case c:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+"Hours",0);case u:return $(v+"Minutes",1);case s:return $(v+"Seconds",2);case i:return $(v+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=b.p(t),f="set"+(this.$u?"UTC":""),l=(n={},n[a]=f+"Date",n[d]=f+"Date",n[c]=f+"Month",n[h]=f+"FullYear",n[u]=f+"Hours",n[s]=f+"Minutes",n[i]=f+"Seconds",n[r]=f+"Milliseconds",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===c||o===h){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d;}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[b.p(t)]()},m.add=function(r,f){var d,l=this;r=Number(r);var $=b.p(f),y=function(t){var e=O(l);return b.w(e.date(e.date()+Math.round(t*r)),l)};if($===c)return this.set(c,this.$M+r);if($===h)return this.set(h,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return b.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||"YYYY-MM-DDTHH:mm:ssZ",i=b.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,c=n.months,f=n.meridiem,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},d=function(t){return b.s(s%12||12,t,"0")},$=f||function(t,e,n){var r=t<12?"AM":"PM";return n?r.toLowerCase():r};return r.replace(y,(function(t,r){return r||function(t){switch(t){case"YY":return String(e.$y).slice(-2);case"YYYY":return b.s(e.$y,4,"0");case"M":return a+1;case"MM":return b.s(a+1,2,"0");case"MMM":return h(n.monthsShort,a,c,3);case"MMMM":return h(c,a);case"D":return e.$D;case"DD":return b.s(e.$D,2,"0");case"d":return String(e.$W);case"dd":return h(n.weekdaysMin,e.$W,o,2);case"ddd":return h(n.weekdaysShort,e.$W,o,3);case"dddd":return o[e.$W];case"H":return String(s);case"HH":return b.s(s,2,"0");case"h":return d(1);case"hh":return d(2);case"a":return $(s,u,!0);case"A":return $(s,u,!1);case"m":return String(u);case"mm":return b.s(u,2,"0");case"s":return String(e.$s);case"ss":return b.s(e.$s,2,"0");case"SSS":return b.s(e.$ms,3,"0");case"Z":return i}return null}(t)||i.replace(":","")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=this,M=b.p(d),m=O(r),v=(m.utcOffset()-this.utcOffset())*e,g=this-m,D=function(){return b.m(y,m)};switch(M){case h:$=D()/12;break;case c:$=D();break;case f:$=D()/3;break;case o:$=(g-v)/6048e5;break;case a:$=(g-v)/864e5;break;case u:$=g/n;break;case s:$=g/e;break;case i:$=g/t;break;default:$=g;}return l?$:b.a($)},m.daysInMonth=function(){return this.endOf(c).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=w(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return b.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),k=_.prototype;return O.prototype=k,[["$ms",r],["$s",i],["$m",s],["$H",u],["$W",a],["$M",c],["$y",h],["$D",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])};})),O.extend=function(t,e){return t.$i||(t(e,_,O),t.$i=!0),O},O.locale=w,O.isDayjs=S,O.unix=function(t){return O(1e3*t)},O.en=D[g],O.Ls=D,O.p={},O}));
|
|
243
245
|
} (dayjs_min, dayjs_min.exports));
|
|
244
246
|
|
|
245
247
|
var dayjs_minExports = dayjs_min.exports;
|
|
@@ -250,7 +252,7 @@ var timezone$1 = {exports: {}};
|
|
|
250
252
|
timezone$1.exports;
|
|
251
253
|
|
|
252
254
|
(function (module, exports) {
|
|
253
|
-
!function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u<i.length;u+=1){var f=i[u],s=f.type,m=f.value,c=t[s];c>=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,
|
|
255
|
+
!function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u<i.length;u+=1){var f=i[u],s=f.type,m=f.value,c=t[s];c>=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+l+":"+r[4]+":"+r[5]+":000",v=+e;return (o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString("en-US",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,"minute");}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return "timezonename"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if("string"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return [i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t;};}}));
|
|
254
256
|
} (timezone$1, timezone$1.exports));
|
|
255
257
|
|
|
256
258
|
var timezoneExports = timezone$1.exports;
|
|
@@ -261,7 +263,7 @@ var utc$1 = {exports: {}};
|
|
|
261
263
|
utc$1.exports;
|
|
262
264
|
|
|
263
265
|
(function (module, exports) {
|
|
264
|
-
!function(t,i){module.exports=i();}(commonjsGlobal,(function(){var t="minute",i=/[+-]\d\d(?::?\d\d)?/g,e=/([+-]|\d\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t);};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds();}else r.call(this);};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if("string"==typeof s&&(s=function(t){void 0===t&&(t="");var s=t.match(i);if(!s)return null;var f=(""+s[0]).match(e)||["-",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:"+"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r;}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||
|
|
266
|
+
!function(t,i){module.exports=i();}(commonjsGlobal,(function(){var t="minute",i=/[+-]\d\d(?::?\d\d)?/g,e=/([+-]|\d\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t);};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds();}else r.call(this);};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if("string"==typeof s&&(s=function(t){void 0===t&&(t="");var s=t.match(i);if(!s)return null;var f=(""+s[0]).match(e)||["-",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:"+"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r;}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return !!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return "s"===t&&this.$offset?n(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)};}}));
|
|
265
267
|
} (utc$1, utc$1.exports));
|
|
266
268
|
|
|
267
269
|
var utcExports = utc$1.exports;
|
|
@@ -321,6 +323,26 @@ var TEXT_RULES = [{
|
|
|
321
323
|
label: t$1("neetoFilters.rules.doesNotEndWith"),
|
|
322
324
|
value: "does_not_end_with"
|
|
323
325
|
}];
|
|
326
|
+
var MULTI_DROPDOWN_RULES = [{
|
|
327
|
+
label: t$1("neetoFilters.rules.in"),
|
|
328
|
+
value: "in"
|
|
329
|
+
}, {
|
|
330
|
+
label: t$1("neetoFilters.rules.notIn"),
|
|
331
|
+
value: "not_in"
|
|
332
|
+
}, {
|
|
333
|
+
label: t$1("neetoFilters.rules.isEmpty"),
|
|
334
|
+
value: "is_unknown"
|
|
335
|
+
}];
|
|
336
|
+
var SINGLE_DROPDOWN_RULES = [{
|
|
337
|
+
label: t$1("neetoFilters.rules.is"),
|
|
338
|
+
value: "is"
|
|
339
|
+
}, {
|
|
340
|
+
label: t$1("neetoFilters.rules.isNot"),
|
|
341
|
+
value: "is_not"
|
|
342
|
+
}, {
|
|
343
|
+
label: t$1("neetoFilters.rules.isEmpty"),
|
|
344
|
+
value: "is_unknown"
|
|
345
|
+
}];
|
|
324
346
|
var DEFAULT_BOOLEAN_OPTIONS = [{
|
|
325
347
|
label: t$1("neetoFilters.common.yes"),
|
|
326
348
|
value: "true"
|
|
@@ -374,6 +396,9 @@ var isTime = function isTime(type) {
|
|
|
374
396
|
var isMulti = function isMulti(type) {
|
|
375
397
|
return type === "multi_option" || type === "custom.multi_option";
|
|
376
398
|
};
|
|
399
|
+
var isSingle = function isSingle(type) {
|
|
400
|
+
return type === "single_option" || type === "custom.single_option";
|
|
401
|
+
};
|
|
377
402
|
var isText = function isText(type) {
|
|
378
403
|
return type === "text" || type === "custom.text";
|
|
379
404
|
};
|
|
@@ -466,7 +491,7 @@ var buildUpdatedFilter = function buildUpdatedFilter(_ref8) {
|
|
|
466
491
|
if (isMulti(defaultType)) {
|
|
467
492
|
return mergeLeft(filter, {
|
|
468
493
|
value: pluck("value", option),
|
|
469
|
-
rule:
|
|
494
|
+
rule: rule
|
|
470
495
|
});
|
|
471
496
|
} else if (isDate(defaultType)) {
|
|
472
497
|
return mergeLeft(filter, buildDateValue(option));
|
|
@@ -489,6 +514,11 @@ var buildUpdatedFilter = function buildUpdatedFilter(_ref8) {
|
|
|
489
514
|
});
|
|
490
515
|
} else if (isTime(defaultType)) {
|
|
491
516
|
return mergeLeft(filter, buildTimeValue(option));
|
|
517
|
+
} else if (isSingle(defaultType)) {
|
|
518
|
+
return mergeLeft(filter, {
|
|
519
|
+
value: option.value,
|
|
520
|
+
rule: rule
|
|
521
|
+
});
|
|
492
522
|
}
|
|
493
523
|
return mergeLeft(filter, {
|
|
494
524
|
value: option.value,
|
|
@@ -519,40 +549,53 @@ var buildFiltersFromSearchParams = function buildFiltersFromSearchParams(columns
|
|
|
519
549
|
value: value
|
|
520
550
|
}, column);
|
|
521
551
|
} else if (isMulti(defaultType)) {
|
|
522
|
-
return mergeLeft({
|
|
523
|
-
rule: "in",
|
|
524
|
-
value: value.split("|")
|
|
525
|
-
}, column);
|
|
526
|
-
} else if (isDigit(defaultType) || isText(defaultType)) {
|
|
527
552
|
var _value$split = value.split("+rule-"),
|
|
528
553
|
_value$split2 = _slicedToArray(_value$split, 2),
|
|
529
554
|
filterValue = _value$split2[0],
|
|
530
555
|
rule = _value$split2[1];
|
|
531
556
|
return mergeLeft({
|
|
532
|
-
rule: rule,
|
|
533
|
-
value: filterValue
|
|
534
|
-
}, column);
|
|
535
|
-
} else if (isTime(defaultType) && isCustomTimeRange(value)) {
|
|
536
|
-
return mergeLeft({
|
|
537
|
-
value: value.split(",")
|
|
557
|
+
rule: rule !== null && rule !== void 0 ? rule : "in",
|
|
558
|
+
value: filterValue.split("|")
|
|
538
559
|
}, column);
|
|
539
|
-
} else if (
|
|
560
|
+
} else if (isSingle(defaultType)) {
|
|
540
561
|
var _value$split3 = value.split("+rule-"),
|
|
541
562
|
_value$split4 = _slicedToArray(_value$split3, 2),
|
|
542
563
|
_filterValue = _value$split4[0],
|
|
543
564
|
_rule = _value$split4[1];
|
|
544
565
|
return mergeLeft({
|
|
545
|
-
rule: _rule,
|
|
546
|
-
value:
|
|
566
|
+
rule: _rule !== null && _rule !== void 0 ? _rule : "in",
|
|
567
|
+
value: _filterValue
|
|
547
568
|
}, column);
|
|
548
|
-
} else if (
|
|
569
|
+
} else if (isDigit(defaultType) || isText(defaultType)) {
|
|
549
570
|
var _value$split5 = value.split("+rule-"),
|
|
550
571
|
_value$split6 = _slicedToArray(_value$split5, 2),
|
|
551
572
|
_filterValue2 = _value$split6[0],
|
|
552
573
|
_rule2 = _value$split6[1];
|
|
553
574
|
return mergeLeft({
|
|
554
575
|
rule: _rule2,
|
|
555
|
-
value:
|
|
576
|
+
value: _filterValue2
|
|
577
|
+
}, column);
|
|
578
|
+
} else if (isTime(defaultType) && isCustomTimeRange(value)) {
|
|
579
|
+
return mergeLeft({
|
|
580
|
+
value: value
|
|
581
|
+
}, column);
|
|
582
|
+
} else if (isSingleDate(defaultType)) {
|
|
583
|
+
var _value$split7 = value.split("+rule-"),
|
|
584
|
+
_value$split8 = _slicedToArray(_value$split7, 2),
|
|
585
|
+
_filterValue3 = _value$split8[0],
|
|
586
|
+
_rule3 = _value$split8[1];
|
|
587
|
+
return mergeLeft({
|
|
588
|
+
rule: _rule3,
|
|
589
|
+
value: _rule3 === "between" ? _filterValue3.split(",") : _filterValue3
|
|
590
|
+
}, column);
|
|
591
|
+
} else if (isSingleTime(defaultType)) {
|
|
592
|
+
var _value$split9 = value.split("+rule-"),
|
|
593
|
+
_value$split10 = _slicedToArray(_value$split9, 2),
|
|
594
|
+
_filterValue4 = _value$split10[0],
|
|
595
|
+
_rule4 = _value$split10[1];
|
|
596
|
+
return mergeLeft({
|
|
597
|
+
rule: _rule4,
|
|
598
|
+
value: _rule4 === "between" ? _filterValue4.split(",") : _filterValue4
|
|
556
599
|
}, column);
|
|
557
600
|
} else if (isBoolean(defaultType)) {
|
|
558
601
|
return mergeLeft({
|
|
@@ -815,7 +858,9 @@ var createUrlParamString = function createUrlParamString(_ref15) {
|
|
|
815
858
|
} else if (isSingleDate(defaultType) || isSingleTime(defaultType)) {
|
|
816
859
|
return value && "".concat(value, "+rule-").concat(rule) || value;
|
|
817
860
|
} else if (isMulti(defaultType)) {
|
|
818
|
-
return value.join("|");
|
|
861
|
+
return "".concat(value.join("|"), "+rule-").concat(rule);
|
|
862
|
+
} else if (isSingle(defaultType)) {
|
|
863
|
+
return "".concat(value, "+rule-").concat(rule);
|
|
819
864
|
} else if (isBoolean(defaultType)) {
|
|
820
865
|
return getLabelFromBool({
|
|
821
866
|
value: value,
|
|
@@ -943,6 +988,9 @@ var getColumnsWithStandardizedType = function getColumnsWithStandardizedType(col
|
|
|
943
988
|
var isKeywordFilterPresent = function isKeywordFilterPresent(keyworFilter) {
|
|
944
989
|
return not(isEmpty(keyworFilter.node));
|
|
945
990
|
};
|
|
991
|
+
var isNilOrEmpty = function isNilOrEmpty(param) {
|
|
992
|
+
return isNil(param) || isEmpty(param);
|
|
993
|
+
};
|
|
946
994
|
|
|
947
995
|
var buildDropdownValue = function buildDropdownValue(_ref) {
|
|
948
996
|
var defaultType = _ref.defaultType,
|
|
@@ -1035,6 +1083,34 @@ var buildDateValues = function buildDateValues(dates, selectedRule) {
|
|
|
1035
1083
|
var buildHelpIconProps = function buildHelpIconProps(helpIconProps) {
|
|
1036
1084
|
return mergeDeepRight(DEFAULT_HELP_ICON_PROPS, helpIconProps);
|
|
1037
1085
|
};
|
|
1086
|
+
var hasInvalidTimes = function hasInvalidTimes(times) {
|
|
1087
|
+
if (Array.isArray(times)) {
|
|
1088
|
+
return times.some(function (time) {
|
|
1089
|
+
return time.isValid();
|
|
1090
|
+
}) === false;
|
|
1091
|
+
}
|
|
1092
|
+
return !times.isValid();
|
|
1093
|
+
};
|
|
1094
|
+
var areCustomTimeRangeValuesNotValid = function areCustomTimeRangeValuesNotValid(times) {
|
|
1095
|
+
return !times.every(function (time) {
|
|
1096
|
+
return time.isValid();
|
|
1097
|
+
});
|
|
1098
|
+
};
|
|
1099
|
+
|
|
1100
|
+
// eslint-disable-next-line @bigbinary/neeto/use-standard-date-time-formats
|
|
1101
|
+
var formatSingleTime = function formatSingleTime(time) {
|
|
1102
|
+
return dayjs(time).format("HH:mm:ss");
|
|
1103
|
+
};
|
|
1104
|
+
var formatTime = function formatTime(value, timePickerType) {
|
|
1105
|
+
if (isNilOrEmpty(value)) return null;
|
|
1106
|
+
if (timePickerType === "range") {
|
|
1107
|
+
return value.map(formatSingleTime);
|
|
1108
|
+
}
|
|
1109
|
+
return formatSingleTime(value);
|
|
1110
|
+
};
|
|
1111
|
+
var isRuleEmpty = function isRuleEmpty(rule) {
|
|
1112
|
+
return equals(rule, "is_unknown");
|
|
1113
|
+
};
|
|
1038
1114
|
|
|
1039
1115
|
var Boolean = function Boolean(_ref) {
|
|
1040
1116
|
var column = _ref.column,
|
|
@@ -1184,13 +1260,16 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
1184
1260
|
var column = _ref.column,
|
|
1185
1261
|
filter = _ref.filter,
|
|
1186
1262
|
handleApplyFilter = _ref.handleApplyFilter,
|
|
1187
|
-
autoFocus = _ref.autoFocus
|
|
1263
|
+
autoFocus = _ref.autoFocus,
|
|
1264
|
+
filters = _ref.filters;
|
|
1188
1265
|
var key = column.key,
|
|
1189
1266
|
label = column.label,
|
|
1190
1267
|
values = column.values,
|
|
1191
1268
|
defaultValue = column.defaultValue,
|
|
1192
1269
|
_column$defaultType = column.defaultType,
|
|
1193
1270
|
defaultType = _column$defaultType === void 0 ? column.type : _column$defaultType,
|
|
1271
|
+
_column$showRuleSelec = column.showRuleSelector,
|
|
1272
|
+
showRuleSelector = _column$showRuleSelec === void 0 ? false : _column$showRuleSelec,
|
|
1194
1273
|
_column$isClearable = column.isClearable,
|
|
1195
1274
|
isClearable = _column$isClearable === void 0 ? true : _column$isClearable,
|
|
1196
1275
|
_column$helpIconProps = column.helpIconProps,
|
|
@@ -1201,13 +1280,44 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
1201
1280
|
filter: filter,
|
|
1202
1281
|
options: values
|
|
1203
1282
|
});
|
|
1283
|
+
var dropdownRules = isMulti(defaultType) ? MULTI_DROPDOWN_RULES : SINGLE_DROPDOWN_RULES;
|
|
1204
1284
|
var value = buildDropdownValue({
|
|
1205
1285
|
defaultType: defaultType,
|
|
1206
1286
|
filter: filter,
|
|
1207
1287
|
options: options
|
|
1208
1288
|
});
|
|
1289
|
+
var _useState = useState(findBy({
|
|
1290
|
+
value: filter === null || filter === void 0 ? void 0 : filter.rule
|
|
1291
|
+
}, dropdownRules) || dropdownRules[0]),
|
|
1292
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1293
|
+
selectedRule = _useState2[0],
|
|
1294
|
+
setSelectedRule = _useState2[1];
|
|
1209
1295
|
var _useTranslation = useTranslation(),
|
|
1210
1296
|
t = _useTranslation.t;
|
|
1297
|
+
var getOption = function getOption(isSelectedRuleEmpty, options, value) {
|
|
1298
|
+
if (isSelectedRuleEmpty) {
|
|
1299
|
+
return isMulti(defaultType) ? [options[0]] : options[0];
|
|
1300
|
+
}
|
|
1301
|
+
return value;
|
|
1302
|
+
};
|
|
1303
|
+
var handleRuleChange = function handleRuleChange(rule) {
|
|
1304
|
+
var isPreviousRuleEmpty = isRuleEmpty(selectedRule.value);
|
|
1305
|
+
var isNewRuleEmpty = isRuleEmpty(rule.value);
|
|
1306
|
+
setSelectedRule(rule);
|
|
1307
|
+
if (isPreviousRuleEmpty || !isNewRuleEmpty && isNotPresent(filter === null || filter === void 0 ? void 0 : filter.value)) {
|
|
1308
|
+
handleApplyFilter({
|
|
1309
|
+
_delete: true
|
|
1310
|
+
});
|
|
1311
|
+
return;
|
|
1312
|
+
}
|
|
1313
|
+
var updatedFilter = buildUpdatedFilter({
|
|
1314
|
+
column: column,
|
|
1315
|
+
defaultType: defaultType,
|
|
1316
|
+
rule: rule.value,
|
|
1317
|
+
option: getOption(isNewRuleEmpty, options, value)
|
|
1318
|
+
});
|
|
1319
|
+
handleApplyFilter(updatedFilter);
|
|
1320
|
+
};
|
|
1211
1321
|
var handleChange = function handleChange(option) {
|
|
1212
1322
|
if (isEmpty(option) || isNil(option)) {
|
|
1213
1323
|
handleApplyFilter({
|
|
@@ -1218,20 +1328,31 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
1218
1328
|
var updatedFilter = buildUpdatedFilter({
|
|
1219
1329
|
column: column,
|
|
1220
1330
|
defaultType: defaultType,
|
|
1221
|
-
option: option
|
|
1331
|
+
option: option,
|
|
1332
|
+
rule: selectedRule.value
|
|
1222
1333
|
});
|
|
1223
1334
|
handleApplyFilter(updatedFilter);
|
|
1224
1335
|
};
|
|
1336
|
+
useEffect(function () {
|
|
1337
|
+
if (!isEmpty(filters)) return;
|
|
1338
|
+
isRuleEmpty(selectedRule.value) && setSelectedRule(dropdownRules[0]);
|
|
1339
|
+
}, [filters]);
|
|
1225
1340
|
return /*#__PURE__*/React.createElement("div", {
|
|
1226
1341
|
className: "neeto-filters-pane-filter__item-wrapper"
|
|
1227
|
-
}, /*#__PURE__*/React.createElement(Select,
|
|
1228
|
-
autoFocus: autoFocus,
|
|
1342
|
+
}, showRuleSelector && /*#__PURE__*/React.createElement(Select, {
|
|
1229
1343
|
label: label,
|
|
1344
|
+
defaultValue: dropdownRules[0],
|
|
1345
|
+
options: dropdownRules,
|
|
1346
|
+
value: selectedRule,
|
|
1347
|
+
onChange: handleRuleChange
|
|
1348
|
+
}), !isRuleEmpty(selectedRule.value) && /*#__PURE__*/React.createElement(Select, _extends({
|
|
1349
|
+
autoFocus: autoFocus,
|
|
1230
1350
|
options: options,
|
|
1231
1351
|
value: value,
|
|
1232
1352
|
"data-cy": "neeto-filters-".concat(hyphenate(key), "-filter"),
|
|
1233
1353
|
isClearable: !defaultValue && isClearable,
|
|
1234
1354
|
isMulti: isMulti(defaultType),
|
|
1355
|
+
label: !showRuleSelector && label,
|
|
1235
1356
|
strategy: "fixed",
|
|
1236
1357
|
placeholder: t("neetoFilters.messages.selectResource", {
|
|
1237
1358
|
resource: label
|
|
@@ -1381,6 +1502,15 @@ var SingleTime = function SingleTime(_ref) {
|
|
|
1381
1502
|
handleApplyFilter(updatedFilter);
|
|
1382
1503
|
};
|
|
1383
1504
|
var handleChange = function handleChange(times) {
|
|
1505
|
+
if (hasInvalidTimes(times)) {
|
|
1506
|
+
handleApplyFilter({
|
|
1507
|
+
_delete: true
|
|
1508
|
+
});
|
|
1509
|
+
return;
|
|
1510
|
+
}
|
|
1511
|
+
if (timePickerType === "range" && areCustomTimeRangeValuesNotValid(times)) {
|
|
1512
|
+
return;
|
|
1513
|
+
}
|
|
1384
1514
|
var value = timePickerType === "range" ? pluck("$d", times).map(function (time) {
|
|
1385
1515
|
return time.toISOString();
|
|
1386
1516
|
}) : times["$d"].toISOString();
|
|
@@ -1393,6 +1523,7 @@ var SingleTime = function SingleTime(_ref) {
|
|
|
1393
1523
|
});
|
|
1394
1524
|
handleApplyFilter(updatedFilter);
|
|
1395
1525
|
};
|
|
1526
|
+
var formattedTime = formatTime(value, timePickerType);
|
|
1396
1527
|
return /*#__PURE__*/React.createElement("div", {
|
|
1397
1528
|
className: "neeto-filters-pane-filter__item-wrapper"
|
|
1398
1529
|
}, /*#__PURE__*/React.createElement(Select, _extends({
|
|
@@ -1407,15 +1538,12 @@ var SingleTime = function SingleTime(_ref) {
|
|
|
1407
1538
|
}
|
|
1408
1539
|
}, {
|
|
1409
1540
|
onChange: handleRuleChange
|
|
1410
|
-
})), /*#__PURE__*/React.createElement(
|
|
1541
|
+
})), /*#__PURE__*/React.createElement(TimePickerInput, _extends({
|
|
1411
1542
|
autoFocus: autoFocus,
|
|
1412
|
-
value: value,
|
|
1413
|
-
use12Hours: true,
|
|
1414
1543
|
className: "w-full",
|
|
1415
1544
|
"data-cy": "neeto-filters-".concat(hyphenate(key), "-filter"),
|
|
1416
|
-
format: "h:mm A",
|
|
1417
|
-
getPopupContainer: prop("parentNode"),
|
|
1418
1545
|
type: timePickerType,
|
|
1546
|
+
value: formattedTime,
|
|
1419
1547
|
onChange: handleChange
|
|
1420
1548
|
}, otherProps)));
|
|
1421
1549
|
};
|
|
@@ -1558,6 +1686,15 @@ var Time = function Time(_ref) {
|
|
|
1558
1686
|
handleApplyFilter(updatedFilter);
|
|
1559
1687
|
};
|
|
1560
1688
|
var handleTimeRangeChange = function handleTimeRangeChange(times) {
|
|
1689
|
+
if (hasInvalidTimes(times)) {
|
|
1690
|
+
handleApplyFilter({
|
|
1691
|
+
_delete: true
|
|
1692
|
+
});
|
|
1693
|
+
return;
|
|
1694
|
+
}
|
|
1695
|
+
if (isCustomTimeRangeShown && areCustomTimeRangeValuesNotValid(times)) {
|
|
1696
|
+
return;
|
|
1697
|
+
}
|
|
1561
1698
|
var updatedFilter = buildUpdatedFilter({
|
|
1562
1699
|
column: column,
|
|
1563
1700
|
defaultType: defaultType,
|
|
@@ -1588,13 +1725,11 @@ var Time = function Time(_ref) {
|
|
|
1588
1725
|
}
|
|
1589
1726
|
}, {
|
|
1590
1727
|
onChange: handleChange
|
|
1591
|
-
})), isCustomTimeRangeShown && /*#__PURE__*/React.createElement(
|
|
1592
|
-
|
|
1728
|
+
})), isCustomTimeRangeShown && /*#__PURE__*/React.createElement(TimePickerInput, _extends({
|
|
1729
|
+
className: "w-full",
|
|
1593
1730
|
"data-cy": "neeto-filters-".concat(hyphenate(key), "-date-range"),
|
|
1594
|
-
format: "h:mm A",
|
|
1595
|
-
getPopupContainer: prop("parentNode"),
|
|
1596
1731
|
type: "range",
|
|
1597
|
-
value: filter.value,
|
|
1732
|
+
value: formatTime(filter.value, "range"),
|
|
1598
1733
|
onChange: handleTimeRangeChange
|
|
1599
1734
|
}, otherProps)));
|
|
1600
1735
|
};
|
|
@@ -1678,6 +1813,7 @@ var Item = function Item(_ref) {
|
|
|
1678
1813
|
autoFocus: autoFocus,
|
|
1679
1814
|
column: column,
|
|
1680
1815
|
filter: filter,
|
|
1816
|
+
filters: filters,
|
|
1681
1817
|
handleApplyFilter: handleApplyFilter
|
|
1682
1818
|
});
|
|
1683
1819
|
};
|
|
@@ -2037,19 +2173,26 @@ var buildRuleValue = function buildRuleValue(_ref) {
|
|
|
2037
2173
|
return findBy({
|
|
2038
2174
|
value: rule
|
|
2039
2175
|
}, SINGLE_TIME_OPTIONS).label;
|
|
2176
|
+
} else if (isMulti(defaultType) || isSingle(defaultType)) {
|
|
2177
|
+
return isRuleEmpty(rule) ? t$1("neetoFilters.rules.isEmpty") : "";
|
|
2040
2178
|
}
|
|
2041
2179
|
return "";
|
|
2042
2180
|
};
|
|
2043
2181
|
var hasOnlyKeywordFilter = function hasOnlyKeywordFilter(filters) {
|
|
2044
2182
|
return filters.length === 1 && filters[0].key === SEARCH_TERM_KEY;
|
|
2045
2183
|
};
|
|
2046
|
-
var deepCompare = function deepCompare(
|
|
2184
|
+
var deepCompare = function deepCompare(segments, filters) {
|
|
2047
2185
|
var comparisonHelper = function comparisonHelper(filters) {
|
|
2048
2186
|
return sortBy(prop("key"), removeBy({
|
|
2049
2187
|
key: SEARCH_TERM_KEY
|
|
2050
|
-
}, project(["key", "rule", "value"], filters)));
|
|
2188
|
+
}, project(["key", "rule", "value", "label"], filters)));
|
|
2051
2189
|
};
|
|
2052
|
-
return
|
|
2190
|
+
return reject(function (filters) {
|
|
2191
|
+
var segment = findBy({
|
|
2192
|
+
key: filters.key
|
|
2193
|
+
}, segments);
|
|
2194
|
+
return segment && segment.value === filters.value;
|
|
2195
|
+
}, comparisonHelper(filters));
|
|
2053
2196
|
};
|
|
2054
2197
|
|
|
2055
2198
|
var Block = function Block(_ref) {
|
|
@@ -2101,7 +2244,7 @@ var Block = function Block(_ref) {
|
|
|
2101
2244
|
}, label, ":"), /*#__PURE__*/React.createElement(Typography, {
|
|
2102
2245
|
className: "neeto-ui-text-gray-600",
|
|
2103
2246
|
style: "body2"
|
|
2104
|
-
}, ruleContent), /*#__PURE__*/React.createElement(Typography, {
|
|
2247
|
+
}, ruleContent), !isRuleEmpty(rule) && /*#__PURE__*/React.createElement(Typography, {
|
|
2105
2248
|
style: "body2"
|
|
2106
2249
|
}, blockContent), !defaultValue && /*#__PURE__*/React.createElement("div", {
|
|
2107
2250
|
className: "neeto-filters-bar__block-close"
|
|
@@ -2169,7 +2312,7 @@ var FilterBar = function FilterBar(_ref) {
|
|
|
2169
2312
|
handleApplyFilters = _ref.handleApplyFilters;
|
|
2170
2313
|
var _useTranslation = useTranslation(),
|
|
2171
2314
|
t = _useTranslation.t;
|
|
2172
|
-
var history = useHistory();
|
|
2315
|
+
var history = useHistory$1();
|
|
2173
2316
|
var searchParams = useQueryParams({
|
|
2174
2317
|
toCamelCase: false
|
|
2175
2318
|
});
|
|
@@ -2227,6 +2370,7 @@ var FilterBar = function FilterBar(_ref) {
|
|
|
2227
2370
|
}), /*#__PURE__*/React.createElement("div", {
|
|
2228
2371
|
className: "flex items-center gap-x-2"
|
|
2229
2372
|
}, isPresent(entity) && !hasOnlyKeywordFilter(filters) && /*#__PURE__*/React.createElement(Button, {
|
|
2373
|
+
"data-cy": "save-segment-button",
|
|
2230
2374
|
label: t("neetoFilters.segments.saveAsNewSegment"),
|
|
2231
2375
|
style: "secondary",
|
|
2232
2376
|
onClick: function onClick() {
|
|
@@ -2458,21 +2602,44 @@ var SegmentBar = function SegmentBar(_ref) {
|
|
|
2458
2602
|
var entity = _ref.entity,
|
|
2459
2603
|
filters = _ref.filters,
|
|
2460
2604
|
setIsSavePaneOpen = _ref.setIsSavePaneOpen,
|
|
2461
|
-
setIsPaneOpen = _ref.setIsPaneOpen
|
|
2605
|
+
setIsPaneOpen = _ref.setIsPaneOpen,
|
|
2606
|
+
handleApplyFilters = _ref.handleApplyFilters,
|
|
2607
|
+
childrenKeys = _ref.childrenKeys;
|
|
2462
2608
|
var _useTranslation = useTranslation(),
|
|
2463
2609
|
t = _useTranslation.t;
|
|
2610
|
+
var history = useHistory$1();
|
|
2464
2611
|
var _useQueryParams = useQueryParams(),
|
|
2465
2612
|
segmentId = _useQueryParams.segmentId;
|
|
2466
2613
|
var queryClient = useQueryClient();
|
|
2467
2614
|
var cachedSegments = queryClient.getQueryData([QUERY_KEYS.SEGMENTS_LIST, entity, ""]) || DEFAULT_SEGMENTS_CACHE;
|
|
2468
2615
|
var segment = findById(segmentId, cachedSegments.segments);
|
|
2469
2616
|
if (isNotPresent(segment)) return null;
|
|
2470
|
-
var
|
|
2617
|
+
var handleDelete = function handleDelete(key) {
|
|
2618
|
+
if (key === SEARCH_TERM_KEY) {
|
|
2619
|
+
var params = omit([SEARCH_TERM_KEY], getSnakeCasedQueryParams());
|
|
2620
|
+
var pathname = window.location.pathname;
|
|
2621
|
+
history.push(buildUrl(pathname, params));
|
|
2622
|
+
return;
|
|
2623
|
+
}
|
|
2624
|
+
if (childrenKeys.includes(key)) {
|
|
2625
|
+
var _params = omit([key], getSnakeCasedQueryParams());
|
|
2626
|
+
var _pathname = window.location.pathname;
|
|
2627
|
+
history.push(buildUrl(_pathname, _params));
|
|
2628
|
+
}
|
|
2629
|
+
var newFilters = removeBy({
|
|
2630
|
+
key: key
|
|
2631
|
+
}, filters);
|
|
2632
|
+
handleApplyFilters(newFilters);
|
|
2633
|
+
};
|
|
2634
|
+
var changedFilters = deepCompare(segment.filters[0].conditions, filters);
|
|
2471
2635
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Typography, {
|
|
2472
|
-
className: "neeto-ui-text-gray-600 mr-4",
|
|
2636
|
+
className: "neeto-ui-text-gray-600 mr-4 px-2",
|
|
2473
2637
|
"data-cy": "neeto-filters-segment-name",
|
|
2474
2638
|
style: "h4"
|
|
2475
|
-
}, segment.name),
|
|
2639
|
+
}, segment.name), isNotEmpty(changedFilters) && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Dropdown$2, {
|
|
2640
|
+
buttonProps: {
|
|
2641
|
+
className: "mr-2"
|
|
2642
|
+
},
|
|
2476
2643
|
buttonStyle: "secondary",
|
|
2477
2644
|
label: t("neetoFilters.segments.updateSegment")
|
|
2478
2645
|
}, /*#__PURE__*/React.createElement(Menu, null, /*#__PURE__*/React.createElement(MenuItem.Button, {
|
|
@@ -2488,7 +2655,18 @@ var SegmentBar = function SegmentBar(_ref) {
|
|
|
2488
2655
|
action: SEGMENT_ACTIONS$1.CREATE
|
|
2489
2656
|
});
|
|
2490
2657
|
}
|
|
2491
|
-
}, t("neetoFilters.segments.saveAsNewSegment")))))
|
|
2658
|
+
}, t("neetoFilters.segments.saveAsNewSegment")))), changedFilters.map(function (filter) {
|
|
2659
|
+
var _filter$suffixCompone;
|
|
2660
|
+
return /*#__PURE__*/React.createElement(React.Fragment, {
|
|
2661
|
+
key: filter.key
|
|
2662
|
+
}, /*#__PURE__*/React.createElement(Block, {
|
|
2663
|
+
filter: filter,
|
|
2664
|
+
handleDelete: handleDelete,
|
|
2665
|
+
setIsPaneOpen: setIsPaneOpen
|
|
2666
|
+
}), (_filter$suffixCompone = filter.suffixComponent) === null || _filter$suffixCompone === void 0 ? void 0 : _filter$suffixCompone.call(filter), /*#__PURE__*/React.createElement("div", {
|
|
2667
|
+
className: "neeto-filters-bar--separator"
|
|
2668
|
+
}));
|
|
2669
|
+
})));
|
|
2492
2670
|
};
|
|
2493
2671
|
|
|
2494
2672
|
var Bar = function Bar(_ref) {
|
|
@@ -2904,6 +3082,7 @@ var SEGMENT_ACTIONS = {
|
|
|
2904
3082
|
EDIT: "edit",
|
|
2905
3083
|
DELETE: "delete"
|
|
2906
3084
|
};
|
|
3085
|
+
var ALL_RESULTS = t$1("neetoFilters.common.allResults");
|
|
2907
3086
|
|
|
2908
3087
|
var Delete = function Delete(_ref) {
|
|
2909
3088
|
var isOpen = _ref.isOpen,
|
|
@@ -2952,30 +3131,56 @@ var Delete = function Delete(_ref) {
|
|
|
2952
3131
|
});
|
|
2953
3132
|
};
|
|
2954
3133
|
|
|
3134
|
+
var reorderList = function reorderList(list, startIndex, endIndex) {
|
|
3135
|
+
var result = Array.from(list);
|
|
3136
|
+
var _result$splice = result.splice(startIndex, 1),
|
|
3137
|
+
_result$splice2 = _slicedToArray(_result$splice, 1),
|
|
3138
|
+
removed = _result$splice2[0];
|
|
3139
|
+
result.splice(endIndex, 0, removed);
|
|
3140
|
+
return result;
|
|
3141
|
+
};
|
|
3142
|
+
|
|
2955
3143
|
var useSegments = function useSegments(_ref) {
|
|
2956
3144
|
var entity = _ref.entity,
|
|
2957
3145
|
columns = _ref.columns,
|
|
2958
|
-
appliedFilters = _ref.appliedFilters,
|
|
2959
3146
|
childrenKeys = _ref.childrenKeys;
|
|
2960
3147
|
var _useTranslation = useTranslation(),
|
|
2961
3148
|
t = _useTranslation.t;
|
|
2962
3149
|
var history = useHistory$1();
|
|
3150
|
+
var appliedFilters = buildFiltersFromURL(columns);
|
|
2963
3151
|
var _useFetchSegments = useFetchSegments({
|
|
2964
3152
|
entity: entity
|
|
2965
3153
|
}),
|
|
2966
|
-
|
|
2967
|
-
segments = _useFetchSegments$dat === void 0 ? [] : _useFetchSegments$dat,
|
|
3154
|
+
fetchedSegments = _useFetchSegments.data,
|
|
2968
3155
|
isLoading = _useFetchSegments.isLoading;
|
|
3156
|
+
var _useState = useState(fetchedSegments),
|
|
3157
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
3158
|
+
segments = _useState2[0],
|
|
3159
|
+
setSegments = _useState2[1];
|
|
2969
3160
|
var _useUpdateSegment = useUpdateSegment(),
|
|
2970
3161
|
updateSegment = _useUpdateSegment.mutate,
|
|
2971
3162
|
isUpdating = _useUpdateSegment.isLoading;
|
|
2972
|
-
var
|
|
3163
|
+
var _useState3 = useState({
|
|
2973
3164
|
action: "",
|
|
2974
3165
|
segment: undefined
|
|
2975
3166
|
}),
|
|
2976
|
-
|
|
2977
|
-
confirmAction =
|
|
2978
|
-
setConfirmAction =
|
|
3167
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
3168
|
+
confirmAction = _useState4[0],
|
|
3169
|
+
setConfirmAction = _useState4[1];
|
|
3170
|
+
var handleSegmentsReorder = function handleSegmentsReorder(_ref2) {
|
|
3171
|
+
var source = _ref2.source,
|
|
3172
|
+
destination = _ref2.destination;
|
|
3173
|
+
if (!destination || source.index === destination.index) return;
|
|
3174
|
+
var reorderedSegments = reorderList(segments, source.index, destination.index);
|
|
3175
|
+
updateSegment({
|
|
3176
|
+
id: segments[source.index].id,
|
|
3177
|
+
payload: {
|
|
3178
|
+
position: destination.index + 1
|
|
3179
|
+
},
|
|
3180
|
+
showToastr: false
|
|
3181
|
+
});
|
|
3182
|
+
setSegments(reorderedSegments);
|
|
3183
|
+
};
|
|
2979
3184
|
var clearAppliedFilters = function clearAppliedFilters() {
|
|
2980
3185
|
var _filters$, _filters$2;
|
|
2981
3186
|
var filters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : appliedFilters;
|
|
@@ -2990,10 +3195,10 @@ var useSegments = function useSegments(_ref) {
|
|
|
2990
3195
|
})
|
|
2991
3196
|
});
|
|
2992
3197
|
};
|
|
2993
|
-
var handleSelectSegment = function handleSelectSegment(
|
|
3198
|
+
var handleSelectSegment = function handleSelectSegment(_ref3) {
|
|
2994
3199
|
var _filters$3;
|
|
2995
|
-
var id =
|
|
2996
|
-
filters =
|
|
3200
|
+
var id = _ref3.id,
|
|
3201
|
+
filters = _ref3.filters;
|
|
2997
3202
|
history.push({
|
|
2998
3203
|
search: buildUrlFromSegment({
|
|
2999
3204
|
columns: columns,
|
|
@@ -3002,6 +3207,9 @@ var useSegments = function useSegments(_ref) {
|
|
|
3002
3207
|
})
|
|
3003
3208
|
});
|
|
3004
3209
|
};
|
|
3210
|
+
useEffect(function () {
|
|
3211
|
+
setSegments(fetchedSegments);
|
|
3212
|
+
}, [fetchedSegments]);
|
|
3005
3213
|
if (isLoading) {
|
|
3006
3214
|
return /*#__PURE__*/React.createElement(Spinner, null);
|
|
3007
3215
|
}
|
|
@@ -3010,9 +3218,9 @@ var useSegments = function useSegments(_ref) {
|
|
|
3010
3218
|
style: "body2"
|
|
3011
3219
|
}, t("neetoFilters.segments.noSegmentsFound"));
|
|
3012
3220
|
}
|
|
3013
|
-
var handleUpdate = function handleUpdate(
|
|
3014
|
-
var name =
|
|
3015
|
-
var setFieldError =
|
|
3221
|
+
var handleUpdate = function handleUpdate(_ref4, _ref5) {
|
|
3222
|
+
var name = _ref4.name;
|
|
3223
|
+
var setFieldError = _ref5.setFieldError;
|
|
3016
3224
|
var filtersPayload = buildSegmentsPayload(filters, childrenKeys);
|
|
3017
3225
|
updateSegment({
|
|
3018
3226
|
id: confirmAction.segment.id,
|
|
@@ -3036,9 +3244,11 @@ var useSegments = function useSegments(_ref) {
|
|
|
3036
3244
|
};
|
|
3037
3245
|
var filters = buildFiltersFromSearchParams(columns);
|
|
3038
3246
|
return {
|
|
3247
|
+
appliedFilters: appliedFilters,
|
|
3039
3248
|
segments: segments,
|
|
3040
3249
|
clearAppliedFilters: clearAppliedFilters,
|
|
3041
3250
|
handleSelectSegment: handleSelectSegment,
|
|
3251
|
+
handleSegmentsReorder: handleSegmentsReorder,
|
|
3042
3252
|
setConfirmAction: setConfirmAction,
|
|
3043
3253
|
isUpdating: isUpdating,
|
|
3044
3254
|
handleUpdate: handleUpdate,
|
|
@@ -3087,6 +3297,7 @@ var Segment = function Segment(_ref) {
|
|
|
3087
3297
|
}];
|
|
3088
3298
|
return /*#__PURE__*/React.createElement("div", {
|
|
3089
3299
|
onClick: onClick,
|
|
3300
|
+
"data-cy": "neeto-filters-segment-block-".concat(hyphenate(label)),
|
|
3090
3301
|
className: classnames("neeto-ui-border-gray-400 neeto-ui-bg-white hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-all duration-300 ease-in-out", {
|
|
3091
3302
|
"neeto-filters-segment--active": isActive
|
|
3092
3303
|
})
|
|
@@ -3108,30 +3319,162 @@ var Segment = function Segment(_ref) {
|
|
|
3108
3319
|
|
|
3109
3320
|
var MenuBlocks = function MenuBlocks(_ref) {
|
|
3110
3321
|
var entity = _ref.entity,
|
|
3111
|
-
|
|
3322
|
+
segments = _ref.segments,
|
|
3323
|
+
segmentId = _ref.segmentId,
|
|
3324
|
+
isUpdating = _ref.isUpdating,
|
|
3325
|
+
appliedFilters = _ref.appliedFilters,
|
|
3326
|
+
setConfirmAction = _ref.setConfirmAction,
|
|
3112
3327
|
defaultSegmentName = _ref.defaultSegmentName,
|
|
3113
|
-
|
|
3114
|
-
|
|
3328
|
+
handleSelectSegment = _ref.handleSelectSegment,
|
|
3329
|
+
clearAppliedFilters = _ref.clearAppliedFilters,
|
|
3330
|
+
handleSegmentsReorder = _ref.handleSegmentsReorder;
|
|
3115
3331
|
var _useTranslation = useTranslation(),
|
|
3116
3332
|
t = _useTranslation.t;
|
|
3117
|
-
var segmentFormInitialRef = useRef(null);
|
|
3118
3333
|
var _useState = useState(false),
|
|
3119
3334
|
_useState2 = _slicedToArray(_useState, 2),
|
|
3120
3335
|
showAll = _useState2[0],
|
|
3121
3336
|
setShowAll = _useState2[1];
|
|
3122
|
-
|
|
3123
|
-
|
|
3124
|
-
|
|
3337
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MenuBar.SubTitle, null, /*#__PURE__*/React.createElement(Typography, {
|
|
3338
|
+
component: "h4",
|
|
3339
|
+
style: "h5",
|
|
3340
|
+
textTransform: "uppercase",
|
|
3341
|
+
weight: "bold"
|
|
3342
|
+
}, t("neetoFilters.common.segments"))), segments.length > ITEMS_MAX_COUNT && /*#__PURE__*/React.createElement(Button, {
|
|
3343
|
+
icon: Down,
|
|
3344
|
+
style: "link",
|
|
3345
|
+
label: showAll ? t("neetoFilters.segments.showLess") : t("neetoFilters.segments.showMoreNumbers", {
|
|
3346
|
+
entity: segments.length - ITEMS_MAX_COUNT
|
|
3347
|
+
}),
|
|
3348
|
+
onClick: function onClick() {
|
|
3349
|
+
return setShowAll(function (open) {
|
|
3350
|
+
return !open;
|
|
3351
|
+
});
|
|
3352
|
+
}
|
|
3353
|
+
}), /*#__PURE__*/React.createElement(Segment, {
|
|
3354
|
+
isActive: isEmpty(appliedFilters),
|
|
3355
|
+
label: defaultSegmentName,
|
|
3356
|
+
onClick: clearAppliedFilters
|
|
3357
|
+
}), /*#__PURE__*/React.createElement(DragDropContext, {
|
|
3358
|
+
onDragEnd: handleSegmentsReorder
|
|
3359
|
+
}, /*#__PURE__*/React.createElement(Droppable, {
|
|
3360
|
+
droppableId: "neeto-filters-segments-".concat(entity)
|
|
3361
|
+
}, function (_ref2) {
|
|
3362
|
+
var innerRef = _ref2.innerRef,
|
|
3363
|
+
droppableProps = _ref2.droppableProps,
|
|
3364
|
+
placeholder = _ref2.placeholder;
|
|
3365
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
3366
|
+
ref: innerRef
|
|
3367
|
+
}, droppableProps), segments.slice(0, showAll ? segments.length : ITEMS_MAX_COUNT).map(function (segment, index) {
|
|
3368
|
+
return /*#__PURE__*/React.createElement(Draggable, {
|
|
3369
|
+
index: index,
|
|
3370
|
+
draggableId: segment.id.toString(),
|
|
3371
|
+
isDragDisabled: isUpdating,
|
|
3372
|
+
key: segment.id.toString()
|
|
3373
|
+
}, function (_ref3) {
|
|
3374
|
+
var innerRef = _ref3.innerRef,
|
|
3375
|
+
draggableProps = _ref3.draggableProps,
|
|
3376
|
+
dragHandleProps = _ref3.dragHandleProps;
|
|
3377
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
3378
|
+
ref: innerRef
|
|
3379
|
+
}, draggableProps, dragHandleProps), /*#__PURE__*/React.createElement(Segment, {
|
|
3380
|
+
segments: segments,
|
|
3381
|
+
setConfirmAction: setConfirmAction,
|
|
3382
|
+
shouldShowDropdown: true,
|
|
3383
|
+
id: segment.id,
|
|
3384
|
+
isActive: segment.id === segmentId,
|
|
3385
|
+
key: segment.id,
|
|
3386
|
+
label: segment.name,
|
|
3387
|
+
onClick: function onClick() {
|
|
3388
|
+
return handleSelectSegment(segment);
|
|
3389
|
+
}
|
|
3390
|
+
}));
|
|
3391
|
+
});
|
|
3392
|
+
}), placeholder);
|
|
3393
|
+
})));
|
|
3394
|
+
};
|
|
3395
|
+
var MenuBlocks$1 = /*#__PURE__*/React.memo(MenuBlocks);
|
|
3396
|
+
|
|
3397
|
+
var SidebarBlock = function SidebarBlock(_ref) {
|
|
3398
|
+
var id = _ref.id,
|
|
3399
|
+
isActive = _ref.isActive,
|
|
3400
|
+
label = _ref.label,
|
|
3401
|
+
onClick = _ref.onClick,
|
|
3402
|
+
segments = _ref.segments,
|
|
3403
|
+
setConfirmAction = _ref.setConfirmAction;
|
|
3404
|
+
var _useTranslation = useTranslation(),
|
|
3405
|
+
t = _useTranslation.t;
|
|
3406
|
+
var menuItems = [{
|
|
3407
|
+
key: "edit",
|
|
3408
|
+
label: t("neetoFilters.common.edit"),
|
|
3409
|
+
onClick: function onClick() {
|
|
3410
|
+
return setConfirmAction({
|
|
3411
|
+
action: SEGMENT_ACTIONS.EDIT,
|
|
3412
|
+
segment: findById(id, segments)
|
|
3413
|
+
});
|
|
3414
|
+
}
|
|
3415
|
+
}, {
|
|
3416
|
+
key: "delete",
|
|
3417
|
+
label: t("neetoFilters.common.delete"),
|
|
3418
|
+
onClick: function onClick() {
|
|
3419
|
+
return setConfirmAction({
|
|
3420
|
+
action: SEGMENT_ACTIONS.DELETE,
|
|
3421
|
+
segment: findById(id, segments)
|
|
3422
|
+
});
|
|
3423
|
+
}
|
|
3424
|
+
}];
|
|
3425
|
+
var dataCyPrefix = hyphenate(label);
|
|
3426
|
+
return /*#__PURE__*/React.createElement("button", {
|
|
3427
|
+
onClick: onClick,
|
|
3428
|
+
"data-cy": "".concat(dataCyPrefix, "-segment-link"),
|
|
3429
|
+
className: classnames("neeto-molecules-sidebar-segment neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none mb-0 w-full py-1", {
|
|
3430
|
+
active: isActive
|
|
3431
|
+
})
|
|
3432
|
+
}, /*#__PURE__*/React.createElement(Typography, {
|
|
3433
|
+
className: "neeto-molecules-sidebar__link-sub-label neeto-molecules-sidebar-segment__label neeto-ui-flex-grow min-w-0",
|
|
3434
|
+
component: "span",
|
|
3435
|
+
"data-cy": "".concat(dataCyPrefix, "-sub-link-label"),
|
|
3436
|
+
style: "body2"
|
|
3437
|
+
}, label), /*#__PURE__*/React.createElement(MoreDropdown, {
|
|
3438
|
+
menuItems: menuItems,
|
|
3439
|
+
dropdownButtonProps: {
|
|
3440
|
+
"data-testid": "segment-more-menu-".concat(dataCyPrefix),
|
|
3441
|
+
className: "flex-shrink-0",
|
|
3442
|
+
size: "small",
|
|
3443
|
+
style: "secondary"
|
|
3444
|
+
},
|
|
3445
|
+
dropdownProps: {
|
|
3446
|
+
position: "bottom-end",
|
|
3447
|
+
strategy: "fixed",
|
|
3448
|
+
autoWidth: true
|
|
3449
|
+
}
|
|
3450
|
+
}));
|
|
3451
|
+
};
|
|
3452
|
+
|
|
3453
|
+
var Segments = function Segments(_ref) {
|
|
3454
|
+
var entity = _ref.entity,
|
|
3455
|
+
columns = _ref.columns,
|
|
3456
|
+
_ref$defaultSegmentNa = _ref.defaultSegmentName,
|
|
3457
|
+
defaultSegmentName = _ref$defaultSegmentNa === void 0 ? ALL_RESULTS : _ref$defaultSegmentNa,
|
|
3458
|
+
customFilters = _ref.customFilters,
|
|
3459
|
+
_ref$childrenKeys = _ref.childrenKeys,
|
|
3460
|
+
childrenKeys = _ref$childrenKeys === void 0 ? [] : _ref$childrenKeys,
|
|
3461
|
+
_ref$isIndependent = _ref.isIndependent,
|
|
3462
|
+
isIndependent = _ref$isIndependent === void 0 ? true : _ref$isIndependent;
|
|
3463
|
+
var _useTranslation = useTranslation(),
|
|
3464
|
+
t = _useTranslation.t;
|
|
3465
|
+
var _useQueryParams = useQueryParams(),
|
|
3466
|
+
segmentId = _useQueryParams.segmentId;
|
|
3467
|
+
var segmentFormInitialRef = useRef(null);
|
|
3125
3468
|
var _useSegments = useSegments({
|
|
3126
3469
|
entity: entity,
|
|
3127
3470
|
columns: columns,
|
|
3128
|
-
appliedFilters: appliedFilters,
|
|
3129
3471
|
childrenKeys: childrenKeys
|
|
3130
3472
|
}),
|
|
3131
3473
|
_useSegments$segments = _useSegments.segments,
|
|
3132
3474
|
segments = _useSegments$segments === void 0 ? [] : _useSegments$segments,
|
|
3133
3475
|
clearAppliedFilters = _useSegments.clearAppliedFilters,
|
|
3134
3476
|
handleSelectSegment = _useSegments.handleSelectSegment,
|
|
3477
|
+
handleSegmentsReorder = _useSegments.handleSegmentsReorder,
|
|
3135
3478
|
onClose = _useSegments.onClose,
|
|
3136
3479
|
setConfirmAction = _useSegments.setConfirmAction,
|
|
3137
3480
|
selectedSegment = _useSegments.selectedSegment,
|
|
@@ -3139,27 +3482,29 @@ var MenuBlocks = function MenuBlocks(_ref) {
|
|
|
3139
3482
|
isEditPaneOpen = _useSegments.isEditPaneOpen,
|
|
3140
3483
|
isUpdating = _useSegments.isUpdating,
|
|
3141
3484
|
handleUpdate = _useSegments.handleUpdate,
|
|
3142
|
-
filters = _useSegments.filters
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3147
|
-
|
|
3148
|
-
|
|
3149
|
-
|
|
3150
|
-
|
|
3151
|
-
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
|
|
3158
|
-
|
|
3159
|
-
|
|
3485
|
+
filters = _useSegments.filters,
|
|
3486
|
+
appliedFilters = _useSegments.appliedFilters;
|
|
3487
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
3488
|
+
"data-testid": "neeto-filters-segments"
|
|
3489
|
+
}, isIndependent ? /*#__PURE__*/React.createElement(MenuBlocks$1, {
|
|
3490
|
+
appliedFilters: appliedFilters,
|
|
3491
|
+
clearAppliedFilters: clearAppliedFilters,
|
|
3492
|
+
defaultSegmentName: defaultSegmentName,
|
|
3493
|
+
entity: entity,
|
|
3494
|
+
handleSegmentsReorder: handleSegmentsReorder,
|
|
3495
|
+
handleSelectSegment: handleSelectSegment,
|
|
3496
|
+
isUpdating: isUpdating,
|
|
3497
|
+
segmentId: segmentId,
|
|
3498
|
+
segments: segments,
|
|
3499
|
+
setConfirmAction: setConfirmAction
|
|
3500
|
+
}) : /*#__PURE__*/React.createElement(React.Fragment, null, isNotEmpty(segments) && /*#__PURE__*/React.createElement(Typography, {
|
|
3501
|
+
style: "body3",
|
|
3502
|
+
weight: "semibold",
|
|
3503
|
+
className: "neeto-molecules-sidebar-segments-header neeto-ui-text-transform-capitalize neeto-ui-text-gray-600 py-2 uppercase"
|
|
3504
|
+
}, t("neetoFilters.segments.segment", PLURAL)), segments.map(function (segment) {
|
|
3505
|
+
return /*#__PURE__*/React.createElement(SidebarBlock, {
|
|
3160
3506
|
segments: segments,
|
|
3161
3507
|
setConfirmAction: setConfirmAction,
|
|
3162
|
-
shouldShowDropdown: true,
|
|
3163
3508
|
id: segment.id,
|
|
3164
3509
|
isActive: segment.id === segmentId,
|
|
3165
3510
|
key: segment.id,
|
|
@@ -3168,7 +3513,7 @@ var MenuBlocks = function MenuBlocks(_ref) {
|
|
|
3168
3513
|
return handleSelectSegment(segment);
|
|
3169
3514
|
}
|
|
3170
3515
|
});
|
|
3171
|
-
}), /*#__PURE__*/React.createElement(SegmentForm, {
|
|
3516
|
+
})), /*#__PURE__*/React.createElement(SegmentForm, {
|
|
3172
3517
|
childrenKeys: childrenKeys,
|
|
3173
3518
|
columns: columns,
|
|
3174
3519
|
customFilters: customFilters,
|
|
@@ -3188,30 +3533,6 @@ var MenuBlocks = function MenuBlocks(_ref) {
|
|
|
3188
3533
|
segment: selectedSegment
|
|
3189
3534
|
}));
|
|
3190
3535
|
};
|
|
3191
|
-
var MenuBlocks$1 = /*#__PURE__*/React.memo(MenuBlocks);
|
|
3192
|
-
|
|
3193
|
-
var Segments = withT(function (_ref) {
|
|
3194
|
-
var t = _ref.t,
|
|
3195
|
-
entity = _ref.entity,
|
|
3196
|
-
columns = _ref.columns,
|
|
3197
|
-
_ref$defaultSegmentNa = _ref.defaultSegmentName,
|
|
3198
|
-
defaultSegmentName = _ref$defaultSegmentNa === void 0 ? t("neetoFilters.common.allResults") : _ref$defaultSegmentNa,
|
|
3199
|
-
customFilters = _ref.customFilters,
|
|
3200
|
-
_ref$childrenKeys = _ref.childrenKeys,
|
|
3201
|
-
childrenKeys = _ref$childrenKeys === void 0 ? [] : _ref$childrenKeys;
|
|
3202
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MenuBar.SubTitle, null, /*#__PURE__*/React.createElement(Typography, {
|
|
3203
|
-
component: "h4",
|
|
3204
|
-
style: "h5",
|
|
3205
|
-
textTransform: "uppercase",
|
|
3206
|
-
weight: "bold"
|
|
3207
|
-
}, t("neetoFilters.common.segments"))), /*#__PURE__*/React.createElement(MenuBlocks$1, {
|
|
3208
|
-
childrenKeys: childrenKeys,
|
|
3209
|
-
columns: columns,
|
|
3210
|
-
customFilters: customFilters,
|
|
3211
|
-
defaultSegmentName: defaultSegmentName,
|
|
3212
|
-
entity: entity
|
|
3213
|
-
}));
|
|
3214
|
-
});
|
|
3215
3536
|
var index = /*#__PURE__*/React.memo(Segments);
|
|
3216
3537
|
|
|
3217
3538
|
export { Bar, Filters, index as Segments, buildFilterColumnsFromFields, buildFiltersFromURL, buildSelectorsFromURL, buildUrlFromFilters, buildUrlFromSegment, useDestroySegment, useFetchSegments, useUpdateSegment };
|