chesai-ui 0.16.15 → 0.16.17

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.
@@ -97,3 +97,4 @@ export * from './virtual-list';
97
97
  export * from './swipeable';
98
98
  export * from './website-studio';
99
99
  export * from './playlist-studio';
100
+ export * from './reverse-infinite-scroll';
@@ -0,0 +1,107 @@
1
+ import { jsx as i, jsxs as k } from "react/jsx-runtime";
2
+ import { forwardRef as z, useRef as p, useState as D, useEffect as a, useImperativeHandle as q, useLayoutEffect as T } from "react";
3
+ import { clsx as A } from "clsx";
4
+ import { LoadingIndicator as C } from "../loadingIndicator/index.mjs";
5
+ const F = z(
6
+ ({
7
+ children: m,
8
+ onLoadOlder: x,
9
+ hasMore: g,
10
+ isLoading: u,
11
+ loader: R,
12
+ autoScrollThreshold: f = 120,
13
+ loadThreshold: v = 50,
14
+ onAtBottomChange: w,
15
+ behavior: b = "instant",
16
+ className: y,
17
+ viewportClassName: I,
18
+ ...N
19
+ }, L) => {
20
+ const n = p(null), h = p(null), e = p({
21
+ previousScrollHeight: 0,
22
+ previousScrollTop: 0,
23
+ isAtBottom: !0,
24
+ isLoadingOlder: !1
25
+ }), [G, H] = D(!0);
26
+ a(() => {
27
+ e.current.isLoadingOlder = u;
28
+ }, [u]);
29
+ const O = (t) => {
30
+ const { scrollTop: r, scrollHeight: o, clientHeight: c } = t;
31
+ return o - c - r <= f;
32
+ }, S = (t) => {
33
+ const r = n.current;
34
+ if (!r) return;
35
+ const o = r.scrollHeight - r.clientHeight;
36
+ r.scrollTo({
37
+ top: o,
38
+ behavior: t || b
39
+ }), e.current.isAtBottom = !0, d(!0);
40
+ }, d = (t) => {
41
+ e.current.isAtBottom !== t && (e.current.isAtBottom = t, H(t), w?.(t));
42
+ };
43
+ q(L, () => ({
44
+ scrollToBottom: (t) => S(t),
45
+ getHTMLElement: () => n.current,
46
+ isAtBottom: () => e.current.isAtBottom
47
+ }));
48
+ const j = (t) => {
49
+ const r = t.currentTarget, { scrollTop: o, scrollHeight: c } = r;
50
+ e.current.previousScrollTop = o, e.current.previousScrollHeight = c;
51
+ const l = O(r);
52
+ d(l), o <= v && g && !e.current.isLoadingOlder && (e.current.isLoadingOlder = !0, x());
53
+ };
54
+ return T(() => {
55
+ const t = n.current;
56
+ t && (e.current.previousScrollHeight = t.scrollHeight, e.current.previousScrollTop = t.scrollTop);
57
+ }), T(() => {
58
+ const t = n.current;
59
+ if (!t) return;
60
+ const { previousScrollHeight: r, previousScrollTop: o, isAtBottom: c } = e.current, l = t.scrollHeight, s = l - r;
61
+ s > 0 && o <= v + 10 ? t.scrollTop = o + s : c && (t.scrollTop = l - t.clientHeight);
62
+ }, [m]), a(() => {
63
+ const t = n.current, r = h.current;
64
+ if (!t || !r) return;
65
+ const o = new ResizeObserver(() => {
66
+ const { previousScrollHeight: c, previousScrollTop: l, isAtBottom: s } = e.current, E = c - t.clientHeight - l <= f;
67
+ if (s || E) {
68
+ const B = t.scrollHeight - t.clientHeight;
69
+ t.scrollTop = B, e.current.previousScrollHeight = t.scrollHeight, e.current.previousScrollTop = B, e.current.isAtBottom = !0, H(!0);
70
+ }
71
+ });
72
+ return o.observe(r), () => o.disconnect();
73
+ }, [f]), a(() => {
74
+ S("instant");
75
+ }, []), /* @__PURE__ */ i(
76
+ "div",
77
+ {
78
+ ref: n,
79
+ onScroll: j,
80
+ className: A(
81
+ "flex flex-col overflow-y-auto h-full w-full outline-none",
82
+ I
83
+ ),
84
+ style: {
85
+ overflowAnchor: "none"
86
+ // Override browser anchoring to allow custom precision offsets
87
+ },
88
+ ...N,
89
+ children: /* @__PURE__ */ k(
90
+ "div",
91
+ {
92
+ ref: h,
93
+ className: A("flex flex-col w-full", y),
94
+ children: [
95
+ g && /* @__PURE__ */ i("div", { className: "flex w-full items-center justify-center py-4 min-h-[48px]", children: u ? R || /* @__PURE__ */ i(C, { variant: "material-morph-background" }) : /* @__PURE__ */ i("div", { className: "h-px bg-transparent w-full" }) }),
96
+ m
97
+ ]
98
+ }
99
+ )
100
+ }
101
+ );
102
+ }
103
+ );
104
+ F.displayName = "ReverseInfiniteScroll";
105
+ export {
106
+ F as ReverseInfiniteScroll
107
+ };
package/dist/index.mjs CHANGED
@@ -5,9 +5,9 @@ import { default as p } from "./components/device/index.mjs";
5
5
  import { default as i } from "./components/material3-carousel/Carousel.mjs";
