panelui-native 0.6.0 → 0.9.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 (181) 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/attachment/index.js +219 -0
  7. package/lib/module/components/attachment/index.js.map +1 -0
  8. package/lib/module/components/bottom-sheet/index.js +82 -4
  9. package/lib/module/components/bottom-sheet/index.js.map +1 -1
  10. package/lib/module/components/button/index.js +36 -1
  11. package/lib/module/components/button/index.js.map +1 -1
  12. package/lib/module/components/dialog/index.js +6 -2
  13. package/lib/module/components/dialog/index.js.map +1 -1
  14. package/lib/module/components/empty-state/index.js +98 -22
  15. package/lib/module/components/empty-state/index.js.map +1 -1
  16. package/lib/module/components/inline-select/index.js +171 -46
  17. package/lib/module/components/inline-select/index.js.map +1 -1
  18. package/lib/module/components/input/index.js +28 -5
  19. package/lib/module/components/input/index.js.map +1 -1
  20. package/lib/module/components/input-group/index.js +0 -1
  21. package/lib/module/components/input-group/index.js.map +1 -1
  22. package/lib/module/components/item/index.js +359 -0
  23. package/lib/module/components/item/index.js.map +1 -0
  24. package/lib/module/components/label/index.js +5 -3
  25. package/lib/module/components/label/index.js.map +1 -1
  26. package/lib/module/components/line-chart/index.js +1024 -0
  27. package/lib/module/components/line-chart/index.js.map +1 -0
  28. package/lib/module/components/marker/index.js +190 -0
  29. package/lib/module/components/marker/index.js.map +1 -0
  30. package/lib/module/components/message/index.js +334 -0
  31. package/lib/module/components/message/index.js.map +1 -0
  32. package/lib/module/components/message-scroller/index.js +451 -0
  33. package/lib/module/components/message-scroller/index.js.map +1 -0
  34. package/lib/module/components/popover/index.js +500 -0
  35. package/lib/module/components/popover/index.js.map +1 -0
  36. package/lib/module/components/radio-group/index.js +104 -16
  37. package/lib/module/components/radio-group/index.js.map +1 -1
  38. package/lib/module/components/scroll-fade/index.js +119 -71
  39. package/lib/module/components/scroll-fade/index.js.map +1 -1
  40. package/lib/module/components/select/index.js +35 -6
  41. package/lib/module/components/select/index.js.map +1 -1
  42. package/lib/module/components/separator/index.js +91 -0
  43. package/lib/module/components/separator/index.js.map +1 -0
  44. package/lib/module/components/shimmer/index.js +111 -64
  45. package/lib/module/components/shimmer/index.js.map +1 -1
  46. package/lib/module/components/surface/index.js +24 -4
  47. package/lib/module/components/surface/index.js.map +1 -1
  48. package/lib/module/components/switch/index.js +20 -1
  49. package/lib/module/components/switch/index.js.map +1 -1
  50. package/lib/module/components/toast/index.js +7 -8
  51. package/lib/module/components/toast/index.js.map +1 -1
  52. package/lib/module/components/typography/index.js +3 -3
  53. package/lib/module/hooks/index.js +1 -0
  54. package/lib/module/hooks/index.js.map +1 -1
  55. package/lib/module/hooks/use-breakpoint.js +2 -2
  56. package/lib/module/hooks/use-copy-to-clipboard.js +0 -2
  57. package/lib/module/hooks/use-copy-to-clipboard.js.map +1 -1
  58. package/lib/module/hooks/use-keyboard-avoidance.js +120 -0
  59. package/lib/module/hooks/use-keyboard-avoidance.js.map +1 -0
  60. package/lib/module/icons/index.js +73 -4
  61. package/lib/module/icons/index.js.map +1 -1
  62. package/lib/module/index.js +13 -1
  63. package/lib/module/index.js.map +1 -1
  64. package/lib/module/native/index.js +53 -0
  65. package/lib/module/native/index.js.map +1 -0
  66. package/lib/module/primitives/keyboard-avoider.js +40 -0
  67. package/lib/module/primitives/keyboard-avoider.js.map +1 -0
  68. package/lib/module/primitives/scrim.js +72 -0
  69. package/lib/module/primitives/scrim.js.map +1 -0
  70. package/lib/module/providers/panel-ui-provider.js +24 -4
  71. package/lib/module/providers/panel-ui-provider.js.map +1 -1
  72. package/lib/module/theme/use-theme.js +1 -1
  73. package/lib/typescript/src/components/accordion/index.d.ts +7 -5
  74. package/lib/typescript/src/components/accordion/index.d.ts.map +1 -1
  75. package/lib/typescript/src/components/alert/index.d.ts +3 -6
  76. package/lib/typescript/src/components/alert/index.d.ts.map +1 -1
  77. package/lib/typescript/src/components/attachment/index.d.ts +93 -0
  78. package/lib/typescript/src/components/attachment/index.d.ts.map +1 -0
  79. package/lib/typescript/src/components/bottom-sheet/index.d.ts +27 -2
  80. package/lib/typescript/src/components/bottom-sheet/index.d.ts.map +1 -1
  81. package/lib/typescript/src/components/button/index.d.ts +11 -0
  82. package/lib/typescript/src/components/button/index.d.ts.map +1 -1
  83. package/lib/typescript/src/components/dialog/index.d.ts +7 -1
  84. package/lib/typescript/src/components/dialog/index.d.ts.map +1 -1
  85. package/lib/typescript/src/components/empty-state/index.d.ts +156 -7
  86. package/lib/typescript/src/components/empty-state/index.d.ts.map +1 -1
  87. package/lib/typescript/src/components/inline-select/index.d.ts +29 -6
  88. package/lib/typescript/src/components/inline-select/index.d.ts.map +1 -1
  89. package/lib/typescript/src/components/input/index.d.ts +13 -0
  90. package/lib/typescript/src/components/input/index.d.ts.map +1 -1
  91. package/lib/typescript/src/components/input-group/index.d.ts +0 -1
  92. package/lib/typescript/src/components/input-group/index.d.ts.map +1 -1
  93. package/lib/typescript/src/components/item/index.d.ts +286 -0
  94. package/lib/typescript/src/components/item/index.d.ts.map +1 -0
  95. package/lib/typescript/src/components/label/index.d.ts +5 -3
  96. package/lib/typescript/src/components/label/index.d.ts.map +1 -1
  97. package/lib/typescript/src/components/line-chart/index.d.ts +247 -0
  98. package/lib/typescript/src/components/line-chart/index.d.ts.map +1 -0
  99. package/lib/typescript/src/components/marker/index.d.ts +137 -0
  100. package/lib/typescript/src/components/marker/index.d.ts.map +1 -0
  101. package/lib/typescript/src/components/message/index.d.ts +177 -0
  102. package/lib/typescript/src/components/message/index.d.ts.map +1 -0
  103. package/lib/typescript/src/components/message-scroller/index.d.ts +150 -0
  104. package/lib/typescript/src/components/message-scroller/index.d.ts.map +1 -0
  105. package/lib/typescript/src/components/popover/index.d.ts +130 -0
  106. package/lib/typescript/src/components/popover/index.d.ts.map +1 -0
  107. package/lib/typescript/src/components/radio-group/index.d.ts +32 -0
  108. package/lib/typescript/src/components/radio-group/index.d.ts.map +1 -1
  109. package/lib/typescript/src/components/scroll-fade/index.d.ts +18 -9
  110. package/lib/typescript/src/components/scroll-fade/index.d.ts.map +1 -1
  111. package/lib/typescript/src/components/select/index.d.ts +16 -1
  112. package/lib/typescript/src/components/select/index.d.ts.map +1 -1
  113. package/lib/typescript/src/components/separator/index.d.ts +47 -0
  114. package/lib/typescript/src/components/separator/index.d.ts.map +1 -0
  115. package/lib/typescript/src/components/shimmer/index.d.ts +38 -20
  116. package/lib/typescript/src/components/shimmer/index.d.ts.map +1 -1
  117. package/lib/typescript/src/components/surface/index.d.ts +51 -2
  118. package/lib/typescript/src/components/surface/index.d.ts.map +1 -1
  119. package/lib/typescript/src/components/switch/index.d.ts +10 -0
  120. package/lib/typescript/src/components/switch/index.d.ts.map +1 -1
  121. package/lib/typescript/src/components/toast/index.d.ts +4 -4
  122. package/lib/typescript/src/components/toast/index.d.ts.map +1 -1
  123. package/lib/typescript/src/hooks/index.d.ts +1 -0
  124. package/lib/typescript/src/hooks/index.d.ts.map +1 -1
  125. package/lib/typescript/src/hooks/use-breakpoint.d.ts +2 -2
  126. package/lib/typescript/src/hooks/use-copy-to-clipboard.d.ts +0 -2
  127. package/lib/typescript/src/hooks/use-copy-to-clipboard.d.ts.map +1 -1
  128. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts +20 -0
  129. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts.map +1 -0
  130. package/lib/typescript/src/icons/index.d.ts +10 -4
  131. package/lib/typescript/src/icons/index.d.ts.map +1 -1
  132. package/lib/typescript/src/index.d.ts +11 -1
  133. package/lib/typescript/src/index.d.ts.map +1 -1
  134. package/lib/typescript/src/native/index.d.ts +35 -0
  135. package/lib/typescript/src/native/index.d.ts.map +1 -0
  136. package/lib/typescript/src/primitives/keyboard-avoider.d.ts +22 -0
  137. package/lib/typescript/src/primitives/keyboard-avoider.d.ts.map +1 -0
  138. package/lib/typescript/src/primitives/scrim.d.ts +21 -0
  139. package/lib/typescript/src/primitives/scrim.d.ts.map +1 -0
  140. package/lib/typescript/src/providers/panel-ui-provider.d.ts +1 -1
  141. package/lib/typescript/src/providers/panel-ui-provider.d.ts.map +1 -1
  142. package/lib/typescript/src/theme/use-theme.d.ts +1 -1
  143. package/package.json +16 -3
  144. package/src/components/accordion/index.tsx +7 -5
  145. package/src/components/alert/index.tsx +3 -6
  146. package/src/components/attachment/index.tsx +279 -0
  147. package/src/components/bottom-sheet/index.tsx +102 -2
  148. package/src/components/button/index.tsx +52 -0
  149. package/src/components/dialog/index.tsx +10 -1
  150. package/src/components/empty-state/index.tsx +64 -19
  151. package/src/components/inline-select/index.tsx +191 -44
  152. package/src/components/input/index.tsx +39 -3
  153. package/src/components/input-group/index.tsx +0 -1
  154. package/src/components/item/index.tsx +387 -0
  155. package/src/components/label/index.tsx +5 -3
  156. package/src/components/line-chart/index.tsx +1224 -0
  157. package/src/components/marker/index.tsx +194 -0
  158. package/src/components/message/index.tsx +336 -0
  159. package/src/components/message-scroller/index.tsx +574 -0
  160. package/src/components/popover/index.tsx +599 -0
  161. package/src/components/radio-group/index.tsx +108 -17
  162. package/src/components/scroll-fade/index.tsx +163 -51
  163. package/src/components/select/index.tsx +54 -9
  164. package/src/components/separator/index.tsx +97 -0
  165. package/src/components/shimmer/index.tsx +151 -58
  166. package/src/components/surface/index.tsx +32 -5
  167. package/src/components/switch/index.tsx +27 -1
  168. package/src/components/toast/index.tsx +7 -8
  169. package/src/components/typography/index.tsx +3 -3
  170. package/src/hooks/index.ts +5 -0
  171. package/src/hooks/use-breakpoint.ts +2 -2
  172. package/src/hooks/use-copy-to-clipboard.ts +0 -2
  173. package/src/hooks/use-keyboard-avoidance.ts +140 -0
  174. package/src/icons/index.tsx +52 -4
  175. package/src/index.ts +92 -0
  176. package/src/native/index.ts +79 -0
  177. package/src/primitives/keyboard-avoider.tsx +49 -0
  178. package/src/primitives/scrim.tsx +95 -0
  179. package/src/providers/panel-ui-provider.tsx +30 -9
  180. package/src/theme/use-theme.ts +1 -1
  181. package/theme.css +63 -3
