panelui-native 0.6.0 → 0.7.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 (133) hide show
  1. package/README.md +1 -1
  2. package/lib/module/components/accordion/index.js +7 -5
  3. package/lib/module/components/accordion/index.js.map +1 -1
  4. package/lib/module/components/alert/index.js +3 -6
  5. package/lib/module/components/alert/index.js.map +1 -1
  6. package/lib/module/components/bottom-sheet/index.js +67 -3
  7. package/lib/module/components/bottom-sheet/index.js.map +1 -1
  8. package/lib/module/components/button/index.js +36 -1
  9. package/lib/module/components/button/index.js.map +1 -1
  10. package/lib/module/components/empty-state/index.js +4 -5
  11. package/lib/module/components/empty-state/index.js.map +1 -1
  12. package/lib/module/components/inline-select/index.js +171 -46
  13. package/lib/module/components/inline-select/index.js.map +1 -1
  14. package/lib/module/components/input/index.js +28 -5
  15. package/lib/module/components/input/index.js.map +1 -1
  16. package/lib/module/components/input-group/index.js +0 -1
  17. package/lib/module/components/input-group/index.js.map +1 -1
  18. package/lib/module/components/item/index.js +359 -0
  19. package/lib/module/components/item/index.js.map +1 -0
  20. package/lib/module/components/label/index.js +5 -3
  21. package/lib/module/components/label/index.js.map +1 -1
  22. package/lib/module/components/message/index.js +318 -0
  23. package/lib/module/components/message/index.js.map +1 -0
  24. package/lib/module/components/scroll-fade/index.js +119 -71
  25. package/lib/module/components/scroll-fade/index.js.map +1 -1
  26. package/lib/module/components/select/index.js +35 -6
  27. package/lib/module/components/select/index.js.map +1 -1
  28. package/lib/module/components/shimmer/index.js +111 -64
  29. package/lib/module/components/shimmer/index.js.map +1 -1
  30. package/lib/module/components/surface/index.js +3 -2
  31. package/lib/module/components/surface/index.js.map +1 -1
  32. package/lib/module/components/switch/index.js +20 -1
  33. package/lib/module/components/switch/index.js.map +1 -1
  34. package/lib/module/components/toast/index.js +7 -8
  35. package/lib/module/components/toast/index.js.map +1 -1
  36. package/lib/module/components/typography/index.js +3 -3
  37. package/lib/module/hooks/index.js +1 -0
  38. package/lib/module/hooks/index.js.map +1 -1
  39. package/lib/module/hooks/use-breakpoint.js +2 -2
  40. package/lib/module/hooks/use-copy-to-clipboard.js +0 -2
  41. package/lib/module/hooks/use-copy-to-clipboard.js.map +1 -1
  42. package/lib/module/hooks/use-keyboard-avoidance.js +120 -0
  43. package/lib/module/hooks/use-keyboard-avoidance.js.map +1 -0
  44. package/lib/module/icons/index.js +4 -4
  45. package/lib/module/index.js +6 -0
  46. package/lib/module/index.js.map +1 -1
  47. package/lib/module/native/index.js +53 -0
  48. package/lib/module/native/index.js.map +1 -0
  49. package/lib/module/primitives/keyboard-avoider.js +40 -0
  50. package/lib/module/primitives/keyboard-avoider.js.map +1 -0
  51. package/lib/module/providers/panel-ui-provider.js +24 -4
  52. package/lib/module/providers/panel-ui-provider.js.map +1 -1
  53. package/lib/module/theme/use-theme.js +1 -1
  54. package/lib/typescript/src/components/accordion/index.d.ts +7 -5
  55. package/lib/typescript/src/components/accordion/index.d.ts.map +1 -1
  56. package/lib/typescript/src/components/alert/index.d.ts +3 -6
  57. package/lib/typescript/src/components/alert/index.d.ts.map +1 -1
  58. package/lib/typescript/src/components/bottom-sheet/index.d.ts +21 -1
  59. package/lib/typescript/src/components/bottom-sheet/index.d.ts.map +1 -1
  60. package/lib/typescript/src/components/button/index.d.ts +11 -0
  61. package/lib/typescript/src/components/button/index.d.ts.map +1 -1
  62. package/lib/typescript/src/components/empty-state/index.d.ts +4 -5
  63. package/lib/typescript/src/components/empty-state/index.d.ts.map +1 -1
  64. package/lib/typescript/src/components/inline-select/index.d.ts +29 -6
  65. package/lib/typescript/src/components/inline-select/index.d.ts.map +1 -1
  66. package/lib/typescript/src/components/input/index.d.ts +13 -0
  67. package/lib/typescript/src/components/input/index.d.ts.map +1 -1
  68. package/lib/typescript/src/components/input-group/index.d.ts +0 -1
  69. package/lib/typescript/src/components/input-group/index.d.ts.map +1 -1
  70. package/lib/typescript/src/components/item/index.d.ts +286 -0
  71. package/lib/typescript/src/components/item/index.d.ts.map +1 -0
  72. package/lib/typescript/src/components/label/index.d.ts +5 -3
  73. package/lib/typescript/src/components/label/index.d.ts.map +1 -1
  74. package/lib/typescript/src/components/message/index.d.ts +170 -0
  75. package/lib/typescript/src/components/message/index.d.ts.map +1 -0
  76. package/lib/typescript/src/components/scroll-fade/index.d.ts +18 -9
  77. package/lib/typescript/src/components/scroll-fade/index.d.ts.map +1 -1
  78. package/lib/typescript/src/components/select/index.d.ts +16 -1
  79. package/lib/typescript/src/components/select/index.d.ts.map +1 -1
  80. package/lib/typescript/src/components/shimmer/index.d.ts +38 -20
  81. package/lib/typescript/src/components/shimmer/index.d.ts.map +1 -1
  82. package/lib/typescript/src/components/surface/index.d.ts.map +1 -1
  83. package/lib/typescript/src/components/switch/index.d.ts +10 -0
  84. package/lib/typescript/src/components/switch/index.d.ts.map +1 -1
  85. package/lib/typescript/src/components/toast/index.d.ts +4 -4
  86. package/lib/typescript/src/components/toast/index.d.ts.map +1 -1
  87. package/lib/typescript/src/hooks/index.d.ts +1 -0
  88. package/lib/typescript/src/hooks/index.d.ts.map +1 -1
  89. package/lib/typescript/src/hooks/use-breakpoint.d.ts +2 -2
  90. package/lib/typescript/src/hooks/use-copy-to-clipboard.d.ts +0 -2
  91. package/lib/typescript/src/hooks/use-copy-to-clipboard.d.ts.map +1 -1
  92. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts +20 -0
  93. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts.map +1 -0
  94. package/lib/typescript/src/icons/index.d.ts +4 -4
  95. package/lib/typescript/src/index.d.ts +4 -0
  96. package/lib/typescript/src/index.d.ts.map +1 -1
  97. package/lib/typescript/src/native/index.d.ts +35 -0
  98. package/lib/typescript/src/native/index.d.ts.map +1 -0
  99. package/lib/typescript/src/primitives/keyboard-avoider.d.ts +22 -0
  100. package/lib/typescript/src/primitives/keyboard-avoider.d.ts.map +1 -0
  101. package/lib/typescript/src/providers/panel-ui-provider.d.ts +1 -1
  102. package/lib/typescript/src/providers/panel-ui-provider.d.ts.map +1 -1
  103. package/lib/typescript/src/theme/use-theme.d.ts +1 -1
  104. package/package.json +12 -3
  105. package/src/components/accordion/index.tsx +7 -5
  106. package/src/components/alert/index.tsx +3 -6
  107. package/src/components/bottom-sheet/index.tsx +82 -2
  108. package/src/components/button/index.tsx +52 -0
  109. package/src/components/empty-state/index.tsx +4 -5
  110. package/src/components/inline-select/index.tsx +191 -44
  111. package/src/components/input/index.tsx +39 -3
  112. package/src/components/input-group/index.tsx +0 -1
  113. package/src/components/item/index.tsx +387 -0
  114. package/src/components/label/index.tsx +5 -3
  115. package/src/components/message/index.tsx +312 -0
  116. package/src/components/scroll-fade/index.tsx +163 -51
  117. package/src/components/select/index.tsx +54 -9
  118. package/src/components/shimmer/index.tsx +151 -58
  119. package/src/components/surface/index.tsx +3 -2
  120. package/src/components/switch/index.tsx +27 -1
  121. package/src/components/toast/index.tsx +7 -8
  122. package/src/components/typography/index.tsx +3 -3
  123. package/src/hooks/index.ts +5 -0
  124. package/src/hooks/use-breakpoint.ts +2 -2
  125. package/src/hooks/use-copy-to-clipboard.ts +0 -2
  126. package/src/hooks/use-keyboard-avoidance.ts +140 -0
  127. package/src/icons/index.tsx +4 -4
  128. package/src/index.ts +32 -0
  129. package/src/native/index.ts +79 -0
  130. package/src/primitives/keyboard-avoider.tsx +49 -0
  131. package/src/providers/panel-ui-provider.tsx +30 -9
  132. package/src/theme/use-theme.ts +1 -1
  133. package/theme.css +5 -3
