@bestime/utils_browser 1.0.7 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * 浏览器工具库 => jUtilsBrowser
3
- * @update 2024-08-27 10:02:10
3
+ * @update 2024-08-27 10:45:06
4
4
  */
5
5
  import{defualtFormatter,isString,variableHasValue,isArray,forEach,_KvPair,_Number,parseTreeToTableHeader,isNull,getRandom}from"@bestime/utils_base";function getWindowSize(){return{width:document.documentElement.clientWidth||document.body.clientWidth||window.innerWidth||0,height:document.documentElement.clientHeight||document.body.clientHeight||window.innerHeight||0}}let htivId=0,idName="",isStart=!1;const records={};let timer;function stop(){isStart=!1,clearInterval(timer),timer=undefined}function startRun(){clearInterval(timer),isStart=!0,timer=setInterval(function(){for(var e in records){const t=records[e];t.current=+new Date,t.current-t.start>=t.interval&&(t.start=t.current,records[e].handler())}},17)}function add(e,t){return idName="HI-"+ ++htivId,records[idName]={start:+new Date,current:0,handler:e,interval:t},isStart||startRun(),idName}function remove(e){delete records[e],0===Object.keys(records).length&&stop()}var hpInterval={add:add,remove:remove};function observeDomResize(n,o,i,e){let r=[0,0,!1],l=[0,0,!1],s=[0,0,!1],a=[0,0,!1];const t=hpInterval.add(c,e=e||500);function c(){if(document.body.contains(n)){let e=!1;var t;i?.includes("position")&&(t=n.getBoundingClientRect(),s[0]=t.left,s[2]=s[0]!==s[1],a[0]=t.top,a[2]=a[0]!==a[1]),r[0]=n.offsetWidth,r[2]=r[0]!==r[1],l[0]=n.offsetHeight,l[2]=l[0]!==l[1],r[2]&&(r[1]=r[0],i?.includes("width")&&(e=!0)),l[2]&&(l[1]=l[0],i?.includes("height")&&(e=!0)),(a[2]||s[2])&&(a[1]=a[0],s[1]=s[0],i?.includes("position")&&(e=!0)),i&&0!==i.length||(r[2]||l[2]||a[2]||s[2])&&(e=!0),e&&o(n)}else u()}function u(){hpInterval.remove(t),r=undefined,l=undefined}return c(),u}function downloadFileByUrl(e,t){const n=document.createElement("a");n.style.display="none",n.download=t,n.setAttribute("href",e),n.setAttribute("target","_blank"),n.setAttribute("download",t),document.body.appendChild(n),n.click(),n.remove()}const $undefinedValue=void 0,$decodeURIComponent=decodeURIComponent,$browserGlobal=window,$headElement=document.getElementsByTagName("head")[0];function downloadFileByArrayBuffer(e,t){const n=$browserGlobal.URL;e=n.createObjectURL(new Blob([e]));downloadFileByUrl(e,t),n.revokeObjectURL(e),undefined}function removeElement(e){e.parentNode&&e.parentNode.removeChild(e)}function prevent(e,t,n){e=e||$browserGlobal.event,n=!1!==n,(t=!1!==t)&&$browserGlobal.event?$browserGlobal.event.cancelBubble=!0:e.stopPropagation(),n&&$browserGlobal.event?$browserGlobal.event.returnValue=!1:e.preventDefault()}function getStorage(e){e=localStorage.getItem(e);return defualtFormatter("",e)}function removeStorage(e){localStorage.removeItem(e)}function hpSetStringValue(e){return e=isString(e)?e:JSON.stringify(e)}function setStorage(e,t){localStorage.setItem(e,hpSetStringValue(t))}function getRelativePos(e){var t=e.getBoundingClientRect();return{x:t.left,y:t.top,height:e.offsetHeight,width:e.offsetWidth,clientWidth:e.clientWidth,clientHeight:e.clientHeight}}function getJsFileBaseUrl(e){e=e||0;for(var t="/[^/]*",n=document.scripts,o=0;o<e;o++)t+=t;return n[n.length-1].src.replace(new RegExp(t+"$"),"")}function hpCreateFileLoaderElement(t,n,o,i){if($headElement){let e;if("js"===t?(e=document.createElement("script")).src=n:((e=document.createElement("link")).setAttribute("rel","stylesheet"),e.href=n),i)for(var r in i)e.setAttribute(r,i[r]);e.onload=e.onerror=o,$headElement.appendChild(e)}}const cache={};function loadMultiple(n,o){const i=[];let r=0;for(let t=0;t<n.length;t++)loadSingle(n[t],function(e){i[t]=e,++r===n.length&&o.apply($undefinedValue,i)})}function loadSingle(e,t){var n=e.dependencies&&e.dependencies.length,o=e["with"]&&e["with"].length;cache[e.url]||(cache[e.url]={count:0,dependencies:!n,"with":!o,complete:!1,create:!1,url:e.url});const i=cache[e.url];function r(){return $browserGlobal[e.module]}function l(){i.complete&&i.dependencies&&i["with"]&&(e.module?t(r()):t())}i.count++,!i.dependencies&&n?(i.dependencies=!0,loadMultiple(e.dependencies,function(){loadSingle(e,t)})):!i["with"]&&o?(i["with"]=!0,loadMultiple(e["with"].concat(e),l)):i.create?variableHasValue(function(){return i.complete},l,300):(i.create=!0,hpCreateFileLoaderElement(e.type,e.url,function(){i.complete=!0,e.interceptor&&e.interceptor(r()),l()},e.attribute))}function libraryFile(e,t){(e instanceof Array?loadMultiple:loadSingle)(e,t)}function setObjectToString(e){return e=isString(e)?e:JSON.stringify(e)}function setCookie(e,t,n){t=setObjectToString(t);let o=e+"="+encodeURI(t)+";path=/;";"number"==typeof n&&((e=new Date).setTime(e.getTime()+n),o+="expires="+e.toUTCString()),document.cookie=o}function getCookie(e,t){t=t||document.cookie;let o="";return t.replace(new RegExp("(^|;\\s?)"+e+"=(.*?)($|(;\\s?))"),function(e,t,n){o=$decodeURIComponent(n)}),o}function removeCookie(e){setCookie(e,"",-1)}function removeClass(t,e){isArray(e)?forEach(e,function(e){t.classList.remove(e)}):t.classList.remove(e)}function addClass(t,e){isArray(e)?forEach(e,function(e){t.classList.add(e)}):t.classList.add(e)}function replaceClass(e,t,n){removeClass(e,t),addClass(e,n)}function toggleClass(t,e){isArray(e)?forEach(e,function(e){t.classList.toggle(e)}):t.classList.toggle(e)}const agent=$browserGlobal.navigator.userAgent;var browser={isChrome:/Chrome/.test(agent),isIPhone:/iPhone/.test(agent)};function getRatio(){return window.devicePixelRatio||1}function observeMouseWheel(e,n,o){function t(e){let t;if(t=e.wheelDelta?0<e.wheelDelta?1:-1:e.detail<0?1:-1,n(t),o)return e.preventDefault&&e.preventDefault(),!1}return e.addEventListener("mousewheel",t),e.addEventListener("DOMMouseScroll",t),{dispose:function(){e.removeEventListener("mousewheel",t),e.removeEventListener("DOMMouseScroll",t)}}}function observeDomScroll(n,e){const o=_KvPair(e),i=_Number(o.offetY);let r=!1,l=0;function t(){var e,t;r||(t=(e=n.scrollTop)-l,l=e,0!=t?t<0&&o.onTop&&e<=0+i?(r=!0,o.onTop(function(){r=!1})):0<t&&o.onBottom&&e>=n.scrollHeight-n.offsetHeight-i?(r=!0,o.onBottom(function(){r=!1})):r=!1:(r=!1,console.log("未处理")))}return n.addEventListener("scroll",t),{dispose:function(){n.removeEventListener("scroll",t)}}}const defaultCallback=e=>{};function open(e,t){const n=t||defaultCallback;e.requestFullscreen?e.requestFullscreen():e.webkitRequestFullScreen?e.webkitRequestFullScreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen&&e.msRequestFullscreen(),n(!0)}function close(e){const t=e||defaultCallback,n=document;document.exitFullscreen?document.exitFullscreen().then(function(){t(!0)})["catch"](function(){t(!1)}):n.webkitCancelFullScreen?(n.webkitCancelFullScreen(),t(!0)):n.mozCancelFullScreen?(n.mozCancelFullScreen(),t(!0)):n.msExitFullscreen&&(n.msExitFullscreen(),t(!0))}function fullScreen(e,t,n){t?open(e,n):close(n)}async function createXLSX(e){const t=document.createElement("table"),n=parseTreeToTableHeader(e.header);var o=n.data.map(function(e){return`<tr>${e.map(function(e){if(e&&0!==e.colSpan)return`<td align="center" rowSpan="${e.rowSpan}" colSpan="${e.colSpan}">${e?.title}</td>`}).join("")}</tr>`}).join(""),e=e.body.map(function(o){return`<tr>${n.columns.map(function(e){var t=o.$colField?.[e]??1,n=o.$rowSpan?.[e]??1;if(0!==t&&0!==n)return`<td align="center" colSpan="${t}" rowSpan="${n}">${o[e]??""}</td>`}).filter(function(e){return!isNull(e)}).join("")}</tr>`}).join("");return t.innerHTML=`<thead>${o}</thead><tbody>${e}</tbody>`,t.setAttribute("border","1"),t}async function loadPdfPlugin(e){const t=e||{index:"//mozilla.github.io/pdf.js/build/pdf.mjs",worker:"//mozilla.github.io/pdf.js/build/pdf.worker.mjs"};return new Promise(function(e){libraryFile({type:"js",module:"pdfjsLib",attribute:{type:"module"},url:t.index,interceptor:function(e){e.GlobalWorkerOptions.workerSrc=t.worker}},e)})}async function pdfToImage(e,i,t){const n=await loadPdfPlugin(t);return new Promise(function(o){n.getDocument(e).promise.then(function(e){e.getPage(1).then(function(e){var t=e.getViewport({scale:1}),n=i.getContext("2d");i.height=t.height,i.width=t.width,e.render({canvasContext:n,viewport:t}).promise.then(function(){o({width:t.width,height:t.height})})})},function(e){console.error(e),o({width:0,height:0})})})}function infoContainerPosition(e){var t=e.mode||"top-right",n=e.width,o=e.height,i=defualtFormatter(10,e.offsetY),r=defualtFormatter(10,e.offsetX),l=defualtFormatter(10,e.padding);let s=e.x,a=e.y;var e=getWindowSize(),c=[l,e.width-n-l],e=[l,e.height-o-l];return"top-right"===t?(s+=r,a=a-o-i,s<c[0]?s=c[0]:s>c[1]&&(l=s-n-2*r,s=c[0]<l?l:c[1]),a<e[0]?(l=a+o+2*i,a=l<e[1]?l:e[0]):a>e[1]&&(a=a-o-2*i)):"bottom-right"===t?(s+=r,a+=i):"top-left"===t&&(s=s-n-r,a=a-o-i),{x:s,y:a}}function hexToRgb(e){for(var t=[],n=1;n<7;n+=2)t.push(parseInt("0x"+e.slice(n,n+2)));return t}class TextRainCanvas{text="abcdefghijklmnopqrstuvwxyz";fontSize=14;color=[0,255,0];reverse=!1;isStop=!1;interval=100;width;height;textLineHeight;count;oCanvas;ctx;timer;pointList=[];constructor(e,t){this.draw=this.draw.bind(this);var n=e.offsetWidth,o=e.offsetHeight;e.width=n,e.height=o,this.width=n,this.height=o,t&&(this.text=t.text||this.text,this.fontSize=t.fontSize||this.fontSize,this.color=t.color?hexToRgb(t.color):this.color,this.reverse=(null!=t.reverse?t:this).reverse,this.interval=t.interval||this.interval),this.oCanvas=e,this.ctx=e.getContext("2d"),this.textLineHeight=1.2*this.fontSize,this.count=Math.ceil(this.height/this.textLineHeight),this.getPointList(),this.draw()}draw(){if(this.isStop)return clearTimeout(this.timer);this.ctx.font=this.fontSize+'px "Microsoft YaHei"',this.ctx.textBaseline="top",this.ctx.clearRect(0,0,this.width,this.height),this.pointList.forEach(o=>{o.list.forEach((e,t)=>{let n;this.reverse?(n=(t-o.currentIndex)/10,n=1-e.speed*n,t<o.currentIndex&&(n=0)):(n=(o.currentIndex-t)/10,n=1-e.speed*n,t>o.currentIndex&&(n=0)),0<n&&(this.ctx.fillStyle=`rgba(${this.color.join(",")}, ${n})`,this.ctx.fillText(e.text,e.x,e.y))}),this.reverse?(o.currentIndex--,o.currentIndex+10<0&&(o.currentIndex=this.count+getRandom(0,this.count))):(o.currentIndex++,o.currentIndex-10>o.list.length-1&&(o.currentIndex=-getRandom(0,this.count)))}),clearTimeout(this.timer),this.timer=setTimeout(this.draw,this.interval)}createColumn(t,e){const n=[];for(let e=0;e<this.count;e++){var o=getRandom(0,this.text.length-1);n.push({text:this.text[o],x:t,y:Math.floor(e*this.textLineHeight),speed:1})}return{currentIndex:e,list:n}}dispose(){this.isStop=!0,clearTimeout(this.timer)}start(){this.isStop=!1,this.draw()}getPointList(){const o=[];var i=this.fontSize,e=Math.floor(this.width/i);for(let n=0;n<e;n++){let t=0;for(let e=0;e<this.count&&(e?t+=getRandom(t+10,this.count):t+=getRandom(t,10),!(t>this.count));e++)this.reverse?o.push(this.createColumn(n*i,this.count+t)):o.push(this.createColumn(n*i,-t))}return this.pointList=o}}export{TextRainCanvas,addClass,browser,createXLSX,downloadFileByArrayBuffer,downloadFileByUrl,fullScreen,getCookie,getJsFileBaseUrl,getRatio,getRelativePos,getStorage,getWindowSize,infoContainerPosition,libraryFile,observeDomResize,observeDomScroll,observeMouseWheel,pdfToImage,prevent,removeClass,removeCookie,removeElement,removeStorage,replaceClass,setCookie,setStorage,toggleClass};
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * 浏览器工具库 => jUtilsBrowser
3
- * @update 2024-08-27 10:02:10
3
+ * @update 2024-08-27 10:45:06
4
4
  */