package/theme.css CHANGED
@@ -1,7 +1,9 @@
1
1
  /*
2
- * PanelUI theme — Coss UI design tokens, translated for React Native.
3
- * Source of truth: cosscom/coss packages/ui/src/styles/globals.css
4
- * (color-mix()/--alpha() expressions precomputed to static values.)
2
+ * PanelUI theme — the semantic design tokens, translated for React Native.
3
+ *
4
+ * Every colour is a static rgba/hex value: native cannot evaluate
5
+ * color-mix() or --alpha() at runtime, so those expressions are precomputed
6
+ * here rather than shipped as-is.
5
7
  *
6
8
  * Structured the way Uniwind expects themed tokens (see uniwind's own
7
9
  * test.css / expo-example): utility names declared in @theme, per-theme
@@ -65,6 +67,22 @@
65
67
  --color-destructive-soft: unset;
66
68
  --color-destructive-subtle: unset;
67
69
 
70
+ /*
71
+ * Chart series. A separate ramp from the status colours because they answer
72
+ * a different question: a status colour means something (this failed, this
73
+ * is fine), a series colour only has to be told apart from the other four.
74
+ * Ordered by prominence — chart-1 is the series the chart is about, and each
75
+ * theme starts it on that family's own accent.
76
+ *
77
+ * These are the tokens to override in your app's global.css, after the
78
+ * `panelui-native/theme.css` import, to put a chart on brand.
79
+ */
80
+ --color-chart-1: unset;
81
+ --color-chart-2: unset;
82
+ --color-chart-3: unset;
83
+ --color-chart-4: unset;
84
+ --color-chart-5: unset;
85
+
68
86
  /*
69
87
  * Radius scale. Themed rather than static: a theme is a shape as well as a
70
88
  * palette, so each family sets its own corner rounding. --radius-3xl is
@@ -141,6 +159,13 @@
141
159
  --color-warning-subtle: rgba(245, 158, 11, 0.08);
142
160
  --color-destructive-soft: rgba(239, 68, 68, 0.1);
143
161
  --color-destructive-subtle: rgba(239, 68, 68, 0.08);
162
+
163
+ /* chart series, in order of prominence */
164
+ --color-chart-1: #262626;
165
+ --color-chart-2: #3b82f6;
166
+ --color-chart-3: #10b981;
167
+ --color-chart-4: #f59e0b;
168
+ --color-chart-5: #8b5cf6;
144
169
 
