@pathscale/ui 2.2.2 → 2.3.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 (63) hide show
  1. package/dist/components/data-grid/DataGrid.css +238 -0
  2. package/dist/components/data-grid/DataGrid.generated.d.ts +41 -0
  3. package/dist/components/data-grid/DataGrid.generated.js +408 -0
  4. package/dist/components/data-grid/DataGrid.interactions.d.ts +11 -0
  5. package/dist/components/data-grid/DataGrid.interactions.js +25 -0
  6. package/dist/components/data-grid/DataGrid.recipe.d.ts +52 -0
  7. package/dist/components/data-grid/DataGrid.recipe.js +96 -0
  8. package/dist/components/data-grid/createDataGrid.d.ts +121 -0
  9. package/dist/components/data-grid/createDataGrid.js +252 -0
  10. package/dist/components/data-grid/index.d.ts +4 -0
  11. package/dist/components/data-grid/index.js +2 -0
  12. package/dist/components/table/ExpandToggle.generated.js +2 -2
  13. package/dist/components/table/InlineConfirm.generated.js +2 -2
  14. package/dist/components/table/MobileListView.generated.js +2 -2
  15. package/dist/components/table/SortIcon.generated.js +2 -2
  16. package/dist/components/table/Table.context.d.ts +23 -0
  17. package/dist/components/table/Table.context.js +22 -0
  18. package/dist/components/table/Table.d.ts +18 -0
  19. package/dist/components/table/Table.js +33 -0
  20. package/dist/components/table/Table.recipe.d.ts +130 -16
  21. package/dist/components/table/Table.recipe.js +420 -78
  22. package/dist/components/table/TableBody.generated.d.ts +6 -0
  23. package/dist/components/table/TableBody.generated.js +33 -0
  24. package/dist/components/table/TableCell.generated.d.ts +6 -0
  25. package/dist/components/table/TableCell.generated.js +33 -0
  26. package/dist/components/table/TableColumn.generated.d.ts +11 -0
  27. package/dist/components/table/TableColumn.generated.js +89 -0
  28. package/dist/components/table/TableColumnResizer.generated.d.ts +6 -0
  29. package/dist/components/table/TableColumnResizer.generated.js +42 -0
  30. package/dist/components/table/TableContent.generated.d.ts +10 -0
  31. package/dist/components/table/TableContent.generated.js +50 -0
  32. package/dist/components/table/TableExpandedRow.generated.d.ts +11 -0
  33. package/dist/components/table/TableExpandedRow.generated.js +50 -0
  34. package/dist/components/table/TableFooter.generated.d.ts +6 -0
  35. package/dist/components/table/TableFooter.generated.js +33 -0
  36. package/dist/components/table/TableHeader.generated.d.ts +6 -0
  37. package/dist/components/table/TableHeader.generated.js +33 -0
  38. package/dist/components/table/TableLoadMore.generated.d.ts +6 -0
  39. package/dist/components/table/TableLoadMore.generated.js +33 -0
  40. package/dist/components/table/TableLoadMoreContent.generated.d.ts +6 -0
  41. package/dist/components/table/TableLoadMoreContent.generated.js +33 -0
  42. package/dist/components/table/TablePageSize.generated.d.ts +13 -0
  43. package/dist/components/table/TablePageSize.generated.js +57 -0
  44. package/dist/components/table/TableResizableContainer.generated.d.ts +6 -0
  45. package/dist/components/table/TableResizableContainer.generated.js +33 -0
  46. package/dist/components/table/TableRoot.generated.d.ts +10 -0
  47. package/dist/components/table/TableRoot.generated.js +45 -0
  48. package/dist/components/table/TableRow.generated.d.ts +6 -0
  49. package/dist/components/table/TableRow.generated.js +33 -0
  50. package/dist/components/table/TableScrollContainer.generated.d.ts +6 -0
  51. package/dist/components/table/TableScrollContainer.generated.js +33 -0
  52. package/dist/components/table/VirtualSpacerRow.generated.js +2 -2
  53. package/dist/components/table/index.d.ts +43 -13
  54. package/dist/components/table/index.js +21 -5
  55. package/dist/index.d.ts +3 -0
  56. package/dist/index.js +1 -0
  57. package/dist/layouts.manifest.json +4 -1
  58. package/dist/purge-manifest.json +482 -14
  59. package/dist/styles/themes/dark.css +3 -0
  60. package/dist/styles/themes/light.css +3 -0
  61. package/package.json +2 -2
  62. package/dist/components/table/Table.generated.d.ts +0 -94
  63. package/dist/components/table/Table.generated.js +0 -551