5
5
  !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@bestime/utils_base")):"function"==typeof define&&define.amd?define(["exports","@bestime/utils_base"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).jUtilsBrowser={},e.jUtilsBase)}(this,function(e,a){"use strict";function d(){return{width:document.documentElement.clientWidth||document.body.clientWidth||window.innerWidth||0,height:document.documentElement.clientHeight||document.body.clientHeight||window.innerHeight||0}}let n=0,i,o=!1;const r={};let s;var h={add:function(e,t){return i="HI-"+ ++n,r[i]={start:+new Date,current:0,handler:e,interval:t},o||(clearInterval(s),o=!0,s=setInterval(function(){for(var e in r){const t=r[e];t.current=+new Date,t.current-t.start>=t.interval&&(t.start=t.current,r[e].handler())}},17)),i},remove:function(e){delete r[e],0===Object.keys(r).length&&(o=!1,clearInterval(s),s=undefined)}};function c(e,t){const n=document.createElement("a");n.style.display="none",n.download=t,n.setAttribute("href",e),n.setAttribute("target","_blank"),n.setAttribute("download",t),document.body.appendChild(n),n.click(),n.remove()}const l=void 0,u=decodeURIComponent,f=window,m=document.getElementsByTagName("head")[0];const p={};function g(n,i){const o=[];let r=0;for(let t=0;t<n.length;t++)v(n[t],function(e){o[t]=e,++r===n.length&&i.apply(l,o)})}function v(e,t){var n=e.dependencies&&e.dependencies.length,i=e["with"]&&e["with"].length;p[e.url]||(p[e.url]={count:0,dependencies:!n,"with":!i,complete:!1,create:!1,url:e.url});const o=p[e.url];function r(){return f[e.module]}function s(){o.complete&&o.dependencies&&o["with"]&&(e.module?t(r()):t())}if(o.count++,!o.dependencies&&n)o.dependencies=!0,g(e.dependencies,function(){v(e,t)});else if(!o["with"]&&i)o["with"]=!0,g(e["with"].concat(e),s);else if(o.create)a.variableHasValue(function(){return o.complete},s,300);else{o.create=!0;var n=e.type,i=e.url,c=function(){o.complete=!0,e.interceptor&&e.interceptor(r()),s()},l=e.attribute;if(m){let e;if("js"===n?(e=document.createElement("script")).src=i:((e=document.createElement("link")).setAttribute("rel","stylesheet"),e.href=i),l)for(var u in l)e.setAttribute(u,l[u]);e.onload=e.onerror=c,m.appendChild(e)}}}function w(e,t){(e instanceof Array?g:v)(e,t)}function t(e,t,n){var i;i=t,t=i=a.isString(i)?i:JSON.stringify(i);let o=e+"="+encodeURI(t)+";path=/;";"number"==typeof n&&((i=new Date).setTime(i.getTime()+n),o+="expires="+i.toUTCString()),document.cookie=o}function x(t,e){a.isArray(e)?a.forEach(e,function(e){t.classList.remove(e)}):t.classList.remove(e)}function b(t,e){a.isArray(e)?a.forEach(e,function(e){t.classList.add(e)}):t.classList.add(e)}var S=f.navigator.userAgent,S={isChrome:/Chrome/.test(S),isIPhone:/iPhone/.test(S)};const y=e=>{};class C{text="abcdefghijklmnopqrstuvwxyz";fontSize=14;color=[0,255,0];reverse=!1;isStop=!1;interval=100;width;height;textLineHeight;count;oCanvas;ctx;timer;pointList=[];constructor(e,t){this.draw=this.draw.bind(this);var n=e.offsetWidth,i=e.offsetHeight;e.width=n,e.height=i,this.width=n,this.height=i,t&&(this.text=t.text||this.text,this.fontSize=t.fontSize||this.fontSize,this.color=t.color?function(e){for(var t=[],n=1;n<7;n+=2)t.push(parseInt("0x"+e.slice(n,n+2)));return t}(t.color):this.color,this.reverse=(null!=t.reverse?t:this).reverse,this.interval=t.interval||this.interval),this.oCanvas=e,this.ctx=e.getContext("2d"),this.textLineHeight=1.2*this.fontSize,this.count=Math.ceil(this.height/this.textLineHeight),this.getPointList(),this.draw()}draw(){if(this.isStop)return clearTimeout(this.timer);this.ctx.font=this.fontSize+'px "Microsoft YaHei"',this.ctx.textBaseline="top",this.ctx.clearRect(0,0,this.width,this.height),this.pointList.forEach(i=>{i.list.forEach((e,t)=>{let n;this.reverse?(n=(t-i.currentIndex)/10,n=1-e.speed*n,t<i.currentIndex&&(n=0)):(n=(i.currentIndex-t)/10,n=1-e.speed*n,t>i.currentIndex&&(n=0)),0<n&&(this.ctx.fillStyle=`rgba(${this.color.join(",")}, ${n})`,this.ctx.fillText(e.text,e.x,e.y))}),this.reverse?(i.currentIndex--,i.currentIndex+10<0&&(i.currentIndex=this.count+a.getRandom(0,this.count))):(i.currentIndex++,i.currentIndex-10>i.list.length-1&&(i.currentIndex=-a.getRandom(0,this.count)))}),clearTimeout(this.timer),this.timer=setTimeout(this.draw,this.interval)}createColumn(t,e){const n=[];for(let e=0;e<this.count;e++){var i=a.getRandom(0,this.text.length-1);n.push({text:this.text[i],x:t,y:Math.floor(e*this.textLineHeight),speed:1})}return{currentIndex:e,list:n}}dispose(){this.isStop=!0,clearTimeout(this.timer)}start(){this.isStop=!1,this.draw()}getPointList(){const i=[];var o=this.fontSize,e=Math.floor(this.width/o);for(let n=0;n<e;n++){let t=0;for(let e=0;e<this.count&&(e?t+=a.getRandom(t+10,this.count):t+=a.getRandom(t,10),!(t>this.count));e++)this.reverse?i.push(this.createColumn(n*o,this.count+t)):i.push(this.createColumn(n*o,-t))}return this.pointList=i}}e.TextRainCanvas=C,e.addClass=b,e.browser=S,e.createXLSX=async function(e){const t=document.createElement("table"),n=a.parseTreeToTableHeader(e.header);var i=n.data.map(function(e){return`<tr>${e.map(function(e){if(e&&0!==e.colSpan)return`<td align="center" rowSpan="${e.rowSpan}" colSpan="${e.colSpan}">${e?.title}</td>`}).join("")}</tr>`}).join(""),e=e.body.map(function(i){return`<tr>${n.columns.map(function(e){var t=i.$colField?.[e]??1,n=i.$rowSpan?.[e]??1;if(0!==t&&0!==n)return`<td align="center" colSpan="${t}" rowSpan="${n}">${i[e]??""}</td>`}).filter(function(e){return!a.isNull(e)}).join("")}</tr>`}).join("");return t.innerHTML=`<thead>${i}</thead><tbody>${e}</tbody>`,t.setAttribute("border","1"),t},e.downloadFileByArrayBuffer=function(e,t){const n=f.URL;c(e=n.createObjectURL(new Blob([e])),t),n.revokeObjectURL(e),undefined},e.downloadFileByUrl=c,e.fullScreen=function(e,t,n){if(t){t=e;e=n;const i=e||y;t.requestFullscreen?t.requestFullscreen():t.webkitRequestFullScreen?t.webkitRequestFullScreen():t.mozRequestFullScreen?t.mozRequestFullScreen():t.msRequestFullscreen&&t.msRequestFullscreen(),i(!0)}else{e=n;const o=e||y,r=document;document.exitFullscreen?document.exitFullscreen().then(function(){o(!0)})["catch"](function(){o(!1)}):r.webkitCancelFullScreen?(r.webkitCancelFullScreen(),o(!0)):r.mozCancelFullScreen?(r.mozCancelFullScreen(),o(!0)):r.msExitFullscreen&&(r.msExitFullscreen(),o(!0))}},e.getCookie=function(e,t){t=t||document.cookie;let i="";return t.replace(new RegExp("(^|;\\s?)"+e+"=(.*?)($|(;\\s?))"),function(e,t,n){i=u(n)}),i},e.getJsFileBaseUrl=function(e){e=e||0;for(var t="/[^/]*",n=document.scripts,i=0;i<e;i++)t+=t;return n[n.length-1].src.replace(new RegExp(t+"$"),"")},e.getRatio=function(){return window.devicePixelRatio||1},e.getRelativePos=function(e){var t=e.getBoundingClientRect();return{x:t.left,y:t.top,height:e.offsetHeight,width:e.offsetWidth,clientWidth:e.clientWidth,clientHeight:e.clientHeight}},e.getStorage=function(e){return e=localStorage.getItem(e),a.defualtFormatter("",e)},e.getWindowSize=d,e.infoContainerPosition=function(e){var t=e.mode||"top-right",n=e.width,i=e.height,o=a.defualtFormatter(10,e.offsetY),r=a.defualtFormatter(10,e.offsetX),s=a.defualtFormatter(10,e.padding);let c=e.x,l=e.y;var e=d(),u=[s,e.width-n-s],e=[s,e.height-i-s];return"top-right"===t?(c+=r,l=l-i-o,c<u[0]?c=u[0]:c>u[1]&&(s=c-n-2*r,c=u[0]<s?s:u[1]),l<e[0]?(s=l+i+2*o,l=s<e[1]?s:e[0]):l>e[1]&&(l=l-i-2*o)):"bottom-right"===t?(c+=r,l+=o):"top-left"===t&&(c=c-n-r,l=l-i-o),{x:c,y:l}},e.libraryFile=w,e.observeDomResize=function(n,i,o,e){let r=[0,0,!1],s=[0,0,!1],c=[0,0,!1],l=[0,0,!1];const t=h.add(u,e=e||500);function u(){if(document.body.contains(n)){let e=!1;var t;o?.includes("position")&&(t=n.getBoundingClientRect(),c[0]=t.left,c[2]=c[0]!==c[1],l[0]=t.top,l[2]=l[0]!==l[1]),r[0]=n.offsetWidth,r[2]=r[0]!==r[1],s[0]=n.offsetHeight,s[2]=s[0]!==s[1],r[2]&&(r[1]=r[0],o?.includes("width")&&(e=!0)),s[2]&&(s[1]=s[0],o?.includes("height")&&(e=!0)),(l[2]||c[2])&&(l[1]=l[0],c[1]=c[0],o?.includes("position")&&(e=!0)),o&&0!==o.length||(r[2]||s[2]||l[2]||c[2])&&(e=!0),e&&i(n)}else a()}function a(){h.remove(t),r=undefined,s=undefined}return u(),a},e.observeDomScroll=function(n,e){const i=a._KvPair(e),o=a._Number(i.offetY);let r=!1,s=0;function t(){var e,t;r||(t=(e=n.scrollTop)-s,s=e,0!=t?t<0&&i.onTop&&e<=0+o?(r=!0,i.onTop(function(){r=!1})):0<t&&i.onBottom&&e>=n.scrollHeight-n.offsetHeight-o?(r=!0,i.onBottom(function(){r=!1})):r=!1:(r=!1,console.log("未处理")))}return n.addEventListener("scroll",t),{dispose:function(){n.removeEventListener("scroll",t)}}},e.observeMouseWheel=function(e,n,i){function t(e){let t;if(t=e.wheelDelta?0<e.wheelDelta?1:-1:e.detail<0?1:-1,n(t),i)return e.preventDefault&&e.preventDefault(),!1}return e.addEventListener("mousewheel",t),e.addEventListener("DOMMouseScroll",t),{dispose:function(){e.removeEventListener("mousewheel",t),e.removeEventListener("DOMMouseScroll",t)}}},e.pdfToImage=async function(e,o,t){const n=await async function(e){const t=e||{index:"//mozilla.github.io/pdf.js/build/pdf.mjs",worker:"//mozilla.github.io/pdf.js/build/pdf.worker.mjs"};return new Promise(function(e){w({type:"js",module:"pdfjsLib",attribute:{type:"module"},url:t.index,interceptor:function(e){e.GlobalWorkerOptions.workerSrc=t.worker}},e)})}(t);return new Promise(function(i){n.getDocument(e).promise.then(function(e){e.getPage(1).then(function(e){var t=e.getViewport({scale:1}),n=o.getContext("2d");o.height=t.height,o.width=t.width,e.render({canvasContext:n,viewport:t}).promise.then(function(){i({width:t.width,height:t.height})})})},function(e){console.error(e),i({width:0,height:0})})})},e.prevent=function(e,t,n){e=e||f.event,n=!1!==n,(t=!1!==t)&&f.event?f.event.cancelBubble=!0:e.stopPropagation(),n&&f.event?f.event.returnValue=!1:e.preventDefault()},e.removeClass=x,e.removeCookie=function(e){t(e,"",-1)},e.removeElement=function(e){e.parentNode&&e.parentNode.removeChild(e)},e.removeStorage=function(e){localStorage.removeItem(e)},e.replaceClass=function(e,t,n){x(e,t),b(e,n)},e.setCookie=t,e.setStorage=function(e,t){localStorage.setItem(e,(e=t,e=a.isString(e)?e:JSON.stringify(e)))},e.toggleClass=function(t,e){a.isArray(e)?a.forEach(e,function(e){t.classList.toggle(e)}):t.classList.toggle(e)}});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bestime/utils_browser",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
4
4
  "main": "./dist/esm/index.min.mjs",
5
5
  "module": "./dist/esm/index.min.mjs",
6
6
  "types": "./dist/esm/index.d.ts",
@@ -15,7 +15,7 @@
15
15
  },
16
16
 
17
17
  "dependencies": {
18
- "@bestime/utils_base": "1.0.7"
18
+ "@bestime/utils_base": "1.0.8"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@babel/core": "7.18.6",