145
170
  /* Panel shape scale */
146
171
  --radius-xs: 4px;
@@ -214,6 +239,13 @@
214
239
  --color-warning-subtle: rgba(245, 158, 11, 0.16);
215
240
  --color-destructive-soft: rgba(241, 87, 87, 0.06);
216
241
  --color-destructive-subtle: rgba(241, 87, 87, 0.16);
242
+
243
+ /* chart series, in order of prominence */
244
+ --color-chart-1: #fafafa;
245
+ --color-chart-2: #60a5fa;
246
+ --color-chart-3: #34d399;
247
+ --color-chart-4: #fbbf24;
248
+ --color-chart-5: #a78bfa;
217
249
 
218
250
  /* Panel shape scale */
219
251
  --radius-xs: 4px;
@@ -296,6 +328,13 @@
296
328
  --color-warning-subtle: rgba(245, 166, 35, 0.08);
297
329
  --color-destructive-soft: rgba(229, 72, 77, 0.1);
298
330
  --color-destructive-subtle: rgba(229, 72, 77, 0.08);
331
+
332
+ /* chart series, in order of prominence */
333
+ --color-chart-1: #0070f3;
334
+ --color-chart-2: #171717;
335
+ --color-chart-3: #7928ca;
336
+ --color-chart-4: #f5a623;
337
+ --color-chart-5: #0a9396;
299
338
 
