@nativescript-community/ui-card 1.0.0 → 1.0.1
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/CHANGELOG.md +6 -0
- package/index.android.js +10 -5
- package/index.android.js.map +1 -1
- package/package.json +3 -3
- package/platforms/android/native-api-usage.json +4 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.0.1](https://github.com/nativescript-community/ui-native-components/compare/v1.0.0...v1.0.1) (2026-10-19)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* **android:** complete native-api-usage.json and read R attrs without R ([1a5c054](https://github.com/nativescript-community/ui-native-components/commit/1a5c05442dac31e3bc0277ffc49fb5672bf01705))
|
|
11
|
+
|
|
6
12
|
## 1.0.0 (2026-10-18)
|
|
7
13
|
|
|
8
14
|
### Features
|
package/index.android.js
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { Color, Utils, backgroundColorProperty, backgroundInternalProperty } from '@nativescript/core';
|
|
2
2
|
import { CardBase, variantProperty } from './index-common';
|
|
3
3
|
export * from './index-common';
|
|
4
|
+
// R is blacklisted from the native metadata of some apps: read the attribute ids with reflection
|
|
5
|
+
function getAttr(rClass, field) {
|
|
6
|
+
return +java.lang.Class.forName(rClass + '$attr')
|
|
7
|
+
.getDeclaredField(field)
|
|
8
|
+
.get(null);
|
|
9
|
+
}
|
|
4
10
|
function themeColor(context, attr, fallback) {
|
|
5
11
|
const value = new android.util.TypedValue();
|
|
6
12
|
return context.getTheme().resolveAttribute(attr, value, true) ? value.data : fallback;
|
|
@@ -27,22 +33,21 @@ export class Card extends CardBase {
|
|
|
27
33
|
return;
|
|
28
34
|
}
|
|
29
35
|
const context = card.getContext();
|
|
30
|
-
const R = com.google.android.material.R;
|
|
31
36
|
const variant = this.variant;
|
|
32
37
|
const dp = (value) => Utils.layout.toDevicePixels(value);
|
|
33
38
|
let color;
|
|
34
39
|
let strokeWidth = 0;
|
|
35
|
-
let strokeColor = themeColor(context,
|
|
40
|
+
let strokeColor = themeColor(context, getAttr('com.google.android.material.R', 'colorOutlineVariant'), android.graphics.Color.LTGRAY);
|
|
36
41
|
let elevation = 0;
|
|
37
42
|
if (variant === 'filled') {
|
|
38
|
-
color = themeColor(context,
|
|
43
|
+
color = themeColor(context, getAttr('com.google.android.material.R', 'colorSurfaceContainerHighest'), android.graphics.Color.LTGRAY);
|
|
39
44
|
}
|
|
40
45
|
else if (variant === 'outlined') {
|
|
41
|
-
color = themeColor(context,
|
|
46
|
+
color = themeColor(context, getAttr('com.google.android.material.R', 'colorSurface'), android.graphics.Color.WHITE);
|
|
42
47
|
strokeWidth = dp(1);
|
|
43
48
|
}
|
|
44
49
|
else {
|
|
45
|
-
color = themeColor(context,
|
|
50
|
+
color = themeColor(context, getAttr('com.google.android.material.R', 'colorSurfaceContainerLow'), android.graphics.Color.WHITE);
|
|
46
51
|
elevation = dp(1);
|
|
47
52
|
}
|
|
48
53
|
const user = this.mUserBackground;
|
package/index.android.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.android.js","sourceRoot":"","sources":["../../src/ui-card/index.android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACnH,OAAO,EAAE,QAAQ,EAAe,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACxE,cAAc,gBAAgB,CAAC;AAE/B,SAAS,UAAU,CAAC,OAAgC,EAAE,IAAY,EAAE,QAAgB;IAChF,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;IAC5C,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC1F,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,IAAK,SAAQ,QAAQ;IAKvB,gBAAgB;QACnB,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChF,CAAC;IAEM,cAAc;QACjB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,oCAAoC;QACpC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,UAAU;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACtC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO;QACX,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,
|
|
1
|
+
{"version":3,"file":"index.android.js","sourceRoot":"","sources":["../../src/ui-card/index.android.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nativescript-community/ui-card",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Card for grouping content: Material 3 MaterialCardView on Android, a grouped rounded surface on iOS (no glass: the HIG keeps Liquid Glass for controls).",
|
|
5
5
|
"main": "./index",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
},
|
|
45
45
|
"readmeFilename": "README.md",
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@nativescript-community/ui-core": "^1.0.
|
|
47
|
+
"@nativescript-community/ui-core": "^1.0.1"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "6a7607e3cb227ab29fa533776e85b2717a800c8e"
|
|
50
50
|
}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"uses": [
|
|
3
|
+
"android.content.res:Resources.Theme",
|
|
3
4
|
"android.content:Context",
|
|
4
5
|
"android.graphics:Color",
|
|
5
6
|
"android.util:TypedValue",
|
|
6
|
-
"com.google.android.material.card:MaterialCardView"
|
|
7
|
+
"com.google.android.material.card:MaterialCardView",
|
|
8
|
+
"com.google.android.material.shape:ShapeAppearanceModel",
|
|
9
|
+
"com.google.android.material.shape:ShapeAppearanceModel.Builder"
|
|
7
10
|
]
|
|
8
11
|
}
|