@stackone/malachite 0.7.0 → 0.9.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.
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ import { default as default_2 } from 'react';
4
4
  import { FC } from 'react';
5
5
  import { FieldPath } from 'react-hook-form';
6
6
  import { FieldValues } from 'react-hook-form';
7
+ import { JSX as JSX_2 } from 'react/jsx-runtime';
7
8
  import { ReactNode } from 'react';
8
9
  import { UseFormReturn } from 'react-hook-form';
9
10
 
@@ -447,6 +448,12 @@ declare interface MalachiteContextProps {
447
448
  }
448
449
 
449
450
  export declare interface MalachiteTheme {
451
+ radius: {
452
+ sm: string;
453
+ md: string;
454
+ lg: string;
455
+ xl: string;
456
+ };
450
457
  shadows: {
451
458
  sm: string;
452
459
  md: string;
@@ -599,6 +606,26 @@ export declare interface MalachiteTheme {
599
606
  shadow: string;
600
607
  };
601
608
  };
609
+ table: {
610
+ header: {
611
+ background: string;
612
+ foreground: string;
613
+ border: string;
614
+ };
615
+ row: {
616
+ background: string;
617
+ foreground: string;
618
+ hoverBackground: string;
619
+ border: string;
620
+ };
621
+ border: string;
622
+ error: {
623
+ iconBackground: string;
624
+ iconForeground: string;
625
+ titleForeground: string;
626
+ subtitleForeground: string;
627
+ };
628
+ };
602
629
  text: {
603
630
  primary: string;
604
631
  secondary: string;
@@ -644,6 +671,8 @@ declare interface PaddedProps {
644
671
 
645
672
  declare type PaddingSize = 'small' | 'medium' | 'large' | 'none';
646
673
 
674
+ declare type PaddingSize_2 = 'default' | 'compact';
675
+
647
676
  declare interface PageTitleProps {
648
677
  children: default_2.ReactNode;
649
678
  margin?: string;
@@ -652,6 +681,7 @@ declare interface PageTitleProps {
652
681
  }
653
682
 
654
683
  export declare interface PartialMalachiteTheme {
684
+ radius?: Partial<MalachiteTheme['radius']>;
655
685
  shadows?: Partial<MalachiteTheme['shadows']>;
656
686
  colors?: {
657
687
  shadowColor?: string;
@@ -669,6 +699,7 @@ export declare interface PartialMalachiteTheme {
669
699
  buttonList?: Partial<MalachiteTheme['colors']['buttonList']>;
670
700
  pillButton?: Partial<MalachiteTheme['colors']['pillButton']>;
671
701
  tag?: Partial<MalachiteTheme['colors']['tag']>;
702
+ table?: Partial<MalachiteTheme['colors']['table']>;
672
703
  text?: Partial<MalachiteTheme['colors']['text']>;
673
704
  codeBlock?: Partial<MalachiteTheme['colors']['codeBlock']>;
674
705
  };
@@ -755,6 +786,112 @@ declare interface StatisticValueProps {
755
786
  style?: default_2.CSSProperties;
756
787
  }
757
788
 
789
+ export declare const Table: <T extends Record<string, unknown> = Record<string, unknown>>({ columns, data, loading, error, errorTitle, errorSubTitle, showHeader, rowKey, scrollHeight, size, layout, rowClassName, onRow, rowSelection, pagination, className, style, }: TableProps<T>) => JSX_2.Element;
790
+
791
+ export declare type TableColumnDefinition<T = Record<string, unknown>> = {
792
+ title: string | default_2.ReactNode;
793
+ dataIndex: keyof T;
794
+ key: string;
795
+ width?: string | number;
796
+ ellipsis?: boolean;
797
+ render?: (value: unknown, record?: T, index?: number) => default_2.ReactNode;
798
+ sorter?: boolean | ((a: T, b: T) => number);
799
+ sortIcon?: (props: {
800
+ sortOrder: 'desc' | 'asc' | null;
801
+ }) => default_2.ReactNode;
802
+ onHeaderCell?: (data: T, index?: number) => default_2.HTMLAttributes<HTMLTableCellElement> | default_2.TdHTMLAttributes<HTMLTableCellElement>;
803
+ defaultSortOrder?: 'ascend' | 'descend';
804
+ sortDirections?: ('ascend' | 'descend')[];
805
+ fixed?: 'left' | 'right';
806
+ align?: 'left' | 'center' | 'right';
807
+ };
808
+
809
+ export declare type TableColumns<T = Record<string, unknown>> = TableColumnDefinition<T>[];
810
+
811
+ export declare type TablePaginationPosition = 'topLeft' | 'topCenter' | 'topRight' | 'bottomLeft' | 'bottomCenter' | 'bottomRight';
812
+
813
+ declare type TableProps<T = Record<string, unknown>> = {
814
+ columns: TableColumns<T>;
815
+ data: T[];
816
+ loading?: boolean;
817
+ error?: boolean;
818
+ errorTitle?: string;
819
+ errorSubTitle?: string;
820
+ bordered?: boolean;
821
+ showHeader?: boolean;
822
+ rowKey?: string | ((record: T) => string);
823
+ scrollHeight?: string | number;
824
+ type?: TableType;
825
+ size?: TableSize;
826
+ layout?: 'fixed' | 'auto';
827
+ rowClassName?: (record: T, index: number) => string;
828
+ onRow?: (record: T, index: number) => TableRowActions<T>;
829
+ rowSelection?: TableRowSelection<T>;
830
+ pagination?: {
831
+ current?: number;
832
+ pageSize?: number;
833
+ total?: number;
834
+ showSizeChanger?: boolean;
835
+ showQuickJumper?: boolean;
836
+ showTotal?: (total: number, range: [number, number]) => default_2.ReactNode;
837
+ pageSizeOptions?: string[];
838
+ position?: TablePaginationPosition[];
839
+ onChange?: (page: number, pageSize: number) => void;
840
+ onShowSizeChange?: (current: number, size: number) => void;
841
+ };
842
+ className?: string;
843
+ style?: default_2.CSSProperties;
844
+ };
845
+
846
+ declare type TableRowActions<T = Record<string, unknown>> = {
847
+ onClick?: (record: T, index: number) => void;
848
+ onDoubleClick?: (record: T, index: number) => void;
849
+ onContextMenu?: (record: T, index: number) => void;
850
+ onMouseEnter?: (record: T, index: number) => void;
851
+ onMouseLeave?: (record: T, index: number) => void;
852
+ };
853
+
854
+ export declare type TableRowSelection<T = Record<string, unknown>> = {
855
+ type?: 'checkbox' | 'radio';
856
+ selectedRowKeys?: default_2.Key[];
857
+ onChange?: (selectedRowKeys: default_2.Key[], selectedRows: T[]) => void;
858
+ onSelect?: (record: T, selected: boolean, selectedRows: T[], nativeEvent: Event) => void;
859
+ onSelectAll?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void;
860
+ getCheckboxProps?: (record: T) => {
861
+ disabled?: boolean;
862
+ name?: string;
863
+ };
864
+ hideSelectAll?: boolean;
865
+ preserveSelectedRowKeys?: boolean;
866
+ fixed?: boolean;
867
+ columnWidth?: string | number;
868
+ columnTitle?: string | default_2.ReactNode;
869
+ selections?: boolean | default_2.ReactNode[];
870
+ };
871
+
872
+ export declare type TableSize = 'small' | 'medium' | 'large';
873
+
874
+ export declare type TableType = 'default' | 'compact' | 'bordered';
875
+
876
+ export declare const Tag: default_2.FC<TagProps>;
877
+
878
+ export declare interface TagProps {
879
+ value: string | number | default_2.ReactNode;
880
+ type?: TagType;
881
+ bordered?: boolean;
882
+ shadow?: boolean;
883
+ textTransform?: 'none' | 'uppercase';
884
+ width?: WidthSize;
885
+ paddingSize?: PaddingSize_2;
886
+ icon?: default_2.ReactNode;
887
+ iconPosition?: 'left' | 'right';
888
+ pointerType?: 'pointer' | 'default';
889
+ onClick?: () => void;
890
+ className?: string;
891
+ }
892
+
893
+ export declare type TagType = 'primary' | 'secondary' | 'default' | 'error' | 'warning' | 'success';
894
+
758
895
  declare interface TerminalTextProps {
759
896
  bold?: boolean;
760
897
  size?: FontSize;
@@ -841,4 +978,6 @@ export declare const Typography: {
841
978
  Text: FC<TextProps>;
842
979
  };
843
980
 
981
+ export declare type WidthSize = 'large' | 'medium' | 'small' | 'xsmall';
982
+
844
983
  export { }