@medway-ui/native 1.9.2 → 1.10.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 (297) hide show
  1. package/README.md +2 -2
  2. package/lib/commonjs/components/Alert.js +36 -25
  3. package/lib/commonjs/components/Alert.js.map +1 -1
  4. package/lib/commonjs/components/AlertDialog.js +22 -23
  5. package/lib/commonjs/components/AlertDialog.js.map +1 -1
  6. package/lib/commonjs/components/Avatar.js +4 -4
  7. package/lib/commonjs/components/Badge.js +22 -15
  8. package/lib/commonjs/components/Badge.js.map +1 -1
  9. package/lib/commonjs/components/Button.js +56 -42
  10. package/lib/commonjs/components/Button.js.map +1 -1
  11. package/lib/commonjs/components/CardNews.js +18 -13
  12. package/lib/commonjs/components/CardNews.js.map +1 -1
  13. package/lib/commonjs/components/Carousel.js +12 -8
  14. package/lib/commonjs/components/Carousel.js.map +1 -1
  15. package/lib/commonjs/components/Checkbox.js +5 -5
  16. package/lib/commonjs/components/Checkbox.js.map +1 -1
  17. package/lib/commonjs/components/Chip.js +52 -23
  18. package/lib/commonjs/components/Chip.js.map +1 -1
  19. package/lib/commonjs/components/Choice.js +26 -12
  20. package/lib/commonjs/components/Choice.js.map +1 -1
  21. package/lib/commonjs/components/Dialog.js +16 -8
  22. package/lib/commonjs/components/Dialog.js.map +1 -1
  23. package/lib/commonjs/components/DropdownMenu.js +35 -14
  24. package/lib/commonjs/components/DropdownMenu.js.map +1 -1
  25. package/lib/commonjs/components/EmptyState.js +5 -5
  26. package/lib/commonjs/components/EmptyState.js.map +1 -1
  27. package/lib/commonjs/components/FallbackImage.js +42 -35
  28. package/lib/commonjs/components/FallbackImage.js.map +1 -1
  29. package/lib/commonjs/components/Feed.js +6 -5
  30. package/lib/commonjs/components/Feed.js.map +1 -1
  31. package/lib/commonjs/components/FeedNotice.js +3 -3
  32. package/lib/commonjs/components/Feedback.js +2 -4
  33. package/lib/commonjs/components/Feedback.js.map +1 -1
  34. package/lib/commonjs/components/Filter.js +6 -9
  35. package/lib/commonjs/components/Filter.js.map +1 -1
  36. package/lib/commonjs/components/IndexLevel.js +4 -4
  37. package/lib/commonjs/components/Input.js +25 -20
  38. package/lib/commonjs/components/Input.js.map +1 -1
  39. package/lib/commonjs/components/InvitePopover.js +19 -8
  40. package/lib/commonjs/components/InvitePopover.js.map +1 -1
  41. package/lib/commonjs/components/Label.js +2 -2
  42. package/lib/commonjs/components/LeaderboardCard.js +3 -2
  43. package/lib/commonjs/components/LeaderboardCard.js.map +1 -1
  44. package/lib/commonjs/components/Loading.js +18 -15
  45. package/lib/commonjs/components/Loading.js.map +1 -1
  46. package/lib/commonjs/components/LoadingOverlay.js +36 -43
  47. package/lib/commonjs/components/LoadingOverlay.js.map +1 -1
  48. package/lib/commonjs/components/MemberRow.js +7 -6
  49. package/lib/commonjs/components/MemberRow.js.map +1 -1
  50. package/lib/commonjs/components/PageHeader.js +3 -2
  51. package/lib/commonjs/components/PageHeader.js.map +1 -1
  52. package/lib/commonjs/components/Popover.js +1 -1
  53. package/lib/commonjs/components/PostForm.js +38 -24
  54. package/lib/commonjs/components/PostForm.js.map +1 -1
  55. package/lib/commonjs/components/PrizeCollection.js +5 -5
  56. package/lib/commonjs/components/PrizeCollection.js.map +1 -1
  57. package/lib/commonjs/components/RadioGroup.js +65 -15
  58. package/lib/commonjs/components/RadioGroup.js.map +1 -1
  59. package/lib/commonjs/components/SectionHeader.js +3 -2
  60. package/lib/commonjs/components/SectionHeader.js.map +1 -1
  61. package/lib/commonjs/components/SegmentControl.js +4 -4
  62. package/lib/commonjs/components/Select.js +7 -6
  63. package/lib/commonjs/components/Select.js.map +1 -1
  64. package/lib/commonjs/components/Separator.js +2 -2
  65. package/lib/commonjs/components/Separator.js.map +1 -1
  66. package/lib/commonjs/components/Sheet.js +17 -11
  67. package/lib/commonjs/components/Sheet.js.map +1 -1
  68. package/lib/commonjs/components/Skeleton.js +2 -2
  69. package/lib/commonjs/components/Skeleton.js.map +1 -1
  70. package/lib/commonjs/components/Switch.js +3 -3
  71. package/lib/commonjs/components/Tabs.js +3 -2
  72. package/lib/commonjs/components/Tabs.js.map +1 -1
  73. package/lib/commonjs/components/Tag.js +52 -32
  74. package/lib/commonjs/components/Tag.js.map +1 -1
  75. package/lib/commonjs/components/Text.js +1 -1
  76. package/lib/commonjs/components/ThemedIcon.js +1 -1
  77. package/lib/commonjs/components/Toast.js +12 -12
  78. package/lib/commonjs/components/Toast.js.map +1 -1
  79. package/lib/commonjs/components/Tooltip.js +2 -2
  80. package/lib/commonjs/editor/NoteEditor.js +190 -67
  81. package/lib/commonjs/editor/NoteEditor.js.map +1 -1
  82. package/lib/commonjs/editor/editorHtml.generated.js +1 -1
  83. package/lib/commonjs/editor/editorHtml.generated.js.map +1 -1
  84. package/lib/commonjs/editor/index.js.map +1 -1
  85. package/lib/commonjs/editor/protocol.js +1 -2
  86. package/lib/commonjs/editor/protocol.js.map +1 -1
  87. package/lib/commonjs/hooks/useThemeColor.js +41 -19
  88. package/lib/commonjs/hooks/useThemeColor.js.map +1 -1
  89. package/lib/commonjs/index.js +46 -46
  90. package/lib/commonjs/lib/backdrop.js +18 -0
  91. package/lib/commonjs/lib/backdrop.js.map +1 -0
  92. package/lib/commonjs/lib/overlay-host.js +5 -3
  93. package/lib/commonjs/lib/overlay-host.js.map +1 -1
  94. package/lib/commonjs/lib/raised-surface.js +1 -1
  95. package/lib/module/components/Alert.js +36 -25
  96. package/lib/module/components/Alert.js.map +1 -1
  97. package/lib/module/components/AlertDialog.js +21 -22
  98. package/lib/module/components/AlertDialog.js.map +1 -1
  99. package/lib/module/components/Avatar.js +4 -4
  100. package/lib/module/components/Badge.js +22 -15
  101. package/lib/module/components/Badge.js.map +1 -1
  102. package/lib/module/components/Button.js +56 -42
  103. package/lib/module/components/Button.js.map +1 -1
  104. package/lib/module/components/CardNews.js +18 -13
  105. package/lib/module/components/CardNews.js.map +1 -1
  106. package/lib/module/components/Carousel.js +12 -8
  107. package/lib/module/components/Carousel.js.map +1 -1
  108. package/lib/module/components/Checkbox.js +5 -5
  109. package/lib/module/components/Checkbox.js.map +1 -1
  110. package/lib/module/components/Chip.js +52 -23
  111. package/lib/module/components/Chip.js.map +1 -1
  112. package/lib/module/components/Choice.js +26 -12
  113. package/lib/module/components/Choice.js.map +1 -1
  114. package/lib/module/components/Dialog.js +16 -8
  115. package/lib/module/components/Dialog.js.map +1 -1
  116. package/lib/module/components/DropdownMenu.js +36 -15
  117. package/lib/module/components/DropdownMenu.js.map +1 -1
  118. package/lib/module/components/EmptyState.js +5 -5
  119. package/lib/module/components/EmptyState.js.map +1 -1
  120. package/lib/module/components/FallbackImage.js +42 -35
  121. package/lib/module/components/FallbackImage.js.map +1 -1
  122. package/lib/module/components/Feed.js +6 -5
  123. package/lib/module/components/Feed.js.map +1 -1
  124. package/lib/module/components/FeedNotice.js +3 -3
  125. package/lib/module/components/Feedback.js +2 -4
  126. package/lib/module/components/Feedback.js.map +1 -1
  127. package/lib/module/components/Filter.js +6 -9
  128. package/lib/module/components/Filter.js.map +1 -1
  129. package/lib/module/components/IndexLevel.js +4 -4
  130. package/lib/module/components/Input.js +24 -18
  131. package/lib/module/components/Input.js.map +1 -1
  132. package/lib/module/components/InvitePopover.js +20 -9
  133. package/lib/module/components/InvitePopover.js.map +1 -1
  134. package/lib/module/components/Label.js +2 -2
  135. package/lib/module/components/LeaderboardCard.js +3 -2
  136. package/lib/module/components/LeaderboardCard.js.map +1 -1
  137. package/lib/module/components/Loading.js +18 -15
  138. package/lib/module/components/Loading.js.map +1 -1
  139. package/lib/module/components/LoadingOverlay.js +37 -44
  140. package/lib/module/components/LoadingOverlay.js.map +1 -1
  141. package/lib/module/components/MemberRow.js +7 -6
  142. package/lib/module/components/MemberRow.js.map +1 -1
  143. package/lib/module/components/PageHeader.js +3 -2
  144. package/lib/module/components/PageHeader.js.map +1 -1
  145. package/lib/module/components/Popover.js +1 -1
  146. package/lib/module/components/PostForm.js +38 -24
  147. package/lib/module/components/PostForm.js.map +1 -1
  148. package/lib/module/components/PrizeCollection.js +5 -5
  149. package/lib/module/components/PrizeCollection.js.map +1 -1
  150. package/lib/module/components/RadioGroup.js +65 -15
  151. package/lib/module/components/RadioGroup.js.map +1 -1
  152. package/lib/module/components/SectionHeader.js +3 -2
  153. package/lib/module/components/SectionHeader.js.map +1 -1
  154. package/lib/module/components/SegmentControl.js +4 -4
  155. package/lib/module/components/Select.js +6 -5
  156. package/lib/module/components/Select.js.map +1 -1
  157. package/lib/module/components/Separator.js +2 -2
  158. package/lib/module/components/Separator.js.map +1 -1
  159. package/lib/module/components/Sheet.js +17 -11
  160. package/lib/module/components/Sheet.js.map +1 -1
  161. package/lib/module/components/Skeleton.js +2 -2
  162. package/lib/module/components/Skeleton.js.map +1 -1
  163. package/lib/module/components/Switch.js +3 -3
  164. package/lib/module/components/Tabs.js +3 -2
  165. package/lib/module/components/Tabs.js.map +1 -1
  166. package/lib/module/components/Tag.js +52 -32
  167. package/lib/module/components/Tag.js.map +1 -1
  168. package/lib/module/components/Text.js +1 -1
  169. package/lib/module/components/ThemedIcon.js +1 -1
  170. package/lib/module/components/Toast.js +12 -12
  171. package/lib/module/components/Toast.js.map +1 -1
  172. package/lib/module/components/Tooltip.js +2 -2
  173. package/lib/module/editor/NoteEditor.js +193 -69
  174. package/lib/module/editor/NoteEditor.js.map +1 -1
  175. package/lib/module/editor/editorHtml.generated.js +1 -1
  176. package/lib/module/editor/editorHtml.generated.js.map +1 -1
  177. package/lib/module/editor/index.js.map +1 -1
  178. package/lib/module/editor/protocol.js +1 -2
  179. package/lib/module/editor/protocol.js.map +1 -1
  180. package/lib/module/hooks/useThemeColor.js +41 -19
  181. package/lib/module/hooks/useThemeColor.js.map +1 -1
  182. package/lib/module/index.js +46 -46
  183. package/lib/module/lib/backdrop.js +15 -0
  184. package/lib/module/lib/backdrop.js.map +1 -0
  185. package/lib/module/lib/overlay-host.js +6 -4
  186. package/lib/module/lib/overlay-host.js.map +1 -1
  187. package/lib/module/lib/raised-surface.js +1 -1
  188. package/lib/typescript/components/Alert.d.ts +1 -1
  189. package/lib/typescript/components/Alert.d.ts.map +1 -1
  190. package/lib/typescript/components/AlertDialog.d.ts +1 -1
  191. package/lib/typescript/components/AlertDialog.d.ts.map +1 -1
  192. package/lib/typescript/components/Badge.d.ts.map +1 -1
  193. package/lib/typescript/components/Button.d.ts +1 -0
  194. package/lib/typescript/components/Button.d.ts.map +1 -1
  195. package/lib/typescript/components/CardNews.d.ts +7 -2
  196. package/lib/typescript/components/CardNews.d.ts.map +1 -1
  197. package/lib/typescript/components/Checkbox.d.ts +3 -1
  198. package/lib/typescript/components/Checkbox.d.ts.map +1 -1
  199. package/lib/typescript/components/Chip.d.ts.map +1 -1
  200. package/lib/typescript/components/Choice.d.ts +4 -1
  201. package/lib/typescript/components/Choice.d.ts.map +1 -1
  202. package/lib/typescript/components/Dialog.d.ts +2 -1
  203. package/lib/typescript/components/Dialog.d.ts.map +1 -1
  204. package/lib/typescript/components/DropdownMenu.d.ts +3 -2
  205. package/lib/typescript/components/DropdownMenu.d.ts.map +1 -1
  206. package/lib/typescript/components/FallbackImage.d.ts.map +1 -1
  207. package/lib/typescript/components/Feed.d.ts.map +1 -1
  208. package/lib/typescript/components/Feedback.d.ts.map +1 -1
  209. package/lib/typescript/components/Filter.d.ts.map +1 -1
  210. package/lib/typescript/components/IndexLevel.d.ts +1 -1
  211. package/lib/typescript/components/Input.d.ts +5 -5
  212. package/lib/typescript/components/Input.d.ts.map +1 -1
  213. package/lib/typescript/components/InvitePopover.d.ts +1 -1
  214. package/lib/typescript/components/InvitePopover.d.ts.map +1 -1
  215. package/lib/typescript/components/LeaderboardCard.d.ts.map +1 -1
  216. package/lib/typescript/components/Loading.d.ts +1 -1
  217. package/lib/typescript/components/Loading.d.ts.map +1 -1
  218. package/lib/typescript/components/LoadingOverlay.d.ts +9 -9
  219. package/lib/typescript/components/LoadingOverlay.d.ts.map +1 -1
  220. package/lib/typescript/components/PageHeader.d.ts.map +1 -1
  221. package/lib/typescript/components/PostForm.d.ts.map +1 -1
  222. package/lib/typescript/components/RadioGroup.d.ts +4 -2
  223. package/lib/typescript/components/RadioGroup.d.ts.map +1 -1
  224. package/lib/typescript/components/SectionHeader.d.ts.map +1 -1
  225. package/lib/typescript/components/SegmentControl.d.ts +1 -1
  226. package/lib/typescript/components/Select.d.ts +2 -1
  227. package/lib/typescript/components/Select.d.ts.map +1 -1
  228. package/lib/typescript/components/Separator.d.ts.map +1 -1
  229. package/lib/typescript/components/Sheet.d.ts +2 -1
  230. package/lib/typescript/components/Sheet.d.ts.map +1 -1
  231. package/lib/typescript/components/Tabs.d.ts +4 -3
  232. package/lib/typescript/components/Tabs.d.ts.map +1 -1
  233. package/lib/typescript/components/Tag.d.ts +3 -1
  234. package/lib/typescript/components/Tag.d.ts.map +1 -1
  235. package/lib/typescript/components/ThemedIcon.d.ts +1 -1
  236. package/lib/typescript/components/Toast.d.ts +1 -1
  237. package/lib/typescript/components/Toast.d.ts.map +1 -1
  238. package/lib/typescript/editor/NoteEditor.d.ts +28 -8
  239. package/lib/typescript/editor/NoteEditor.d.ts.map +1 -1
  240. package/lib/typescript/editor/editorHtml.generated.d.ts.map +1 -1
  241. package/lib/typescript/editor/index.d.ts +1 -1
  242. package/lib/typescript/editor/index.d.ts.map +1 -1
  243. package/lib/typescript/editor/protocol.d.ts +4 -14
  244. package/lib/typescript/editor/protocol.d.ts.map +1 -1
  245. package/lib/typescript/hooks/use-toast.d.ts +1 -1
  246. package/lib/typescript/hooks/useThemeColor.d.ts.map +1 -1
  247. package/lib/typescript/index.d.ts +91 -91
  248. package/lib/typescript/index.d.ts.map +1 -1
  249. package/lib/typescript/lib/backdrop.d.ts +4 -0
  250. package/lib/typescript/lib/backdrop.d.ts.map +1 -0
  251. package/lib/typescript/lib/overlay-host.d.ts +1 -0
  252. package/lib/typescript/lib/overlay-host.d.ts.map +1 -1
  253. package/package.json +9 -14
  254. package/setup/tailwind.js +16 -8
  255. package/setup/tokens.native.css +51 -20
  256. package/src/components/Alert.tsx +37 -20
  257. package/src/components/AlertDialog.tsx +18 -19
  258. package/src/components/Badge.tsx +16 -15
  259. package/src/components/Button.tsx +64 -31
  260. package/src/components/CardNews.tsx +17 -6
  261. package/src/components/Carousel.tsx +5 -5
  262. package/src/components/Checkbox.tsx +17 -7
  263. package/src/components/Chip.tsx +49 -21
  264. package/src/components/Choice.tsx +34 -14
  265. package/src/components/Dialog.tsx +15 -5
  266. package/src/components/DropdownMenu.tsx +62 -14
  267. package/src/components/EmptyState.tsx +3 -3
  268. package/src/components/FallbackImage.tsx +32 -23
  269. package/src/components/Feed.tsx +2 -1
  270. package/src/components/Feedback.tsx +0 -1
  271. package/src/components/Filter.tsx +2 -3
  272. package/src/components/Input.tsx +83 -64
  273. package/src/components/InvitePopover.tsx +11 -3
  274. package/src/components/LeaderboardCard.tsx +4 -1
  275. package/src/components/Loading.tsx +17 -14
  276. package/src/components/LoadingOverlay.tsx +33 -50
  277. package/src/components/MemberRow.tsx +3 -3
  278. package/src/components/PageHeader.tsx +4 -1
  279. package/src/components/PostForm.tsx +28 -16
  280. package/src/components/PrizeCollection.tsx +3 -3
  281. package/src/components/RadioGroup.tsx +69 -12
  282. package/src/components/SectionHeader.tsx +4 -1
  283. package/src/components/Select.tsx +4 -3
  284. package/src/components/Separator.tsx +2 -2
  285. package/src/components/Sheet.tsx +15 -8
  286. package/src/components/Skeleton.tsx +1 -1
  287. package/src/components/Tabs.tsx +5 -4
  288. package/src/components/Tag.tsx +56 -35
  289. package/src/components/Toast.tsx +10 -6
  290. package/src/editor/NoteEditor.tsx +246 -72
  291. package/src/editor/editorHtml.generated.ts +1 -1
  292. package/src/editor/index.ts +8 -4
  293. package/src/editor/protocol.ts +4 -12
  294. package/src/hooks/useThemeColor.ts +41 -19
  295. package/src/index.ts +1 -1
  296. package/src/lib/backdrop.ts +16 -0
  297. package/src/lib/overlay-host.tsx +5 -5
