@leofcoin/chain 1.7.23 → 1.7.25

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.
@@ -10,7 +10,10 @@ if (!globalThis.DEBUG) {
10
10
  }
11
11
  }
12
12
 
13
- const debug$5 = (target, text) => {
13
+ const getLogger = (trace) => (trace ? console.trace : console.log);
14
+
15
+ const debug$5 = (target, text, trace) => {
16
+ const _logger = getLogger(trace);
14
17
  if (!globalThis.DEBUG && globalThis.DEBUG.length === 0) return;
15
18
  if (
16
19
  globalThis.DEBUG === 'true' ||
@@ -19,9 +22,8 @@ const debug$5 = (target, text) => {
19
22
  globalThis.DEBUG?.indexOf('*') !== -1 ||
20
23
  globalThis.DEBUG?.indexOf(target.split('/')[0]) !== -1
21
24
  )
22
- if (text)
23
- console.trace('\x1b[34m\x1b[1m%s', `${target}: ${text}`, '\x1b[0m');
24
- else console.trace('\x1b[34m\x1b[1m%s', `${target}`, '\x1b[0m');
25
+ if (text) _logger('\x1b[34m\x1b[1m%s', `${target}: ${text}`, '\x1b[0m');
26
+ else _logger('\x1b[34m\x1b[1m%s', `${target}`, '\x1b[0m');
25
27
  };
26
28
 
27
29
  const createDebugger = (target) => (text) => debug$5(target, text);
@@ -970,7 +972,7 @@ let SemVer$d = class SemVer {
970
972
  do {
971
973
  const a = this.build[i];
972
974
  const b = other.build[i];
973
- debug$3('prerelease compare', i, a, b);
975
+ debug$3('build compare', i, a, b);
974
976
  if (a === undefined && b === undefined) {
975
977
  return 0
976
978
  } else if (b === undefined) {
@@ -1417,797 +1419,46 @@ const coerce$1 = (version, options) => {
1417
1419
  };
1418
1420
  var coerce_1 = coerce$1;
1419
1421
 
1420
- var iterator;
1421
- var hasRequiredIterator;
1422
-
1423
- function requireIterator () {
1424
- if (hasRequiredIterator) return iterator;
1425
- hasRequiredIterator = 1;
1426
- iterator = function (Yallist) {
1427
- Yallist.prototype[Symbol.iterator] = function* () {
1428
- for (let walker = this.head; walker; walker = walker.next) {
1429
- yield walker.value;
1430
- }
1431
- };
1432
- };
1433
- return iterator;
1434
- }
1435
-
1436
- var yallist;
1437
- var hasRequiredYallist;
1438
-
1439
- function requireYallist () {
1440
- if (hasRequiredYallist) return yallist;
1441
- hasRequiredYallist = 1;
1442
- yallist = Yallist;
1443
-
1444
- Yallist.Node = Node;
1445
- Yallist.create = Yallist;
1446
-
1447
- function Yallist (list) {
1448
- var self = this;
1449
- if (!(self instanceof Yallist)) {
1450
- self = new Yallist();
1451
- }
1452
-
1453
- self.tail = null;
1454
- self.head = null;
1455
- self.length = 0;
1456
-
1457
- if (list && typeof list.forEach === 'function') {
1458
- list.forEach(function (item) {
1459
- self.push(item);
1460
- });
1461
- } else if (arguments.length > 0) {
1462
- for (var i = 0, l = arguments.length; i < l; i++) {
1463
- self.push(arguments[i]);
1464
- }
1465
- }
1466
-
1467
- return self
1468
- }
1469
-
1470
- Yallist.prototype.removeNode = function (node) {
1471
- if (node.list !== this) {
1472
- throw new Error('removing node which does not belong to this list')
1473
- }
1474
-
1475
- var next = node.next;
1476
- var prev = node.prev;
1477
-
1478
- if (next) {
1479
- next.prev = prev;
1480
- }
1481
-
1482
- if (prev) {
1483
- prev.next = next;
1484
- }
1485
-
1486
- if (node === this.head) {
1487
- this.head = next;
1488
- }
1489
- if (node === this.tail) {
1490
- this.tail = prev;
1491
- }
1492
-
1493
- node.list.length--;
1494
- node.next = null;
1495
- node.prev = null;
1496
- node.list = null;
1497
-
1498
- return next
1499
- };
1500
-
1501
- Yallist.prototype.unshiftNode = function (node) {
1502
- if (node === this.head) {
1503
- return
1504
- }
1505
-
1506
- if (node.list) {
1507
- node.list.removeNode(node);
1508
- }
1509
-
1510
- var head = this.head;
1511
- node.list = this;
1512
- node.next = head;
1513
- if (head) {
1514
- head.prev = node;
1515
- }
1516
-
1517
- this.head = node;
1518
- if (!this.tail) {
1519
- this.tail = node;
1520
- }
1521
- this.length++;
1522
- };
1523
-
1524
- Yallist.prototype.pushNode = function (node) {
1525
- if (node === this.tail) {
1526
- return
1527
- }
1528
-
1529
- if (node.list) {
1530
- node.list.removeNode(node);
1531
- }
1532
-
1533
- var tail = this.tail;
1534
- node.list = this;
1535
- node.prev = tail;
1536
- if (tail) {
1537
- tail.next = node;
1538
- }
1539
-
1540
- this.tail = node;
1541
- if (!this.head) {
1542
- this.head = node;
1543
- }
1544
- this.length++;
1545
- };
1546
-
1547
- Yallist.prototype.push = function () {
1548
- for (var i = 0, l = arguments.length; i < l; i++) {
1549
- push(this, arguments[i]);
1550
- }
1551
- return this.length
1552
- };
1553
-
1554
- Yallist.prototype.unshift = function () {
1555
- for (var i = 0, l = arguments.length; i < l; i++) {
1556
- unshift(this, arguments[i]);
1557
- }
1558
- return this.length
1559
- };
1560
-
1561
- Yallist.prototype.pop = function () {
1562
- if (!this.tail) {
1563
- return undefined
1564
- }
1565
-
1566
- var res = this.tail.value;
1567
- this.tail = this.tail.prev;
1568
- if (this.tail) {
1569
- this.tail.next = null;
1570
- } else {
1571
- this.head = null;
1572
- }
1573
- this.length--;
1574
- return res
1575
- };
1576
-
1577
- Yallist.prototype.shift = function () {
1578
- if (!this.head) {
1579
- return undefined
1580
- }
1581
-
1582
- var res = this.head.value;
1583
- this.head = this.head.next;
1584
- if (this.head) {
1585
- this.head.prev = null;
1586
- } else {
1587
- this.tail = null;
1588
- }
1589
- this.length--;
1590
- return res
1591
- };
1592
-
1593
- Yallist.prototype.forEach = function (fn, thisp) {
1594
- thisp = thisp || this;
1595
- for (var walker = this.head, i = 0; walker !== null; i++) {
1596
- fn.call(thisp, walker.value, i, this);
1597
- walker = walker.next;
1598
- }
1599
- };
1600
-
1601
- Yallist.prototype.forEachReverse = function (fn, thisp) {
1602
- thisp = thisp || this;
1603
- for (var walker = this.tail, i = this.length - 1; walker !== null; i--) {
1604
- fn.call(thisp, walker.value, i, this);
1605
- walker = walker.prev;
1606
- }
1607
- };
1608
-
1609
- Yallist.prototype.get = function (n) {
1610
- for (var i = 0, walker = this.head; walker !== null && i < n; i++) {
1611
- // abort out of the list early if we hit a cycle
1612
- walker = walker.next;
1613
- }
1614
- if (i === n && walker !== null) {
1615
- return walker.value
1616
- }
1617
- };
1618
-
1619
- Yallist.prototype.getReverse = function (n) {
1620
- for (var i = 0, walker = this.tail; walker !== null && i < n; i++) {
1621
- // abort out of the list early if we hit a cycle
1622
- walker = walker.prev;
1623
- }
1624
- if (i === n && walker !== null) {
1625
- return walker.value
1626
- }
1627
- };
1628
-
1629
- Yallist.prototype.map = function (fn, thisp) {
1630
- thisp = thisp || this;
1631
- var res = new Yallist();
1632
- for (var walker = this.head; walker !== null;) {
1633
- res.push(fn.call(thisp, walker.value, this));
1634
- walker = walker.next;
1635
- }
1636
- return res
1637
- };
1638
-
1639
- Yallist.prototype.mapReverse = function (fn, thisp) {
1640
- thisp = thisp || this;
1641
- var res = new Yallist();
1642
- for (var walker = this.tail; walker !== null;) {
1643
- res.push(fn.call(thisp, walker.value, this));
1644
- walker = walker.prev;
1645
- }
1646
- return res
1647
- };
1648
-
1649
- Yallist.prototype.reduce = function (fn, initial) {
1650
- var acc;
1651
- var walker = this.head;
1652
- if (arguments.length > 1) {
1653
- acc = initial;
1654
- } else if (this.head) {
1655
- walker = this.head.next;
1656
- acc = this.head.value;
1657
- } else {
1658
- throw new TypeError('Reduce of empty list with no initial value')
1659
- }
1660
-
1661
- for (var i = 0; walker !== null; i++) {
1662
- acc = fn(acc, walker.value, i);
1663
- walker = walker.next;
1664
- }
1665
-
1666
- return acc
1667
- };
1668
-
1669
- Yallist.prototype.reduceReverse = function (fn, initial) {
1670
- var acc;
1671
- var walker = this.tail;
1672
- if (arguments.length > 1) {
1673
- acc = initial;
1674
- } else if (this.tail) {
1675
- walker = this.tail.prev;
1676
- acc = this.tail.value;
1677
- } else {
1678
- throw new TypeError('Reduce of empty list with no initial value')
1679
- }
1680
-
1681
- for (var i = this.length - 1; walker !== null; i--) {
1682
- acc = fn(acc, walker.value, i);
1683
- walker = walker.prev;
1684
- }
1685
-
1686
- return acc
1687
- };
1688
-
1689
- Yallist.prototype.toArray = function () {
1690
- var arr = new Array(this.length);
1691
- for (var i = 0, walker = this.head; walker !== null; i++) {
1692
- arr[i] = walker.value;
1693
- walker = walker.next;
1694
- }
1695
- return arr
1696
- };
1697
-
1698
- Yallist.prototype.toArrayReverse = function () {
1699
- var arr = new Array(this.length);
1700
- for (var i = 0, walker = this.tail; walker !== null; i++) {
1701
- arr[i] = walker.value;
1702
- walker = walker.prev;
1703
- }
1704
- return arr
1705
- };
1706
-
1707
- Yallist.prototype.slice = function (from, to) {
1708
- to = to || this.length;
1709
- if (to < 0) {
1710
- to += this.length;
1711
- }
1712
- from = from || 0;
1713
- if (from < 0) {
1714
- from += this.length;
1715
- }
1716
- var ret = new Yallist();
1717
- if (to < from || to < 0) {
1718
- return ret
1719
- }
1720
- if (from < 0) {
1721
- from = 0;
1722
- }
1723
- if (to > this.length) {
1724
- to = this.length;
1725
- }
1726
- for (var i = 0, walker = this.head; walker !== null && i < from; i++) {
1727
- walker = walker.next;
1728
- }
1729
- for (; walker !== null && i < to; i++, walker = walker.next) {
1730
- ret.push(walker.value);
1731
- }
1732
- return ret
1733
- };
1734
-
1735
- Yallist.prototype.sliceReverse = function (from, to) {
1736
- to = to || this.length;
1737
- if (to < 0) {
1738
- to += this.length;
1739
- }
1740
- from = from || 0;
1741
- if (from < 0) {
1742
- from += this.length;
1743
- }
1744
- var ret = new Yallist();
1745
- if (to < from || to < 0) {
1746
- return ret
1747
- }
1748
- if (from < 0) {
1749
- from = 0;
1750
- }
1751
- if (to > this.length) {
1752
- to = this.length;
1753
- }
1754
- for (var i = this.length, walker = this.tail; walker !== null && i > to; i--) {
1755
- walker = walker.prev;
1756
- }
1757
- for (; walker !== null && i > from; i--, walker = walker.prev) {
1758
- ret.push(walker.value);
1759
- }
1760
- return ret
1761
- };
1762
-
1763
- Yallist.prototype.splice = function (start, deleteCount, ...nodes) {
1764
- if (start > this.length) {
1765
- start = this.length - 1;
1766
- }
1767
- if (start < 0) {
1768
- start = this.length + start;
1769
- }
1770
-
1771
- for (var i = 0, walker = this.head; walker !== null && i < start; i++) {
1772
- walker = walker.next;
1773
- }
1774
-
1775
- var ret = [];
1776
- for (var i = 0; walker && i < deleteCount; i++) {
1777
- ret.push(walker.value);
1778
- walker = this.removeNode(walker);
1779
- }
1780
- if (walker === null) {
1781
- walker = this.tail;
1782
- }
1783
-
1784
- if (walker !== this.head && walker !== this.tail) {
1785
- walker = walker.prev;
1786
- }
1787
-
1788
- for (var i = 0; i < nodes.length; i++) {
1789
- walker = insert(this, walker, nodes[i]);
1790
- }
1791
- return ret;
1792
- };
1793
-
1794
- Yallist.prototype.reverse = function () {
1795
- var head = this.head;
1796
- var tail = this.tail;
1797
- for (var walker = head; walker !== null; walker = walker.prev) {
1798
- var p = walker.prev;
1799
- walker.prev = walker.next;
1800
- walker.next = p;
1801
- }
1802
- this.head = tail;
1803
- this.tail = head;
1804
- return this
1805
- };
1806
-
1807
- function insert (self, node, value) {
1808
- var inserted = node === self.head ?
1809
- new Node(value, null, node, self) :
1810
- new Node(value, node, node.next, self);
1811
-
1812
- if (inserted.next === null) {
1813
- self.tail = inserted;
1814
- }
1815
- if (inserted.prev === null) {
1816
- self.head = inserted;
1817
- }
1818
-
1819
- self.length++;
1820
-
1821
- return inserted
1822
- }
1823
-
1824
- function push (self, item) {
1825
- self.tail = new Node(item, self.tail, null, self);
1826
- if (!self.head) {
1827
- self.head = self.tail;
1828
- }
1829
- self.length++;
1830
- }
1422
+ class LRUCache {
1423
+ constructor () {
1424
+ this.max = 1000;
1425
+ this.map = new Map();
1426
+ }
1831
1427
 
1832
- function unshift (self, item) {
1833
- self.head = new Node(item, null, self.head, self);
1834
- if (!self.tail) {
1835
- self.tail = self.head;
1836
- }
1837
- self.length++;
1838
- }
1428
+ get (key) {
1429
+ const value = this.map.get(key);
1430
+ if (value === undefined) {
1431
+ return undefined
1432
+ } else {
1433
+ // Remove the key from the map and add it to the end
1434
+ this.map.delete(key);
1435
+ this.map.set(key, value);
1436
+ return value
1437
+ }
1438
+ }
1839
1439
 
1840
- function Node (value, prev, next, list) {
1841
- if (!(this instanceof Node)) {
1842
- return new Node(value, prev, next, list)
1843
- }
1440
+ delete (key) {
1441
+ return this.map.delete(key)
1442
+ }
1844
1443
 
1845
- this.list = list;
1846
- this.value = value;
1444
+ set (key, value) {
1445
+ const deleted = this.delete(key);
1847
1446
 
1848
- if (prev) {
1849
- prev.next = this;
1850
- this.prev = prev;
1851
- } else {
1852
- this.prev = null;
1853
- }
1447
+ if (!deleted && value !== undefined) {
1448
+ // If cache is full, delete the least recently used item
1449
+ if (this.map.size >= this.max) {
1450
+ const firstKey = this.map.keys().next().value;
1451
+ this.delete(firstKey);
1452
+ }
1854
1453
 
1855
- if (next) {
1856
- next.prev = this;
1857
- this.next = next;
1858
- } else {
1859
- this.next = null;
1860
- }
1861
- }
1454
+ this.map.set(key, value);
1455
+ }
1862
1456
 
1863
- try {
1864
- // add if support for Symbol.iterator is present
1865
- requireIterator()(Yallist);
1866
- } catch (er) {}
1867
- return yallist;
1457
+ return this
1458
+ }
1868
1459
  }
1869
1460
 
1870
- var lruCache;
1871
- var hasRequiredLruCache;
1872
-
1873
- function requireLruCache () {
1874
- if (hasRequiredLruCache) return lruCache;
1875
- hasRequiredLruCache = 1;
1876
-
1877
- // A linked list to keep track of recently-used-ness
1878
- const Yallist = requireYallist();
1879
-
1880
- const MAX = Symbol('max');
1881
- const LENGTH = Symbol('length');
1882
- const LENGTH_CALCULATOR = Symbol('lengthCalculator');
1883
- const ALLOW_STALE = Symbol('allowStale');
1884
- const MAX_AGE = Symbol('maxAge');
1885
- const DISPOSE = Symbol('dispose');
1886
- const NO_DISPOSE_ON_SET = Symbol('noDisposeOnSet');
1887
- const LRU_LIST = Symbol('lruList');
1888
- const CACHE = Symbol('cache');
1889
- const UPDATE_AGE_ON_GET = Symbol('updateAgeOnGet');
1890
-
1891
- const naiveLength = () => 1;
1892
-
1893
- // lruList is a yallist where the head is the youngest
1894
- // item, and the tail is the oldest. the list contains the Hit
1895
- // objects as the entries.
1896
- // Each Hit object has a reference to its Yallist.Node. This
1897
- // never changes.
1898
- //
1899
- // cache is a Map (or PseudoMap) that matches the keys to
1900
- // the Yallist.Node object.
1901
- class LRUCache {
1902
- constructor (options) {
1903
- if (typeof options === 'number')
1904
- options = { max: options };
1905
-
1906
- if (!options)
1907
- options = {};
1908
-
1909
- if (options.max && (typeof options.max !== 'number' || options.max < 0))
1910
- throw new TypeError('max must be a non-negative number')
1911
- // Kind of weird to have a default max of Infinity, but oh well.
1912
- this[MAX] = options.max || Infinity;
1913
-
1914
- const lc = options.length || naiveLength;
1915
- this[LENGTH_CALCULATOR] = (typeof lc !== 'function') ? naiveLength : lc;
1916
- this[ALLOW_STALE] = options.stale || false;
1917
- if (options.maxAge && typeof options.maxAge !== 'number')
1918
- throw new TypeError('maxAge must be a number')
1919
- this[MAX_AGE] = options.maxAge || 0;
1920
- this[DISPOSE] = options.dispose;
1921
- this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false;
1922
- this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false;
1923
- this.reset();
1924
- }
1925
-
1926
- // resize the cache when the max changes.
1927
- set max (mL) {
1928
- if (typeof mL !== 'number' || mL < 0)
1929
- throw new TypeError('max must be a non-negative number')
1930
-
1931
- this[MAX] = mL || Infinity;
1932
- trim(this);
1933
- }
1934
- get max () {
1935
- return this[MAX]
1936
- }
1937
-
1938
- set allowStale (allowStale) {
1939
- this[ALLOW_STALE] = !!allowStale;
1940
- }
1941
- get allowStale () {
1942
- return this[ALLOW_STALE]
1943
- }
1944
-
1945
- set maxAge (mA) {
1946
- if (typeof mA !== 'number')
1947
- throw new TypeError('maxAge must be a non-negative number')
1948
-
1949
- this[MAX_AGE] = mA;
1950
- trim(this);
1951
- }
1952
- get maxAge () {
1953
- return this[MAX_AGE]
1954
- }
1955
-
1956
- // resize the cache when the lengthCalculator changes.
1957
- set lengthCalculator (lC) {
1958
- if (typeof lC !== 'function')
1959
- lC = naiveLength;
1960
-
1961
- if (lC !== this[LENGTH_CALCULATOR]) {
1962
- this[LENGTH_CALCULATOR] = lC;
1963
- this[LENGTH] = 0;
1964
- this[LRU_LIST].forEach(hit => {
1965
- hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key);
1966
- this[LENGTH] += hit.length;
1967
- });
1968
- }
1969
- trim(this);
1970
- }
1971
- get lengthCalculator () { return this[LENGTH_CALCULATOR] }
1972
-
1973
- get length () { return this[LENGTH] }
1974
- get itemCount () { return this[LRU_LIST].length }
1975
-
1976
- rforEach (fn, thisp) {
1977
- thisp = thisp || this;
1978
- for (let walker = this[LRU_LIST].tail; walker !== null;) {
1979
- const prev = walker.prev;
1980
- forEachStep(this, fn, walker, thisp);
1981
- walker = prev;
1982
- }
1983
- }
1984
-
1985
- forEach (fn, thisp) {
1986
- thisp = thisp || this;
1987
- for (let walker = this[LRU_LIST].head; walker !== null;) {
1988
- const next = walker.next;
1989
- forEachStep(this, fn, walker, thisp);
1990
- walker = next;
1991
- }
1992
- }
1993
-
1994
- keys () {
1995
- return this[LRU_LIST].toArray().map(k => k.key)
1996
- }
1997
-
1998
- values () {
1999
- return this[LRU_LIST].toArray().map(k => k.value)
2000
- }
2001
-
2002
- reset () {
2003
- if (this[DISPOSE] &&
2004
- this[LRU_LIST] &&
2005
- this[LRU_LIST].length) {
2006
- this[LRU_LIST].forEach(hit => this[DISPOSE](hit.key, hit.value));
2007
- }
2008
-
2009
- this[CACHE] = new Map(); // hash of items by key
2010
- this[LRU_LIST] = new Yallist(); // list of items in order of use recency
2011
- this[LENGTH] = 0; // length of items in the list
2012
- }
2013
-
2014
- dump () {
2015
- return this[LRU_LIST].map(hit =>
2016
- isStale(this, hit) ? false : {
2017
- k: hit.key,
2018
- v: hit.value,
2019
- e: hit.now + (hit.maxAge || 0)
2020
- }).toArray().filter(h => h)
2021
- }
2022
-
2023
- dumpLru () {
2024
- return this[LRU_LIST]
2025
- }
2026
-
2027
- set (key, value, maxAge) {
2028
- maxAge = maxAge || this[MAX_AGE];
2029
-
2030
- if (maxAge && typeof maxAge !== 'number')
2031
- throw new TypeError('maxAge must be a number')
2032
-
2033
- const now = maxAge ? Date.now() : 0;
2034
- const len = this[LENGTH_CALCULATOR](value, key);
2035
-
2036
- if (this[CACHE].has(key)) {
2037
- if (len > this[MAX]) {
2038
- del(this, this[CACHE].get(key));
2039
- return false
2040
- }
2041
-
2042
- const node = this[CACHE].get(key);
2043
- const item = node.value;
2044
-
2045
- // dispose of the old one before overwriting
2046
- // split out into 2 ifs for better coverage tracking
2047
- if (this[DISPOSE]) {
2048
- if (!this[NO_DISPOSE_ON_SET])
2049
- this[DISPOSE](key, item.value);
2050
- }
2051
-
2052
- item.now = now;
2053
- item.maxAge = maxAge;
2054
- item.value = value;
2055
- this[LENGTH] += len - item.length;
2056
- item.length = len;
2057
- this.get(key);
2058
- trim(this);
2059
- return true
2060
- }
2061
-
2062
- const hit = new Entry(key, value, len, now, maxAge);
2063
-
2064
- // oversized objects fall out of cache automatically.
2065
- if (hit.length > this[MAX]) {
2066
- if (this[DISPOSE])
2067
- this[DISPOSE](key, value);
2068
-
2069
- return false
2070
- }
2071
-
2072
- this[LENGTH] += hit.length;
2073
- this[LRU_LIST].unshift(hit);
2074
- this[CACHE].set(key, this[LRU_LIST].head);
2075
- trim(this);
2076
- return true
2077
- }
2078
-
2079
- has (key) {
2080
- if (!this[CACHE].has(key)) return false
2081
- const hit = this[CACHE].get(key).value;
2082
- return !isStale(this, hit)
2083
- }
2084
-
2085
- get (key) {
2086
- return get(this, key, true)
2087
- }
2088
-
2089
- peek (key) {
2090
- return get(this, key, false)
2091
- }
2092
-
2093
- pop () {
2094
- const node = this[LRU_LIST].tail;
2095
- if (!node)
2096
- return null
2097
-
2098
- del(this, node);
2099
- return node.value
2100
- }
2101
-
2102
- del (key) {
2103
- del(this, this[CACHE].get(key));
2104
- }
2105
-
2106
- load (arr) {
2107
- // reset the cache
2108
- this.reset();
2109
-
2110
- const now = Date.now();
2111
- // A previous serialized cache has the most recent items first
2112
- for (let l = arr.length - 1; l >= 0; l--) {
2113
- const hit = arr[l];
2114
- const expiresAt = hit.e || 0;
2115
- if (expiresAt === 0)
2116
- // the item was created without expiration in a non aged cache
2117
- this.set(hit.k, hit.v);
2118
- else {
2119
- const maxAge = expiresAt - now;
2120
- // dont add already expired items
2121
- if (maxAge > 0) {
2122
- this.set(hit.k, hit.v, maxAge);
2123
- }
2124
- }
2125
- }
2126
- }
2127
-
2128
- prune () {
2129
- this[CACHE].forEach((value, key) => get(this, key, false));
2130
- }
2131
- }
2132
-
2133
- const get = (self, key, doUse) => {
2134
- const node = self[CACHE].get(key);
2135
- if (node) {
2136
- const hit = node.value;
2137
- if (isStale(self, hit)) {
2138
- del(self, node);
2139
- if (!self[ALLOW_STALE])
2140
- return undefined
2141
- } else {
2142
- if (doUse) {
2143
- if (self[UPDATE_AGE_ON_GET])
2144
- node.value.now = Date.now();
2145
- self[LRU_LIST].unshiftNode(node);
2146
- }
2147
- }
2148
- return hit.value
2149
- }
2150
- };
2151
-
2152
- const isStale = (self, hit) => {
2153
- if (!hit || (!hit.maxAge && !self[MAX_AGE]))
2154
- return false
2155
-
2156
- const diff = Date.now() - hit.now;
2157
- return hit.maxAge ? diff > hit.maxAge
2158
- : self[MAX_AGE] && (diff > self[MAX_AGE])
2159
- };
2160
-
2161
- const trim = self => {
2162
- if (self[LENGTH] > self[MAX]) {
2163
- for (let walker = self[LRU_LIST].tail;
2164
- self[LENGTH] > self[MAX] && walker !== null;) {
2165
- // We know that we're about to delete this one, and also
2166
- // what the next least recently used key will be, so just
2167
- // go ahead and set it now.
2168
- const prev = walker.prev;
2169
- del(self, walker);
2170
- walker = prev;
2171
- }
2172
- }
2173
- };
2174
-
2175
- const del = (self, node) => {
2176
- if (node) {
2177
- const hit = node.value;
2178
- if (self[DISPOSE])
2179
- self[DISPOSE](hit.key, hit.value);
2180
-
2181
- self[LENGTH] -= hit.length;
2182
- self[CACHE].delete(hit.key);
2183
- self[LRU_LIST].removeNode(node);
2184
- }
2185
- };
2186
-
2187
- class Entry {
2188
- constructor (key, value, length, now, maxAge) {
2189
- this.key = key;
2190
- this.value = value;
2191
- this.length = length;
2192
- this.now = now;
2193
- this.maxAge = maxAge || 0;
2194
- }
2195
- }
2196
-
2197
- const forEachStep = (self, fn, node, thisp) => {
2198
- let hit = node.value;
2199
- if (isStale(self, hit)) {
2200
- del(self, node);
2201
- if (!self[ALLOW_STALE])
2202
- hit = undefined;
2203
- }
2204
- if (hit)
2205
- fn.call(thisp, hit.value, hit.key, self);
2206
- };
2207
-
2208
- lruCache = LRUCache;
2209
- return lruCache;
2210
- }
1461
+ var lrucache = LRUCache;
2211
1462
 
2212
1463
  var range;
2213
1464
  var hasRequiredRange;
@@ -2415,8 +1666,8 @@ function requireRange () {
2415
1666
 
2416
1667
  range = Range;
2417
1668
 
2418
- const LRU = requireLruCache();
2419
- const cache = new LRU({ max: 1000 });
1669
+ const LRU = lrucache;
1670
+ const cache = new LRU();
2420
1671
 
2421
1672
  const parseOptions = parseOptions_1;
2422
1673
  const Comparator = requireComparator();
@@ -2687,9 +1938,10 @@ function requireRange () {
2687
1938
  // 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
2688
1939
  // 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do
2689
1940
  // 1.2 - 3.4 => >=1.2.0 <3.5.0-0
1941
+ // TODO build?
2690
1942
  const hyphenReplace = incPr => ($0,
2691
1943
  from, fM, fm, fp, fpr, fb,
2692
- to, tM, tm, tp, tpr, tb) => {
1944
+ to, tM, tm, tp, tpr) => {
2693
1945
  if (isX(fM)) {
2694
1946
  from = '';
2695
1947
  } else if (isX(fm)) {
@@ -355,6 +355,7 @@ _.init = async (message) => {
355
355
  if (message === transaction) {
356
356
  throw new Error(`nothing found for ${transaction}`)
357
357
  }
358
+ return message
358
359
  })
359
360
  );
360
361
  const priority = transactions
@@ -355,6 +355,7 @@ _.init = async (message) => {
355
355
  if (message === transaction) {
356
356
  throw new Error(`nothing found for ${transaction}`)
357
357
  }
358
+ return message
358
359
  })
359
360
  );
360
361
  const priority = transactions
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leofcoin/chain",
3
- "version": "1.7.23",
3
+ "version": "1.7.25",
4
4
  "description": "Official javascript implementation",
5
5
  "private": false,
6
6
  "exports": {