6
6
  import { default as l } from "./components/material3-carousel/CarouselItem.mjs";
7
7
  import { Popover as u, PopoverAnchor as f, PopoverArrow as d, PopoverClose as s, PopoverContent as S, PopoverPortal as c, PopoverTrigger as C } from "./components/popover/index.mjs";
8
- import { Accordion as T } from "./components/accordion/index.mjs";
8
+ import { Accordion as I } from "./components/accordion/index.mjs";
9
9
  import { Alert as D, AlertAction as g, AlertContent as P, AlertDescription as h, AlertIcon as F, AlertTitle as B } from "./components/alert/index.mjs";
10
- import { AppBar as A, useAppBarContext as R } from "./components/appbar/index.mjs";
10
+ import { AppBar as R, useAppBarContext as A } from "./components/appbar/index.mjs";
11
11
  import { Avatar as y } from "./components/avatar/index.mjs";
12
12
  import { AvatarGroup as G } from "./components/avatar/AvatarGroup.mjs";
13
13
  import { Badge as V } from "./components/badge/index.mjs";
@@ -22,12 +22,12 @@ import { Card as no, CardGroup as lo, cardVariants as xo } from "./components/ca
22
22
  import { AreaChart as fo } from "./components/charts/area-chart.mjs";
23
23
  import { BarChart as So } from "./components/charts/bar-chart.mjs";
24
24
  import { LineChart as Co } from "./components/charts/line-chart.mjs";
25
- import { PieChart as To } from "./components/charts/pie-chart.mjs";
25
+ import { PieChart as Io } from "./components/charts/pie-chart.mjs";
26
26
  import { Checkbox as Do } from "./components/checkbox/index.mjs";
27
27
  import { Chip as Po } from "./components/chip/index.mjs";
28
28
  import { CodeEditor as Fo } from "./components/code-editor/index.mjs";
29
29
  import { ColorPicker as Mo } from "./components/color-picker/index.mjs";
30
- import { Combobox as Ro } from "./components/combobox/index.mjs";
30
+ import { Combobox as Ao } from "./components/combobox/index.mjs";
31
31
  import { Command as yo, CommandDialog as vo, CommandEmpty as Go, CommandFooter as Lo, CommandGroup as Vo, CommandInput as ko, CommandItem as Eo, CommandList as No, CommandSeparator as Ho, CommandShortcut as Oo } from "./components/command/index.mjs";
32
32
  import { ContextMenu as Qo } from "./components/context-menu/index.mjs";
33
33
  import { DataDisplay as Wo } from "./components/data-display/index.mjs";
@@ -43,11 +43,11 @@ import { DateInputGroup as ur } from "./components/date-input/date-input-group.m
43
43
  import { DateInputSegment as dr } from "./components/date-input/date-input-segment.mjs";
44
44
  import { DateInputField as Sr } from "./components/date-input/date-input-field.mjs";
45
45
  import { useDateInput as Cr } from "./components/date-input/use-date-input.mjs";
