UNPKG

@dzc/quick-time-selection

Version:

自定义时间跨度选择器

1 lines 14.1 kB
module.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(r,a,function(t){return e[t]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=6)}([function(e,t){e.exports=require("react")},function(e,t){e.exports=require("moment")},function(e,t){e.exports=require("antd")},function(e,t){e.exports=require("prop-types")},function(e,t){e.exports=require("@ant-design/icons")},function(e,t){e.exports=require("antd/lib/locale-provider/zh_CN")},function(e,t,n){"use strict";n.r(t);var r=n(0),a=n.n(r),o=n(2),i=n(3),l=n.n(i),c=n(1),u=n.n(c),s=n(4),f=n(5),m=n.n(f);n(7),n(8),n(9);function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,a,o=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(e){l=!0,a=e}finally{try{i||null==n.return||n.return()}finally{if(l)throw a}}return o}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var v=o.Select.Option,b=o.DatePicker.RangePicker,h=function(){return JSON.parse(localStorage.getItem("dateCommonList")||"[]")},y=h(),g=null,x=function(e){var t=e.trigger,n=void 0===t?"hover":t,i=e.defaultTime,l=void 0===i?[]:i,c=e.format,f=void 0===c?"YYYY-MM-DD HH:mm":c,p=e.showTime,x=void 0===p?{format:"HH:mm"}:p,E=e.outFormat,w=void 0===E?"":E,O=e.onChange,S=void 0===O?function(e){console.warn("value",e)}:O,j=e.refresh,N=void 0===j?function(){console.warn("页面/数据刷新...")}:j,C=Object(r.useRef)(!0),k=d(Object(r.useState)(),2),U=k[0],I=k[1],L=d(Object(r.useState)(),2),A=L[0],R=L[1],T=d(Object(r.useState)(),2),M=T[0],q=T[1],B=d(Object(r.useState)(),2),P=B[0],_=B[1],D=d(Object(r.useState)(),2),z=D[0],H=D[1],J=d(Object(r.useState)(),2),Y=J[0],$=J[1],F=d(Object(r.useState)(l),2),G=F[0],K=F[1],Q=[{label:"秒",value:"seconds"},{label:"分钟",value:"minutes"},{label:"小时",value:"hours"},{label:"天",value:"days"},{label:"周",value:"weeks"},{label:"月",value:"months"},{label:"年",value:"years"}],V=[{label:"今天",value:"0",time:[u()().startOf("day"),u()().endOf("day")]},{label:"最近24小时",value:"1",time:[u()().subtract(24,"hours"),u()()]},{label:"本周",value:"2",time:[u()().startOf("weeks"),u()().endOf("weeks")]},{label:"最近7天",value:"3",time:[u()().subtract(7,"days"),u()()]},{label:"最近15分钟",value:"4",time:[u()().subtract(15,"minutes"),u()()]},{label:"最近1小时",value:"5",time:[u()().subtract(1,"hours"),u()()]},{label:"最近1年",value:"6",time:[u()().subtract(1,"years"),u()()]}],W=[{label:"秒",value:"seconds",time:1e3},{label:"分钟",value:"minutes",time:6e4},{label:"小时",value:"hours",time:36e5}],X=function(){if(g&&(clearInterval(g),g=null),Y)$(!Y);else{if(M&&A){var e=W.find((function(e){return e.value===M})).time*(A-0);g=setInterval((function(){N()}),e),$(!Y)}A?M||message.error("请设置刷新频率单位"):message.error("请设置刷新次数")}},Z=function(){if(U&&z&&P){var e=null,t=null;"Last"===U&&(e=u()().subtract(z-0,P),t=u()()),"Next"===U&&(e=u()(),t=u()().add(z-0,P)),K([e,t])}U?z?P||message.error("请选择时间单位"):message.error("请设置时间值"):message.error("请设置时间跨度")};return Object(r.useEffect)((function(){if(C.current)C.current=!1;else{var e=G;w&&(e=G.map((function(e){return u()(e).format(w)}))),S(e)}}),[G]),a.a.createElement("div",{className:"quick-time-selection"},a.a.createElement(o.Popover,{trigger:n,placement:"bottom",content:function(){return a.a.createElement("div",{className:"date-content-body"},a.a.createElement("p",{className:"date-con-title"},"快速选择"),a.a.createElement("div",{className:"date-con-box"},a.a.createElement(o.Select,{placeholder:"请选择",value:U,onChange:I},a.a.createElement(v,{value:"Last"},"最近"),a.a.createElement(v,{value:"Next"},"未来")),a.a.createElement(o.InputNumber,{placeholder:"请输入",min:0,value:z,onChange:H}),a.a.createElement(o.Select,{placeholder:"请选择",value:P,onChange:_},Q.map((function(e){return a.a.createElement(v,{key:e.value,value:e.value},e.label)}))),a.a.createElement(o.Button,{onClick:Z},"应用")),a.a.createElement("p",{className:"date-con-title"},"常用"),a.a.createElement("div",{className:"common-date-box"},V.map((function(e){return a.a.createElement("div",{key:e.value,className:"date-box-item"},a.a.createElement("span",{onClick:function(){return function(e){K(e.time);var t=h();(!t.length||t.findIndex((function(t){return e.value===t.value}))<0)&&(t.push({value:e.value,label:e.label}),localStorage.setItem("dateCommonList",JSON.stringify(t)))}(e)}},e.label))}))),a.a.createElement("p",{className:"date-con-title"},"刷新频率"),a.a.createElement("div",{className:"date-con-box"},a.a.createElement(o.InputNumber,{placeholder:"请输入",min:0,value:A,onChange:R}),a.a.createElement(o.Select,{placeholder:"请选择",value:M,onChange:q},W.map((function(e){return a.a.createElement(v,{key:e.value,value:e.value},e.label)}))),a.a.createElement(o.Button,{onClick:X},Y?"关闭":"打开")),a.a.createElement("p",{className:"date-con-title"},"最近使用的日期范围"),y.length?a.a.createElement("div",{className:"common-date-box"},y.map((function(e){return a.a.createElement("div",{key:e.value,className:"date-box-item date-item-row"},a.a.createElement("span",{onClick:function(){return function(e){var t=V.find((function(t){return t.value===e.value}));K(t.time)}(e)}},e.label))}))):a.a.createElement(o.Empty,{image:o.Empty.PRESENTED_IMAGE_SIMPLE}))}},a.a.createElement("span",{className:"date-img"},a.a.createElement(s.CalendarOutlined,{className:"date-icon"}),a.a.createElement(s.DownOutlined,{className:"xiala"}))),a.a.createElement(o.ConfigProvider,{locale:m.a},a.a.createElement(b,{className:"priview-search",format:f,showTime:x,value:G,onChange:K})))};x.propTypes={defaultTime:l.a.array,format:l.a.string,trigger:l.a.string,onChange:l.a.func,refresh:l.a.func,outFormat:l.a.string,showTime:l.a.oneOfType([l.a.object,l.a.bool])},t.default=x},function(e,t){e.exports=require("moment/locale/zh-cn")},function(e,t){e.exports=require("antd/dist/antd.css")},function(e,t,n){var r=n(10);"string"==typeof r&&(r=[[e.i,r,""]]);var a={hmr:!0,transform:void 0};n(12)(r,a);r.locals&&(e.exports=r.locals)},function(e,t,n){(e.exports=n(11)(!1)).push([e.i,".quick-time-selection {\n display: flex;\n align-items: center;\n}\n.quick-time-selection .date-img {\n margin-right: 8px;\n cursor: pointer;\n display: flex;\n align-items: center;\n}\n.quick-time-selection .date-img .date-icon {\n font-size: 18px;\n margin-right: 4px;\n color: #666;\n}\n.quick-time-selection .date-img .xiala {\n color: #666;\n font-size: 12px;\n}\n.date-content-body .date-con-title {\n margin-bottom: 0;\n padding-bottom: 8px;\n color: #333;\n font-weight: 600;\n font-size: 12px;\n}\n.date-content-body .date-con-box {\n display: flex;\n align-items: center;\n margin-bottom: 16px;\n}\n.date-content-body .ant-select,\n.date-content-body .ant-input-number {\n width: 120px;\n margin-right: 8px;\n}\n.date-content-body .common-date-box {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 8px;\n}\n.date-content-body .common-date-box .date-box-item {\n width: 50%;\n padding-bottom: 8px;\n}\n.date-content-body .common-date-box .date-box-item span {\n color: #5ca9fa;\n cursor: pointer;\n}\n",""])},function(e,t){e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||"",r=e[3];if(!r)return n;if(t&&"function"==typeof btoa){var a=(i=r,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),o=r.sources.map((function(e){return"/*# sourceURL="+r.sourceRoot+e+" */"}));return[n].concat(o).concat([a]).join("\n")}var i;return[n].join("\n")}(t,e);return t[2]?"@media "+t[2]+"{"+n+"}":n})).join("")},t.i=function(e,n){"string"==typeof e&&(e=[[null,e,""]]);for(var r={},a=0;a<this.length;a++){var o=this[a][0];"number"==typeof o&&(r[o]=!0)}for(a=0;a<e.length;a++){var i=e[a];"number"==typeof i[0]&&r[i[0]]||(n&&!i[2]?i[2]=n:n&&(i[2]="("+i[2]+") and ("+n+")"),t.push(i))}},t}},function(e,t,n){var r,a,o={},i=(r=function(){return window&&document&&document.all&&!window.atob},function(){return void 0===a&&(a=r.apply(this,arguments)),a}),l=function(e){var t={};return function(n){if(void 0===t[n]){var r=e.call(this,n);if(r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[n]=r}return t[n]}}((function(e){return document.querySelector(e)})),c=null,u=0,s=[],f=n(13);function m(e,t){for(var n=0;n<e.length;n++){var r=e[n],a=o[r.id];if(a){a.refs++;for(var i=0;i<a.parts.length;i++)a.parts[i](r.parts[i]);for(;i<r.parts.length;i++)a.parts.push(y(r.parts[i],t))}else{var l=[];for(i=0;i<r.parts.length;i++)l.push(y(r.parts[i],t));o[r.id]={id:r.id,refs:1,parts:l}}}}function d(e,t){for(var n=[],r={},a=0;a<e.length;a++){var o=e[a],i=t.base?o[0]+t.base:o[0],l={css:o[1],media:o[2],sourceMap:o[3]};r[i]?r[i].parts.push(l):n.push(r[i]={id:i,parts:[l]})}return n}function p(e,t){var n=l(e.insertInto);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");var r=s[s.length-1];if("top"===e.insertAt)r?r.nextSibling?n.insertBefore(t,r.nextSibling):n.appendChild(t):n.insertBefore(t,n.firstChild),s.push(t);else if("bottom"===e.insertAt)n.appendChild(t);else{if("object"!=typeof e.insertAt||!e.insertAt.before)throw new Error("[Style Loader]\n\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\n Must be 'top', 'bottom', or Object.\n (https://github.com/webpack-contrib/style-loader#insertat)\n");var a=l(e.insertInto+" "+e.insertAt.before);n.insertBefore(t,a)}}function v(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e);var t=s.indexOf(e);t>=0&&s.splice(t,1)}function b(e){var t=document.createElement("style");return e.attrs.type="text/css",h(t,e.attrs),p(e,t),t}function h(e,t){Object.keys(t).forEach((function(n){e.setAttribute(n,t[n])}))}function y(e,t){var n,r,a,o;if(t.transform&&e.css){if(!(o=t.transform(e.css)))return function(){};e.css=o}if(t.singleton){var i=u++;n=c||(c=b(t)),r=E.bind(null,n,i,!1),a=E.bind(null,n,i,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return e.attrs.type="text/css",e.attrs.rel="stylesheet",h(t,e.attrs),p(e,t),t}(t),r=O.bind(null,n,t),a=function(){v(n),n.href&&URL.revokeObjectURL(n.href)}):(n=b(t),r=w.bind(null,n),a=function(){v(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else a()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=i()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=d(e,t);return m(n,t),function(e){for(var r=[],a=0;a<n.length;a++){var i=n[a];(l=o[i.id]).refs--,r.push(l)}e&&m(d(e,t),t);for(a=0;a<r.length;a++){var l;if(0===(l=r[a]).refs){for(var c=0;c<l.parts.length;c++)l.parts[c]();delete o[l.id]}}}};var g,x=(g=[],function(e,t){return g[e]=t,g.filter(Boolean).join("\n")});function E(e,t,n,r){var a=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=x(t,a);else{var o=document.createTextNode(a),i=e.childNodes;i[t]&&e.removeChild(i[t]),i.length?e.insertBefore(o,i[t]):e.appendChild(o)}}function w(e,t){var n=t.css,r=t.media;if(r&&e.setAttribute("media",r),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}function O(e,t,n){var r=n.css,a=n.sourceMap,o=void 0===t.convertToAbsoluteUrls&&a;(t.convertToAbsoluteUrls||o)&&(r=f(r)),a&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(a))))+" */");var i=new Blob([r],{type:"text/css"}),l=e.href;e.href=URL.createObjectURL(i),l&&URL.revokeObjectURL(l)}},function(e,t){e.exports=function(e){var t="undefined"!=typeof window&&window.location;if(!t)throw new Error("fixUrls requires window.location");if(!e||"string"!=typeof e)return e;var n=t.protocol+"//"+t.host,r=n+t.pathname.replace(/\/[^\/]*$/,"/");return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,(function(e,t){var a,o=t.trim().replace(/^"(.*)"$/,(function(e,t){return t})).replace(/^'(.*)'$/,(function(e,t){return t}));return/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/)/i.test(o)?e:(a=0===o.indexOf("//")?o:0===o.indexOf("/")?n+o:r+o.replace(/^\.\//,""),"url("+JSON.stringify(a)+")")}))}}]);