0dffc127453a8be2bdea0fa34168a5fa335b84f1815d3db1322a50e147880d38.json 1.2 KB

1
  1. {"ast":null,"code":"/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the view, applying any `transforms` to the `start` and `end` positions.\n *\n * @private\n * @param {number} start The start of the view.\n * @param {number} end The end of the view.\n * @param {Array} transforms The transformations to apply to the view.\n * @returns {Object} Returns an object containing the `start` and `end`\n * positions of the view.\n */\nfunction getView(start, end, transforms) {\n var index = -1,\n length = transforms.length;\n while (++index < length) {\n var data = transforms[index],\n size = data.size;\n switch (data.type) {\n case 'drop':\n start += size;\n break;\n case 'dropRight':\n end -= size;\n break;\n case 'take':\n end = nativeMin(end, start + size);\n break;\n case 'takeRight':\n start = nativeMax(start, end - size);\n break;\n }\n }\n return {\n 'start': start,\n 'end': end\n };\n}\nexport default getView;","map":null,"metadata":{},"sourceType":"module","externalDependencies":[]}