@siyahi/ui 0.1.9-next.2 → 0.1.9-next.20

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 (149) hide show
  1. package/README.md +82 -176
  2. package/THIRD_PARTY_NOTICES.md +11 -11
  3. package/agents/examples/accordion.tsx +39 -0
  4. package/agents/examples/alert.tsx +25 -0
  5. package/agents/examples/app-sidebar.tsx +38 -0
  6. package/agents/examples/avatar.tsx +14 -0
  7. package/agents/examples/badge.tsx +18 -0
  8. package/agents/examples/bar-list-labels.tsx +22 -0
  9. package/agents/examples/bar-list-sides.tsx +30 -0
  10. package/agents/examples/bar-list.tsx +24 -0
  11. package/agents/examples/breadcrumb.tsx +28 -0
  12. package/agents/examples/button.tsx +21 -0
  13. package/agents/examples/calendar.tsx +15 -0
  14. package/agents/examples/card.tsx +34 -0
  15. package/agents/examples/chart-area.tsx +38 -0
  16. package/agents/examples/chart-bar-flows.tsx +31 -0
  17. package/agents/examples/chart-bar-hourly.tsx +28 -0
  18. package/agents/examples/chart-bar-losses.tsx +29 -0
  19. package/agents/examples/chart-bar-sectors.tsx +70 -0
  20. package/agents/examples/chart-bar-years.tsx +40 -0
  21. package/agents/examples/chart-bar.tsx +56 -0
  22. package/agents/examples/chart-category-ticks.tsx +50 -0
  23. package/agents/examples/chart-line-events.tsx +47 -0
  24. package/agents/examples/chart-line-timeline.tsx +41 -0
  25. package/agents/examples/chart-line.tsx +57 -0
  26. package/agents/examples/code-block.tsx +38 -0
  27. package/agents/examples/collapsible.tsx +16 -0
  28. package/agents/examples/command.tsx +27 -0
  29. package/agents/examples/context-menu.tsx +15 -0
  30. package/agents/examples/copy-button.tsx +8 -0
  31. package/agents/examples/data-bar.tsx +121 -0
  32. package/agents/examples/data-table-filters.tsx +103 -0
  33. package/agents/examples/data-table.tsx +98 -0
  34. package/agents/examples/delta.tsx +13 -0
  35. package/agents/examples/dialog.tsx +28 -0
  36. package/agents/examples/distribution-bar-budget.tsx +30 -0
  37. package/agents/examples/distribution-bar-tug.tsx +72 -0
  38. package/agents/examples/dropdown-menu.tsx +31 -0
  39. package/agents/examples/formatters.tsx +42 -0
  40. package/agents/examples/heatmap-calendar.tsx +50 -0
  41. package/agents/examples/heatmap-status.tsx +51 -0
  42. package/agents/examples/heatmap-weekday.tsx +53 -0
  43. package/agents/examples/input.tsx +17 -0
  44. package/agents/examples/local-time.tsx +14 -0
  45. package/agents/examples/metric-strip.tsx +40 -0
  46. package/agents/examples/page-section.tsx +52 -0
  47. package/agents/examples/popover.tsx +23 -0
  48. package/agents/examples/price-chart.tsx +32 -0
  49. package/agents/examples/progress-tone.tsx +28 -0
  50. package/agents/examples/progress.tsx +10 -0
  51. package/agents/examples/scroll-area.tsx +20 -0
  52. package/agents/examples/section-cards-select.tsx +27 -0
  53. package/agents/examples/section-cards-trend.tsx +30 -0
  54. package/agents/examples/section-cards.tsx +48 -0
  55. package/agents/examples/select.tsx +27 -0
  56. package/agents/examples/separator.tsx +13 -0
  57. package/agents/examples/sheet.tsx +15 -0
  58. package/agents/examples/skeleton.tsx +11 -0
  59. package/agents/examples/slider.tsx +5 -0
  60. package/agents/examples/surfaces.tsx +115 -0
  61. package/agents/examples/table.tsx +50 -0
  62. package/agents/examples/tabs.tsx +16 -0
  63. package/agents/examples/toggle-group.tsx +12 -0
  64. package/agents/examples/toggle.tsx +11 -0
  65. package/agents/examples/tooltip.tsx +13 -0
  66. package/agents/examples/treemap.tsx +87 -0
  67. package/agents/manifest.json +931 -0
  68. package/agents/report-rules.json +7 -0
  69. package/dist/components/registry/charts/bar-chart-card.js +33 -26
  70. package/dist/components/registry/dashboard-01/section-cards.d.ts +2 -0
  71. package/dist/components/registry/dashboard-01/section-cards.js +42 -35
  72. package/dist/components/registry/dashboardcn/bar-list.js +9 -8
  73. package/dist/components/registry/dashboardcn/distribution-bar.js +1 -1
  74. package/dist/components/registry/dashboardcn/kpi-row-card.d.ts +29 -0
  75. package/dist/components/registry/dashboardcn/kpi-row-card.js +81 -0
  76. package/dist/components/registry/dashboardcn/sparkline.d.ts +18 -0
  77. package/dist/components/registry/dashboardcn/sparkline.js +95 -0
  78. package/dist/components/registry/heatmap/calendar-heatmap.js +8 -1
  79. package/dist/components/registry/heatmap/status-heatmap.js +8 -1
  80. package/dist/components/registry/heatmap/weekday-heatmap.d.ts +6 -2
  81. package/dist/components/registry/heatmap/weekday-heatmap.js +56 -37
  82. package/dist/components/registry/niko-table/core/data-table-context.d.ts +2 -0
  83. package/dist/components/registry/niko-table/core/data-table-context.js +21 -0
  84. package/dist/components/registry/niko-table/core/data-table-grouped-row.js +3 -1
  85. package/dist/components/registry/niko-table/core/data-table-structure.js +15 -12
  86. package/dist/components/registry/niko-table/core/data-table.d.ts +2 -2
  87. package/dist/components/registry/niko-table/core/data-table.js +5 -1
  88. package/dist/components/registry/niko-table/filters/table-faceted-filter.js +4 -4
  89. package/dist/components/registry/niko-table/filters/table-search-filter.js +1 -1
  90. package/dist/components/registry/niko-table/lib/flex-columns.d.ts +1 -1
  91. package/dist/components/registry/niko-table/lib/flex-columns.js +3 -3
  92. package/dist/components/registry/niko-table/lib/styles.d.ts +1 -1
  93. package/dist/components/registry/niko-table/lib/styles.js +2 -2
  94. package/dist/components/registry/niko-table/ui/table.js +2 -2
  95. package/dist/components/registry/sidebar-07/app-sidebar.d.ts +1 -1
  96. package/dist/components/registry/sidebar-07/app-sidebar.js +3 -1
  97. package/dist/components/registry/sidebar-07/nav-main.d.ts +1 -1
  98. package/dist/components/registry/sidebar-07/nav-main.js +7 -1
  99. package/dist/components/siyahi/data-bar.d.ts +19 -0
  100. package/dist/components/siyahi/data-bar.js +29 -0
  101. package/dist/components/siyahi/page-section.d.ts +4 -1
  102. package/dist/components/siyahi/page-section.js +6 -3
  103. package/dist/components/siyahi/panel-grid.d.ts +22 -0
  104. package/dist/components/siyahi/panel-grid.js +34 -0
  105. package/dist/components/siyahi/siyahi-provider.d.ts +13 -2
  106. package/dist/components/siyahi/siyahi-provider.js +17 -4
  107. package/dist/components/siyahi/treemap.js +46 -4
  108. package/dist/components/ui/accordion.js +5 -5
  109. package/dist/components/ui/alert.js +2 -2
  110. package/dist/components/ui/badge.js +1 -1
  111. package/dist/components/ui/breadcrumb.js +2 -2
  112. package/dist/components/ui/button.js +10 -10
  113. package/dist/components/ui/calendar.js +1 -1
  114. package/dist/components/ui/card.js +4 -4
  115. package/dist/components/ui/chart.js +1 -1
  116. package/dist/components/ui/code-block.js +13 -12
  117. package/dist/components/ui/command.js +7 -6
  118. package/dist/components/ui/context-menu.js +7 -7
  119. package/dist/components/ui/dialog.js +5 -5
  120. package/dist/components/ui/dropdown-menu.js +8 -8
  121. package/dist/components/ui/input-group.js +11 -11
  122. package/dist/components/ui/input.js +1 -1
  123. package/dist/components/ui/popover.js +3 -3
  124. package/dist/components/ui/progress.js +1 -1
  125. package/dist/components/ui/select.js +6 -6
  126. package/dist/components/ui/sheet.js +5 -5
  127. package/dist/components/ui/sidebar.js +17 -18
  128. package/dist/components/ui/skeleton.js +1 -1
  129. package/dist/components/ui/slider.js +2 -2
  130. package/dist/components/ui/table.js +2 -2
  131. package/dist/components/ui/tabs.js +2 -2
  132. package/dist/components/ui/textarea.js +1 -1
  133. package/dist/components/ui/toggle-group.js +2 -2
  134. package/dist/components/ui/toggle.js +4 -4
  135. package/dist/components/ui/tooltip.js +2 -2
  136. package/dist/index.d.ts +7 -4
  137. package/dist/index.js +7 -4
  138. package/dist/lib/chart-frame.d.ts +13 -5
  139. package/dist/lib/chart-frame.js +207 -127
  140. package/dist/lib/chart-series.d.ts +7 -4
  141. package/dist/lib/format.js +32 -13
  142. package/dist/lib/heatmap-navigation.d.ts +8 -0
  143. package/dist/lib/heatmap-navigation.js +49 -0
  144. package/package.json +3 -1
  145. package/registry.lock.json +16 -0
  146. package/report.css +11 -11
  147. package/styles/siyahi.css +77 -11
  148. package/dist/lib/recharts.d.ts +0 -2
  149. package/dist/lib/recharts.js +0 -1
