@unif/react-native-design 0.5.0 → 0.6.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.
Files changed (81) hide show
  1. package/README.md +60 -10
  2. package/docs-home.css +4 -1
  3. package/lib/module/components/ui/Toast/ToastHost.js +23 -3
  4. package/lib/module/components/ui/Toast/ToastHost.js.map +1 -1
  5. package/lib/module/components/ui/Toast/styles.js +1 -1
  6. package/lib/module/components/ui/Toast/styles.js.map +1 -1
  7. package/lib/module/components/ui/Toast/toast.js +4 -2
  8. package/lib/module/components/ui/Toast/toast.js.map +1 -1
  9. package/lib/module/components/ui/index.js +0 -2
  10. package/lib/module/components/ui/index.js.map +1 -1
  11. package/lib/module/index.js +1 -0
  12. package/lib/module/index.js.map +1 -1
  13. package/lib/typescript/src/components/ui/Input/Input.d.ts +3 -3
  14. package/lib/typescript/src/components/ui/Search/Search.d.ts +3 -3
  15. package/lib/typescript/src/components/ui/TextField/TextFieldBase.d.ts +3 -3
  16. package/lib/typescript/src/components/ui/Textarea/Textarea.d.ts +3 -3
  17. package/lib/typescript/src/components/ui/Toast/ToastHost.d.ts +3 -0
  18. package/lib/typescript/src/components/ui/Toast/ToastHost.d.ts.map +1 -1
  19. package/lib/typescript/src/components/ui/Toast/index.d.ts +1 -1
  20. package/lib/typescript/src/components/ui/Toast/index.d.ts.map +1 -1
  21. package/lib/typescript/src/components/ui/Toast/styles.d.ts +0 -1
  22. package/lib/typescript/src/components/ui/Toast/styles.d.ts.map +1 -1
  23. package/lib/typescript/src/components/ui/Toast/toast.d.ts.map +1 -1
  24. package/lib/typescript/src/components/ui/Toast/types.d.ts +9 -3
  25. package/lib/typescript/src/components/ui/Toast/types.d.ts.map +1 -1
  26. package/lib/typescript/src/components/ui/index.d.ts +1 -5
  27. package/lib/typescript/src/components/ui/index.d.ts.map +1 -1
  28. package/lib/typescript/src/index.d.ts.map +1 -1
  29. package/package.json +6 -3
  30. package/src/components/ui/Toast/ToastHost.tsx +20 -3
  31. package/src/components/ui/Toast/index.ts +1 -0
  32. package/src/components/ui/Toast/styles.ts +1 -1
  33. package/src/components/ui/Toast/toast.ts +2 -1
  34. package/src/components/ui/Toast/types.ts +10 -3
  35. package/src/components/ui/index.ts +1 -4
  36. package/src/index.tsx +1 -0
  37. package/lib/module/components/ui/BottomSheet/BottomSheet.js +0 -104
  38. package/lib/module/components/ui/BottomSheet/BottomSheet.js.map +0 -1
  39. package/lib/module/components/ui/BottomSheet/index.js +0 -4
  40. package/lib/module/components/ui/BottomSheet/index.js.map +0 -1
  41. package/lib/module/components/ui/BottomSheet/styles.js +0 -26
  42. package/lib/module/components/ui/BottomSheet/styles.js.map +0 -1
  43. package/lib/module/components/ui/BottomSheet/types.js +0 -4
  44. package/lib/module/components/ui/BottomSheet/types.js.map +0 -1
  45. package/lib/module/components/ui/Confirm/ConfirmHost.js +0 -111
  46. package/lib/module/components/ui/Confirm/ConfirmHost.js.map +0 -1
  47. package/lib/module/components/ui/Confirm/confirm.js +0 -51
  48. package/lib/module/components/ui/Confirm/confirm.js.map +0 -1
  49. package/lib/module/components/ui/Confirm/index.js +0 -5
  50. package/lib/module/components/ui/Confirm/index.js.map +0 -1
  51. package/lib/module/components/ui/Confirm/styles.js +0 -35
  52. package/lib/module/components/ui/Confirm/styles.js.map +0 -1
  53. package/lib/module/components/ui/Confirm/types.js +0 -2
  54. package/lib/module/components/ui/Confirm/types.js.map +0 -1
  55. package/lib/typescript/src/components/ui/BottomSheet/BottomSheet.d.ts +0 -4
  56. package/lib/typescript/src/components/ui/BottomSheet/BottomSheet.d.ts.map +0 -1
  57. package/lib/typescript/src/components/ui/BottomSheet/index.d.ts +0 -3
  58. package/lib/typescript/src/components/ui/BottomSheet/index.d.ts.map +0 -1
  59. package/lib/typescript/src/components/ui/BottomSheet/styles.d.ts +0 -23
  60. package/lib/typescript/src/components/ui/BottomSheet/styles.d.ts.map +0 -1
  61. package/lib/typescript/src/components/ui/BottomSheet/types.d.ts +0 -26
  62. package/lib/typescript/src/components/ui/BottomSheet/types.d.ts.map +0 -1
  63. package/lib/typescript/src/components/ui/Confirm/ConfirmHost.d.ts +0 -9
  64. package/lib/typescript/src/components/ui/Confirm/ConfirmHost.d.ts.map +0 -1
  65. package/lib/typescript/src/components/ui/Confirm/confirm.d.ts +0 -20
  66. package/lib/typescript/src/components/ui/Confirm/confirm.d.ts.map +0 -1
  67. package/lib/typescript/src/components/ui/Confirm/index.d.ts +0 -4
  68. package/lib/typescript/src/components/ui/Confirm/index.d.ts.map +0 -1
  69. package/lib/typescript/src/components/ui/Confirm/styles.d.ts +0 -32
  70. package/lib/typescript/src/components/ui/Confirm/styles.d.ts.map +0 -1
  71. package/lib/typescript/src/components/ui/Confirm/types.d.ts +0 -21
  72. package/lib/typescript/src/components/ui/Confirm/types.d.ts.map +0 -1
  73. package/src/components/ui/BottomSheet/BottomSheet.tsx +0 -117
  74. package/src/components/ui/BottomSheet/index.ts +0 -2
  75. package/src/components/ui/BottomSheet/styles.ts +0 -20
  76. package/src/components/ui/BottomSheet/types.ts +0 -26
  77. package/src/components/ui/Confirm/ConfirmHost.tsx +0 -134
  78. package/src/components/ui/Confirm/confirm.ts +0 -53
  79. package/src/components/ui/Confirm/index.ts +0 -3
  80. package/src/components/ui/Confirm/styles.ts +0 -35
  81. package/src/components/ui/Confirm/types.ts +0 -22
