sti-antd-package 0.0.37 → 0.0.38

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.
@@ -3,7 +3,7 @@ import { TableAsyncSearchItem } from "./Search";
3
3
  import { AnyObject } from "antd/es/_util/type";
4
4
  import { ColumnGroupType, ColumnType, TableRowSelection } from "antd/es/table/interface";
5
5
  import { Ref } from "react";
6
- export type DefaultColumn = (ColumnType | ColumnGroupType);
6
+ export type DefaultColumn<RecordType = AnyObject> = (ColumnType<RecordType> | ColumnGroupType<RecordType>);
7
7
  export interface DefaultParams {
8
8
  page?: number;
9
9
  per_page?: number;
@@ -11,12 +11,12 @@ export interface DefaultParams {
11
11
  sort_order?: 'asc' | 'desc';
12
12
  q?: string;
13
13
  }
14
- export type YajraColumn = ColumnType & {
14
+ export type YajraColumn<RecordType = AnyObject> = ColumnType<RecordType> & {
15
15
  dataIndex?: string | string[];
16
16
  dataIndexName?: string | string[];
17
17
  searchable?: boolean;
18
18
  orderable?: boolean;
19
- children?: YajraColumn[];
19
+ children?: YajraColumn<RecordType>[];
20
20
  };
21
21
  export interface YajraSearchParams {
22
22
  value: string;
@@ -36,13 +36,13 @@ export interface TableAsyncSearchContextType {
36
36
  }>>;
37
37
  }
38
38
  export type TableAsyncType = "default" | "yajra";
39
- interface YajraTableProps {
39
+ interface YajraTableProps<RecordType = AnyObject> {
40
40
  type: "yajra";
41
- columns: YajraColumn[];
41
+ columns: YajraColumn<RecordType>[];
42
42
  }
43
- interface DefaultTableProps {
43
+ interface DefaultTableProps<RecordType = AnyObject> {
44
44
  type: "default";
45
- columns: DefaultColumn[];
45
+ columns: DefaultColumn<RecordType>[];
46
46
  }
47
47
  export interface TableParamsFormatter {
48
48
  current?: number;
@@ -50,7 +50,7 @@ export interface TableParamsFormatter {
50
50
  sorter?: SorterResult<AnyObject> | SorterResult<AnyObject>[];
51
51
  search?: string;
52
52
  }
53
- export type TableAsyncSearchProviderProps = (YajraTableProps | DefaultTableProps) & {
53
+ export type TableAsyncSearchProviderProps<RecordType = AnyObject> = (YajraTableProps<RecordType> | DefaultTableProps<RecordType>) & {
54
54
  type: TableAsyncType;
55
55
  noPagination?: boolean;
56
56
  name?: string;
package/dist/index.d.ts CHANGED
@@ -906,13 +906,13 @@ interface TableAsyncSearchContextType {
906
906
  }>>;
907
907
  }
908
908
  type TableAsyncType = "default" | "yajra";
909
- interface YajraTableProps {
909
+ interface YajraTableProps<RecordType = AnyObject> {
910
910
  type: "yajra";
911
- columns: YajraColumn[];
911
+ columns: YajraColumn<RecordType>[];
912
912
  }
913
- interface DefaultTableProps {
913
+ interface DefaultTableProps<RecordType = AnyObject> {
914
914
  type: "default";
915
- columns: DefaultColumn[];
915
+ columns: DefaultColumn<RecordType>[];
916
916
  }
917
917
  interface TableParamsFormatter {
918
918
  current?: number;
@@ -920,7 +920,7 @@ interface TableParamsFormatter {
920
920
  sorter?: SorterResult<AnyObject> | SorterResult<AnyObject>[];
921
921
  search?: string;
922
922
  }
923
- type TableAsyncSearchProviderProps = (YajraTableProps | DefaultTableProps) & {
923
+ type TableAsyncSearchProviderProps<RecordType = AnyObject> = (YajraTableProps<RecordType> | DefaultTableProps<RecordType>) & {
924
924
  type: TableAsyncType;
925
925
  noPagination?: boolean;
926
926
  name?: string;
@@ -944,7 +944,7 @@ declare const TableRowProvider: React$1.FC<TableRowProviderProps>;
944
944
 
945
945
  declare const useTableRow: () => TableRowContextType;
946
946
 
947
- type DefaultColumn = (ColumnType | ColumnGroupType);
947
+ type DefaultColumn<RecordType = AnyObject> = (ColumnType<RecordType> | ColumnGroupType<RecordType>);
948
948
  interface DefaultParams {
949
949
  page?: number;
950
950
  per_page?: number;
@@ -952,12 +952,12 @@ interface DefaultParams {
952
952
  sort_order?: 'asc' | 'desc';
953
953
  q?: string;
954
954
  }
955
- type YajraColumn = ColumnType & {
955
+ type YajraColumn<RecordType = AnyObject> = ColumnType<RecordType> & {
956
956
  dataIndex?: string | string[];
957
957
  dataIndexName?: string | string[];
958
958
  searchable?: boolean;
959
959
  orderable?: boolean;
960
- children?: YajraColumn[];
960
+ children?: YajraColumn<RecordType>[];
961
961
  };
962
962
  interface YajraSearchParams {
963
963
  value: string;
package/dist/index.esm.js CHANGED
@@ -4106,7 +4106,9 @@ const FeedbackProvider = ({ children }) => {
4106
4106
  return (jsxRuntimeExports.jsxs(FeedbackContext.Provider, { value: value, children: [messageContext, notificationContext, children, modalContext, jsxRuntimeExports.jsx(Spin, { fullscreen: true, spinning: loading, rootClassName: styleFeedback['z-10000'] })] }));
4107
4107
  };
4108
4108
 
4109
- const TableAsyncSearchContext = createContext({});
4109
+ const TableAsyncSearchContext = createContext({
4110
+ params: () => ({}),
4111
+ });
4110
4112
  const useTableAsyncSearch = () => useContext(TableAsyncSearchContext);
4111
4113
 
4112
4114
  const TableAsyncSearchProvider = props => {
@@ -8414,9 +8416,9 @@ const TableComponent = ({ noPagination, buttonReload, buttonAdd, buttonMiddle, b
8414
8416
  classNames: classNamesClone,
8415
8417
  });
8416
8418
  };
8417
- return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsxs(Row, { className: styleTable['row-top'], children: [jsxRuntimeExports.jsxs(Col, Object.assign({}, styleProps$1.col, { children: [buttonReload && (jsxRuntimeExports.jsx(ButtonComponent$1, { tooltip: !buttonReload.text ? { title: 'Reload' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$1, {}), classNames: [styleTable['button']], loading: loading, onClick: buttonReload.onClick, href: buttonReload.href, children: buttonReload.text ? 'Reload' : undefined })), buttonAdd && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonAdd.text ? { title: 'Add' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$5, {}), classNames: [styleTable['button']], disabled: buttonAdd.disabled, onClick: buttonAdd.onClick, href: buttonAdd.href, children: buttonAdd.text ? 'Add' : undefined })), (_b = buttonMiddle === null || buttonMiddle === void 0 ? void 0 : buttonMiddle.map) === null || _b === void 0 ? void 0 : _b.call(buttonMiddle, buttonMiddleClone), buttonDelete && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonDelete.text ? { title: 'Delete' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$b, {}), classNames: [styleTable['button']], disabled: buttonDelete.disabled || loading, onClick: event => { var _a; (_a = buttonDelete.onClick) === null || _a === void 0 ? void 0 : _a.call(buttonDelete, event, undefined); }, children: buttonDelete.text ? 'Delete' : undefined }))] })), jsxRuntimeExports.jsxs(Col, Object.assign({}, styleProps$1.col, { children: [search && (jsxRuntimeExports.jsx(InputComponent$1, { noItem: true, placeholder: "Search", classNames: [styleTable['input-search']], readOnly: loading, onChange: search.onChange, onPressEnter: search.onPressEnter, suffix: jsxRuntimeExports.jsx(RefIcon$2, { onClick: search.onSearch }), allowClear: {
8419
+ return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [(buttonReload || buttonAdd || buttonMiddle || buttonDelete || search || buttonFilter) && (jsxRuntimeExports.jsxs(Row, { className: styleTable['row-top'], children: [jsxRuntimeExports.jsxs(Col, Object.assign({}, styleProps$1.col, { children: [buttonReload && (jsxRuntimeExports.jsx(ButtonComponent$1, { tooltip: !buttonReload.text ? { title: 'Reload' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$1, {}), classNames: [styleTable['button']], loading: loading, onClick: buttonReload.onClick, href: buttonReload.href, children: buttonReload.text ? 'Reload' : undefined })), buttonAdd && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonAdd.text ? { title: 'Add' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$5, {}), classNames: [styleTable['button']], disabled: buttonAdd.disabled, onClick: buttonAdd.onClick, href: buttonAdd.href, children: buttonAdd.text ? 'Add' : undefined })), (_b = buttonMiddle === null || buttonMiddle === void 0 ? void 0 : buttonMiddle.map) === null || _b === void 0 ? void 0 : _b.call(buttonMiddle, buttonMiddleClone), buttonDelete && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonDelete.text ? { title: 'Delete' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$b, {}), classNames: [styleTable['button']], disabled: buttonDelete.disabled || loading, onClick: event => { var _a; (_a = buttonDelete.onClick) === null || _a === void 0 ? void 0 : _a.call(buttonDelete, event, undefined); }, children: buttonDelete.text ? 'Delete' : undefined }))] })), jsxRuntimeExports.jsxs(Col, Object.assign({}, styleProps$1.col, { children: [search && (jsxRuntimeExports.jsx(InputComponent$1, { noItem: true, placeholder: "Search", classNames: [styleTable['input-search']], readOnly: loading, onChange: search.onChange, onPressEnter: search.onPressEnter, suffix: jsxRuntimeExports.jsx(RefIcon$2, { onClick: search.onSearch }), allowClear: {
8418
8420
  clearIcon: (jsxRuntimeExports.jsx(RefIcon$e, { onClick: search.onClear })),
8419
- } })), buttonFilter] }))] }), jsxRuntimeExports.jsx(Table, { showSorterTooltip: true, tableLayout: "fixed", className: "table-data", rowClassName: rowClassName, size: size !== null && size !== void 0 ? size : 'middle', columns: columns, rowKey: rowKey !== null && rowKey !== void 0 ? rowKey : 'id', dataSource: data, expandable: expandable, pagination: !noPagination && Object.assign({ pageSizeOptions: ['10', '20', '50', '100', '200'], showSizeChanger: true, showQuickJumper: true, showTotal: (total, range) => `${range[0]}-${range[1]} of ${total} items` }, pagination), loading: loading, scroll: scroll !== null && scroll !== void 0 ? scroll : { y: 'calc(100vh - 300px)' }, sticky: sticky, components: components, summary: summary, onChange: onChange, rowSelection: rowSelectionTable, style: style })] }));
8421
+ } })), buttonFilter] }))] })), jsxRuntimeExports.jsx(Table, { showSorterTooltip: true, tableLayout: "fixed", className: "table-data", rowClassName: rowClassName, size: size !== null && size !== void 0 ? size : 'middle', columns: columns, rowKey: rowKey !== null && rowKey !== void 0 ? rowKey : 'id', dataSource: data, expandable: expandable, pagination: !noPagination && Object.assign({ pageSizeOptions: ['10', '20', '50', '100', '200'], showSizeChanger: true, showQuickJumper: true, showTotal: (total, range) => `${range[0]}-${range[1]} of ${total} items` }, pagination), loading: loading, scroll: scroll !== null && scroll !== void 0 ? scroll : { y: 'calc(100vh - 300px)' }, sticky: sticky, components: components, summary: summary, onChange: onChange, rowSelection: rowSelectionTable, style: style })] }));
8420
8422
  };
