···55The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7788+## [Unreleased](https://github.com/patrik-csak/BB26/compare/v5.1.1...HEAD)
99+1010+- Improve `range` performance
1111+812## [5.1.1](https://github.com/patrik-csak/BB26/compare/v5.1.0...v5.1.1) – 2026-04-20
9131014### Fixed
+12-7
source/range.ts
···11-import increment from './increment.js';
11+import toBb26 from './to-bb26.js';
22import toDecimal from './to-decimal.js';
3344/**
···1313export default function range(end: string): string[];
1414export default function range(start: string, end: string): string[];
1515export default function range(start: string, end?: string): string[] {
1616- const _range: string[] = [];
1717- const _end = end ?? start;
1818- const _start = end ? start : 'A';
1616+ if (!end) {
1717+ end = start;
1818+ start = 'A';
1919+ }
2020+2121+ const range: string[] = [];
2222+ const startDecimal = toDecimal(start);
2323+ const endDecimal = toDecimal(end);
19242020- for (let i = _start; toDecimal(i) < toDecimal(_end); i = increment(i)) {
2121- _range.push(i);
2525+ for (let decimal = startDecimal; decimal < endDecimal; decimal++) {
2626+ range.push(toBb26(decimal));
2227 }
23282424- return _range;
2929+ return range;
2530}