kyouka 1.3.3 → 1.3.4
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/build/kyouka.umd.js +1 -0
- package/dist/CSVToArray.js +5 -11
- package/dist/CSVToJSON.js +6 -9
- package/dist/JSONToCSV.js +5 -38
- package/dist/addDaysToDate.js +2 -4
- package/dist/addHoursToDate.js +2 -4
- package/dist/addMinutesToDate.js +2 -4
- package/dist/addSecondsToDate.js +2 -4
- package/dist/addWeeksToDate.js +2 -4
- package/dist/animateNumber.js +7 -9
- package/dist/arrayToCSV.js +6 -13
- package/dist/attempt.js +3 -34
- package/dist/average.js +2 -10
- package/dist/chunk.js +2 -8
- package/dist/chunkMultiSize.js +5 -7
- package/dist/clamp.js +2 -6
- package/dist/compact.js +2 -4
- package/dist/compose.js +2 -43
- package/dist/copyToClipboard.js +4 -6
- package/dist/countOccurrences.js +2 -6
- package/dist/curry.js +2 -36
- package/dist/dataURItoFile.js +7 -10
- package/dist/dateRange.js +7 -48
- package/dist/debounce.js +5 -13
- package/dist/deepClone.js +5 -9
- package/dist/deg2rad.js +2 -4
- package/dist/degreesAngle.js +3 -10
- package/dist/detectDeviceType.js +2 -4
- package/dist/disableTouchMove.js +4 -9
- package/dist/distance.js +2 -6
- package/dist/enableTouchMove.js +4 -9
- package/dist/equals.js +4 -6
- package/dist/factorial.js +3 -5
- package/dist/formatDuration.js +3 -5
- package/dist/frequencies.js +5 -9
- package/dist/fromTimestamp.js +2 -4
- package/dist/getCenterPointPos.js +6 -8
- package/dist/getMousePos.js +5 -7
- package/dist/getNormalizedMousePos.js +2 -4
- package/dist/getScrollPosition.js +7 -19
- package/dist/getTimeDeltaAsSeconds.js +6 -8
- package/dist/getTimeFromDate.js +2 -6
- package/dist/getTimestamp.js +3 -7
- package/dist/getURLParameters.js +2 -6
- package/dist/groupBy.js +7 -11
- package/dist/head.js +2 -4
- package/dist/includesAll.js +2 -6
- package/dist/includesAny.js +2 -6
- package/dist/initialize2DArray.js +2 -7
- package/dist/initializeArrayWithValues.js +2 -7
- package/dist/intersection.js +4 -31
- package/dist/iosInputScrollFix.js +6 -11
- package/dist/isBottomVisible.js +2 -7
- package/dist/isElBottomVisible.js +2 -7
- package/dist/isEmpty.js +2 -4
- package/dist/isEven.js +2 -4
- package/dist/isIdcard.js +2 -6
- package/dist/isOdd.js +2 -4
- package/dist/isPhoneNumber.js +2 -6
- package/dist/isUrl.js +2 -4
- package/dist/kyouka.d.ts +2 -2
- package/dist/kyouka.js +223 -228
- package/dist/last.js +2 -6
- package/dist/lerp.js +2 -4
- package/dist/loadImageAsBase64URL.js +5 -7
- package/dist/loadVideoAsBlob.js +7 -10
- package/dist/mapKeys.js +5 -9
- package/dist/mapObject.js +5 -9
- package/dist/mapValues.js +5 -9
- package/dist/mask.js +2 -8
- package/dist/maxBy.js +3 -30
- package/dist/maxN.js +2 -32
- package/dist/memorize.js +4 -6
- package/dist/minBy.js +3 -30
- package/dist/minN.js +2 -32
- package/dist/objectMap.js +2 -25
- package/dist/objectToQueryString.js +5 -24
- package/dist/omit.js +4 -8
- package/dist/orderBy.js +10 -41
- package/dist/padNumber.js +2 -4
- package/dist/partial.js +2 -41
- package/dist/pick.js +2 -6
- package/dist/pluck.js +2 -4
- package/dist/preventDefault.js +2 -4
- package/dist/previewImage.js +7 -12
- package/dist/promisify.js +2 -41
- package/dist/px2vh.js +2 -4
- package/dist/px2vw.js +2 -4
- package/dist/rad2deg.js +2 -4
- package/dist/radiansAngle.js +2 -6
- package/dist/randomHexColorCode.js +3 -5
- package/dist/randomIntArrayInRange.js +2 -7
- package/dist/randomIntegerInRange.js +2 -6
- package/dist/randomNumberInRange.js +2 -6
- package/dist/range.js +7 -48
- package/dist/reload.js +2 -4
- package/dist/repeatArray.js +2 -29
- package/dist/requestInterval.js +7 -9
- package/dist/reverseString.js +2 -29
- package/dist/sample.js +2 -4
- package/dist/sampleSize.d.ts +1 -1
- package/dist/sampleSize.js +5 -26
- package/dist/shuffle.d.ts +1 -1
- package/dist/shuffle.js +5 -25
- package/dist/sleep.js +2 -6
- package/dist/sum.js +2 -35
- package/dist/sumPower.js +5 -11
- package/dist/throttle.js +5 -6
- package/dist/timeTaken.js +3 -5
- package/dist/union.js +2 -29
- package/dist/uniq.js +2 -29
- package/dist/unzip.js +4 -33
- package/dist/vh2px.js +3 -5
- package/dist/vw2px.js +3 -5
- package/dist/yesNo.js +2 -7
- package/dist/zip.js +5 -36
- package/package.json +9 -3
- package/rollup.config.js +22 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).kyouka=t()}(this,(function(){"use strict";const e=(t,n=t.length,...r)=>n<=r.length?t(...r):e.bind(null,t,n,...r),t=e=>{if(null===e)return null;let n=Object.assign({},e);return Object.keys(n).forEach((r=>n[r]="object"==typeof e[r]?t(e[r]):e[r])),Array.isArray(e)&&e.length?(n.length=e.length)&&Array.from(n):Array.isArray(e)?Array.from(e):n},n=e=>180*e/Math.PI,r=()=>/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?"Mobile":"Desktop",o=e=>{e.preventDefault()},i=(e,t)=>{if(e===t)return!0;if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(!e||!t||"object"!=typeof e&&"object"!=typeof t)return e===t;if(e.prototype!==t.prototype)return!1;let n=Object.keys(e);return n.length===Object.keys(t).length&&n.every((n=>i(e[n],t[n])))},a=e=>e<0?(()=>{throw new TypeError("Negative numbers are not allowed!")})():e<=1?1:e*a(e-1),l=e=>e/window.innerWidth*100,s=(e=null,t="px")=>{const n={x:void 0!==(e=e||window).pageXOffset?e.pageXOffset:e.scrollLeft,y:void 0!==e.pageYOffset?e.pageYOffset:e.scrollTop};return"vw"===t&&(n.x=l(n.x),n.y=l(n.y)),n},c=(e,t)=>{const n=new FileReader;n.readAsDataURL(e),n.addEventListener("load",(()=>{const e=n.result;t(e)}))},d={getCenterPointPos:e=>{const t=e.getBoundingClientRect();return{x:t.left+t.width/2,y:t.top+t.height/2}},getMousePos:e=>({x:e.clientX,y:e.clientY}),getTimeFromDate:e=>e.toTimeString().slice(0,8).split(":").join(""),randomIntArrayInRange:(e,t,n=1)=>Array.from({length:n},(()=>Math.floor(Math.random()*(t-e+1))+e)),randomNumberInRange:(e,t)=>Math.random()*(t-e)+e,randomIntegerInRange:(e,t)=>Math.floor(Math.random()*(t-e+1))+e,requestInterval:(e,t)=>{let n=(new Date).getTime(),r={value:0},o=()=>{r.value=requestAnimationFrame(o),(new Date).getTime()-n>=t&&(e(),n=(new Date).getTime())};return r.value=requestAnimationFrame(o),r},sample:e=>e[Math.floor(Math.random()*e.length)],shuffle:([...e])=>{let t=e.length;for(;t;){const n=Math.floor(Math.random()*t--);[e[t],e[n]]=[e[n],e[t]]}return e},sleep:e=>new Promise((t=>setTimeout(t,e))),vw2px:e=>e*Math.min(window.innerWidth,document.documentElement.clientWidth)/100,sum:(...e)=>[...e].reduce(((e,t)=>e+t),0),formatDuration:e=>{e<0&&(e=-e);return{day:Math.floor(e/864e5),hour:Math.floor(e/36e5)%24,minute:Math.floor(e/6e4)%60,second:Math.floor(e/1e3)%60,millisecond:Math.floor(e)%1e3}},getTimeDeltaAsSeconds:(e,t)=>{const n=e instanceof Date?e.getTime():e,r=(t instanceof Date?t.getTime():t)-n;return Math.floor(r)},isPhoneNumber:e=>/^(?:(?:\+|00)86)?1[3-9]\d{9}$/.test(e),isBottomVisible:(e=0)=>window.innerHeight+window.scrollY>=document.body.offsetHeight-e,getURLParameters:e=>(e.match(/([^?=&]+)(=([^&]*))/g)||[]).reduce(((e,t)=>(e[t.slice(0,t.indexOf("="))]=t.slice(t.indexOf("=")+1),e)),{}),average:(...e)=>e.reduce(((e,t)=>e+t),0)/e.length,previewImage:(e,t,n)=>{e.addEventListener("change",(e=>{const r=e.target.files,o=r?r[0]:null;c(o,(e=>{e&&(t.src=e,n(e))}))}))},getScrollPosition:s,getScrollPositionAsVw:(e=null)=>s(e,"vw"),px2vw:l,initialize2DArray:(e,t,n=null)=>Array.from({length:t}).map((()=>Array.from({length:e}).fill(n))),deepClone:t,initializeArrayWithValues:(e,t=0)=>Array(e).fill(t),CSVToArray:(e,t=",",n=!1)=>e.slice(n?e.indexOf("\n")+1:0).split("\n").map((e=>e.split(t))),arrayToCSV:(e,t=",")=>e.map((e=>e.map((e=>isNaN(e)?`"${e.replace(/"/g,'""')}"`:e)).join(t))).join("\n"),JSONToCSV:(e,t,n=",")=>[t.join(n),...e.map((e=>t.reduce(((t,r)=>`${t}${t.length?n:""}"${e[r]?e[r]:""}"`),"")))].join("\n"),CSVToJSON:(e,t=",")=>{const n=e.slice(0,e.indexOf("\n")).split(t);return e.slice(e.indexOf("\n")+1).split("\n").map((e=>{const r=e.split(t);return n.reduce(((e,t,n)=>(e[t]=r[n],e)),{})}))},uniq:e=>[...new Set(e)],omit:(e,t)=>Object.keys(e).filter((e=>!t.includes(e))).reduce(((t,n)=>(t[n]=e[n],t)),{}),pick:(e,t)=>t.reduce(((t,n)=>(n in e&&(t[n]=e[n]),t)),{}),iosInputScrollFix:()=>{"Mobile"===r()&&document.querySelectorAll("input, select, textarea").forEach((e=>{e.addEventListener("blur",(()=>{window.scrollBy(0,-1)}))}))},mapObject:(e,t)=>e.reduce(((n,r,o)=>(n[r]=t(r,o,e),n)),{}),mapKeys:(e,t)=>Object.keys(e).reduce(((n,r)=>(n[t(e[r],r,e)]=e[r],n)),{}),mapValues:(e,t)=>Object.keys(e).reduce(((n,r)=>(n[r]=t(e[r],r,e),n)),{}),isEmpty:e=>null==e||!(Object.keys(e)||e).length,debounce:(e,t=0)=>{let n;return function(...r){clearTimeout(n),n=setTimeout((()=>e.apply(this,r)),t)}},throttle:(e,t)=>{let n,r,o;return function(){const i=this,a=arguments;n?(clearTimeout(r),r=setTimeout((function(){Date.now()-o>=t&&(e.apply(i,a),o=Date.now())}),Math.max(t-(Date.now()-o),0))):(e.apply(i,a),o=Date.now(),n=!0)}},partial:(e,...t)=>(...n)=>e(...t,...n),compose:(...e)=>e.reduce(((e,t)=>(...n)=>e(t(...n)))),curry:e,memorize:e=>{const t=new Map,n=function(n){return(t.has(n)||t.set(n,e.call(this,n)))&&t.get(n)};return n.cache=t,n},attempt:(e,...t)=>{try{return e(...t)}catch(e){return e instanceof Error?e:new Error(e)}},compact:e=>e.filter(Boolean),promisify:e=>(...t)=>new Promise(((n,r)=>e(...t,((e,t)=>e?r(e):n(t))))),distance:(e,t)=>Math.hypot(t.x-e.x,t.y-e.y),zip:(...e)=>{const t=Math.max(...e.map((e=>e.length)));return Array.from({length:t}).map(((t,n)=>Array.from({length:e.length},((t,r)=>e[r][n]))))},range:function*(e,t,n=1){let r=e;for(;r<t;)yield r,r+=n},unzip:e=>e.reduce(((e,t)=>(t.forEach(((t,n)=>e[n].push(t))),e)),Array.from({length:Math.max(...e.map((e=>e.length)))}).map((e=>[]))),union:(e,t)=>Array.from(new Set([...e,...t])),pluck:(e,t)=>e.map((e=>e[t])),mask:(e,t=4,n="*")=>`${e}`.slice(-t).padStart(`${e}`.length,n),intersection:(e,t)=>{const n=new Set(t);return[...new Set(e)].filter((e=>n.has(e)))},animateNumber:(e,t,n,r)=>{let o=null,i=a=>{o=o||a;let l=a-o,s=Math.min(l/r,1);e(t+s*(n-t)),s<1&&window.requestAnimationFrame(i)};window.requestAnimationFrame(i)},detectDeviceType:r,deg2rad:e=>e*Math.PI/180,factorial:a,equals:i,includesAll:(e,t)=>t.every((t=>e.includes(t))),includesAny:(e,t)=>t.some((t=>e.includes(t))),rad2deg:n,randomHexColorCode:()=>"#"+(1048575*Math.random()*1e6).toString(16).slice(0,6),timeTaken:e=>{console.time("timeTaken");const t=e();return console.timeEnd("timeTaken"),t},sumPower:(e,t=2,n=1)=>Array(e+1-n).fill(0).map(((e,r)=>(r+n)**t)).reduce(((e,t)=>e+t),0),reverseString:e=>[...e].reverse().join(""),vh2px:e=>e*Math.min(window.innerHeight,document.documentElement.clientHeight)/100,px2vh:e=>e/window.innerHeight*100,loadImageAsBase64URL:c,sampleSize:([...e],t=1)=>{let n=e.length;for(;n;){const t=Math.floor(Math.random()*n--);[e[n],e[t]]=[e[t],e[n]]}return e.slice(0,t)},fromTimestamp:e=>new Date(1e3*e),getTimestamp:(e=new Date,t=!1)=>{const n=e.getTime()/1e3;return t?Math.floor(n):n},isOdd:e=>e%2==1,isEven:e=>e%2==0,copyToClipboard:e=>{const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t);const n=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);t.select(),document.execCommand("copy"),document.body.removeChild(t),n&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(n))},yesNo:(e,t=!1)=>!!/^(y|yes)$/i.test(e)||!/^(n|no)$/i.test(e)&&t,loadVideoAsBlob:(e,t,n="mp4")=>{const r=new FileReader;r.readAsArrayBuffer(e),r.addEventListener("load",(()=>{const e=r.result,o=new Blob([new Uint8Array(e)],{type:`video/${n}`});t(o)}))},maxN:(e,t=1)=>[...e].sort(((e,t)=>t-e)).slice(0,t),minN:(e,t=1)=>[...e].sort(((e,t)=>e-t)).slice(0,t),padNumber:(e,t)=>`${e}`.padStart(t,"0"),addHoursToDate:(e,t)=>(e.setTime(e.getTime()+60*t*60*1e3),e),addMinutesToDate:(e,t)=>(e.setTime(e.getTime()+60*t*1e3),e),addSecondsToDate:(e,t)=>(e.setTime(e.getTime()+1e3*t),e),chunk:(e,t)=>Array.from({length:Math.ceil(e.length/t)},((n,r)=>e.slice(r*t,r*t+t))),isUrl:e=>/^http(s)?/.test(e),objectMap:(e,t)=>Object.fromEntries(Object.entries(e).map((([e,n],r)=>[e,t(n,e,r)]))),orderBy:(e,t,n)=>[...e].sort(((e,r)=>t.reduce(((t,o,i)=>{if(0===t){const[a,l]=n&&"desc"===n[i]?[r[o],e[o]]:[e[o],r[o]];t=a>l?1:a<l?-1:0}return t}),0))),head:e=>e&&e.length?e[0]:void 0,last:e=>e&&e.length?e[e.length-1]:void 0,objectToQueryString:e=>e?Object.entries(e).reduce(((e,[t,n])=>{const r=0===e.length?"?":"&";return e+="string"==typeof n?`${r}${t}=${n}`:""}),""):"",clamp:(e,t,n)=>Math.max(Math.min(Number(e),Math.max(t,n)),Math.min(t,n)),isElBottomVisible:(e,t=0)=>e.offsetHeight+e.scrollTop>=e.scrollHeight-t,isIdcard:e=>/(^\d{8}(0\d|10|11|12)([0-2]\d|30|31)\d{3}$)|(^\d{6}(18|19|20)\d{2}(0[1-9]|10|11|12)([0-2]\d|30|31)\d{3}(\d|X|x)$)/.test(e),lerp:(e,t,n)=>e+(t-e)*n,maxBy:(e,t)=>Math.max(...e.map("function"==typeof t?t:e=>e[t])),minBy:(e,t)=>Math.min(...e.map("function"==typeof t?t:e=>e[t])),reload:()=>location.reload(),repeatArray:(e,t)=>[].concat(...Array(t).fill(e)),degreesAngle:(e,t)=>n(Math.atan2(t.y-e.y,t.x-e.x)),radiansAngle:(e,t)=>Math.atan2(t.y-e.y,t.x-e.x),addDaysToDate:(e,t)=>(e.setTime(e.getTime()+60*t*60*1e3*24),e),addWeeksToDate:(e,t)=>(e.setTime(e.getTime()+60*t*60*1e3*24*7),e),groupBy:(e,t)=>e.map("function"==typeof t?t:e=>e[t]).reduce(((t,n,r)=>(t[n]=(t[n]||[]).concat(e[r]),t)),{}),chunkMultiSize:(e,t)=>{const n=[];let r=0,o=0;for(;o<e.length;){const i=t[r];n.push(e.slice(o,o+i)),r=(r+1)%t.length,o+=i}return n},disableTouchMove:()=>{document.body.addEventListener("touchmove",o,{passive:!1})},enableTouchMove:()=>{document.body.removeEventListener("touchmove",o)},getNormalizedMousePos:e=>({x:e.clientX/window.innerWidth*2-1,y:-e.clientY/window.innerHeight*2+1}),dataURItoFile:(e,t="1.jpg")=>{let n=e.split(",")[0].split(":")[1].split(";")[0],r=atob(e.split(",")[1]),o=new ArrayBuffer(r.length),i=new Uint8Array(o);for(let e=0;e<r.length;e++)i[e]=r.charCodeAt(e);return new File([i],t,{type:n})},dateRange:function*(e,t,n=1){let r=e;for(;r<t;)yield new Date(r),r.setDate(r.getDate()+n)},frequencies:e=>e.reduce(((e,t)=>(e[t]=e[t]?e[t]+1:1,e)),{}),countOccurrences:(e,t)=>e.reduce(((e,n)=>n===t?e+1:e),0)};return d}));
|
package/dist/CSVToArray.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Converts a CSV string to a 2D array.
|
|
5
3
|
*
|
|
@@ -7,12 +5,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
5
|
* @param {string} [delimiter=',']
|
|
8
6
|
* @param {boolean} [omitFirstRow=false]
|
|
9
7
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
.split("\n")
|
|
16
|
-
.map(function (v) { return v.split(delimiter); });
|
|
17
|
-
};
|
|
18
|
-
exports.default = CSVToArray;
|
|
8
|
+
const CSVToArray = (data, delimiter = ",", omitFirstRow = false) => data
|
|
9
|
+
.slice(omitFirstRow ? data.indexOf("\n") + 1 : 0)
|
|
10
|
+
.split("\n")
|
|
11
|
+
.map((v) => v.split(delimiter));
|
|
12
|
+
export default CSVToArray;
|
package/dist/CSVToJSON.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Converts a CSV string to a 2D array of objects, the first row of the string is used as the title row.
|
|
5
3
|
*
|
|
@@ -7,16 +5,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
5
|
* @param {string} [delimiter=',']
|
|
8
6
|
* @returns
|
|
9
7
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var titles = data.slice(0, data.indexOf("\n")).split(delimiter);
|
|
8
|
+
const CSVToJSON = (data, delimiter = ",") => {
|
|
9
|
+
const titles = data.slice(0, data.indexOf("\n")).split(delimiter);
|
|
13
10
|
return data
|
|
14
11
|
.slice(data.indexOf("\n") + 1)
|
|
15
12
|
.split("\n")
|
|
16
|
-
.map(
|
|
17
|
-
|
|
13
|
+
.map((v) => {
|
|
14
|
+
const values = v.split(delimiter);
|
|
18
15
|
// @ts-ignore
|
|
19
|
-
return titles.reduce(
|
|
16
|
+
return titles.reduce((obj, title, index) => ((obj[title] = values[index]), obj), {});
|
|
20
17
|
});
|
|
21
18
|
};
|
|
22
|
-
|
|
19
|
+
export default CSVToJSON;
|
package/dist/JSONToCSV.js
CHANGED
|
@@ -1,30 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
19
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
20
|
-
if (ar || !(i in from)) {
|
|
21
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
22
|
-
ar[i] = from[i];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
26
|
-
};
|
|
27
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
1
|
/**
|
|
29
2
|
* Converts an array of objects to a CSV string that contains only the `columns` specified.
|
|
30
3
|
*
|
|
@@ -32,14 +5,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
32
5
|
* @param {string[]} columns
|
|
33
6
|
* @param {string} [delimiter=',']
|
|
34
7
|
*/
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
return columns.reduce(function (acc, key) {
|
|
41
|
-
return "".concat(acc).concat(!acc.length ? "" : delimiter, "\"").concat(!obj[key] ? "" : obj[key], "\"");
|
|
42
|
-
}, "");
|
|
43
|
-
})), false).join("\n");
|
|
44
|
-
};
|
|
45
|
-
exports.default = JSONtoCSV;
|
|
8
|
+
const JSONtoCSV = (arr, columns, delimiter = ",") => [
|
|
9
|
+
columns.join(delimiter),
|
|
10
|
+
...arr.map((obj) => columns.reduce((acc, key) => `${acc}${!acc.length ? "" : delimiter}"${!obj[key] ? "" : obj[key]}"`, "")),
|
|
11
|
+
].join("\n");
|
|
12
|
+
export default JSONtoCSV;
|
package/dist/addDaysToDate.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Calculates the date of n days from the given date.
|
|
5
3
|
* @param d
|
|
6
4
|
* @param n
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
7
|
+
const addDaysToDate = (d, n) => {
|
|
10
8
|
d.setTime(d.getTime() + n * 60 * 60 * 1000 * 24);
|
|
11
9
|
return d;
|
|
12
10
|
};
|
|
13
|
-
|
|
11
|
+
export default addDaysToDate;
|
package/dist/addHoursToDate.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Calculates the date of n hours from the given date.
|
|
5
3
|
* @param d
|
|
6
4
|
* @param n
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
7
|
+
const addHoursToDate = (d, n) => {
|
|
10
8
|
d.setTime(d.getTime() + n * 60 * 60 * 1000);
|
|
11
9
|
return d;
|
|
12
10
|
};
|
|
13
|
-
|
|
11
|
+
export default addHoursToDate;
|
package/dist/addMinutesToDate.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Calculates the date of n minutes from the given date.
|
|
5
3
|
* @param d
|
|
6
4
|
* @param n
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
7
|
+
const addMinutesToDate = (d, n) => {
|
|
10
8
|
d.setTime(d.getTime() + n * 60 * 1000);
|
|
11
9
|
return d;
|
|
12
10
|
};
|
|
13
|
-
|
|
11
|
+
export default addMinutesToDate;
|
package/dist/addSecondsToDate.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Calculates the date of n seconds from the given date.
|
|
5
3
|
* @param d
|
|
6
4
|
* @param n
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
7
|
+
const addSecondsToDate = (d, n) => {
|
|
10
8
|
d.setTime(d.getTime() + n * 1000);
|
|
11
9
|
return d;
|
|
12
10
|
};
|
|
13
|
-
|
|
11
|
+
export default addSecondsToDate;
|
package/dist/addWeeksToDate.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Calculates the date of n weeks from the given date.
|
|
5
3
|
* @param d
|
|
6
4
|
* @param n
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
7
|
+
const addWeeksToDate = (d, n) => {
|
|
10
8
|
d.setTime(d.getTime() + n * 60 * 60 * 1000 * 24 * 7);
|
|
11
9
|
return d;
|
|
12
10
|
};
|
|
13
|
-
|
|
11
|
+
export default addWeeksToDate;
|
package/dist/animateNumber.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Animate a number.
|
|
5
3
|
* @param cb
|
|
@@ -7,13 +5,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
5
|
* @param to
|
|
8
6
|
* @param duration
|
|
9
7
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
const animateNumber = (cb, from, to, duration) => {
|
|
9
|
+
let start = null;
|
|
10
|
+
let animate = (timestamp) => {
|
|
13
11
|
start = start || timestamp;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
let elapsed = timestamp - start;
|
|
13
|
+
let progress = Math.min(elapsed / duration, 1);
|
|
14
|
+
let value = from + progress * (to - from);
|
|
17
15
|
cb(value);
|
|
18
16
|
if (progress < 1) {
|
|
19
17
|
window.requestAnimationFrame(animate);
|
|
@@ -21,4 +19,4 @@ var animateNumber = function (cb, from, to, duration) {
|
|
|
21
19
|
};
|
|
22
20
|
window.requestAnimationFrame(animate);
|
|
23
21
|
};
|
|
24
|
-
|
|
22
|
+
export default animateNumber;
|
package/dist/arrayToCSV.js
CHANGED
|
@@ -1,19 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Converts an array to an CSV string.
|
|
5
3
|
*
|
|
6
4
|
* @param {any[]} arr
|
|
7
5
|
* @param {string} [delimiter=',']
|
|
8
6
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
.join(delimiter);
|
|
16
|
-
})
|
|
17
|
-
.join("\n");
|
|
18
|
-
};
|
|
19
|
-
exports.default = arrayToCSV;
|
|
7
|
+
const arrayToCSV = (arr, delimiter = ",") => arr
|
|
8
|
+
.map((v) => v
|
|
9
|
+
.map((x) => (isNaN(x) ? `"${x.replace(/"/g, '""')}"` : x))
|
|
10
|
+
.join(delimiter))
|
|
11
|
+
.join("\n");
|
|
12
|
+
export default arrayToCSV;
|
package/dist/attempt.js
CHANGED
|
@@ -1,45 +1,14 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
19
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
20
|
-
if (ar || !(i in from)) {
|
|
21
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
22
|
-
ar[i] = from[i];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
26
|
-
};
|
|
27
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
1
|
/**
|
|
29
2
|
* Attempts to invoke a function with the provided arguments, returning either the result or the caught error object.
|
|
30
3
|
* @param fn
|
|
31
4
|
* @param args
|
|
32
5
|
*/
|
|
33
|
-
|
|
34
|
-
var args = [];
|
|
35
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
36
|
-
args[_i - 1] = arguments[_i];
|
|
37
|
-
}
|
|
6
|
+
const attempt = (fn, ...args) => {
|
|
38
7
|
try {
|
|
39
|
-
return fn
|
|
8
|
+
return fn(...args);
|
|
40
9
|
}
|
|
41
10
|
catch (e) {
|
|
42
11
|
return e instanceof Error ? e : new Error(e);
|
|
43
12
|
}
|
|
44
13
|
};
|
|
45
|
-
|
|
14
|
+
export default attempt;
|
package/dist/average.js
CHANGED
|
@@ -1,16 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Return the average of the number array.
|
|
5
3
|
*
|
|
6
4
|
* @param {...number[]} nums
|
|
7
5
|
* @returns {number}
|
|
8
6
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
12
|
-
nums[_i] = arguments[_i];
|
|
13
|
-
}
|
|
14
|
-
return nums.reduce(function (acc, val) { return acc + val; }, 0) / nums.length;
|
|
15
|
-
};
|
|
16
|
-
exports.default = average;
|
|
7
|
+
const average = (...nums) => nums.reduce((acc, val) => acc + val, 0) / nums.length;
|
|
8
|
+
export default average;
|
package/dist/chunk.js
CHANGED
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Chunks an array into smaller arrays of a specified size.
|
|
5
3
|
* @param arr
|
|
6
4
|
* @param size
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return arr.slice(i * size, i * size + size);
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
exports.default = chunk;
|
|
7
|
+
const chunk = (arr, size) => Array.from({ length: Math.ceil(arr.length / size) }, (v, i) => arr.slice(i * size, i * size + size));
|
|
8
|
+
export default chunk;
|
package/dist/chunkMultiSize.js
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Chunks an array into smaller arrays of multiple specified sizes.
|
|
5
3
|
* @param arr
|
|
6
4
|
* @param chunkSizes
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
const chunkMultiSize = (arr, chunkSizes) => {
|
|
8
|
+
const chunkArray = [];
|
|
9
|
+
let cc = 0, i = 0;
|
|
12
10
|
while (i < arr.length) {
|
|
13
|
-
|
|
11
|
+
const csize = chunkSizes[cc];
|
|
14
12
|
chunkArray.push(arr.slice(i, i + csize));
|
|
15
13
|
cc = (cc + 1) % chunkSizes.length;
|
|
16
14
|
i += csize;
|
|
17
15
|
}
|
|
18
16
|
return chunkArray;
|
|
19
17
|
};
|
|
20
|
-
|
|
18
|
+
export default chunkMultiSize;
|
package/dist/clamp.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Clamps `num` within the inclusive range specified by the boundary values `lower` and `upper`.
|
|
5
3
|
* @param num
|
|
@@ -7,7 +5,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
5
|
* @param upper
|
|
8
6
|
* @returns
|
|
9
7
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
13
|
-
exports.default = clamp;
|
|
8
|
+
const clamp = (num, lower, upper) => Math.max(Math.min(Number(num), Math.max(lower, upper)), Math.min(lower, upper));
|
|
9
|
+
export default clamp;
|
package/dist/compact.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Removes falsy values from an array.
|
|
5
3
|
* @param arr
|
|
6
4
|
*/
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
const compact = (arr) => arr.filter(Boolean);
|
|
6
|
+
export default compact;
|
package/dist/compose.js
CHANGED
|
@@ -1,47 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
19
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
20
|
-
if (ar || !(i in from)) {
|
|
21
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
22
|
-
ar[i] = from[i];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
26
|
-
};
|
|
27
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
1
|
/**
|
|
29
2
|
* Performs right-to-left function composition.
|
|
30
3
|
* @param fns
|
|
31
4
|
*/
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
35
|
-
fns[_i] = arguments[_i];
|
|
36
|
-
}
|
|
37
|
-
return fns.reduce(function (f, g) {
|
|
38
|
-
return function () {
|
|
39
|
-
var args = [];
|
|
40
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
41
|
-
args[_i] = arguments[_i];
|
|
42
|
-
}
|
|
43
|
-
return f(g.apply(void 0, __spreadArray([], __read(args), false)));
|
|
44
|
-
};
|
|
45
|
-
});
|
|
46
|
-
};
|
|
47
|
-
exports.default = compose;
|
|
5
|
+
const compose = (...fns) => fns.reduce((f, g) => (...args) => f(g(...args)));
|
|
6
|
+
export default compose;
|
package/dist/copyToClipboard.js
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Copies a string to the clipboard.
|
|
5
3
|
* @param str
|
|
6
4
|
*/
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
const copyToClipboard = (str) => {
|
|
6
|
+
const el = document.createElement("textarea");
|
|
9
7
|
el.value = str;
|
|
10
8
|
el.setAttribute("readonly", "");
|
|
11
9
|
el.style.position = "absolute";
|
|
12
10
|
el.style.left = "-9999px";
|
|
13
11
|
document.body.appendChild(el);
|
|
14
|
-
|
|
12
|
+
const selected = document.getSelection().rangeCount > 0
|
|
15
13
|
? document.getSelection().getRangeAt(0)
|
|
16
14
|
: false;
|
|
17
15
|
el.select();
|
|
@@ -22,4 +20,4 @@ var copyToClipboard = function (str) {
|
|
|
22
20
|
document.getSelection().addRange(selected);
|
|
23
21
|
}
|
|
24
22
|
};
|
|
25
|
-
|
|
23
|
+
export default copyToClipboard;
|
package/dist/countOccurrences.js
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Counts the occurrences of a value in an array.
|
|
5
3
|
* @param arr
|
|
6
4
|
* @param val
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
};
|
|
12
|
-
exports.default = countOccurrences;
|
|
7
|
+
const countOccurrences = (arr, val) => arr.reduce((a, v) => (v === val ? a + 1 : a), 0);
|
|
8
|
+
export default countOccurrences;
|
package/dist/curry.js
CHANGED
|
@@ -1,42 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
19
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
20
|
-
if (ar || !(i in from)) {
|
|
21
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
22
|
-
ar[i] = from[i];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
26
|
-
};
|
|
27
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
1
|
/**
|
|
29
2
|
* Curries a function.
|
|
30
3
|
* @param fn
|
|
31
4
|
* @param arity
|
|
32
5
|
* @param args
|
|
33
6
|
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
var args = [];
|
|
37
|
-
for (var _i = 2; _i < arguments.length; _i++) {
|
|
38
|
-
args[_i - 2] = arguments[_i];
|
|
39
|
-
}
|
|
40
|
-
return arity <= args.length ? fn.apply(void 0, __spreadArray([], __read(args), false)) : curry.bind.apply(curry, __spreadArray([null, fn, arity], __read(args), false));
|
|
41
|
-
};
|
|
42
|
-
exports.default = curry;
|
|
7
|
+
const curry = (fn, arity = fn.length, ...args) => arity <= args.length ? fn(...args) : curry.bind(null, fn, arity, ...args);
|
|
8
|
+
export default curry;
|
package/dist/dataURItoFile.js
CHANGED
|
@@ -1,20 +1,17 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
/**
|
|
4
2
|
* Convert base64 dataURI to File object.
|
|
5
3
|
* @param dataURI
|
|
6
4
|
* @param filename
|
|
7
5
|
* @returns
|
|
8
6
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
for (var i = 0; i < byteString.length; i++) {
|
|
7
|
+
const dataURItoFile = (dataURI, filename = "1.jpg") => {
|
|
8
|
+
let mimeString = dataURI.split(",")[0].split(":")[1].split(";")[0]; // mime类型
|
|
9
|
+
let byteString = atob(dataURI.split(",")[1]); //base64 解码
|
|
10
|
+
let arrayBuffer = new ArrayBuffer(byteString.length); //创建缓冲数组
|
|
11
|
+
let intArray = new Uint8Array(arrayBuffer); //创建视图
|
|
12
|
+
for (let i = 0; i < byteString.length; i++) {
|
|
16
13
|
intArray[i] = byteString.charCodeAt(i);
|
|
17
14
|
}
|
|
18
15
|
return new File([intArray], filename, { type: mimeString });
|
|
19
16
|
};
|
|
20
|
-
|
|
17
|
+
export default dataURItoFile;
|
package/dist/dateRange.js
CHANGED
|
@@ -1,55 +1,14 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
3
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
4
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
5
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
6
|
-
function step(op) {
|
|
7
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
8
|
-
while (_) try {
|
|
9
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
10
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
11
|
-
switch (op[0]) {
|
|
12
|
-
case 0: case 1: t = op; break;
|
|
13
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
14
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
15
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
16
|
-
default:
|
|
17
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
18
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
19
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
20
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
21
|
-
if (t[2]) _.ops.pop();
|
|
22
|
-
_.trys.pop(); continue;
|
|
23
|
-
}
|
|
24
|
-
op = body.call(thisArg, _);
|
|
25
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
26
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
1
|
/**
|
|
31
2
|
* Creates a generator, that generates all dates in the given range using the given step.
|
|
32
3
|
* @param start
|
|
33
4
|
* @param end
|
|
34
5
|
* @param step
|
|
35
6
|
*/
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
d = start;
|
|
43
|
-
_a.label = 1;
|
|
44
|
-
case 1:
|
|
45
|
-
if (!(d < end)) return [3 /*break*/, 3];
|
|
46
|
-
return [4 /*yield*/, new Date(d)];
|
|
47
|
-
case 2:
|
|
48
|
-
_a.sent();
|
|
49
|
-
d.setDate(d.getDate() + step);
|
|
50
|
-
return [3 /*break*/, 1];
|
|
51
|
-
case 3: return [2 /*return*/];
|
|
52
|
-
}
|
|
53
|
-
});
|
|
7
|
+
const dateRange = function* (start, end, step = 1) {
|
|
8
|
+
let d = start;
|
|
9
|
+
while (d < end) {
|
|
10
|
+
yield new Date(d);
|
|
11
|
+
d.setDate(d.getDate() + step);
|
|
12
|
+
}
|
|
54
13
|
};
|
|
55
|
-
|
|
14
|
+
export default dateRange;
|