300
339
  /* Moon shape scale */
301
340
  --radius-xs: 2px;
@@ -358,6 +397,13 @@
358
397
  --color-warning-subtle: rgba(245, 166, 35, 0.16);
359
398
  --color-destructive-soft: rgba(229, 72, 77, 0.1);
360
399
  --color-destructive-subtle: rgba(229, 72, 77, 0.16);
400
+
401
+ /* chart series, in order of prominence */
402
+ --color-chart-1: #3291ff;
403
+ --color-chart-2: #ededed;
404
+ --color-chart-3: #a855f7;
405
+ --color-chart-4: #fbbf24;
406
+ --color-chart-5: #2dd4bf;
361
407
 
362
408
  /* Moon shape scale */
363
409
  --radius-xs: 2px;
@@ -423,6 +469,13 @@
423
469
  --color-warning-subtle: rgba(245, 158, 11, 0.08);
424
470
  --color-destructive-soft: rgba(239, 68, 68, 0.1);
425
471
  --color-destructive-subtle: rgba(239, 68, 68, 0.08);
472
+
473
+ /* chart series, in order of prominence */
474
+ --color-chart-1: #24b47e;
475
+ --color-chart-2: #1f2937;
476
+ --color-chart-3: #2563eb;
477
+ --color-chart-4: #f59e0b;
478
+ --color-chart-5: #db2777;
426
479
 
427
480
  /* Grass shape scale */
428
481
  --radius-xs: 6px;
@@ -485,6 +538,13 @@
485
538
  --color-warning-subtle: rgba(245, 158, 11, 0.16);
486
539
  --color-destructive-soft: rgba(241, 87, 87, 0.08);
487
540
  --color-destructive-subtle: rgba(241, 87, 87, 0.16);
541
+
542
+ /* chart series, in order of prominence */
543
+ --color-chart-1: #3ecf8e;
544
+ --color-chart-2: #ededed;
545
+ --color-chart-3: #60a5fa;
546
+ --color-chart-4: #fbbf24;
547
+ --color-chart-5: #f472b6;
488
548
 
489
549
  /* Grass shape scale */
490
550
  --radius-xs: 6px;