@jalvin/ui 2.0.52 → 2.0.53

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.
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { Modifier, applyModifier } from "./modifier.js";
2
2
  export type { CSSProperties } from "./modifier.js";
3
- export { Column, Row, Box } from "./layout.js";
4
- export type { ColumnProps, RowProps, BoxProps, Alignment, Arrangement } from "./layout.js";
3
+ export { Column, LazyColumn, Row, Box } from "./layout.js";
4
+ export type { ColumnProps, LazyColumnProps, RowProps, BoxProps, Alignment, Arrangement } from "./layout.js";
5
5
  export { Text } from "./text.js";
6
6
  export type { TextProps } from "./text.js";
7
7
  export { Button, IconButton } from "./button.js";
@@ -20,6 +20,8 @@ export { Spacer, Divider } from "./spacer.js";
20
20
  export type { SpacerProps, DividerProps } from "./spacer.js";
21
21
  export { Card, Scaffold, TopBar } from "./surface.js";
22
22
  export type { CardProps, ScaffoldProps, TopBarProps } from "./surface.js";
23
+ export { Table, LazyTable } from "./table.js";
24
+ export type { TableColumn, TableProps } from "./table.js";
23
25
  export { jalvinCreateElement } from "@jalvin/runtime";
24
26
  export { buildAnnotatedString, renderAnnotatedString, TextDecoration } from "./annotated-string.js";
25
27
  export type { AnnotatedString, SpanStyle, LinkAnnotation } from "./annotated-string.js";
@@ -29,4 +31,6 @@ export { TextStyle, textStyleToCSS } from "./typography.js";
29
31
  export type { TextStyleDef } from "./typography.js";
30
32
  export { Color } from "./colors.js";
31
33
  export type { ColorValue } from "./colors.js";
34
+ export { List, JalvinList, list } from "./list.js";
35
+ export type { ListProps, ListController, ListDataSource, DataSupplier, DataProviderObject } from "./list.js";
32
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACxD,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG3F,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG9D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG7D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACpG,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGxF,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACnI,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAG7H,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5D,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACxD,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC3D,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG5G,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG9D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG7D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG1E,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACpG,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGxF,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACnI,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAG7H,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5D,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACnD,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export { Modifier, applyModifier } from "./modifier.js";
2
2
  // Layout
3
- export { Column, Row, Box } from "./layout.js";
3
+ export { Column, LazyColumn, Row, Box } from "./layout.js";
4
4
  // Basic Elements
5
5
  export { Text } from "./text.js";
6
6
  export { Button, IconButton } from "./button.js";
@@ -15,6 +15,8 @@ export { Checkbox } from "./checkbox.js";
15
15
  export { Spacer, Divider } from "./spacer.js";
16
16
  // Surface / Scaffold
17
17
  export { Card, Scaffold, TopBar } from "./surface.js";
18
+ // Table / Virtualized Table
19
+ export { Table, LazyTable } from "./table.js";
18
20
  // DOM - re-exported from runtime via compiler usually, but library users might want it
19
21
  export { jalvinCreateElement } from "@jalvin/runtime";
20
22
  // Annotated String
