@fluentui-react-native/text 0.15.15 → 0.16.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.json +49 -1
- package/CHANGELOG.md +21 -2
- package/lib/Text.d.ts.map +1 -1
- package/lib/Text.js +20 -2
- package/lib/Text.js.map +1 -1
- package/lib-commonjs/Text.d.ts.map +1 -1
- package/lib-commonjs/Text.js +20 -2
- package/lib-commonjs/Text.js.map +1 -1
- package/package.json +4 -3
- package/src/Text.tsx +30 -4
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,55 @@
|
|
|
2
2
|
"name": "@fluentui-react-native/text",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Wed, 16 Nov 2022 08:44:25 GMT",
|
|
6
|
+
"tag": "@fluentui-react-native/text_v0.16.1",
|
|
7
|
+
"version": "0.16.1",
|
|
8
|
+
"comments": {
|
|
9
|
+
"patch": [
|
|
10
|
+
{
|
|
11
|
+
"author": "beachball",
|
|
12
|
+
"package": "@fluentui-react-native/text",
|
|
13
|
+
"comment": "Bump @uifabricshared/foundation-compose to v1.12.21",
|
|
14
|
+
"commit": "ac846edd3f16fd427bca196a070653adaf702450"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"author": "beachball",
|
|
18
|
+
"package": "@fluentui-react-native/text",
|
|
19
|
+
"comment": "Bump @fluentui-react-native/framework to v0.8.20",
|
|
20
|
+
"commit": "ac846edd3f16fd427bca196a070653adaf702450"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"author": "beachball",
|
|
24
|
+
"package": "@fluentui-react-native/text",
|
|
25
|
+
"comment": "Bump @fluentui-react-native/interactive-hooks to v0.21.1",
|
|
26
|
+
"commit": "ac846edd3f16fd427bca196a070653adaf702450"
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"date": "Sun, 13 Nov 2022 09:17:06 GMT",
|
|
33
|
+
"tag": "@fluentui-react-native/text_v0.16.0",
|
|
34
|
+
"version": "0.16.0",
|
|
35
|
+
"comments": {
|
|
36
|
+
"minor": [
|
|
37
|
+
{
|
|
38
|
+
"author": "email not defined",
|
|
39
|
+
"package": "@fluentui-react-native/text",
|
|
40
|
+
"commit": "42685ad6d78fdec7de899153a20b40863bad12f3",
|
|
41
|
+
"comment": "fix double clicking on inline links"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"author": "beachball",
|
|
45
|
+
"package": "@fluentui-react-native/text",
|
|
46
|
+
"comment": "Bump @fluentui-react-native/interactive-hooks to v0.21.0",
|
|
47
|
+
"commit": "42685ad6d78fdec7de899153a20b40863bad12f3"
|
|
48
|
+
}
|
|
49
|
+
]
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"date": "Fri, 11 Nov 2022 18:06:31 GMT",
|
|
6
54
|
"tag": "@fluentui-react-native/text_v0.15.15",
|
|
7
55
|
"version": "0.15.15",
|
|
8
56
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
# Change Log - @fluentui-react-native/text
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Wed, 16 Nov 2022 08:44:25 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 0.16.1
|
|
8
|
+
|
|
9
|
+
Wed, 16 Nov 2022 08:44:25 GMT
|
|
10
|
+
|
|
11
|
+
### Patches
|
|
12
|
+
|
|
13
|
+
- Bump @uifabricshared/foundation-compose to v1.12.21
|
|
14
|
+
- Bump @fluentui-react-native/framework to v0.8.20
|
|
15
|
+
- Bump @fluentui-react-native/interactive-hooks to v0.21.1
|
|
16
|
+
|
|
17
|
+
## 0.16.0
|
|
18
|
+
|
|
19
|
+
Sun, 13 Nov 2022 09:17:06 GMT
|
|
20
|
+
|
|
21
|
+
### Minor changes
|
|
22
|
+
|
|
23
|
+
- fix double clicking on inline links (email not defined)
|
|
24
|
+
- Bump @fluentui-react-native/interactive-hooks to v0.21.0
|
|
25
|
+
|
|
7
26
|
## 0.15.15
|
|
8
27
|
|
|
9
|
-
Fri, 11 Nov 2022 18:
|
|
28
|
+
Fri, 11 Nov 2022 18:06:31 GMT
|
|
10
29
|
|
|
11
30
|
### Patches
|
|
12
31
|
|
package/lib/Text.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAY,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,IAAI,kMAqHA,CAAC;AAGlB,eAAe,IAAI,CAAC"}
|
package/lib/Text.js
CHANGED
|
@@ -31,6 +31,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
31
31
|
};
|
|
32
32
|
/** @jsx withSlots */
|
|
33
33
|
import { fontStyles, withSlots, useFluentTheme, mergeStyles, compressible, patchTokens, } from '@fluentui-react-native/framework';
|
|
34
|
+
import { useKeyProps } from '@fluentui-react-native/interactive-hooks';
|
|
34
35
|
import { globalTokens } from '@fluentui-react-native/theme-tokens';
|
|
35
36
|
import { I18nManager, Platform, Text as RNText } from 'react-native';
|
|
36
37
|
import { textName } from './Text.types';
|
|
@@ -43,7 +44,7 @@ export var Text = compressible(function (props, useTokens) {
|
|
|
43
44
|
props = emptyProps;
|
|
44
45
|
}
|
|
45
46
|
// split out color and variant from props
|
|
46
|
-
var _b = props.align, align = _b === void 0 ? undefined : _b, block = props.block, color = props.color, font = props.font, italic = props.italic, onAccessibilityTap = props.onAccessibilityTap, onKeyDown = props.onKeyDown, onPress = props.onPress, size = props.size, strikethrough = props.strikethrough, style = props.style, _c = props.truncate, truncate = _c === void 0 ? false : _c, underline = props.underline, variant = props.variant, weight = props.weight, _d = props.wrap, wrap = _d === void 0 ? true : _d, rest = __rest(props, ["align", "block", "color", "font", "italic", "onAccessibilityTap", "onKeyDown", "onPress", "size", "strikethrough", "style", "truncate", "underline", "variant", "weight", "wrap"]);
|
|
47
|
+
var _b = props.align, align = _b === void 0 ? undefined : _b, block = props.block, color = props.color, font = props.font, italic = props.italic, onAccessibilityTap = props.onAccessibilityTap, onKeyUp = props.onKeyUp, onKeyDown = props.onKeyDown, keyUpEvents = props.keyUpEvents, keyDownEvents = props.keyDownEvents, onPress = props.onPress, size = props.size, strikethrough = props.strikethrough, style = props.style, _c = props.truncate, truncate = _c === void 0 ? false : _c, underline = props.underline, variant = props.variant, weight = props.weight, _d = props.wrap, wrap = _d === void 0 ? true : _d, rest = __rest(props, ["align", "block", "color", "font", "italic", "onAccessibilityTap", "onKeyUp", "onKeyDown", "keyUpEvents", "keyDownEvents", "onPress", "size", "strikethrough", "style", "truncate", "underline", "variant", "weight", "wrap"]);
|
|
47
48
|
var theme = useFluentTheme();
|
|
48
49
|
// get the tokens from the theme
|
|
49
50
|
var _e = useTokens(theme), tokens = _e[0], cache = _e[1];
|
|
@@ -58,6 +59,13 @@ export var Text = compressible(function (props, useTokens) {
|
|
|
58
59
|
: align === 'end'
|
|
59
60
|
? 'right'
|
|
60
61
|
: align;
|
|
62
|
+
var textOnPress = React.useCallback(function (e) {
|
|
63
|
+
if (onPress) {
|
|
64
|
+
onPress(e);
|
|
65
|
+
}
|
|
66
|
+
e.stopPropagation();
|
|
67
|
+
}, [onPress]);
|
|
68
|
+
var keyProps = useKeyProps(textOnPress, ' ', 'Enter');
|
|
61
69
|
var onAccTap = React.useCallback(function (event) {
|
|
62
70
|
onAccessibilityTap ? onAccessibilityTap() : onPress(event);
|
|
63
71
|
}, [onPress, onAccessibilityTap]);
|
|
@@ -75,9 +83,19 @@ export var Text = compressible(function (props, useTokens) {
|
|
|
75
83
|
}), tokens = _a[0], cache = _a[1];
|
|
76
84
|
// now build the text style from tokens that can be shared between different Text instances
|
|
77
85
|
var tokenStyle = cache(function () { return (__assign({ margin: 0, color: tokens.color, fontStyle: tokens.fontStyle, textAlign: tokens.textAlign, textDecorationLine: tokens.textDecorationLine }, fontStyles.from(tokens, theme))); }, __spreadArray(['color', 'fontStyle', 'textAlign', 'textDecorationLine'], fontStyles.keys, true))[0];
|
|
86
|
+
var isWinPlatform = Platform.OS === ('win32' || 'windows');
|
|
87
|
+
var filteredProps = {
|
|
88
|
+
onKeyUp: isWinPlatform ? onKeyUp : undefined,
|
|
89
|
+
keyUpEvents: isWinPlatform ? keyUpEvents : undefined,
|
|
90
|
+
validKeysUp: undefined,
|
|
91
|
+
onKeyDown: isWinPlatform ? onKeyDown : undefined,
|
|
92
|
+
keyDownEvents: isWinPlatform ? keyDownEvents : undefined,
|
|
93
|
+
validKeysDown: undefined,
|
|
94
|
+
onAccessibilityTap: isWinPlatform ? onAccTap : undefined,
|
|
95
|
+
};
|
|
78
96
|
// return a continuation function that allows this text to be compressed
|
|
79
97
|
return function (extra, children) {
|
|
80
|
-
var mergedProps = __assign(__assign(__assign(__assign(__assign({
|
|
98
|
+
var mergedProps = __assign(__assign(__assign(__assign(__assign({}, rest), keyProps), filteredProps), extra), { onPress: onPress, numberOfLines: truncate || !wrap ? 1 : 0, style: mergeStyles(tokenStyle, props.style, extra === null || extra === void 0 ? void 0 : extra.style) });
|
|
81
99
|
return (withSlots(RNText, __assign({ ellipsizeMode: !wrap && !truncate ? 'clip' : 'tail' }, mergedProps), children));
|
|
82
100
|
};
|
|
83
101
|
}, useTextTokens);
|
package/lib/Text.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qBAAqB;AACrB,OAAO,EACL,UAAU,EACV,SAAS,EAET,cAAc,EACd,WAAW,EACX,YAAY,EACZ,WAAW,GAEZ,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAyB,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,IAAM,UAAU,GAAG,EAAE,CAAC;AACtB,MAAM,CAAC,IAAM,IAAI,GAAG,YAAY,CAAwB,UAAC,KAAgB,EAAE,SAAgC;;IACzG,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,KAAK,GAAG,UAAU,CAAC;KACpB;IAED,yCAAyC;IAEvC,IAAA,
|
|
1
|
+
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAY,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,IAAI,kMAqHA,CAAC;AAGlB,eAAe,IAAI,CAAC"}
|
package/lib-commonjs/Text.js
CHANGED
|
@@ -37,6 +37,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
37
37
|
exports.Text = void 0;
|
|
38
38
|
/** @jsx withSlots */
|
|
39
39
|
var framework_1 = require("@fluentui-react-native/framework");
|
|
40
|
+
var interactive_hooks_1 = require("@fluentui-react-native/interactive-hooks");
|
|
40
41
|
var theme_tokens_1 = require("@fluentui-react-native/theme-tokens");
|
|
41
42
|
var react_native_1 = require("react-native");
|
|
42
43
|
var Text_types_1 = require("./Text.types");
|
|
@@ -49,7 +50,7 @@ exports.Text = (0, framework_1.compressible)(function (props, useTokens) {
|
|
|
49
50
|
props = emptyProps;
|
|
50
51
|
}
|
|
51
52
|
// split out color and variant from props
|
|
52
|
-
var _b = props.align, align = _b === void 0 ? undefined : _b, block = props.block, color = props.color, font = props.font, italic = props.italic, onAccessibilityTap = props.onAccessibilityTap, onKeyDown = props.onKeyDown, onPress = props.onPress, size = props.size, strikethrough = props.strikethrough, style = props.style, _c = props.truncate, truncate = _c === void 0 ? false : _c, underline = props.underline, variant = props.variant, weight = props.weight, _d = props.wrap, wrap = _d === void 0 ? true : _d, rest = __rest(props, ["align", "block", "color", "font", "italic", "onAccessibilityTap", "onKeyDown", "onPress", "size", "strikethrough", "style", "truncate", "underline", "variant", "weight", "wrap"]);
|
|
53
|
+
var _b = props.align, align = _b === void 0 ? undefined : _b, block = props.block, color = props.color, font = props.font, italic = props.italic, onAccessibilityTap = props.onAccessibilityTap, onKeyUp = props.onKeyUp, onKeyDown = props.onKeyDown, keyUpEvents = props.keyUpEvents, keyDownEvents = props.keyDownEvents, onPress = props.onPress, size = props.size, strikethrough = props.strikethrough, style = props.style, _c = props.truncate, truncate = _c === void 0 ? false : _c, underline = props.underline, variant = props.variant, weight = props.weight, _d = props.wrap, wrap = _d === void 0 ? true : _d, rest = __rest(props, ["align", "block", "color", "font", "italic", "onAccessibilityTap", "onKeyUp", "onKeyDown", "keyUpEvents", "keyDownEvents", "onPress", "size", "strikethrough", "style", "truncate", "underline", "variant", "weight", "wrap"]);
|
|
53
54
|
var theme = (0, framework_1.useFluentTheme)();
|
|
54
55
|
// get the tokens from the theme
|
|
55
56
|
var _e = useTokens(theme), tokens = _e[0], cache = _e[1];
|
|
@@ -64,6 +65,13 @@ exports.Text = (0, framework_1.compressible)(function (props, useTokens) {
|
|
|
64
65
|
: align === 'end'
|
|
65
66
|
? 'right'
|
|
66
67
|
: align;
|
|
68
|
+
var textOnPress = react_1.default.useCallback(function (e) {
|
|
69
|
+
if (onPress) {
|
|
70
|
+
onPress(e);
|
|
71
|
+
}
|
|
72
|
+
e.stopPropagation();
|
|
73
|
+
}, [onPress]);
|
|
74
|
+
var keyProps = (0, interactive_hooks_1.useKeyProps)(textOnPress, ' ', 'Enter');
|
|
67
75
|
var onAccTap = react_1.default.useCallback(function (event) {
|
|
68
76
|
onAccessibilityTap ? onAccessibilityTap() : onPress(event);
|
|
69
77
|
}, [onPress, onAccessibilityTap]);
|
|
@@ -81,9 +89,19 @@ exports.Text = (0, framework_1.compressible)(function (props, useTokens) {
|
|
|
81
89
|
}), tokens = _a[0], cache = _a[1];
|
|
82
90
|
// now build the text style from tokens that can be shared between different Text instances
|
|
83
91
|
var tokenStyle = cache(function () { return (__assign({ margin: 0, color: tokens.color, fontStyle: tokens.fontStyle, textAlign: tokens.textAlign, textDecorationLine: tokens.textDecorationLine }, framework_1.fontStyles.from(tokens, theme))); }, __spreadArray(['color', 'fontStyle', 'textAlign', 'textDecorationLine'], framework_1.fontStyles.keys, true))[0];
|
|
92
|
+
var isWinPlatform = react_native_1.Platform.OS === ('win32' || 'windows');
|
|
93
|
+
var filteredProps = {
|
|
94
|
+
onKeyUp: isWinPlatform ? onKeyUp : undefined,
|
|
95
|
+
keyUpEvents: isWinPlatform ? keyUpEvents : undefined,
|
|
96
|
+
validKeysUp: undefined,
|
|
97
|
+
onKeyDown: isWinPlatform ? onKeyDown : undefined,
|
|
98
|
+
keyDownEvents: isWinPlatform ? keyDownEvents : undefined,
|
|
99
|
+
validKeysDown: undefined,
|
|
100
|
+
onAccessibilityTap: isWinPlatform ? onAccTap : undefined,
|
|
101
|
+
};
|
|
84
102
|
// return a continuation function that allows this text to be compressed
|
|
85
103
|
return function (extra, children) {
|
|
86
|
-
var mergedProps = __assign(__assign(__assign(__assign(__assign({
|
|
104
|
+
var mergedProps = __assign(__assign(__assign(__assign(__assign({}, rest), keyProps), filteredProps), extra), { onPress: onPress, numberOfLines: truncate || !wrap ? 1 : 0, style: (0, framework_1.mergeStyles)(tokenStyle, props.style, extra === null || extra === void 0 ? void 0 : extra.style) });
|
|
87
105
|
return ((0, framework_1.withSlots)(react_native_1.Text, __assign({ ellipsizeMode: !wrap && !truncate ? 'clip' : 'tail' }, mergedProps), children));
|
|
88
106
|
};
|
|
89
107
|
}, TextTokens_1.useTextTokens);
|
package/lib-commonjs/Text.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qBAAqB;AACrB,8DAS0C;AAC1C,oEAAmE;AACnE,6CAAqE;AACrE,2CAA+D;AAC/D,2CAA6C;AAC7C,gDAA0B;AAE1B,IAAM,UAAU,GAAG,EAAE,CAAC;AACT,QAAA,IAAI,GAAG,IAAA,wBAAY,EAAwB,UAAC,KAAgB,EAAE,SAAgC;;IACzG,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,KAAK,GAAG,UAAU,CAAC;KACpB;IAED,yCAAyC;IAEvC,IAAA,
|
|
1
|
+
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui-react-native/text",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.16.1",
|
|
4
4
|
"description": "A cross-platform Text component using the Fluent Design System",
|
|
5
5
|
"main": "lib-commonjs/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -22,9 +22,10 @@
|
|
|
22
22
|
"directory": "packages/components/text"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@uifabricshared/foundation-compose": "^1.12.
|
|
25
|
+
"@uifabricshared/foundation-compose": "^1.12.21",
|
|
26
26
|
"@fluentui-react-native/adapters": ">=0.10.0 <1.0.0",
|
|
27
|
-
"@fluentui-react-native/framework": "0.8.
|
|
27
|
+
"@fluentui-react-native/framework": "0.8.20",
|
|
28
|
+
"@fluentui-react-native/interactive-hooks": ">=0.21.1 <1.0.0",
|
|
28
29
|
"@fluentui-react-native/theme-tokens": ">=0.21.3 <1.0.0",
|
|
29
30
|
"@fluentui-react-native/tokens": ">=0.17.8 <1.0.0",
|
|
30
31
|
"tslib": "^2.3.1"
|
package/src/Text.tsx
CHANGED
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
patchTokens,
|
|
10
10
|
FontWeightValue,
|
|
11
11
|
} from '@fluentui-react-native/framework';
|
|
12
|
+
import { useKeyProps } from '@fluentui-react-native/interactive-hooks';
|
|
12
13
|
import { globalTokens } from '@fluentui-react-native/theme-tokens';
|
|
13
14
|
import { I18nManager, Platform, Text as RNText } from 'react-native';
|
|
14
15
|
import { textName, TextProps, TextTokens } from './Text.types';
|
|
@@ -29,7 +30,10 @@ export const Text = compressible<TextProps, TextTokens>((props: TextProps, useTo
|
|
|
29
30
|
font,
|
|
30
31
|
italic,
|
|
31
32
|
onAccessibilityTap,
|
|
33
|
+
onKeyUp,
|
|
32
34
|
onKeyDown,
|
|
35
|
+
keyUpEvents,
|
|
36
|
+
keyDownEvents,
|
|
33
37
|
onPress,
|
|
34
38
|
size,
|
|
35
39
|
strikethrough,
|
|
@@ -57,6 +61,17 @@ export const Text = compressible<TextProps, TextTokens>((props: TextProps, useTo
|
|
|
57
61
|
? 'right'
|
|
58
62
|
: align;
|
|
59
63
|
|
|
64
|
+
const textOnPress = React.useCallback(
|
|
65
|
+
(e) => {
|
|
66
|
+
if (onPress) {
|
|
67
|
+
onPress(e);
|
|
68
|
+
}
|
|
69
|
+
e.stopPropagation();
|
|
70
|
+
},
|
|
71
|
+
[onPress],
|
|
72
|
+
);
|
|
73
|
+
const keyProps = useKeyProps(textOnPress, ' ', 'Enter');
|
|
74
|
+
|
|
60
75
|
const onAccTap = React.useCallback(
|
|
61
76
|
(event?) => {
|
|
62
77
|
onAccessibilityTap ? onAccessibilityTap() : onPress(event);
|
|
@@ -91,15 +106,26 @@ export const Text = compressible<TextProps, TextTokens>((props: TextProps, useTo
|
|
|
91
106
|
['color', 'fontStyle', 'textAlign', 'textDecorationLine', ...fontStyles.keys],
|
|
92
107
|
);
|
|
93
108
|
|
|
109
|
+
const isWinPlatform = Platform.OS === (('win32' as any) || 'windows');
|
|
110
|
+
const filteredProps = {
|
|
111
|
+
onKeyUp: isWinPlatform ? onKeyUp : undefined,
|
|
112
|
+
keyUpEvents: isWinPlatform ? keyUpEvents : undefined,
|
|
113
|
+
validKeysUp: undefined,
|
|
114
|
+
onKeyDown: isWinPlatform ? onKeyDown : undefined,
|
|
115
|
+
keyDownEvents: isWinPlatform ? keyDownEvents : undefined,
|
|
116
|
+
validKeysDown: undefined,
|
|
117
|
+
onAccessibilityTap: isWinPlatform ? onAccTap : undefined,
|
|
118
|
+
};
|
|
119
|
+
|
|
94
120
|
// return a continuation function that allows this text to be compressed
|
|
95
121
|
return (extra: TextProps, children: React.ReactNode) => {
|
|
96
122
|
const mergedProps = {
|
|
97
|
-
numberOfLines: truncate || !wrap ? 1 : 0,
|
|
98
|
-
onKeyDown: Platform.OS === (('win32' as any) || 'windows') ? onKeyDown : undefined,
|
|
99
|
-
...(Platform.OS === (('win32' as any) || 'windows') && { onAccessibilityTap: onAccTap }),
|
|
100
|
-
onPress,
|
|
101
123
|
...rest,
|
|
124
|
+
...keyProps,
|
|
125
|
+
...filteredProps,
|
|
102
126
|
...extra,
|
|
127
|
+
onPress,
|
|
128
|
+
numberOfLines: truncate || !wrap ? 1 : 0,
|
|
103
129
|
style: mergeStyles(tokenStyle, props.style, extra?.style),
|
|
104
130
|
};
|
|
105
131
|
return (
|