@@ -0,0 +1,359 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Item — a row of content: media on one side, a title and description in the
5
+ * middle, actions on the other side.
6
+ *
7
+ * It is the shape almost every list in an app already has — a settings row, a
8
+ * file in a picker, a member in a team list, a tool call in a transcript — so
9
+ * it exists as one composable primitive rather than being rebuilt per screen
10
+ * with slightly different padding each time.
11
+ *
12
+ * ```tsx
13
+ * <Item variant="outline">
14
+ * <Item.Media variant="icon"><ReceiptIcon /></Item.Media>
15
+ * <Item.Content>
16
+ * <Item.Title>Invoice.pdf</Item.Title>
17
+ * <Item.Description>2.4 MB · Updated yesterday</Item.Description>
18
+ * </Item.Content>
19
+ * <Item.Actions><Button size="sm">Open</Button></Item.Actions>
20
+ * </Item>
21
+ * ```
22
+ *
23
+ * Two axes, and they are independent. `orientation` on the item decides
24
+ * whether its own parts sit side by side or stack into a card; `orientation`
25
+ * on `Item.Group` decides whether the items themselves run down the screen or
26
+ * across it. A carousel wants both set to the non-default: a horizontal group
27
+ * of vertical items.
28
+ */
29
+ import { createContext, forwardRef, useContext } from 'react';
30
+ import { View } from 'react-native';
31
+ import { tv } from 'tailwind-variants';
32
+ import { AnimatedPressable } from "../../primitives/animated-pressable.js";
33
+ import { Text } from "../../primitives/text.js";
34
+ import { cn } from "../../utils/cn.js";
35
+ import { jsx as _jsx } from "react/jsx-runtime";
36
+ const itemVariants = tv({
37
+ slots: {
38
+ root: 'gap-3 rounded-xl',
39
+ title: 'font-medium text-foreground',
40
+ description: 'text-muted-foreground'
41
+ },
42
+ variants: {
43
+ variant: {
44
+ default: {},
45
+ outline: {
46
+ root: 'border border-border'
47
+ },
48
+ muted: {
49
+ root: 'bg-muted'
50
+ }
51
+ },
52
+ size: {
53
+ default: {
54
+ root: 'p-4',
55
+ title: 'text-base',
56
+ description: 'text-sm'
57
+ },
58
+ sm: {
59
+ root: 'p-3',
60
+ title: 'text-sm',
61
+ description: 'text-xs'
62
+ },
63
+ xs: {
64
+ root: 'gap-2 p-2',
65
+ title: 'text-sm',
66
+ description: 'text-xs'
67
+ }
68
+ },
69
+ orientation: {
70
+ /** Media, text and actions side by side — the list-row shape. */
71
+ horizontal: {
72
+ root: 'w-full flex-row items-center'
73
+ },
74
+ /** Stacked into a card — the shape a horizontal carousel wants. */
75
+ vertical: {
76
+ root: 'flex-col items-start'
77
+ }
78
+ },
79
+ disabled: {
80
+ true: {
81
+ root: 'opacity-[0.64]'
82
+ }
83
+ }
84
+ },
85
+ defaultVariants: {
86
+ variant: 'default',
87
+ size: 'default',
88
+ orientation: 'horizontal'
89
+ }
90
+ });
91
+
92
+ /** Sub-components inherit the row's density and axis rather than repeating them. */
93
+ const ItemContext = /*#__PURE__*/createContext({
94
+ size: 'default',
95
+ orientation: 'horizontal'
96
+ });
97
+ const mediaVariants = tv({
98
+ base: 'shrink-0 items-center justify-center',
99
+ variants: {
100
+ variant: {
101
+ /** No box — for an Avatar or anything that styles itself. */
102
+ default: '',
103
+ /** Rounded square tile sized for an icon. */
104
+ icon: 'rounded-lg border border-border bg-muted',
105
+ /** Clipped frame for an image or thumbnail. */
106
+ image: 'overflow-hidden rounded-lg bg-muted'
107
+ },
108
+ size: {
109
+ default: '',
110
+ sm: '',
111
+ xs: ''
112
+ }
113
+ },
114
+ compoundVariants: [{
115
+ variant: 'icon',
116
+ size: 'default',
117
+ class: 'h-10 w-10'
118
+ }, {
119
+ variant: 'icon',
120
+ size: 'sm',
121
+ class: 'h-8 w-8'
122
+ }, {
123
+ variant: 'icon',
124
+ size: 'xs',
125
+ class: 'h-6 w-6'
126
+ }, {
127
+ variant: 'image',
128
+ size: 'default',
129
+ class: 'h-12 w-12'
130
+ }, {
131
+ variant: 'image',
132
+ size: 'sm',
133
+ class: 'h-10 w-10'
134
+ }, {
135
+ variant: 'image',
136
+ size: 'xs',
137
+ class: 'h-8 w-8'
138
+ }],
139
+ defaultVariants: {
140
+ variant: 'default',
141
+ size: 'default'
142
+ }
143
+ });
144
+ /**
145
+ * Renders as a pressable when given `onPress`, and as a plain view otherwise,
146
+ * so a static row does not announce itself as a button.
147
+ */
148
+ const ItemRoot = /*#__PURE__*/forwardRef(({
149
+ className,
150
+ variant,
151
+ size = 'default',
152
+ orientation = 'horizontal',
153
+ disabled,
154
+ children,
155
+ onPress,
156
+ ...props
157
+ }, ref) => {
158
+ const {
159
+ root
160
+ } = itemVariants({
161
+ variant,
162
+ size,
163
+ orientation,
164
+ disabled: !!disabled
165
+ });
166
+ const body = !onPress ? /*#__PURE__*/_jsx(View, {
167
+ ref: ref,
168
+ accessibilityState: {
169
+ disabled: !!disabled
170
+ },
171
+ className: root({
172
+ className
173
+ }),
174
+ ...props,
175
+ children: children
176
+ }) : /*#__PURE__*/_jsx(AnimatedPressable, {
177
+ ref: ref,
178
+ accessibilityRole: "button",
179
+ accessibilityState: {
180
+ disabled: !!disabled
181
+ },
182
+ disabled: disabled,
183
+ onPress: onPress,
184
+ className: root({
185
+ className
186
+ }),
187
+ ...props,
188
+ children: children
189
+ });
190
+ return /*#__PURE__*/_jsx(ItemContext.Provider, {
191
+ value: {
192
+ size,
193
+ orientation
194
+ },
195
+ children: body
196
+ });
197
+ });
198
+ ItemRoot.displayName = 'Item';
199
+ /** Stack of items. Pair with `Item.Separator` between them. */
200
+ const ItemGroup = /*#__PURE__*/forwardRef(({
201
+ className,
202
+ orientation = 'vertical',
203
+ children,
204
+ ...props
205
+ }, ref) => /*#__PURE__*/_jsx(View, {
206
+ ref: ref,
207
+ accessibilityRole: "list",
208
+ className: cn(orientation === 'horizontal' ? 'flex-row items-stretch gap-3' : 'w-full', className),
209
+ ...props,
210
+ children: children
211
+ }));
212
+ ItemGroup.displayName = 'Item.Group';
213
+ /** Hairline between rows in a group. */
214
+ const ItemSeparator = /*#__PURE__*/forwardRef(({
215
+ className,
216
+ orientation = 'vertical',
217
+ ...props
218
+ }, ref) => /*#__PURE__*/_jsx(View, {
219
+ ref: ref,
220
+ className: cn(orientation === 'horizontal' ? 'h-full w-px' : 'h-px w-full', 'bg-border', className),
221
+ ...props
222
+ }));
223
+ ItemSeparator.displayName = 'Item.Separator';
224
+ /** Leading slot: an icon tile, a thumbnail, or an avatar passed through. */
225
+ const ItemMedia = /*#__PURE__*/forwardRef(({
226
+ className,
227
+ variant,
228
+ size,
229
+ children,
230
+ ...props
231
+ }, ref) => {
232
+ const item = useContext(ItemContext);
233
+ return /*#__PURE__*/_jsx(View, {
234
+ ref: ref,
235
+ className: mediaVariants({
236
+ variant,
237
+ size: size ?? item.size,
238
+ className
239
+ }),
240
+ ...props,
241
+ children: children
242
+ });
243
+ });
244
+ ItemMedia.displayName = 'Item.Media';
245
+ /**
246
+ * The text column. In a horizontal item it takes the remaining width so the
247
+ * actions stay pinned to the trailing edge; in a vertical one it just fills
248
+ * the width, because there is nothing beside it to push against.
249
+ */
250
+ const ItemContent = /*#__PURE__*/forwardRef(({
251
+ className,
252
+ children,
253
+ ...props
254
+ }, ref) => {
255
+ const {
256
+ orientation
257
+ } = useContext(ItemContext);
258
+ return /*#__PURE__*/_jsx(View, {
259
+ ref: ref,
260
+ className: cn(orientation === 'horizontal' ? 'flex-1' : 'w-full', 'gap-0.5', className),
261
+ ...props,
262
+ children: children
263
+ });
264
+ });
265
+ ItemContent.displayName = 'Item.Content';
266
+ const ItemTitle = /*#__PURE__*/forwardRef(({
267
+ className,
268
+ ...props
269
+ }, ref) => {
270
+ const {
271
+ size
272
+ } = useContext(ItemContext);
273
+ const {
274
+ title
275
+ } = itemVariants({
276
+ size
277
+ });
278
+ return /*#__PURE__*/_jsx(Text, {
279
+ ref: ref,
280
+ className: title({
281
+ className
282
+ }),
283
+ ...props
284
+ });
285
+ });
286
+ ItemTitle.displayName = 'Item.Title';
287
+ const ItemDescription = /*#__PURE__*/forwardRef(({
288
+ className,
289
+ ...props
290
+ }, ref) => {
291
+ const {
292
+ size
293
+ } = useContext(ItemContext);
294
+ const {
295
+ description
296
+ } = itemVariants({
297
+ size
298
+ });
299
+ return /*#__PURE__*/_jsx(Text, {
300
+ ref: ref,
301
+ className: description({
302
+ className
303
+ }),
304
+ ...props
305
+ });
306
+ });
307
+ ItemDescription.displayName = 'Item.Description';
308
+ /** Trailing slot: buttons, a chevron, a switch. */
309
+ const ItemActions = /*#__PURE__*/forwardRef(({
310
+ className,
311
+ children,
312
+ ...props
313
+ }, ref) => /*#__PURE__*/_jsx(View, {
314
+ ref: ref,
315
+ className: cn('shrink-0 flex-row items-center gap-1.5', className),
316
+ ...props,
317
+ children: children
318
+ }));
319
+ ItemActions.displayName = 'Item.Actions';
320
+ /**
321
+ * Full-width strip above the item's main content — an eyebrow label, a badge
322
+ * row. Needs `orientation="vertical"` on the item, since a strip only makes
323
+ * sense once the item stacks.
324
+ */
325
+ const ItemHeader = /*#__PURE__*/forwardRef(({
326
+ className,
327
+ children,
328
+ ...props
329
+ }, ref) => /*#__PURE__*/_jsx(View, {
330
+ ref: ref,
331
+ className: cn('w-full flex-row items-center justify-between gap-2', className),
332
+ ...props,
333
+ children: children
334
+ }));
335
+ ItemHeader.displayName = 'Item.Header';
336
+ /** Full-width strip below the row's main content. */
337
+ const ItemFooter = /*#__PURE__*/forwardRef(({
338
+ className,
339
+ children,
340
+ ...props
341
+ }, ref) => /*#__PURE__*/_jsx(View, {
342
+ ref: ref,
343
+ className: cn('w-full flex-row items-center gap-2', className),
344
+ ...props,
345
+ children: children
346
+ }));
347
+ ItemFooter.displayName = 'Item.Footer';
348
+ export const Item = Object.assign(ItemRoot, {
349
+ Group: ItemGroup,
350
+ Separator: ItemSeparator,
351
+ Media: ItemMedia,
352
+ Content: ItemContent,
353
+ Title: ItemTitle,
354
+ Description: ItemDescription,
355
+ Actions: ItemActions,
356
+ Header: ItemHeader,
357
+ Footer: ItemFooter
358
+ });
359
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","forwardRef","useContext","View","tv","AnimatedPressable","Text","cn","jsx","_jsx","itemVariants","slots","root","title","description","variants","variant","default","outline","muted","size","sm","xs","orientation","horizontal","vertical","disabled","true","defaultVariants","ItemContext","mediaVariants","base","icon","image","compoundVariants","class","ItemRoot","className","children","onPress","props","ref","body","accessibilityState","accessibilityRole","Provider","value","displayName","ItemGroup","ItemSeparator","ItemMedia","item","ItemContent","ItemTitle","ItemDescription","ItemActions","ItemHeader","ItemFooter","Item","Object","assign","Group","Separator","Media","Content","Title","Description","Actions","Header","Footer"],"sourceRoot":"../../../../src","sources":["components/item/index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,aAAa,EAAEC,UAAU,EAAEC,UAAU,QAAwB,OAAO;AAC7E,SAASC,IAAI,QAAwB,cAAc;AACnD,SAASC,EAAE,QAA2B,mBAAmB;AACzD,SAASC,iBAAiB,QAAqC,wCAAqC;AACpG,SAASC,IAAI,QAAwB,0BAAuB;AAC5D,SAASC,EAAE,QAAQ,mBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAKpC,MAAMC,YAAY,GAAGN,EAAE,CAAC;EACtBO,KAAK,EAAE;IACLC,IAAI,EAAE,kBAAkB;IACxBC,KAAK,EAAE,6BAA6B;IACpCC,WAAW,EAAE;EACf,CAAC;EACDC,QAAQ,EAAE;IACRC,OAAO,EAAE;MACPC,OAAO,EAAE,CAAC,CAAC;MACXC,OAAO,EAAE;QAAEN,IAAI,EAAE;MAAuB,CAAC;MACzCO,KAAK,EAAE;QAAEP,IAAI,EAAE;MAAW;IAC5B,CAAC;IACDQ,IAAI,EAAE;MACJH,OAAO,EAAE;QAAEL,IAAI,EAAE,KAAK;QAAEC,KAAK,EAAE,WAAW;QAAEC,WAAW,EAAE;MAAU,CAAC;MACpEO,EAAE,EAAE;QAAET,IAAI,EAAE,KAAK;QAAEC,KAAK,EAAE,SAAS;QAAEC,WAAW,EAAE;MAAU,CAAC;MAC7DQ,EAAE,EAAE;QAAEV,IAAI,EAAE,WAAW;QAAEC,KAAK,EAAE,SAAS;QAAEC,WAAW,EAAE;MAAU;IACpE,CAAC;IACDS,WAAW,EAAE;MACX;MACAC,UAAU,EAAE;QAAEZ,IAAI,EAAE;MAA+B,CAAC;MACpD;MACAa,QAAQ,EAAE;QAAEb,IAAI,EAAE;MAAuB;IAC3C,CAAC;IACDc,QAAQ,EAAE;MACRC,IAAI,EAAE;QAAEf,IAAI,EAAE;MAAiB;IACjC;EACF,CAAC;EACDgB,eAAe,EAAE;IACfZ,OAAO,EAAE,SAAS;IAClBI,IAAI,EAAE,SAAS;IACfG,WAAW,EAAE;EACf;AACF,CAAC,CAAC;;AAEF;AACA,MAAMM,WAAW,gBAAG7B,aAAa,CAAmD;EAClFoB,IAAI,EAAE,SAAS;EACfG,WAAW,EAAE;AACf,CAAC,CAAC;AAEF,MAAMO,aAAa,GAAG1B,EAAE,CAAC;EACvB2B,IAAI,EAAE,sCAAsC;EAC5ChB,QAAQ,EAAE;IACRC,OAAO,EAAE;MACP;MACAC,OAAO,EAAE,EAAE;MACX;MACAe,IAAI,EAAE,0CAA0C;MAChD;MACAC,KAAK,EAAE;IACT,CAAC;IACDb,IAAI,EAAE;MACJH,OAAO,EAAE,EAAE;MACXI,EAAE,EAAE,EAAE;MACNC,EAAE,EAAE;IACN;EACF,CAAC;EACDY,gBAAgB,EAAE,CAChB;IAAElB,OAAO,EAAE,MAAM;IAAEI,IAAI,EAAE,SAAS;IAAEe,KAAK,EAAE;EAAY,CAAC,EACxD;IAAEnB,OAAO,EAAE,MAAM;IAAEI,IAAI,EAAE,IAAI;IAAEe,KAAK,EAAE;EAAU,CAAC,EACjD;IAAEnB,OAAO,EAAE,MAAM;IAAEI,IAAI,EAAE,IAAI;IAAEe,KAAK,EAAE;EAAU,CAAC,EACjD;IAAEnB,OAAO,EAAE,OAAO;IAAEI,IAAI,EAAE,SAAS;IAAEe,KAAK,EAAE;EAAY,CAAC,EACzD;IAAEnB,OAAO,EAAE,OAAO;IAAEI,IAAI,EAAE,IAAI;IAAEe,KAAK,EAAE;EAAY,CAAC,EACpD;IAAEnB,OAAO,EAAE,OAAO;IAAEI,IAAI,EAAE,IAAI;IAAEe,KAAK,EAAE;EAAU,CAAC,CACnD;EACDP,eAAe,EAAE;IACfZ,OAAO,EAAE,SAAS;IAClBI,IAAI,EAAE;EACR;AACF,CAAC,CAAC;AAsBF;AACA;AACA;AACA;AACA,MAAMgB,QAAQ,gBAAGnC,UAAU,CACzB,CACE;EACEoC,SAAS;EACTrB,OAAO;EACPI,IAAI,GAAG,SAAS;EAChBG,WAAW,GAAG,YAAY;EAC1BG,QAAQ;EACRY,QAAQ;EACRC,OAAO;EACP,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAM;IAAE7B;EAAK,CAAC,GAAGF,YAAY,CAAC;IAAEM,OAAO;IAAEI,IAAI;IAAEG,WAAW;IAAEG,QAAQ,EAAE,CAAC,CAACA;EAAS,CAAC,CAAC;EAEnF,MAAMgB,IAAI,GAAG,CAACH,OAAO,gBACnB9B,IAAA,CAACN,IAAI;IACHsC,GAAG,EAAEA,GAAI;IACTE,kBAAkB,EAAE;MAAEjB,QAAQ,EAAE,CAAC,CAACA;IAAS,CAAE;IAC7CW,SAAS,EAAEzB,IAAI,CAAC;MAAEyB;IAAU,CAAC,CAAE;IAAA,GAC1BG,KAAK;IAAAF,QAAA,EAETA;EAAQ,CACL,CAAC,gBAEP7B,IAAA,CAACJ,iBAAiB;IAChBoC,GAAG,EAAEA,GAAI;IACTG,iBAAiB,EAAC,QAAQ;IAC1BD,kBAAkB,EAAE;MAAEjB,QAAQ,EAAE,CAAC,CAACA;IAAS,CAAE;IAC7CA,QAAQ,EAAEA,QAAS;IACnBa,OAAO,EAAEA,OAAQ;IACjBF,SAAS,EAAEzB,IAAI,CAAC;MAAEyB;IAAU,CAAC,CAAE;IAAA,GAC3BG,KAAK;IAAAF,QAAA,EAERA;EAAQ,CACQ,CACpB;EAED,oBACE7B,IAAA,CAACoB,WAAW,CAACgB,QAAQ;IAACC,KAAK,EAAE;MAAE1B,IAAI;MAAEG;IAAY,CAAE;IAAAe,QAAA,EAAEI;EAAI,CAAuB,CAAC;AAErF,CACF,CAAC;AACDN,QAAQ,CAACW,WAAW,GAAG,MAAM;AAa7B;AACA,MAAMC,SAAS,gBAAG/C,UAAU,CAC1B,CAAC;EAAEoC,SAAS;EAAEd,WAAW,GAAG,UAAU;EAAEe,QAAQ;EAAE,GAAGE;AAAM,CAAC,EAAEC,GAAG,kBAC/DhC,IAAA,CAACN,IAAI;EACHsC,GAAG,EAAEA,GAAI;EACTG,iBAAiB,EAAC,MAAM;EACxBP,SAAS,EAAE9B,EAAE,CACXgB,WAAW,KAAK,YAAY,GACxB,8BAA8B,GAC9B,QAAQ,EACZc,SACF,CAAE;EAAA,GACEG,KAAK;EAAAF,QAAA,EAERA;AAAQ,CACL,CAEV,CAAC;AACDU,SAAS,CAACD,WAAW,GAAG,YAAY;AAQpC;AACA,MAAME,aAAa,gBAAGhD,UAAU,CAC9B,CAAC;EAAEoC,SAAS;EAAEd,WAAW,GAAG,UAAU;EAAE,GAAGiB;AAAM,CAAC,EAAEC,GAAG,kBACrDhC,IAAA,CAACN,IAAI;EACHsC,GAAG,EAAEA,GAAI;EACTJ,SAAS,EAAE9B,EAAE,CACXgB,WAAW,KAAK,YAAY,GAAG,aAAa,GAAG,aAAa,EAC5D,WAAW,EACXc,SACF,CAAE;EAAA,GACEG;AAAK,CACV,CAEL,CAAC;AACDS,aAAa,CAACF,WAAW,GAAG,gBAAgB;AAS5C;AACA,MAAMG,SAAS,gBAAGjD,UAAU,CAC1B,CAAC;EAAEoC,SAAS;EAAErB,OAAO;EAAEI,IAAI;EAAEkB,QAAQ;EAAE,GAAGE;AAAM,CAAC,EAAEC,GAAG,KAAK;EACzD,MAAMU,IAAI,GAAGjD,UAAU,CAAC2B,WAAW,CAAC;EAEpC,oBACEpB,IAAA,CAACN,IAAI;IACHsC,GAAG,EAAEA,GAAI;IACTJ,SAAS,EAAEP,aAAa,CAAC;MAAEd,OAAO;MAAEI,IAAI,EAAEA,IAAI,IAAI+B,IAAI,CAAC/B,IAAI;MAAEiB;IAAU,CAAC,CAAE;IAAA,GACtEG,KAAK;IAAAF,QAAA,EAERA;EAAQ,CACL,CAAC;AAEX,CACF,CAAC;AACDY,SAAS,CAACH,WAAW,GAAG,YAAY;AAOpC;AACA;AACA;AACA;AACA;AACA,MAAMK,WAAW,gBAAGnD,UAAU,CAC5B,CAAC;EAAEoC,SAAS;EAAEC,QAAQ;EAAE,GAAGE;AAAM,CAAC,EAAEC,GAAG,KAAK;EAC1C,MAAM;IAAElB;EAAY,CAAC,GAAGrB,UAAU,CAAC2B,WAAW,CAAC;EAE/C,oBACEpB,IAAA,CAACN,IAAI;IACHsC,GAAG,EAAEA,GAAI;IACTJ,SAAS,EAAE9B,EAAE,CACXgB,WAAW,KAAK,YAAY,GAAG,QAAQ,GAAG,QAAQ,EAClD,SAAS,EACTc,SACF,CAAE;IAAA,GACEG,KAAK;IAAAF,QAAA,EAERA;EAAQ,CACL,CAAC;AAEX,CACF,CAAC;AACDc,WAAW,CAACL,WAAW,GAAG,cAAc;AAMxC,MAAMM,SAAS,gBAAGpD,UAAU,CAC1B,CAAC;EAAEoC,SAAS;EAAE,GAAGG;AAAM,CAAC,EAAEC,GAAG,KAAK;EAChC,MAAM;IAAErB;EAAK,CAAC,GAAGlB,UAAU,CAAC2B,WAAW,CAAC;EACxC,MAAM;IAAEhB;EAAM,CAAC,GAAGH,YAAY,CAAC;IAAEU;EAAK,CAAC,CAAC;EAExC,oBAAOX,IAAA,CAACH,IAAI;IAACmC,GAAG,EAAEA,GAAI;IAACJ,SAAS,EAAExB,KAAK,CAAC;MAAEwB;IAAU,CAAC,CAAE;IAAA,GAAKG;EAAK,CAAG,CAAC;AACvE,CACF,CAAC;AACDa,SAAS,CAACN,WAAW,GAAG,YAAY;AAMpC,MAAMO,eAAe,gBAAGrD,UAAU,CAGhC,CAAC;EAAEoC,SAAS;EAAE,GAAGG;AAAM,CAAC,EAAEC,GAAG,KAAK;EAClC,MAAM;IAAErB;EAAK,CAAC,GAAGlB,UAAU,CAAC2B,WAAW,CAAC;EACxC,MAAM;IAAEf;EAAY,CAAC,GAAGJ,YAAY,CAAC;IAAEU;EAAK,CAAC,CAAC;EAE9C,oBAAOX,IAAA,CAACH,IAAI;IAACmC,GAAG,EAAEA,GAAI;IAACJ,SAAS,EAAEvB,WAAW,CAAC;MAAEuB;IAAU,CAAC,CAAE;IAAA,GAAKG;EAAK,CAAG,CAAC;AAC7E,CAAC,CAAC;AACFc,eAAe,CAACP,WAAW,GAAG,kBAAkB;AAOhD;AACA,MAAMQ,WAAW,gBAAGtD,UAAU,CAC5B,CAAC;EAAEoC,SAAS;EAAEC,QAAQ;EAAE,GAAGE;AAAM,CAAC,EAAEC,GAAG,kBACrChC,IAAA,CAACN,IAAI;EACHsC,GAAG,EAAEA,GAAI;EACTJ,SAAS,EAAE9B,EAAE,CAAC,wCAAwC,EAAE8B,SAAS,CAAE;EAAA,GAC/DG,KAAK;EAAAF,QAAA,EAERA;AAAQ,CACL,CAEV,CAAC;AACDiB,WAAW,CAACR,WAAW,GAAG,cAAc;AAOxC;AACA;AACA;AACA;AACA;AACA,MAAMS,UAAU,gBAAGvD,UAAU,CAC3B,CAAC;EAAEoC,SAAS;EAAEC,QAAQ;EAAE,GAAGE;AAAM,CAAC,EAAEC,GAAG,kBACrChC,IAAA,CAACN,IAAI;EACHsC,GAAG,EAAEA,GAAI;EACTJ,SAAS,EAAE9B,EAAE,CAAC,oDAAoD,EAAE8B,SAAS,CAAE;EAAA,GAC3EG,KAAK;EAAAF,QAAA,EAERA;AAAQ,CACL,CAEV,CAAC;AACDkB,UAAU,CAACT,WAAW,GAAG,aAAa;AAOtC;AACA,MAAMU,UAAU,gBAAGxD,UAAU,CAC3B,CAAC;EAAEoC,SAAS;EAAEC,QAAQ;EAAE,GAAGE;AAAM,CAAC,EAAEC,GAAG,kBACrChC,IAAA,CAACN,IAAI;EACHsC,GAAG,EAAEA,GAAI;EACTJ,SAAS,EAAE9B,EAAE,CAAC,oCAAoC,EAAE8B,SAAS,CAAE;EAAA,GAC3DG,KAAK;EAAAF,QAAA,EAERA;AAAQ,CACL,CAEV,CAAC;AACDmB,UAAU,CAACV,WAAW,GAAG,aAAa;AAEtC,OAAO,MAAMW,IAAI,GAAGC,MAAM,CAACC,MAAM,CAACxB,QAAQ,EAAE;EAC1CyB,KAAK,EAAEb,SAAS;EAChBc,SAAS,EAAEb,aAAa;EACxBc,KAAK,EAAEb,SAAS;EAChBc,OAAO,EAAEZ,WAAW;EACpBa,KAAK,EAAEZ,SAAS;EAChBa,WAAW,EAAEZ,eAAe;EAC5Ba,OAAO,EAAEZ,WAAW;EACpBa,MAAM,EAAEZ,UAAU;EAClBa,MAAM,EAAEZ;AACV,CAAC,CAAC","ignoreList":[]}
@@ -3,9 +3,11 @@
3
3
  /**
4
4
  * Label — text that names a form field.
5
5
  *
6
- * Adapted from: heroui-inc/heroui-native src/components/label/ (root +
7
- * Label.Text anatomy, string children auto-wrapping, the required asterisk,
8
- * and the isInvalid / isDisabled recolouring).
6
+ * A string child is wrapped in `Label.Text` automatically, so the common case
7
+ * stays one line; pass the parts explicitly when the label needs more than
8
+ * text. `isRequired`, `isInvalid` and `isDisabled` are visual *and* semantic —
9
+ * they recolour and they set the accessibility state, so the two cannot drift
10
+ * apart.
9
11
  */
10
12
  import { createContext, forwardRef, useContext, useMemo } from 'react';
11
13
  import { View } from 'react-native';
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","forwardRef","useContext","useMemo","View","tv","Text","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","labelVariants","slots","root","text","asterisk","variants","isDisabled","true","isInvalid","LabelContext","isRequired","LabelRoot","className","children","props","ref","state","Provider","value","accessibilityState","disabled","LabelText","displayName","asteriskClassName","accessibilityElementsHidden","importantForAccessibility","Label","Object","assign"],"sourceRoot":"../../../../src","sources":["components/label/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createContext","forwardRef","useContext","useMemo","View","tv","Text","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","labelVariants","slots","root","text","asterisk","variants","isDisabled","true","isInvalid","LabelContext","isRequired","LabelRoot","className","children","props","ref","state","Provider","value","accessibilityState","disabled","LabelText","displayName","asteriskClassName","accessibilityElementsHidden","importantForAccessibility","Label","Object","assign"],"sourceRoot":"../../../../src","sources":["components/label/index.tsx"],"mappings":"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","ignoreList":[]}