@triniwiz/nativescript-masonkit 1.0.0-beta.119 → 1.0.0-beta.120
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/DOCS.md +43 -0
- package/button/index.android.js +1 -0
- package/button/index.android.js.map +1 -1
- package/button/index.ios.js +1 -0
- package/button/index.ios.js.map +1 -1
- package/button/index.windows.js +13 -2
- package/button/index.windows.js.map +1 -1
- package/common.d.ts +41 -0
- package/common.js +162 -1
- package/common.js.map +1 -1
- package/foreign-layout.d.ts +4 -0
- package/foreign-layout.js +117 -0
- package/foreign-layout.js.map +1 -0
- package/index.d.ts +34 -0
- package/li/index.android.js +1 -0
- package/li/index.android.js.map +1 -1
- package/li/index.ios.js +1 -0
- package/li/index.ios.js.map +1 -1
- package/li/index.windows.js +4 -1
- package/li/index.windows.js.map +1 -1
- package/list/index.windows.js +4 -1
- package/list/index.windows.js.map +1 -1
- package/package.json +1 -1
- package/platforms/android/masonkit-release.aar +0 -0
- package/platforms/ios/Mason.xcframework/Info.plist +7 -7
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/Mason-Swift.h +9 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.abi.json +14208 -4349
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.private.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8952 -8902
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/Mason-Swift.h +18 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.abi.json +14208 -4349
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.abi.json +14208 -4349
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/_CodeSignature/CodeResources +26 -26
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +2 -2
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8946 -8896
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/x86_64/Mason.yml +8528 -8483
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Headers/Mason-Swift.h +9 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-xros.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.abi.json +14208 -4349
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.private.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8442 -8392
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Headers/Mason-Swift.h +9 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-xros-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.abi.json +14208 -4349
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.private.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.swiftinterface +20 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/_CodeSignature/CodeResources +14 -14
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8441 -8391
- package/platforms/windows/arm64/NativeScript.Mason.dll +0 -0
- package/platforms/windows/arm64/NativeScript.Mason.winmd +0 -0
- package/platforms/windows/x64/NativeScript.Mason.dll +0 -0
- package/platforms/windows/x64/NativeScript.Mason.winmd +0 -0
- package/properties.js +33 -4
- package/properties.js.map +1 -1
- package/scroll/index.android.js +1 -0
- package/scroll/index.android.js.map +1 -1
- package/scroll/index.ios.js +1 -0
- package/scroll/index.ios.js.map +1 -1
- package/scroll/index.windows.js +4 -1
- package/scroll/index.windows.js.map +1 -1
- package/style.d.ts +5 -0
- package/style.js +89 -19
- package/style.js.map +1 -1
- package/text/index.android.js +2 -0
- package/text/index.android.js.map +1 -1
- package/text/index.ios.js +1 -0
- package/text/index.ios.js.map +1 -1
- package/text/index.windows.js +3 -2
- package/text/index.windows.js.map +1 -1
- package/typings/android.d.ts +22 -0
- package/typings/objc!ObjectiveC.d.ts +16 -0
- package/typings/windows.d.ts +13 -0
- package/view/index.android.js +1 -0
- package/view/index.android.js.map +1 -1
- package/view/index.ios.js +1 -0
- package/view/index.ios.js.map +1 -1
- package/view/index.windows.js +4 -1
- package/view/index.windows.js.map +1 -1
package/DOCS.md
CHANGED
|
@@ -722,6 +722,8 @@ MasonKit components support DOM-like event handling.
|
|
|
722
722
|
|-------|----------|-------------|
|
|
723
723
|
| `input` | `Input` | When the input value changes |
|
|
724
724
|
| `change` | `Input` | When the input value is committed |
|
|
725
|
+
| `scroll` | Any scrolling element | When its scroll offset changed, at most once per frame. Doesn't bubble |
|
|
726
|
+
| `scrollend` | Any scrolling element | When a drag, momentum or smooth scroll that moved it has stopped. Doesn't bubble |
|
|
725
727
|
|
|
726
728
|
### Event Class
|
|
727
729
|
|
|
@@ -771,6 +773,47 @@ input.addEventListener('input', (event) => {
|
|
|
771
773
|
});
|
|
772
774
|
```
|
|
773
775
|
|
|
776
|
+
### Scrolling
|
|
777
|
+
|
|
778
|
+
Every element has the browser's scroll properties and methods, in CSS pixels. Nothing native
|
|
779
|
+
runs until a property is read or a method is called, and `scroll` / `scrollend` are only raised
|
|
780
|
+
for an element that has a listener for them, so elements that don't use them cost nothing extra.
|
|
781
|
+
|
|
782
|
+
| Member | Description |
|
|
783
|
+
|--------|-------------|
|
|
784
|
+
| `scrollTop`, `scrollLeft` | Scroll offset. Setting it scrolls, clamped to the scroll range |
|
|
785
|
+
| `scrollWidth`, `scrollHeight` | Size of the content, at least the client size. At the end, `scrollTop + clientHeight === scrollHeight` |
|
|
786
|
+
| `clientWidth`, `clientHeight` | Padding box size (scrollbars overlay, so take no room) |
|
|
787
|
+
| `scrollTo(x, y)` / `scrollTo({ left, top, behavior })` | Scroll to a position; `behavior: 'smooth'` animates. `scroll()` is the same |
|
|
788
|
+
| `scrollBy(dx, dy)` / `scrollBy({ left, top, behavior })` | Scroll by a delta |
|
|
789
|
+
| `scrollIntoView(alignToTop?)` / `scrollIntoView({ block, inline, behavior })` | Scroll the containers above this element so it shows |
|
|
790
|
+
|
|
791
|
+
Reading a size, or scrolling, runs a pending layout pass first, as a browser does, so this works
|
|
792
|
+
right after adding children:
|
|
793
|
+
|
|
794
|
+
```typescript
|
|
795
|
+
list.addChild(row);
|
|
796
|
+
list.scrollTop = list.scrollHeight;
|
|
797
|
+
|
|
798
|
+
list.addEventListener('scroll', () => {
|
|
799
|
+
const atEnd = list.scrollTop + list.clientHeight >= list.scrollHeight - 1;
|
|
800
|
+
if (atEnd) loadMore();
|
|
801
|
+
});
|
|
802
|
+
```
|
|
803
|
+
|
|
804
|
+
Only elements that scroll (`overflow: scroll | auto`, and `<scroll>`) move; `overflow: hidden`
|
|
805
|
+
can't be scrolled from code.
|
|
806
|
+
|
|
807
|
+
Before an element's first layout:
|
|
808
|
+
|
|
809
|
+
- `scrollTo`, `scrollTop = …` and friends are kept and applied, clamped, right after its first
|
|
810
|
+
layout (a later call replaces an earlier one, per axis). The move raises `scroll` as usual.
|
|
811
|
+
- Offsets read the current position (0) and sizes read 0 until that layout has run.
|
|
812
|
+
|
|
813
|
+
A new `scrollTo` cancels a running smooth scroll and starts from the current position; a touch
|
|
814
|
+
cancels it too. A `scroll` handler reads the position from the element, e.g.
|
|
815
|
+
`event.target.scrollTop`.
|
|
816
|
+
|
|
774
817
|
---
|
|
775
818
|
|
|
776
819
|
## Types Reference
|
package/button/index.android.js
CHANGED
|
@@ -44,6 +44,7 @@ let Button = class Button extends ButtonBase {
|
|
|
44
44
|
child[isTextChild_] = true;
|
|
45
45
|
const index = atIndex <= -1 ? this._children.indexOf(child) : atIndex;
|
|
46
46
|
nativeView.addChildAt(child.nativeViewProtected, index);
|
|
47
|
+
this._masonAdoptForeign(child);
|
|
47
48
|
}
|
|
48
49
|
return false;
|
|
49
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.android.js","sourceRoot":"","sources":["../../../../packages/nativescript-masonkit/button/index.android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAY,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG3E,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,UAAU;IAIpC;QACE,KAAK,EAAE,CAAC;QAHV,aAAQ,GAAG,KAAK,CAAC;QAIf,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK;QACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC5F,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAU,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAA2C,CAAC;IACjE,CAAC;IAED,6DAA6D;IAC7D,aAAa;IACb,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,YAAY;QACd,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAK;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,KAA+C,CAAC;QACxE,IAAI,UAAU,EAAE,CAAC;YACf,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,aAAa;IACN,0BAA0B,CAAC,KAAiB,EAAE,OAAO,GAAG,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,KAA+C,CAAC;QACxE,IAAI,UAAU,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAC5C,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;YAC3B,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACtE,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAc,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.android.js","sourceRoot":"","sources":["../../../../packages/nativescript-masonkit/button/index.android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAY,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG3E,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,UAAU;IAIpC;QACE,KAAK,EAAE,CAAC;QAHV,aAAQ,GAAG,KAAK,CAAC;QAIf,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK;QACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC5F,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAU,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAA2C,CAAC;IACjE,CAAC;IAED,6DAA6D;IAC7D,aAAa;IACb,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,YAAY;QACd,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAK;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,KAA+C,CAAC;QACxE,IAAI,UAAU,EAAE,CAAC;YACf,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,aAAa;IACN,0BAA0B,CAAC,KAAiB,EAAE,OAAO,GAAG,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,KAA+C,CAAC;QACxE,IAAI,UAAU,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAC5C,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;YAC3B,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACtE,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAc,CAAC,CAAC;YACjE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,+BAA+B,CAAC,IAAc;QAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;QAC3B,KAAK,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;CACF,CAAA;AA3DY,MAAM;IADlB,OAAO,CAAC,QAAQ,CAAC;;GACL,MAAM,CA2DlB"}
|
package/button/index.ios.js
CHANGED
|
@@ -147,6 +147,7 @@ let Button = class Button extends ButtonBase {
|
|
|
147
147
|
child[isTextChild_] = true;
|
|
148
148
|
const index = atIndex <= -1 ? this._children.indexOf(child) : atIndex;
|
|
149
149
|
nativeView.addViewAt(child.nativeViewProtected, index);
|
|
150
|
+
this._masonAdoptForeign(child);
|
|
150
151
|
return true;
|
|
151
152
|
}
|
|
152
153
|
return false;
|
package/button/index.ios.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../packages/nativescript-masonkit/button/index.ios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAY,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG3E,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,UAAU;IAGpC;QACE,KAAK,EAAE,CAAC;QAFV,aAAQ,GAAG,KAAK,CAAC;QAGf,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK;QACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAU,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAyB,CAAC;IAC/C,CAAC;IAED,6DAA6D;IAC7D,aAAa;IACb,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,YAAY;QACd,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAK;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9B,IAAI,UAAU,EAAE,CAAC;YACf,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC;QACjC,CAAC;IACH,CAAC;IAEM,QAAQ,CAAC,IAAY,EAAE,GAAW,EAAE,KAAa,EAAE,MAAc;QACtE,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAEzC,OAAO;QACP,aAAa;QACb,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,QAAQ,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACnB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACnB,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;YACvB,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;YAExB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACpE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACpE,IAAI,CAAC,YAAY,CAAC,IAAa,EAAE,KAAc,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YAE9D,KAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC,EAAE,CAAC;QACN,CAAC;IACH,CAAC;IAEM,SAAS,CAAC,gBAAwB,EAAE,iBAAyB;QAClE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QAE9B,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;YACpE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;YACpE,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;YACtE,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;YAEtE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACxB,MAAM,aAAa,GAAG,SAAS,KAAK,KAAK,CAAC,MAAM,CAAC,WAAW,IAAI,UAAU,KAAK,KAAK,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,UAAU,KAAK,CAAC,CAAC,CAAC;gBAEhO,uEAAuE;gBACvE,2DAA2D;gBAC3D,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,OAAO;oBACP,aAAa;oBACb,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;oBACtD,8DAA8D;oBAC9D,aAAa;oBACb,IAAI,CAAC,GAAG,CAAC,oCAAoC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;oBACrE,mCAAmC;oBAEnC,OAAO;oBACP,aAAa;oBACb,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;oBAE5C,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC3E,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAE5E,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;qBAAM,CAAC;oBACN,IAAI,KAAK,CAAC;oBACV,QAAQ,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;wBAC1B,KAAK,QAAQ,CAAC,CAAC,CAAC;4BACd,MAAM,MAAM,GAAG,IAAI,CAAC,MAAa,CAAC;4BAClC,MAAM,EAAE,GAAG,MAAM,EAAE,gBAAgB,EAAE,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;4BACpH,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;4BACpC,MAAM;wBACR,CAAC;wBACD,KAAK,QAAQ;4BACX,KAAK,GAAG,CAAC,CAAC,CAAC;4BACX,MAAM;wBACR,KAAK,QAAQ;4BACX,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAChD,MAAM;oBACV,CAAC;oBAED,IAAI,MAAM,CAAC;oBACX,QAAQ,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;wBAC3B,KAAK,QAAQ,CAAC,CAAC,CAAC;4BACd,MAAM,MAAM,GAAG,IAAI,CAAC,MAAa,CAAC;4BAClC,MAAM,EAAE,GAAG,MAAM,EAAE,iBAAiB,EAAE,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;4BACtH,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;4BACtC,MAAM;wBACR,CAAC;wBAED,KAAK,QAAQ;4BACX,MAAM,GAAG,CAAC,CAAC,CAAC;4BACZ,MAAM;wBACR,KAAK,QAAQ;4BACX,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;4BAClD,MAAM;oBACV,CAAC;oBAED,OAAO;oBACP,aAAa;oBACb,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBAE9C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;oBAE5C,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC3E,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAE5E,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO;gBACP,aAAa;gBACb,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;gBAC9C,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC3E,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAE5E,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC7B,IAAI,CAAC,YAAY,CAAC,IAAa,EAAE,KAAK,EAAE,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBAC3G,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,aAAa;IACN,0BAA0B,CAAC,KAAqC,EAAE,OAAO,GAAG,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QAE9B,IAAI,UAAU,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAC5C,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;YAE3B,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACtE,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,+BAA+B,CAAC,IAAc;QAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;QAC3B,KAAK,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,mBAAmB,CAAC,UAAe,EAAE,KAAa;QAChD,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;IAC3B,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../packages/nativescript-masonkit/button/index.ios.ts"],"names":[],"mappings":"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"}
|
package/button/index.windows.js
CHANGED
|
@@ -2,7 +2,7 @@ import { CSSType, GestureTypes } from '@nativescript/core';
|
|
|
2
2
|
import { ButtonBase, textContentProperty } from '../common';
|
|
3
3
|
import { Style } from '../style';
|
|
4
4
|
import { Tree } from '../tree';
|
|
5
|
-
import { style_, isText_, isMasonView_, native_ } from '../symbols';
|
|
5
|
+
import { style_, isText_, isMasonView_, native_, runMember_ } from '../symbols';
|
|
6
6
|
import { removeNativeChild } from '../windows-panel-helpers';
|
|
7
7
|
let Button = class Button extends ButtonBase {
|
|
8
8
|
constructor() {
|
|
@@ -70,7 +70,13 @@ let Button = class Button extends ButtonBase {
|
|
|
70
70
|
child._isMasonChild = true;
|
|
71
71
|
return true;
|
|
72
72
|
}
|
|
73
|
-
|
|
73
|
+
if (!(child?.[isMasonView_] ? child._view : child?.nativeViewProtected))
|
|
74
|
+
return super._addViewToNativeVisualTree(child, atIndex);
|
|
75
|
+
this._view.SetInlineBox(child.nativeViewProtected ?? child._view, this._windowsNativeIndexOf(child, atIndex));
|
|
76
|
+
child[runMember_] = 'box';
|
|
77
|
+
child._isMasonChild = true;
|
|
78
|
+
this._masonAdoptForeign(child);
|
|
79
|
+
return true;
|
|
74
80
|
}
|
|
75
81
|
// @ts-ignore
|
|
76
82
|
_removeViewFromNativeVisualTree(child) {
|
|
@@ -78,6 +84,11 @@ let Button = class Button extends ButtonBase {
|
|
|
78
84
|
this._view.RemoveInlineText(child._view);
|
|
79
85
|
child._isMasonChild = false;
|
|
80
86
|
}
|
|
87
|
+
else if (child?.[runMember_] === 'box') {
|
|
88
|
+
this._view.RemoveInlineBox(child.nativeViewProtected ?? child._view);
|
|
89
|
+
child[runMember_] = undefined;
|
|
90
|
+
child._isMasonChild = false;
|
|
91
|
+
}
|
|
81
92
|
else {
|
|
82
93
|
removeNativeChild(this._view, child);
|
|
83
94
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.windows.js","sourceRoot":"","sources":["../../../../packages/nativescript-masonkit/button/index.windows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.windows.js","sourceRoot":"","sources":["../../../../packages/nativescript-masonkit/button/index.windows.ts"],"names":[],"mappings":"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"}
|
package/common.d.ts
CHANGED
|
@@ -9,6 +9,18 @@ import { isMasonView_, isTextChild_, isText_, native_, pseudoStyles_, eventType_
|
|
|
9
9
|
import { TextNode } from './text-node';
|
|
10
10
|
export interface MasonChild extends ViewBase {
|
|
11
11
|
}
|
|
12
|
+
export type ScrollBehavior = 'auto' | 'instant' | 'smooth';
|
|
13
|
+
export type ScrollLogicalPosition = 'start' | 'center' | 'end' | 'nearest';
|
|
14
|
+
export interface ScrollToOptions {
|
|
15
|
+
left?: number;
|
|
16
|
+
top?: number;
|
|
17
|
+
behavior?: ScrollBehavior;
|
|
18
|
+
}
|
|
19
|
+
export interface ScrollIntoViewOptions {
|
|
20
|
+
block?: ScrollLogicalPosition;
|
|
21
|
+
inline?: ScrollLogicalPosition;
|
|
22
|
+
behavior?: ScrollBehavior;
|
|
23
|
+
}
|
|
12
24
|
export declare const textContentProperty: Property<ViewBase, string>;
|
|
13
25
|
declare module '@nativescript/core/ui/styling/style' {
|
|
14
26
|
interface Style {
|
|
@@ -187,6 +199,8 @@ export declare class ViewBase extends CustomLayoutView implements AddChildFromBu
|
|
|
187
199
|
_tearDownUI(force?: boolean): void;
|
|
188
200
|
_setupUI(context?: any, atIndex?: number, parentIsLoaded?: boolean): void;
|
|
189
201
|
_removeViewFromNativeVisualTree(child: any): void;
|
|
202
|
+
/** Mirror a plain child's CSS layout into its Mason leaf; containers call this after the native insert. */
|
|
203
|
+
_masonAdoptForeign(child: any): void;
|
|
190
204
|
private _masonFinishTeardown;
|
|
191
205
|
private static _drainTeardowns;
|
|
192
206
|
/**
|
|
@@ -232,6 +246,28 @@ export declare class ViewBase extends CustomLayoutView implements AddChildFromBu
|
|
|
232
246
|
* `x` and `y` are CSS pixels (dips) on every platform, the unit touch events report.
|
|
233
247
|
*/
|
|
234
248
|
elementFromPoint(x: number, y: number): ViewBase | NSViewBase | null;
|
|
249
|
+
/** Vertical scroll offset; setting it scrolls, clamped to the scroll range. */
|
|
250
|
+
get scrollTop(): number;
|
|
251
|
+
set scrollTop(value: number);
|
|
252
|
+
/** Horizontal scroll offset; setting it scrolls, clamped to the scroll range. */
|
|
253
|
+
get scrollLeft(): number;
|
|
254
|
+
set scrollLeft(value: number);
|
|
255
|
+
/** Content width, at least `clientWidth`. */
|
|
256
|
+
get scrollWidth(): number;
|
|
257
|
+
/** Content height, at least `clientHeight`. */
|
|
258
|
+
get scrollHeight(): number;
|
|
259
|
+
/** Padding box width. */
|
|
260
|
+
get clientWidth(): number;
|
|
261
|
+
/** Padding box height. */
|
|
262
|
+
get clientHeight(): number;
|
|
263
|
+
scrollTo(options?: ScrollToOptions): void;
|
|
264
|
+
scrollTo(x: number, y: number): void;
|
|
265
|
+
scroll(options?: ScrollToOptions): void;
|
|
266
|
+
scroll(x: number, y: number): void;
|
|
267
|
+
scrollBy(options?: ScrollToOptions): void;
|
|
268
|
+
scrollBy(x: number, y: number): void;
|
|
269
|
+
/** Scrolls the scroll containers above this element so it's visible. */
|
|
270
|
+
scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;
|
|
235
271
|
_pendingEventsRegistration: Array<{
|
|
236
272
|
arg: string;
|
|
237
273
|
callback: any;
|
|
@@ -242,6 +278,11 @@ export declare class ViewBase extends CustomLayoutView implements AddChildFromBu
|
|
|
242
278
|
[touchAction_]: number | undefined;
|
|
243
279
|
/** Hands `touch-action` to the native node, where the scroll views read it. */
|
|
244
280
|
_applyTouchAction(): void;
|
|
281
|
+
_masonPendingScroll: {
|
|
282
|
+
left: number;
|
|
283
|
+
top: number;
|
|
284
|
+
smooth: boolean;
|
|
285
|
+
} | undefined;
|
|
245
286
|
initNativeView(): void;
|
|
246
287
|
_setNativeViewFrame(nativeView: any, frame: CGRect): void;
|
|
247
288
|
/**
|
package/common.js
CHANGED
|
@@ -11,6 +11,7 @@ import { _forceStyleUpdate } from './utils';
|
|
|
11
11
|
import { borderRadiusCorners, composeBorderRadius, isCssLength, parseCornerRadius, toCamelCase } from './css-shorthands';
|
|
12
12
|
import { originXProperty, originYProperty } from '@nativescript/core/ui/core/view';
|
|
13
13
|
import { animateTransforms } from './css-keyframes';
|
|
14
|
+
import { adoptForeignLayout, releaseForeignLayout } from './foreign-layout';
|
|
14
15
|
import { Style, nodeHelper, cssLengthToDip, resolveCssMathIn } from './style';
|
|
15
16
|
import { encodeBoxShadows, parseBoxShadows } from './box-shadow';
|
|
16
17
|
import { parseCssTransform } from './css-transform';
|
|
@@ -62,11 +63,75 @@ function masonNativeEventName(eventName) {
|
|
|
62
63
|
case 'focus':
|
|
63
64
|
case 'blur':
|
|
64
65
|
case 'keydown':
|
|
66
|
+
case 'scroll':
|
|
67
|
+
case 'scrollend':
|
|
65
68
|
return eventName;
|
|
66
69
|
default:
|
|
67
70
|
return null;
|
|
68
71
|
}
|
|
69
72
|
}
|
|
73
|
+
const SCROLL_POSITIONS = { start: 0, center: 1, end: 2, nearest: 3 };
|
|
74
|
+
// Scroll offsets and sizes are read from the native view on demand, in CSS pixels.
|
|
75
|
+
function nativeScrollOffset(view, vertical) {
|
|
76
|
+
const native = view[native_];
|
|
77
|
+
if (!native)
|
|
78
|
+
return 0;
|
|
79
|
+
if (__ANDROID__) {
|
|
80
|
+
const scroll = org.nativescript.mason.masonkit.WebScroll;
|
|
81
|
+
return Utils.layout.toDeviceIndependentPixels(vertical ? scroll.scrollTop(native) : scroll.scrollLeft(native));
|
|
82
|
+
}
|
|
83
|
+
if (__APPLE__) {
|
|
84
|
+
return (vertical ? native.mason_scrollTop : native.mason_scrollLeft) ?? 0;
|
|
85
|
+
}
|
|
86
|
+
if (__WINDOWS__) {
|
|
87
|
+
return (vertical ? masonEngine().ScrollTop(native) : masonEngine().ScrollLeft(native)) ?? 0;
|
|
88
|
+
}
|
|
89
|
+
return 0;
|
|
90
|
+
}
|
|
91
|
+
function nativeScrollMetric(view, metric) {
|
|
92
|
+
const native = view[native_];
|
|
93
|
+
if (!native)
|
|
94
|
+
return 0;
|
|
95
|
+
let value = 0;
|
|
96
|
+
if (__ANDROID__) {
|
|
97
|
+
value = Utils.layout.toDeviceIndependentPixels(org.nativescript.mason.masonkit.WebScroll[metric](native));
|
|
98
|
+
}
|
|
99
|
+
else if (__APPLE__) {
|
|
100
|
+
value = native[`mason_${metric}`];
|
|
101
|
+
}
|
|
102
|
+
else if (__WINDOWS__) {
|
|
103
|
+
value = masonEngine()[metric.charAt(0).toUpperCase() + metric.slice(1)](native);
|
|
104
|
+
}
|
|
105
|
+
// Whole pixels, as on the web.
|
|
106
|
+
return Math.round(value || 0);
|
|
107
|
+
}
|
|
108
|
+
/** NaN keeps an axis. Before the native view exists, the request is kept for `initNativeView`. */
|
|
109
|
+
function nativeScrollTo(view, left, top, smooth) {
|
|
110
|
+
const native = view[native_];
|
|
111
|
+
if (!native) {
|
|
112
|
+
const pending = (view._masonPendingScroll ?? (view._masonPendingScroll = { left: NaN, top: NaN, smooth }));
|
|
113
|
+
if (!isNaN(left))
|
|
114
|
+
pending.left = left;
|
|
115
|
+
if (!isNaN(top))
|
|
116
|
+
pending.top = top;
|
|
117
|
+
pending.smooth = smooth;
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
if (__ANDROID__) {
|
|
121
|
+
org.nativescript.mason.masonkit.WebScroll.scrollTo(native, isNaN(left) ? NaN : Utils.layout.toDevicePixels(left), isNaN(top) ? NaN : Utils.layout.toDevicePixels(top), smooth);
|
|
122
|
+
}
|
|
123
|
+
else if (__APPLE__) {
|
|
124
|
+
native.mason_scrollTo(left, top, smooth);
|
|
125
|
+
}
|
|
126
|
+
else if (__WINDOWS__) {
|
|
127
|
+
masonEngine().ScrollTo(native, left, top, smooth);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
/** Non-finite scroll coordinates become 0, as on the web. */
|
|
131
|
+
function scrollCoordinate(value) {
|
|
132
|
+
const n = Number(value);
|
|
133
|
+
return Number.isFinite(n) ? n : 0;
|
|
134
|
+
}
|
|
70
135
|
function findOwnerForNativeView(owner, nativeView) {
|
|
71
136
|
if (!owner || !nativeView)
|
|
72
137
|
return null;
|
|
@@ -276,12 +341,17 @@ export class ViewBase extends CustomLayoutView {
|
|
|
276
341
|
// Core's CustomLayoutView finds the child with a WinRT call per sibling. Mason's containers remove
|
|
277
342
|
// their children natively themselves, so only core's bookkeeping is kept.
|
|
278
343
|
_removeViewFromNativeVisualTree(child) {
|
|
344
|
+
releaseForeignLayout(child);
|
|
279
345
|
if (__WINDOWS__) {
|
|
280
346
|
child._isAddedToNativeVisualTree = false;
|
|
281
347
|
return;
|
|
282
348
|
}
|
|
283
349
|
super._removeViewFromNativeVisualTree(child);
|
|
284
350
|
}
|
|
351
|
+
/** Mirror a plain child's CSS layout into its Mason leaf; containers call this after the native insert. */
|
|
352
|
+
_masonAdoptForeign(child) {
|
|
353
|
+
adoptForeignLayout(child);
|
|
354
|
+
}
|
|
285
355
|
_masonFinishTeardown() {
|
|
286
356
|
if (!this._masonPendingTeardown) {
|
|
287
357
|
return;
|
|
@@ -445,6 +515,88 @@ export class ViewBase extends CustomLayoutView {
|
|
|
445
515
|
found?._rememberNativeOwner?.(nativeHit);
|
|
446
516
|
return found;
|
|
447
517
|
}
|
|
518
|
+
// Scrolling. Size reads run a pending layout first; "scroll"/"scrollend" are only raised for
|
|
519
|
+
// an element with a listener.
|
|
520
|
+
/** Vertical scroll offset; setting it scrolls, clamped to the scroll range. */
|
|
521
|
+
get scrollTop() {
|
|
522
|
+
return nativeScrollOffset(this, true);
|
|
523
|
+
}
|
|
524
|
+
set scrollTop(value) {
|
|
525
|
+
nativeScrollTo(this, NaN, scrollCoordinate(value), false);
|
|
526
|
+
}
|
|
527
|
+
/** Horizontal scroll offset; setting it scrolls, clamped to the scroll range. */
|
|
528
|
+
get scrollLeft() {
|
|
529
|
+
return nativeScrollOffset(this, false);
|
|
530
|
+
}
|
|
531
|
+
set scrollLeft(value) {
|
|
532
|
+
nativeScrollTo(this, scrollCoordinate(value), NaN, false);
|
|
533
|
+
}
|
|
534
|
+
/** Content width, at least `clientWidth`. */
|
|
535
|
+
get scrollWidth() {
|
|
536
|
+
return nativeScrollMetric(this, 'scrollWidth');
|
|
537
|
+
}
|
|
538
|
+
/** Content height, at least `clientHeight`. */
|
|
539
|
+
get scrollHeight() {
|
|
540
|
+
return nativeScrollMetric(this, 'scrollHeight');
|
|
541
|
+
}
|
|
542
|
+
/** Padding box width. */
|
|
543
|
+
get clientWidth() {
|
|
544
|
+
return nativeScrollMetric(this, 'clientWidth');
|
|
545
|
+
}
|
|
546
|
+
/** Padding box height. */
|
|
547
|
+
get clientHeight() {
|
|
548
|
+
return nativeScrollMetric(this, 'clientHeight');
|
|
549
|
+
}
|
|
550
|
+
scrollTo(xOrOptions, y) {
|
|
551
|
+
if (xOrOptions !== null && typeof xOrOptions === 'object') {
|
|
552
|
+
const { left, top, behavior } = xOrOptions;
|
|
553
|
+
nativeScrollTo(this, left === undefined ? NaN : scrollCoordinate(left), top === undefined ? NaN : scrollCoordinate(top), behavior === 'smooth');
|
|
554
|
+
}
|
|
555
|
+
else {
|
|
556
|
+
nativeScrollTo(this, scrollCoordinate(xOrOptions), scrollCoordinate(y), false);
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
scroll(xOrOptions, y) {
|
|
560
|
+
this.scrollTo(xOrOptions, y);
|
|
561
|
+
}
|
|
562
|
+
scrollBy(xOrOptions, y) {
|
|
563
|
+
let dx;
|
|
564
|
+
let dy;
|
|
565
|
+
let smooth = false;
|
|
566
|
+
if (xOrOptions !== null && typeof xOrOptions === 'object') {
|
|
567
|
+
dx = scrollCoordinate(xOrOptions.left);
|
|
568
|
+
dy = scrollCoordinate(xOrOptions.top);
|
|
569
|
+
smooth = xOrOptions.behavior === 'smooth';
|
|
570
|
+
}
|
|
571
|
+
else {
|
|
572
|
+
dx = scrollCoordinate(xOrOptions);
|
|
573
|
+
dy = scrollCoordinate(y);
|
|
574
|
+
}
|
|
575
|
+
// Relative to a request still waiting for the native view, if any.
|
|
576
|
+
const pending = this._masonPendingScroll;
|
|
577
|
+
const left = !dx ? NaN : (pending && !isNaN(pending.left) ? pending.left : this.scrollLeft) + dx;
|
|
578
|
+
const top = !dy ? NaN : (pending && !isNaN(pending.top) ? pending.top : this.scrollTop) + dy;
|
|
579
|
+
nativeScrollTo(this, left, top, smooth);
|
|
580
|
+
}
|
|
581
|
+
/** Scrolls the scroll containers above this element so it's visible. */
|
|
582
|
+
scrollIntoView(arg) {
|
|
583
|
+
const native = this[native_];
|
|
584
|
+
if (!native)
|
|
585
|
+
return;
|
|
586
|
+
const options = arg !== null && typeof arg === 'object' ? arg : { block: arg === false ? 'end' : 'start' };
|
|
587
|
+
const block = SCROLL_POSITIONS[options.block ?? 'start'] ?? 0;
|
|
588
|
+
const inline = SCROLL_POSITIONS[options.inline ?? 'nearest'] ?? 3;
|
|
589
|
+
const smooth = options.behavior === 'smooth';
|
|
590
|
+
if (__ANDROID__) {
|
|
591
|
+
org.nativescript.mason.masonkit.WebScroll.scrollIntoView(native, block, inline, smooth);
|
|
592
|
+
}
|
|
593
|
+
else if (__APPLE__) {
|
|
594
|
+
native.mason_scrollIntoView(block, inline, smooth);
|
|
595
|
+
}
|
|
596
|
+
else if (__WINDOWS__) {
|
|
597
|
+
masonEngine().ScrollIntoView(native, block, inline, smooth);
|
|
598
|
+
}
|
|
599
|
+
}
|
|
448
600
|
_registerNativeEvent(arg, callback, thisArg) {
|
|
449
601
|
if (!this[native_]) {
|
|
450
602
|
this._pendingEventsRegistration.push({ arg, callback, thisArg });
|
|
@@ -610,6 +762,11 @@ export class ViewBase extends CustomLayoutView {
|
|
|
610
762
|
initNativeView() {
|
|
611
763
|
super.initNativeView();
|
|
612
764
|
this._applyTouchAction();
|
|
765
|
+
const scroll = this._masonPendingScroll;
|
|
766
|
+
if (scroll) {
|
|
767
|
+
this._masonPendingScroll = undefined;
|
|
768
|
+
nativeScrollTo(this, scroll.left, scroll.top, scroll.smooth);
|
|
769
|
+
}
|
|
613
770
|
if (this._pendingEventsRegistration.length > 0) {
|
|
614
771
|
const pending = this._pendingEventsRegistration.splice(0);
|
|
615
772
|
for (const registration of pending) {
|
|
@@ -2186,6 +2343,10 @@ export class ViewBase extends CustomLayoutView {
|
|
|
2186
2343
|
if (!style) {
|
|
2187
2344
|
return;
|
|
2188
2345
|
}
|
|
2346
|
+
if ((__ANDROID__ || __APPLE__) && !isCssLength(value) && style._writeCornerLength(corner, value)) {
|
|
2347
|
+
this[borderRadiusCorners_] = undefined;
|
|
2348
|
+
return;
|
|
2349
|
+
}
|
|
2189
2350
|
let corners = this[borderRadiusCorners_];
|
|
2190
2351
|
if (!corners) {
|
|
2191
2352
|
corners = this[borderRadiusCorners_] = this._nativeBorderRadiusCorners();
|
|
@@ -2204,7 +2365,7 @@ export class ViewBase extends CustomLayoutView {
|
|
|
2204
2365
|
_nativeCornerRadius(corner) {
|
|
2205
2366
|
// @ts-ignore
|
|
2206
2367
|
const style = this._styleHelper;
|
|
2207
|
-
if ((__ANDROID__ || __APPLE__) && style &&
|
|
2368
|
+
if ((__ANDROID__ || __APPLE__) && style && style._cornerRadiusIsZero(corner)) {
|
|
2208
2369
|
return '0';
|
|
2209
2370
|
}
|
|
2210
2371
|
const [h, v] = this._nativeBorderRadiusCorners()[corner];
|