46
- import { useTimeInput as Tr } from "./components/date-input/use-time-input.mjs";
46
+ import { useTimeInput as Ir } from "./components/date-input/use-time-input.mjs";
47
47
  import { formatDuration as Dr, parseDuration as gr, useDurationInput as Pr } from "./components/date-input/use-duration-input.mjs";
48
48
  import { DateInput as Fr } from "./components/date-input/date-input.mjs";
49
49
  import { TimeInput as Mr } from "./components/date-input/time-input.mjs";
50
- import { DurationInput as Rr } from "./components/date-input/duration-input.mjs";
50
+ import { DurationInput as Ar } from "./components/date-input/duration-input.mjs";
51
51
  import { DurationInputField as yr } from "./components/date-input/duration-input-field.mjs";
52
52
  import { DurationInputSegment as Gr } from "./components/date-input/duration-input-segment.mjs";
53
53
  import { Calendar as Vr } from "./components/date-picker/calendar.mjs";
@@ -58,10 +58,10 @@ import { Divider as Yr } from "./components/divider/index.mjs";
58
58
  import { DropdownMenu as $r, DropdownMenuCheckboxItem as oe, DropdownMenuContent as re, DropdownMenuGroup as ee, DropdownMenuItem as te, DropdownMenuLabel as ae, DropdownMenuPortal as pe, DropdownMenuRadioGroup as me, DropdownMenuRadioItem as ie, DropdownMenuSeparator as ne, DropdownMenuShortcut as le, DropdownMenuSub as xe, DropdownMenuSubContent as ue, DropdownMenuSubTrigger as fe, DropdownMenuTrigger as de } from "./components/dropdown-menu/index.mjs";
59
59
  import { Dropzone as Se, VirtualDropzone as ce } from "./components/dropzone/index.mjs";
60
60
  import { ElasticScrollArea as be } from "./components/elastic-scroll-area/index.mjs";
61
- import { EmptyState as Ie } from "./components/empty-state/index.mjs";
61
+ import { EmptyState as Te } from "./components/empty-state/index.mjs";
62
62
  import { FAB as ge } from "./components/fab/index.mjs";
63
63
  import { FABMenu as he, useFABMenu as Fe } from "./components/fab-menu/index.mjs";
64
- import { Field as Me, FieldDescription as Ae, FieldError as Re, FieldGroup as we, FieldLabel as ye, useField as ve } from "./components/field/index.mjs";
64
+ import { Field as Me, FieldDescription as Re, FieldError as Ae, FieldGroup as we, FieldLabel as ye, useField as ve } from "./components/field/index.mjs";
65
65
  import { FloatingPanel as Le, useFloatingPanel as Ve } from "./components/floating-panel/index.mjs";
66
66
  import { RecurrenceDialog as Ee } from "./components/full-calendar/recurrence-dialog.mjs";
67
67
  import { RecurrenceSelect as He } from "./components/full-calendar/recurrence-select.mjs";
@@ -73,9 +73,9 @@ import { inputWrapperVariants as $e } from "./components/input/input-styles.mjs"
73
73
  import { Input as rt } from "./components/input/index.mjs";
74
74
  import { InputGroup as tt, InputGroupAddon as at, InputGroupInput as pt, InputGroupText as mt, InputGroupTextarea as it } from "./components/input-group/index.mjs";
75
75
  import { InstallCommand as lt } from "./components/install-command/index.mjs";
76
- import { Item as ut, ItemActions as ft, ItemContent as dt, ItemDescription as st, ItemExpandedContent as St, ItemFooter as ct, ItemGroup as Ct, ItemHeader as bt, ItemMedia as Tt, ItemSeparator as It, ItemTitle as Dt, useItem as gt } from "./components/item/index.mjs";
76
+ import { Item as ut, ItemActions as ft, ItemContent as dt, ItemDescription as st, ItemExpandedContent as St, ItemFooter as ct, ItemGroup as Ct, ItemHeader as bt, ItemMedia as It, ItemSeparator as Tt, ItemTitle as Dt, useItem as gt } from "./components/item/index.mjs";
77
77
  import { Kbd as ht } from "./components/kbd/index.mjs";
