@teselagen/range-utils 0.3.20-beta.1 → 0.3.20

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.
Files changed (163) hide show
  1. package/adjustRangeToDeletionOfAnotherRange.d.ts +1 -2
  2. package/adjustRangeToDeletionOfAnotherRange.test.d.ts +1 -0
  3. package/adjustRangeToInsert.d.ts +1 -2
  4. package/adjustRangeToInsert.test.d.ts +1 -0
  5. package/adjustRangeToRotation.d.ts +1 -2
  6. package/adjustRangeToRotation.test.d.ts +1 -0
  7. package/checkIfNonCircularRangesOverlap.d.ts +1 -2
  8. package/checkIfNonCircularRangesOverlap.test.d.ts +1 -0
  9. package/checkIfPotentiallyCircularRangesOverlap.d.ts +1 -2
  10. package/checkIfPotentiallyCircularRangesOverlap.test.d.ts +1 -0
  11. package/collapseOverlapsGeneratedFromRangeComparisonIfPossible.d.ts +1 -2
  12. package/collapseOverlapsGeneratedFromRangeComparisonIfPossible.test.d.ts +1 -0
  13. package/convertRangeIndices.d.ts +1 -10
  14. package/convertRangeIndices.test.d.ts +1 -0
  15. package/convertRangeTo0Based.d.ts +1 -5
  16. package/convertRangeTo1Based.d.ts +1 -5
  17. package/doesRangeSpanEntireSequence.d.ts +1 -2
  18. package/doesRangeSpanOrigin.d.ts +1 -2
  19. package/expandOrContractCircularRangeToPosition.d.ts +2 -3
  20. package/expandOrContractNonCircularRangeToPosition.d.ts +2 -3
  21. package/expandOrContractRangeByLength.d.ts +1 -5
  22. package/expandOrContractRangeByLength.test.d.ts +1 -0
  23. package/expandOrContractRangeToPosition.d.ts +2 -3
  24. package/flipContainedRange.d.ts +1 -5
  25. package/flipContainedRange.test.d.ts +1 -0
  26. package/generateRandomRange.d.ts +3 -3
  27. package/generateRandomRange.test.d.ts +1 -0
  28. package/getAnnotationRangeType.d.ts +1 -2
  29. package/getAnnotationRangeType.test.d.ts +1 -0
  30. package/getEachPositionInRangeAsArray.d.ts +1 -2
  31. package/getEachPositionInRangeAsArray.test.d.ts +1 -0
  32. package/getLengthOfOverlappingRegionsBetweenTwoRanges.d.ts +1 -2
  33. package/getLengthOfOverlappingRegionsBetweenTwoRanges.test.d.ts +1 -0
  34. package/getMiddleOfRange.d.ts +1 -2
  35. package/getMiddleOfRange.test.d.ts +1 -0
  36. package/getOverlapOfNonCircularRanges.d.ts +4 -5
  37. package/getOverlapsOfPotentiallyCircularRanges.d.ts +1 -2
  38. package/getOverlapsOfPotentiallyCircularRanges.test.d.ts +1 -0
  39. package/getPositionFromAngle.d.ts +1 -1
  40. package/getRangeAngles.d.ts +7 -3
  41. package/getRangeAngles.test.d.ts +1 -0
  42. package/getRangeLength.d.ts +1 -5
  43. package/getRangeLength.test.d.ts +1 -0
  44. package/getRangesBetweenTwoRanges.d.ts +1 -2
  45. package/getSequenceWithinRange.d.ts +1 -3
  46. package/getSequenceWithinRange.test.d.ts +1 -0
  47. package/getShortestDistanceBetweenTwoPositions.d.ts +1 -1
  48. package/getShortestDistanceBetweenTwoPositions.test.d.ts +1 -0
  49. package/getYOffsetForPotentiallyCircularRange.d.ts +1 -2
  50. package/getYOffsetsForPotentiallyCircularRanges.d.ts +2 -3
  51. package/getYOffsetsForPotentiallyCircularRanges.test.d.ts +1 -0
  52. package/getZeroedRangeOverlaps.d.ts +1 -2
  53. package/getZeroedRangeOverlaps.test.d.ts +1 -0
  54. package/index.cjs +45 -58
  55. package/index.d.ts +0 -1
  56. package/index.js +45 -58
  57. package/index.test.d.ts +1 -0
  58. package/index.umd.cjs +45 -58
  59. package/invertRange.d.ts +1 -5
  60. package/invertRange.test.d.ts +1 -0
  61. package/isPositionCloserToRangeStartThanRangeEnd.d.ts +1 -2
  62. package/isPositionCloserToRangeStartThanRangeEnd.test.d.ts +1 -0
  63. package/isPositionWithinRange.d.ts +2 -3
  64. package/isRangeOrPositionWithinRange.d.ts +1 -2
  65. package/isRangeOrPositionWithinRange.test.d.ts +1 -0
  66. package/isRangeWithinRange.d.ts +1 -2
  67. package/loopEachPositionInRange.d.ts +1 -2
  68. package/modulatePositionByRange.d.ts +1 -2
  69. package/modulatePositionByRange.test.d.ts +1 -0
  70. package/modulateRangeBySequenceLength.d.ts +1 -8
  71. package/modulateRangeBySequenceLength.test.d.ts +1 -0
  72. package/normalizePositionByRangeLength.d.ts +1 -1
  73. package/normalizePositionByRangeLength.test.d.ts +1 -0
  74. package/normalizePositionByRangeLength1Based.d.ts +1 -1
  75. package/normalizePositionByRangeLength1Based.test.d.ts +1 -0
  76. package/normalizeRange.d.ts +1 -5
  77. package/normalizeRange.test.d.ts +1 -0
  78. package/package.json +2 -10
  79. package/provideInclusiveOptions.d.ts +1 -6
  80. package/reversePositionInRange.d.ts +1 -1
  81. package/splitRangeIntoTwoPartsIfItIsCircular.d.ts +3 -4
  82. package/splitRangeIntoTwoPartsIfItIsCircular.test.d.ts +1 -0
  83. package/src/{adjustRangeToDeletionOfAnotherRange.ts → adjustRangeToDeletionOfAnotherRange.js} +7 -4
  84. package/src/{adjustRangeToInsert.ts → adjustRangeToInsert.js} +4 -4
  85. package/src/adjustRangeToRotation.js +23 -0
  86. package/src/{checkIfNonCircularRangesOverlap.ts → checkIfNonCircularRangesOverlap.js} +4 -5
  87. package/src/{checkIfPotentiallyCircularRangesOverlap.ts → checkIfPotentiallyCircularRangesOverlap.js} +4 -4
  88. package/src/{collapseOverlapsGeneratedFromRangeComparisonIfPossible.ts → collapseOverlapsGeneratedFromRangeComparisonIfPossible.js} +4 -7
  89. package/src/{convertRangeIndices.ts → convertRangeIndices.js} +3 -11
  90. package/src/{convertRangeTo0Based.ts → convertRangeTo0Based.js} +1 -2
  91. package/src/{convertRangeTo1Based.ts → convertRangeTo1Based.js} +1 -2
  92. package/src/doesRangeSpanEntireSequence.js +7 -0
  93. package/src/doesRangeSpanOrigin.js +3 -0
  94. package/src/{expandOrContractCircularRangeToPosition.ts → expandOrContractCircularRangeToPosition.js} +3 -5
  95. package/src/{expandOrContractNonCircularRangeToPosition.ts → expandOrContractNonCircularRangeToPosition.js} +2 -4
  96. package/src/{expandOrContractRangeByLength.ts → expandOrContractRangeByLength.js} +4 -5
  97. package/src/{expandOrContractRangeToPosition.ts → expandOrContractRangeToPosition.js} +8 -6
  98. package/src/{flipContainedRange.ts → flipContainedRange.js} +8 -18
  99. package/src/{generateRandomRange.ts → generateRandomRange.js} +2 -6
  100. package/src/{getAnnotationRangeType.ts → getAnnotationRangeType.js} +3 -5
  101. package/src/{getEachPositionInRangeAsArray.ts → getEachPositionInRangeAsArray.js} +2 -6
  102. package/src/{getLengthOfOverlappingRegionsBetweenTwoRanges.ts → getLengthOfOverlappingRegionsBetweenTwoRanges.js} +3 -4
  103. package/src/{getMiddleOfRange.ts → getMiddleOfRange.js} +1 -2
  104. package/src/{getOverlapOfNonCircularRanges.ts → getOverlapOfNonCircularRanges.js} +1 -7
  105. package/src/{getOverlapsOfPotentiallyCircularRanges.ts → getOverlapsOfPotentiallyCircularRanges.js} +7 -13
  106. package/src/{getPositionFromAngle.ts → getPositionFromAngle.js} +3 -3
  107. package/src/{getRangeAngles.ts → getRangeAngles.js} +3 -8
  108. package/src/{getRangeLength.ts → getRangeLength.js} +1 -4
  109. package/src/{getRangesBetweenTwoRanges.ts → getRangesBetweenTwoRanges.js} +2 -7
  110. package/src/getSequenceWithinRange.js +17 -0
  111. package/src/{getShortestDistanceBetweenTwoPositions.ts → getShortestDistanceBetweenTwoPositions.js} +3 -3
  112. package/src/{getYOffsetForPotentiallyCircularRange.ts → getYOffsetForPotentiallyCircularRange.js} +4 -5
  113. package/src/{getYOffsetsForPotentiallyCircularRanges.ts → getYOffsetsForPotentiallyCircularRanges.js} +4 -5
  114. package/src/getYOffsetsForPotentiallyCircularRanges.test.js +42 -0
  115. package/src/{getZeroedRangeOverlaps.ts → getZeroedRangeOverlaps.js} +3 -4
  116. package/src/{getZeroedRangeOverlaps.test.ts → getZeroedRangeOverlaps.test.js} +15 -5
  117. package/src/{index.ts → index.js} +0 -1
  118. package/src/{index.test.ts → index.test.js} +3 -11
  119. package/src/invertRange.js +21 -0
  120. package/src/{isPositionCloserToRangeStartThanRangeEnd.ts → isPositionCloserToRangeStartThanRangeEnd.js} +3 -5
  121. package/src/{isPositionWithinRange.ts → isPositionWithinRange.js} +5 -14
  122. package/src/{isRangeOrPositionWithinRange.ts → isRangeOrPositionWithinRange.js} +6 -11
  123. package/src/{isRangeWithinRange.ts → isRangeWithinRange.js} +3 -5
  124. package/src/loopEachPositionInRange.js +5 -0
  125. package/src/{modulatePositionByRange.ts → modulatePositionByRange.js} +1 -6
  126. package/src/{modulateRangeBySequenceLength.ts → modulateRangeBySequenceLength.js} +1 -3
  127. package/src/{normalizePositionByRangeLength.ts → normalizePositionByRangeLength.js} +7 -7
  128. package/src/{normalizePositionByRangeLength1Based.ts → normalizePositionByRangeLength1Based.js} +2 -3
  129. package/src/{normalizeRange.ts → normalizeRange.js} +1 -2
  130. package/src/provideInclusiveOptions.js +39 -0
  131. package/src/{reversePositionInRange.ts → reversePositionInRange.js} +4 -4
  132. package/src/{splitRangeIntoTwoPartsIfItIsCircular.ts → splitRangeIntoTwoPartsIfItIsCircular.js} +4 -5
  133. package/src/{translateRange.ts → translateRange.js} +3 -5
  134. package/src/{trimAnnStartEndToFitSeqLength.ts → trimAnnStartEndToFitSeqLength.js} +2 -2
  135. package/src/{trimNonCicularRangeByAnotherNonCircularRange.ts → trimNonCicularRangeByAnotherNonCircularRange.js} +4 -6
  136. package/src/{trimNumberToFitWithin0ToAnotherNumber.ts → trimNumberToFitWithin0ToAnotherNumber.js} +4 -3
  137. package/src/{trimRangeByAnotherRange.ts → trimRangeByAnotherRange.js} +9 -9
  138. package/src/{zeroSubrangeByContainerRange.ts → zeroSubrangeByContainerRange.js} +8 -10
  139. package/translateRange.d.ts +1 -5
  140. package/translateRange.test.d.ts +1 -0
  141. package/trimAnnStartEndToFitSeqLength.d.ts +1 -1
  142. package/trimAnnStartEndToFitSeqLength.test.d.ts +1 -0
  143. package/trimNonCicularRangeByAnotherNonCircularRange.d.ts +4 -2
  144. package/trimNumberToFitWithin0ToAnotherNumber.d.ts +1 -1
  145. package/trimRangeByAnotherRange.d.ts +1 -2
  146. package/trimRangeByAnotherRange.test.d.ts +1 -0
  147. package/zeroSubrangeByContainerRange.d.ts +1 -2
  148. package/zeroSubrangeByContainerRange.test.d.ts +1 -0
  149. package/RangeAngles.d.ts +0 -7
  150. package/src/RangeAngles.ts +0 -9
  151. package/src/adjustRangeToRotation.ts +0 -22
  152. package/src/doesRangeSpanEntireSequence.ts +0 -12
  153. package/src/doesRangeSpanOrigin.ts +0 -5
  154. package/src/getSequenceWithinRange.ts +0 -33
  155. package/src/getYOffsetsForPotentiallyCircularRanges.test.ts +0 -17
  156. package/src/invertRange.ts +0 -25
  157. package/src/loopEachPositionInRange.ts +0 -11
  158. package/src/provideInclusiveOptions.ts +0 -79
  159. package/src/types.ts +0 -12
  160. package/types.d.ts +0 -12
  161. /package/src/{getRangeLength.test.ts → getRangeLength.test.js} +0 -0
  162. /package/src/{getSequenceWithinRange.test.ts → getSequenceWithinRange.test.js} +0 -0
  163. /package/src/{getShortestDistanceBetweenTwoPositions.test.ts → getShortestDistanceBetweenTwoPositions.test.js} +0 -0
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function adjustRangeToDeletionOfAnotherRange(rangeToBeAdjusted: Range, anotherRange: Range, maxLength: number): Range | null;
1
+ export default function adjustRangeToDeletionOfAnotherRange(rangeToBeAdjusted: any, anotherRange: any, maxLength: any): object | null;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function adjustRangeToInsert(rangeToBeAdjusted: Range, insertStart: number, insertLength: number): Range;
1
+ export default function adjustRangeToInsert(rangeToBeAdjusted: any, insertStart: any, insertLength: any): any;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function adjustRangeToRotation<T extends Range>(rangeToBeAdjusted: T, rotateTo?: number, rangeLength?: number): T;
1
+ export default function adjustRangeToRotation(rangeToBeAdjusted: any, rotateTo: number | undefined, rangeLength: any): any;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function checkIfNonCircularRangesOverlap(range: Range, comparisonRange: Range): boolean;
1
+ export default function checkIfNonCircularRangesOverlap(range: any, comparisonRange: any): boolean;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function checkIfPotentiallyCircularRangesOverlap(range: Range, comparisonRange: Range): boolean;
1
+ export default function checkIfPotentiallyCircularRangesOverlap(range: any, comparisonRange: any): boolean;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function collapseOverlapsGeneratedFromRangeComparisonIfPossible(overlaps: Range[], sequenceLength: number, optionalOriginalRange?: Range): Range[];
1
+ export default function collapseOverlapsGeneratedFromRangeComparisonIfPossible(overlaps: any, sequenceLength: any, optionalOriginalRange: any): any;
@@ -1,10 +1 @@
1
- import { Range } from './types';
2
- interface RangeIndicesOptions {
3
- inclusive1BasedStart?: boolean;
4
- inclusive1BasedEnd?: boolean;
5
- }
6
- export default function convertRangeIndices(range: Range, inputType?: RangeIndicesOptions, outputType?: RangeIndicesOptions): Range & {
7
- start: number;
8
- end: number;
9
- };
10
- export {};
1
+ export default function convertRangeIndices(range: any, inputType: any, outputType: any): any;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1 @@
1
- import { Range } from './types';
2
- export default function convertRangeTo0Based(range: Range): Range & {
3
- start: number;
4
- end: number;
5
- };
1
+ export default function convertRangeTo0Based(range: any): any;
@@ -1,5 +1 @@
1
- import { Range } from './types';
2
- export default function convertRangeTo1Based(range: Range): Range & {
3
- start: number;
4
- end: number;
5
- };
1
+ export default function convertRangeTo1Based(range: any): any;
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function doesRangeSpanEntireSequence(range: Range, sequenceLength: number): boolean;
1
+ export default function doesRangeSpanEntireSequence(range: any, sequenceLength: any): true | undefined;
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function doesRangeSpanOrigin(range: Range): boolean;
1
+ export default function doesRangeSpanOrigin(range: any): boolean;
@@ -1,5 +1,4 @@
1
- import { Range } from './types';
2
- export default function expandOrContractCircularRangeToPosition(range: Range, position: number, maxLength: number): {
3
- newRange: Range;
1
+ export default function expandOrContractCircularRangeToPosition(range: any, position: any, maxLength: any): {
2
+ newRange: any;
4
3
  endMoved: boolean;
5
4
  };
@@ -1,5 +1,4 @@
1
- import { Range } from './types';
2
- export default function expandOrContractNonCircularRangeToPosition(range: Range, position: number): {
3
- newRange: Range;
1
+ export default function expandOrContractNonCircularRangeToPosition(range: any, position: any): {
2
+ newRange: any;
4
3
  endMoved: boolean;
5
4
  };
@@ -1,5 +1 @@
1
- import { Range } from './types';
2
- export default function expandOrContractRangeByLength(range: Range, shiftBy: number, shiftStart: boolean, sequenceLength: number): Range & {
3
- start: number;
4
- end: number;
5
- };
1
+ export default function expandOrContractRangeByLength(range: any, shiftBy: any, shiftStart: any, sequenceLength: any): any;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1,4 @@
1
- import { Range } from './types';
2
- export default function expandOrContractRangeToPosition(range: Range, position: number, maxLength: number): {
3
- newRange: Range;
1
+ export default function expandOrContractRangeToPosition(range: any, position: any, maxLength: any): {
2
+ newRange: any;
4
3
  endMoved: boolean;
5
4
  };
@@ -1,5 +1 @@
1
- import { Range } from './types';
2
- export default function flipRelativeRange(innerRange: Range, outerRange: Range, sequenceLength: number): Range & {
3
- start: number;
4
- end: number;
5
- };
1
+ export default function flipRelativeRange(innerRange: any, outerRange: any, sequenceLength: any): any;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,4 +1,4 @@
1
- export default function generateRandomRange(minStart: number, maxEnd: number, maxLength: number): {
2
- start: number;
3
- end: number;
1
+ export default function generateRandomRange(minStart: any, maxEnd: any, maxLength: any): {
2
+ start: any;
3
+ end: any;
4
4
  };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getAnnotationRangeType(annotationRange: Range, enclosingRangeType: Range, forward: boolean): "end" | "beginningAndEnd" | "start" | "middle";
1
+ export default function getAnnotationRangeType(annotationRange: any, enclosingRangeType: any, forward: any): "end" | "beginningAndEnd" | "start" | "middle";
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getEachPositionInRangeAsArray(range: Range, rangeMax: number): number[];
1
+ export default function getEachPositionInRangeAsArray(range: any, rangeMax: any): any[];
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getLengthOfOverlappingRegionsBetweenTwoRanges(rangeA: Range, rangeB: Range, maxLength: number): number;
1
+ export default function getLengthOfOverlappingRegionsBetweenTwoRanges(rangeA: any, rangeB: any, maxLength: any): any;
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getMiddleOfRange(range: Range, rangeMax: number): number;
1
+ export default function getMiddleOfRange(range: any, rangeMax: any): any;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1,4 @@
1
- import { Range } from './types';
2
- export default function getOverlapOfNonCircularRanges(rangeA: Range, rangeB: Range): {
3
- start: number;
4
- end: number;
5
- } | null;
1
+ export default function getOverlapOfNonCircularRanges(rangeA: any, rangeB: any): {
2
+ start: any;
3
+ end: any;
4
+ } | undefined;
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getOverlapsOfPotentiallyCircularRanges(rangeA: Range, rangeB: Range, maxRangeLength: number, joinIfPossible?: boolean): Range[];
1
+ export default function getOverlapsOfPotentiallyCircularRanges(rangeA: any, rangeB: any, maxRangeLength: any, joinIfPossible: any): any[];
@@ -0,0 +1 @@
1
+ export {};
@@ -1 +1 @@
1
- export default function getPositionFromAngle(angle: number, rangeMax: number, isInBetweenPositions?: boolean): number;
1
+ export default function getPositionFromAngle(angle: any, rangeMax: any, isInBetweenPositions: any): number;
@@ -1,3 +1,7 @@
1
- import { Range } from './types';
2
- import { RangeAngles } from './RangeAngles';
3
- export default function getRangeAngles(range: Range, rangeMax: number): RangeAngles;
1
+ export default function getRangeAngles(range: any, rangeMax: any): {
2
+ startAngle: number;
3
+ totalAngle: number;
4
+ endAngle: number;
5
+ centerAngle: number;
6
+ locationAngles: any;
7
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,6 +1,2 @@
1
- import { Range } from './types';
2
- declare const _default: (range: Range, rangeMax: number, options?: {
3
- inclusive1BasedEnd?: boolean;
4
- inclusive1BasedStart?: boolean;
5
- } | undefined) => number;
1
+ declare const _default: (...args: any[]) => any;
6
2
  export default _default;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getRangesBetweenTwoRanges(range1: Range, range2: Range): Range[];
1
+ export default function getRangesBetweenTwoRanges(range1: any, range2: any): any[];
@@ -1,3 +1 @@
1
- import { Range } from './types';
2
- export default function getSequenceWithinRange(range: Range, sequence: string): string;
3
- export default function getSequenceWithinRange<T>(range: Range, sequence: T[]): T[];
1
+ export default function getSequenceWithinRange(range: any, sequence: any): any;
@@ -0,0 +1 @@
1
+ export {};
@@ -1 +1 @@
1
- export default function getShortestDistanceBetweenTwoPositions(position1: number, position2: number, sequenceLength: number): number;
1
+ export default function getShortestDistanceBetweenTwoPositions(position1: any, position2: any, sequenceLength: any): number;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getYOffsetForPotentiallyCircularRange(range: Range, YOffsetLevelsWithRanges: Range[][], assignYOffsetToRange: boolean): number;
1
+ export default function getYOffsetForPotentiallyCircularRange(range: any, YOffsetLevelsWithRanges: any, assignYOffsetToRange: any): any;
@@ -1,5 +1,4 @@
1
- import { Range } from './types';
2
- export default function getYOffsetsForPotentiallyCircularRanges(ranges: Range[], assignYOffsetToRange: boolean): {
3
- yOffsets: number[];
1
+ export default function getYOffsetsForPotentiallyCircularRanges(ranges: any, assignYOffsetToRange: any): {
2
+ yOffsets: any[];
4
3
  maxYOffset: number;
5
4
  };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1 @@
1
- import { Range } from './types';
2
- export default function getZeroedRangeOverlaps(annotation: Range, selection: Range, sequenceLength: number): Range[];
1
+ export default function getZeroedRangeOverlaps(annotation: any, selection: any, sequenceLength: any): any;
@@ -0,0 +1 @@
1
+ export {};
package/index.cjs CHANGED
@@ -1566,10 +1566,9 @@ function getOverlapOfNonCircularRanges(rangeA, rangeB) {
1566
1566
  }
1567
1567
  }
1568
1568
  }
1569
- return null;
1570
1569
  }
1571
1570
  __name(getOverlapOfNonCircularRanges, "getOverlapOfNonCircularRanges");
1572
- function getOverlapsOfPotentiallyCircularRanges(rangeA, rangeB, maxRangeLength, joinIfPossible = false) {
1571
+ function getOverlapsOfPotentiallyCircularRanges(rangeA, rangeB, maxRangeLength, joinIfPossible) {
1573
1572
  const normalizedRangeA = splitRangeIntoTwoPartsIfItIsCircular(
1574
1573
  rangeA,
1575
1574
  maxRangeLength
@@ -1600,11 +1599,8 @@ function getOverlapsOfPotentiallyCircularRanges(rangeA, rangeB, maxRangeLength,
1600
1599
  joinedOverlap.start = o.start;
1601
1600
  return [];
1602
1601
  }
1603
- return [o];
1604
1602
  });
1605
- if (Object.keys(joinedOverlap).length > 0) {
1606
- overlaps.push(joinedOverlap);
1607
- }
1603
+ overlaps.push(joinedOverlap);
1608
1604
  }
1609
1605
  return overlaps;
1610
1606
  }
@@ -1677,7 +1673,10 @@ function trimRangeByAnotherRange(rangeToBeTrimmed, trimmingRange, sequenceLength
1677
1673
  if (!overlaps.length) {
1678
1674
  return rangeToBeTrimmed;
1679
1675
  }
1680
- const splitRangesToBeTrimmed = splitRangeIntoTwoPartsIfItIsCircular(rangeToBeTrimmed, sequenceLength);
1676
+ const splitRangesToBeTrimmed = splitRangeIntoTwoPartsIfItIsCircular(
1677
+ rangeToBeTrimmed,
1678
+ sequenceLength
1679
+ );
1681
1680
  splitRangesToBeTrimmed.forEach(function(nonCircularRangeToBeTrimmed, index) {
1682
1681
  overlaps.forEach(function(overlap) {
1683
1682
  if (nonCircularRangeToBeTrimmed) {
@@ -1720,7 +1719,6 @@ function trimRangeByAnotherRange(rangeToBeTrimmed, trimmingRange, sequenceLength
1720
1719
  end: outputTrimmedRange.end
1721
1720
  });
1722
1721
  }
1723
- return void 0;
1724
1722
  }
1725
1723
  __name(trimRangeByAnotherRange, "trimRangeByAnotherRange");
1726
1724
  function adjustRangeToDeletionOfAnotherRange(rangeToBeAdjusted, anotherRange, maxLength) {
@@ -1867,10 +1865,11 @@ function collapseOverlapsGeneratedFromRangeComparisonIfPossible(overlaps, sequen
1867
1865
  }
1868
1866
  }
1869
1867
  }
1870
- return overlaps;
1871
1868
  }
1872
1869
  __name(collapseOverlapsGeneratedFromRangeComparisonIfPossible, "collapseOverlapsGeneratedFromRangeComparisonIfPossible");
1873
- function convertRangeIndices(range, inputType = {}, outputType = {}) {
1870
+ function convertRangeIndices(range, inputType, outputType) {
1871
+ inputType = inputType || {};
1872
+ outputType = outputType || {};
1874
1873
  return assign({}, range, {
1875
1874
  start: Number(range.start) + (inputType.inclusive1BasedStart ? outputType.inclusive1BasedStart ? 0 : -1 : outputType.inclusive1BasedStart ? 1 : 0),
1876
1875
  end: Number(range.end) + (inputType.inclusive1BasedEnd ? outputType.inclusive1BasedEnd ? 0 : -1 : outputType.inclusive1BasedEnd ? 1 : 0)
@@ -1893,32 +1892,25 @@ function convertRangeTo1Based(range) {
1893
1892
  }
1894
1893
  __name(convertRangeTo1Based, "convertRangeTo1Based");
1895
1894
  function provideInclusiveOptions(funToWrap) {
1896
- return function(...args) {
1895
+ return function() {
1896
+ const args = Array.prototype.slice.call(arguments);
1897
1897
  const options = args[args.length - 1];
1898
1898
  if (options && (options.inclusive1BasedEnd || options.inclusive1BasedStart)) {
1899
1899
  args.forEach(function(arg, index) {
1900
- const potentialRange = arg;
1901
- if (potentialRange && typeof potentialRange.start === "number" && potentialRange.start > -1 && options.inclusive1BasedStart) {
1902
- args[index] = assign(potentialRange, {
1903
- start: potentialRange.start - 1
1904
- });
1900
+ if (arg && arg.start > -1 && options.inclusive1BasedStart) {
1901
+ args[index] = assign(arg, { start: arg.start - 1 });
1905
1902
  }
1906
- if (potentialRange && typeof potentialRange.end === "number" && potentialRange.end > -1 && options.inclusive1BasedEnd) {
1907
- args[index] = assign(potentialRange, {
1908
- end: potentialRange.end - 1
1909
- });
1903
+ if (arg && arg.end > -1 && options.inclusive1BasedEnd) {
1904
+ args[index] = assign(arg, { end: arg.end - 1 });
1910
1905
  }
1911
1906
  });
1912
1907
  }
1913
1908
  let returnVal = funToWrap.apply(this, args);
1914
- const potentialReturn = returnVal;
1915
- if (potentialReturn && typeof potentialReturn.start === "number" && potentialReturn.start > -1 && options && options.inclusive1BasedStart) {
1916
- returnVal = assign(potentialReturn, {
1917
- start: potentialReturn.start + 1
1918
- });
1909
+ if (returnVal && returnVal.start > -1 && options && options.inclusive1BasedStart) {
1910
+ returnVal = assign(returnVal, { start: returnVal.start + 1 });
1919
1911
  }
1920
- if (potentialReturn && typeof potentialReturn.end === "number" && potentialReturn.end > -1 && options && options.inclusive1BasedEnd) {
1921
- returnVal = assign(potentialReturn, { end: potentialReturn.end + 1 });
1912
+ if (returnVal && returnVal.end > -1 && options && options.inclusive1BasedEnd) {
1913
+ returnVal = assign(returnVal, { end: returnVal.end + 1 });
1922
1914
  }
1923
1915
  return returnVal;
1924
1916
  };
@@ -1939,10 +1931,9 @@ function getRangeLength$1(range, rangeMax) {
1939
1931
  }
1940
1932
  __name(getRangeLength$1, "getRangeLength$1");
1941
1933
  function doesRangeSpanEntireSequence(range, sequenceLength) {
1942
- if (getRangeLength(range, sequenceLength) === sequenceLength) {
1934
+ if (getRangeLength(range) === sequenceLength) {
1943
1935
  return true;
1944
1936
  }
1945
- return false;
1946
1937
  }
1947
1938
  __name(doesRangeSpanEntireSequence, "doesRangeSpanEntireSequence");
1948
1939
  function isRangeWithinRange(rangeToCheck, containingRange, maxLength) {
@@ -1976,9 +1967,6 @@ function isRangeOrPositionWithinRange(rangeOrPositionToCheck, containingRange, m
1976
1967
  return false;
1977
1968
  }
1978
1969
  if (isObject(rangeOrPositionToCheck)) {
1979
- if (typeof rangeOrPositionToCheck.start !== "number") {
1980
- return false;
1981
- }
1982
1970
  return isRangeWithinRange(
1983
1971
  rangeOrPositionToCheck,
1984
1972
  containingRange,
@@ -1999,7 +1987,7 @@ function doesRangeSpanOrigin(range) {
1999
1987
  return range.start > range.end;
2000
1988
  }
2001
1989
  __name(doesRangeSpanOrigin, "doesRangeSpanOrigin");
2002
- function normalizePositionByRangeLength(pPosition, sequenceLength, isInBetweenPositions = false) {
1990
+ function normalizePositionByRangeLength(pPosition, sequenceLength, isInBetweenPositions) {
2003
1991
  let position = pPosition;
2004
1992
  if (position < 0) {
2005
1993
  position += sequenceLength;
@@ -2091,7 +2079,10 @@ function expandOrContractRangeToPosition(range, position, maxLength) {
2091
2079
  if (range.start > range.end) {
2092
2080
  return expandOrContractCircularRangeToPosition(range, position, maxLength);
2093
2081
  } else {
2094
- return expandOrContractNonCircularRangeToPosition(range, position);
2082
+ return expandOrContractNonCircularRangeToPosition(
2083
+ range,
2084
+ position
2085
+ );
2095
2086
  }
2096
2087
  }
2097
2088
  __name(expandOrContractRangeToPosition, "expandOrContractRangeToPosition");
@@ -2349,19 +2340,15 @@ function getRangesBetweenTwoRanges(range1, range2) {
2349
2340
  }
2350
2341
  __name(getRangesBetweenTwoRanges, "getRangesBetweenTwoRanges");
2351
2342
  function getSequenceWithinRange(range, sequence) {
2352
- if (range.start < 0 || range.end < 0) {
2353
- if (typeof sequence === "string") return "";
2354
- return [];
2355
- }
2343
+ if (range.start < 0 || range.end < 0) return "";
2356
2344
  if (range.start > range.end) {
2357
- const subSequence = sequence.slice(range.start, sequence.length);
2345
+ let subSequence = sequence.slice(range.start, sequence.length);
2358
2346
  if (typeof subSequence === "string") {
2359
- return subSequence + sequence.slice(0, range.end + 1);
2347
+ subSequence += sequence.slice(0, range.end + 1);
2360
2348
  } else {
2361
- return subSequence.concat(
2362
- sequence.slice(0, range.end + 1)
2363
- );
2349
+ subSequence = subSequence.concat(sequence.slice(0, range.end + 1));
2364
2350
  }
2351
+ return subSequence;
2365
2352
  } else {
2366
2353
  return sequence.slice(range.start, range.end + 1);
2367
2354
  }
@@ -2379,7 +2366,7 @@ function getShortestDistanceBetweenTwoPositions(position1, position2, sequenceLe
2379
2366
  }
2380
2367
  __name(getShortestDistanceBetweenTwoPositions, "getShortestDistanceBetweenTwoPositions");
2381
2368
  function getYOffsetForPotentiallyCircularRange(range, YOffsetLevelsWithRanges, assignYOffsetToRange) {
2382
- let yOffset = 0;
2369
+ let yOffset = [];
2383
2370
  const openYOffsetFound = YOffsetLevelsWithRanges.some(
2384
2371
  function(rangesAlreadyAddedToYOffset, index) {
2385
2372
  const rangeBlocked = rangesAlreadyAddedToYOffset.some(
@@ -2429,20 +2416,21 @@ function getYOffsetsForPotentiallyCircularRanges(ranges, assignYOffsetToRange) {
2429
2416
  __name(getYOffsetsForPotentiallyCircularRanges, "getYOffsetsForPotentiallyCircularRanges");
2430
2417
  const invertRange = provideInclusiveOptions(invertRange$1);
2431
2418
  function invertRange$1(rangeOrCaret, rangeMax) {
2432
- if (typeof rangeOrCaret !== "number" && rangeOrCaret.start > -1) {
2419
+ if (rangeOrCaret.start > -1) {
2433
2420
  const start = rangeOrCaret.end + 1;
2434
2421
  const end = rangeOrCaret.start - 1;
2435
2422
  return {
2436
2423
  start: normalizePositionByRangeLength(start, rangeMax, false),
2437
2424
  end: normalizePositionByRangeLength(end, rangeMax, false)
2438
2425
  };
2439
- } else if (typeof rangeOrCaret === "number" && rangeOrCaret > -1) {
2440
- return {
2441
- start: normalizePositionByRangeLength(rangeOrCaret, rangeMax, false),
2442
- end: normalizePositionByRangeLength(rangeOrCaret - 1, rangeMax, false)
2443
- };
2426
+ } else {
2427
+ if (rangeOrCaret > -1) {
2428
+ return {
2429
+ start: normalizePositionByRangeLength(rangeOrCaret, rangeMax, false),
2430
+ end: normalizePositionByRangeLength(rangeOrCaret - 1, rangeMax, false)
2431
+ };
2432
+ }
2444
2433
  }
2445
- return void 0;
2446
2434
  }
2447
2435
  __name(invertRange$1, "invertRange$1");
2448
2436
  function isPositionCloserToRangeStartThanRangeEnd(position, range, maxLength) {
@@ -2510,10 +2498,9 @@ function zeroSubrangeByContainerRange(subRange, containerRange, sequenceLength)
2510
2498
  "subRange must be fully contained by containerRange! Otherwise this function does not make sense"
2511
2499
  );
2512
2500
  }
2513
- const newSubrange = {
2514
- start: subRange.start - containerRange.start,
2515
- end: subRange.end - containerRange.start
2516
- };
2501
+ const newSubrange = {};
2502
+ newSubrange.start = subRange.start - containerRange.start;
2503
+ newSubrange.end = subRange.end - containerRange.start;
2517
2504
  if (newSubrange.start < 0) {
2518
2505
  newSubrange.start += sequenceLength;
2519
2506
  }
@@ -2524,10 +2511,10 @@ function zeroSubrangeByContainerRange(subRange, containerRange, sequenceLength)
2524
2511
  }
2525
2512
  __name(zeroSubrangeByContainerRange, "zeroSubrangeByContainerRange");
2526
2513
  function adjustRangeToRotation(rangeToBeAdjusted, rotateTo = 0, rangeLength) {
2527
- const mod = /* @__PURE__ */ __name((n) => rangeLength ? modulo(n, rangeLength) : n, "mod");
2514
+ const mod = rangeLength ? modulo : identity;
2528
2515
  const newRange = assign({}, rangeToBeAdjusted, {
2529
- start: mod(rangeToBeAdjusted.start - (rotateTo || 0)),
2530
- end: mod(rangeToBeAdjusted.end - (rotateTo || 0))
2516
+ start: mod(rangeToBeAdjusted.start - (rotateTo || 0), rangeLength),
2517
+ end: mod(rangeToBeAdjusted.end - (rotateTo || 0), rangeLength)
2531
2518
  });
2532
2519
  return newRange;
2533
2520
  }
package/index.d.ts CHANGED
@@ -50,4 +50,3 @@ export { default as zeroSubrangeByContainerRange } from './zeroSubrangeByContain
50
50
  export { default as adjustRangeToRotation } from './adjustRangeToRotation';
51
51
  export { default as getZeroedRangeOverlaps } from './getZeroedRangeOverlaps';
52
52
  export { default as trimAnnStartEndToFitSeqLength } from './trimAnnStartEndToFitSeqLength';
53
- export * from './types';