vscroll 1.4.0-beta.2 → 1.4.0
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.
- package/dist/bundles/vscroll.esm5.js +89 -175
- package/dist/bundles/vscroll.esm5.js.map +1 -1
- package/dist/bundles/vscroll.esm5.min.js +2 -2
- package/dist/bundles/vscroll.esm5.min.js.map +1 -1
- package/dist/bundles/vscroll.esm6.js +80 -165
- package/dist/bundles/vscroll.esm6.js.map +1 -1
- package/dist/bundles/vscroll.esm6.min.js +2 -2
- package/dist/bundles/vscroll.esm6.min.js.map +1 -1
- package/dist/bundles/vscroll.umd.js +90 -176
- package/dist/bundles/vscroll.umd.js.map +1 -1
- package/dist/bundles/vscroll.umd.min.js +2 -2
- package/dist/bundles/vscroll.umd.min.js.map +1 -1
- package/dist/esm2015/classes/buffer.js +0 -16
- package/dist/esm2015/classes/buffer.js.map +1 -1
- package/dist/esm2015/classes/state/fetch.js +0 -12
- package/dist/esm2015/classes/state/fetch.js.map +1 -1
- package/dist/esm2015/processes/adapter/append.js +15 -74
- package/dist/esm2015/processes/adapter/append.js.map +1 -1
- package/dist/esm2015/version.js +1 -1
- package/dist/esm2015/version.js.map +1 -1
- package/dist/esm5/classes/buffer.js +0 -16
- package/dist/esm5/classes/buffer.js.map +1 -1
- package/dist/esm5/classes/state/fetch.js +0 -12
- package/dist/esm5/classes/state/fetch.js.map +1 -1
- package/dist/esm5/processes/adapter/append.js +15 -75
- package/dist/esm5/processes/adapter/append.js.map +1 -1
- package/dist/esm5/version.js +1 -1
- package/dist/esm5/version.js.map +1 -1
- package/dist/typings/classes/buffer.d.ts +0 -2
- package/dist/typings/classes/state/fetch.d.ts +0 -2
- package/dist/typings/processes/adapter/append.d.ts +1 -4
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* vscroll (https://github.com/dhilt/vscroll) FESM5
|
|
3
|
-
* Version: 1.4.0
|
|
3
|
+
* Version: 1.4.0 (2021-10-01T22:35:14.215Z)
|
|
4
4
|
* Author: Denis Hilt
|
|
5
5
|
* License: MIT
|
|
6
6
|
*/
|
|
@@ -343,7 +343,7 @@ var reactiveConfigStorage = new Map();
|
|
|
343
343
|
|
|
344
344
|
var core = {
|
|
345
345
|
name: 'vscroll',
|
|
346
|
-
version: '1.4.0
|
|
346
|
+
version: '1.4.0'
|
|
347
347
|
};
|
|
348
348
|
|
|
349
349
|
var instanceCount$1 = 0;
|
|
@@ -1656,52 +1656,70 @@ var Update = /** @class */ (function (_super) {
|
|
|
1656
1656
|
return Update;
|
|
1657
1657
|
}(BaseAdapterProcessFactory(AdapterProcess.update)));
|
|
1658
1658
|
|
|
1659
|
-
var
|
|
1660
|
-
__extends(
|
|
1661
|
-
function
|
|
1659
|
+
var Insert = /** @class */ (function (_super) {
|
|
1660
|
+
__extends(Insert, _super);
|
|
1661
|
+
function Insert() {
|
|
1662
1662
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
1663
1663
|
}
|
|
1664
|
-
|
|
1665
|
-
var
|
|
1666
|
-
var params = Append.parseInput(scroller, options, false, process).params;
|
|
1664
|
+
Insert.run = function (scroller, options) {
|
|
1665
|
+
var params = Insert.parseInput(scroller, options).params;
|
|
1667
1666
|
if (!params) {
|
|
1668
1667
|
return;
|
|
1669
1668
|
}
|
|
1670
|
-
var
|
|
1669
|
+
var shouldInsert = Insert.doInsert(scroller, params);
|
|
1671
1670
|
scroller.workflow.call({
|
|
1672
|
-
process:
|
|
1673
|
-
status:
|
|
1671
|
+
process: Insert.process,
|
|
1672
|
+
status: shouldInsert ? ProcessStatus.next : ProcessStatus.done
|
|
1674
1673
|
});
|
|
1675
1674
|
};
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1682
|
-
result = Append.doVirtual(scroller, items, prepend, fixRight);
|
|
1683
|
-
}
|
|
1684
|
-
else {
|
|
1685
|
-
if (!buffer.size) {
|
|
1686
|
-
result = Append.doEmpty(scroller, items, prepend, fixRight);
|
|
1687
|
-
}
|
|
1688
|
-
else {
|
|
1689
|
-
result = Append.doRegular(scroller, items, prepend, fixRight);
|
|
1675
|
+
Insert.doInsert = function (scroller, params) {
|
|
1676
|
+
if (!Insert.insertEmpty(scroller, params)) {
|
|
1677
|
+
if (!Insert.insertInBuffer(scroller, params)) {
|
|
1678
|
+
if (!Insert.insertVirtually(scroller, params)) {
|
|
1679
|
+
return false;
|
|
1680
|
+
}
|
|
1690
1681
|
}
|
|
1691
1682
|
}
|
|
1692
|
-
return
|
|
1683
|
+
return true;
|
|
1693
1684
|
};
|
|
1694
|
-
|
|
1695
|
-
var buffer = scroller.buffer,
|
|
1696
|
-
|
|
1697
|
-
if (!isFinite(buffer[absIndexToken])) {
|
|
1685
|
+
Insert.insertEmpty = function (scroller, params) {
|
|
1686
|
+
var buffer = scroller.buffer, routines = scroller.routines, fetch = scroller.state.fetch;
|
|
1687
|
+
if (buffer.size) {
|
|
1698
1688
|
return false;
|
|
1699
1689
|
}
|
|
1700
|
-
|
|
1701
|
-
|
|
1690
|
+
var beforeIndex = params.beforeIndex, afterIndex = params.afterIndex, items = params.items, decrease = params.decrease;
|
|
1691
|
+
if (!buffer.fillEmpty(items, beforeIndex, afterIndex, !!decrease, function (index, data) { return new Item(index, data, routines); })) {
|
|
1692
|
+
return false;
|
|
1702
1693
|
}
|
|
1703
|
-
|
|
1704
|
-
|
|
1694
|
+
fetch.fill(buffer.items, buffer.startIndex);
|
|
1695
|
+
return true;
|
|
1696
|
+
};
|
|
1697
|
+
Insert.insertInBuffer = function (scroller, params) {
|
|
1698
|
+
var before = params.before, after = params.after, beforeIndex = params.beforeIndex, afterIndex = params.afterIndex, items = params.items, decrease = params.decrease;
|
|
1699
|
+
var indexToInsert = scroller.buffer.getIndexToInsert(before || after, beforeIndex, afterIndex);
|
|
1700
|
+
if (isNaN(indexToInsert)) {
|
|
1701
|
+
return false;
|
|
1702
|
+
}
|
|
1703
|
+
var isBackward = Number.isInteger(beforeIndex) || before;
|
|
1704
|
+
var updateOptions = {
|
|
1705
|
+
predicate: function (_a) {
|
|
1706
|
+
var $index = _a.$index, data = _a.data;
|
|
1707
|
+
if (indexToInsert === $index) {
|
|
1708
|
+
return isBackward ? __spreadArray(__spreadArray([], __read(items)), [data]) : __spreadArray([data], __read(items));
|
|
1709
|
+
}
|
|
1710
|
+
return true;
|
|
1711
|
+
},
|
|
1712
|
+
fixRight: decrease
|
|
1713
|
+
};
|
|
1714
|
+
return Update.doUpdate(scroller, updateOptions);
|
|
1715
|
+
};
|
|
1716
|
+
Insert.insertVirtually = function (scroller, params) {
|
|
1717
|
+
var beforeIndex = params.beforeIndex, afterIndex = params.afterIndex, items = params.items, decrease = params.decrease;
|
|
1718
|
+
var buffer = scroller.buffer, fetch = scroller.state.fetch, viewport = scroller.viewport;
|
|
1719
|
+
var direction = Number.isInteger(beforeIndex) ? Direction.backward : Direction.forward;
|
|
1720
|
+
var indexToInsert = (direction === Direction.backward ? beforeIndex : afterIndex);
|
|
1721
|
+
if (!buffer.insertVirtually(items, indexToInsert, direction, !!decrease)) {
|
|
1722
|
+
return false;
|
|
1705
1723
|
}
|
|
1706
1724
|
var _a = viewport.getEdgeVisibleItem(buffer.items, Direction.backward), index = _a.index, diff = _a.diff;
|
|
1707
1725
|
fetch.firstVisible.index = index;
|
|
@@ -1709,47 +1727,47 @@ var Append = /** @class */ (function (_super) {
|
|
|
1709
1727
|
fetch.simulate = true;
|
|
1710
1728
|
fetch.firstVisible.delta = -buffer.getSizeByIndex(index) + diff;
|
|
1711
1729
|
}
|
|
1712
|
-
logger.log(function () { return "buffer." + [absIndexToken] + " value is set to " + buffer[absIndexToken]; });
|
|
1713
|
-
logger.stat("after virtual " + (prepend ? 'prepend' : 'append'));
|
|
1714
1730
|
return true;
|
|
1715
1731
|
};
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1732
|
+
return Insert;
|
|
1733
|
+
}(BaseAdapterProcessFactory(AdapterProcess.insert)));
|
|
1734
|
+
|
|
1735
|
+
var Append = /** @class */ (function (_super) {
|
|
1736
|
+
__extends(Append, _super);
|
|
1737
|
+
function Append() {
|
|
1738
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
1739
|
+
}
|
|
1740
|
+
Append.run = function (scroller, _a) {
|
|
1741
|
+
var process = _a.process, options = _a.options;
|
|
1742
|
+
var params = Append.parseInput(scroller, options, false, process).params;
|
|
1743
|
+
if (!params) {
|
|
1744
|
+
return;
|
|
1745
|
+
}
|
|
1746
|
+
var shouldAppend = Append.doAppend(scroller, process, params);
|
|
1747
|
+
scroller.workflow.call({
|
|
1748
|
+
process: Append.process,
|
|
1749
|
+
status: shouldAppend ? ProcessStatus.next : ProcessStatus.done
|
|
1728
1750
|
});
|
|
1729
|
-
if (bufferLimit !== buffer[absIndexToken]) {
|
|
1730
|
-
buffer[absIndexToken] = bufferLimit;
|
|
1731
|
-
scroller.logger.log(function () { return "buffer." + absIndexToken + " value is set to " + buffer[absIndexToken]; });
|
|
1732
|
-
}
|
|
1733
|
-
(prepend ? fetch.prepend : fetch.append).call(fetch, newItems);
|
|
1734
|
-
buffer.setItems(newItems);
|
|
1735
|
-
fetch.first.indexBuffer = !isNaN(buffer.firstIndex) ? buffer.firstIndex : index;
|
|
1736
|
-
fetch.last.indexBuffer = !isNaN(buffer.lastIndex) ? buffer.lastIndex : index;
|
|
1737
|
-
fetch.firstVisible.index = startIndex;
|
|
1738
|
-
return true;
|
|
1739
1751
|
};
|
|
1740
|
-
Append.
|
|
1741
|
-
var
|
|
1742
|
-
var
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1752
|
+
Append.doAppend = function (scroller, process, params) {
|
|
1753
|
+
var bof = params.bof, eof = params.eof, increase = params.increase, decrease = params.decrease;
|
|
1754
|
+
var buffer = scroller.buffer;
|
|
1755
|
+
var prepend = process === AdapterProcess.prepend;
|
|
1756
|
+
var opposite = prepend ? !increase : decrease;
|
|
1757
|
+
var beforeIndex, afterIndex, items = params.items;
|
|
1758
|
+
if (prepend) {
|
|
1759
|
+
beforeIndex = (bof ? buffer.absMinIndex : buffer.minIndex) + (!buffer.size ? 1 : 0);
|
|
1760
|
+
items = __spreadArray([], __read(items)).reverse();
|
|
1761
|
+
}
|
|
1762
|
+
else {
|
|
1763
|
+
afterIndex = (eof ? buffer.absMaxIndex : buffer.maxIndex) - (!buffer.size && !opposite ? 1 : 0);
|
|
1764
|
+
}
|
|
1765
|
+
return Insert.doInsert(scroller, {
|
|
1766
|
+
items: items,
|
|
1767
|
+
beforeIndex: beforeIndex,
|
|
1768
|
+
afterIndex: afterIndex,
|
|
1769
|
+
decrease: opposite
|
|
1770
|
+
});
|
|
1753
1771
|
};
|
|
1754
1772
|
return Append;
|
|
1755
1773
|
}(BaseAdapterProcessFactory(AdapterProcess.append)));
|
|
@@ -1918,82 +1936,6 @@ var UserClip = /** @class */ (function (_super) {
|
|
|
1918
1936
|
return UserClip;
|
|
1919
1937
|
}(BaseAdapterProcessFactory(AdapterProcess.clip)));
|
|
1920
1938
|
|
|
1921
|
-
var Insert = /** @class */ (function (_super) {
|
|
1922
|
-
__extends(Insert, _super);
|
|
1923
|
-
function Insert() {
|
|
1924
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
1925
|
-
}
|
|
1926
|
-
Insert.run = function (scroller, options) {
|
|
1927
|
-
var params = Insert.parseInput(scroller, options).params;
|
|
1928
|
-
if (!params) {
|
|
1929
|
-
return;
|
|
1930
|
-
}
|
|
1931
|
-
var shouldInsert = Insert.doInsert(scroller, params);
|
|
1932
|
-
scroller.workflow.call({
|
|
1933
|
-
process: Insert.process,
|
|
1934
|
-
status: shouldInsert ? ProcessStatus.next : ProcessStatus.done
|
|
1935
|
-
});
|
|
1936
|
-
};
|
|
1937
|
-
Insert.doInsert = function (scroller, params) {
|
|
1938
|
-
if (!Insert.insertEmpty(scroller, params)) {
|
|
1939
|
-
if (!Insert.insertInBuffer(scroller, params)) {
|
|
1940
|
-
if (!Insert.insertVirtually(scroller, params)) {
|
|
1941
|
-
return false;
|
|
1942
|
-
}
|
|
1943
|
-
}
|
|
1944
|
-
}
|
|
1945
|
-
return true;
|
|
1946
|
-
};
|
|
1947
|
-
Insert.insertEmpty = function (scroller, params) {
|
|
1948
|
-
var buffer = scroller.buffer, routines = scroller.routines, fetch = scroller.state.fetch;
|
|
1949
|
-
if (buffer.size) {
|
|
1950
|
-
return false;
|
|
1951
|
-
}
|
|
1952
|
-
var beforeIndex = params.beforeIndex, afterIndex = params.afterIndex, items = params.items, decrease = params.decrease;
|
|
1953
|
-
if (!buffer.fillEmpty(items, beforeIndex, afterIndex, !!decrease, function (index, data) { return new Item(index, data, routines); })) {
|
|
1954
|
-
return false;
|
|
1955
|
-
}
|
|
1956
|
-
fetch.fill(buffer.items, buffer.startIndex);
|
|
1957
|
-
return true;
|
|
1958
|
-
};
|
|
1959
|
-
Insert.insertInBuffer = function (scroller, params) {
|
|
1960
|
-
var before = params.before, after = params.after, beforeIndex = params.beforeIndex, afterIndex = params.afterIndex, items = params.items, decrease = params.decrease;
|
|
1961
|
-
var indexToInsert = scroller.buffer.getIndexToInsert(before || after, beforeIndex, afterIndex);
|
|
1962
|
-
if (isNaN(indexToInsert)) {
|
|
1963
|
-
return false;
|
|
1964
|
-
}
|
|
1965
|
-
var isBackward = Number.isInteger(beforeIndex) || before;
|
|
1966
|
-
var updateOptions = {
|
|
1967
|
-
predicate: function (_a) {
|
|
1968
|
-
var $index = _a.$index, data = _a.data;
|
|
1969
|
-
if (indexToInsert === $index) {
|
|
1970
|
-
return isBackward ? __spreadArray(__spreadArray([], __read(items)), [data]) : __spreadArray([data], __read(items));
|
|
1971
|
-
}
|
|
1972
|
-
return true;
|
|
1973
|
-
},
|
|
1974
|
-
fixRight: decrease
|
|
1975
|
-
};
|
|
1976
|
-
return Update.doUpdate(scroller, updateOptions);
|
|
1977
|
-
};
|
|
1978
|
-
Insert.insertVirtually = function (scroller, params) {
|
|
1979
|
-
var beforeIndex = params.beforeIndex, afterIndex = params.afterIndex, items = params.items, decrease = params.decrease;
|
|
1980
|
-
var buffer = scroller.buffer, fetch = scroller.state.fetch, viewport = scroller.viewport;
|
|
1981
|
-
var direction = Number.isInteger(beforeIndex) ? Direction.backward : Direction.forward;
|
|
1982
|
-
var indexToInsert = (direction === Direction.backward ? beforeIndex : afterIndex);
|
|
1983
|
-
if (!buffer.insertVirtually(items, indexToInsert, direction, !!decrease)) {
|
|
1984
|
-
return false;
|
|
1985
|
-
}
|
|
1986
|
-
var _a = viewport.getEdgeVisibleItem(buffer.items, Direction.backward), index = _a.index, diff = _a.diff;
|
|
1987
|
-
fetch.firstVisible.index = index;
|
|
1988
|
-
if (!isNaN(index)) {
|
|
1989
|
-
fetch.simulate = true;
|
|
1990
|
-
fetch.firstVisible.delta = -buffer.getSizeByIndex(index) + diff;
|
|
1991
|
-
}
|
|
1992
|
-
return true;
|
|
1993
|
-
};
|
|
1994
|
-
return Insert;
|
|
1995
|
-
}(BaseAdapterProcessFactory(AdapterProcess.insert)));
|
|
1996
|
-
|
|
1997
1939
|
var Replace = /** @class */ (function (_super) {
|
|
1998
1940
|
__extends(Replace, _super);
|
|
1999
1941
|
function Replace() {
|
|
@@ -4102,22 +4044,6 @@ var Buffer = /** @class */ (function () {
|
|
|
4102
4044
|
this.startIndex = this.absMinIndex;
|
|
4103
4045
|
}
|
|
4104
4046
|
};
|
|
4105
|
-
Buffer.prototype.appendVirtually = function (count, fixRight) {
|
|
4106
|
-
if (fixRight) {
|
|
4107
|
-
this.items.forEach(function (item) { return item.updateIndex(item.$index - count); });
|
|
4108
|
-
this.cache.shiftIndexes(-count);
|
|
4109
|
-
this.items = __spreadArray([], __read(this.items));
|
|
4110
|
-
}
|
|
4111
|
-
this.shiftExtremum(count, fixRight);
|
|
4112
|
-
};
|
|
4113
|
-
Buffer.prototype.prependVirtually = function (count, fixRight) {
|
|
4114
|
-
if (!fixRight) {
|
|
4115
|
-
this.items.forEach(function (item) { return item.updateIndex(item.$index + count); });
|
|
4116
|
-
this.cache.shiftIndexes(count);
|
|
4117
|
-
this.items = __spreadArray([], __read(this.items));
|
|
4118
|
-
}
|
|
4119
|
-
this.shiftExtremum(count, fixRight);
|
|
4120
|
-
};
|
|
4121
4047
|
Buffer.prototype.insertVirtually = function (items, index, direction, fixRight) {
|
|
4122
4048
|
if (!this.checkCall.insertVirtual(items, index, direction)) {
|
|
4123
4049
|
return false;
|
|
@@ -4516,18 +4442,6 @@ var FetchModel = /** @class */ (function () {
|
|
|
4516
4442
|
this.firstVisible.index = start;
|
|
4517
4443
|
this.firstVisible.delta = 0;
|
|
4518
4444
|
};
|
|
4519
|
-
FetchModel.prototype.append = function (items) {
|
|
4520
|
-
this.startSimulate(items);
|
|
4521
|
-
this.last.index = items[items.length - 1].$index;
|
|
4522
|
-
this.first.index = items[0].$index;
|
|
4523
|
-
this.direction = Direction.forward;
|
|
4524
|
-
};
|
|
4525
|
-
FetchModel.prototype.prepend = function (items) {
|
|
4526
|
-
this.startSimulate(items);
|
|
4527
|
-
this.last.index = items[0].$index;
|
|
4528
|
-
this.first.index = items[items.length - 1].$index;
|
|
4529
|
-
this.direction = Direction.backward;
|
|
4530
|
-
};
|
|
4531
4445
|
FetchModel.prototype.check = function (items) {
|
|
4532
4446
|
this.startSimulate(items);
|
|
4533
4447
|
this.last.index = items[0].$index;
|