@@ -0,0 +1,89 @@
1
+ import { insert, memo, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { invokeEventHandler, useTableContentContext } from "./Table.context.js";
6
+ import { CLASSES, tableColumnRecipe } from "./Table.recipe.js";
7
+ var _tmpl$ = /*#__PURE__*/ template("<th>");
8
+ const __solidLayoutTableColumn = (_stable, p)=>{
9
+ const contentContext = useTableContentContext();
10
+ const [local, rest] = splitProps(p, [
11
+ "id",
12
+ "allowsSorting",
13
+ "children",
14
+ "class",
15
+ "dataTheme",
16
+ "onClick",
17
+ "onKeyDown",
18
+ "tabIndex"
19
+ ]);
20
+ const isSortable = ()=>Boolean(local.allowsSorting);
21
+ const sortDirection = ()=>{
22
+ const descriptor = contentContext.sortDescriptor();
23
+ if (!descriptor || descriptor.column !== local.id) return;
24
+ return descriptor.direction;
25
+ };
26
+ const emitSortChange = ()=>{
27
+ if (!isSortable() || !contentContext.onSortChange) return;
28
+ contentContext.onSortChange({
29
+ column: local.id,
30
+ direction: "ascending" === sortDirection() ? "descending" : "ascending"
31
+ });
32
+ };
33
+ const handleClick = (event)=>{
34
+ invokeEventHandler(local.onClick, event);
35
+ if (event.defaultPrevented) return;
36
+ emitSortChange();
37
+ };
38
+ const handleKeyDown = (event)=>{
39
+ invokeEventHandler(local.onKeyDown, event);
40
+ if (event.defaultPrevented) return;
41
+ if (!isSortable()) return;
42
+ if ("Enter" !== event.key && " " !== event.key) return;
43
+ event.preventDefault();
44
+ emitSortChange();
45
+ };
46
+ const renderedChildren = ()=>{
47
+ if ("function" == typeof local.children) return local.children({
48
+ sortDirection: sortDirection()
49
+ });
50
+ return local.children;
51
+ };
52
+ return (()=>{
53
+ var _el$ = _tmpl$();
54
+ spread(_el$, mergeProps(()=>({
55
+ class: twMerge(CLASSES.column, local.class)
56
+ }), {
57
+ get ["data-theme"] () {
58
+ return local.dataTheme;
59
+ },
60
+ "data-slot": "table-column",
61
+ get ["data-column-id"] () {
62
+ return local.id;
63
+ },
64
+ get ["data-allows-sorting"] () {
65
+ return isSortable() ? "true" : void 0;
66
+ },
67
+ get ["data-sort-direction"] () {
68
+ return sortDirection();
69
+ },
70
+ get ["aria-sort"] () {
71
+ return memo(()=>!!isSortable())() ? sortDirection() ?? "none" : void 0;
72
+ },
73
+ get tabIndex () {
74
+ return memo(()=>!!isSortable())() ? local.tabIndex ?? 0 : local.tabIndex;
75
+ },
76
+ onClick: handleClick,
77
+ onKeyDown: handleKeyDown
78
+ }, rest), false, true);
79
+ insert(_el$, renderedChildren);
80
+ return _el$;
81
+ })();
82
+ };
83
+ const TableColumn = defineComponent({
84
+ recipe: tableColumnRecipe,
85
+ layout: __solidLayoutTableColumn,
86
+ embedded: true
87
+ });
88
+ const TableColumn_generated = TableColumn;
89
+ export default TableColumn_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableColumnResizerProps = JSX.HTMLAttributes<HTMLDivElement> & UIBaseProps;
5
+ declare const TableColumnResizer: __LayoutComponent<TableColumnResizerProps>;
6
+ export default TableColumnResizer;
@@ -0,0 +1,42 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableColumnResizerRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<div>");
7
+ const __solidLayoutTableColumnResizer = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "children",
10
+ "class",
11
+ "dataTheme",
12
+ "role",
13
+ "aria-orientation"
14
+ ]);
15
+ return (()=>{
16
+ var _el$ = _tmpl$();
17
+ spread(_el$, mergeProps({
18
+ get role () {
19
+ return local.role ?? "separator";
20
+ },
21
+ get ["aria-orientation"] () {
22
+ return local["aria-orientation"] ?? "vertical";
23
+ }
24
+ }, ()=>({
25
+ class: twMerge(CLASSES.columnResizer, local.class)
26
+ }), {
27
+ get ["data-theme"] () {
28
+ return local.dataTheme;
29
+ },
30
+ "data-slot": "table-column-resizer"
31
+ }, rest), false, true);
32
+ insert(_el$, ()=>local.children);
33
+ return _el$;
34
+ })();
35
+ };
36
+ const TableColumnResizer = defineComponent({
37
+ recipe: tableColumnResizerRecipe,
38
+ layout: __solidLayoutTableColumnResizer,
39
+ embedded: true
40
+ });
41
+ const TableColumnResizer_generated = TableColumnResizer;
42
+ export default TableColumnResizer_generated;
@@ -0,0 +1,10 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ import { type TableSortDescriptor } from "./Table.context";
5
+ export type TableContentProps = JSX.HTMLAttributes<HTMLTableElement> & UIBaseProps & {
6
+ sortDescriptor?: TableSortDescriptor;
7
+ onSortChange?: (descriptor: TableSortDescriptor) => void;
8
+ };
9
+ declare const TableContent: __LayoutComponent<TableContentProps>;
10
+ export default TableContent;
@@ -0,0 +1,50 @@
1
+ import { createComponent, insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { TableContentContext } from "./Table.context.js";
6
+ import { CLASSES, tableContentRecipe } from "./Table.recipe.js";
7
+ var _tmpl$ = /*#__PURE__*/ template("<table>");
8
+ const __solidLayoutTableContent = (_stable, p)=>{
9
+ const [local, rest] = splitProps(p, [
10
+ "children",
11
+ "class",
12
+ "dataTheme",
13
+ "sortDescriptor",
14
+ "onSortChange"
15
+ ]);
16
+ return createComponent(TableContentContext.Provider, {
17
+ get value () {
18
+ return {
19
+ sortDescriptor: ()=>local.sortDescriptor,
20
+ onSortChange: local.onSortChange
21
+ };
22
+ },
23
+ get children () {
24
+ var _el$ = _tmpl$();
25
+ spread(_el$, mergeProps(()=>({
26
+ class: twMerge(CLASSES.content, local.class)
27
+ }), {
28
+ get ["data-theme"] () {
29
+ return local.dataTheme;
30
+ },
31
+ "data-slot": "table-content",
32
+ get ["data-sort-column"] () {
33
+ return local.sortDescriptor?.column;
34
+ },
35
+ get ["data-sort-direction"] () {
36
+ return local.sortDescriptor?.direction;
37
+ }
38
+ }, rest), false, true);
39
+ insert(_el$, ()=>local.children);
40
+ return _el$;
41
+ }
42
+ });
43
+ };
44
+ const TableContent = defineComponent({
45
+ recipe: tableContentRecipe,
46
+ layout: __solidLayoutTableContent,
47
+ embedded: true
48
+ });
49
+ const TableContent_generated = TableContent;
50
+ export default TableContent_generated;
@@ -0,0 +1,11 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableExpandedRowProps = JSX.HTMLAttributes<HTMLTableRowElement> & UIBaseProps & {
5
+ colSpan: number;
6
+ cellClass?: string;
7
+ cellClassName?: string;
8
+ cellDataTheme?: string;
9
+ };
10
+ declare const TableExpandedRow: __LayoutComponent<TableExpandedRowProps>;
11
+ export default TableExpandedRow;
@@ -0,0 +1,50 @@
1
+ import { createComponent, mergeProps } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableExpandedRowRecipe } from "./Table.recipe.js";
6
+ import TableCell_generated from "./TableCell.generated.js";
7
+ import TableRow_generated from "./TableRow.generated.js";
8
+ const __solidLayoutTableExpandedRow = (_stable, p)=>{
9
+ const [local, rest] = splitProps(p, [
10
+ "children",
11
+ "class",
12
+ "dataTheme",
13
+ "colSpan",
14
+ "cellClass",
15
+ "cellClassName",
16
+ "cellDataTheme"
17
+ ]);
18
+ return createComponent(TableRow_generated, mergeProps(()=>({
19
+ class: twMerge(CLASSES.expandedRow, local.class)
20
+ }), {
21
+ get ["data-theme"] () {
22
+ return local.dataTheme;
23
+ },
24
+ "data-slot": "table-expanded-row"
25
+ }, rest, {
26
+ get children () {
27
+ return createComponent(TableCell_generated, mergeProps({
28
+ get colSpan () {
29
+ return local.colSpan;
30
+ }
31
+ }, ()=>({
32
+ class: twMerge(CLASSES.expandedCell, local.cellClass, local.cellClassName)
33
+ }), {
34
+ get dataTheme () {
35
+ return local.cellDataTheme ?? local.dataTheme;
36
+ },
37
+ get children () {
38
+ return local.children;
39
+ }
40
+ }));
41
+ }
42
+ }));
43
+ };
44
+ const TableExpandedRow = defineComponent({
45
+ recipe: tableExpandedRowRecipe,
46
+ layout: __solidLayoutTableExpandedRow,
47
+ embedded: true
48
+ });
49
+ const TableExpandedRow_generated = TableExpandedRow;
50
+ export default TableExpandedRow_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableFooterProps = JSX.HTMLAttributes<HTMLDivElement> & UIBaseProps;
5
+ declare const TableFooter: __LayoutComponent<TableFooterProps>;
6
+ export default TableFooter;
@@ -0,0 +1,33 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableFooterRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<div>");
7
+ const __solidLayoutTableFooter = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "children",
10
+ "class",
11
+ "dataTheme"
12
+ ]);
13
+ return (()=>{
14
+ var _el$ = _tmpl$();
15
+ spread(_el$, mergeProps(()=>({
16
+ class: twMerge(CLASSES.footer, local.class)
17
+ }), {
18
+ get ["data-theme"] () {
19
+ return local.dataTheme;
20
+ },
21
+ "data-slot": "table-footer"
22
+ }, rest), false, true);
23
+ insert(_el$, ()=>local.children);
24
+ return _el$;
25
+ })();
26
+ };
27
+ const TableFooter = defineComponent({
28
+ recipe: tableFooterRecipe,
29
+ layout: __solidLayoutTableFooter,
30
+ embedded: true
31
+ });
32
+ const TableFooter_generated = TableFooter;
33
+ export default TableFooter_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableHeaderProps = JSX.HTMLAttributes<HTMLTableSectionElement> & UIBaseProps;
5
+ declare const TableHeader: __LayoutComponent<TableHeaderProps>;
6
+ export default TableHeader;
@@ -0,0 +1,33 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableHeaderRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<thead>");
7
+ const __solidLayoutTableHeader = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "children",
10
+ "class",
11
+ "dataTheme"
12
+ ]);
13
+ return (()=>{
14
+ var _el$ = _tmpl$();
15
+ spread(_el$, mergeProps(()=>({
16
+ class: twMerge(CLASSES.header, local.class)
17
+ }), {
18
+ get ["data-theme"] () {
19
+ return local.dataTheme;
20
+ },
21
+ "data-slot": "table-header"
22
+ }, rest), false, true);
23
+ insert(_el$, ()=>local.children);
24
+ return _el$;
25
+ })();
26
+ };
27
+ const TableHeader = defineComponent({
28
+ recipe: tableHeaderRecipe,
29
+ layout: __solidLayoutTableHeader,
30
+ embedded: true
31
+ });
32
+ const TableHeader_generated = TableHeader;
33
+ export default TableHeader_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableLoadMoreProps = JSX.HTMLAttributes<HTMLTableRowElement> & UIBaseProps;
5
+ declare const TableLoadMore: __LayoutComponent<TableLoadMoreProps>;
6
+ export default TableLoadMore;
@@ -0,0 +1,33 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableLoadMoreRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<tr>");
7
+ const __solidLayoutTableLoadMore = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "children",
10
+ "class",
11
+ "dataTheme"
12
+ ]);
13
+ return (()=>{
14
+ var _el$ = _tmpl$();
15
+ spread(_el$, mergeProps(()=>({
16
+ class: twMerge(CLASSES.loadMore, local.class)
17
+ }), {
18
+ get ["data-theme"] () {
19
+ return local.dataTheme;
20
+ },
21
+ "data-slot": "table-load-more"
22
+ }, rest), false, true);
23
+ insert(_el$, ()=>local.children);
24
+ return _el$;
25
+ })();
26
+ };
27
+ const TableLoadMore = defineComponent({
28
+ recipe: tableLoadMoreRecipe,
29
+ layout: __solidLayoutTableLoadMore,
30
+ embedded: true
31
+ });
32
+ const TableLoadMore_generated = TableLoadMore;
33
+ export default TableLoadMore_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableLoadMoreContentProps = JSX.HTMLAttributes<HTMLDivElement> & UIBaseProps;
5
+ declare const TableLoadMoreContent: __LayoutComponent<TableLoadMoreContentProps>;
6
+ export default TableLoadMoreContent;
@@ -0,0 +1,33 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableLoadMoreContentRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<div>");
7
+ const __solidLayoutTableLoadMoreContent = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "children",
10
+ "class",
11
+ "dataTheme"
12
+ ]);
13
+ return (()=>{
14
+ var _el$ = _tmpl$();
15
+ spread(_el$, mergeProps(()=>({
16
+ class: twMerge(CLASSES.loadMoreContent, local.class)
17
+ }), {
18
+ get ["data-theme"] () {
19
+ return local.dataTheme;
20
+ },
21
+ "data-slot": "table-load-more-content"
22
+ }, rest), false, true);
23
+ insert(_el$, ()=>local.children);
24
+ return _el$;
25
+ })();
26
+ };
27
+ const TableLoadMoreContent = defineComponent({
28
+ recipe: tableLoadMoreContentRecipe,
29
+ layout: __solidLayoutTableLoadMoreContent,
30
+ embedded: true
31
+ });
32
+ const TableLoadMoreContent_generated = TableLoadMoreContent;
33
+ export default TableLoadMoreContent_generated;
@@ -0,0 +1,13 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TablePageSizeProps = Omit<JSX.SelectHTMLAttributes<HTMLSelectElement>, "onChange"> & UIBaseProps & {
5
+ value: number;
6
+ options: readonly number[];
7
+ onChange: (value: number) => void;
8
+ label?: JSX.Element;
9
+ selectClass?: string;
10
+ selectClassName?: string;
11
+ };
12
+ declare const TablePageSize: __LayoutComponent<TablePageSizeProps>;
13
+ export default TablePageSize;
@@ -0,0 +1,57 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tablePageSizeRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<label><span></span><select>"), _tmpl$2 = /*#__PURE__*/ template("<option>");
7
+ const __solidLayoutTablePageSize = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "class",
10
+ "dataTheme",
11
+ "value",
12
+ "options",
13
+ "onChange",
14
+ "label",
15
+ "selectClass",
16
+ "selectClassName"
17
+ ]);
18
+ return (()=>{
19
+ var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
20
+ spread(_el$, mergeProps(()=>({
21
+ class: twMerge(CLASSES.pageSize, local.class)
22
+ }), {
23
+ get ["data-theme"] () {
24
+ return local.dataTheme;
25
+ },
26
+ "data-slot": "table-page-size"
27
+ }), false, true);
28
+ spread(_el$2, mergeProps(()=>({
29
+ class: CLASSES.pageSizeLabel
30
+ }), {
31
+ "data-slot": "table-page-size-label"
32
+ }), false, true);
33
+ insert(_el$2, ()=>local.label ?? "Rows");
34
+ spread(_el$3, mergeProps(rest, ()=>({
35
+ class: twMerge(CLASSES.pageSizeSelect, local.selectClass, local.selectClassName)
36
+ }), {
37
+ get value () {
38
+ return local.value;
39
+ },
40
+ onChange: (event)=>local.onChange(Number(event.currentTarget.value))
41
+ }), false, true);
42
+ insert(_el$3, ()=>local.options.map((option)=>(()=>{
43
+ var _el$4 = _tmpl$2();
44
+ _el$4.value = option;
45
+ insert(_el$4, option);
46
+ return _el$4;
47
+ })()));
48
+ return _el$;
49
+ })();
50
+ };
51
+ const TablePageSize = defineComponent({
52
+ recipe: tablePageSizeRecipe,
53
+ layout: __solidLayoutTablePageSize,
54
+ embedded: true
55
+ });
56
+ const TablePageSize_generated = TablePageSize;
57
+ export default TablePageSize_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableResizableContainerProps = JSX.HTMLAttributes<HTMLDivElement> & UIBaseProps;
5
+ declare const TableResizableContainer: __LayoutComponent<TableResizableContainerProps>;
6
+ export default TableResizableContainer;
@@ -0,0 +1,33 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableResizableContainerRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<div>");
7
+ const __solidLayoutTableResizableContainer = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "children",
10
+ "class",
11
+ "dataTheme"
12
+ ]);
13
+ return (()=>{
14
+ var _el$ = _tmpl$();
15
+ spread(_el$, mergeProps(()=>({
16
+ class: twMerge(CLASSES.resizableContainer, local.class)
17
+ }), {
18
+ get ["data-theme"] () {
19
+ return local.dataTheme;
20
+ },
21
+ "data-slot": "table-resizable-container"
22
+ }, rest), false, true);
23
+ insert(_el$, ()=>local.children);
24
+ return _el$;
25
+ })();
26
+ };
27
+ const TableResizableContainer = defineComponent({
28
+ recipe: tableResizableContainerRecipe,
29
+ layout: __solidLayoutTableResizableContainer,
30
+ embedded: true
31
+ });
32
+ const TableResizableContainer_generated = TableResizableContainer;
33
+ export default TableResizableContainer_generated;
@@ -0,0 +1,10 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import "./Table.css";
3
+ import { type JSX } from "solid-js";
4
+ import type { UIBaseProps } from "../vocabulary";
5
+ import { type TableVariant } from "./Table.context";
6
+ export type TableRootProps = JSX.HTMLAttributes<HTMLDivElement> & UIBaseProps & {
7
+ variant?: TableVariant;
8
+ };
9
+ declare const TableRoot: __LayoutComponent<TableRootProps>;
10
+ export default TableRoot;
@@ -0,0 +1,45 @@
1
+ import { createComponent, insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import "./Table.css";
4
+ import { splitProps } from "solid-js";
5
+ import { twMerge } from "tailwind-merge";
6
+ import { TableContext } from "./Table.context.js";
7
+ import { CLASSES, componentRecipe } from "./Table.recipe.js";
8
+ var _tmpl$ = /*#__PURE__*/ template("<div>");
9
+ const __solidLayoutTableRoot = (_stable, p)=>{
10
+ const [local, rest] = splitProps(p, [
11
+ "children",
12
+ "variant",
13
+ "class",
14
+ "dataTheme"
15
+ ]);
16
+ const variant = ()=>local.variant ?? "primary";
17
+ return createComponent(TableContext.Provider, {
18
+ value: {
19
+ variant
20
+ },
21
+ get children () {
22
+ var _el$ = _tmpl$();
23
+ spread(_el$, mergeProps(()=>({
24
+ class: twMerge(CLASSES.root.base, CLASSES.root.variant[variant()], local.class)
25
+ }), {
26
+ get ["data-theme"] () {
27
+ return local.dataTheme;
28
+ },
29
+ "data-slot": "table",
30
+ get ["data-variant"] () {
31
+ return variant();
32
+ }
33
+ }, rest), false, true);
34
+ insert(_el$, ()=>local.children);
35
+ return _el$;
36
+ }
37
+ });
38
+ };
39
+ const TableRoot = defineComponent({
40
+ recipe: componentRecipe,
41
+ layout: __solidLayoutTableRoot,
42
+ embedded: true
43
+ });
44
+ const TableRoot_generated = TableRoot;
45
+ export default TableRoot_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableRowProps = JSX.HTMLAttributes<HTMLTableRowElement> & UIBaseProps;
5
+ declare const TableRow: __LayoutComponent<TableRowProps>;
6
+ export default TableRow;
@@ -0,0 +1,33 @@
1
+ import { insert, mergeProps, spread, template } from "solid-js/web";
2
+ import { defineComponent } from "solid-layouts/application-boundary";
3
+ import { splitProps } from "solid-js";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { CLASSES, tableRowRecipe } from "./Table.recipe.js";
6
+ var _tmpl$ = /*#__PURE__*/ template("<tr>");
7
+ const __solidLayoutTableRow = (_stable, p)=>{
8
+ const [local, rest] = splitProps(p, [
9
+ "children",
10
+ "class",
11
+ "dataTheme"
12
+ ]);
13
+ return (()=>{
14
+ var _el$ = _tmpl$();
15
+ spread(_el$, mergeProps(()=>({
16
+ class: twMerge(CLASSES.row, local.class)
17
+ }), {
18
+ get ["data-theme"] () {
19
+ return local.dataTheme;
20
+ },
21
+ "data-slot": "table-row"
22
+ }, rest), false, true);
23
+ insert(_el$, ()=>local.children);
24
+ return _el$;
25
+ })();
26
+ };
27
+ const TableRow = defineComponent({
28
+ recipe: tableRowRecipe,
29
+ layout: __solidLayoutTableRow,
30
+ embedded: true
31
+ });
32
+ const TableRow_generated = TableRow;
33
+ export default TableRow_generated;
@@ -0,0 +1,6 @@
1
+ import type { Component as __LayoutComponent } from "solid-js";
2
+ import { type JSX } from "solid-js";
3
+ import type { UIBaseProps } from "../vocabulary";
4
+ export type TableScrollContainerProps = JSX.HTMLAttributes<HTMLDivElement> & UIBaseProps;
5
+ declare const TableScrollContainer: __LayoutComponent<TableScrollContainerProps>;
6
+ export default TableScrollContainer;