@@ -25,4 +27,6 @@ export { MutableInteractionSource, useMutableInteractionSource, useIsHovered, us
25
27
  export { TextStyle, textStyleToCSS } from "./typography.js";
26
28
  // Colors
27
29
  export { Color } from "./colors.js";
30
+ // Virtualized List & Scroll Engine
31
+ export { List, JalvinList, list } from "./list.js";
28
32
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGxD,SAAS;AACT,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAG/C,iBAAiB;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG/C,UAAU;AACV,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,SAAS;AACT,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,SAAS;AACT,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG9C,qBAAqB;AACrB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtD,uFAAuF;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,mBAAmB;AACnB,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGpG,eAAe;AACf,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGnI,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG5D,SAAS;AACT,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGxD,SAAS;AACT,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAG3D,iBAAiB;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG/C,UAAU;AACV,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,SAAS;AACT,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,SAAS;AACT,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG9C,qBAAqB;AACrB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtD,4BAA4B;AAC5B,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG9C,uFAAuF;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,mBAAmB;AACnB,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGpG,eAAe;AACf,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGnI,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG5D,SAAS;AACT,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,mCAAmC;AACnC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
package/dist/layout.d.ts CHANGED
@@ -1,29 +1,49 @@
1
1
  import { Modifier } from "./modifier.js";
2
2
  import type { VNode } from "@jalvin/runtime";
3
+ import { ListProps, ListDataSource } from "./list.js";
3
4
  export type Alignment = "start" | "center" | "end" | "stretch";
4
5
  export type Arrangement = "start" | "center" | "end" | "spaceBetween" | "spaceAround" | "spaceEvenly";
5
- export interface ColumnProps {
6
+ export interface ColumnProps<T = any> {
6
7
  modifier?: Modifier;
7
8
  spacing?: number;
8
9
  verticalArrangement?: Arrangement;
9
10
  horizontalAlignment?: Alignment;
11
+ scrollable?: boolean;
12
+ data?: ListDataSource<T>;
13
+ totalCount?: number;
14
+ itemHeight?: number;
15
+ bufferEntries?: number;
16
+ pageSize?: number;
17
+ maxSmoothDistance?: number;
18
+ itemTemplate?: (item: T, index: number, state?: {
19
+ isLoading?: boolean;
20
+ isRetained?: boolean;
21
+ }) => VNode;
22
+ skeletonTemplate?: (index: number) => VNode;
23
+ onScrollStop?: () => void;
10
24
  }
11
- /** Vertical flex container. */
12
- export declare function Column({ modifier, spacing, verticalArrangement, horizontalAlignment }: ColumnProps, children?: VNode[]): VNode;
25
+ /** Vertical flex container & virtualized scrollable list engine. */
26
+ export declare function Column<T = any>(props: ColumnProps<T>, children?: VNode[]): VNode;
27
+ export interface LazyColumnProps<T = any> extends ListProps<T> {
28
+ }
29
+ /** Lazy virtualized vertical column primitive (Compose-style). */
30
+ export declare function LazyColumn<T = any>(props: LazyColumnProps<T>): VNode;
13
31
  export interface RowProps {
14
32
  modifier?: Modifier;
15
33
  spacing?: number;
16
34
  horizontalArrangement?: Arrangement;
17
35
  verticalAlignment?: Alignment;
18
36
  wrap?: boolean;
37
+ scrollable?: boolean;
19
38
  }
20
39
  /** Horizontal flex container. */
21
- export declare function Row({ modifier, spacing, horizontalArrangement, verticalAlignment, wrap }: RowProps, children?: VNode[]): VNode;
40
+ export declare function Row({ modifier, spacing, horizontalArrangement, verticalAlignment, wrap, scrollable }: RowProps, children?: VNode[]): VNode;
22
41
  export type ContentAlignment = "topStart" | "topCenter" | "topEnd" | "centerStart" | "center" | "centerEnd" | "bottomStart" | "bottomCenter" | "bottomEnd";
23
42
  export interface BoxProps {
24
43
  modifier?: Modifier;
25
44
  contentAlignment?: ContentAlignment;
45
+ scrollable?: boolean;
26
46
  }
27
47
  /** Positioned/stacking container. */
28
- export declare function Box({ modifier, contentAlignment }: BoxProps, children?: VNode[]): VNode;
48
+ export declare function Box({ modifier, contentAlignment, scrollable }: BoxProps, children?: VNode[]): VNode;
29
49
  //# sourceMappingURL=layout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,cAAc,GAAG,aAAa,GAAG,aAAa,CAAC;AAsBtG,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,WAAW,CAAC;IAClC,mBAAmB,CAAC,EAAE,SAAS,CAAC;CACjC;AAED,+BAA+B;AAC/B,wBAAgB,MAAM,CACpB,EAAE,QAAQ,EAAE,OAAO,EAAE,mBAA6B,EAAE,mBAA6B,EAAE,EAAE,WAAW,EAChG,QAAQ,CAAC,EAAE,KAAK,EAAE,GACjB,KAAK,CAaP;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB,CAAC,EAAE,WAAW,CAAC;IACpC,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,iCAAiC;AACjC,wBAAgB,GAAG,CACjB,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAA+B,EAAE,iBAA4B,EAAE,IAAY,EAAE,EAAE,QAAQ,EAC5G,QAAQ,CAAC,EAAE,KAAK,EAAE,GACjB,KAAK,CAcP;AAED,MAAM,MAAM,gBAAgB,GACxB,UAAU,GAAG,WAAW,GAAG,QAAQ,GACnC,aAAa,GAAG,QAAQ,GAAG,WAAW,GACtC,aAAa,GAAG,cAAc,GAAG,WAAW,CAAC;AAEjD,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAQD,qCAAqC;AACrC,wBAAgB,GAAG,CACjB,EAAE,QAAQ,EAAE,gBAA6B,EAAE,EAAE,QAAQ,EACrD,QAAQ,CAAC,EAAE,KAAK,EAAE,GACjB,KAAK,CAcP"}
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
package/dist/layout.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { jalvinCreateElement } from "@jalvin/runtime";
2
+ import { List } from "./list.js";
2
3
  function arrangementToJustify(a) {
3
4
  switch (a) {
4
5
  case "start": return "flex-start";
@@ -17,8 +18,24 @@ function alignmentToAlign(a) {
17
18
  case "stretch": return "stretch";
18
19
  }
19
20
  }
20
- /** Vertical flex container. */
21
- export function Column({ modifier, spacing, verticalArrangement = "start", horizontalAlignment = "start" }, children) {
21
+ /** Vertical flex container & virtualized scrollable list engine. */
22
+ export function Column(props, children) {
23
+ const { modifier, spacing, verticalArrangement = "start", horizontalAlignment = "start", scrollable = false, data, itemTemplate, } = props;
24
+ // If a dataset & itemTemplate are supplied, delegate to the Virtualized Scroll Engine!
25
+ if (data !== undefined && itemTemplate !== undefined) {
26
+ return List({
27
+ data,
28
+ totalCount: props.totalCount,
29
+ itemHeight: props.itemHeight,
30
+ bufferEntries: props.bufferEntries,
31
+ pageSize: props.pageSize,
32
+ maxSmoothDistance: props.maxSmoothDistance,
33
+ modifier: props.modifier,
34
+ itemTemplate,
35
+ skeletonTemplate: props.skeletonTemplate,
36
+ onScrollStop: props.onScrollStop,
37
+ });
38
+ }
22
39
  const modProps = modifier?.toProps() ?? {};
23
40
  return jalvinCreateElement("div", {
24
41
  ...modProps,
@@ -27,13 +44,18 @@ export function Column({ modifier, spacing, verticalArrangement = "start", horiz
27
44
  flexDirection: "column",
28
45
  justifyContent: arrangementToJustify(verticalArrangement),
29
46
  alignItems: alignmentToAlign(horizontalAlignment),
47
+ ...(scrollable ? { overflowY: "auto" } : {}),
30
48
  ...(spacing !== undefined ? { gap: `${spacing}px` } : {}),
31
49
  ...modProps.style,
32
50
  },
33
51
  }, children ?? []);
34
52
  }
53
+ /** Lazy virtualized vertical column primitive (Compose-style). */
54
+ export function LazyColumn(props) {
55
+ return List(props);
56
+ }
35
57
  /** Horizontal flex container. */
36
- export function Row({ modifier, spacing, horizontalArrangement = "start", verticalAlignment = "center", wrap = false }, children) {
58
+ export function Row({ modifier, spacing, horizontalArrangement = "start", verticalAlignment = "center", wrap = false, scrollable = false }, children) {
37
59
  const modProps = modifier?.toProps() ?? {};
38
60
  return jalvinCreateElement("div", {
39
61
  ...modProps,
@@ -43,6 +65,7 @@ export function Row({ modifier, spacing, horizontalArrangement = "start", vertic
43
65
  justifyContent: arrangementToJustify(horizontalArrangement),
44
66
  alignItems: alignmentToAlign(verticalAlignment),
45
67
  flexWrap: wrap ? "wrap" : "nowrap",
68
+ ...(scrollable ? { overflowX: "auto" } : {}),
46
69
  ...(spacing !== undefined ? { gap: `${spacing}px` } : {}),
47
70
  ...modProps.style,
48
71
  },
@@ -54,7 +77,7 @@ function contentAlignmentToStyle(a) {
54
77
  return { alignItems: col, justifyContent: row };
55
78
  }
56
79
  /** Positioned/stacking container. */
57
- export function Box({ modifier, contentAlignment = "topStart" }, children) {
80
+ export function Box({ modifier, contentAlignment = "topStart", scrollable = false }, children) {
58
81
  const modProps = modifier?.toProps() ?? {};
59
82
  const { alignItems, justifyContent } = contentAlignmentToStyle(contentAlignment);
60
83
  return jalvinCreateElement("div", {
@@ -65,6 +88,7 @@ export function Box({ modifier, contentAlignment = "topStart" }, children) {
65
88
  flexDirection: "column",
66
89
  alignItems,
67
90
  justifyContent,
91
+ ...(scrollable ? { overflowY: "auto" } : {}),
68
92
  ...modProps.style,
69
93
  },
70
94
  }, children ?? []);
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
package/dist/list.d.ts ADDED
@@ -0,0 +1,39 @@
1
+ import type { VNode } from "@jalvin/runtime";
2
+ import type { StateFlow } from "@jalvin/runtime";
3
+ import { Modifier } from "./modifier.js";
4
+ export type DataSupplier<T> = (startIndex: number, count: number, signal?: AbortSignal) => Promise<T[]>;
5
+ export interface DataProviderObject<T> {
6
+ totalCount: number;
7
+ getPage: DataSupplier<T>;
8
+ }
9
+ export type ListDataSource<T> = T[] | DataSupplier<T> | DataProviderObject<T> | StateFlow<T[]>;
10
+ export interface ListController {
11
+ scrollToIndex(index: number, options?: {
12
+ behavior?: "auto" | "instant" | "smooth";
13
+ }): void;
14
+ getScrollTop(): number;
15
+ setScrollTop(scrollTop: number): void;
16
+ }
17
+ export interface ListProps<T> {
18
+ data: ListDataSource<T>;
19
+ totalCount?: number;
20
+ itemHeight?: number;
21
+ bufferEntries?: number;
22
+ pageSize?: number;
23
+ maxSmoothDistance?: number;
24
+ modifier?: Modifier;
25
+ className?: string;
26
+ style?: Record<string, any>;
27
+ keyExtractor?: (item: T, index: number) => string | number;
28
+ itemTemplate: (item: T, index: number, state?: {
29
+ isLoading?: boolean;
30
+ isRetained?: boolean;
31
+ }) => VNode;
32
+ skeletonTemplate?: (index: number) => VNode;
33
+ ref?: (controller: ListController) => void;
34
+ onScrollStop?: () => void;
35
+ }
36
+ export declare function List<T>(props: ListProps<T>): VNode;
37
+ export declare const JalvinList: typeof List;
38
+ export declare const list: typeof List;
39
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../src/list.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAQ7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAC5B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AAElB,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;CAC1B;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,IACxB,CAAC,EAAE,GACH,YAAY,CAAC,CAAC,CAAC,GACf,kBAAkB,CAAC,CAAC,CAAC,GACrB,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;AAEnB,MAAM,WAAW,cAAc;IAC7B,aAAa,CACX,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;KAAE,GACrD,IAAI,CAAC;IACR,YAAY,IAAI,MAAM,CAAC;IACvB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAAC;IAC3D,YAAY,EAAE,CACZ,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAClD,KAAK,CAAC;IACX,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC;IAC5C,GAAG,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,IAAI,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAgDD,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CA+RlD;AAGD,eAAO,MAAM,UAAU,aAAO,CAAC;AAC/B,eAAO,MAAM,IAAI,aAAO,CAAC"}
package/dist/list.js ADDED
@@ -0,0 +1,325 @@
1
+ import { jalvinCreateElement } from "@jalvin/runtime";
2
+ import { mutableStateOf, remember, LaunchedEffect, collectAsState, } from "@jalvin/runtime";
3
+ const DEFAULT_PAGE_SIZE = 100;
4
+ const DEFAULT_BUFFER_ENTRIES = 10;
5
+ const DEFAULT_MAX_SMOOTH_DISTANCE = 25;
6
+ const DEFAULT_ITEM_HEIGHT = 40;
7
+ function isStateFlow(obj) {
8
+ return obj && typeof obj.collect === "function" && "value" in obj;
9
+ }
10
+ function isDataProviderObject(obj) {
11
+ return obj && typeof obj === "object" && typeof obj.getPage === "function" && typeof obj.totalCount === "number";
12
+ }
13
+ function defaultSkeleton(index) {
14
+ return jalvinCreateElement("div", {
15
+ className: "jalvin-list-skeleton",
16
+ style: {
17
+ display: "flex",
18
+ alignItems: "center",
19
+ padding: "8px 16px",
20
+ height: "100%",
21
+ boxSizing: "border-box",
22
+ gap: "12px",
23
+ },
24
+ }, [
25
+ jalvinCreateElement("div", {
26
+ style: {
27
+ width: "28px",
28
+ height: "28px",
29
+ borderRadius: "50%",
30
+ backgroundColor: "#e2e8f0",
31
+ opacity: "0.6",
32
+ },
33
+ }),
34
+ jalvinCreateElement("div", {
35
+ style: {
36
+ flex: "1",
37
+ height: "14px",
38
+ borderRadius: "4px",
39
+ backgroundColor: "#e2e8f0",
40
+ opacity: "0.6",
41
+ },
42
+ }),
43
+ ]);
44
+ }
45
+ export function List(props) {
46
+ const pageSize = props.pageSize ?? DEFAULT_PAGE_SIZE;
47
+ const bufferEntries = props.bufferEntries ?? DEFAULT_BUFFER_ENTRIES;
48
+ const maxSmoothDistance = props.maxSmoothDistance ?? DEFAULT_MAX_SMOOTH_DISTANCE;
49
+ // Reactively collect flow if data is a StateFlow
50
+ let resolvedData = props.data;
51
+ if (isStateFlow(props.data)) {
52
+ resolvedData = collectAsState(props.data);
53
+ }
54
+ // State holders for virtualization & measurements
55
+ const scrollTopState = remember(() => mutableStateOf(0));
56
+ const containerHeightState = remember(() => mutableStateOf(600));
57
+ const measuredItemHeightState = remember(() => mutableStateOf(props.itemHeight ?? DEFAULT_ITEM_HEIGHT));
58
+ const cacheVersionState = remember(() => mutableStateOf(0));
59
+ const isScrollingState = remember(() => mutableStateOf(false));
60
+ // Subscribe to reactive state holders during render pass
61
+ const _scrollTop = scrollTopState.value;
62
+ const _containerHeight = containerHeightState.value;
63
+ const _measuredItemHeight = measuredItemHeightState.value;
64
+ const _cacheVersion = cacheVersionState.value;
65
+ const _isScrolling = isScrollingState.value;
66
+ // Persistent references across renders
67
+ const sparseCache = remember(() => new Map(), [resolvedData]);
68
+ const retainedCache = remember(() => new Map());
69
+ const pendingPages = remember(() => new Set());
70
+ const domContainerRef = remember(() => ({ current: null }));
71
+ // Calculate effective item height & total count
72
+ const effectiveItemHeight = props.itemHeight ?? _measuredItemHeight;
73
+ let totalCount = 0;
74
+ let staticArray = null;
75
+ let supplierFn = null;
76
+ if (Array.isArray(resolvedData)) {
77
+ staticArray = resolvedData;
78
+ totalCount = props.totalCount ?? resolvedData.length;
79
+ }
80
+ else if (isDataProviderObject(resolvedData)) {
81
+ supplierFn = resolvedData.getPage;
82
+ totalCount = props.totalCount ?? resolvedData.totalCount;
83
+ }
84
+ else if (typeof resolvedData === "function") {
85
+ supplierFn = resolvedData;
86
+ totalCount = props.totalCount ?? 500000;
87
+ }
88
+ else if (props.totalCount !== undefined) {
89
+ totalCount = props.totalCount;
90
+ }
91
+ // Calculate viewport boundaries
92
+ const visibleStartIndex = Math.floor(_scrollTop / effectiveItemHeight);
93
+ const visibleEndIndex = Math.ceil((_scrollTop + _containerHeight) / effectiveItemHeight);
94
+ const startIndex = Math.max(0, visibleStartIndex - bufferEntries);
95
+ const endIndex = Math.min(totalCount, visibleEndIndex + bufferEntries);
96
+ // Async Page Chunking & Auto-Cancellation Effect
97
+ LaunchedEffect([resolvedData, startIndex, endIndex, pageSize, totalCount], async (signal) => {
98
+ if (!supplierFn || staticArray)
99
+ return;
100
+ const startPage = Math.floor(startIndex / pageSize);
101
+ const endPage = Math.floor(Math.max(0, endIndex - 1) / pageSize);
102
+ for (let p = startPage; p <= endPage; p++) {
103
+ if (signal.aborted)
104
+ return;
105
+ if (sparseCache.has(p) || pendingPages.has(p))
106
+ continue;
107
+ pendingPages.add(p);
108
+ const pageStartIndex = p * pageSize;
109
+ try {
110
+ const fetchedItems = await supplierFn(pageStartIndex, pageSize, signal);
111
+ if (!signal.aborted) {
112
+ sparseCache.set(p, fetchedItems);
113
+ retainedCache.set(p, fetchedItems);
114
+ pendingPages.delete(p);
115
+ cacheVersionState.value = cacheVersionState.value + 1;
116
+ }
117
+ }
118
+ catch (err) {
119
+ pendingPages.delete(p);
120
+ if (err?.name !== "AbortError") {
121
+ console.error(`[Jalvin.List] Page ${p} fetch failed:`, err);
122
+ }
123
+ }
124
+ }
125
+ });
126
+ // Create ListController instance
127
+ const controller = remember(() => ({
128
+ scrollToIndex(targetIndex, options) {
129
+ const el = domContainerRef.current;
130
+ if (!el)
131
+ return;
132
+ const clampedIndex = Math.max(0, Math.min(totalCount - 1, targetIndex));
133
+ const targetTop = clampedIndex * effectiveItemHeight;
134
+ const currentTop = el.scrollTop;
135
+ const currentIndex = Math.round(currentTop / effectiveItemHeight);
136
+ const delta = Math.abs(clampedIndex - currentIndex);
137
+ const behavior = options?.behavior ?? "auto";
138
+ if (behavior === "instant" || delta === 0) {
139
+ el.scrollTop = targetTop;
140
+ }
141
+ else if (delta > maxSmoothDistance) {
142
+ // HYBRID FAST-TRAVEL (Instant Warp + 100ms Smooth Landing)
143
+ const warpIndex = clampedIndex > currentIndex
144
+ ? Math.max(0, clampedIndex - maxSmoothDistance)
145
+ : Math.min(totalCount - 1, clampedIndex + maxSmoothDistance);
146
+ const warpTop = warpIndex * effectiveItemHeight;
147
+ el.scrollTop = warpTop;
148
+ if (typeof el.scrollTo === "function") {
149
+ el.scrollTo({ top: targetTop, behavior: "smooth" });
150
+ }
151
+ else {
152
+ el.scrollTop = targetTop;
153
+ }
154
+ }
155
+ else {
156
+ if (typeof el.scrollTo === "function") {
157
+ el.scrollTo({ top: targetTop, behavior: "smooth" });
158
+ }
159
+ else {
160
+ el.scrollTop = targetTop;
161
+ }
162
+ }
163
+ },
164
+ getScrollTop() {
165
+ return domContainerRef.current ? domContainerRef.current.scrollTop : 0;
166
+ },
167
+ setScrollTop(scrollTop) {
168
+ if (domContainerRef.current)
169
+ domContainerRef.current.scrollTop = scrollTop;
170
+ },
171
+ }), [totalCount, effectiveItemHeight, maxSmoothDistance]);
172
+ // Setup DOM Event Listeners
173
+ const setupContainerListeners = (el) => {
174
+ let scrollRaf = null;
175
+ let scrollStopTimer = null;
176
+ const onScroll = () => {
177
+ if (!scrollRaf) {
178
+ scrollRaf = requestAnimationFrame(() => {
179
+ scrollRaf = null;
180
+ if (el) {
181
+ scrollTopState.value = el.scrollTop;
182
+ isScrollingState.value = true;
183
+ }
184
+ });
185
+ }
186
+ if (scrollStopTimer)
187
+ clearTimeout(scrollStopTimer);
188
+ scrollStopTimer = setTimeout(() => {
189
+ isScrollingState.value = false;
190
+ if (props.onScrollStop)
191
+ props.onScrollStop();
192
+ }, 100);
193
+ };
194
+ el.addEventListener("scroll", onScroll, { passive: true });
195
+ let resizeObserver = null;
196
+ if (typeof ResizeObserver !== "undefined") {
197
+ resizeObserver = new ResizeObserver((entries) => {
198
+ requestAnimationFrame(() => {
199
+ for (const entry of entries) {
200
+ const contentHeight = entry.contentRect.height;
201
+ if (contentHeight > 0 && contentHeight !== containerHeightState.value) {
202
+ containerHeightState.value = contentHeight;
203
+ }
204
+ }
205
+ });
206
+ });
207
+ resizeObserver.observe(el);
208
+ }
209
+ };
210
+ // Render Virtualized Items
211
+ const childrenVNodes = [];
212
+ for (let index = startIndex; index < endIndex; index++) {
213
+ let item = undefined;
214
+ let isLoading = false;
215
+ let isRetained = false;
216
+ if (staticArray) {
217
+ item = staticArray[index];
218
+ }
219
+ else if (supplierFn) {
220
+ const pageIndex = Math.floor(index / pageSize);
221
+ const itemOffset = index % pageSize;
222
+ const cachedPage = sparseCache.get(pageIndex);
223
+ if (cachedPage && itemOffset < cachedPage.length) {
224
+ item = cachedPage[itemOffset];
225
+ }
226
+ else {
227
+ const retainedPage = retainedCache.get(pageIndex);
228
+ if (retainedPage && itemOffset < retainedPage.length) {
229
+ item = retainedPage[itemOffset];
230
+ isLoading = true;
231
+ isRetained = true;
232
+ }
233
+ else {
234
+ isLoading = true;
235
+ }
236
+ }
237
+ }
238
+ else {
239
+ // Total count provided without supplier — default item to index
240
+ item = index;
241
+ }
242
+ let itemVNode;
243
+ if (item !== undefined) {
244
+ itemVNode = props.itemTemplate(item, index, { isLoading, isRetained });
245
+ }
246
+ else if (props.skeletonTemplate) {
247
+ itemVNode = props.skeletonTemplate(index);
248
+ }
249
+ else {
250
+ itemVNode = defaultSkeleton(index);
251
+ }
252
+ const animationIndex = index - startIndex;
253
+ const translateY = index * effectiveItemHeight;
254
+ const rowKey = props.keyExtractor && item !== undefined
255
+ ? props.keyExtractor(item, index)
256
+ : `row-${index}`;
257
+ childrenVNodes.push(jalvinCreateElement("div", {
258
+ key: String(rowKey),
259
+ className: "jalvin-list-item",
260
+ style: {
261
+ position: "absolute",
262
+ top: "0px",
263
+ left: "0px",
264
+ right: "0px",
265
+ height: `${effectiveItemHeight}px`,
266
+ transform: `translateY(${translateY}px) translateZ(0)`,
267
+ willChange: "transform",
268
+ transition: "opacity 200ms ease-out, transform 200ms ease-out",
269
+ transitionDelay: `${animationIndex * 10}ms`,
270
+ boxSizing: "border-box",
271
+ },
272
+ ref: index === startIndex && !props.itemHeight ? (el) => {
273
+ if (el && el.offsetHeight && el.offsetHeight > 0 && el.offsetHeight !== measuredItemHeightState.value) {
274
+ requestAnimationFrame(() => {
275
+ if (el && el.offsetHeight && el.offsetHeight > 0 && el.offsetHeight !== measuredItemHeightState.value) {
276
+ measuredItemHeightState.value = el.offsetHeight;
277
+ }
278
+ });
279
+ }
280
+ } : undefined,
281
+ }, itemVNode));
282
+ }
283
+ // Outer Scroll Container + Spacer
284
+ const modProps = props.modifier?.toProps() ?? {};
285
+ const totalCanvasHeight = totalCount * effectiveItemHeight;
286
+ const innerSpacer = jalvinCreateElement("div", {
287
+ className: "jalvin-list-spacer",
288
+ style: {
289
+ height: `${totalCanvasHeight}px`,
290
+ width: "100%",
291
+ position: "relative",
292
+ pointerEvents: "none",
293
+ },
294
+ });
295
+ return jalvinCreateElement("div", {
296
+ ...modProps,
297
+ className: props.className ? `jalvin-list ${props.className}` : "jalvin-list",
298
+ style: {
299
+ position: "relative",
300
+ overflowY: "auto",
301
+ height: "100%",
302
+ width: "100%",
303
+ boxSizing: "border-box",
304
+ ...props.style,
305
+ ...modProps.style,
306
+ },
307
+ ref: (el) => {
308
+ if (el) {
309
+ domContainerRef.current = el;
310
+ if (props.ref) {
311
+ props.ref(controller);
312
+ }
313
+ setupContainerListeners(el);
314
+ }
315
+ },
316
+ }, [innerSpacer, ...childrenVNodes]);
317
+ }
318
+ // Aliases and global registration
319
+ export const JalvinList = List;
320
+ export const list = List;
321
+ if (typeof globalThis !== "undefined") {
322
+ globalThis.Jalvin = globalThis.Jalvin || {};
323
+ globalThis.Jalvin.List = List;
324
+ }
325
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../src/list.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,8 @@ export declare class Modifier {
36
36
  static marginBottom(v: number | string): Modifier;
37
37
  static marginLeft(v: number | string): Modifier;
38
38
  static marginRight(v: number | string): Modifier;
39
+ static flex(v: number): Modifier;
40
+ static weight(v: number): Modifier;
39
41
  private with;
40
42
  /**
41
43
  * Tracks pointer enter/leave on this component, emitting
@@ -108,6 +110,7 @@ export declare class Modifier {
108
110
  left(v: number | string): Modifier;
109
111
  right(v: number | string): Modifier;
110
112
  flex(v: number): Modifier;
113
+ weight(v: number): Modifier;
111
114
  gap(v: number): Modifier;
112
115
  fontSize(v: number | string): Modifier;
113
116
  fontWeight(v: number | "bold" | "normal" | "light"): Modifier;
@@ -1 +1 @@
1
- {"version":3,"file":"modifier.d.ts","sourceRoot":"","sources":["../src/modifier.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,aAAa,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEjE,UAAU,gBAAgB;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAID,qBAAa,QAAQ;IACnB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAClE,QAAQ,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;IAE7C,OAAO;IAcP,MAAM,KAAK,OAAO,IAAI,QAAQ,CAA2B;IAEzD,MAAM,CAAC,YAAY,IAAK,QAAQ;IAChC,MAAM,CAAC,aAAa,IAAI,QAAQ;IAChC,MAAM,CAAC,WAAW,IAAM,QAAQ;IAChC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAI,QAAQ;IAC5C,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAS,QAAQ;IAC5C,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAc,QAAQ;IAC5C,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAK,QAAQ;IAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAI,QAAQ;IAC5C,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,GAAe,QAAQ;IAC5C,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAO,QAAQ;IAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAa,QAAQ;IAC5C,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IACjD,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,GAAY,QAAQ;IAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAa,QAAQ;IAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAa,QAAQ;IAC5C,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ;IACtE,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ;IACtG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAM,QAAQ;IACjD,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IACjD,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAK,QAAQ;IACjD,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAI,QAAQ;IAIjD,OAAO,CAAC,IAAI;IAIZ;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,MAAM,EAAE,wBAAwB,GAAG,QAAQ;IAOrD;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,wBAAwB,GAAG,QAAQ;IAOrD;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,wBAAwB,GAAG,QAAQ;IAOrD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,wBAAwB,GAAG,QAAQ;IAC5D,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,wBAAwB,GAAG,QAAQ;IAC5D,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,wBAAwB,GAAG,QAAQ;IAE5D,YAAY,IAAK,QAAQ;IACzB,aAAa,IAAI,QAAQ;IACzB,WAAW,IAAM,QAAQ;IAEzB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGrC,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAGtC,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAGpC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAM,QAAQ;IAClC,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAClC,WAAW,CAAC,CAAC,EAAE,MAAM,GAAK,QAAQ;IAClC,YAAY,CAAC,CAAC,EAAE,MAAM,GAAI,QAAQ;IAElC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGpC,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAGrC,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAGnC,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGvC,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAG1C,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGxC,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAIzC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAC/B,KAAK,CAAC,CAAC,EAAE,MAAM,GAAQ,QAAQ;IAC/B,MAAM,CAAC,CAAC,EAAE,MAAM,GAAO,QAAQ;IAC/B,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAG1C,OAAO,CAAC,CAAC,EAAE,MAAM,GAAI,QAAQ;IAC7B,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAE9B,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGnC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGpC,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAGzB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGtC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGtC,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAIvC,OAAO,CAAC,CAAC,EAAE,MAAM,GAAI,QAAQ;IAC7B,MAAM,CAAC,CAAC,EAAE,MAAM,GAAK,QAAQ;IAC7B,MAAM,CAAC,CAAC,EAAE,MAAM,GAAK,QAAQ;IAC7B,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ;IAG/D,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ;IAGhE,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ;IAGhE,UAAU,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ;IAG/F,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ;IAG9E,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAM,QAAQ;IACpC,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IACpC,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAK,QAAQ;IACpC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAI,QAAQ;IAEpC,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IACzB,GAAG,CAAC,CAAC,EAAE,MAAM,GAAI,QAAQ;IAEzB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGtC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ;IAG7D,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAC/B,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ;IAG/D,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAGxC,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAG3C,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAEnC,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ;IAGzD,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;IAG3C,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ;IAC/B,SAAS,CAAC,CAAC,EAAE,MAAM,GAAI,QAAQ;IAE/B,2CAA2C;IAC3C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;IAIjC,iDAAiD;IACjD,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAa/B,mGAAmG;IACnG,OAAO,IAAI;QACT,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;QACpB,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI,CAAC;QAChE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;QACvB,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE;YAAE,OAAO,EAAE,SAAS,CAAC;gBAAE,OAAO,EAAE,MAAM,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;SAAE,KAAK,IAAI,CAAC;QACzF,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;QACxB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;KAC5B;CA4BF;AAED,uFAAuF;AACvF,wBAAgB,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAuBlE"}
1
+ {"version":3,"file":"modifier.d.ts","sourceRoot":"","sources":["../src/modifier.ts"],"names":[],"mappings":"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"}
package/dist/modifier.js CHANGED
@@ -44,6 +44,8 @@ export class Modifier {
44
44
  static marginBottom(v) { return new Modifier().marginBottom(v); }
45
45
  static marginLeft(v) { return new Modifier().marginLeft(v); }
46
46
  static marginRight(v) { return new Modifier().marginRight(v); }
47
+ static flex(v) { return new Modifier().flex(v); }
48
+ static weight(v) { return new Modifier().weight(v); }
47
49
  // ── Fluent instance methods ────────────────────────────────────────────────
48
50
  with(extra) {
49
51
  return new Modifier({ ...this._styles, ...extra }, [...this._classNames], this._interactionSource, this._interactionFlags);
@@ -169,6 +171,7 @@ export class Modifier {
169
171
  left(v) { return this.with({ left: typeof v === "number" ? `${v}px` : v }); }
170
172
  right(v) { return this.with({ right: typeof v === "number" ? `${v}px` : v }); }
171
173
  flex(v) { return this.with({ flex: v }); }
174
+ weight(v) { return this.with({ flex: v }); }
172
175
  gap(v) { return this.with({ gap: `${v}px` }); }
173
176
  fontSize(v) {
174
177
  return this.with({ fontSize: typeof v === "number" ? `${v}px` : v });
@@ -1 +1 @@
1
- {"version":3,"file":"modifier.js","sourceRoot":"","sources":["../src/modifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modifier.js","sourceRoot":"","sources":["../src/modifier.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { VNode } from "@jalvin/runtime";
2
+ import { ListController, ListDataSource } from "./list.js";
3
+ import { Modifier } from "./modifier.js";
4
+ export interface TableColumn<T> {
5
+ header: string | VNode;
6
+ width?: string | number;
7
+ cell: (item: T, index: number, state?: {
8
+ isLoading?: boolean;
9
+ isRetained?: boolean;
10
+ }) => VNode | string | number;
11
+ }
12
+ export interface TableProps<T> {
13
+ data: ListDataSource<T>;
14
+ columns: TableColumn<T>[];
15
+ totalCount?: number;
16
+ rowHeight?: number;
17
+ headerHeight?: number;
18
+ bufferEntries?: number;
19
+ pageSize?: number;
20
+ maxSmoothDistance?: number;
21
+ modifier?: Modifier;
22
+ className?: string;
23
+ style?: Record<string, any>;
24
+ ref?: (controller: ListController) => void;
25
+ onScrollStop?: () => void;
26
+ }
27
+ export declare function Table<T>(props: TableProps<T>): VNode;
28
+ export declare const LazyTable: typeof Table;
29
+ //# sourceMappingURL=table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAQ,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;CAClH;AAED,MAAM,WAAW,UAAU,CAAC,CAAC;IAC3B,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,GAAG,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,IAAI,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAwGpD;AAED,eAAO,MAAM,SAAS,cAAQ,CAAC"}
package/dist/table.js ADDED
@@ -0,0 +1,103 @@
1
+ import { jalvinCreateElement } from "@jalvin/runtime";
2
+ import { List } from "./list.js";
3
+ export function Table(props) {
4
+ const rowHeight = props.rowHeight ?? 44;
5
+ const headerHeight = props.headerHeight ?? 48;
6
+ const columns = props.columns ?? [];
7
+ // Render Table Header Row
8
+ const headerCells = columns.map((col, idx) => {
9
+ const widthStyle = col.width ? (typeof col.width === "number" ? `${col.width}px` : col.width) : "1fr";
10
+ return jalvinCreateElement("div", {
11
+ key: `th-${idx}`,
12
+ className: "jalvin-table-header-cell",
13
+ style: {
14
+ flex: widthStyle.includes("px") ? `0 0 ${widthStyle}` : widthStyle,
15
+ padding: "8px 16px",
16
+ fontWeight: "bold",
17
+ fontSize: "14px",
18
+ color: "#475569",
19
+ display: "flex",
20
+ alignItems: "center",
21
+ boxSizing: "border-box",
22
+ },
23
+ }, [typeof col.header === "string" ? jalvinCreateElement("span", {}, col.header) : col.header]);
24
+ });
25
+ const headerRow = jalvinCreateElement("div", {
26
+ className: "jalvin-table-header",
27
+ style: {
28
+ display: "flex",
29
+ flexDirection: "row",
30
+ height: `${headerHeight}px`,
31
+ backgroundColor: "#f8fafc",
32
+ borderBottom: "1px solid #e2e8f0",
33
+ position: "sticky",
34
+ top: "0px",
35
+ zIndex: "10",
36
+ boxSizing: "border-box",
37
+ },
38
+ }, headerCells);
39
+ // Virtualized Rows via List engine
40
+ const tableList = List({
41
+ data: props.data,
42
+ totalCount: props.totalCount,
43
+ itemHeight: rowHeight,
44
+ bufferEntries: props.bufferEntries,
45
+ pageSize: props.pageSize,
46
+ maxSmoothDistance: props.maxSmoothDistance,
47
+ ref: props.ref,
48
+ onScrollStop: props.onScrollStop,
49
+ itemTemplate: (item, index, state) => {
50
+ const cells = columns.map((col, cIdx) => {
51
+ const widthStyle = col.width ? (typeof col.width === "number" ? `${col.width}px` : col.width) : "1fr";
52
+ const content = col.cell(item, index, state);
53
+ return jalvinCreateElement("div", {
54
+ key: `td-${index}-${cIdx}`,
55
+ className: "jalvin-table-cell",
56
+ style: {
57
+ flex: widthStyle.includes("px") ? `0 0 ${widthStyle}` : widthStyle,
58
+ padding: "8px 16px",
59
+ display: "flex",
60
+ alignItems: "center",
61
+ boxSizing: "border-box",
62
+ overflow: "hidden",
63
+ textOverflow: "ellipsis",
64
+ whiteSpace: "nowrap",
65
+ },
66
+ }, [typeof content === "string" || typeof content === "number" ? String(content) : content]);
67
+ });
68
+ return jalvinCreateElement("div", {
69
+ className: "jalvin-table-row",
70
+ style: {
71
+ display: "flex",
72
+ flexDirection: "row",
73
+ height: "100%",
74
+ width: "100%",
75
+ alignItems: "center",
76
+ borderBottom: "1px solid #f1f5f9",
77
+ backgroundColor: index % 2 === 0 ? "#ffffff" : "#f8fafc",
78
+ boxSizing: "border-box",
79
+ },
80
+ }, cells);
81
+ },
82
+ });
83
+ const modProps = props.modifier?.toProps() ?? {};
84
+ return jalvinCreateElement("div", {
85
+ ...modProps,
86
+ className: props.className ? `jalvin-table-container ${props.className}` : "jalvin-table-container",
87
+ style: {
88
+ display: "flex",
89
+ flexDirection: "column",
90
+ height: "100%",
91
+ width: "100%",
92
+ position: "relative",
93
+ overflow: "hidden",
94
+ border: "1px solid #e2e8f0",
95
+ borderRadius: "6px",
96
+ boxSizing: "border-box",
97
+ ...props.style,
98
+ ...modProps.style,
99
+ },
100
+ }, [headerRow, tableList]);
101
+ }
102
+ export const LazyTable = Table;
103
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jalvin/ui",
3
- "version": "2.0.52",
3
+ "version": "2.0.53",
4
4
  "description": "Jalvin UI — Compose-style component library (Column, Row, Box, Button, Text, …)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -21,7 +21,7 @@
21
21
  "@jalvin/runtime": ">=2.0.0"
22
22
  },
23
23
  "devDependencies": {
24
- "@jalvin/runtime": "2.0.52",
24
+ "@jalvin/runtime": "2.0.53",
25
25
  "@testing-library/dom": "^10.4.1",
26
26
  "@testing-library/jest-dom": "^6.9.1",
27
27
  "@types/node": "^20.0.0",