dtable-utils 0.0.1 → 0.0.2-alpha1

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/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("dayjs"),r=require("@babel/runtime/helpers/classCallCheck"),a=require("@babel/runtime/helpers/createClass"),n=require("@babel/runtime/helpers/typeof");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o,_,l,s,u,E,O,c=i(e),T=i(t),d=i(r),f=i(a),R=i(n),A={DEFAULT:"default",NUMBER:"number",TEXT:"text",CHECKBOX:"checkbox",DATE:"date",SINGLE_SELECT:"single-select",LONG_TEXT:"long-text",IMAGE:"image",FILE:"file",MULTIPLE_SELECT:"multiple-select",COLLABORATOR:"collaborator",LINK:"link",FORMULA:"formula",LINK_FORMULA:"link-formula",CREATOR:"creator",CTIME:"ctime",LAST_MODIFIER:"last-modifier",MTIME:"mtime",GEOLOCATION:"geolocation",AUTO_NUMBER:"auto-number",URL:"url",EMAIL:"email",DURATION:"duration",BUTTON:"button",RATE:"rate",DIGITAL_SIGN:"digital-sign",BOOL:"bool",STRING:"string"},M=(o={},c.default(o,A.DEFAULT,"dtable-font dtable-icon-single-line-text"),c.default(o,A.TEXT,"dtable-font dtable-icon-single-line-text"),c.default(o,A.NUMBER,"dtable-font dtable-icon-number"),c.default(o,A.CHECKBOX,"dtable-font dtable-icon-check-square-solid"),c.default(o,A.DATE,"dtable-font dtable-icon-calendar-alt-solid"),c.default(o,A.SINGLE_SELECT,"dtable-font dtable-icon-single-election"),c.default(o,A.LONG_TEXT,"dtable-font dtable-icon-long-text"),c.default(o,A.IMAGE,"dtable-font dtable-icon-picture"),c.default(o,A.FILE,"dtable-font dtable-icon-file-alt-solid"),c.default(o,A.MULTIPLE_SELECT,"dtable-font dtable-icon-multiple-selection"),c.default(o,A.COLLABORATOR,"dtable-font dtable-icon-collaborator"),c.default(o,A.LINK,"dtable-font dtable-icon-link-other-record"),c.default(o,A.FORMULA,"dtable-font dtable-icon-formula"),c.default(o,A.LINK_FORMULA,"dtable-font dtable-icon-link-formulas"),c.default(o,A.CREATOR,"dtable-font dtable-icon-creator"),c.default(o,A.CTIME,"dtable-font dtable-icon-creation-time"),c.default(o,A.LAST_MODIFIER,"dtable-font dtable-icon-creator"),c.default(o,A.MTIME,"dtable-font dtable-icon-creation-time"),c.default(o,A.GEOLOCATION,"dtable-font dtable-icon-location"),c.default(o,A.AUTO_NUMBER,"dtable-font dtable-icon-autonumber"),c.default(o,A.URL,"dtable-font dtable-icon-url"),c.default(o,A.EMAIL,"dtable-font dtable-icon-email"),c.default(o,A.DURATION,"dtable-font dtable-icon-duration"),c.default(o,A.BUTTON,"dtable-font dtable-icon-button"),c.default(o,A.RATE,"dtable-font dtable-icon-rate"),c.default(o,A.DIGITAL_SIGN,"dtable-font dtable-icon-handwritten-signature"),o),N=[A.DATE,A.CTIME,A.MTIME],F=[A.NUMBER,A.DURATION,A.RATE],L=[A.COLLABORATOR,A.CREATOR,A.LAST_MODIFIER],S="YYYY-MM-DD",D="year",C="month",m="day",I="hours",p="minutes",Y={H_MM:"h:mm",H_MM_SS:"h:mm:ss",H_MM_SS_S:"h:mm:ss.s",H_MM_SS_SS:"h:mm:ss.ss",H_MM_SS_SSS:"h:mm:ss.sss"},y=[{name:Y.H_MM,type:Y.H_MM},{name:Y.H_MM_SS,type:Y.H_MM_SS}],h=(_={},c.default(_,Y.H_MM,0),c.default(_,Y.H_MM_SS,0),c.default(_,Y.H_MM_SS_S,1),c.default(_,Y.H_MM_SS_SS,2),c.default(_,Y.H_MM_SS_SSS,3),_),g=(l={},c.default(l,Y.H_MM,"0:00"),c.default(l,Y.H_MM_SS,"0:00"),c.default(l,Y.H_MM_SS_S,"0:00.0"),c.default(l,Y.H_MM_SS_SS,"0:00.00"),c.default(l,Y.H_MM_SS_SSS,"0:00.000"),l),v="number",H={TODAY:"today",TOMORROW:"tomorrow",YESTERDAY:"yesterday",ONE_WEEK_AGO:"one_week_ago",ONE_WEEK_FROM_NOW:"one_week_from_now",ONE_MONTH_AGO:"one_month_ago",ONE_MONTH_FROM_NOW:"one_month_from_now",NUMBER_OF_DAYS_AGO:"number_of_days_ago",NUMBER_OF_DAYS_FROM_NOW:"number_of_days_from_now",EXACT_DATE:"exact_date",THE_PAST_WEEK:"the_past_week",THE_PAST_MONTH:"the_past_month",THE_PAST_YEAR:"the_past_year",THE_NEXT_WEEK:"the_next_week",THE_NEXT_MONTH:"the_next_month",THE_NEXT_YEAR:"the_next_year",THE_NEXT_NUMBERS_OF_DAYS:"the_next_numbers_of_days",THE_PAST_NUMBERS_OF_DAYS:"the_past_numbers_of_days",THIS_WEEK:"this_week",THIS_MONTH:"this_month",THIS_YEAR:"this_year"},U=(s={},c.default(s,H.TODAY,"today"),c.default(s,H.TOMORROW,"tomorrow"),c.default(s,H.YESTERDAY,"yesterday"),c.default(s,H.ONE_WEEK_AGO,"one week ago"),c.default(s,H.ONE_WEEK_FROM_NOW,"one week from now"),c.default(s,H.ONE_MONTH_AGO,"one month ago"),c.default(s,H.ONE_MONTH_FROM_NOW,"one month from now"),c.default(s,H.NUMBER_OF_DAYS_AGO,"number of days ago"),c.default(s,H.NUMBER_OF_DAYS_FROM_NOW,"number of days from now"),c.default(s,H.EXACT_DATE,"exact date"),c.default(s,H.THE_PAST_WEEK,"the past week"),c.default(s,H.THE_PAST_MONTH,"the past month"),c.default(s,H.THE_PAST_YEAR,"the past year"),c.default(s,H.THE_NEXT_WEEK,"the next week"),c.default(s,H.THE_NEXT_MONTH,"the next month"),c.default(s,H.THE_NEXT_YEAR,"the next year"),c.default(s,H.THE_NEXT_NUMBERS_OF_DAYS,"the next numbers of days..."),c.default(s,H.THE_PAST_NUMBERS_OF_DAYS,"the past numbers of days..."),c.default(s,H.THIS_WEEK,"this week"),c.default(s,H.THIS_MONTH,"this month"),c.default(s,H.THIS_YEAR,"this year"),s),B={CONTAINS:"contains",NOT_CONTAIN:"does_not_contain",IS:"is",IS_NOT:"is_not",EQUAL:"equal",NOT_EQUAL:"not_equal",LESS:"less",GREATER:"greater",LESS_OR_EQUAL:"less_or_equal",GREATER_OR_EQUAL:"greater_or_equal",EMPTY:"is_empty",NOT_EMPTY:"is_not_empty",IS_WITHIN:"is_within",IS_BEFORE:"is_before",IS_AFTER:"is_after",IS_ON_OR_BEFORE:"is_on_or_before",IS_ON_OR_AFTER:"is_on_or_after",HAS_ANY_OF:"has_any_of",HAS_ALL_OF:"has_all_of",HAS_NONE_OF:"has_none_of",IS_EXACTLY:"is_exactly",INCLUDE_ME:"include_me",IS_CURRENT_USER_ID:"is_current_user_ID",IS_ANY_OF:"is_any_of",IS_NONE_OF:"is_none_of"},b=(u={},c.default(u,B.CONTAINS,"contains"),c.default(u,B.NOT_CONTAIN,"does not contain"),c.default(u,B.IS,"is"),c.default(u,B.IS_NOT,"is not"),c.default(u,B.EQUAL,"="),c.default(u,B.NOT_EQUAL,"≠"),c.default(u,B.LESS,"<"),c.default(u,B.GREATER,">"),c.default(u,B.LESS_OR_EQUAL,"≤"),c.default(u,B.GREATER_OR_EQUAL,"≥"),c.default(u,B.EMPTY,"is empty"),c.default(u,B.NOT_EMPTY,"is not empty"),c.default(u,B.IS_WITHIN,"is within..."),c.default(u,B.IS_BEFORE,"is before..."),c.default(u,B.IS_AFTER,"is after..."),c.default(u,B.IS_ON_OR_BEFORE,"is on or before..."),c.default(u,B.IS_ON_OR_AFTER,"is on or after..."),c.default(u,B.HAS_ANY_OF,"has any of..."),c.default(u,B.HAS_ALL_OF,"has all of..."),c.default(u,B.HAS_NONE_OF,"has none of..."),c.default(u,B.IS_EXACTLY,"is exactly..."),c.default(u,B.IS_CURRENT_USER_ID,"is current user's ID"),u),P=[B.CONTAINS,B.NOT_CONTAIN,B.IS,B.IS_NOT,B.EMPTY,B.NOT_EMPTY,B.IS_CURRENT_USER_ID],x=[B.EQUAL,B.NOT_EQUAL,B.LESS,B.GREATER,B.LESS_OR_EQUAL,B.GREATER_OR_EQUAL,B.EMPTY,B.NOT_EMPTY],G=[B.IS,B.IS_WITHIN,B.IS_BEFORE,B.IS_AFTER,B.IS_ON_OR_BEFORE,B.IS_ON_OR_AFTER,B.IS_NOT,B.EMPTY,B.NOT_EMPTY],X=P.filter((function(e){return e!==B.IS_CURRENT_USER_ID})),W=[H.TODAY,H.TOMORROW,H.YESTERDAY,H.ONE_WEEK_AGO,H.ONE_WEEK_FROM_NOW,H.ONE_MONTH_AGO,H.ONE_MONTH_FROM_NOW,H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW,H.EXACT_DATE],w=(E={},c.default(E,A.TEXT,{filterPredicateList:P}),c.default(E,A.NUMBER,{filterPredicateList:x}),c.default(E,A.CHECKBOX,{filterPredicateList:[B.IS]}),c.default(E,A.DATE,{filterPredicateList:G,filterTermModifierList:W}),c.default(E,A.CTIME,{filterPredicateList:G,filterTermModifierList:W}),c.default(E,A.MTIME,{filterPredicateList:G,filterTermModifierList:W}),c.default(E,A.SINGLE_SELECT,{filterPredicateList:[B.IS,B.IS_NOT,B.IS_ANY_OF,B.IS_NONE_OF,B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.MULTIPLE_SELECT,{filterPredicateList:[B.HAS_ANY_OF,B.HAS_ALL_OF,B.HAS_NONE_OF,B.IS_EXACTLY,B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.COLLABORATOR,{filterPredicateList:[B.HAS_ANY_OF,B.HAS_ALL_OF,B.HAS_NONE_OF,B.IS_EXACTLY,B.EMPTY,B.NOT_EMPTY,B.INCLUDE_ME]}),c.default(E,A.CREATOR,{filterPredicateList:[B.CONTAINS,B.NOT_CONTAIN,B.INCLUDE_ME,B.IS,B.IS_NOT]}),c.default(E,A.GEOLOCATION,{filterPredicateList:X}),c.default(E,A.FORMULA,{}),c.default(E,A.LINK_FORMULA,{}),c.default(E,A.LINK,{}),c.default(E,A.LAST_MODIFIER,{filterPredicateList:[B.CONTAINS,B.NOT_CONTAIN,B.INCLUDE_ME,B.IS,B.IS_NOT]}),c.default(E,A.AUTO_NUMBER,{filterPredicateList:[B.CONTAINS,B.NOT_CONTAIN,B.IS,B.IS_NOT]}),c.default(E,A.EMAIL,{filterPredicateList:[B.CONTAINS,B.NOT_CONTAIN,B.IS,B.IS_NOT,B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.URL,{filterPredicateList:[B.CONTAINS,B.NOT_CONTAIN,B.IS,B.IS_NOT,B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.IMAGE,{filterPredicateList:[B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.FILE,{filterPredicateList:[B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.LONG_TEXT,{filterPredicateList:[B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.DURATION,{filterPredicateList:x}),c.default(E,A.RATE,{filterPredicateList:x}),c.default(E,A.DIGITAL_SIGN,{filterPredicateList:[B.EMPTY,B.NOT_EMPTY]}),c.default(E,A.STRING,{filterPredicateList:P}),c.default(E,A.BOOL,{filterPredicateList:[B.IS]}),E),k=[H.EXACT_DATE,H.TODAY,H.TOMORROW,H.YESTERDAY,H.ONE_WEEK_AGO,H.ONE_WEEK_FROM_NOW,H.ONE_MONTH_AGO,H.ONE_MONTH_FROM_NOW,H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW],V=[H.THE_PAST_WEEK,H.THE_PAST_MONTH,H.THE_PAST_YEAR,H.THIS_WEEK,H.THIS_MONTH,H.THIS_YEAR,H.THE_NEXT_WEEK,H.THE_NEXT_MONTH,H.THE_NEXT_YEAR,H.THE_NEXT_NUMBERS_OF_DAYS,H.THE_PAST_NUMBERS_OF_DAYS],K={INVALID_FILTER:"invalid filter",INCOMPLETE_FILTER:"incomplete filter",COLUMN_MISSING:"the column to filter does not exist",COLUMN_NOT_SUPPORTED:"the column to filter is not supported",UNMATCHED_PREDICATE:"unmatched filter predicate",UNMATCHED_MODIFIER:"unmatched filter modifier",INVALID_TERM:"invalid filter term"},j={NUMBER:"number",STRING:"string",DATE:"date",BOOL:"bool",ARRAY:"array"},Q=(O={},c.default(O,A.FORMULA,!0),c.default(O,A.LINK_FORMULA,!0),O),q=function(e,t){if(!e||"string"!=typeof e)return"";var r=T.default(e);if(!r.isValid())return e;switch(t){case"D/M/YYYY":case"DD/MM/YYYY":var a=r.format("YYYY-MM-DD").split("-");return"".concat(a[2],"/").concat(a[1],"/").concat(a[0]);case"D/M/YYYY HH:mm":case"DD/MM/YYYY HH:mm":var n=r.format("YYYY-MM-DD HH:mm").split(" "),i=n[0].split("-");return"".concat(i[2],"/").concat(i[1],"/").concat(i[0]," ").concat(n[1]);case"M/D/YYYY":return r.format("M/D/YYYY");case"M/D/YYYY HH:mm":return r.format("M/D/YYYY HH:mm");case"YYYY-MM-DD":default:return r.format("YYYY-MM-DD");case"YYYY-MM-DD HH:mm":return r.format("YYYY-MM-DD HH:mm");case"YYYY-MM-DD HH:mm:ss":return r.format("YYYY-MM-DD HH:mm:ss");case"DD.MM.YYYY":return r.format("DD.MM.YYYY");case"DD.MM.YYYY HH:mm":return r.format("DD.MM.YYYY HH:mm")}},Z=function(e,t){if(!e&&0!==e)return"";var r=(t||{}).duration_format;if(r=r||Y.H_MM,y.findIndex((function(e){return e.type===r}))<0)return"";if(0===e)return g[r];var a=r.indexOf(".")>-1,n=Math.abs(e);a||(n=Math.round(n)),n=function(e,t){var r=h[t];if(r<1)return e;var a=Math.pow(10,r);return Math.round(e*a)/a}(n,r);var i=String(n).split("."),o=i.length,_=0;o>1&&(_=(_=i[o-1])?_-0:0);var l=h[r],s=function(e,t){if(e===Y.H_MM_SS_S)return 0===t?".0":"";if(e===Y.H_MM_SS_SS)return 0===t?".00":t<10?"0":"";if(e===Y.H_MM_SS_SSS){if(0===t)return".000";if(t<10)return"00";if(t<100)return"0"}return""}(r,_),u=parseInt(n/3600,10),E=parseInt((n-3600*u)/60,10),O=e<0?"-":"";if(r===Y.H_MM)return O+="".concat(u,":").concat(E>9?E:"0".concat(E));var c=Number.parseFloat((n-3600*u-60*E).toFixed(l));return E=E>9?E:"0".concat(E),c=c>9?c:"0".concat(c),O+="".concat(u,":").concat(E,":").concat(c).concat(s)},z=function(e){var t=e.toString().split(/[eE]/),r=(t[0].split(".")[1]||"").length-+(t[1]||0);return r>0?r:0},$=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:15;return+parseFloat(Number(e).toPrecision(t))},J=function(e){if(-1===e.toString().indexOf("e"))return Number(e.toString().replace(".",""));var t=z(e);return t>0?$(Number(e)*Math.pow(10,t)):Number(e)},ee=function(e,t){var r=J(e),a=J(t),n=z(e)+z(t);return r*a/Math.pow(10,n)},te={comma:",",dot:".",no:"",space:" "},re=function(e){return"string"!=typeof e?"":e.endsWith("0")?e.replace(/(?:\.0*|(\.\d+?)0+)$/,"$1"):e},ae=function(e,t){var r=t.formats,a=t.isCurrency,n=void 0===a||a,i=r||{},o=i.decimal,_=void 0===o?"dot":o,l=i.thousands,s=void 0===l?"no":l,u=i.precision,E=void 0===u?2:u,O=i.enable_precision,c=void 0!==O&&O;if(String(e).includes("e")){if(e<1&&e>-1){var T=e.toFixed(c?E:8);return c||(T=re(T)),0===parseFloat(T)&&T.startsWith("-")?T.substring(1):T}return e}var d,f,R,A=te[_],M=te[s],N=c?E:function(e){if(Number.isInteger(e))return 0;var t=String(e).split(".")[1],r=t?t.length:8;return r>8?8:r}(e),F=parseFloat(e.toFixed(N)),L=F<0,S=Math.trunc(F),D=String(Math.abs((d=F,f=S,R=Math.pow(10,Math.max(z(d),z(f))),(ee(d,R)-ee(f,R))/R)).toFixed(N)).slice(1);c||(D=re(D)),n&&(c||(D=2===D.length?D=D.padEnd(3,"0"):(D.substring(0,3)||".").padEnd(3,"0"))),D=D.replace(/./,A);for(var C=[],m=0,I=(S=Math.abs(S).toString()).length-1;I>-1;I--)m+=1,C.unshift(S[I]),m%3||0===I||C.unshift(M);return"".concat(L?"-":"").concat(C.join("")).concat(D)},ne=function(e,t){var r=Object.prototype.toString.call(e);if("[object Number]"!==r)return"[object String]"===r&&e.startsWith("#")?e:"";if(isNaN(e)||e===1/0||e===-1/0)return String(e);var a=(t||{}).format;switch(void 0===a?v:a){case"number":return ae(e,{formats:t,isCurrency:!1});case"percent":return"".concat(ae(Number.parseFloat((100*e).toFixed(8)),{formats:t,isCurrency:!1}),"%");case"yuan":return"¥".concat(ae(e,{formats:t}));case"dollar":return"$".concat(ae(e,{formats:t}));case"euro":return"€".concat(ae(e,{formats:t}));case"duration":return Z(e,t);case"custom_currency":return"after"===t.currency_symbol_position?"".concat(ae(e,{formats:t})).concat(t.currency_symbol||""):"".concat(t.currency_symbol||"").concat(ae(e,{formats:t}));default:return String(e)}},ie=function(e,t){if(!t||!Array.isArray(e))return"";var r=e.find((function(e){return e.id===t}));return r?r.name:""},oe=function(e,t){if(!Array.isArray(t)||!Array.isArray(e))return"";var r=e.filter((function(e){return t.includes(e.id)}));return 0===r.length?"":r.map((function(e){return e.name})).join(", ")},_e=function(e,t){if(!Array.isArray(e)||!Array.isArray(t))return[];var r={};return t.forEach((function(e){r[e.email]=e})),e.map((function(e){var t=r[e];return t&&t.name})).filter(Boolean)},le=function(e,t){var r=_e(t,e);return Array.isArray(r)&&0!==r.length?r.join(", "):""},se=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=r.isBaiduMap,n=void 0===a||a,i=r.hyphen,o=void 0===i?"":i;if(!e)return"";switch((t||{}).geo_format){case"lng_lat":var _=e||{},l=_.lng,s=_.lat;return function(e,t){return(e||0===e)&&(t||0===t)}(l,s)?n?"".concat(l,", ").concat(s):"".concat(s,", ").concat(l):"";case"country_region":return(e||{}).country_region||"";case"province":return(e||{}).province||"";case"province_city":var u=e||{},E=u.province,O=u.city;return"".concat(E||"").concat(o).concat(O||"").trim();case"province_city_district":var c=e||{},T=c.province,d=c.city,f=c.district;return"".concat(T||"").concat(o).concat(d||"").concat(o).concat(f||"").trim();default:var R=e||{},A=R.province,M=R.city,N=R.district,F=R.detail;return A||M||N||F?"".concat(A||"").concat(o).concat(M||"").concat(o).concat(N||"").concat(o).concat(F||"").trim():""}},ue=function(e){return e&&e.sign_image_url||""},Ee=function(e){return e&&e.text||""},Oe=[1,1,1,2,2,2,3,3,3,4,4,4],ce=/(\[[^[]*\])|([-:/.()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,Te=/\d\d?/,de=/\d\d/,fe={mm:[Te,p],HH:[Te,I],D:[Te,m],DD:[de,m],M:[Te,C],MM:[de,C],YYYY:[/\d{4}/,D]},Re=["YYYY","MM","M","DD","D"],Ae=function(){function e(){d.default(this,e)}return f.default(e,null,[{key:"format",value:function(e,t){var r=this.getValidDate(e);if(!r)return"";var a=t&&t.toUpperCase(),n=r.getFullYear(),i=r.getMonth()+1,o=r.getDate(),_=i<10?"0".concat(i):i,l=o<10?"0".concat(o):o;switch(a){case"YYYY-MM-DD HH:MM:SS":var s=r.getHours(),u=r.getMinutes(),E=r.getSeconds(),O=s<10?"0".concat(s):s,c=u<10?"0".concat(u):u,T=E<10?"0".concat(E):E;return"".concat(n,"-").concat(_,"-").concat(l," ").concat(O,":").concat(c,":").concat(T);case"YYYY-MM-DD HH:MM":var d=r.getHours(),f=r.getMinutes(),R=d<10?"0".concat(d):d,A=f<10?"0".concat(f):f;return"".concat(n,"-").concat(_,"-").concat(l," ").concat(R,":").concat(A);default:return"".concat(n,"-").concat(_,"-").concat(l)}}},{key:"getDateByGranularity",value:function(e,t){var r=this.getValidDate(e);if(!r)return"";var a=t&&t.toUpperCase(),n=r.getFullYear();switch(a){case"YEAR":return"".concat(n);case"QUARTAR":var i=r.getMonth(),o=Oe[i];return"".concat(n,"-Q").concat(o);case"MONTH":var _=r.getMonth()+1,l=_<10?"0".concat(_):_;return"".concat(n,"-").concat(l);case"WEEK":var s=r.getDay(),u=r.getDate()+(0===s?-6:1-s),E=new Date(n,r.getMonth(),u),O=E.getMonth()+1,c=E.getDate(),T=O<10?"0".concat(O):O,d=c<10?"0".concat(c):c;return"".concat(E.getFullYear(),"-").concat(T,"-").concat(d);case"DAY":var f=r.getMonth()+1,R=r.getDate(),A=f<10?"0".concat(f):f,M=R<10?"0".concat(R):R;return"".concat(n,"-").concat(A,"-").concat(M);default:return""}}},{key:"isValidDateObject",value:function(e){return e instanceof Date&&!isNaN(e.getTime())}},{key:"getValidDate",value:function(e){if(!e)return null;var t="string"==typeof e,r=e,a=e;return t&&(r.split(" ").length>1||r.includes("T")?a=new Date(e):(r="".concat(e," 00:00:00"),a=new Date(r))),this.isValidDateObject(a)?a:t?(a=new Date(r.replace(/-/g,"/")),this.isValidDateObject(a)?a:null):null}},{key:"parseDateWithFormat",value:function(e,t){try{var r=this.makeParser(t)(e),a=r.year,n=r.month,i=r.day,o=r.hours,_=r.minutes;if(!a)a=(new Date).getFullYear();var l=new Date("".concat(a,"-").concat(n,"-").concat(i," ").concat(o||"00",":").concat(_||"00"));return this.isValidDateObject(l)?l:this.getValidDate(e)}catch(t){return this.getValidDate(e)}}},{key:"makeParser",value:function(e){var t=(e||S).match(ce),r=t.length;return function(e){for(var a=e.split(" "),n=a[0]||"",i=a[1]||"",o={},_=0;_<r;_++){var l=t[_],s=fe[l];if(s){var u=s[0],E=s[1];if(E){var O=Re.includes(l),c=O?u.exec(n):u.exec(i);if(c){var T=c[0];o[E]=T,O?n=n.replace(T,""):i=i.replace(T,"")}}}}return o}}}]),e}(),Me=[A.IMAGE,A.FILE,A.MULTIPLE_SELECT,A.COLLABORATOR],Ne=function(e,t){if(!t)return"";var r=t.result_type;if(r===j.NUMBER)return ne(e,t);if(r===j.DATE){var a=t.format;return q(e,a)}if(r===j.ARRAY){var n=t.array_type,i=t.array_data;return n?L.includes(n)?e:!Me.includes(n)&&Array.isArray(e)?e.map((function(e){return Fe({FORMULA_ARRAY:e},n,"FORMULA_ARRAY",{data:i})})).join(", "):Fe({FORMULA_ARRAY:e},n,"FORMULA_ARRAY",{data:i}):""}return"[object Boolean]"===Object.prototype.toString.call(e)?String(e):e},Fe=function(e,t,r){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=a.data,i=a.formulaRows,o=void 0===i?{}:i,_=a.collaborators,l=void 0===_?[]:_,s=a.isBaiduMap,u=void 0===s||s,E=a.geolocationHyphen,O=void 0===E?"":E;if(!e)return"";var c=e[r];switch(t){case A.LONG_TEXT:return Ee(c);case A.NUMBER:return ne(c,n);case A.DURATION:return Z(c,n);case A.GEOLOCATION:return se(c,n,{isBaiduMap:u,hyphen:O});case A.SINGLE_SELECT:if(!n)return"";var T=n.options;return ie(T,c);case A.MULTIPLE_SELECT:if(!n)return"";var d=n.options;return oe(d,c);case A.DATE:var f=(n||{}).format;return q(c,void 0===f?S:f);case A.CTIME:case A.MTIME:return Ae.format(c,"YYYY-MM-DD HH:MM:SS");case A.COLLABORATOR:return le(l,c);case A.CREATOR:case A.LAST_MODIFIER:return"anonymous"===c?c:le(l,[c]);case A.FORMULA:case A.LINK_FORMULA:var R=o[e._id]||{};return Ne(R[r],n);case A.DIGITAL_SIGN:return ue(c);default:return c||"boolean"==typeof c?String(c):""}},Le=function(e,t){if(!e&&0!==e)return null;if("number"==typeof e)return e;if("string"!=typeof e)return null;var r,a,n,i,o=parseFloat(e.replace(/[^.-\d]/g,""));return"percent"!==t||isNaN(o)?isNaN(o)?null:o:(a=100,n=J(r=o),i=J(a),ee(n/i,$(Math.pow(10,z(a)-z(r)))))},Se=function(e){var t=e.type,r=e.data;if(Q[t]){var a=r||{},n=a.result_type,i=a.array_type;return n===j.ARRAY?i:n}return t===A.LINK?(r||{}).array_type:t},De=function(e){return e&&e.data&&Array.isArray(e.data.options)?e.data.options:[]},Ce=function(e){var t=Se(e);return N.includes(t)},me="number",Ie="string",pe="boolean",Ye="array",ye=[A.TEXT,A.STRING],he=[B.EMPTY,B.NOT_EMPTY],ge=[B.IS_ANY_OF,B.IS_NONE_OF],ve=[H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW,H.THE_NEXT_NUMBERS_OF_DAYS,H.THE_PAST_NUMBERS_OF_DAYS,H.EXACT_DATE],He=[H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW,H.THE_NEXT_NUMBERS_OF_DAYS,H.THE_PAST_NUMBERS_OF_DAYS],Ue=function(){function e(){d.default(this,e)}return f.default(e,null,[{key:"validate",value:function(e,t){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=e.column_key,n=e.filter_predicate,i=e.filter_term_modifier,o=e.filter_term,_=this.validateColumn(a,t).error_message;if(_)return{error_message:_};var l=t.find((function(e){return e.key===a})),s=this.validatePredicate(n,l).error_message;if(s)return{error_message:s};if(this.isFilterOnlyWithPredicate(n,l))return{error_message:null};var u=this.validateModifier(i,n,l).error_message;if(u)return{error_message:u};if(this.isFilterOnlyWithModifier(i,l))return{error_message:null};if(r){var E=this.validateTerm(o,n,i,l).error_message;if(E)return{error_message:E}}return{error_message:null}}},{key:"validateColumn",value:function(e,t){if(!e)return{error_message:K.INCOMPLETE_FILTER};var r=t.find((function(t){return t.key===e}));return r?this.isValidColumnType(r)?{error_message:null}:{error_message:K.COLUMN_NOT_SUPPORTED}:{error_message:K.COLUMN_MISSING}}},{key:"validatePredicate",value:function(e,t){if(!e)return{error_message:K.INCOMPLETE_FILTER};var r=t.type,a=t.data,n=w[r].filterPredicateList;if(Q[r]||r===A.LINK){var i=a.result_type;return i===j.ARRAY?this.validatePredicateWithArrayType(e,t):this.validatePredicate(e,{type:i})}return n.includes(e)?{error_message:null}:{error_message:K.UNMATCHED_PREDICATE}}},{key:"validatePredicateWithArrayType",value:function(e,t){var r=t.data.array_type;return r===A.SINGLE_SELECT?this.validatePredicate(e,{type:A.MULTIPLE_SELECT}):L.includes(r)?this.validatePredicate(e,{type:A.COLLABORATOR}):this.validatePredicate(e,{type:r})}},{key:"isFilterOnlyWithPredicate",value:function(e,t){if(he.includes(e))return!0;var r=t.type,a=t.data;if(Q[r]||r===A.LINK){var n=a.result_type,i=a.array_type;return n===j.ARRAY?this.isFilterOnlyWithPredicate(e,{type:i}):this.isFilterOnlyWithPredicate(e,{type:n})}var o=B.INCLUDE_ME;return!(e!==B.IS_CURRENT_USER_ID||!ye.includes(r))||!(e!==o||!L.includes(r))}},{key:"validateModifier",value:function(e,t,r){if(!Ce(r))return{error_message:null};if(!e)return{error_message:K.INCOMPLETE_FILTER};if(t===B.IS_WITHIN){if(V.includes(e))return{error_message:null}}else if(k.includes(e))return{error_message:null};return{error_message:K.UNMATCHED_MODIFIER}}},{key:"isFilterOnlyWithModifier",value:function(e,t){return!!Ce(t)&&!ve.includes(e)}},{key:"validateTerm",value:function(e,t,r,a){return this.isTermMissing(e)?{error_message:K.INCOMPLETE_FILTER}:this.isValidTerm(e,t,r,a)?{error_message:null}:{error_message:K.INVALID_TERM}}},{key:"isTermMissing",value:function(e){return!e&&0!==e&&!1!==e||Array.isArray(e)&&0===e.length}},{key:"isValidTerm",value:function(e,t,r,a){switch(a.type){case A.TEXT:case A.GEOLOCATION:case A.AUTO_NUMBER:case A.EMAIL:case A.URL:case A.STRING:return this.isValidTermType(e,Ie);case A.SINGLE_SELECT:var n=De(a);return ge.includes(t)?!!this.isValidTermType(e,Ye)&&this.isValidSelectedOptions(e,n):!!this.isValidTermType(e,Ie)&&!!n.find((function(t){return e===t.id}));case A.NUMBER:case A.DURATION:case A.RATE:return this.isValidTermType(e,me);case A.CHECKBOX:case A.BOOL:return this.isValidTermType(e,pe);case A.COLLABORATOR:case A.CREATOR:case A.LAST_MODIFIER:return this.isValidTermType(e,Ye);case A.MULTIPLE_SELECT:if(!this.isValidTermType(e,Ye))return!1;var i=De(a);return this.isValidSelectedOptions(e,i);case A.DATE:case A.CTIME:case A.MTIME:return He.includes(r)?this.isValidTermType(e,me):this.isValidTermType(e,Ie);case A.FORMULA:case A.LINK_FORMULA:var o=a.data.result_type;return o===j.ARRAY?this.isValidTermWithArrayType(e,t,r,a):this.isValidTerm(e,t,r,{type:o});case A.LINK:return this.isValidTermWithArrayType(e,t,r,a);default:return!1}}},{key:"isValidTermType",value:function(e,t){return t===Ye?Array.isArray(e)&&e.length>0:t===A.NUMBER?R.default(e)===t||!isNaN(Number(e)):R.default(e)===t}},{key:"isValidTermWithArrayType",value:function(e,t,r,a){var n=a.data,i=n.array_type,o=n.array_data;return i===A.SINGLE_SELECT?this.isValidTerm(e,t,r,{type:A.MULTIPLE_SELECT,data:o}):L.includes(i)?this.isValidTerm(e,t,r,{type:A.COLLABORATOR}):this.isValidTerm(e,t,r,{type:i,data:o})}},{key:"isValidColumnType",value:function(e){var t=e.type,r=e.data;if(Q[t]||t===A.LINK){if(!r)return!1;var a=r.result_type,n=r.array_type;return a===j.ARRAY?this.isValidColumnType({type:n}):this.isValidColumnType({type:a})}return w.hasOwnProperty(t)}},{key:"isValidSelectedOptions",value:function(e,t){var r=t.filter((function(t){return e.includes(t.id)}));return e.length===r.length}}]),e}();exports.COLLABORATOR_COLUMN_TYPES=L,exports.COLUMNS_ICON_CONFIG=M,exports.CellType=A,exports.DATE_COLUMN_OPTIONS=N,exports.DEFAULT_DATE_FORMAT=S,exports.DEFAULT_NUMBER_FORMAT=v,exports.DURATION_DECIMAL_DIGITS=h,exports.DURATION_FORMATS=y,exports.DURATION_FORMATS_MAP=Y,exports.DURATION_ZERO_DISPLAY=g,exports.DateUtils=Ae,exports.FILTER_COLUMN_OPTIONS=w,exports.FILTER_ERR_MSG=K,exports.FILTER_PREDICATE_SHOW=b,exports.FILTER_PREDICATE_TYPE=B,exports.FILTER_TERM_MODIFIER_SHOW=U,exports.FILTER_TERM_MODIFIER_TYPE=H,exports.FORMULA_COLUMN_TYPES_MAP=Q,exports.FORMULA_RESULT_TYPE=j,exports.HIGHLIGHT_COLORS={"#FFE8E6":"#FF6052","#FFDED5":"#FF714A","#FFE7D1":"#FF851A","#EED5FF":"#B64DFD","#DAD7FF":"#5F4CFF","#D7E8FF":"#3C8FFF","#D8FAFF":"#41E7FF","#DDFFE6":"#16BA51","#E9E9E9":"#999999","#FBD44A":"#E5C142","#EAA775":"#D59361","#F4667C":"#DC556A","#DC82D2":"#D166C5","#9860E5":"#844BD2","#9F8CF1":"#8F75E2","#59CB74":"#4EB867","#ADDF84":"#9CCF72","#89D2EA":"#7BC0D6","#4ECCCB":"#45BAB9","#46A1FD":"#3C8FE4","#C2C2C2":"#ADADAD","#FFFCB5":"#E8E79D","#FFEAB6":"#ECD084","#FFD9C8":"#EFBAA3","#FFDDE5":"#EDC4C1","#FFD4FF":"#E6B6E6","#DEF7C4":"#C5EB9E","#B7CEF9":"#96B2E1"},exports.NUMERIC_COLUMNS_TYPES=F,exports.SELECT_OPTION_COLORS=[{COLOR:"#FFFCB5",BORDER_COLOR:"#E8E79D",TEXT_COLOR:"#212529"},{COLOR:"#FFEAB6",BORDER_COLOR:"#ECD084",TEXT_COLOR:"#212529"},{COLOR:"#FFD9C8",BORDER_COLOR:"#EFBAA3",TEXT_COLOR:"#212529"},{COLOR:"#FFDDE5",BORDER_COLOR:"#EDC4C1",TEXT_COLOR:"#212529"},{COLOR:"#FFD4FF",BORDER_COLOR:"#E6B6E6",TEXT_COLOR:"#212529"},{COLOR:"#DAD7FF",BORDER_COLOR:"#C3BEEF",TEXT_COLOR:"#212529"},{COLOR:"#DDFFE6",BORDER_COLOR:"#BBEBCD",TEXT_COLOR:"#212529"},{COLOR:"#DEF7C4",BORDER_COLOR:"#C5EB9E",TEXT_COLOR:"#212529"},{COLOR:"#D8FAFF",BORDER_COLOR:"#B4E4E9",TEXT_COLOR:"#212529"},{COLOR:"#D7E8FF",BORDER_COLOR:"#BAD1E9",TEXT_COLOR:"#212529"},{COLOR:"#B7CEF9",BORDER_COLOR:"#96B2E1",TEXT_COLOR:"#212529"},{COLOR:"#E9E9E9",BORDER_COLOR:"#DADADA",TEXT_COLOR:"#212529"},{COLOR:"#FBD44A",BORDER_COLOR:"#E5C142",TEXT_COLOR:"#FFFFFF"},{COLOR:"#EAA775",BORDER_COLOR:"#D59361",TEXT_COLOR:"#FFFFFF"},{COLOR:"#F4667C",BORDER_COLOR:"#DC556A",TEXT_COLOR:"#FFFFFF"},{COLOR:"#DC82D2",BORDER_COLOR:"#D166C5",TEXT_COLOR:"#FFFFFF"},{COLOR:"#9860E5",BORDER_COLOR:"#844BD2",TEXT_COLOR:"#FFFFFF"},{COLOR:"#9F8CF1",BORDER_COLOR:"#8F75E2",TEXT_COLOR:"#FFFFFF"},{COLOR:"#59CB74",BORDER_COLOR:"#4EB867",TEXT_COLOR:"#FFFFFF"},{COLOR:"#ADDF84",BORDER_COLOR:"#9CCF72",TEXT_COLOR:"#FFFFFF"},{COLOR:"#89D2EA",BORDER_COLOR:"#7BC0D6",TEXT_COLOR:"#FFFFFF"},{COLOR:"#4ECCCB",BORDER_COLOR:"#45BAB9",TEXT_COLOR:"#FFFFFF"},{COLOR:"#46A1FD",BORDER_COLOR:"#3C8FE4",TEXT_COLOR:"#FFFFFF"},{COLOR:"#C2C2C2",BORDER_COLOR:"#ADADAD",TEXT_COLOR:"#FFFFFF"}],exports.ValidateFilter=Ue,exports.filterTermModifierIsWithin=V,exports.filterTermModifierNotWithin=k,exports.formatStringToNumber=function(e,t){var r=t||{},a=r.format,n=r.decimal,i=r.thousands,o=r.enable_precision,_=r.precision,l=e;if(n&&i&&"comma"===n&&(l="dot"===i?(l=(l=l.replace(/,/,"@")).replace(/\./g,",")).replace(/@/,"."):(l=l.replace(/\./g,"")).replace(/,/,".")),l=Le(l,a),o&&l){var s="percent"===a?_+2:_;l=Number(parseFloat(l).toFixed(s))}return l},exports.generatorBase64Code=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:4,t="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz0123456789",r="",a=0;a<e;a++)r+=t.charAt(Math.floor(72*Math.random()));return r},exports.getCellValueDisplayString=Fe,exports.getCollaboratorsName=le,exports.getCollaboratorsNames=_e,exports.getColumnOptions=De,exports.getDateDisplayString=q,exports.getDigitalSignImageUrl=ue,exports.getDurationDisplayString=Z,exports.getFloatNumber=Le,exports.getFormulaDisplayString=Ne,exports.getGeolocationDisplayString=se,exports.getLongtextDisplayString=Ee,exports.getMultipleOptionName=oe,exports.getNumberDisplayString=ne,exports.getOptionName=ie,exports.isDateColumn=Ce,exports.isNumberColumn=function(e){return Se(e)===A.NUMBER},exports.isNumericColumn=function(e){var t=Se(e);return F.includes(t)},exports.isValidEmail=function(e){return/^[A-Za-z0-9]+([-_.][A-Za-z0-9]+)*@([A-Za-z0-9]+[-.])+[A-Za-z0-9]{2,20}$/.test(e)},exports.replaceNumberNotAllowInput=function(e,t,r){if(!e)return"";var a=e.replace(/。/g,".");switch(t){case"percent":return a.replace(/[^.-\d,%]/g,"");case"yuan":return a.replace(/[^.-\d¥¥,]/g,"");case"dollar":return a.replace(/[^.-\d$,]/g,"");case"euro":return a.replace(/[^.-\d€,]/g,"");case"custom_currency":var n=new RegExp("[^.-d"+r+",]","g");return a.replace(n,"");default:return a.replace(/[^.-\d,]/g,"")}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("dayjs"),r=require("@babel/runtime/helpers/classCallCheck"),a=require("@babel/runtime/helpers/createClass"),n=require("@babel/runtime/helpers/typeof");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o,_,l,s,u,c,E,O=i(e),T=i(t),d=i(r),f=i(a),R=i(n),A={DEFAULT:"default",NUMBER:"number",TEXT:"text",CHECKBOX:"checkbox",DATE:"date",SINGLE_SELECT:"single-select",LONG_TEXT:"long-text",IMAGE:"image",FILE:"file",MULTIPLE_SELECT:"multiple-select",COLLABORATOR:"collaborator",LINK:"link",FORMULA:"formula",LINK_FORMULA:"link-formula",CREATOR:"creator",CTIME:"ctime",LAST_MODIFIER:"last-modifier",MTIME:"mtime",GEOLOCATION:"geolocation",AUTO_NUMBER:"auto-number",URL:"url",EMAIL:"email",DURATION:"duration",BUTTON:"button",RATE:"rate",DIGITAL_SIGN:"digital-sign",BOOL:"bool",STRING:"string"},M=(o={},O.default(o,A.DEFAULT,"dtable-font dtable-icon-single-line-text"),O.default(o,A.TEXT,"dtable-font dtable-icon-single-line-text"),O.default(o,A.NUMBER,"dtable-font dtable-icon-number"),O.default(o,A.CHECKBOX,"dtable-font dtable-icon-check-square-solid"),O.default(o,A.DATE,"dtable-font dtable-icon-calendar-alt-solid"),O.default(o,A.SINGLE_SELECT,"dtable-font dtable-icon-single-election"),O.default(o,A.LONG_TEXT,"dtable-font dtable-icon-long-text"),O.default(o,A.IMAGE,"dtable-font dtable-icon-picture"),O.default(o,A.FILE,"dtable-font dtable-icon-file-alt-solid"),O.default(o,A.MULTIPLE_SELECT,"dtable-font dtable-icon-multiple-selection"),O.default(o,A.COLLABORATOR,"dtable-font dtable-icon-collaborator"),O.default(o,A.LINK,"dtable-font dtable-icon-link-other-record"),O.default(o,A.FORMULA,"dtable-font dtable-icon-formula"),O.default(o,A.LINK_FORMULA,"dtable-font dtable-icon-link-formulas"),O.default(o,A.CREATOR,"dtable-font dtable-icon-creator"),O.default(o,A.CTIME,"dtable-font dtable-icon-creation-time"),O.default(o,A.LAST_MODIFIER,"dtable-font dtable-icon-creator"),O.default(o,A.MTIME,"dtable-font dtable-icon-creation-time"),O.default(o,A.GEOLOCATION,"dtable-font dtable-icon-location"),O.default(o,A.AUTO_NUMBER,"dtable-font dtable-icon-autonumber"),O.default(o,A.URL,"dtable-font dtable-icon-url"),O.default(o,A.EMAIL,"dtable-font dtable-icon-email"),O.default(o,A.DURATION,"dtable-font dtable-icon-duration"),O.default(o,A.BUTTON,"dtable-font dtable-icon-button"),O.default(o,A.RATE,"dtable-font dtable-icon-rate"),O.default(o,A.DIGITAL_SIGN,"dtable-font dtable-icon-handwritten-signature"),o),N=[A.DATE,A.CTIME,A.MTIME],F=[A.NUMBER,A.DURATION,A.RATE],S=[A.COLLABORATOR,A.CREATOR,A.LAST_MODIFIER],L="YYYY-MM-DD",D="year",C="month",m="day",I="hours",p="minutes",Y={H_MM:"h:mm",H_MM_SS:"h:mm:ss",H_MM_SS_S:"h:mm:ss.s",H_MM_SS_SS:"h:mm:ss.ss",H_MM_SS_SSS:"h:mm:ss.sss"},y=[{name:Y.H_MM,type:Y.H_MM},{name:Y.H_MM_SS,type:Y.H_MM_SS}],h=(_={},O.default(_,Y.H_MM,0),O.default(_,Y.H_MM_SS,0),O.default(_,Y.H_MM_SS_S,1),O.default(_,Y.H_MM_SS_SS,2),O.default(_,Y.H_MM_SS_SSS,3),_),g=(l={},O.default(l,Y.H_MM,"0:00"),O.default(l,Y.H_MM_SS,"0:00"),O.default(l,Y.H_MM_SS_S,"0:00.0"),O.default(l,Y.H_MM_SS_SS,"0:00.00"),O.default(l,Y.H_MM_SS_SSS,"0:00.000"),l),v="number",H={TODAY:"today",TOMORROW:"tomorrow",YESTERDAY:"yesterday",ONE_WEEK_AGO:"one_week_ago",ONE_WEEK_FROM_NOW:"one_week_from_now",ONE_MONTH_AGO:"one_month_ago",ONE_MONTH_FROM_NOW:"one_month_from_now",NUMBER_OF_DAYS_AGO:"number_of_days_ago",NUMBER_OF_DAYS_FROM_NOW:"number_of_days_from_now",EXACT_DATE:"exact_date",THE_PAST_WEEK:"the_past_week",THE_PAST_MONTH:"the_past_month",THE_PAST_YEAR:"the_past_year",THE_NEXT_WEEK:"the_next_week",THE_NEXT_MONTH:"the_next_month",THE_NEXT_YEAR:"the_next_year",THE_NEXT_NUMBERS_OF_DAYS:"the_next_numbers_of_days",THE_PAST_NUMBERS_OF_DAYS:"the_past_numbers_of_days",THIS_WEEK:"this_week",THIS_MONTH:"this_month",THIS_YEAR:"this_year"},U=(s={},O.default(s,H.TODAY,"today"),O.default(s,H.TOMORROW,"tomorrow"),O.default(s,H.YESTERDAY,"yesterday"),O.default(s,H.ONE_WEEK_AGO,"one week ago"),O.default(s,H.ONE_WEEK_FROM_NOW,"one week from now"),O.default(s,H.ONE_MONTH_AGO,"one month ago"),O.default(s,H.ONE_MONTH_FROM_NOW,"one month from now"),O.default(s,H.NUMBER_OF_DAYS_AGO,"number of days ago"),O.default(s,H.NUMBER_OF_DAYS_FROM_NOW,"number of days from now"),O.default(s,H.EXACT_DATE,"exact date"),O.default(s,H.THE_PAST_WEEK,"the past week"),O.default(s,H.THE_PAST_MONTH,"the past month"),O.default(s,H.THE_PAST_YEAR,"the past year"),O.default(s,H.THE_NEXT_WEEK,"the next week"),O.default(s,H.THE_NEXT_MONTH,"the next month"),O.default(s,H.THE_NEXT_YEAR,"the next year"),O.default(s,H.THE_NEXT_NUMBERS_OF_DAYS,"the next numbers of days..."),O.default(s,H.THE_PAST_NUMBERS_OF_DAYS,"the past numbers of days..."),O.default(s,H.THIS_WEEK,"this week"),O.default(s,H.THIS_MONTH,"this month"),O.default(s,H.THIS_YEAR,"this year"),s),b={CONTAINS:"contains",NOT_CONTAIN:"does_not_contain",IS:"is",IS_NOT:"is_not",EQUAL:"equal",NOT_EQUAL:"not_equal",LESS:"less",GREATER:"greater",LESS_OR_EQUAL:"less_or_equal",GREATER_OR_EQUAL:"greater_or_equal",EMPTY:"is_empty",NOT_EMPTY:"is_not_empty",IS_WITHIN:"is_within",IS_BEFORE:"is_before",IS_AFTER:"is_after",IS_ON_OR_BEFORE:"is_on_or_before",IS_ON_OR_AFTER:"is_on_or_after",HAS_ANY_OF:"has_any_of",HAS_ALL_OF:"has_all_of",HAS_NONE_OF:"has_none_of",IS_EXACTLY:"is_exactly",INCLUDE_ME:"include_me",IS_CURRENT_USER_ID:"is_current_user_ID",IS_ANY_OF:"is_any_of",IS_NONE_OF:"is_none_of"},B=(u={},O.default(u,b.CONTAINS,"contains"),O.default(u,b.NOT_CONTAIN,"does not contain"),O.default(u,b.IS,"is"),O.default(u,b.IS_NOT,"is not"),O.default(u,b.EQUAL,"="),O.default(u,b.NOT_EQUAL,"≠"),O.default(u,b.LESS,"<"),O.default(u,b.GREATER,">"),O.default(u,b.LESS_OR_EQUAL,"≤"),O.default(u,b.GREATER_OR_EQUAL,"≥"),O.default(u,b.EMPTY,"is empty"),O.default(u,b.NOT_EMPTY,"is not empty"),O.default(u,b.IS_WITHIN,"is within..."),O.default(u,b.IS_BEFORE,"is before..."),O.default(u,b.IS_AFTER,"is after..."),O.default(u,b.IS_ON_OR_BEFORE,"is on or before..."),O.default(u,b.IS_ON_OR_AFTER,"is on or after..."),O.default(u,b.HAS_ANY_OF,"has any of..."),O.default(u,b.HAS_ALL_OF,"has all of..."),O.default(u,b.HAS_NONE_OF,"has none of..."),O.default(u,b.IS_EXACTLY,"is exactly..."),O.default(u,b.IS_CURRENT_USER_ID,"is current user's ID"),u),P=[b.CONTAINS,b.NOT_CONTAIN,b.IS,b.IS_NOT,b.EMPTY,b.NOT_EMPTY,b.IS_CURRENT_USER_ID],x=[b.EQUAL,b.NOT_EQUAL,b.LESS,b.GREATER,b.LESS_OR_EQUAL,b.GREATER_OR_EQUAL,b.EMPTY,b.NOT_EMPTY],G=[b.IS,b.IS_WITHIN,b.IS_BEFORE,b.IS_AFTER,b.IS_ON_OR_BEFORE,b.IS_ON_OR_AFTER,b.IS_NOT,b.EMPTY,b.NOT_EMPTY],X=P.filter((function(e){return e!==b.IS_CURRENT_USER_ID})),W=[H.TODAY,H.TOMORROW,H.YESTERDAY,H.ONE_WEEK_AGO,H.ONE_WEEK_FROM_NOW,H.ONE_MONTH_AGO,H.ONE_MONTH_FROM_NOW,H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW,H.EXACT_DATE],w=(c={},O.default(c,A.TEXT,{filterPredicateList:P}),O.default(c,A.NUMBER,{filterPredicateList:x}),O.default(c,A.CHECKBOX,{filterPredicateList:[b.IS]}),O.default(c,A.DATE,{filterPredicateList:G,filterTermModifierList:W}),O.default(c,A.CTIME,{filterPredicateList:G,filterTermModifierList:W}),O.default(c,A.MTIME,{filterPredicateList:G,filterTermModifierList:W}),O.default(c,A.SINGLE_SELECT,{filterPredicateList:[b.IS,b.IS_NOT,b.IS_ANY_OF,b.IS_NONE_OF,b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.MULTIPLE_SELECT,{filterPredicateList:[b.HAS_ANY_OF,b.HAS_ALL_OF,b.HAS_NONE_OF,b.IS_EXACTLY,b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.COLLABORATOR,{filterPredicateList:[b.HAS_ANY_OF,b.HAS_ALL_OF,b.HAS_NONE_OF,b.IS_EXACTLY,b.EMPTY,b.NOT_EMPTY,b.INCLUDE_ME]}),O.default(c,A.CREATOR,{filterPredicateList:[b.CONTAINS,b.NOT_CONTAIN,b.INCLUDE_ME,b.IS,b.IS_NOT]}),O.default(c,A.GEOLOCATION,{filterPredicateList:X}),O.default(c,A.FORMULA,{}),O.default(c,A.LINK_FORMULA,{}),O.default(c,A.LINK,{}),O.default(c,A.LAST_MODIFIER,{filterPredicateList:[b.CONTAINS,b.NOT_CONTAIN,b.INCLUDE_ME,b.IS,b.IS_NOT]}),O.default(c,A.AUTO_NUMBER,{filterPredicateList:[b.CONTAINS,b.NOT_CONTAIN,b.IS,b.IS_NOT]}),O.default(c,A.EMAIL,{filterPredicateList:[b.CONTAINS,b.NOT_CONTAIN,b.IS,b.IS_NOT,b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.URL,{filterPredicateList:[b.CONTAINS,b.NOT_CONTAIN,b.IS,b.IS_NOT,b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.IMAGE,{filterPredicateList:[b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.FILE,{filterPredicateList:[b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.LONG_TEXT,{filterPredicateList:[b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.DURATION,{filterPredicateList:x}),O.default(c,A.RATE,{filterPredicateList:x}),O.default(c,A.DIGITAL_SIGN,{filterPredicateList:[b.EMPTY,b.NOT_EMPTY]}),O.default(c,A.STRING,{filterPredicateList:P}),O.default(c,A.BOOL,{filterPredicateList:[b.IS]}),c),k=[H.EXACT_DATE,H.TODAY,H.TOMORROW,H.YESTERDAY,H.ONE_WEEK_AGO,H.ONE_WEEK_FROM_NOW,H.ONE_MONTH_AGO,H.ONE_MONTH_FROM_NOW,H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW],V=[H.THE_PAST_WEEK,H.THE_PAST_MONTH,H.THE_PAST_YEAR,H.THIS_WEEK,H.THIS_MONTH,H.THIS_YEAR,H.THE_NEXT_WEEK,H.THE_NEXT_MONTH,H.THE_NEXT_YEAR,H.THE_NEXT_NUMBERS_OF_DAYS,H.THE_PAST_NUMBERS_OF_DAYS],K={INVALID_FILTER:"invalid filter",INCOMPLETE_FILTER:"incomplete filter",COLUMN_MISSING:"the column to filter does not exist",COLUMN_NOT_SUPPORTED:"the column to filter is not supported",UNMATCHED_PREDICATE:"unmatched filter predicate",UNMATCHED_MODIFIER:"unmatched filter modifier",INVALID_TERM:"invalid filter term"},j={NUMBER:"number",STRING:"string",DATE:"date",BOOL:"bool",ARRAY:"array"},Q=(E={},O.default(E,A.FORMULA,!0),O.default(E,A.LINK_FORMULA,!0),E),q=function(e,t){if(!e||"string"!=typeof e)return"";var r=T.default(e);if(!r.isValid())return e;switch(t){case"D/M/YYYY":case"DD/MM/YYYY":var a=r.format("YYYY-MM-DD").split("-");return"".concat(a[2],"/").concat(a[1],"/").concat(a[0]);case"D/M/YYYY HH:mm":case"DD/MM/YYYY HH:mm":var n=r.format("YYYY-MM-DD HH:mm").split(" "),i=n[0].split("-");return"".concat(i[2],"/").concat(i[1],"/").concat(i[0]," ").concat(n[1]);case"M/D/YYYY":return r.format("M/D/YYYY");case"M/D/YYYY HH:mm":return r.format("M/D/YYYY HH:mm");case"YYYY-MM-DD":default:return r.format("YYYY-MM-DD");case"YYYY-MM-DD HH:mm":return r.format("YYYY-MM-DD HH:mm");case"YYYY-MM-DD HH:mm:ss":return r.format("YYYY-MM-DD HH:mm:ss");case"DD.MM.YYYY":return r.format("DD.MM.YYYY");case"DD.MM.YYYY HH:mm":return r.format("DD.MM.YYYY HH:mm")}},Z=function(e,t){if(!e&&0!==e)return"";var r=(t||{}).duration_format;if(r=r||Y.H_MM,y.findIndex((function(e){return e.type===r}))<0)return"";if(0===e)return g[r];var a=r.indexOf(".")>-1,n=Math.abs(e);a||(n=Math.round(n)),n=function(e,t){var r=h[t];if(r<1)return e;var a=Math.pow(10,r);return Math.round(e*a)/a}(n,r);var i=String(n).split("."),o=i.length,_=0;o>1&&(_=(_=i[o-1])?_-0:0);var l=h[r],s=function(e,t){if(e===Y.H_MM_SS_S)return 0===t?".0":"";if(e===Y.H_MM_SS_SS)return 0===t?".00":t<10?"0":"";if(e===Y.H_MM_SS_SSS){if(0===t)return".000";if(t<10)return"00";if(t<100)return"0"}return""}(r,_),u=parseInt(n/3600,10),c=parseInt((n-3600*u)/60,10),E=e<0?"-":"";if(r===Y.H_MM)return E+="".concat(u,":").concat(c>9?c:"0".concat(c));var O=Number.parseFloat((n-3600*u-60*c).toFixed(l));return c=c>9?c:"0".concat(c),O=O>9?O:"0".concat(O),E+="".concat(u,":").concat(c,":").concat(O).concat(s)},z=function(e){var t=e.toString().split(/[eE]/),r=(t[0].split(".")[1]||"").length-+(t[1]||0);return r>0?r:0},$=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:15;return+parseFloat(Number(e).toPrecision(t))},J=function(e){if(-1===e.toString().indexOf("e"))return Number(e.toString().replace(".",""));var t=z(e);return t>0?$(Number(e)*Math.pow(10,t)):Number(e)},ee=function(e,t){var r=J(e),a=J(t),n=z(e)+z(t);return r*a/Math.pow(10,n)},te={comma:",",dot:".",no:"",space:" "},re=function(e){return"string"!=typeof e?"":e.endsWith("0")?e.replace(/(?:\.0*|(\.\d+?)0+)$/,"$1"):e},ae=function(e,t){var r=t.formats,a=t.isCurrency,n=void 0===a||a,i=r||{},o=i.decimal,_=void 0===o?"dot":o,l=i.thousands,s=void 0===l?"no":l,u=i.precision,c=void 0===u?2:u,E=i.enable_precision,O=void 0!==E&&E;if(String(e).includes("e")){if(e<1&&e>-1){var T=e.toFixed(O?c:8);return O||(T=re(T)),0===parseFloat(T)&&T.startsWith("-")?T.substring(1):T}return e}var d,f,R,A=te[_],M=te[s],N=O?c:function(e){if(Number.isInteger(e))return 0;var t=String(e).split(".")[1],r=t?t.length:8;return r>8?8:r}(e),F=parseFloat(e.toFixed(N)),S=F<0,L=Math.trunc(F),D=String(Math.abs((d=F,f=L,R=Math.pow(10,Math.max(z(d),z(f))),(ee(d,R)-ee(f,R))/R)).toFixed(N)).slice(1);O||(D=re(D)),n&&(O||(D=2===D.length?D=D.padEnd(3,"0"):(D.substring(0,3)||".").padEnd(3,"0"))),D=D.replace(/./,A);for(var C=[],m=0,I=(L=Math.abs(L).toString()).length-1;I>-1;I--)m+=1,C.unshift(L[I]),m%3||0===I||C.unshift(M);return"".concat(S?"-":"").concat(C.join("")).concat(D)},ne=function(e,t){var r=Object.prototype.toString.call(e);if("[object Number]"!==r)return"[object String]"===r&&e.startsWith("#")?e:"";if(isNaN(e)||e===1/0||e===-1/0)return String(e);var a=(t||{}).format;switch(void 0===a?v:a){case"number":return ae(e,{formats:t,isCurrency:!1});case"percent":return"".concat(ae(Number.parseFloat((100*e).toFixed(8)),{formats:t,isCurrency:!1}),"%");case"yuan":return"¥".concat(ae(e,{formats:t}));case"dollar":return"$".concat(ae(e,{formats:t}));case"euro":return"€".concat(ae(e,{formats:t}));case"duration":return Z(e,t);case"custom_currency":return"after"===t.currency_symbol_position?"".concat(ae(e,{formats:t})).concat(t.currency_symbol||""):"".concat(t.currency_symbol||"").concat(ae(e,{formats:t}));default:return String(e)}},ie=function(e,t){if(!t||!Array.isArray(e))return"";var r=e.find((function(e){return e.id===t}));return r?r.name:""},oe=function(e,t){if(!Array.isArray(t)||!Array.isArray(e))return"";var r=e.filter((function(e){return t.includes(e.id)}));return 0===r.length?"":r.map((function(e){return e.name})).join(", ")},_e=function(e,t){if(!Array.isArray(e)||!Array.isArray(t))return[];var r={};return t.forEach((function(e){r[e.email]=e})),e.map((function(e){var t=r[e];return t&&t.name})).filter(Boolean)},le=function(e,t){var r=_e(t,e);return Array.isArray(r)&&0!==r.length?r.join(", "):""},se=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=r.isBaiduMap,n=void 0===a||a,i=r.hyphen,o=void 0===i?"":i;if(!e)return"";switch((t||{}).geo_format){case"lng_lat":var _=e||{},l=_.lng,s=_.lat;return function(e,t){return(e||0===e)&&(t||0===t)}(l,s)?n?"".concat(l,", ").concat(s):"".concat(s,", ").concat(l):"";case"country_region":return(e||{}).country_region||"";case"province":return(e||{}).province||"";case"province_city":var u=e||{},c=u.province,E=u.city;return"".concat(c||"").concat(o).concat(E||"").trim();case"province_city_district":var O=e||{},T=O.province,d=O.city,f=O.district;return"".concat(T||"").concat(o).concat(d||"").concat(o).concat(f||"").trim();case"map_selection":var R=e||{},A=R.address,M=R.title;return"".concat(A||"").concat(o).concat(M||"").trim();default:var N=e||{},F=N.province,S=N.city,L=N.district,D=N.detail;return F||S||L||D?"".concat(F||"").concat(o).concat(S||"").concat(o).concat(L||"").concat(o).concat(D||"").trim():""}},ue=function(e){return e&&e.sign_image_url||""},ce=function(e){return e&&e.text||""},Ee=[1,1,1,2,2,2,3,3,3,4,4,4],Oe=/(\[[^[]*\])|([-:/.()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,Te=/\d\d?/,de=/\d\d/,fe={mm:[Te,p],HH:[Te,I],D:[Te,m],DD:[de,m],M:[Te,C],MM:[de,C],YYYY:[/\d{4}/,D]},Re=["YYYY","MM","M","DD","D"],Ae=function(){function e(){d.default(this,e)}return f.default(e,null,[{key:"format",value:function(e,t){var r=this.getValidDate(e);if(!r)return"";var a=t&&t.toUpperCase(),n=r.getFullYear(),i=r.getMonth()+1,o=r.getDate(),_=i<10?"0".concat(i):i,l=o<10?"0".concat(o):o;switch(a){case"YYYY-MM-DD HH:MM:SS":var s=r.getHours(),u=r.getMinutes(),c=r.getSeconds(),E=s<10?"0".concat(s):s,O=u<10?"0".concat(u):u,T=c<10?"0".concat(c):c;return"".concat(n,"-").concat(_,"-").concat(l," ").concat(E,":").concat(O,":").concat(T);case"YYYY-MM-DD HH:MM":var d=r.getHours(),f=r.getMinutes(),R=d<10?"0".concat(d):d,A=f<10?"0".concat(f):f;return"".concat(n,"-").concat(_,"-").concat(l," ").concat(R,":").concat(A);default:return"".concat(n,"-").concat(_,"-").concat(l)}}},{key:"getDateByGranularity",value:function(e,t){var r=this.getValidDate(e);if(!r)return"";var a=t&&t.toUpperCase(),n=r.getFullYear();switch(a){case"YEAR":return"".concat(n);case"QUARTAR":var i=r.getMonth(),o=Ee[i];return"".concat(n,"-Q").concat(o);case"MONTH":var _=r.getMonth()+1,l=_<10?"0".concat(_):_;return"".concat(n,"-").concat(l);case"WEEK":var s=r.getDay(),u=r.getDate()+(0===s?-6:1-s),c=new Date(n,r.getMonth(),u),E=c.getMonth()+1,O=c.getDate(),T=E<10?"0".concat(E):E,d=O<10?"0".concat(O):O;return"".concat(c.getFullYear(),"-").concat(T,"-").concat(d);case"DAY":var f=r.getMonth()+1,R=r.getDate(),A=f<10?"0".concat(f):f,M=R<10?"0".concat(R):R;return"".concat(n,"-").concat(A,"-").concat(M);default:return""}}},{key:"isValidDateObject",value:function(e){return e instanceof Date&&!isNaN(e.getTime())}},{key:"getValidDate",value:function(e){if(!e)return null;var t="string"==typeof e,r=e,a=e;return t&&(r.split(" ").length>1||r.includes("T")?a=new Date(e):(r="".concat(e," 00:00:00"),a=new Date(r))),this.isValidDateObject(a)?a:t?(a=new Date(r.replace(/-/g,"/")),this.isValidDateObject(a)?a:null):null}},{key:"parseDateWithFormat",value:function(e,t){try{var r=this.makeParser(t)(e),a=r.year,n=r.month,i=r.day,o=r.hours,_=r.minutes;if(!a)a=(new Date).getFullYear();var l=new Date("".concat(a,"-").concat(n,"-").concat(i," ").concat(o||"00",":").concat(_||"00"));return this.isValidDateObject(l)?l:this.getValidDate(e)}catch(t){return this.getValidDate(e)}}},{key:"makeParser",value:function(e){var t=(e||L).match(Oe),r=t.length;return function(e){for(var a=e.split(" "),n=a[0]||"",i=a[1]||"",o={},_=0;_<r;_++){var l=t[_],s=fe[l];if(s){var u=s[0],c=s[1];if(c){var E=Re.includes(l),O=E?u.exec(n):u.exec(i);if(O){var T=O[0];o[c]=T,E?n=n.replace(T,""):i=i.replace(T,"")}}}}return o}}}]),e}(),Me=[A.IMAGE,A.FILE,A.MULTIPLE_SELECT,A.COLLABORATOR],Ne=function(e,t){if(!t)return"";var r=t.result_type;if(r===j.NUMBER)return ne(e,t);if(r===j.DATE){var a=t.format;return q(e,a)}if(r===j.ARRAY){var n=t.array_type,i=t.array_data;return n?S.includes(n)?e:!Me.includes(n)&&Array.isArray(e)?e.map((function(e){return Fe({FORMULA_ARRAY:e},n,"FORMULA_ARRAY",{data:i})})).join(", "):Fe({FORMULA_ARRAY:e},n,"FORMULA_ARRAY",{data:i}):""}return"[object Boolean]"===Object.prototype.toString.call(e)?String(e):e},Fe=function(e,t,r){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=a.data,i=a.formulaRows,o=void 0===i?{}:i,_=a.collaborators,l=void 0===_?[]:_,s=a.isBaiduMap,u=void 0===s||s,c=a.geolocationHyphen,E=void 0===c?"":c;if(!e)return"";var O=e[r];switch(t){case A.LONG_TEXT:return ce(O);case A.NUMBER:return ne(O,n);case A.DURATION:return Z(O,n);case A.GEOLOCATION:return se(O,n,{isBaiduMap:u,hyphen:E});case A.SINGLE_SELECT:if(!n)return"";var T=n.options;return ie(T,O);case A.MULTIPLE_SELECT:if(!n)return"";var d=n.options;return oe(d,O);case A.DATE:var f=(n||{}).format;return q(O,void 0===f?L:f);case A.CTIME:case A.MTIME:return Ae.format(O,"YYYY-MM-DD HH:MM:SS");case A.COLLABORATOR:return le(l,O);case A.CREATOR:case A.LAST_MODIFIER:return"anonymous"===O?O:le(l,[O]);case A.FORMULA:case A.LINK_FORMULA:var R=o[e._id]||{};return Ne(R[r],n);case A.DIGITAL_SIGN:return ue(O);default:return O||"boolean"==typeof O?String(O):""}},Se=function(e,t){if(!e&&0!==e)return null;if("number"==typeof e)return e;if("string"!=typeof e)return null;var r,a,n,i,o=parseFloat(e.replace(/[^.-\d]/g,""));return"percent"!==t||isNaN(o)?isNaN(o)?null:o:(a=100,n=J(r=o),i=J(a),ee(n/i,$(Math.pow(10,z(a)-z(r)))))},Le=function(e){var t=e.type,r=e.data;if(Q[t]){var a=r||{},n=a.result_type,i=a.array_type;return n===j.ARRAY?i:n}return t===A.LINK?(r||{}).array_type:t},De=function(e){return e&&e.data&&Array.isArray(e.data.options)?e.data.options:[]},Ce=function(e){return N.includes(Le(e))},me="number",Ie="string",pe="boolean",Ye="array",ye=[A.TEXT,A.STRING],he=[b.EMPTY,b.NOT_EMPTY],ge=[b.IS_ANY_OF,b.IS_NONE_OF],ve=[H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW,H.THE_NEXT_NUMBERS_OF_DAYS,H.THE_PAST_NUMBERS_OF_DAYS,H.EXACT_DATE],He=[H.NUMBER_OF_DAYS_AGO,H.NUMBER_OF_DAYS_FROM_NOW,H.THE_NEXT_NUMBERS_OF_DAYS,H.THE_PAST_NUMBERS_OF_DAYS],Ue=function(){function e(){d.default(this,e)}return f.default(e,null,[{key:"validate",value:function(e,t){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=e.column_key,n=e.filter_predicate,i=e.filter_term_modifier,o=e.filter_term,_=this.validateColumn(a,t).error_message;if(_)return{error_message:_};var l=t.find((function(e){return e.key===a})),s=this.validatePredicate(n,l).error_message;if(s)return{error_message:s};if(this.isFilterOnlyWithPredicate(n,l))return{error_message:null};var u=this.validateModifier(i,n,l).error_message;if(u)return{error_message:u};if(this.isFilterOnlyWithModifier(i,l))return{error_message:null};if(r){var c=this.validateTerm(o,n,i,l).error_message;if(c)return{error_message:c}}return{error_message:null}}},{key:"validateColumn",value:function(e,t){if(!e)return{error_message:K.INCOMPLETE_FILTER};var r=t.find((function(t){return t.key===e}));return r?this.isValidColumnType(r)?{error_message:null}:{error_message:K.COLUMN_NOT_SUPPORTED}:{error_message:K.COLUMN_MISSING}}},{key:"validatePredicate",value:function(e,t){if(!e)return{error_message:K.INCOMPLETE_FILTER};var r=t.type,a=t.data,n=w[r].filterPredicateList;if(Q[r]||r===A.LINK){var i=a.result_type;return i===j.ARRAY?this.validatePredicateWithArrayType(e,t):this.validatePredicate(e,{type:i})}return n.includes(e)?{error_message:null}:{error_message:K.UNMATCHED_PREDICATE}}},{key:"validatePredicateWithArrayType",value:function(e,t){var r=t.data.array_type;return r===A.SINGLE_SELECT?this.validatePredicate(e,{type:A.MULTIPLE_SELECT}):S.includes(r)?this.validatePredicate(e,{type:A.COLLABORATOR}):this.validatePredicate(e,{type:r})}},{key:"isFilterOnlyWithPredicate",value:function(e,t){if(he.includes(e))return!0;var r=t.type,a=t.data;if(Q[r]||r===A.LINK){var n=a.result_type,i=a.array_type;return n===j.ARRAY?this.isFilterOnlyWithPredicate(e,{type:i}):this.isFilterOnlyWithPredicate(e,{type:n})}var o=b.INCLUDE_ME;return!(e!==b.IS_CURRENT_USER_ID||!ye.includes(r))||!(e!==o||!S.includes(r))}},{key:"validateModifier",value:function(e,t,r){if(!Ce(r))return{error_message:null};if(!e)return{error_message:K.INCOMPLETE_FILTER};if(t===b.IS_WITHIN){if(V.includes(e))return{error_message:null}}else if(k.includes(e))return{error_message:null};return{error_message:K.UNMATCHED_MODIFIER}}},{key:"isFilterOnlyWithModifier",value:function(e,t){return!!Ce(t)&&!ve.includes(e)}},{key:"validateTerm",value:function(e,t,r,a){return this.isTermMissing(e)?{error_message:K.INCOMPLETE_FILTER}:this.isValidTerm(e,t,r,a)?{error_message:null}:{error_message:K.INVALID_TERM}}},{key:"isTermMissing",value:function(e){return!e&&0!==e&&!1!==e||Array.isArray(e)&&0===e.length}},{key:"isValidTerm",value:function(e,t,r,a){switch(a.type){case A.TEXT:case A.GEOLOCATION:case A.AUTO_NUMBER:case A.EMAIL:case A.URL:case A.STRING:return this.isValidTermType(e,Ie);case A.SINGLE_SELECT:var n=De(a);return ge.includes(t)?!!this.isValidTermType(e,Ye)&&this.isValidSelectedOptions(e,n):!!this.isValidTermType(e,Ie)&&!!n.find((function(t){return e===t.id}));case A.NUMBER:case A.DURATION:case A.RATE:return this.isValidTermType(e,me);case A.CHECKBOX:case A.BOOL:return this.isValidTermType(e,pe);case A.COLLABORATOR:case A.CREATOR:case A.LAST_MODIFIER:return this.isValidTermType(e,Ye);case A.MULTIPLE_SELECT:if(!this.isValidTermType(e,Ye))return!1;var i=De(a);return this.isValidSelectedOptions(e,i);case A.DATE:case A.CTIME:case A.MTIME:return He.includes(r)?this.isValidTermType(e,me):this.isValidTermType(e,Ie);case A.FORMULA:case A.LINK_FORMULA:var o=a.data.result_type;return o===j.ARRAY?this.isValidTermWithArrayType(e,t,r,a):this.isValidTerm(e,t,r,{type:o});case A.LINK:return this.isValidTermWithArrayType(e,t,r,a);default:return!1}}},{key:"isValidTermType",value:function(e,t){return t===Ye?Array.isArray(e)&&e.length>0:t===A.NUMBER?R.default(e)===t||!isNaN(Number(e)):R.default(e)===t}},{key:"isValidTermWithArrayType",value:function(e,t,r,a){var n=a.data,i=n.array_type,o=n.array_data;return i===A.SINGLE_SELECT?this.isValidTerm(e,t,r,{type:A.MULTIPLE_SELECT,data:o}):S.includes(i)?this.isValidTerm(e,t,r,{type:A.COLLABORATOR}):this.isValidTerm(e,t,r,{type:i,data:o})}},{key:"isValidColumnType",value:function(e){var t=e.type,r=e.data;if(Q[t]||t===A.LINK){if(!r)return!1;var a=r.result_type,n=r.array_type;return a===j.ARRAY?this.isValidColumnType({type:n}):this.isValidColumnType({type:a})}return w.hasOwnProperty(t)}},{key:"isValidSelectedOptions",value:function(e,t){var r=t.filter((function(t){return e.includes(t.id)}));return e.length===r.length}}]),e}();exports.COLLABORATOR_COLUMN_TYPES=S,exports.COLUMNS_ICON_CONFIG=M,exports.CellType=A,exports.DATE_COLUMN_OPTIONS=N,exports.DEFAULT_DATE_FORMAT=L,exports.DEFAULT_NUMBER_FORMAT=v,exports.DURATION_DECIMAL_DIGITS=h,exports.DURATION_FORMATS=y,exports.DURATION_FORMATS_MAP=Y,exports.DURATION_ZERO_DISPLAY=g,exports.DateUtils=Ae,exports.FILTER_COLUMN_OPTIONS=w,exports.FILTER_ERR_MSG=K,exports.FILTER_PREDICATE_SHOW=B,exports.FILTER_PREDICATE_TYPE=b,exports.FILTER_TERM_MODIFIER_SHOW=U,exports.FILTER_TERM_MODIFIER_TYPE=H,exports.FORMULA_COLUMN_TYPES_MAP=Q,exports.FORMULA_RESULT_TYPE=j,exports.HIGHLIGHT_COLORS={"#FFE8E6":"#FF6052","#FFDED5":"#FF714A","#FFE7D1":"#FF851A","#EED5FF":"#B64DFD","#DAD7FF":"#5F4CFF","#D7E8FF":"#3C8FFF","#D8FAFF":"#41E7FF","#DDFFE6":"#16BA51","#E9E9E9":"#999999","#FBD44A":"#E5C142","#EAA775":"#D59361","#F4667C":"#DC556A","#DC82D2":"#D166C5","#9860E5":"#844BD2","#9F8CF1":"#8F75E2","#59CB74":"#4EB867","#ADDF84":"#9CCF72","#89D2EA":"#7BC0D6","#4ECCCB":"#45BAB9","#46A1FD":"#3C8FE4","#C2C2C2":"#ADADAD","#FFFCB5":"#E8E79D","#FFEAB6":"#ECD084","#FFD9C8":"#EFBAA3","#FFDDE5":"#EDC4C1","#FFD4FF":"#E6B6E6","#DEF7C4":"#C5EB9E","#B7CEF9":"#96B2E1"},exports.NUMERIC_COLUMNS_TYPES=F,exports.SELECT_OPTION_COLORS=[{COLOR:"#FFFCB5",BORDER_COLOR:"#E8E79D",TEXT_COLOR:"#212529"},{COLOR:"#FFEAB6",BORDER_COLOR:"#ECD084",TEXT_COLOR:"#212529"},{COLOR:"#FFD9C8",BORDER_COLOR:"#EFBAA3",TEXT_COLOR:"#212529"},{COLOR:"#FFDDE5",BORDER_COLOR:"#EDC4C1",TEXT_COLOR:"#212529"},{COLOR:"#FFD4FF",BORDER_COLOR:"#E6B6E6",TEXT_COLOR:"#212529"},{COLOR:"#DAD7FF",BORDER_COLOR:"#C3BEEF",TEXT_COLOR:"#212529"},{COLOR:"#DDFFE6",BORDER_COLOR:"#BBEBCD",TEXT_COLOR:"#212529"},{COLOR:"#DEF7C4",BORDER_COLOR:"#C5EB9E",TEXT_COLOR:"#212529"},{COLOR:"#D8FAFF",BORDER_COLOR:"#B4E4E9",TEXT_COLOR:"#212529"},{COLOR:"#D7E8FF",BORDER_COLOR:"#BAD1E9",TEXT_COLOR:"#212529"},{COLOR:"#B7CEF9",BORDER_COLOR:"#96B2E1",TEXT_COLOR:"#212529"},{COLOR:"#E9E9E9",BORDER_COLOR:"#DADADA",TEXT_COLOR:"#212529"},{COLOR:"#FBD44A",BORDER_COLOR:"#E5C142",TEXT_COLOR:"#FFFFFF"},{COLOR:"#EAA775",BORDER_COLOR:"#D59361",TEXT_COLOR:"#FFFFFF"},{COLOR:"#F4667C",BORDER_COLOR:"#DC556A",TEXT_COLOR:"#FFFFFF"},{COLOR:"#DC82D2",BORDER_COLOR:"#D166C5",TEXT_COLOR:"#FFFFFF"},{COLOR:"#9860E5",BORDER_COLOR:"#844BD2",TEXT_COLOR:"#FFFFFF"},{COLOR:"#9F8CF1",BORDER_COLOR:"#8F75E2",TEXT_COLOR:"#FFFFFF"},{COLOR:"#59CB74",BORDER_COLOR:"#4EB867",TEXT_COLOR:"#FFFFFF"},{COLOR:"#ADDF84",BORDER_COLOR:"#9CCF72",TEXT_COLOR:"#FFFFFF"},{COLOR:"#89D2EA",BORDER_COLOR:"#7BC0D6",TEXT_COLOR:"#FFFFFF"},{COLOR:"#4ECCCB",BORDER_COLOR:"#45BAB9",TEXT_COLOR:"#FFFFFF"},{COLOR:"#46A1FD",BORDER_COLOR:"#3C8FE4",TEXT_COLOR:"#FFFFFF"},{COLOR:"#C2C2C2",BORDER_COLOR:"#ADADAD",TEXT_COLOR:"#FFFFFF"}],exports.ValidateFilter=Ue,exports.filterTermModifierIsWithin=V,exports.filterTermModifierNotWithin=k,exports.formatStringToNumber=function(e,t){var r=t||{},a=r.format,n=r.decimal,i=r.thousands,o=r.enable_precision,_=r.precision,l=e;if(n&&i&&"comma"===n&&(l="dot"===i?(l=(l=l.replace(/,/,"@")).replace(/\./g,",")).replace(/@/,"."):(l=l.replace(/\./g,"")).replace(/,/,".")),l=Se(l,a),o&&l){var s="percent"===a?_+2:_;l=Number(parseFloat(l).toFixed(s))}return l},exports.generatorBase64Code=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:4,t="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz0123456789",r="",a=0;a<e;a++)r+=t.charAt(Math.floor(72*Math.random()));return r},exports.getCellValueDisplayString=Fe,exports.getCollaboratorsName=le,exports.getCollaboratorsNames=_e,exports.getColumnOptions=De,exports.getDateDisplayString=q,exports.getDigitalSignImageUrl=ue,exports.getDurationDisplayString=Z,exports.getFloatNumber=Se,exports.getFormulaDisplayString=Ne,exports.getGeolocationDisplayString=se,exports.getLongtextDisplayString=ce,exports.getMultipleOptionName=oe,exports.getNumberDisplayString=ne,exports.getOptionName=ie,exports.isDateColumn=Ce,exports.isEmptyObject=function(e){var t;for(t in e)return!1;return!0},exports.isNumber=function(e){return(e||0===e)&&"[object Number]"===Object.prototype.toString.call(e)},exports.isNumberColumn=function(e){return Le(e)===A.NUMBER},exports.isNumericColumn=function(e){return F.includes(Le(e))},exports.isValidEmail=function(e){return/^[A-Za-z0-9]+([-_.][A-Za-z0-9]+)*@([A-Za-z0-9]+[-.])+[A-Za-z0-9]{2,20}$/.test(e)},exports.replaceNumberNotAllowInput=function(e,t,r){if(!e)return"";var a=e.replace(/。/g,".");switch(t){case"percent":return a.replace(/[^.-\d,%]/g,"");case"yuan":return a.replace(/[^.-\d¥¥,]/g,"");case"dollar":return a.replace(/[^.-\d$,]/g,"");case"euro":return a.replace(/[^.-\d€,]/g,"");case"custom_currency":var n=new RegExp("[^.-d"+r+",]","g");return a.replace(n,"");default:return a.replace(/[^.-\d,]/g,"")}};
@@ -83,4 +83,4 @@ var getDurationDisplayString = function getDurationDisplayString(duration, forma
83
83
  return displayString;
84
84
  };
85
85
 
86
- export { getDurationDisplayString };
86
+ export { getDurationDecimalSuffix, getDurationDisplayString };
@@ -57,14 +57,21 @@ var getGeolocationDisplayString = function getGeolocationDisplayString(loc, form
57
57
  district = _ref7.district;
58
58
  return "".concat(_province2 || '').concat(hyphen).concat(_city || '').concat(hyphen).concat(district || '').trim();
59
59
  }
60
+ case 'map_selection':
61
+ {
62
+ var _ref8 = loc || {},
63
+ address = _ref8.address,
64
+ title = _ref8.title;
65
+ return "".concat(address || '').concat(hyphen).concat(title || '').trim();
66
+ }
60
67
  default:
61
68
  {
62
69
  // default as 'geolocation'
63
- var _ref8 = loc || {},
64
- _province3 = _ref8.province,
65
- _city2 = _ref8.city,
66
- _district = _ref8.district,
67
- detail = _ref8.detail;
70
+ var _ref9 = loc || {},
71
+ _province3 = _ref9.province,
72
+ _city2 = _ref9.city,
73
+ _district = _ref9.district,
74
+ detail = _ref9.detail;
68
75
  if (!_province3 && !_city2 && !_district && !detail) return '';
69
76
  return "".concat(_province3 || '').concat(hyphen).concat(_city2 || '').concat(hyphen).concat(_district || '').concat(hyphen).concat(detail || '').trim();
70
77
  }
@@ -6,7 +6,7 @@ import { FORMULA_COLUMN_TYPES_MAP, FORMULA_RESULT_TYPE } from '../constants/form
6
6
  * @param {object} column { type: 'xxx', ... }
7
7
  * @returns column type
8
8
  */
9
- var getCheckType = function getCheckType(column) {
9
+ var getColumnType = function getColumnType(column) {
10
10
  var type = column.type,
11
11
  data = column.data;
12
12
  if (FORMULA_COLUMN_TYPES_MAP[type]) {
@@ -38,4 +38,4 @@ var getColumnOptions = function getColumnOptions(column) {
38
38
  return column.data.options;
39
39
  };
40
40
 
41
- export { getCheckType, getColumnOptions };
41
+ export { getColumnOptions, getColumnType };
package/es/column/date.js CHANGED
@@ -1,4 +1,4 @@
1
- import { getCheckType } from './common.js';
1
+ import { getColumnType } from './common.js';
2
2
  import { DATE_COLUMN_OPTIONS } from '../constants/column.js';
3
3
 
4
4
  /**
@@ -10,8 +10,7 @@ import { DATE_COLUMN_OPTIONS } from '../constants/column.js';
10
10
  * @returns true/false, bool
11
11
  */
12
12
  var isDateColumn = function isDateColumn(column) {
13
- var checkType = getCheckType(column);
14
- return DATE_COLUMN_OPTIONS.includes(checkType);
13
+ return DATE_COLUMN_OPTIONS.includes(getColumnType(column));
15
14
  };
16
15
 
17
16
  export { isDateColumn };
@@ -1,4 +1,4 @@
1
- import { getCheckType } from './common.js';
1
+ import { getColumnType } from './common.js';
2
2
  import { CellType } from '../constants/cell-type.js';
3
3
  import { NUMERIC_COLUMNS_TYPES } from '../constants/column.js';
4
4
 
@@ -11,8 +11,7 @@ import { NUMERIC_COLUMNS_TYPES } from '../constants/column.js';
11
11
  * @returns true/false, bool
12
12
  */
13
13
  var isNumericColumn = function isNumericColumn(column) {
14
- var checkType = getCheckType(column);
15
- return NUMERIC_COLUMNS_TYPES.includes(checkType);
14
+ return NUMERIC_COLUMNS_TYPES.includes(getColumnType(column));
16
15
  };
17
16
 
18
17
  /**
@@ -24,8 +23,7 @@ var isNumericColumn = function isNumericColumn(column) {
24
23
  * @returns true/false, bool
25
24
  */
26
25
  var isNumberColumn = function isNumberColumn(column) {
27
- var checkType = getCheckType(column);
28
- return checkType === CellType.NUMBER;
26
+ return getColumnType(column) === CellType.NUMBER;
29
27
  };
30
28
 
31
29
  export { isNumberColumn, isNumericColumn };
package/es/common.js CHANGED
@@ -12,5 +12,15 @@ var generatorBase64Code = function generatorBase64Code() {
12
12
  }
13
13
  return key;
14
14
  };
15
+ var isNumber = function isNumber(num) {
16
+ return (num || num === 0) && Object.prototype.toString.call(num) === '[object Number]';
17
+ };
18
+ var isEmptyObject = function isEmptyObject(obj) {
19
+ var name;
20
+ for (name in obj) {
21
+ return false;
22
+ }
23
+ return true;
24
+ };
15
25
 
16
- export { generatorBase64Code };
26
+ export { generatorBase64Code, isEmptyObject, isNumber };
package/es/index.js CHANGED
@@ -3,7 +3,7 @@ export { COLLABORATOR_COLUMN_TYPES, COLUMNS_ICON_CONFIG, DATE_COLUMN_OPTIONS, DE
3
3
  export { FILTER_ERR_MSG } from './constants/filter/index.js';
4
4
  export { FORMULA_COLUMN_TYPES_MAP, FORMULA_RESULT_TYPE } from './constants/formula.js';
5
5
  export { HIGHLIGHT_COLORS, SELECT_OPTION_COLORS } from './constants/select-option.js';
6
- export { generatorBase64Code } from './common.js';
6
+ export { generatorBase64Code, isEmptyObject, isNumber } from './common.js';
7
7
  export { getDateDisplayString } from './cell-value-get/date.js';
8
8
  export { getDurationDisplayString } from './cell-value-get/duration.js';
9
9
  export { getNumberDisplayString, replaceNumberNotAllowInput } from './cell-value-get/number.js';
@@ -87,4 +87,5 @@ var getDurationDisplayString = function getDurationDisplayString(duration, forma
87
87
  return displayString;
88
88
  };
89
89
 
90
+ exports.getDurationDecimalSuffix = getDurationDecimalSuffix;
90
91
  exports.getDurationDisplayString = getDurationDisplayString;
@@ -61,14 +61,21 @@ var getGeolocationDisplayString = function getGeolocationDisplayString(loc, form
61
61
  district = _ref7.district;
62
62
  return "".concat(_province2 || '').concat(hyphen).concat(_city || '').concat(hyphen).concat(district || '').trim();
63
63
  }
64
+ case 'map_selection':
65
+ {
66
+ var _ref8 = loc || {},
67
+ address = _ref8.address,
68
+ title = _ref8.title;
69
+ return "".concat(address || '').concat(hyphen).concat(title || '').trim();
70
+ }
64
71
  default:
65
72
  {
66
73
  // default as 'geolocation'
67
- var _ref8 = loc || {},
68
- _province3 = _ref8.province,
69
- _city2 = _ref8.city,
70
- _district = _ref8.district,
71
- detail = _ref8.detail;
74
+ var _ref9 = loc || {},
75
+ _province3 = _ref9.province,
76
+ _city2 = _ref9.city,
77
+ _district = _ref9.district,
78
+ detail = _ref9.detail;
72
79
  if (!_province3 && !_city2 && !_district && !detail) return '';
73
80
  return "".concat(_province3 || '').concat(hyphen).concat(_city2 || '').concat(hyphen).concat(_district || '').concat(hyphen).concat(detail || '').trim();
74
81
  }
@@ -10,7 +10,7 @@ var formula = require('../constants/formula.js');
10
10
  * @param {object} column { type: 'xxx', ... }
11
11
  * @returns column type
12
12
  */
13
- var getCheckType = function getCheckType(column) {
13
+ var getColumnType = function getColumnType(column) {
14
14
  var type = column.type,
15
15
  data = column.data;
16
16
  if (formula.FORMULA_COLUMN_TYPES_MAP[type]) {
@@ -42,5 +42,5 @@ var getColumnOptions = function getColumnOptions(column) {
42
42
  return column.data.options;
43
43
  };
44
44
 
45
- exports.getCheckType = getCheckType;
46
45
  exports.getColumnOptions = getColumnOptions;
46
+ exports.getColumnType = getColumnType;
@@ -14,8 +14,7 @@ var column = require('../constants/column.js');
14
14
  * @returns true/false, bool
15
15
  */
16
16
  var isDateColumn = function isDateColumn(column$1) {
17
- var checkType = common.getCheckType(column$1);
18
- return column.DATE_COLUMN_OPTIONS.includes(checkType);
17
+ return column.DATE_COLUMN_OPTIONS.includes(common.getColumnType(column$1));
19
18
  };
20
19
 
21
20
  exports.isDateColumn = isDateColumn;
@@ -15,8 +15,7 @@ var column = require('../constants/column.js');
15
15
  * @returns true/false, bool
16
16
  */
17
17
  var isNumericColumn = function isNumericColumn(column$1) {
18
- var checkType = common.getCheckType(column$1);
19
- return column.NUMERIC_COLUMNS_TYPES.includes(checkType);
18
+ return column.NUMERIC_COLUMNS_TYPES.includes(common.getColumnType(column$1));
20
19
  };
21
20
 
22
21
  /**
@@ -28,8 +27,7 @@ var isNumericColumn = function isNumericColumn(column$1) {
28
27
  * @returns true/false, bool
29
28
  */
30
29
  var isNumberColumn = function isNumberColumn(column) {
31
- var checkType = common.getCheckType(column);
32
- return checkType === cellType.CellType.NUMBER;
30
+ return common.getColumnType(column) === cellType.CellType.NUMBER;
33
31
  };
34
32
 
35
33
  exports.isNumberColumn = isNumberColumn;
package/lib/common.js CHANGED
@@ -16,5 +16,17 @@ var generatorBase64Code = function generatorBase64Code() {
16
16
  }
17
17
  return key;
18
18
  };
19
+ var isNumber = function isNumber(num) {
20
+ return (num || num === 0) && Object.prototype.toString.call(num) === '[object Number]';
21
+ };
22
+ var isEmptyObject = function isEmptyObject(obj) {
23
+ var name;
24
+ for (name in obj) {
25
+ return false;
26
+ }
27
+ return true;
28
+ };
19
29
 
20
30
  exports.generatorBase64Code = generatorBase64Code;
31
+ exports.isEmptyObject = isEmptyObject;
32
+ exports.isNumber = isNumber;
package/lib/index.js CHANGED
@@ -48,6 +48,8 @@ exports.FORMULA_RESULT_TYPE = formula.FORMULA_RESULT_TYPE;
48
48
  exports.HIGHLIGHT_COLORS = selectOption.HIGHLIGHT_COLORS;
49
49
  exports.SELECT_OPTION_COLORS = selectOption.SELECT_OPTION_COLORS;
50
50
  exports.generatorBase64Code = common.generatorBase64Code;
51
+ exports.isEmptyObject = common.isEmptyObject;
52
+ exports.isNumber = common.isNumber;
51
53
  exports.getDateDisplayString = date.getDateDisplayString;
52
54
  exports.getDurationDisplayString = duration.getDurationDisplayString;
53
55
  exports.getNumberDisplayString = number.getNumberDisplayString;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "dtable-utils",
3
- "version": "0.0.1",
3
+ "version": "0.0.2-alpha1",
4
4
  "description": "dtable common utils",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./es/index.js",
7
7
  "private": false,
8
8
  "scripts": {
9
- "test": "jest -c --watchAll",
9
+ "test": "jest --coverage --watchAll",
10
10
  "eslint": "eslint ./src/**",
11
11
  "build": "rm -rf dist lib es && rollup -c",
12
12
  "prepublishOnly": "npm run build"