@simple-table/solid 3.0.0-beta.15 → 3.0.0-beta.16

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/cjs/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("solid-js/web"),r=require("solid-js"),n=require("simple-table-core");function t(e,r){var n={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&r.indexOf(t)<0&&(n[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(t=Object.getOwnPropertySymbols(e);o<t.length;o++)r.indexOf(t[o])<0&&Object.prototype.propertyIsEnumerable.call(e,t[o])&&(n[t[o]]=e[t[o]])}return n}function o(r){return n=>{const t=document.createElement("div");return e.render(()=>e.createComponent(r,n),t),t}}function d(r){const n=document.createElement("div");return e.render(()=>r,n),n}function i(r){const n=document.createElement("div");return e.render(()=>r,n),n.innerHTML}function a(e){return"function"==typeof e}function l(e){const{cellRenderer:r,headerRenderer:n,children:d,nestedTable:i}=e,a=t(e,["cellRenderer","headerRenderer","children","nestedTable"]),s=Object.assign({},a);if(r&&(s.cellRenderer=o(r)),n&&(s.headerRenderer=o(n)),d&&(s.children=d.map(l)),i){const e=Object.assign(Object.assign({},i),{rows:[]});s.nestedTable=c(e)}return s}function c(e){const{defaultHeaders:r,footerRenderer:n,emptyStateRenderer:c,errorStateRenderer:s,loadingStateRenderer:u,tableEmptyStateRenderer:f,headerDropdown:p,columnEditorConfig:m,icons:R}=e,b=t(e,["defaultHeaders","footerRenderer","emptyStateRenderer","errorStateRenderer","loadingStateRenderer","tableEmptyStateRenderer","headerDropdown","columnEditorConfig","icons","ref"]),y=Object.assign(Object.assign({},b),{defaultHeaders:r.map(l)});if(void 0!==n&&(y.footerRenderer=o(n)),void 0!==c)if(a(c))y.emptyStateRenderer=o(c);else{const e=c;y.emptyStateRenderer=()=>d(e)}if(void 0!==s)if(a(s))y.errorStateRenderer=o(s);else{const e=s;y.errorStateRenderer=()=>d(e)}if(void 0!==u)if(a(u))y.loadingStateRenderer=o(u);else{const e=u;y.loadingStateRenderer=()=>d(e)}return void 0!==f&&(y.tableEmptyStateRenderer=null===f?null:d(f)),void 0!==p&&(y.headerDropdown=o(p)),void 0!==m&&(y.columnEditorConfig=function(e){const{rowRenderer:r}=e,n=t(e,["rowRenderer"]);return Object.assign(Object.assign({},n),r?{rowRenderer:o(r)}:{})}(m)),void 0!==R&&(y.icons=function(e){const r={};for(const[n,t]of Object.entries(e))null!=t&&(r[n]="string"==typeof t||t instanceof HTMLElement||t instanceof SVGElement?t:i(t));return r}(R)),y}"function"==typeof SuppressedError&&SuppressedError;var s=e.template("<div>");exports.SimpleTable=function(t){let o,d=null;return r.onMount(()=>{d=new n.SimpleTableVanilla(o,c(t)),d.mount(),t.ref&&t.ref(d.getAPI())}),r.createEffect(()=>{d&&d.update(c(t))}),r.onCleanup(()=>{null==d||d.destroy(),d=null}),i=s(),"function"==typeof o?e.use(o,i):o=i,i;var i};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("solid-js/web"),r=require("solid-js"),n=require("simple-table-core");function t(e,r){var n={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&r.indexOf(t)<0&&(n[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(t=Object.getOwnPropertySymbols(e);o<t.length;o++)r.indexOf(t[o])<0&&Object.prototype.propertyIsEnumerable.call(e,t[o])&&(n[t[o]]=e[t[o]])}return n}function o(r){return n=>{const t=document.createElement("div");return e.render(()=>e.createComponent(r,n),t),t}}function d(r){const n=document.createElement("div");return e.render(()=>r,n),n}function i(r){const n=document.createElement("div");return e.render(()=>r,n),n.innerHTML}function a(e){return"function"==typeof e}function c(e){const{cellRenderer:r,headerRenderer:n,children:d,nestedTable:i}=e,a=t(e,["cellRenderer","headerRenderer","children","nestedTable"]),s=Object.assign({},a);if(r&&(s.cellRenderer=o(r)),n&&(s.headerRenderer=o(n)),d&&(s.children=d.map(c)),i){const e=Object.assign(Object.assign({},i),{rows:[]});s.nestedTable=l(e)}return s}function l(e){const{defaultHeaders:r,footerRenderer:n,emptyStateRenderer:l,errorStateRenderer:s,loadingStateRenderer:u,tableEmptyStateRenderer:f,headerDropdown:p,columnEditorConfig:m,icons:R}=e,b=t(e,["defaultHeaders","footerRenderer","emptyStateRenderer","errorStateRenderer","loadingStateRenderer","tableEmptyStateRenderer","headerDropdown","columnEditorConfig","icons","ref"]),y=Object.assign(Object.assign({},b),{defaultHeaders:r.map(c)});if(void 0!==n&&(y.footerRenderer=o(n)),void 0!==l)if(a(l))y.emptyStateRenderer=o(l);else{const e=l;y.emptyStateRenderer=()=>d(e)}if(void 0!==s)if(a(s))y.errorStateRenderer=o(s);else{const e=s;y.errorStateRenderer=()=>d(e)}if(void 0!==u)if(a(u))y.loadingStateRenderer=o(u);else{const e=u;y.loadingStateRenderer=()=>d(e)}return void 0!==f&&(y.tableEmptyStateRenderer=null===f?null:d(f)),void 0!==p&&(y.headerDropdown=o(p)),void 0!==m&&(y.columnEditorConfig=function(e){const{rowRenderer:r,customRenderer:n}=e,d=t(e,["rowRenderer","customRenderer"]);return Object.assign(Object.assign(Object.assign({},d),r?{rowRenderer:o(r)}:{}),n?{customRenderer:o(n)}:{})}(m)),void 0!==R&&(y.icons=function(e){const r={};for(const[n,t]of Object.entries(e))null!=t&&(r[n]="string"==typeof t||t instanceof HTMLElement||t instanceof SVGElement?t:i(t));return r}(R)),y}"function"==typeof SuppressedError&&SuppressedError;var s=e.template("<div>");exports.SimpleTable=function(t){let o,d=null;return r.onMount(()=>{d=new n.SimpleTableVanilla(o,l(t)),d.mount(),t.ref&&t.ref(d.getAPI())}),r.createEffect(()=>{d&&d.update(l(t))}),r.onCleanup(()=>{null==d||d.destroy(),d=null}),i=s(),"function"==typeof o?e.use(o,i):o=i,i;var i};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.es.js CHANGED
@@ -1,2 +1,2 @@
1
- import{render as e,createComponent as r,use as t,template as n}from"solid-js/web";import{onMount as o,createEffect as d,onCleanup as i}from"solid-js";import{SimpleTableVanilla as a}from"simple-table-core";function c(e,r){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&r.indexOf(n)<0&&(t[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)r.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(t[n[o]]=e[n[o]])}return t}function l(t){return n=>{const o=document.createElement("div");return e(()=>r(t,n),o),o}}function s(r){const t=document.createElement("div");return e(()=>r,t),t}function f(r){const t=document.createElement("div");return e(()=>r,t),t.innerHTML}function u(e){return"function"==typeof e}function p(e){const{cellRenderer:r,headerRenderer:t,children:n,nestedTable:o}=e,d=c(e,["cellRenderer","headerRenderer","children","nestedTable"]),i=Object.assign({},d);if(r&&(i.cellRenderer=l(r)),t&&(i.headerRenderer=l(t)),n&&(i.children=n.map(p)),o){const e=Object.assign(Object.assign({},o),{rows:[]});i.nestedTable=m(e)}return i}function m(e){const{defaultHeaders:r,footerRenderer:t,emptyStateRenderer:n,errorStateRenderer:o,loadingStateRenderer:d,tableEmptyStateRenderer:i,headerDropdown:a,columnEditorConfig:m,icons:R}=e,b=c(e,["defaultHeaders","footerRenderer","emptyStateRenderer","errorStateRenderer","loadingStateRenderer","tableEmptyStateRenderer","headerDropdown","columnEditorConfig","icons","ref"]),y=Object.assign(Object.assign({},b),{defaultHeaders:r.map(p)});if(void 0!==t&&(y.footerRenderer=l(t)),void 0!==n)if(u(n))y.emptyStateRenderer=l(n);else{const e=n;y.emptyStateRenderer=()=>s(e)}if(void 0!==o)if(u(o))y.errorStateRenderer=l(o);else{const e=o;y.errorStateRenderer=()=>s(e)}if(void 0!==d)if(u(d))y.loadingStateRenderer=l(d);else{const e=d;y.loadingStateRenderer=()=>s(e)}return void 0!==i&&(y.tableEmptyStateRenderer=null===i?null:s(i)),void 0!==a&&(y.headerDropdown=l(a)),void 0!==m&&(y.columnEditorConfig=function(e){const{rowRenderer:r}=e,t=c(e,["rowRenderer"]);return Object.assign(Object.assign({},t),r?{rowRenderer:l(r)}:{})}(m)),void 0!==R&&(y.icons=function(e){const r={};for(const[t,n]of Object.entries(e))null!=n&&(r[t]="string"==typeof n||n instanceof HTMLElement||n instanceof SVGElement?n:f(n));return r}(R)),y}"function"==typeof SuppressedError&&SuppressedError;var R=n("<div>");function b(e){let r,n=null;return o(()=>{n=new a(r,m(e)),n.mount(),e.ref&&e.ref(n.getAPI())}),d(()=>{n&&n.update(m(e))}),i(()=>{null==n||n.destroy(),n=null}),c=R(),"function"==typeof r?t(r,c):r=c,c;var c}export{b as SimpleTable};
1
+ import{render as e,createComponent as r,use as t,template as n}from"solid-js/web";import{onMount as o,createEffect as d,onCleanup as i}from"solid-js";import{SimpleTableVanilla as c}from"simple-table-core";function a(e,r){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&r.indexOf(n)<0&&(t[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)r.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(t[n[o]]=e[n[o]])}return t}function s(t){return n=>{const o=document.createElement("div");return e(()=>r(t,n),o),o}}function l(r){const t=document.createElement("div");return e(()=>r,t),t}function f(r){const t=document.createElement("div");return e(()=>r,t),t.innerHTML}function u(e){return"function"==typeof e}function p(e){const{cellRenderer:r,headerRenderer:t,children:n,nestedTable:o}=e,d=a(e,["cellRenderer","headerRenderer","children","nestedTable"]),i=Object.assign({},d);if(r&&(i.cellRenderer=s(r)),t&&(i.headerRenderer=s(t)),n&&(i.children=n.map(p)),o){const e=Object.assign(Object.assign({},o),{rows:[]});i.nestedTable=m(e)}return i}function m(e){const{defaultHeaders:r,footerRenderer:t,emptyStateRenderer:n,errorStateRenderer:o,loadingStateRenderer:d,tableEmptyStateRenderer:i,headerDropdown:c,columnEditorConfig:m,icons:R}=e,b=a(e,["defaultHeaders","footerRenderer","emptyStateRenderer","errorStateRenderer","loadingStateRenderer","tableEmptyStateRenderer","headerDropdown","columnEditorConfig","icons","ref"]),y=Object.assign(Object.assign({},b),{defaultHeaders:r.map(p)});if(void 0!==t&&(y.footerRenderer=s(t)),void 0!==n)if(u(n))y.emptyStateRenderer=s(n);else{const e=n;y.emptyStateRenderer=()=>l(e)}if(void 0!==o)if(u(o))y.errorStateRenderer=s(o);else{const e=o;y.errorStateRenderer=()=>l(e)}if(void 0!==d)if(u(d))y.loadingStateRenderer=s(d);else{const e=d;y.loadingStateRenderer=()=>l(e)}return void 0!==i&&(y.tableEmptyStateRenderer=null===i?null:l(i)),void 0!==c&&(y.headerDropdown=s(c)),void 0!==m&&(y.columnEditorConfig=function(e){const{rowRenderer:r,customRenderer:t}=e,n=a(e,["rowRenderer","customRenderer"]);return Object.assign(Object.assign(Object.assign({},n),r?{rowRenderer:s(r)}:{}),t?{customRenderer:s(t)}:{})}(m)),void 0!==R&&(y.icons=function(e){const r={};for(const[t,n]of Object.entries(e))null!=n&&(r[t]="string"==typeof n||n instanceof HTMLElement||n instanceof SVGElement?n:f(n));return r}(R)),y}"function"==typeof SuppressedError&&SuppressedError;var R=n("<div>");function b(e){let r,n=null;return o(()=>{n=new c(r,m(e)),n.mount(),e.ref&&e.ref(n.getAPI())}),d(()=>{n&&n.update(m(e))}),i(()=>{null==n||n.destroy(),n=null}),a=R(),"function"==typeof r?t(r,a):r=a,a;var a}export{b as SimpleTable};
2
2
  //# sourceMappingURL=index.es.js.map
@@ -1,5 +1,7 @@
1
1
  import { SimpleTableConfig } from "../../types/SimpleTableConfig";
2
2
  import { CustomTheme } from "../../types/CustomTheme";
3
+ import { ColumnEditorRowRenderer } from "../../types/ColumnEditorRowRendererProps";
4
+ import { ColumnEditorCustomRenderer } from "../../types/ColumnEditorCustomRendererProps";
3
5
  import HeaderObject, { Accessor } from "../../types/HeaderObject";
4
6
  export interface ResolvedIcons {
5
7
  drag: string | HTMLElement | SVGSVGElement;
@@ -18,7 +20,8 @@ export interface MergedColumnEditorConfig {
18
20
  searchPlaceholder: string;
19
21
  allowColumnPinning: boolean;
20
22
  searchFunction?: (header: HeaderObject, searchText: string) => boolean;
21
- rowRenderer?: any;
23
+ rowRenderer?: ColumnEditorRowRenderer;
24
+ customRenderer?: ColumnEditorCustomRenderer;
22
25
  }
23
26
  export declare class TableInitializer {
24
27
  static resolveIcons(config: SimpleTableConfig): ResolvedIcons;
@@ -31,6 +31,7 @@ import type HeaderRendererProps from "./types/HeaderRendererProps";
31
31
  import type { HeaderRenderer, HeaderRendererComponents } from "./types/HeaderRendererProps";
32
32
  import type ColumnEditorRowRendererProps from "./types/ColumnEditorRowRendererProps";
33
33
  import type { ColumnEditorRowRenderer, ColumnEditorRowRendererComponents } from "./types/ColumnEditorRowRendererProps";
34
+ import type { ColumnEditorCustomRendererProps, ColumnEditorCustomRenderer } from "./types/ColumnEditorCustomRendererProps";
34
35
  import type HeaderDropdownProps from "./types/HeaderDropdownProps";
35
36
  import type { HeaderDropdown } from "./types/HeaderDropdownProps";
36
37
  import type { RowButtonProps } from "./types/RowButton";
@@ -45,4 +46,4 @@ import type { SimpleTableProps } from "./types/SimpleTableProps";
45
46
  import type { RowId } from "./types/RowId";
46
47
  import type { PinnedSectionsState } from "./types/PinnedSectionsState";
47
48
  export { SimpleTableVanilla };
48
- export type { Accessor, AggregationConfig, AggregationType, BoundingBox, Cell, CellChangeProps, CellClickProps, CellRenderer, CellRendererProps, CellValue, ChartOptions, ColumnEditorConfig, ColumnEditorRowRenderer, ColumnEditorRowRendererComponents, ColumnEditorRowRendererProps, ColumnEditorSearchFunction, ColumnType, ColumnVisibilityState, Comparator, ComparatorProps, CustomTheme, CustomThemeProps, DragHandlerProps, EmptyStateRenderer, EmptyStateRendererProps, EnumOption, ErrorStateRenderer, ErrorStateRendererProps, ExportToCSVProps, ExportValueGetter, ExportValueProps, FilterCondition, FooterRendererProps, GetRowId, GetRowIdParams, IconsConfig, LoadingStateRenderer, LoadingStateRendererProps, HeaderDropdown, HeaderDropdownProps, HeaderObject, HeaderRenderer, HeaderRendererProps, HeaderRendererComponents, OnRowGroupExpandProps, OnSortProps, QuickFilterConfig, QuickFilterGetter, QuickFilterGetterProps, QuickFilterMode, Row, RowButtonProps, RowId, RowSelectionChangeProps, RowState, SetHeaderRenameProps, SharedTableProps, ShowWhen, SimpleTableConfig, SimpleTableProps, SortColumn, TableAPI, TableFilterState, TableHeaderProps, TableRefType, TableRowProps, Theme, PinnedSectionsState, UpdateDataProps, ValueFormatter, ValueFormatterProps, ValueGetter, ValueGetterProps, };
49
+ export type { Accessor, AggregationConfig, AggregationType, BoundingBox, Cell, CellChangeProps, CellClickProps, CellRenderer, CellRendererProps, CellValue, ChartOptions, ColumnEditorConfig, ColumnEditorCustomRenderer, ColumnEditorCustomRendererProps, ColumnEditorRowRenderer, ColumnEditorRowRendererComponents, ColumnEditorRowRendererProps, ColumnEditorSearchFunction, ColumnType, ColumnVisibilityState, Comparator, ComparatorProps, CustomTheme, CustomThemeProps, DragHandlerProps, EmptyStateRenderer, EmptyStateRendererProps, EnumOption, ErrorStateRenderer, ErrorStateRendererProps, ExportToCSVProps, ExportValueGetter, ExportValueProps, FilterCondition, FooterRendererProps, GetRowId, GetRowIdParams, IconsConfig, LoadingStateRenderer, LoadingStateRendererProps, HeaderDropdown, HeaderDropdownProps, HeaderObject, HeaderRenderer, HeaderRendererProps, HeaderRendererComponents, OnRowGroupExpandProps, OnSortProps, QuickFilterConfig, QuickFilterGetter, QuickFilterGetterProps, QuickFilterMode, Row, RowButtonProps, RowId, RowSelectionChangeProps, RowState, SetHeaderRenameProps, SharedTableProps, ShowWhen, SimpleTableConfig, SimpleTableProps, SortColumn, TableAPI, TableFilterState, TableHeaderProps, TableRefType, TableRowProps, Theme, PinnedSectionsState, UpdateDataProps, ValueFormatter, ValueFormatterProps, ValueGetter, ValueGetterProps, };
@@ -1,5 +1,6 @@
1
1
  import HeaderObject from "./HeaderObject";
2
2
  import { ColumnEditorRowRenderer } from "./ColumnEditorRowRendererProps";
3
+ import { ColumnEditorCustomRenderer } from "./ColumnEditorCustomRendererProps";
3
4
  /**
4
5
  * Custom search function for filtering columns in the column editor
5
6
  * @param header - The header object to check
@@ -26,7 +27,9 @@ export interface ColumnEditorConfig {
26
27
  allowColumnPinning?: boolean;
27
28
  /** Custom renderer for column editor row layout to reposition icons and labels */
28
29
  rowRenderer?: ColumnEditorRowRenderer;
30
+ /** Custom renderer for the entire column editor panel. Receives pre-built sections (search, list, reset) and headers. */
31
+ customRenderer?: ColumnEditorCustomRenderer;
29
32
  }
30
- export declare const DEFAULT_COLUMN_EDITOR_CONFIG: Required<Omit<ColumnEditorConfig, "searchFunction" | "rowRenderer">>;
33
+ export declare const DEFAULT_COLUMN_EDITOR_CONFIG: Required<Omit<ColumnEditorConfig, "searchFunction" | "rowRenderer" | "customRenderer">>;
31
34
  /** Column editor config with defaults applied (text, searchEnabled, searchPlaceholder are required) */
32
- export type MergedColumnEditorConfig = Required<Pick<ColumnEditorConfig, "text" | "searchEnabled" | "searchPlaceholder" | "allowColumnPinning">> & Pick<ColumnEditorConfig, "searchFunction" | "rowRenderer">;
35
+ export type MergedColumnEditorConfig = Required<Pick<ColumnEditorConfig, "text" | "searchEnabled" | "searchPlaceholder" | "allowColumnPinning">> & Pick<ColumnEditorConfig, "searchFunction" | "rowRenderer" | "customRenderer">;
@@ -0,0 +1,14 @@
1
+ import type HeaderObject from "./HeaderObject";
2
+ export interface ColumnEditorCustomRendererProps {
3
+ /** The current headers array */
4
+ headers: HeaderObject[];
5
+ /** Pre-built search input section, or null if search is disabled */
6
+ searchSection: HTMLElement | null;
7
+ /** Pre-built column list section with drag-and-drop, checkboxes, etc. */
8
+ listSection: HTMLElement;
9
+ /** Pre-built reset button section, or null if no default headers are configured */
10
+ resetSection: HTMLElement | null;
11
+ /** Function to reset columns to their default configuration */
12
+ resetColumns?: () => void;
13
+ }
14
+ export type ColumnEditorCustomRenderer = (props: ColumnEditorCustomRendererProps) => HTMLElement | string | null;
@@ -1,3 +1,3 @@
1
1
  export { SimpleTable } from "./SimpleTable";
2
- export type { SimpleTableSolidProps, TableInstance, SolidHeaderObject, SolidColumnEditorConfig, SolidIconsConfig, SolidIconElement, SolidCellRenderer, SolidHeaderRenderer, SolidFooterRenderer, SolidHeaderDropdown, SolidColumnEditorRowRenderer, SolidLoadingStateRenderer, SolidErrorStateRenderer, SolidEmptyStateRenderer, } from "./types";
3
- export type { Accessor, AggregationConfig, AggregationType, BoundingBox, Cell, CellChangeProps, CellClickProps, CellRendererProps, CellValue, ChartOptions, ColumnEditorConfig, ColumnEditorRowRenderer, ColumnEditorRowRendererComponents, ColumnEditorRowRendererProps, ColumnEditorSearchFunction, ColumnType, ColumnVisibilityState, Comparator, ComparatorProps, CustomTheme, CustomThemeProps, DragHandlerProps, EmptyStateRenderer, EmptyStateRendererProps, EnumOption, ErrorStateRenderer, ErrorStateRendererProps, ExportToCSVProps, ExportValueGetter, ExportValueProps, FilterCondition, FooterRendererProps, GetRowId, GetRowIdParams, HeaderDropdown, HeaderDropdownProps, HeaderObject, HeaderRenderer, HeaderRendererComponents, HeaderRendererProps, IconsConfig, LoadingStateRenderer, LoadingStateRendererProps, OnRowGroupExpandProps, OnSortProps, QuickFilterConfig, QuickFilterGetter, QuickFilterGetterProps, QuickFilterMode, Row, RowButtonProps, RowId, RowSelectionChangeProps, RowState, SetHeaderRenameProps, SharedTableProps, ShowWhen, SimpleTableConfig, SimpleTableProps, SortColumn, TableAPI, TableFilterState, TableHeaderProps, TableRowProps, Theme, UpdateDataProps, ValueFormatter, ValueFormatterProps, ValueGetter, ValueGetterProps, } from "simple-table-core";
2
+ export type { SimpleTableSolidProps, TableInstance, SolidHeaderObject, SolidColumnEditorConfig, SolidIconsConfig, SolidIconElement, SolidCellRenderer, SolidHeaderRenderer, SolidFooterRenderer, SolidHeaderDropdown, SolidColumnEditorRowRenderer, SolidColumnEditorCustomRenderer, SolidLoadingStateRenderer, SolidErrorStateRenderer, SolidEmptyStateRenderer, } from "./types";
3
+ export type { Accessor, AggregationConfig, AggregationType, BoundingBox, Cell, CellChangeProps, CellClickProps, CellRendererProps, CellValue, ChartOptions, ColumnEditorConfig, ColumnEditorRowRenderer, ColumnEditorRowRendererComponents, ColumnEditorCustomRenderer, ColumnEditorCustomRendererProps, ColumnEditorRowRendererProps, ColumnEditorSearchFunction, ColumnType, ColumnVisibilityState, Comparator, ComparatorProps, CustomTheme, CustomThemeProps, DragHandlerProps, EmptyStateRenderer, EmptyStateRendererProps, EnumOption, ErrorStateRenderer, ErrorStateRendererProps, ExportToCSVProps, ExportValueGetter, ExportValueProps, FilterCondition, FooterRendererProps, GetRowId, GetRowIdParams, HeaderDropdown, HeaderDropdownProps, HeaderObject, HeaderRenderer, HeaderRendererComponents, HeaderRendererProps, IconsConfig, LoadingStateRenderer, LoadingStateRendererProps, OnRowGroupExpandProps, OnSortProps, QuickFilterConfig, QuickFilterGetter, QuickFilterGetterProps, QuickFilterMode, Row, RowButtonProps, RowId, RowSelectionChangeProps, RowState, SetHeaderRenameProps, SharedTableProps, ShowWhen, SimpleTableConfig, SimpleTableProps, SortColumn, TableAPI, TableFilterState, TableHeaderProps, TableRowProps, Theme, UpdateDataProps, ValueFormatter, ValueFormatterProps, ValueGetter, ValueGetterProps, } from "simple-table-core";
@@ -1,5 +1,5 @@
1
1
  import type { Component, JSX } from "solid-js";
2
- import type { SimpleTableProps, SimpleTableConfig, HeaderObject, TableAPI, CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, ColumnEditorConfig } from "simple-table-core";
2
+ import type { SimpleTableProps, SimpleTableConfig, HeaderObject, TableAPI, CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, ColumnEditorCustomRendererProps, ColumnEditorConfig } from "simple-table-core";
3
3
  export interface TableInstance {
4
4
  mount(): void;
5
5
  update(config: Partial<SimpleTableConfig>): void;
@@ -25,11 +25,13 @@ export type SolidHeaderRenderer = Component<HeaderRendererProps>;
25
25
  export type SolidFooterRenderer = Component<FooterRendererProps>;
26
26
  export type SolidHeaderDropdown = Component<HeaderDropdownProps>;
27
27
  export type SolidColumnEditorRowRenderer = Component<ColumnEditorRowRendererProps>;
28
+ export type SolidColumnEditorCustomRenderer = Component<ColumnEditorCustomRendererProps>;
28
29
  export type SolidLoadingStateRenderer = Component<LoadingStateRendererProps> | JSX.Element;
29
30
  export type SolidErrorStateRenderer = Component<ErrorStateRendererProps> | JSX.Element;
30
31
  export type SolidEmptyStateRenderer = Component<EmptyStateRendererProps> | JSX.Element;
31
- export interface SolidColumnEditorConfig extends Omit<ColumnEditorConfig, "rowRenderer"> {
32
+ export interface SolidColumnEditorConfig extends Omit<ColumnEditorConfig, "rowRenderer" | "customRenderer"> {
32
33
  rowRenderer?: SolidColumnEditorRowRenderer;
34
+ customRenderer?: SolidColumnEditorCustomRenderer;
33
35
  }
34
36
  export interface SolidHeaderObject extends Omit<HeaderObject, "cellRenderer" | "headerRenderer" | "children" | "nestedTable"> {
35
37
  cellRenderer?: SolidCellRenderer;
@@ -50,4 +52,4 @@ export interface SimpleTableSolidProps extends Omit<SimpleTableProps, "tableRef"
50
52
  /** Callback ref — receives the TableAPI once the table is mounted. */
51
53
  ref?: (api: TableAPI) => void;
52
54
  }
53
- export type { CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, };
55
+ export type { CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, ColumnEditorCustomRendererProps, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simple-table/solid",
3
- "version": "3.0.0-beta.15",
3
+ "version": "3.0.0-beta.16",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/index.es.js",
6
6
  "types": "dist/types/solid/src/index.d.ts",
@@ -28,7 +28,7 @@
28
28
  "solid-js": ">=1.0.0"
29
29
  },
30
30
  "dependencies": {
31
- "simple-table-core": "3.0.0-beta.15"
31
+ "simple-table-core": "3.0.0-beta.16"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@babel/preset-typescript": "^7.28.5",