78
- import { DismissibleContext as Bt, LayoutRouter as Mt, useLayoutRouter as At } from "./components/layout-router/index.mjs";
78
+ import { DismissibleContext as Bt, LayoutRouter as Mt, useLayoutRouter as Rt } from "./components/layout-router/index.mjs";
79
79
  import { LayoutDirectionToggle as wt } from "./components/layout-toggle/index.mjs";
80
80
  import { Flex as vt, FlexItem as Gt } from "./components/layouts/flex.mjs";
81
81
  import { Grid as Vt, GridItem as kt } from "./components/layouts/grid.mjs";
@@ -94,11 +94,11 @@ import { MultiSelect as ia } from "./components/multi-select/index.mjs";
94
94
  import { NavigationMenu as la, navigationMenuTriggerStyle as xa } from "./components/navigation-menu/index.mjs";
95
95
  import { NavigationRail as fa, useNavigationRail as da } from "./components/navigation-rail/index.mjs";
96
96
  import { NumberInput as Sa } from "./components/number-input/index.mjs";
97
- import { InputOTP as Ca, InputOTPGroup as ba, InputOTPSeparator as Ta, InputOTPSlot as Ia } from "./components/otp-field/index.mjs";
97
+ import { InputOTP as Ca, InputOTPGroup as ba, InputOTPSeparator as Ia, InputOTPSlot as Ta } from "./components/otp-field/index.mjs";
98
98
  import { CircularProgress as ga } from "./components/progress/circular-progress.mjs";
99
99
  import { LinearProgress as ha } from "./components/progress/linear-progress.mjs";
100
100
  import { PullToRefresh as Ba } from "./components/pull-to-refresh/index.mjs";
101
- import { QRCode as Aa, QRCodeCanvas as Ra, QRCodeContent as wa, QRCodeToolbar as ya } from "./components/qr-code/index.mjs";
101
+ import { QRCode as Ra, QRCodeCanvas as Aa, QRCodeContent as wa, QRCodeToolbar as ya } from "./components/qr-code/index.mjs";
102
102
  import { Radio as Ga, RadioGroup as La, RadioGroupItem as Va } from "./components/radio-group/index.mjs";
103
103
  import { Resizable as Ea, useResizableState as Na } from "./components/resizable/index.mjs";
104
104
  import { SearchView as Oa } from "./components/search-view/index.mjs";