@@ -0,0 +1,12 @@
1
+ import { ToggleGroup, ToggleGroupItem } from "@siyahi/ui";
2
+
3
+ export default function ToggleGroupExample() {
4
+ return (
5
+ <ToggleGroup defaultValue={["1Y"]} variant="outline" size="sm" aria-label="Range">
6
+ <ToggleGroupItem value="1M">1M</ToggleGroupItem>
7
+ <ToggleGroupItem value="6M">6M</ToggleGroupItem>
8
+ <ToggleGroupItem value="1Y">1Y</ToggleGroupItem>
9
+ <ToggleGroupItem value="All">All</ToggleGroupItem>
10
+ </ToggleGroup>
11
+ );
12
+ }
@@ -0,0 +1,11 @@
1
+ import { Toggle } from "@siyahi/ui";
2
+ import { EyeOffIcon } from "lucide-react";
3
+
4
+ export default function ToggleExample() {
5
+ return (
6
+ <Toggle variant="outline" aria-label="Hide amounts">
7
+ <EyeOffIcon />
8
+ Hide amounts
9
+ </Toggle>
10
+ );
11
+ }
@@ -0,0 +1,13 @@
1
+ import { Button, Tooltip, TooltipContent, TooltipTrigger } from "@siyahi/ui";
2
+ import { InfoIcon } from "lucide-react";
3
+
4
+ export default function TooltipExample() {
5
+ return (
6
+ <Tooltip>
7
+ <TooltipTrigger render={<Button variant="outline" size="icon" aria-label="About XIRR" />}>
8
+ <InfoIcon />
9
+ </TooltipTrigger>
10
+ <TooltipContent>XIRR weighs every cash flow by its date.</TooltipContent>
11
+ </Tooltip>
12
+ );
13
+ }
@@ -0,0 +1,87 @@
1
+ import {
2
+ Card,
3
+ CardContent,
4
+ CardDescription,
5
+ CardHeader,
6
+ CardTitle,
7
+ Tooltip,
8
+ TooltipContent,
9
+ TooltipTrigger,
10
+ Treemap,
11
+ TreemapLegend,
12
+ useFormat,
13
+ type TreemapItem,
14
+ } from "@siyahi/ui";
15
+ import { useState } from "react";
16
+
17
+ interface Holding extends TreemapItem {
18
+ broker: string;
19
+ }
20
+
21
+ // change is the return since bought; LT came in as a transfer, with no cost basis.
22
+ const holdings: Holding[] = [
23
+ { name: "INFY", key: "INFY-kite", broker: "Kite", group: "IT", weight: 224400, change: 0.38 },
24
+ { name: "INFY", key: "INFY-dhan", broker: "Dhan", group: "IT", weight: 152000, change: 0.12 },
25
+ { name: "TCS", broker: "Kite", group: "IT", weight: 166000, change: 0.09 },
26
+ { name: "WIPRO", broker: "Dhan", group: "IT", weight: 98000, change: -0.21 },
27
+ { name: "HDFCBANK", broker: "Kite", group: "Banks", weight: 262500, change: -0.06 },
28
+ { name: "ICICIBANK", broker: "Kite", group: "Banks", weight: 258000, change: 0.44 },
29
+ { name: "SBIN", broker: "Dhan", group: "Banks", weight: 87000, change: 0.58 },
30
+ { name: "ITC", broker: "Kite", group: "FMCG", weight: 276000, change: 0.27 },
31
+ { name: "ASIANPAINT", broker: "Dhan", group: "FMCG", weight: 64000, change: -0.33 },
32
+ { name: "NIFTYBEES", broker: "Kite", group: "ETF", weight: 255600, change: 0.16 },
33
+ { name: "LT", broker: "Dhan", group: "Construction", weight: 52000, change: null },
34
+ ];
35
+
36
+ export default function TreemapExample() {
37
+ const [hovered, setHovered] = useState<Holding | null>(null);
38
+ const [selected, setSelected] = useState<Holding | null>(null);
39
+ const { money, pct } = useFormat();
40
+ const figures = (h: Holding) =>
41
+ `${money(h.weight)} · ${h.change === null ? "no cost basis" : `${h.change < 0 ? "▼" : "▲"} ${pct(Math.abs(h.change))}`}`;
42
+ return (
43
+ <Card>
44
+ <CardHeader>
45
+ <CardTitle>Holdings by sector</CardTitle>
46
+ <CardDescription>Area is the holding's value; colour is its return, deepest at ±60%</CardDescription>
47
+ </CardHeader>
48
+ <CardContent>
49
+ <Tooltip open={hovered !== null} trackCursorAxis="both">
50
+ <TooltipTrigger render={<div />}>
51
+ <Treemap
52
+ items={holdings}
53
+ height={320}
54
+ range={0.6}
55
+ onHover={setHovered}
56
+ selected={selected}
57
+ onSelect={setSelected}
58
+ />
59
+ </TooltipTrigger>
60
+ <TooltipContent side="bottom" className="flex-col items-start gap-0 tabular-nums">
61
+ {hovered && (
62
+ <>
63
+ <span className="font-medium">
64
+ {hovered.name} · {hovered.broker}
65
+ </span>
66
+ <span>{figures(hovered)}</span>
67
+ </>
68
+ )}
69
+ </TooltipContent>
70
+ </Tooltip>
71
+ <TreemapLegend range={0.6} className="mt-3 ml-auto" />
72
+ <p data-slot="treemap-selection" aria-live="polite" className="mt-3 text-sm tabular-nums">
73
+ {selected ? (
74
+ <>
75
+ <span className="font-medium">
76
+ {selected.name} · {selected.broker}
77
+ </span>{" "}
78
+ · {figures(selected)}
79
+ </>
80
+ ) : (
81
+ <span className="text-muted-foreground">Tap a tile for its figures</span>
82
+ )}
83
+ </p>
84
+ </CardContent>
85
+ </Card>
86
+ );
87
+ }