uicore-ts 1.1.379 → 1.1.381
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/compiledScripts/UINativeScrollView.d.ts +1 -0
- package/compiledScripts/UINativeScrollView.js +8 -4
- package/compiledScripts/UINativeScrollView.js.map +2 -2
- package/compiledScripts/UITableView.js +26 -20
- package/compiledScripts/UITableView.js.map +2 -2
- package/compiledScripts/UIView.d.ts +23 -2
- package/compiledScripts/UIView.js +231 -39
- package/compiledScripts/UIView.js.map +2 -2
- package/package.json +1 -1
- package/scripts/UINativeScrollView.ts +8 -6
- package/scripts/UITableView.ts +38 -25
- package/scripts/UIView.ts +259 -91
|
@@ -3,6 +3,7 @@ import { LooseObject, UIView } from "./UIView";
|
|
|
3
3
|
export declare class UINativeScrollView extends UIView {
|
|
4
4
|
animationDuration: number;
|
|
5
5
|
private _contentOffset?;
|
|
6
|
+
broadcastsPageDidScrollInSubtree: boolean;
|
|
6
7
|
constructor(elementID?: string, viewHTMLElement?: (HTMLElement & LooseObject) | null | undefined);
|
|
7
8
|
didScrollToPosition(offsetPosition: UIPoint): void;
|
|
8
9
|
get scrollsX(): boolean;
|
|
@@ -22,11 +22,13 @@ __export(UINativeScrollView_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(UINativeScrollView_exports);
|
|
24
24
|
var import_UIPoint = require("./UIPoint");
|
|
25
|
+
var import_UIObject = require("./UIObject");
|
|
25
26
|
var import_UIView = require("./UIView");
|
|
26
27
|
class UINativeScrollView extends import_UIView.UIView {
|
|
27
28
|
constructor(elementID, viewHTMLElement) {
|
|
28
29
|
super(elementID, viewHTMLElement);
|
|
29
30
|
this.animationDuration = 0;
|
|
31
|
+
this.broadcastsPageDidScrollInSubtree = import_UIObject.YES;
|
|
30
32
|
this.style.cssText = this.style.cssText + "-webkit-overflow-scrolling: touch;";
|
|
31
33
|
this.style.overflow = "auto";
|
|
32
34
|
this.viewHTMLElement.addEventListener("scroll", () => {
|
|
@@ -41,10 +43,12 @@ class UINativeScrollView extends import_UIView.UIView {
|
|
|
41
43
|
);
|
|
42
44
|
this._contentOffset = new import_UIPoint.UIPoint(this.viewHTMLElement.scrollLeft, this.viewHTMLElement.scrollTop);
|
|
43
45
|
this.didScrollToPosition(this._contentOffset);
|
|
44
|
-
this.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
if (this.broadcastsPageDidScrollInSubtree) {
|
|
47
|
+
this.broadcastEventInSubtree({
|
|
48
|
+
name: import_UIView.UIView.broadcastEventName.PageDidScroll,
|
|
49
|
+
parameters: void 0
|
|
50
|
+
});
|
|
51
|
+
}
|
|
48
52
|
});
|
|
49
53
|
}
|
|
50
54
|
didScrollToPosition(offsetPosition) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../scripts/UINativeScrollView.ts"],
|
|
4
|
-
"sourcesContent": ["import { UIPoint } from \"./UIPoint\"\nimport { LooseObject, UIView } from \"./UIView\"\n\n\nexport class UINativeScrollView extends UIView {\n \n animationDuration = 0\n private _contentOffset?: UIPoint\n \n constructor(elementID?: string, viewHTMLElement?: (HTMLElement & LooseObject) | null | undefined) {\n \n super(elementID, viewHTMLElement)\n \n this.style.cssText = this.style.cssText + \"-webkit-overflow-scrolling: touch;\"\n this.style.overflow = \"auto\"\n \n this.viewHTMLElement.addEventListener(\"scroll\", () => {\n \n this.resizingHandles.forEach(\n handle => handle.style.transform = (\"\" + handle.style.transform).replace(\n new RegExp(\"translateX\\\\(([^)]+)\\\\)\"),\n \"\"\n ).replace(\n new RegExp(\"translateY\\\\(([^)]+)\\\\)\"),\n \"\"\n ) + \"translateX(\" + this.viewHTMLElement.scrollLeft + \"px)\" + \" translateY(\" + this.viewHTMLElement.scrollTop + \"px)\"\n )\n \n this._contentOffset = new UIPoint(this.viewHTMLElement.scrollLeft, this.viewHTMLElement.scrollTop)\n \n this.didScrollToPosition(this._contentOffset)\n \n this.broadcastEventInSubtree({\n
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAwB;AACxB,oBAAoC;AAG7B,MAAM,2BAA2B,qBAAO;AAAA,
|
|
4
|
+
"sourcesContent": ["import { UIPoint } from \"./UIPoint\"\nimport { YES } from \"./UIObject\"\nimport { LooseObject, UIView } from \"./UIView\"\n\n\nexport class UINativeScrollView extends UIView {\n \n animationDuration = 0\n private _contentOffset?: UIPoint\n broadcastsPageDidScrollInSubtree = YES\n \n constructor(elementID?: string, viewHTMLElement?: (HTMLElement & LooseObject) | null | undefined) {\n \n super(elementID, viewHTMLElement)\n \n this.style.cssText = this.style.cssText + \"-webkit-overflow-scrolling: touch;\"\n this.style.overflow = \"auto\"\n \n this.viewHTMLElement.addEventListener(\"scroll\", () => {\n \n this.resizingHandles.forEach(\n handle => handle.style.transform = (\"\" + handle.style.transform).replace(\n new RegExp(\"translateX\\\\(([^)]+)\\\\)\"),\n \"\"\n ).replace(\n new RegExp(\"translateY\\\\(([^)]+)\\\\)\"),\n \"\"\n ) + \"translateX(\" + this.viewHTMLElement.scrollLeft + \"px)\" + \" translateY(\" + this.viewHTMLElement.scrollTop + \"px)\"\n )\n \n this._contentOffset = new UIPoint(this.viewHTMLElement.scrollLeft, this.viewHTMLElement.scrollTop)\n \n this.didScrollToPosition(this._contentOffset)\n \n if (this.broadcastsPageDidScrollInSubtree) {\n this.broadcastEventInSubtree({\n name: UIView.broadcastEventName.PageDidScroll,\n parameters: undefined\n })\n }\n \n })\n \n }\n \n \n didScrollToPosition(offsetPosition: UIPoint) {\n \n \n }\n \n \n get scrollsX() {\n const result = (this.style.overflowX == \"scroll\")\n return result\n }\n \n set scrollsX(scrolls: boolean) {\n if (scrolls) {\n this.style.overflowX = \"scroll\"\n }\n else {\n this.style.overflowX = \"hidden\"\n }\n }\n \n \n get scrollsY() {\n const result = (this.style.overflowY == \"scroll\")\n return result\n }\n \n set scrollsY(scrolls: boolean) {\n if (scrolls) {\n this.style.overflowY = \"scroll\"\n }\n else {\n this.style.overflowY = \"hidden\"\n }\n }\n \n \n get contentOffset() {\n if (!this._contentOffset) {\n this._contentOffset = new UIPoint(this.viewHTMLElement.scrollLeft, this.viewHTMLElement.scrollTop)\n }\n return this._contentOffset\n }\n \n \n set contentOffset(offsetPoint: UIPoint) {\n \n this._contentOffset = offsetPoint.copy()\n \n if (this.animationDuration) {\n \n this.scrollXTo(this.viewHTMLElement, offsetPoint.x, this.animationDuration)\n this.scrollYTo(this.viewHTMLElement, offsetPoint.y, this.animationDuration)\n \n return\n \n }\n \n this.viewHTMLElement.scrollLeft = offsetPoint.x\n this.viewHTMLElement.scrollTop = offsetPoint.y\n \n }\n \n \n scrollToBottom() {\n \n this.contentOffset = new UIPoint(this.contentOffset.x, this.scrollSize.height - this.frame.height)\n \n }\n \n scrollToTop() {\n \n this.contentOffset = new UIPoint(this.contentOffset.x, 0)\n \n }\n \n get isScrolledToBottom() {\n \n return this.contentOffset.isEqualTo(new UIPoint(this.contentOffset.x, this.scrollSize.height -\n this.frame.height))\n \n }\n \n get isScrolledToTop() {\n \n return this.contentOffset.isEqualTo(new UIPoint(this.contentOffset.x, 0))\n \n }\n \n \n scrollYTo(element: HTMLElement & LooseObject, to: number, duration: number) {\n \n duration = duration * 1000\n \n const start = element.scrollTop\n const change = to - start\n const increment = 10\n \n const animateScroll = (elapsedTime: number) => {\n elapsedTime += increment\n const position = this.easeInOut(elapsedTime, start, change, duration)\n element.scrollTop = position\n if (elapsedTime < duration) {\n setTimeout(function () {\n animateScroll(elapsedTime)\n }, increment)\n }\n }\n \n animateScroll(0)\n }\n \n scrollXTo(element: HTMLElement & LooseObject, to: number, duration: number) {\n \n duration = duration * 1000\n \n const start = element.scrollTop\n const change = to - start\n const increment = 10\n \n const animateScroll = (elapsedTime: number) => {\n elapsedTime += increment\n const position = this.easeInOut(elapsedTime, start, change, duration)\n element.scrollLeft = position\n if (elapsedTime < duration) {\n setTimeout(function () {\n animateScroll(elapsedTime)\n }, increment)\n }\n }\n \n animateScroll(0)\n }\n \n easeInOut(currentTime: number, start: number, change: number, duration: number) {\n currentTime /= duration / 2\n if (currentTime < 1) {\n return change / 2 * currentTime * currentTime + start\n }\n currentTime -= 1\n return -change / 2 * (currentTime * (currentTime - 2) - 1) + start\n }\n \n \n}\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -92,6 +92,7 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
92
92
|
this._fullHeightView.userInteractionEnabled = import_UIObject.NO;
|
|
93
93
|
this.addSubview(this._fullHeightView);
|
|
94
94
|
this.style.overflowAnchor = "none";
|
|
95
|
+
this.broadcastsPageDidScrollInSubtree = import_UIObject.NO;
|
|
95
96
|
this.scrollsX = import_UIObject.NO;
|
|
96
97
|
this._setupViewportScrollAndResizeHandlersIfNeeded();
|
|
97
98
|
this._setupGridAccessibility();
|
|
@@ -282,7 +283,7 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
282
283
|
const previousCellIndex = this._keyboardFocusedCellIndex;
|
|
283
284
|
if (rowIndex >= 0 && rowIndex !== previousRowIndex) {
|
|
284
285
|
const row = this.visibleRowWithIndex(rowIndex);
|
|
285
|
-
if (row
|
|
286
|
+
if (row == null ? void 0 : row.firstButtonCellIndex) {
|
|
286
287
|
cellIndex = row.firstButtonCellIndex();
|
|
287
288
|
}
|
|
288
289
|
}
|
|
@@ -315,19 +316,20 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
315
316
|
return;
|
|
316
317
|
}
|
|
317
318
|
const row = this.visibleRowWithIndex(rowIndex);
|
|
318
|
-
if (row
|
|
319
|
+
if (row == null ? void 0 : row.setKeyboardFocusedCellIndex) {
|
|
319
320
|
row.setKeyboardFocusedCellIndex(void 0);
|
|
320
321
|
}
|
|
321
322
|
}
|
|
322
323
|
_applyKeyboardFocusToVisibleRows(clearAll = false) {
|
|
323
324
|
this._visibleRows.forEach((row) => {
|
|
324
|
-
|
|
325
|
+
const keyboardNavigableRow = row;
|
|
326
|
+
if (!keyboardNavigableRow.setKeyboardFocusedCellIndex) {
|
|
325
327
|
return;
|
|
326
328
|
}
|
|
327
|
-
if (clearAll ||
|
|
328
|
-
|
|
329
|
+
if (clearAll || keyboardNavigableRow._UITableViewRowIndex !== this._keyboardFocusedRowIndex) {
|
|
330
|
+
keyboardNavigableRow.setKeyboardFocusedCellIndex(void 0);
|
|
329
331
|
} else {
|
|
330
|
-
|
|
332
|
+
keyboardNavigableRow.setKeyboardFocusedCellIndex(this._keyboardFocusedCellIndex);
|
|
331
333
|
}
|
|
332
334
|
});
|
|
333
335
|
}
|
|
@@ -802,7 +804,7 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
802
804
|
}
|
|
803
805
|
this._reconcileVisibleRowsWithIndexes(visibleIndexes);
|
|
804
806
|
this._layoutAllRows();
|
|
805
|
-
if (Math.abs(
|
|
807
|
+
if (Math.abs(viewportState.scrollTop - workingScrollTop) >= 0.01) {
|
|
806
808
|
this.viewHTMLElement.scrollTop = workingScrollTop;
|
|
807
809
|
}
|
|
808
810
|
this._layoutVisibleRowSubtrees();
|
|
@@ -863,13 +865,17 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
863
865
|
this._isPreparingRowsForMeasurement = import_UIObject.YES;
|
|
864
866
|
try {
|
|
865
867
|
this._visibleRows.forEach((row) => {
|
|
866
|
-
|
|
868
|
+
const shouldLayoutRowSubtree = row._UITableViewRequiresLayout || row.needsLayout;
|
|
869
|
+
if (shouldLayoutRowSubtree) {
|
|
867
870
|
row.setNeedsLayout();
|
|
871
|
+
row.forEachViewInSubtree((view) => {
|
|
872
|
+
const frame = view.isVirtualLayouting ? view._frameForVirtualLayouting : view._frame;
|
|
873
|
+
if (frame) {
|
|
874
|
+
view._lastReportedHeight = frame.height.integerValue;
|
|
875
|
+
}
|
|
876
|
+
view.layoutIfNeeded();
|
|
877
|
+
});
|
|
868
878
|
}
|
|
869
|
-
row.forEachViewInSubtree((view) => {
|
|
870
|
-
view._lastReportedHeight = view.frame.height.integerValue;
|
|
871
|
-
view.layoutIfNeeded();
|
|
872
|
-
});
|
|
873
879
|
row._UITableViewRequiresLayout = import_UIObject.NO;
|
|
874
880
|
if ((0, import_UIObject.IS_DEFINED)(row._UITableViewWasHiddenBeforeLayout)) {
|
|
875
881
|
row.hidden = row._UITableViewWasHiddenBeforeLayout;
|
|
@@ -933,7 +939,7 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
933
939
|
view._UITableViewRequiresLayout = import_UIObject.YES;
|
|
934
940
|
this._visibleRows.push(view);
|
|
935
941
|
if (view.superview !== this) {
|
|
936
|
-
this.addSubview(view);
|
|
942
|
+
this.addSubview(view, void 0, import_UIObject.NO);
|
|
937
943
|
}
|
|
938
944
|
view.tabIndex = -1;
|
|
939
945
|
view.forEachViewInSubtree((subview) => {
|
|
@@ -1021,9 +1027,7 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
1021
1027
|
}
|
|
1022
1028
|
didScrollToPosition(offsetPosition) {
|
|
1023
1029
|
super.didScrollToPosition(offsetPosition);
|
|
1024
|
-
|
|
1025
|
-
view._isPointerValid = import_UIObject.NO;
|
|
1026
|
-
});
|
|
1030
|
+
import_UIView.UIView._invalidateViewsWithValidPointers();
|
|
1027
1031
|
this._scheduleDrawVisibleRows();
|
|
1028
1032
|
}
|
|
1029
1033
|
willMoveToSuperview(superview) {
|
|
@@ -1105,14 +1109,16 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
1105
1109
|
super.clearIntrinsicSizeCache();
|
|
1106
1110
|
}
|
|
1107
1111
|
_layoutAllRows(positions = this._rowPositions) {
|
|
1112
|
+
var _a;
|
|
1108
1113
|
const rowBounds = this.contentBounds.rectangleWithInsets(this.sidePadding, this.sidePadding, 0, 0);
|
|
1109
1114
|
const sortedRows = this._visibleRows.sort(
|
|
1110
1115
|
(rowA, rowB) => rowA._UITableViewRowIndex - rowB._UITableViewRowIndex
|
|
1111
1116
|
);
|
|
1112
1117
|
this._isAssigningRowFrames = import_UIObject.YES;
|
|
1113
1118
|
try {
|
|
1114
|
-
|
|
1115
|
-
|
|
1119
|
+
let nextSiblingElement = this._fullHeightView.viewHTMLElement;
|
|
1120
|
+
for (let index = sortedRows.length - 1; index >= 0; index--) {
|
|
1121
|
+
const row = sortedRows[index];
|
|
1116
1122
|
const frame = rowBounds.copy();
|
|
1117
1123
|
const positionObject = this._rowPositionWithIndex(row._UITableViewRowIndex, positions);
|
|
1118
1124
|
frame.min.y = positionObject.topY;
|
|
@@ -1120,11 +1126,11 @@ class UITableView extends import_UINativeScrollView.UINativeScrollView {
|
|
|
1120
1126
|
row.frame = frame;
|
|
1121
1127
|
row._lastReportedHeight = frame.height.integerValue;
|
|
1122
1128
|
row.viewHTMLElement.setAttribute("aria-rowindex", String(((_a = row._UITableViewRowIndex) != null ? _a : 0) + 1));
|
|
1123
|
-
const nextSiblingElement = (_c = (_b = sortedRows[index + 1]) == null ? void 0 : _b.viewHTMLElement) != null ? _c : this._fullHeightView.viewHTMLElement;
|
|
1124
1129
|
if (row.viewHTMLElement.nextSibling !== nextSiblingElement) {
|
|
1125
1130
|
this.viewHTMLElement.insertBefore(row.viewHTMLElement, nextSiblingElement);
|
|
1126
1131
|
}
|
|
1127
|
-
|
|
1132
|
+
nextSiblingElement = row.viewHTMLElement;
|
|
1133
|
+
}
|
|
1128
1134
|
} finally {
|
|
1129
1135
|
this._isAssigningRowFrames = import_UIObject.NO;
|
|
1130
1136
|
}
|