@@ -109,8 +109,8 @@ import { ShallowPage as Za, ShallowRoute as $a, ShallowRouter as op, ShallowSwit
109
109
  import { SHAPE_PATHS as pp } from "./components/shape/paths.mjs";
110
110
  import { ShapedBadge as ip, ShapedButton as np, ShapedContainer as lp, ShapedIcon as xp, ShapedIconButton as up, ShapedImage as fp } from "./components/shape/shaped-components.mjs";
111
111
  import { Shape as sp } from "./components/shape/index.mjs";
112
- import { Sheet as cp, SheetClose as Cp, SheetContent as bp, SheetDescription as Tp, SheetFooter as Ip, SheetGrabber as Dp, SheetHeader as gp, SheetTitle as Pp, SheetTrigger as hp } from "./components/sheet/index.mjs";
113
- import { Sidebar as Bp, SidebarProvider as Mp, useSidebar as Ap } from "./components/sidebar/index.mjs";
112
+ import { Sheet as cp, SheetClose as Cp, SheetContent as bp, SheetDescription as Ip, SheetFooter as Tp, SheetGrabber as Dp, SheetHeader as gp, SheetTitle as Pp, SheetTrigger as hp } from "./components/sheet/index.mjs";
113
+ import { Sidebar as Bp, SidebarProvider as Mp, useSidebar as Rp } from "./components/sidebar/index.mjs";
114
114
  import { Skeleton as wp } from "./components/skeleton/index.mjs";
115
115
  import { BarLineSlider as vp } from "./components/slider/bar-line-slider.mjs";
116
116
  import { Slider as Lp } from "./components/slider/index.mjs";
@@ -125,11 +125,11 @@ import { Taskbar as um } from "./components/taskbar/index.mjs";
125
125
  import { Textarea as dm } from "./components/textarea/index.mjs";
126
126
  import { FontPicker as Sm } from "./components/theme-controls/FontPicker.mjs";
127
127
  import { Timeline as Cm } from "./components/timeline/index.mjs";
128
- import { TimePicker as Tm } from "./components/time-picker/index.mjs";
128
+ import { TimePicker as Im } from "./components/time-picker/index.mjs";
129
129
  import { toast as Dm } from "sonner";
130
130
  import { Toaster as Pm } from "./components/toast/index.mjs";
131
131
  import { Toolbar as Fm } from "./components/toolbar/index.mjs";
132
- import { Tooltip as Mm, TooltipProvider as Am, TooltipTrigger as Rm, useTooltip as wm } from "./components/tooltip/index.mjs";
132
+ import { Tooltip as Mm, TooltipProvider as Rm, TooltipTrigger as Am, useTooltip as wm } from "./components/tooltip/index.mjs";
133
133
  import { Typography as vm } from "./components/typography/index.mjs";
134
134
  import { VideoPlayer as Lm } from "./components/video-player/index.mjs";
135
135
  import { useViewTransition as km } from "./components/view-transition/use-view-transition.mjs";
@@ -146,31 +146,32 @@ import { PlaylistPlayer as ti } from "./components/playlist-studio/player.mjs";
146
146
  import { PreloadContext as pi, usePreload as mi } from "./components/playlist-studio/preload-context.mjs";
147
147
  import { PlaylistAudio as ni, PlaylistHtml as li, PlaylistImage as xi, PlaylistVideo as ui, defaultPlaylistRegistry as fi } from "./components/playlist-studio/elements.mjs";
148
148
  import { PlaylistStudio as si } from "./components/playlist-studio/index.mjs";
149
- import { ActionSheetProvider as ci, useActionSheet as Ci } from "./context/ActionSheetProvider.mjs";
150
- import { ChesaiProvider as Ti } from "./context/ChesaiProvider.mjs";
151
- import { DialogProvider as Di, useDialog as gi } from "./context/DialogProvider.mjs";
152
- import { LayoutProvider as hi, useLayout as Fi } from "./context/layout-context.mjs";
153
- import { ThemeProvider as Mi, useTheme as Ai, useThemeTransition as Ri } from "./context/ThemeProvider.mjs";
154
- import { useCalendar as yi } from "./hooks/use-calender.mjs";
155
- import { useTimePicker as Gi } from "./hooks/use-time-picker.mjs";
156
- import { useAppBar as Vi } from "./hooks/useAppBar.mjs";
157
- import { useCapacitorBackButton as Ei } from "./hooks/useCapacitorBackButton.mjs";
158
- import { useFlubber as Hi } from "./hooks/useFlubber.mjs";
159
- import { useMaterialRipple as zi } from "./hooks/useMaterialRipple.mjs";
160
- import { useWindowSizeClass as Ki } from "./hooks/useWindowSizeClass.mjs";
161
- import { PRESET_FONTS as _i, loadGoogleFont as ji } from "./utils/font-loader.mjs";
162
- import { CSS_MAPPING as Ji, applyThemeVariables as Ui, clearThemeVariables as Xi } from "./utils/theme-generator.mjs";
163
- import { chesaiColors as Zi } from "./utils/tailwind-preset.mjs";
149
+ import { ReverseInfiniteScroll as ci } from "./components/reverse-infinite-scroll/index.mjs";
150
+ import { ActionSheetProvider as bi, useActionSheet as Ii } from "./context/ActionSheetProvider.mjs";
151
+ import { ChesaiProvider as Di } from "./context/ChesaiProvider.mjs";
152
+ import { DialogProvider as Pi, useDialog as hi } from "./context/DialogProvider.mjs";
153
+ import { LayoutProvider as Bi, useLayout as Mi } from "./context/layout-context.mjs";
154
+ import { ThemeProvider as Ai, useTheme as wi, useThemeTransition as yi } from "./context/ThemeProvider.mjs";
155
+ import { useCalendar as Gi } from "./hooks/use-calender.mjs";
156
+ import { useTimePicker as Vi } from "./hooks/use-time-picker.mjs";
157
+ import { useAppBar as Ei } from "./hooks/useAppBar.mjs";
158
+ import { useCapacitorBackButton as Hi } from "./hooks/useCapacitorBackButton.mjs";
159
+ import { useFlubber as zi } from "./hooks/useFlubber.mjs";
160
+ import { useMaterialRipple as Ki } from "./hooks/useMaterialRipple.mjs";
161
+ import { useWindowSizeClass as _i } from "./hooks/useWindowSizeClass.mjs";
162
+ import { PRESET_FONTS as qi, loadGoogleFont as Ji } from "./utils/font-loader.mjs";
163
+ import { CSS_MAPPING as Xi, applyThemeVariables as Yi, clearThemeVariables as Zi } from "./utils/theme-generator.mjs";
164
+ import { chesaiColors as on } from "./utils/tailwind-preset.mjs";
164
165
  export {
165
- T as Accordion,
166
- ci as ActionSheetProvider,
166
+ I as Accordion,
167
+ bi as ActionSheetProvider,
167
168
  D as Alert,
168
169
  g as AlertAction,
169
170
  P as AlertContent,
170
171
  h as AlertDescription,
171
172
  F as AlertIcon,
172
173
  B as AlertTitle,
173
- A as AppBar,
174
+ R as AppBar,
174
175
  fo as AreaChart,
175
176
  y as Avatar,
176
177
  G as AvatarGroup,
@@ -189,7 +190,7 @@ export {
189
190
  ro as BreadcrumbSeparator,
190
191
  to as Button,
191
192
  mo as ButtonGroup,
192
- Ji as CSS_MAPPING,
193
+ Xi as CSS_MAPPING,
193
194
  Vr as Calendar,
194
195
  no as Card,
195
196
  lo as CardGroup,
@@ -197,12 +198,12 @@ export {
197
198
  l as CarouselItem,
198
199
  Do as Checkbox,
199
200
  Zt as ChesaiMap,
200
- Ti as ChesaiProvider,
201
+ Di as ChesaiProvider,
201
202
  Po as Chip,
202
203
  ga as CircularProgress,
203
204
  Fo as CodeEditor,
204
205
  Mo as ColorPicker,
205
- Ro as Combobox,
206
+ Ao as Combobox,
206
207
  yo as Command,
207
208
  vo as CommandDialog,
208
209
  Go as CommandEmpty,
@@ -235,7 +236,7 @@ export {
235
236
  _r as DialogDescription,
236
237
  jr as DialogFooter,
237
238
  qr as DialogHeader,
238
- Di as DialogProvider,
239
+ Pi as DialogProvider,
239
240
  Jr as DialogTitle,
240
241
  Ur as DialogTrigger,
241
242
  Bt as DismissibleContext,
@@ -256,16 +257,16 @@ export {
256
257
  fe as DropdownMenuSubTrigger,
257
258
  de as DropdownMenuTrigger,
258
259
  Se as Dropzone,
259
- Rr as DurationInput,
260
+ Ar as DurationInput,
260
261
  yr as DurationInputField,
261
262
  Gr as DurationInputSegment,
262
263
  be as ElasticScrollArea,
263
- Ie as EmptyState,
264
+ Te as EmptyState,
264
265
  ge as FAB,
265
266
  he as FABMenu,
266
267
  Me as Field,
267
- Ae as FieldDescription,
268
- Re as FieldError,
268
+ Re as FieldDescription,
269
+ Ae as FieldError,
269
270
  we as FieldGroup,
270
271
  ye as FieldLabel,
271
272
  vt as Flex,
@@ -288,8 +289,8 @@ export {
288
289
  it as InputGroupTextarea,
289
290
  Ca as InputOTP,
290
291
  ba as InputOTPGroup,
291
- Ta as InputOTPSeparator,
292
- Ia as InputOTPSlot,
292
+ Ia as InputOTPSeparator,
293
+ Ta as InputOTPSlot,
293
294
  lt as InstallCommand,
294
295
  ut as Item,
295
296
  ft as ItemActions,
@@ -299,14 +300,14 @@ export {
299
300
  ct as ItemFooter,
300
301
  Ct as ItemGroup,
301
302
  bt as ItemHeader,
302
- Tt as ItemMedia,
303
- It as ItemSeparator,
303
+ It as ItemMedia,
304
+ Tt as ItemSeparator,
304
305
  Dt as ItemTitle,
305
306
  E as Kanban,
306
307
  N as KanbanBoard,
307
308
  ht as Kbd,
308
309
  wt as LayoutDirectionToggle,
309
- hi as LayoutProvider,
310
+ Bi as LayoutProvider,
310
311
  Mt as LayoutRouter,
311
312
  jt as LexicalEditor,
312
313
  Co as LineChart,
@@ -321,8 +322,8 @@ export {
321
322
  la as NavigationMenu,
322
323
  fa as NavigationRail,
323
324
  Sa as NumberInput,
324
- _i as PRESET_FONTS,
325
- To as PieChart,
325
+ qi as PRESET_FONTS,
326
+ Io as PieChart,
326
327
  ni as PlaylistAudio,
327
328
  li as PlaylistHtml,
328
329
  xi as PlaylistImage,
@@ -340,8 +341,8 @@ export {
340
341
  Ke as PrintHeader,
341
342
  We as PrintPagesLayout,
342
343
  Ba as PullToRefresh,
343
- Aa as QRCode,
344
- Ra as QRCodeCanvas,
344
+ Ra as QRCode,
345
+ Aa as QRCodeCanvas,
345
346
  wa as QRCodeContent,
346
347
  ya as QRCodeToolbar,
347
348
  Ga as Radio,
@@ -350,6 +351,7 @@ export {
350
351
  Ee as RecurrenceDialog,
351
352
  He as RecurrenceSelect,
352
353
  Ea as Resizable,
354
+ ci as ReverseInfiniteScroll,
353
355
  pp as SHAPE_PATHS,
354
356
  Um as ScriptAndStyleInjector,
355
357
  Oa as SearchView,
@@ -373,8 +375,8 @@ export {
373
375
  cp as Sheet,
374
376
  Cp as SheetClose,
375
377
  bp as SheetContent,
376
- Tp as SheetDescription,
377
- Ip as SheetFooter,
378
+ Ip as SheetDescription,
379
+ Tp as SheetFooter,
378
380
  Dp as SheetGrabber,
379
381
  gp as SheetHeader,
380
382
  Pp as SheetTitle,
@@ -397,15 +399,15 @@ export {
397
399
  nm as Tabs,
398
400
  um as Taskbar,
399
401
  dm as Textarea,
400
- Mi as ThemeProvider,
402
+ Ai as ThemeProvider,
401
403
  Mr as TimeInput,
402
- Tm as TimePicker,
404
+ Im as TimePicker,
403
405
  Cm as Timeline,
404
406
  Pm as Toaster,
405
407
  Fm as Toolbar,
406
408
  Mm as Tooltip,
407
- Am as TooltipProvider,
408
- Rm as TooltipTrigger,
409
+ Rm as TooltipProvider,
410
+ Am as TooltipTrigger,
409
411
  Om as TransitionLink,
410
412
  vm as Typography,
411
413
  Lm as VideoPlayer,
@@ -416,11 +418,11 @@ export {
416
418
  Wt as VirtualMasonry,
417
419
  $m as WebsiteStudio,
418
420
  or as advancedFilterFn,
419
- Ui as applyThemeVariables,
421
+ Yi as applyThemeVariables,
420
422
  ao as buttonVariants,
421
423
  xo as cardVariants,
422
- Zi as chesaiColors,
423
- Xi as clearThemeVariables,
424
+ on as chesaiColors,
425
+ Zi as clearThemeVariables,
424
426
  zp as createStackNavigator,
425
427
  ir as dateInputSlots,
426
428
  nr as dateInputStyles,
@@ -430,7 +432,7 @@ export {
430
432
  lr as getDateInputSlotClassNames,
431
433
  qe as iconButtonVariants,
432
434
  $e as inputWrapperVariants,
433
- ji as loadGoogleFont,
435
+ Ji as loadGoogleFont,
434
436
  xa as navigationMenuTriggerStyle,
435
437
  rr as numericFilterFn,
436
438
  gr as parseDuration,
@@ -440,25 +442,25 @@ export {
440
442
  am as thVariants,
441
443
  Dm as toast,
442
444
  pm as trVariants,
443
- Ci as useActionSheet,
444
- Vi as useAppBar,
445
- R as useAppBarContext,
446
- yi as useCalendar,
447
- Ei as useCapacitorBackButton,
445
+ Ii as useActionSheet,
446
+ Ei as useAppBar,
447
+ A as useAppBarContext,
448
+ Gi as useCalendar,
449
+ Hi as useCapacitorBackButton,
448
450
  Cr as useDateInput,
449
- gi as useDialog,
451
+ hi as useDialog,
450
452
  Pr as useDurationInput,
451
453
  Qp as useExternalStackState,
452
454
  Fe as useFABMenu,
453
455
  ve as useField,
454
456
  Ve as useFloatingPanel,
455
- Hi as useFlubber,
457
+ zi as useFlubber,
456
458
  Nm as useGlobalViewTransitions,
457
459
  gt as useItem,
458
- Fi as useLayout,
459
- At as useLayoutRouter,
460
+ Mi as useLayout,
461
+ Rt as useLayoutRouter,
460
462
  ra as useMap,
461
- zi as useMaterialRipple,
463
+ Ki as useMaterialRipple,
462
464
  Kp as useNavigation,
463
465
  da as useNavigationRail,
464
466
  ri as usePlayhead,
@@ -468,18 +470,18 @@ export {
468
470
  ep as useRouter,
469
471
  tp as useRouterOptions,
470
472
  Ja as useSelectContext,
471
- Ap as useSidebar,
473
+ Rp as useSidebar,
472
474
  W as useSortableItem,
473
475
  Ym as useStudioStore,
474
476
  _m as useSwipeable,
475
477
  mm as useTableContext,
476
478
  lm as useTabs,
477
479
  Np as useTanStackRouterAdapter,
478
- Ai as useTheme,
479
- Ri as useThemeTransition,
480
- Tr as useTimeInput,
481
- Gi as useTimePicker,
480
+ wi as useTheme,
481
+ yi as useThemeTransition,
482
+ Ir as useTimeInput,
483
+ Vi as useTimePicker,
482
484
  wm as useTooltip,
483
485
  km as useViewTransition,
484
- Ki as useWindowSizeClass
486
+ _i as useWindowSizeClass
485
487
  };
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "chesai-ui",
3
3
  "private": false,
4
- "version": "0.16.15",
4
+ "version": "0.16.17",
5
+ "packageManager": "pnpm@10.12.1",
5
6
  "repository": {
6
7
  "type": "git",
7
8
  "url": "https://github.com/ayhamdev/chesai-ui"
@@ -24,6 +25,19 @@
24
25
  "engines": {
25
26
  "node": ">=22"
26
27
  },
28
+ "scripts": {
29
+ "dev": "bunx storybook dev -p 8000",
30
+ "build": "storybook build",
31
+ "build:lib": "tsc && vite build",
32
+ "build:docs": "npx ts-node ./scripts/generate-llm.ts",
33
+ "lint": "npx @biomejs/biome lint --write ./src",
34
+ "format": "npx @biomejs/biome check --write --organize-imports-enabled=true ./src",
35
+ "test": "vitest",
36
+ "test:cov": "vitest run --coverage",
37
+ "gen:context": "bun run ./scripts/context.ts",
38
+ "git:diff-merge": "git diff --unified=2000 $(git merge-base main HEAD)...HEAD",
39
+ "git:diff": "git diff --unified=2000 > git-changes.txt"
40
+ },
27
41
  "dependencies": {
28
42
  "@capacitor/app": "^8.0.0",
29
43
  "@capacitor/core": "^8.0.1",
@@ -155,18 +169,5 @@
155
169
  "biome lint --write --no-errors-on-unmatched --files-ignore-unknown=true",
156
170
  "biome format --write --no-errors-on-unmatched"
157
171
  ]
158
- },
159
- "scripts": {
160
- "dev": "bunx storybook dev -p 8000",
161
- "build": "storybook build",
162
- "build:lib": "tsc && vite build",
163
- "build:docs": "npx ts-node ./scripts/generate-llm.ts",
164
- "lint": "npx @biomejs/biome lint --write ./src",
165
- "format": "npx @biomejs/biome check --write --organize-imports-enabled=true ./src",
166
- "test": "vitest",
167
- "test:cov": "vitest run --coverage",
168
- "gen:context": "bun run ./scripts/context.ts",
169
- "git:diff-merge": "git diff --unified=2000 $(git merge-base main HEAD)...HEAD",
170
- "git:diff": "git diff --unified=2000 > git-changes.txt"
171
172
  }
172
- }
173
+ }