@@ -1,5 +1,9 @@
1
- export { default as NoteEditor } from "./NoteEditor";
2
- export type { NoteEditorHandle } from "./NoteEditor";
1
+ export { default as NoteEditor } from "@/editor/NoteEditor";
2
+ export type {
3
+ NoteEditorHandle,
4
+ NoteEditorProps,
5
+ NoteEditorValue,
6
+ } from "@/editor/NoteEditor";
3
7
  export type { EditorDocument } from "@medway-ui/notes-core";
4
8
  export type { WebViewMessageEvent } from "react-native-webview";
5
9
 
@@ -7,5 +11,5 @@ export {
7
11
  EDITOR_PROTOCOL_VERSION,
8
12
  EDITOR_RECEIVE_HANDLER,
9
13
  isEditorMessage,
10
- } from "./protocol";
11
- export type { EditorToNativeMessage, NativeToEditorMessage } from "./protocol";
14
+ } from "@/editor/protocol";
15
+ export type { EditorToNativeMessage, NativeToEditorMessage } from "@/editor/protocol";
@@ -27,7 +27,7 @@ import type {
27
27
  * talk to a bundle that reports a different version, which turns a stale
28
28
  * `editorHtml.generated.ts` into a clear error instead of silent breakage.
29
29
  */
30
- export const EDITOR_PROTOCOL_VERSION = 3;
30
+ export const EDITOR_PROTOCOL_VERSION = 4;
31
31
 
32
32
  /** Name of the global the WebView bundle installs to receive native messages. */
33
33
  export const EDITOR_RECEIVE_HANDLER = '__medwayNoteEditorReceive';
@@ -41,8 +41,7 @@ export type NativeToEditorMessage =
41
41
  * `doc` accepts HTML as well as JSON; parse (`generateJSON`) and whitelist
42
42
  * (`normalizeDocument`) happen bundle-side, the only side with a DOM.
43
43
  *
44
- * `focusPosition` defaults to `"end"`. `imageDeleteGraceMs` seeds the bundle's
45
- * image-removal bookkeeping; read once, not reactive.
44
+ * `focusPosition` defaults to `"end"`.
46
45
  */
47
46
  | {
48
47
  type: 'setContent';
@@ -50,7 +49,6 @@ export type NativeToEditorMessage =
50
49
  focus: boolean;
51
50
  focusPosition?: 'start' | 'end';
52
51
  reset?: boolean;
53
- imageDeleteGraceMs?: number;
54
52
  /**
55
53
  * Read only on the `reset` path. Set here instead of creating editable
56
54
  * and following up with `setEditable`, which would let a read-only note
@@ -75,8 +73,8 @@ export type NativeToEditorMessage =
75
73
  | { type: 'blur' }
76
74
  /**
77
75
  * Inserts an image node at the current selection, once the host's
78
- * `onImageUpload` resolved with a `src`. The bundle also starts tracking that
79
- * `src` as "uploaded this session" — see `imageRemoved` below.
76
+ * `onImageUpload` resolved with a `src`. A `src` that `sanitizeImageSrc`
77
+ * rejects is answered with `error` and not inserted.
80
78
  */
81
79
  | { type: 'insertImage'; src: string; alt?: string | null };
82
80
 
@@ -106,11 +104,6 @@ export type EditorToNativeMessage =
106
104
  * the inverse of the title's own Enter handler.
107
105
  */
108
106
  | { type: 'backspaceAtDocStart' }
109
- /**
110
- * A `src` that `insertImage` added this session left the document and stayed
111
- * out past the grace period (`imageDeleteGraceMs`).
112
- */
113
- | { type: 'imageRemoved'; src: string }
114
107
  | { type: 'error'; message: string };
115
108
 
116
109
  const isRecord = (value: unknown): value is Record<string, unknown> =>
@@ -153,7 +146,6 @@ const EDITOR_MESSAGE_VALIDATORS: Record<
153
146
  resize: (message) => isFiniteNumber(message.height),
154
147
  linkPress: (message) => isString(message.href),
155
148
  backspaceAtDocStart: () => true,
156
- imageRemoved: (message) => isString(message.src),
157
149
  error: (message) => isString(message.message),
158
150
  };
159
151
 
@@ -246,6 +246,7 @@ const LIGHT_COLOR_ALIAS_MAP: Record<string, string> = {
246
246
  'state-focus': 'gray-70',
247
247
  'state-active': 'primary-16',
248
248
  'state-error': 'red-16',
249
+ 'state-success': 'green-16',
249
250
 
250
251
  // Surface
251
252
  'surface-elevated': 'white',
@@ -451,21 +452,31 @@ const LIGHT_COLOR_ALIAS_MAP: Record<string, string> = {
451
452
  'gradient-prev-blur-3': 'prev',
452
453
  'gradient-prev-bg-1': 'prev-lighten-6',
453
454
  'gradient-prev-bg-2': 'gray-10',
454
- 'gradient-r1-blur-1': 'secondary',
455
- 'gradient-r1-blur-2': 'primary-lighten-3',
455
+ 'gradient-r1-blur-1': 'secondary-lighten-1',
456
+ 'gradient-r1-blur-2': 'cm',
456
457
  'gradient-r1-blur-3': 'primary-lighten-5',
457
- 'gradient-r1-bg-1': 'primary',
458
- 'gradient-r1-bg-2': 'primary-lighten-1',
459
- 'gradient-rplus-blur-1': 'primary-lighten-1',
458
+ 'gradient-r1-bg-1': 'primary-lighten-2',
459
+ 'gradient-r1-bg-2': 'primary-lighten-6',
460
+ 'gradient-rplus-blur-1': 'prev',
460
461
  'gradient-rplus-blur-2': 'primary-lighten-3',
461
462
  'gradient-rplus-blur-3': 'primary-lighten-5',
462
- 'gradient-rplus-bg-1': 'primary-lighten-1',
463
- 'gradient-rplus-bg-2': 'primary',
464
- 'gradient-pt-blur-1': 'secondary',
465
- 'gradient-pt-blur-2': 'secondary-darken-2',
466
- 'gradient-pt-blur-3': 'secondary-darken-4',
463
+ 'gradient-rplus-bg-1': 'primary-lighten-4',
464
+ 'gradient-rplus-bg-2': 'prev-lighten-3',
465
+ 'gradient-pt-blur-1': 'cir',
466
+ 'gradient-pt-blur-2': 'secondary-darken-1',
467
+ 'gradient-pt-blur-3': 'secondary-darken-2',
467
468
  'gradient-pt-bg-1': 'gray-600',
468
- 'gradient-pt-bg-2': 'gray-450',
469
+ 'gradient-pt-bg-2': 'gray-300',
470
+ 'gradient-default-blur-1': 'gray-10',
471
+ 'gradient-default-blur-2': 'secondary-lighten-5',
472
+ 'gradient-default-blur-3': 'primary-lighten-6',
473
+ 'gradient-default-bg-1': 'gray-150',
474
+ 'gradient-default-bg-2': 'gray-50',
475
+ 'gradient-neutral-blur-1': 'white',
476
+ 'gradient-neutral-blur-2': 'gray-70',
477
+ 'gradient-neutral-blur-3': 'gray-150',
478
+ 'gradient-neutral-bg-1': 'gray-50',
479
+ 'gradient-neutral-bg-2': 'gray-30',
469
480
 
470
481
  // Gold
471
482
  'gold-foreground': 'gold-darken-4',
@@ -507,11 +518,12 @@ const DARK_COLOR_ALIAS_MAP: Record<string, string> = {
507
518
  'state-focus': 'gray-700',
508
519
  'state-active': 'white-16',
509
520
  'state-error': 'red-16',
521
+ 'state-success': 'green-16',
510
522
 
511
523
  // Surface
512
524
  'surface-elevated': 'gray-800',
513
525
  'surface-card': 'gray-850',
514
- 'surface-navigation': 'gray-850',
526
+ 'surface-navigation': 'gray-900',
515
527
  'surface-section': 'gray-850',
516
528
  'surface-page': 'gray-950',
517
529
  'surface-disable': 'black-8',
@@ -717,20 +729,30 @@ const DARK_COLOR_ALIAS_MAP: Record<string, string> = {
717
729
  'gradient-prev-bg-1': 'prev-darken-2',
718
730
  'gradient-prev-bg-2': 'prev-darken-4',
719
731
  'gradient-r1-blur-1': 'secondary',
720
- 'gradient-r1-blur-2': 'primary-lighten-1',
732
+ 'gradient-r1-blur-2': 'primary-lighten-2',
721
733
  'gradient-r1-blur-3': 'primary-lighten-2',
722
734
  'gradient-r1-bg-1': 'primary',
723
- 'gradient-r1-bg-2': 'primary-darken-2',
724
- 'gradient-rplus-blur-1': 'primary-lighten-5',
735
+ 'gradient-r1-bg-2': 'primary-darken-1',
736
+ 'gradient-rplus-blur-1': 'prev-darken-1',
725
737
  'gradient-rplus-blur-2': 'primary-lighten-3',
726
738
  'gradient-rplus-blur-3': 'primary-lighten-1',
727
739
  'gradient-rplus-bg-1': 'primary',
728
- 'gradient-rplus-bg-2': 'primary-darken-2',
729
- 'gradient-pt-blur-1': 'secondary',
730
- 'gradient-pt-blur-2': 'secondary-darken-1',
731
- 'gradient-pt-blur-3': 'secondary-darken-3',
740
+ 'gradient-rplus-bg-2': 'prev-darken-6',
741
+ 'gradient-pt-blur-1': 'cir-darken-1',
742
+ 'gradient-pt-blur-2': 'secondary-darken-2',
743
+ 'gradient-pt-blur-3': 'secondary-darken-4',
732
744
  'gradient-pt-bg-1': 'gray-800',
733
745
  'gradient-pt-bg-2': 'gray-900',
746
+ 'gradient-default-blur-1': 'primary-lighten-1',
747
+ 'gradient-default-blur-2': 'secondary-lighten-2',
748
+ 'gradient-default-blur-3': 'primary-lighten-3',
749
+ 'gradient-default-bg-1': 'gray-850',
750
+ 'gradient-default-bg-2': 'gray-900',
751
+ 'gradient-neutral-blur-1': 'gray-900',
752
+ 'gradient-neutral-blur-2': 'gray-850',
753
+ 'gradient-neutral-blur-3': 'gray-800',
754
+ 'gradient-neutral-bg-1': 'gray-850',
755
+ 'gradient-neutral-bg-2': 'gray-950',
734
756
 
735
757
  // Gold
736
758
  'gold-foreground': 'gold-lighten-1',
package/src/index.ts CHANGED
@@ -109,7 +109,7 @@ export type {
109
109
 
110
110
  // FeedNotice
111
111
  export { FeedNotice } from "@/components/FeedNotice";
112
- export type { FeedNoticeProps } from "@/components/FeedNotice";
112
+ export type { FeedNoticeProps, FeedNoticeSecondaryMessage } from "@/components/FeedNotice";
113
113
 
114
114
  // InvitePopover
115
115
  export {
@@ -0,0 +1,16 @@
1
+ import { type ViewStyle } from "react-native";
2
+
3
+ import { useThemeColor } from "@/hooks/useThemeColor";
4
+
5
+ const BACKGROUND_CLASS = /(?:^|\s)!?bg-/;
6
+
7
+ // Inline because `bg-backdrop` only exists with a recent @medway-ui/core; a `bg-*` passed in the className keeps winning.
8
+ function useBackdropStyle(className?: string): ViewStyle | undefined {
9
+ const backgroundColor = useThemeColor("backdrop");
10
+
11
+ if (className && BACKGROUND_CLASS.test(className)) return undefined;
12
+
13
+ return { backgroundColor };
14
+ }
15
+
16
+ export { useBackdropStyle };
@@ -7,9 +7,9 @@ import React, {
7
7
  useState,
8
8
  type ReactNode,
9
9
  } from 'react';
10
- import { StyleSheet, View } from 'react-native';
10
+ import { Dimensions, StyleSheet, View } from 'react-native';
11
11
 
12
- type HostOrigin = { x: number; y: number };
12
+ type HostOrigin = { x: number; y: number; height: number };
13
13
 
14
14
  type OverlayHostContextValue = {
15
15
  mount: (id: string, node: ReactNode) => void;
@@ -52,11 +52,11 @@ function OverlayHostProvider({ children }: { children: ReactNode }) {
52
52
  const measureHostOrigin = useCallback((callback: (origin: HostOrigin) => void) => {
53
53
  const node = hostRef.current;
54
54
  if (!node) {
55
- callback({ x: 0, y: 0 });
55
+ callback({ x: 0, y: 0, height: Dimensions.get('window').height });
56
56
  return;
57
57
  }
58
- node.measureInWindow((x, y) => {
59
- callback({ x, y });
58
+ node.measureInWindow((x, y, _width, height) => {
59
+ callback({ x, y, height });
60
60
  });
61
61
  }, []);
62
62