This commit is contained in:
43
node_modules/micromark/lib/util/slice-chunks.js
generated
vendored
Normal file
43
node_modules/micromark/lib/util/slice-chunks.js
generated
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
'use strict'
|
||||
|
||||
var assert = require('assert')
|
||||
|
||||
function _interopDefaultLegacy(e) {
|
||||
return e && typeof e === 'object' && 'default' in e ? e : {default: e}
|
||||
}
|
||||
|
||||
var assert__default = /*#__PURE__*/ _interopDefaultLegacy(assert)
|
||||
|
||||
function sliceChunks(chunks, token) {
|
||||
var startIndex = token.start._index
|
||||
var startBufferIndex = token.start._bufferIndex
|
||||
var endIndex = token.end._index
|
||||
var endBufferIndex = token.end._bufferIndex
|
||||
var view
|
||||
|
||||
if (startIndex === endIndex) {
|
||||
assert__default['default'](
|
||||
endBufferIndex > -1,
|
||||
'expected non-negative end buffer index'
|
||||
)
|
||||
assert__default['default'](
|
||||
startBufferIndex > -1,
|
||||
'expected non-negative start buffer index'
|
||||
)
|
||||
view = [chunks[startIndex].slice(startBufferIndex, endBufferIndex)]
|
||||
} else {
|
||||
view = chunks.slice(startIndex, endIndex)
|
||||
|
||||
if (startBufferIndex > -1) {
|
||||
view[0] = view[0].slice(startBufferIndex)
|
||||
}
|
||||
|
||||
if (endBufferIndex > 0) {
|
||||
view.push(chunks[endIndex].slice(0, endBufferIndex))
|
||||
}
|
||||
}
|
||||
|
||||
return view
|
||||
}
|
||||
|
||||
module.exports = sliceChunks
|
||||
Reference in New Issue
Block a user