8421
8423
  var TableComponent$1 = React__default.memo(TableComponent);
8422
8424
 
package/dist/index.js CHANGED
@@ -4125,7 +4125,9 @@ const FeedbackProvider = ({ children }) => {
4125
4125
  return (jsxRuntimeExports.jsxs(FeedbackContext.Provider, { value: value, children: [messageContext, notificationContext, children, modalContext, jsxRuntimeExports.jsx(antd.Spin, { fullscreen: true, spinning: loading, rootClassName: styleFeedback['z-10000'] })] }));
4126
4126
  };
4127
4127
 
4128
- const TableAsyncSearchContext = React.createContext({});
4128
+ const TableAsyncSearchContext = React.createContext({
4129
+ params: () => ({}),
4130
+ });
4129
4131
  const useTableAsyncSearch = () => React.useContext(TableAsyncSearchContext);
4130
4132
 
4131
4133
  const TableAsyncSearchProvider = props => {
@@ -8433,9 +8435,9 @@ const TableComponent = ({ noPagination, buttonReload, buttonAdd, buttonMiddle, b
8433
8435
  classNames: classNamesClone,
8434
8436
  });
8435
8437
  };
8436
- return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsxs(antd.Row, { className: styleTable['row-top'], children: [jsxRuntimeExports.jsxs(antd.Col, Object.assign({}, styleProps$1.col, { children: [buttonReload && (jsxRuntimeExports.jsx(ButtonComponent$1, { tooltip: !buttonReload.text ? { title: 'Reload' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$1, {}), classNames: [styleTable['button']], loading: loading, onClick: buttonReload.onClick, href: buttonReload.href, children: buttonReload.text ? 'Reload' : undefined })), buttonAdd && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonAdd.text ? { title: 'Add' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$5, {}), classNames: [styleTable['button']], disabled: buttonAdd.disabled, onClick: buttonAdd.onClick, href: buttonAdd.href, children: buttonAdd.text ? 'Add' : undefined })), (_b = buttonMiddle === null || buttonMiddle === void 0 ? void 0 : buttonMiddle.map) === null || _b === void 0 ? void 0 : _b.call(buttonMiddle, buttonMiddleClone), buttonDelete && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonDelete.text ? { title: 'Delete' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$b, {}), classNames: [styleTable['button']], disabled: buttonDelete.disabled || loading, onClick: event => { var _a; (_a = buttonDelete.onClick) === null || _a === void 0 ? void 0 : _a.call(buttonDelete, event, undefined); }, children: buttonDelete.text ? 'Delete' : undefined }))] })), jsxRuntimeExports.jsxs(antd.Col, Object.assign({}, styleProps$1.col, { children: [search && (jsxRuntimeExports.jsx(InputComponent$1, { noItem: true, placeholder: "Search", classNames: [styleTable['input-search']], readOnly: loading, onChange: search.onChange, onPressEnter: search.onPressEnter, suffix: jsxRuntimeExports.jsx(RefIcon$2, { onClick: search.onSearch }), allowClear: {
8438
+ return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [(buttonReload || buttonAdd || buttonMiddle || buttonDelete || search || buttonFilter) && (jsxRuntimeExports.jsxs(antd.Row, { className: styleTable['row-top'], children: [jsxRuntimeExports.jsxs(antd.Col, Object.assign({}, styleProps$1.col, { children: [buttonReload && (jsxRuntimeExports.jsx(ButtonComponent$1, { tooltip: !buttonReload.text ? { title: 'Reload' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$1, {}), classNames: [styleTable['button']], loading: loading, onClick: buttonReload.onClick, href: buttonReload.href, children: buttonReload.text ? 'Reload' : undefined })), buttonAdd && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonAdd.text ? { title: 'Add' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$5, {}), classNames: [styleTable['button']], disabled: buttonAdd.disabled, onClick: buttonAdd.onClick, href: buttonAdd.href, children: buttonAdd.text ? 'Add' : undefined })), (_b = buttonMiddle === null || buttonMiddle === void 0 ? void 0 : buttonMiddle.map) === null || _b === void 0 ? void 0 : _b.call(buttonMiddle, buttonMiddleClone), buttonDelete && (jsxRuntimeExports.jsx(ButtonComponent$1, { type: "primary", tooltip: !buttonDelete.text ? { title: 'Delete' } : undefined, icon: jsxRuntimeExports.jsx(RefIcon$b, {}), classNames: [styleTable['button']], disabled: buttonDelete.disabled || loading, onClick: event => { var _a; (_a = buttonDelete.onClick) === null || _a === void 0 ? void 0 : _a.call(buttonDelete, event, undefined); }, children: buttonDelete.text ? 'Delete' : undefined }))] })), jsxRuntimeExports.jsxs(antd.Col, Object.assign({}, styleProps$1.col, { children: [search && (jsxRuntimeExports.jsx(InputComponent$1, { noItem: true, placeholder: "Search", classNames: [styleTable['input-search']], readOnly: loading, onChange: search.onChange, onPressEnter: search.onPressEnter, suffix: jsxRuntimeExports.jsx(RefIcon$2, { onClick: search.onSearch }), allowClear: {
8437
8439
  clearIcon: (jsxRuntimeExports.jsx(RefIcon$e, { onClick: search.onClear })),
8438
- } })), buttonFilter] }))] }), jsxRuntimeExports.jsx(antd.Table, { showSorterTooltip: true, tableLayout: "fixed", className: "table-data", rowClassName: rowClassName, size: size !== null && size !== void 0 ? size : 'middle', columns: columns, rowKey: rowKey !== null && rowKey !== void 0 ? rowKey : 'id', dataSource: data, expandable: expandable, pagination: !noPagination && Object.assign({ pageSizeOptions: ['10', '20', '50', '100', '200'], showSizeChanger: true, showQuickJumper: true, showTotal: (total, range) => `${range[0]}-${range[1]} of ${total} items` }, pagination), loading: loading, scroll: scroll !== null && scroll !== void 0 ? scroll : { y: 'calc(100vh - 300px)' }, sticky: sticky, components: components, summary: summary, onChange: onChange, rowSelection: rowSelectionTable, style: style })] }));
8440
+ } })), buttonFilter] }))] })), jsxRuntimeExports.jsx(antd.Table, { showSorterTooltip: true, tableLayout: "fixed", className: "table-data", rowClassName: rowClassName, size: size !== null && size !== void 0 ? size : 'middle', columns: columns, rowKey: rowKey !== null && rowKey !== void 0 ? rowKey : 'id', dataSource: data, expandable: expandable, pagination: !noPagination && Object.assign({ pageSizeOptions: ['10', '20', '50', '100', '200'], showSizeChanger: true, showQuickJumper: true, showTotal: (total, range) => `${range[0]}-${range[1]} of ${total} items` }, pagination), loading: loading, scroll: scroll !== null && scroll !== void 0 ? scroll : { y: 'calc(100vh - 300px)' }, sticky: sticky, components: components, summary: summary, onChange: onChange, rowSelection: rowSelectionTable, style: style })] }));
8439
8441
  };
8440
8442
  var TableComponent$1 = React.memo(TableComponent);
8441
8443
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "sti-antd-package",
3
3
  "description": "STI ANT Design",
4
- "version": "0.0.37",
4
+ "version": "0.0.38",
5
5
  "type": "module",
6
6
  "module": "dist/index.esm.js",
7
7
  "types": "dist/index.d.ts",