Surge_by_SukkaW/Dist/Build/lib/append-array-in-place.cjs
SukkaW d354c5e988
Some checks are pending
Build / Build (push) Waiting to run
Build / Diff output (push) Blocked by required conditions
Build / Deploy to Cloudflare Pages (push) Blocked by required conditions
Build / Deploy to GitHub and GitLab (push) Blocked by required conditions
Chore: maintainance
2025-02-07 17:52:36 +08:00

46 lines
1.8 KiB
JavaScript

'use strict';Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});const appendArrayInPlace=require('../../_virtual/append-array-in-place.cjs');var hasRequiredAppendArrayInPlace;
function requireAppendArrayInPlace () {
if (hasRequiredAppendArrayInPlace) return appendArrayInPlace.__exports;
hasRequiredAppendArrayInPlace = 1;
(function (exports) {
Object.defineProperty(exports, "__esModule", {
value: true
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
appendArrayInPlace: function() {
return appendArrayInPlace;
},
appendArrayInPlaceCurried: function() {
return appendArrayInPlaceCurried;
}
});
const MAX_BLOCK_SIZE = 65535; // max parameter array size for use in Webkit
function appendArrayInPlace(dest, source) {
let offset = 0;
let itemsLeft = source.length;
if (itemsLeft <= MAX_BLOCK_SIZE) {
// eslint-disable-next-line prefer-spread -- performance
dest.push.apply(dest, source);
} else {
while(itemsLeft > 0){
const pushCount = itemsLeft > MAX_BLOCK_SIZE ? MAX_BLOCK_SIZE : itemsLeft;
const subSource = source.slice(offset, offset + pushCount);
// eslint-disable-next-line prefer-spread -- performance
dest.push.apply(dest, subSource);
itemsLeft -= pushCount;
offset += pushCount;
}
}
return dest;
}
const appendArrayInPlaceCurried = (dest)=>(source)=>appendArrayInPlace(dest, source);
} (appendArrayInPlace.__exports));
return appendArrayInPlace.__exports;
}exports.__require=requireAppendArrayInPlace;