package/README.md CHANGED
@@ -5,10 +5,14 @@
5
5
  [![License](https://img.shields.io/npm/l/@unif/react-native-design.svg?color=blue)](LICENSE)
6
6
  [![Docs](https://img.shields.io/badge/docs-unif--design.github.io-orange.svg)](https://unif-design.github.io/react-native-design/)
7
7
 
8
- Unif 设计系统:theme(设计令牌)+ 组件 + 图标 + utils,面向 RN 0.85 新架构(Fabric + concurrent React)。所有 Unif 应用与端能力包的 UI 基座。
8
+ Unif 设计系统 —— theme(设计令牌)+ 组件 + 图标 + utils,面向 React Native 0.85 新架构(Fabric + TurboModule)。所有 Unif 应用与端能力包的 UI 基座。
9
9
 
10
- > 📖 **完整文档**(快速开始 · 组件 · 设计令牌 · 设计原则):
11
- > **https://unif-design.github.io/react-native-design/**
10
+ ## 特性
11
+
12
+ - **运行时主题**:`useColors()` 角色 token 跟随系统 light/dark 自动切换;`useThemedStyles` + 模块顶层 `makeStyles` 缓存样式,绝不内联 hex。
13
+ - **40+ 组件**:Button、Card、Cell、NavBar、BottomSheet、Toast 等原子组件 + AvatarWithRing、GlassStats 等通用复合组件,全部从包根 barrel 导出,无需深路径。
14
+ - **a11y 内建**:交互组件预设 `accessibilityRole`;`IconButton` 的 `accessibilityLabel` 为类型必填。
15
+ - **图标集 + 严格 TS**:`IconName` 闭集类型、`<Icon>` 自动继承主题色;`strict` + `noUncheckedIndexedAccess`,类型随包发布。
12
16
 
13
17
  ## 安装
14
18
 
@@ -16,20 +20,66 @@ Unif 设计系统:theme(设计令牌)+ 组件 + 图标 + utils,面向 RN 0.8
16
20
  yarn add @unif/react-native-design
17
21
  ```
18
22
 
19
- 需要一组 peer(`react-native-svg` / `react-native-gesture-handler` / `react-native-reanimated` / `react-native-worklets` / `react-native-safe-area-context` / `react-native-reanimated-carousel` / `@gorhom/bottom-sheet` / `@sbaiahmed1/react-native-blur`)+ 根挂 `ThemeProvider`,详见[文档站 · 快速开始](https://unif-design.github.io/react-native-design/docs/getting-started)。
23
+ 本库不打包原生依赖,宿主工程需自行安装下列 peer 并完成原生侧配置:
24
+
25
+ ```sh
26
+ yarn add react-native-svg \
27
+ react-native-gesture-handler \
28
+ react-native-reanimated \
29
+ react-native-worklets \
30
+ react-native-safe-area-context \
31
+ react-native-reanimated-carousel \
32
+ @gorhom/bottom-sheet \
33
+ @sbaiahmed1/react-native-blur
34
+ ```
35
+
36
+ iOS 另需在 `ios/` 执行 `bundle exec pod install`。完整步骤见[文档站 · 快速开始](https://unif-design.github.io/react-native-design/docs/getting-started)。
37
+
38
+ ## 快速开始
20
39
 
21
- ## 用法
40
+ App 根挂一次 `ThemeProvider`,命令式 host(`ToastHost` / `ConfirmHost`)按需添加;`makeStyles` 必须写在模块顶层:
22
41
 
23
42
  ```tsx
24
- import { Button, useColors, useThemedStyles } from '@unif/react-native-design';
43
+ import {
44
+ ThemeProvider, ToastHost, Button, useThemedStyles, type ColorTokens,
45
+ } from '@unif/react-native-design';
46
+ import { View } from 'react-native';
25
47
 
26
- function MyScreen() {
27
- const c = useColors();
28
- return <Button label="提交" onPress={() => {}} />;
48
+ // inline 会破坏 useThemedStyles 的样式缓存
49
+ const makeStyles = (c: ColorTokens) => ({
50
+ wrap: { padding: 16, backgroundColor: c.surface },
51
+ });
52
+
53
+ function Demo() {
54
+ const styles = useThemedStyles(makeStyles);
55
+ return (
56
+ <View style={styles.wrap}>
57
+ <Button label="保存" onPress={() => {}} />
58
+ </View>
59
+ );
29
60
  }
61
+
62
+ export const App = () => (
63
+ <ThemeProvider>
64
+ <Demo />
65
+ <ToastHost />
66
+ </ThemeProvider>
67
+ );
30
68
  ```
31
69
 
32
- 组件 API、token 调色板、暗色适配、设计原则 —— 见[文档站](https://unif-design.github.io/react-native-design/)。
70
+ ## 文档
71
+
72
+ - **文档站**(快速开始 · 组件 API · 设计令牌 · 设计原则):https://unif-design.github.io/react-native-design/
73
+ - **AI / LLM**(纯 Markdown,按需 fetch,别凭记忆猜 API):
74
+ [llms.txt 索引](https://unif-design.github.io/react-native-design/llms.txt) · [llms-full.txt 全文](https://unif-design.github.io/react-native-design/llms-full.txt)
75
+ - **Agent Skill** `using-unif-design`(覆盖组件 API、token 规则、与原生 RN 的关键差异):
76
+ `/plugin marketplace add unif-design/react-native-skills` → `/plugin install unif-react-native@unif-react-native-skills`
77
+
78
+ ## 兼容性
79
+
80
+ - React Native **0.85+**(新架构 Fabric + TurboModule;随 RN 0.85 对应 concurrent React)
81
+ - React 19、TypeScript 6
82
+ - Node.js ≥ 24.13(见 `.nvmrc`)
33
83
 
34
84
  ## 许可
35
85
 
package/docs-home.css CHANGED
@@ -194,8 +194,11 @@
194
194
  * 3. DARK TOKENS — OS preference fallback (no explicit data-theme)
195
195
  * ───────────────────────────────────────────────────────────── */
196
196
 
197
+ /* OS 偏好兜底:仅当 Docusaurus 尚未在 <html> 注入 data-theme 时才生效。
198
+ * 旧写法 .unif-home:not([data-theme="light"]) 恒为真(data-theme 在 <html> 上、
199
+ * 不在 .unif-home),会让"系统深色 + 站点手动切浅色"时内容区被强制深色。 */
197
200
  @media (prefers-color-scheme: dark) {
198
- .unif-home:not([data-theme="light"]) {
201
+ html:not([data-theme]) .unif-home {
199
202
  --primary-container: #3D1F00;
200
203
  --primary-container-subtle:#2A1500;
201
204
  --error: #FF6B40;
@@ -2,20 +2,25 @@
2
2
 
3
3
  import React, { useEffect, useRef, useState } from 'react';
4
4
  import { Text, View } from 'react-native';
5
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
5
6
  import Animated, { cancelAnimation, runOnJS, useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';
6
- import { useColors, useThemedStyles, motion } from "../../../theme/index.js";
7
+ import { useColors, useThemedStyles, motion, space } from "../../../theme/index.js";
7
8
  import { dotColorFor, makeStyles } from "./styles.js";
8
9
  import { _subs } from "./toast.js";
9
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
11
  /**
11
12
  * 在根附近挂一次。监听 toast() 调用并渲染当前 toast。
12
13
  * 同一时间只显示一条 —— 新的会替换旧的。
14
+ *
15
+ * 位置由 `entry.position`('top' / 'bottom' / 'center')决定,top/bottom 自动避让
16
+ * safe-area;进入动画方向随位置(top 从上滑、bottom/center 从下滑)。
13
17
  */
14
18
  export function ToastHost({
15
19
  testID
16
20
  } = {}) {
17
21
  const c = useColors();
18
22
  const styles = useThemedStyles(makeStyles);
23
+ const insets = useSafeAreaInsets();
19
24
  const [entry, setEntry] = useState(null);
20
25
  const op = useSharedValue(0);
21
26
  const ty = useSharedValue(8);
@@ -32,8 +37,12 @@ export function ToastHost({
32
37
  }, []);
33
38
  useEffect(() => {
34
39
  if (!entry) return;
40
+ // 进入方向:top 从上(-8)滑入,bottom / center 从下(8)滑入
41
+ const from = entry.position === 'top' ? -8 : 8;
35
42
  cancelAnimation(op);
36
43
  cancelAnimation(ty);
44
+ op.value = 0;
45
+ ty.value = from;
37
46
  op.value = withTiming(1, {
38
47
  duration: motion.base
39
48
  });
@@ -44,7 +53,7 @@ export function ToastHost({
44
53
  op.value = withTiming(0, {
45
54
  duration: motion.base
46
55
  });
47
- ty.value = withTiming(8, {
56
+ ty.value = withTiming(from, {
48
57
  duration: motion.base
49
58
  }, finished => {
50
59
  if (finished) runOnJS(setEntry)(null);
@@ -63,9 +72,20 @@ export function ToastHost({
63
72
  }]
64
73
  }));
65
74
  if (!entry) return null;
75
+
76
+ // 位置:top=顶部(safe-area + 间距)/ center=屏幕居中 / bottom=底部(默认)
77
+ const posStyle = entry.position === 'top' ? {
78
+ top: insets.top + space[10]
79
+ } : entry.position === 'center' ? {
80
+ top: 0,
81
+ bottom: 0,
82
+ justifyContent: 'center'
83
+ } : {
84
+ bottom: insets.bottom + space[10]
85
+ };
66
86
  const dotColor = dotColorFor(entry.kind, c);
67
87
  return /*#__PURE__*/_jsx(View, {
68
- style: styles.host,
88
+ style: [styles.host, posStyle],
69
89
  pointerEvents: "none",
70
90
  testID: testID,
71
91
  children: /*#__PURE__*/_jsxs(Animated.View, {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useRef","useState","Text","View","Animated","cancelAnimation","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useColors","useThemedStyles","motion","dotColorFor","makeStyles","_subs","jsx","_jsx","jsxs","_jsxs","ToastHost","testID","c","styles","entry","setEntry","op","ty","dismissTimer","sub","next","current","clearTimeout","add","delete","value","duration","base","setTimeout","finished","animatedStyle","opacity","transform","translateY","dotColor","kind","style","host","pointerEvents","children","toast","dot","backgroundColor","text","undefined","message"],"sourceRoot":"../../../../../src","sources":["components/ui/Toast/ToastHost.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useRef","useState","Text","View","useSafeAreaInsets","Animated","cancelAnimation","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useColors","useThemedStyles","motion","space","dotColorFor","makeStyles","_subs","jsx","_jsx","jsxs","_jsxs","ToastHost","testID","c","styles","insets","entry","setEntry","op","ty","dismissTimer","sub","next","current","clearTimeout","add","delete","from","position","value","duration","base","setTimeout","finished","animatedStyle","opacity","transform","translateY","posStyle","top","bottom","justifyContent","dotColor","kind","style","host","pointerEvents","children","toast","dot","backgroundColor","text","undefined","message"],"sourceRoot":"../../../../../src","sources":["components/ui/Toast/ToastHost.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,10 +4,10 @@ import { StyleSheet } from 'react-native';
4
4
  import { fw, r, radius, space, type as t } from "../../../theme/index.js";
5
5
  export const makeStyles = c => StyleSheet.create({
6
6
  host: {
7
+ // 定位(top/bottom/center)由 ToastHost 按 entry.position 注入,这里只留通用
7
8
  position: 'absolute',
8
9
  left: 0,
9
10
  right: 0,
10
- bottom: space[10],
11
11
  alignItems: 'center',
12
12
  // zIndex: toast 浮层 —— 盖在 Screen 内容之上(navigator / overlay 之下)。
13
13
  // 同级兄弟节点无 z 顺序需求,但作为 absolute 浮岛对其他屏内 absolute 节点
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","fw","r","radius","space","type","t","makeStyles","c","create","host","position","left","right","bottom","alignItems","zIndex","toast","flexDirection","gap","backgroundColor","inverseSurface","borderRadius","md","paddingHorizontal","paddingVertical","maxWidth","dot","width","height","text","color","inverseOnSurface","fontSize","sm","fontWeight","medium","flexShrink","dotColorFor","kind","success","error"],"sourceRoot":"../../../../../src","sources":["components/ui/Toast/styles.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,cAAc;AAEzC,SAASC,EAAE,EAAEC,CAAC,EAAEC,MAAM,EAAEC,KAAK,EAAEC,IAAI,IAAIC,CAAC,QAAQ,yBAAgB;AAGhE,OAAO,MAAMC,UAAU,GAAIC,CAAc,IACvCR,UAAU,CAACS,MAAM,CAAC;EAChBC,IAAI,EAAE;IACJC,QAAQ,EAAE,UAAU;IACpBC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAEV,KAAK,CAAC,EAAE,CAAC;IACjBW,UAAU,EAAE,QAAQ;IACpB;IACA;IACA;IACAC,MAAM,EAAE;EACV,CAAC;EACDC,KAAK,EAAE;IACLC,aAAa,EAAE,KAAK;IACpBH,UAAU,EAAE,QAAQ;IACpBI,GAAG,EAAEf,KAAK,CAAC,CAAC,CAAC;IACbgB,eAAe,EAAEZ,CAAC,CAACa,cAAc;IACjCC,YAAY,EAAEnB,MAAM,CAACoB,EAAE;IACvBC,iBAAiB,EAAEpB,KAAK,CAAC,CAAC,CAAC;IAC3BqB,eAAe,EAAErB,KAAK,CAAC,CAAC,CAAC;IACzBsB,QAAQ,EAAE;EACZ,CAAC;EACDC,GAAG,EAAE;IACH;IACAC,KAAK,EAAE1B,CAAC,CAAC,CAAC,CAAC;IACX2B,MAAM,EAAE3B,CAAC,CAAC,CAAC,CAAC;IACZoB,YAAY,EAAEpB,CAAC,CAAC,CAAC;EACnB,CAAC;EACD4B,IAAI,EAAE;IACJC,KAAK,EAAEvB,CAAC,CAACwB,gBAAgB;IACzBC,QAAQ,EAAE3B,CAAC,CAAC4B,EAAE;IACdC,UAAU,EAAElC,EAAE,CAACmC,MAAM;IACrBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC;;AAEJ;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,IAAe,EAAE/B,CAAc,EAAiB;EAC1E,QAAQ+B,IAAI;IACV,KAAK,SAAS;MACZ,OAAO/B,CAAC,CAACgC,OAAO;IAClB,KAAK,OAAO;MACV,OAAOhC,CAAC,CAACiC,KAAK;IAChB,KAAK,MAAM;MACT,OAAO,IAAI;EACf;AACF","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","fw","r","radius","space","type","t","makeStyles","c","create","host","position","left","right","alignItems","zIndex","toast","flexDirection","gap","backgroundColor","inverseSurface","borderRadius","md","paddingHorizontal","paddingVertical","maxWidth","dot","width","height","text","color","inverseOnSurface","fontSize","sm","fontWeight","medium","flexShrink","dotColorFor","kind","success","error"],"sourceRoot":"../../../../../src","sources":["components/ui/Toast/styles.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,cAAc;AAEzC,SAASC,EAAE,EAAEC,CAAC,EAAEC,MAAM,EAAEC,KAAK,EAAEC,IAAI,IAAIC,CAAC,QAAQ,yBAAgB;AAGhE,OAAO,MAAMC,UAAU,GAAIC,CAAc,IACvCR,UAAU,CAACS,MAAM,CAAC;EAChBC,IAAI,EAAE;IACJ;IACAC,QAAQ,EAAE,UAAU;IACpBC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,UAAU,EAAE,QAAQ;IACpB;IACA;IACA;IACAC,MAAM,EAAE;EACV,CAAC;EACDC,KAAK,EAAE;IACLC,aAAa,EAAE,KAAK;IACpBH,UAAU,EAAE,QAAQ;IACpBI,GAAG,EAAEd,KAAK,CAAC,CAAC,CAAC;IACbe,eAAe,EAAEX,CAAC,CAACY,cAAc;IACjCC,YAAY,EAAElB,MAAM,CAACmB,EAAE;IACvBC,iBAAiB,EAAEnB,KAAK,CAAC,CAAC,CAAC;IAC3BoB,eAAe,EAAEpB,KAAK,CAAC,CAAC,CAAC;IACzBqB,QAAQ,EAAE;EACZ,CAAC;EACDC,GAAG,EAAE;IACH;IACAC,KAAK,EAAEzB,CAAC,CAAC,CAAC,CAAC;IACX0B,MAAM,EAAE1B,CAAC,CAAC,CAAC,CAAC;IACZmB,YAAY,EAAEnB,CAAC,CAAC,CAAC;EACnB,CAAC;EACD2B,IAAI,EAAE;IACJC,KAAK,EAAEtB,CAAC,CAACuB,gBAAgB;IACzBC,QAAQ,EAAE1B,CAAC,CAAC2B,EAAE;IACdC,UAAU,EAAEjC,EAAE,CAACkC,MAAM;IACrBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC;;AAEJ;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,IAAe,EAAE9B,CAAc,EAAiB;EAC1E,QAAQ8B,IAAI;IACV,KAAK,SAAS;MACZ,OAAO9B,CAAC,CAAC+B,OAAO;IAClB,KAAK,OAAO;MACV,OAAO/B,CAAC,CAACgC,KAAK;IAChB,KAAK,MAAM;MACT,OAAO,IAAI;EACf;AACF","ignoreList":[]}
@@ -13,12 +13,14 @@ function emit(input, kind = 'info') {
13
13
  id: ++_id,
14
14
  message: input,
15
15
  kind,
16
- duration: 3000
16
+ duration: 3000,
17
+ position: 'bottom'
17
18
  } : {
18
19
  id: ++_id,
19
20
  message: input.message,
20
21
  kind: input.kind ?? kind,
21
- duration: input.duration ?? 3000
22
+ duration: input.duration ?? 3000,
23
+ position: input.position ?? 'bottom'
22
24
  };
23
25
  _subs.forEach(s => s(entry));
24
26
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_id","_subs","Set","emit","input","kind","entry","id","message","duration","forEach","s","toast","Object","assign","info","success","error"],"sourceRoot":"../../../../../src","sources":["components/ui/Toast/toast.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAGA,IAAIA,GAAG,GAAG,CAAC;AACX,OAAO,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAAa,CAAC;AAE1C,SAASC,IAAIA,CAACC,KAAiB,EAAEC,IAAe,GAAG,MAAM,EAAE;EACzD,MAAMC,KAAiB,GACrB,OAAOF,KAAK,KAAK,QAAQ,GACrB;IAAEG,EAAE,EAAE,EAAEP,GAAG;IAAEQ,OAAO,EAAEJ,KAAK;IAAEC,IAAI;IAAEI,QAAQ,EAAE;EAAK,CAAC,GACnD;IACEF,EAAE,EAAE,EAAEP,GAAG;IACTQ,OAAO,EAAEJ,KAAK,CAACI,OAAO;IACtBH,IAAI,EAAED,KAAK,CAACC,IAAI,IAAIA,IAAI;IACxBI,QAAQ,EAAEL,KAAK,CAACK,QAAQ,IAAI;EAC9B,CAAC;EACPR,KAAK,CAACS,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACL,KAAK,CAAC,CAAC;AAChC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMM,KAAK,GAAGC,MAAM,CAACC,MAAM,CAAEV,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,MAAM,CAAC,EAAE;EAC7EW,IAAI,EAAGX,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,MAAM,CAAC;EAChDY,OAAO,EAAGZ,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,SAAS,CAAC;EACtDa,KAAK,EAAGb,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,OAAO;AACnD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_id","_subs","Set","emit","input","kind","entry","id","message","duration","position","forEach","s","toast","Object","assign","info","success","error"],"sourceRoot":"../../../../../src","sources":["components/ui/Toast/toast.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAGA,IAAIA,GAAG,GAAG,CAAC;AACX,OAAO,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAAa,CAAC;AAE1C,SAASC,IAAIA,CAACC,KAAiB,EAAEC,IAAe,GAAG,MAAM,EAAE;EACzD,MAAMC,KAAiB,GACrB,OAAOF,KAAK,KAAK,QAAQ,GACrB;IAAEG,EAAE,EAAE,EAAEP,GAAG;IAAEQ,OAAO,EAAEJ,KAAK;IAAEC,IAAI;IAAEI,QAAQ,EAAE,IAAI;IAAEC,QAAQ,EAAE;EAAS,CAAC,GACvE;IACEH,EAAE,EAAE,EAAEP,GAAG;IACTQ,OAAO,EAAEJ,KAAK,CAACI,OAAO;IACtBH,IAAI,EAAED,KAAK,CAACC,IAAI,IAAIA,IAAI;IACxBI,QAAQ,EAAEL,KAAK,CAACK,QAAQ,IAAI,IAAI;IAChCC,QAAQ,EAAEN,KAAK,CAACM,QAAQ,IAAI;EAC9B,CAAC;EACPT,KAAK,CAACU,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACN,KAAK,CAAC,CAAC;AAChC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMO,KAAK,GAAGC,MAAM,CAACC,MAAM,CAAEX,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,MAAM,CAAC,EAAE;EAC7EY,IAAI,EAAGZ,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,MAAM,CAAC;EAChDa,OAAO,EAAGb,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,SAAS,CAAC;EACtDc,KAAK,EAAGd,KAAiB,IAAKD,IAAI,CAACC,KAAK,EAAE,OAAO;AACnD,CAAC,CAAC","ignoreList":[]}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  export { Avatar } from "./Avatar/index.js";
4
- export { BottomSheet } from "./BottomSheet/index.js";
5
4
  export { BlurLayer } from "./BlurLayer/index.js";
6
5
  export { Button } from "./Button/index.js";
7
6
  export { Card } from "./Card/index.js";
@@ -9,7 +8,6 @@ export { Carousel } from "./Carousel/index.js";
9
8
  export { Cell, List } from "./Cell/index.js";
10
9
  export { Checkbox } from "./Checkbox/index.js";
11
10
  export { Chip } from "./Chip/index.js";
12
- export { confirm, ConfirmHost } from "./Confirm/index.js";
13
11
  export { DrawerHeader } from "./DrawerHeader/index.js";
14
12
  export { Empty } from "./Empty/index.js";
15
13
  export { EntryCard } from "./EntryCard/index.js";
@@ -1 +1 @@
1
- {"version":3,"names":["Avatar","BottomSheet","BlurLayer","Button","Card","Carousel","Cell","List","Checkbox","Chip","confirm","ConfirmHost","DrawerHeader","Empty","EntryCard","Form","FormGroup","FormRow","Grid","Icon","IconButton","Input","Logo","NavBar","PasswordInput","Pulse","PulseDot","usePulse","Radio","Reveal","Search","Skeleton","Segmented","Spinner","StatusDot","Stepper","Switch","TabBar","Tabs","Tag","Textarea","Thumbnail","toast","ToastHost"],"sourceRoot":"../../../../src","sources":["components/ui/index.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,mBAAU;AAEjC,SAASC,WAAW,QAAQ,wBAAe;AAE3C,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,IAAI,EAAEC,IAAI,QAAQ,iBAAQ;AAEnC,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,OAAO,EAAEC,WAAW,QAAQ,oBAAW;AAEhD,SAASC,YAAY,QAAQ,yBAAgB;AAE7C,SAASC,KAAK,QAAQ,kBAAS;AAE/B,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,IAAI,EAAEC,SAAS,EAAEC,OAAO,QAAQ,iBAAQ;AAEjD,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,UAAU,QAAQ,uBAAc;AAEzC,SAASC,KAAK,QAAQ,kBAAS;AAE/B,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,aAAa,QAAQ,0BAAiB;AAE/C,SAASC,KAAK,EAAEC,QAAQ,EAAEC,QAAQ,QAAQ,kBAAS;AAEnD,SAASC,KAAK,QAAQ,kBAAS;AAE/B,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,OAAO,QAAQ,oBAAW;AAEnC,SAASC,SAAS,QAAQ,sBAAa;AAMvC,SAASC,OAAO,QAAQ,oBAAW;AAEnC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,GAAG,QAAQ,gBAAO;AAE3B,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,KAAK,EAAEC,SAAS,QAAQ,kBAAS","ignoreList":[]}
1
+ {"version":3,"names":["Avatar","BlurLayer","Button","Card","Carousel","Cell","List","Checkbox","Chip","DrawerHeader","Empty","EntryCard","Form","FormGroup","FormRow","Grid","Icon","IconButton","Input","Logo","NavBar","PasswordInput","Pulse","PulseDot","usePulse","Radio","Reveal","Search","Skeleton","Segmented","Spinner","StatusDot","Stepper","Switch","TabBar","Tabs","Tag","Textarea","Thumbnail","toast","ToastHost"],"sourceRoot":"../../../../src","sources":["components/ui/index.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,mBAAU;AAEjC,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,IAAI,EAAEC,IAAI,QAAQ,iBAAQ;AAEnC,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,YAAY,QAAQ,yBAAgB;AAE7C,SAASC,KAAK,QAAQ,kBAAS;AAE/B,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,IAAI,EAAEC,SAAS,EAAEC,OAAO,QAAQ,iBAAQ;AAEjD,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,UAAU,QAAQ,uBAAc;AAEzC,SAASC,KAAK,QAAQ,kBAAS;AAE/B,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,aAAa,QAAQ,0BAAiB;AAE/C,SAASC,KAAK,EAAEC,QAAQ,EAAEC,QAAQ,QAAQ,kBAAS;AAEnD,SAASC,KAAK,QAAQ,kBAAS;AAE/B,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,OAAO,QAAQ,oBAAW;AAEnC,SAASC,SAAS,QAAQ,sBAAa;AAMvC,SAASC,OAAO,QAAQ,oBAAW;AAEnC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,MAAM,QAAQ,mBAAU;AAEjC,SAASC,IAAI,QAAQ,iBAAQ;AAE7B,SAASC,GAAG,QAAQ,gBAAO;AAE3B,SAASC,QAAQ,QAAQ,qBAAY;AAErC,SAASC,SAAS,QAAQ,sBAAa;AAEvC,SAASC,KAAK,EAAEC,SAAS,QAAQ,kBAAS","ignoreList":[]}
@@ -2,6 +2,7 @@
2
2
 
3
3
  // @unif/react-native-design 公共入口:theme(设计令牌)/ icons / utils / 组件(ui · business)。
4
4
  // 文档站共享首页样式以 `./docs-home.css` 子路径导出(供各 Docusaurus 文档站 import,见 package.json#exports)。
5
+ // 0.5.1:修 docs-home.css 深色 OS 兜底选择器恒真(系统深色 + 站点切浅色时内容区被强制深色),见 #52。
5
6
  export * from "./theme/index.js";
6
7
  export * from "./icons/index.js";
7
8
  export * from "./utils/testID/index.js";
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA;AACA;AACA,cAAc,kBAAS;AACvB,cAAc,kBAAS;AACvB,cAAc,yBAAgB;AAC9B,cAAc,yBAAgB;AAC9B,cAAc,0BAAiB;AAC/B,cAAc,gCAAuB","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA,cAAc,kBAAS;AACvB,cAAc,kBAAS;AACvB,cAAc,yBAAgB;AAC9B,cAAc,yBAAgB;AAC9B,cAAc,0BAAiB;AAC/B,cAAc,gCAAuB","ignoreList":[]}
@@ -136,7 +136,7 @@ export declare const Input: import("react").ForwardRefExoticComponent<Omit<Reado
136
136
  pointerEvents?: ("auto" | "box-none" | "box-only" | "none") | undefined;
137
137
  removeClippedSubviews?: boolean | undefined;
138
138
  experimental_accessibilityOrder?: Array<string> | undefined;
139
- }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "scrollEnabled" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
139
+ }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "scrollEnabled" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
140
140
  disableKeyboardShortcuts?: boolean | undefined;
141
141
  clearButtonMode?: ("never" | "while-editing" | "unless-editing" | "always") | undefined;
142
142
  clearTextOnFocus?: boolean | undefined;
@@ -153,7 +153,7 @@ export declare const Input: import("react").ForwardRefExoticComponent<Omit<Reado
153
153
  lineBreakStrategyIOS?: ("none" | "standard" | "hangul-word" | "push-out") | undefined;
154
154
  lineBreakModeIOS?: ("wordWrapping" | "char" | "clip" | "head" | "middle" | "tail") | undefined;
155
155
  smartInsertDelete?: boolean | undefined;
156
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
156
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
157
157
  cursorColor?: import("react-native").ColorValue | undefined;
158
158
  selectionHandleColor?: import("react-native").ColorValue | undefined;
159
159
  disableFullscreenUI?: boolean | undefined;
@@ -166,7 +166,7 @@ export declare const Input: import("react").ForwardRefExoticComponent<Omit<Reado
166
166
  showSoftInputOnFocus?: boolean | undefined;
167
167
  textBreakStrategy?: ("simple" | "highQuality" | "balanced") | undefined;
168
168
  underlineColorAndroid?: import("react-native").ColorValue | undefined;
169
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
169
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
170
170
  experimental_acceptDragAndDropTypes?: ReadonlyArray<string> | undefined;
171
171
  autoCapitalize?: import("react-native").AutoCapitalize | undefined;
172
172
  autoComplete?: ("additional-name" | "address-line1" | "address-line2" | "birthdate-day" | "birthdate-full" | "birthdate-month" | "birthdate-year" | "cc-csc" | "cc-exp" | "cc-exp-day" | "cc-exp-month" | "cc-exp-year" | "cc-number" | "cc-name" | "cc-given-name" | "cc-middle-name" | "cc-family-name" | "cc-type" | "country" | "current-password" | "email" | "family-name" | "gender" | "given-name" | "honorific-prefix" | "honorific-suffix" | "name" | "name-family" | "name-given" | "name-middle" | "name-middle-initial" | "name-prefix" | "name-suffix" | "new-password" | "nickname" | "one-time-code" | "organization" | "organization-title" | "password" | "password-new" | "postal-address" | "postal-address-country" | "postal-address-extended" | "postal-address-extended-postal-code" | "postal-address-locality" | "postal-address-region" | "postal-code" | "street-address" | "sms-otp" | "tel" | "tel-country-code" | "tel-national" | "tel-device" | "url" | "username" | "username-new" | "off") | undefined;
@@ -133,7 +133,7 @@ export declare const Search: React.ForwardRefExoticComponent<Omit<Readonly<Omit<
133
133
  pointerEvents?: ("auto" | "box-none" | "box-only" | "none") | undefined;
134
134
  removeClippedSubviews?: boolean | undefined;
135
135
  experimental_accessibilityOrder?: Array<string> | undefined;
136
- }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "scrollEnabled" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
136
+ }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "scrollEnabled" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
137
137
  disableKeyboardShortcuts?: boolean | undefined;
138
138
  clearButtonMode?: ("never" | "while-editing" | "unless-editing" | "always") | undefined;
139
139
  clearTextOnFocus?: boolean | undefined;
@@ -150,7 +150,7 @@ export declare const Search: React.ForwardRefExoticComponent<Omit<Readonly<Omit<
150
150
  lineBreakStrategyIOS?: ("none" | "standard" | "hangul-word" | "push-out") | undefined;
151
151
  lineBreakModeIOS?: ("wordWrapping" | "char" | "clip" | "head" | "middle" | "tail") | undefined;
152
152
  smartInsertDelete?: boolean | undefined;
153
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
153
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
154
154
  cursorColor?: import("react-native").ColorValue | undefined;
155
155
  selectionHandleColor?: import("react-native").ColorValue | undefined;
156
156
  disableFullscreenUI?: boolean | undefined;
@@ -163,7 +163,7 @@ export declare const Search: React.ForwardRefExoticComponent<Omit<Readonly<Omit<
163
163
  showSoftInputOnFocus?: boolean | undefined;
164
164
  textBreakStrategy?: ("simple" | "highQuality" | "balanced") | undefined;
165
165
  underlineColorAndroid?: import("react-native").ColorValue | undefined;
166
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
166
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
167
167
  experimental_acceptDragAndDropTypes?: ReadonlyArray<string> | undefined;
168
168
  autoCapitalize?: import("react-native").AutoCapitalize | undefined;
169
169
  autoComplete?: ("additional-name" | "address-line1" | "address-line2" | "birthdate-day" | "birthdate-full" | "birthdate-month" | "birthdate-year" | "cc-csc" | "cc-exp" | "cc-exp-day" | "cc-exp-month" | "cc-exp-year" | "cc-number" | "cc-name" | "cc-given-name" | "cc-middle-name" | "cc-family-name" | "cc-type" | "country" | "current-password" | "email" | "family-name" | "gender" | "given-name" | "honorific-prefix" | "honorific-suffix" | "name" | "name-family" | "name-given" | "name-middle" | "name-middle-initial" | "name-prefix" | "name-suffix" | "new-password" | "nickname" | "one-time-code" | "organization" | "organization-title" | "password" | "password-new" | "postal-address" | "postal-address-country" | "postal-address-extended" | "postal-address-extended-postal-code" | "postal-address-locality" | "postal-address-region" | "postal-code" | "street-address" | "sms-otp" | "tel" | "tel-country-code" | "tel-national" | "tel-device" | "url" | "username" | "username-new" | "off") | undefined;
@@ -144,7 +144,7 @@ export declare const TextFieldBase: React.ForwardRefExoticComponent<Readonly<Omi
144
144
  pointerEvents?: ("auto" | "box-none" | "box-only" | "none") | undefined;
145
145
  removeClippedSubviews?: boolean | undefined;
146
146
  experimental_accessibilityOrder?: Array<string> | undefined;
147
- }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "scrollEnabled" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
147
+ }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "scrollEnabled" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
148
148
  disableKeyboardShortcuts?: boolean | undefined;
149
149
  clearButtonMode?: ("never" | "while-editing" | "unless-editing" | "always") | undefined;
150
150
  clearTextOnFocus?: boolean | undefined;
@@ -161,7 +161,7 @@ export declare const TextFieldBase: React.ForwardRefExoticComponent<Readonly<Omi
161
161
  lineBreakStrategyIOS?: ("none" | "standard" | "hangul-word" | "push-out") | undefined;
162
162
  lineBreakModeIOS?: ("wordWrapping" | "char" | "clip" | "head" | "middle" | "tail") | undefined;
163
163
  smartInsertDelete?: boolean | undefined;
164
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
164
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
165
165
  cursorColor?: import("react-native").ColorValue | undefined;
166
166
  selectionHandleColor?: import("react-native").ColorValue | undefined;
167
167
  disableFullscreenUI?: boolean | undefined;
@@ -174,7 +174,7 @@ export declare const TextFieldBase: React.ForwardRefExoticComponent<Readonly<Omi
174
174
  showSoftInputOnFocus?: boolean | undefined;
175
175
  textBreakStrategy?: ("simple" | "highQuality" | "balanced") | undefined;
176
176
  underlineColorAndroid?: import("react-native").ColorValue | undefined;
177
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
177
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
178
178
  experimental_acceptDragAndDropTypes?: ReadonlyArray<string> | undefined;
179
179
  autoCapitalize?: import("react-native").AutoCapitalize | undefined;
180
180
  autoComplete?: ("additional-name" | "address-line1" | "address-line2" | "birthdate-day" | "birthdate-full" | "birthdate-month" | "birthdate-year" | "cc-csc" | "cc-exp" | "cc-exp-day" | "cc-exp-month" | "cc-exp-year" | "cc-number" | "cc-name" | "cc-given-name" | "cc-middle-name" | "cc-family-name" | "cc-type" | "country" | "current-password" | "email" | "family-name" | "gender" | "given-name" | "honorific-prefix" | "honorific-suffix" | "name" | "name-family" | "name-given" | "name-middle" | "name-middle-initial" | "name-prefix" | "name-suffix" | "new-password" | "nickname" | "one-time-code" | "organization" | "organization-title" | "password" | "password-new" | "postal-address" | "postal-address-country" | "postal-address-extended" | "postal-address-extended-postal-code" | "postal-address-locality" | "postal-address-region" | "postal-code" | "street-address" | "sms-otp" | "tel" | "tel-country-code" | "tel-national" | "tel-device" | "url" | "username" | "username-new" | "off") | undefined;
@@ -138,7 +138,7 @@ export declare const Textarea: import("react").ForwardRefExoticComponent<Omit<Re
138
138
  pointerEvents?: ("auto" | "box-none" | "box-only" | "none") | undefined;
139
139
  removeClippedSubviews?: boolean | undefined;
140
140
  experimental_accessibilityOrder?: Array<string> | undefined;
141
- }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "scrollEnabled" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
141
+ }>, never>>, "style" | "experimental_accessibilityOrder">, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "lineBreakStrategyIOS" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "disableKeyboardShortcuts" | "clearButtonMode" | "clearTextOnFocus" | "dataDetectorTypes" | "enablesReturnKeyAutomatically" | "inputAccessoryViewID" | "inputAccessoryViewButtonLabel" | "keyboardAppearance" | "passwordRules" | "rejectResponderTermination" | "scrollEnabled" | "spellCheck" | "textContentType" | "lineBreakModeIOS" | "smartInsertDelete" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
142
142
  disableKeyboardShortcuts?: boolean | undefined;
143
143
  clearButtonMode?: ("never" | "while-editing" | "unless-editing" | "always") | undefined;
144
144
  clearTextOnFocus?: boolean | undefined;
@@ -155,7 +155,7 @@ export declare const Textarea: import("react").ForwardRefExoticComponent<Omit<Re
155
155
  lineBreakStrategyIOS?: ("none" | "standard" | "hangul-word" | "push-out") | undefined;
156
156
  lineBreakModeIOS?: ("wordWrapping" | "char" | "clip" | "head" | "middle" | "tail") | undefined;
157
157
  smartInsertDelete?: boolean | undefined;
158
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
158
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "textBreakStrategy" | "allowFontScaling" | "maxFontSizeMultiplier" | "numberOfLines" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "cursorColor" | "selectionHandleColor" | "disableFullscreenUI" | "importantForAutofill" | "inlineImageLeft" | "inlineImagePadding" | "returnKeyLabel" | "rows" | "showSoftInputOnFocus" | "underlineColorAndroid" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
159
159
  cursorColor?: import("react-native").ColorValue | undefined;
160
160
  selectionHandleColor?: import("react-native").ColorValue | undefined;
161
161
  disableFullscreenUI?: boolean | undefined;
@@ -168,7 +168,7 @@ export declare const Textarea: import("react").ForwardRefExoticComponent<Omit<Re
168
168
  showSoftInputOnFocus?: boolean | undefined;
169
169
  textBreakStrategy?: ("simple" | "highQuality" | "balanced") | undefined;
170
170
  underlineColorAndroid?: import("react-native").ColorValue | undefined;
171
- }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "onScroll" | "onContentSizeChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
171
+ }>, "value" | "textAlign" | "onBlur" | "onFocus" | "style" | "selectionColor" | "allowFontScaling" | "maxFontSizeMultiplier" | "onPress" | "onPressIn" | "onPressOut" | "onChange" | "experimental_acceptDragAndDropTypes" | "autoCapitalize" | "autoComplete" | "autoCorrect" | "autoFocus" | "caretHidden" | "contextMenuHidden" | "defaultValue" | "editable" | "forwardedRef" | "enterKeyHint" | "inputMode" | "keyboardType" | "maxLength" | "multiline" | "onChangeText" | "onContentSizeChange" | "onEndEditing" | "onKeyPress" | "onSelectionChange" | "onSubmitEditing" | "onScroll" | "placeholder" | "placeholderTextColor" | "readOnly" | "returnKeyType" | "secureTextEntry" | "selection" | "selectTextOnFocus" | "blurOnSubmit" | "submitBehavior"> & Omit<Readonly<{
172
172
  experimental_acceptDragAndDropTypes?: ReadonlyArray<string> | undefined;
173
173
  autoCapitalize?: import("react-native").AutoCapitalize | undefined;
174
174
  autoComplete?: ("additional-name" | "address-line1" | "address-line2" | "birthdate-day" | "birthdate-full" | "birthdate-month" | "birthdate-year" | "cc-csc" | "cc-exp" | "cc-exp-day" | "cc-exp-month" | "cc-exp-year" | "cc-number" | "cc-name" | "cc-given-name" | "cc-middle-name" | "cc-family-name" | "cc-type" | "country" | "current-password" | "email" | "family-name" | "gender" | "given-name" | "honorific-prefix" | "honorific-suffix" | "name" | "name-family" | "name-given" | "name-middle" | "name-middle-initial" | "name-prefix" | "name-suffix" | "new-password" | "nickname" | "one-time-code" | "organization" | "organization-title" | "password" | "password-new" | "postal-address" | "postal-address-country" | "postal-address-extended" | "postal-address-extended-postal-code" | "postal-address-locality" | "postal-address-region" | "postal-code" | "street-address" | "sms-otp" | "tel" | "tel-country-code" | "tel-national" | "tel-device" | "url" | "username" | "username-new" | "off") | undefined;
@@ -3,6 +3,9 @@ import type { ToastHostProps } from './types';
3
3
  /**
4
4
  * 在根附近挂一次。监听 toast() 调用并渲染当前 toast。
5
5
  * 同一时间只显示一条 —— 新的会替换旧的。
6
+ *
7
+ * 位置由 `entry.position`('top' / 'bottom' / 'center')决定,top/bottom 自动避让
8
+ * safe-area;进入动画方向随位置(top 从上滑、bottom/center 从下滑)。
6
9
  */
7
10
  export declare function ToastHost({ testID, }?: ToastHostProps): React.JSX.Element | null;
8
11
  //# sourceMappingURL=ToastHost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToastHost.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/ToastHost.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAY3D,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,SAAS,CAAC;AAEtE;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,MAAM,GACP,GAAE,cAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAgEhD"}
1
+ {"version":3,"file":"ToastHost.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/ToastHost.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAa3D,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,SAAS,CAAC;AAEtE;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EACxB,MAAM,GACP,GAAE,cAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CA6EhD"}
@@ -1,4 +1,4 @@
1
1
  export { toast } from './toast';
2
2
  export { ToastHost } from './ToastHost';
3
- export type { ToastEntry, ToastHostProps, ToastInput, ToastKind, } from './types';
3
+ export type { ToastEntry, ToastHostProps, ToastInput, ToastKind, ToastPosition, } from './types';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACV,UAAU,EACV,cAAc,EACd,UAAU,EACV,SAAS,GACV,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACV,UAAU,EACV,cAAc,EACd,UAAU,EACV,SAAS,EACT,aAAa,GACd,MAAM,SAAS,CAAC"}
@@ -5,7 +5,6 @@ export declare const makeStyles: (c: ColorTokens) => Readonly<{
5
5
  position: "absolute";
6
6
  left: number;
7
7
  right: number;
8
- bottom: number;
9
8
  alignItems: "center";
10
9
  zIndex: number;
11
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/styles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,UAAU,GAAI,GAAG,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCrC,CAAC;AAEL;yDACyD;AACzD,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAS1E"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/styles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,UAAU,GAAI,GAAG,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCrC,CAAC;AAEL;yDACyD;AACzD,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAS1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/toast.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAc,UAAU,EAAa,MAAM,SAAS,CAAC;AAG7E,eAAO,MAAM,KAAK,iBAAwB,CAAC;AAe3C;;;;;;;GAOG;AACH,eAAO,MAAM,KAAK,WAAyB,UAAU;kBACrC,UAAU;qBACP,UAAU;mBACZ,UAAU;CACzB,CAAC"}
1
+ {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/toast.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAc,UAAU,EAAa,MAAM,SAAS,CAAC;AAG7E,eAAO,MAAM,KAAK,iBAAwB,CAAC;AAgB3C;;;;;;;GAOG;AACH,eAAO,MAAM,KAAK,WAAyB,UAAU;kBACrC,UAAU;qBACP,UAAU;mBACZ,UAAU;CACzB,CAAC"}
@@ -1,17 +1,21 @@
1
1
  /** Toast 类型:info=灰点 / success=绿点 / error=红点 */
2
2
  export type ToastKind = 'info' | 'success' | 'error';
3
+ /** Toast 显示位置:top=顶部 / bottom=底部(默认) / center=屏幕居中 */
4
+ export type ToastPosition = 'top' | 'bottom' | 'center';
3
5
  /**
4
6
  * `toast(...)` 调用入参:
5
- * - 字符串简写:默认 info kind 2200ms duration
6
- * - 对象形式:可指定 kind duration
7
+ * - 字符串简写:默认 info kind、bottom 位置、3000ms duration
8
+ * - 对象形式:可指定 kind / duration / position
7
9
  */
8
10
  export type ToastInput = string | {
9
11
  /** 消息文本 */
10
12
  message: string;
11
13
  /** Toast 类型,默认 'info' */
12
14
  kind?: ToastKind;
13
- /** 自动消失毫秒数,默认 2200 */
15
+ /** 自动消失毫秒数,默认 3000 */
14
16
  duration?: number;
17
+ /** 显示位置,默认 'bottom' */
18
+ position?: ToastPosition;
15
19
  };
16
20
  export type ToastEntry = {
17
21
  /** 唯一 id(自增),用于动画切换识别 */
@@ -22,6 +26,8 @@ export type ToastEntry = {
22
26
  kind: ToastKind;
23
27
  /** 显示毫秒数 */
24
28
  duration: number;
29
+ /** 显示位置 */
30
+ position: ToastPosition;
25
31
  };
26
32
  /** Toast 订阅者函数签名(ToastHost 内部用) */
27
33
  export type Subscriber = (entry: ToastEntry) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/types.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAErD;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN;IACE,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEN,MAAM,MAAM,UAAU,GAAG;IACvB,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,mCAAmC;AACnC,MAAM,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;AAErD,MAAM,MAAM,cAAc,GAAG;IAC3B,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/Toast/types.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAErD,sDAAsD;AACtD,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAExD;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN;IACE,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B,CAAC;AAEN,MAAM,MAAM,UAAU,GAAG;IACvB,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW;IACX,QAAQ,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF,mCAAmC;AACnC,MAAM,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;AAErD,MAAM,MAAM,cAAc,GAAG;IAC3B,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}