@raystack/apsara 0.12.0 → 0.14.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 (35) hide show
  1. package/dist/calendar/calendar.d.ts.map +1 -1
  2. package/dist/calendar/date-picker.d.ts +13 -0
  3. package/dist/calendar/date-picker.d.ts.map +1 -0
  4. package/dist/calendar/index.d.ts +2 -0
  5. package/dist/calendar/index.d.ts.map +1 -1
  6. package/dist/calendar/range-picker.d.ts +15 -0
  7. package/dist/calendar/range-picker.d.ts.map +1 -0
  8. package/dist/errorstate/errorstate.d.ts +2 -1
  9. package/dist/errorstate/errorstate.d.ts.map +1 -1
  10. package/dist/index.cjs +485 -63
  11. package/dist/index.cjs.map +1 -1
  12. package/dist/index.css +40 -1
  13. package/dist/index.d.ts +1 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +484 -64
  16. package/dist/index.js.map +1 -1
  17. package/dist/popover/popover.d.ts.map +1 -1
  18. package/dist/sidebar/sidebar.d.ts +2 -0
  19. package/dist/sidebar/sidebar.d.ts.map +1 -1
  20. package/dist/table/DataTableFilterChips.d.ts.map +1 -1
  21. package/dist/table/FilteredChip.d.ts +3 -1
  22. package/dist/table/FilteredChip.d.ts.map +1 -1
  23. package/dist/table/TableContext.d.ts +3 -0
  24. package/dist/table/TableContext.d.ts.map +1 -1
  25. package/dist/table/datatable.d.ts +4 -3
  26. package/dist/table/datatable.d.ts.map +1 -1
  27. package/dist/table/datatables.types.d.ts +29 -6
  28. package/dist/table/datatables.types.d.ts.map +1 -1
  29. package/dist/table/filterFns.d.ts +11 -0
  30. package/dist/table/filterFns.d.ts.map +1 -0
  31. package/dist/table/hooks/useTable.d.ts +2 -0
  32. package/dist/table/hooks/useTable.d.ts.map +1 -1
  33. package/dist/textfield/textfield.d.ts +15 -2
  34. package/dist/textfield/textfield.d.ts.map +1 -1
  35. package/package.json +3 -1
@@ -1 +1 @@
1
- {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../popover/popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,MAAM,OAAO,CAAC;AAmB1B,eAAO,MAAM,OAAO;;;CAGlB,CAAC"}
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../popover/popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,MAAM,OAAO,CAAC;AAsB1B,eAAO,MAAM,OAAO;;;CAGlB,CAAC"}
@@ -24,6 +24,7 @@ type SidebarNavigationCellProps = PropsWithChildren<VariantProps<typeof cell>> &
24
24
  trailingIcon?: React.ReactNode;
25
25
  children?: React.ReactNode;
26
26
  onClick?: () => void;
27
+ href?: string;
27
28
  };
28
29
  type SidebarFooterProps = {
29
30
  children?: string;
@@ -51,6 +52,7 @@ export declare const Sidebar: (({ children, ...props }: SidebarRootProps) => imp
51
52
  trailingIcon?: React.ReactNode;
52
53
  children?: React.ReactNode;
53
54
  onClick?: (() => void) | undefined;
55
+ href?: string | undefined;
54
56
  } & {
55
57
  asChild?: boolean | undefined;
56
58
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../sidebar/sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAK9B,KAAK,gBAAgB,GAAG,iBAAiB,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAchG,KAAK,gBAAgB,GAAG;IACtB,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAwBF,KAAK,uBAAuB,GAAG,iBAAiB,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;AAY5E,KAAK,4BAA4B,GAAG,iBAAiB,CACnD,YAAY,CAAC,OAAO,IAAI,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CACrE,CAAC;AAsBF,QAAA,MAAM,IAAI;;;mFASR,CAAC;AAEH,KAAK,0BAA0B,GAAG,iBAAiB,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,GAC5E,YAAY,CAAC,OAAO,IAAI,CAAC,GAAG;IAC1B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AA4BJ,KAAK,kBAAkB,GAAG;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB,CAAC;AAWF,eAAO,MAAM,OAAO,4BAzIyB,gBAAgB;8CAyB1D,gBAAgB;0CAqBhB,uBAAuB;0DAgBvB,4BAA4B;;;;;;;;;;;;;;;sBA6Bb,eAAe;uBACd,eAAe;mBACnB,eAAe;yBACV,IAAI;;;;mCAkCqB,kBAAkB;CAe7D,CAAC"}
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../sidebar/sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAI9B,KAAK,gBAAgB,GAAG,iBAAiB,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG;IACrE,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAcF,KAAK,gBAAgB,GAAG;IACtB,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAwBF,KAAK,uBAAuB,GAAG,iBAAiB,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;AAY5E,KAAK,4BAA4B,GAAG,iBAAiB,CACnD,YAAY,CAAC,OAAO,IAAI,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CACrE,CAAC;AAsBF,QAAA,MAAM,IAAI;;;mFASR,CAAC;AAEH,KAAK,0BAA0B,GAAG,iBAAiB,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,GAC5E,YAAY,CAAC,OAAO,IAAI,CAAC,GAAG;IAC1B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AA4BJ,KAAK,kBAAkB,GAAG;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB,CAAC;AAWF,eAAO,MAAM,OAAO,4BA1IyB,gBAAgB;8CAyB1D,gBAAgB;0CAqBhB,uBAAuB;0DAgBvB,4BAA4B;;;;;;;;;;;;;;;sBA6Bb,eAAe;uBACd,eAAe;mBACnB,eAAe;yBACV,IAAI;;;;;mCAmCqB,kBAAkB;CAe7D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableFilterChips.d.ts","sourceRoot":"","sources":["../../table/DataTableFilterChips.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAM9B,KAAK,yBAAyB,GAAG,cAAc,CAAC,OAAO,IAAI,CAAC,CAAC;AAC7D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,kDA4BpE"}
1
+ {"version":3,"file":"DataTableFilterChips.d.ts","sourceRoot":"","sources":["../../table/DataTableFilterChips.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAM9B,KAAK,yBAAyB,GAAG,cAAc,CAAC,OAAO,IAAI,CAAC,CAAC;AAC7D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,kDAkCpE"}
@@ -1,7 +1,9 @@
1
1
  import { Column } from "@tanstack/table-core";
2
+ import { updateColumnFilter } from "./datatables.types";
2
3
  type FilteredChipProps = {
3
4
  column: Column<any, unknown>;
5
+ updateColumnCustomFilter: updateColumnFilter;
4
6
  };
5
- export declare const FilteredChip: ({ column }: FilteredChipProps) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const FilteredChip: ({ column, updateColumnCustomFilter, }: FilteredChipProps) => import("react/jsx-runtime").JSX.Element;
6
8
  export {};
7
9
  //# sourceMappingURL=FilteredChip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilteredChip.d.ts","sourceRoot":"","sources":["../../table/FilteredChip.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAe9C,KAAK,iBAAiB,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,YAAY,eAAgB,iBAAiB,4CA6HzD,CAAC"}
1
+ {"version":3,"file":"FilteredChip.d.ts","sourceRoot":"","sources":["../../table/FilteredChip.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAS9C,OAAO,EAOL,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAK5B,KAAK,iBAAiB,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC7B,wBAAwB,EAAE,kBAAkB,CAAC;CAC9C,CAAC;AAuIF,eAAO,MAAM,YAAY,0CAGtB,iBAAiB,4CAkDnB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import type { OnChangeFn, Table, TableState } from "@tanstack/react-table";
3
+ import { tableFilterMap, updateColumnFilter } from "./datatables.types";
3
4
  export type onTableChangeEvent = (params: TableState & TableFormType) => void;
4
5
  export type TableFormType = {
5
6
  /**
@@ -16,6 +17,8 @@ type TableContextType = {
16
17
  resetColumns: () => void;
17
18
  globalFilter: string;
18
19
  onGlobalFilterChange: OnChangeFn<any>;
20
+ tableCustomFilter: tableFilterMap;
21
+ updateColumnCustomFilter: updateColumnFilter;
19
22
  };
20
23
  export declare const TableContext: import("react").Context<TableContextType | null>;
21
24
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"TableContext.d.ts","sourceRoot":"","sources":["../../table/TableContext.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAG3E,MAAM,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,KAAK,IAAI,CAAC;AAE9E,MAAM,MAAM,aAAa,GAAG;IAC1B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;CAavC,CAAC;AAEF,eAAO,MAAM,YAAY,kDAA+C,CAAC"}
1
+ {"version":3,"file":"TableContext.d.ts","sourceRoot":"","sources":["../../table/TableContext.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAEV,UAAU,EACV,KAAK,EACL,UAAU,EACX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExE,MAAM,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,KAAK,IAAI,CAAC;AAE9E,MAAM,MAAM,aAAa,GAAG;IAC1B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IACtC,iBAAiB,EAAE,cAAc,CAAC;IAClC,wBAAwB,EAAE,kBAAkB,CAAC;CAc9C,CAAC;AAEF,eAAO,MAAM,YAAY,kDAA+C,CAAC"}
@@ -1,4 +1,3 @@
1
- import { ColumnDef } from "@tanstack/react-table";
2
1
  import React, { CSSProperties, ComponentProps, ReactNode } from "react";
3
2
  import { DataTableClearFilter } from "./DataTableClearFilter";
4
3
  import { DataTableFilterChips } from "./DataTableFilterChips";
@@ -8,16 +7,18 @@ import { DataTableGloabalSearch } from "./DataTableGloabalSearch";
8
7
  import { DataTableToolbar } from "./DataTableToolbar";
9
8
  import { DataTableViewOptions } from "./DataTableViewOptions";
10
9
  import { Table } from "./table";
10
+ import { ApsaraColumnDef } from "./datatables.types";
11
11
  type DataTableProps<TData, TValue> = {
12
- columns: ColumnDef<TData, TValue>[];
12
+ columns: ApsaraColumnDef<TData>[];
13
13
  data: TData[];
14
14
  multiRowSelectionEnabled?: boolean;
15
15
  children?: ReactNode;
16
16
  ShouldShowHeader?: boolean;
17
17
  emptyState?: ReactNode;
18
18
  parentStyle?: CSSProperties;
19
+ isLoading?: boolean;
19
20
  } & ComponentProps<typeof Table>;
20
- declare function DataTableRoot<TData, TValue>({ columns, data, emptyState, children, parentStyle, ShouldShowHeader, ...props }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
21
+ declare function DataTableRoot<TData, TValue>({ columns, data, emptyState, children, parentStyle, isLoading, ShouldShowHeader, ...props }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
21
22
  export declare const DataTable: typeof DataTableRoot & {
22
23
  Toolbar: typeof DataTableToolbar;
23
24
  GloabalSearch: typeof DataTableGloabalSearch;
@@ -1 +1 @@
1
- {"version":3,"file":"datatable.d.ts","sourceRoot":"","sources":["../../table/datatable.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EAYV,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,EACZ,aAAa,EAEb,cAAc,EAEd,SAAS,EACV,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAK9D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,KAAK,cAAc,CAAC,KAAK,EAAE,MAAM,IAAI;IACnC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IACpC,IAAI,EAAE,KAAK,EAAE,CAAC;IACd,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,aAAa,CAAC;CAC7B,GAAG,cAAc,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjC,iBAAS,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EACpC,OAAO,EACP,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,WAAW,EACX,gBAAuB,EACvB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,2CA4I/B;AAED,eAAO,MAAM,SAAS;;;;;;;;;CASpB,CAAC"}
1
+ {"version":3,"file":"datatable.d.ts","sourceRoot":"","sources":["../../table/datatable.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,EACZ,aAAa,EAEb,cAAc,EAEd,SAAS,EACV,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAK9D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EACL,eAAe,EAGhB,MAAM,oBAAoB,CAAC;AAG5B,KAAK,cAAc,CAAC,KAAK,EAAE,MAAM,IAAI;IACnC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;IAClC,IAAI,EAAE,KAAK,EAAE,CAAC;IACd,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,cAAc,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjC,iBAAS,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EACpC,OAAO,EACP,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAiB,EACjB,gBAAuB,EACvB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,2CAwK/B;AAED,eAAO,MAAM,SAAS;;;;;;;;;CASpB,CAAC"}
@@ -1,18 +1,41 @@
1
- import { AggregationFn, ColumnDef, DeepKeys, FilterFn } from "@tanstack/table-core";
1
+ import { AccessorFn, AggregationFn, ColumnDef, DeepKeys, FilterFn } from "@tanstack/table-core";
2
2
  import type { ApsaraAggregationFns } from "./helpers/aggregationFns";
3
3
  import type { ApsaraFilterFns } from "./helpers/filterFns";
4
+ import { DateRange } from "react-day-picker";
4
5
  type LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);
5
6
  export type ApsaraFilterOption = LiteralUnion<string & keyof typeof ApsaraFilterFns>;
6
- export type ApsaraFilterFn<TData extends Record<string, any> = {}> = FilterFn<TData> | ApsaraFilterOption;
7
+ export type ApsaraFilterFn<TData> = FilterFn<TData> | ApsaraFilterOption;
7
8
  export type ApsaraAggregationOption = string & keyof typeof ApsaraAggregationFns;
8
- export type ApsaraAggregationFn<TData extends Record<string, any> = {}> = AggregationFn<TData> | ApsaraAggregationOption;
9
- export type ApsaraColumnDef<TData extends Record<string, any> = {}> = Omit<ColumnDef<TData, unknown>, "accessorKey" | "aggregatedCell" | "aggregationFn" | "columns" | "filterFn" | "id" | "sortingFn"> & {
9
+ export type ApsaraAggregationFn<TData> = AggregationFn<TData> | ApsaraAggregationOption;
10
+ export declare const columnTypesMap: {
11
+ readonly select: "select";
12
+ readonly number: "number";
13
+ readonly text: "text";
14
+ readonly date: "date";
15
+ };
16
+ export type columnTypes = keyof typeof columnTypesMap;
17
+ export declare const filterValueTypeMap: {
18
+ readonly select: "select";
19
+ readonly text: "text";
20
+ readonly datePicker: "datePicker";
21
+ readonly rangePicker: "rangePicker";
22
+ };
23
+ export type filterValueType = keyof typeof filterValueTypeMap;
24
+ export type tableFilterMap = Record<string, FilterFn<any>>;
25
+ export type updateColumnFilter = (id: string, fn: FilterFn<any>) => void;
26
+ export interface FilterValue {
27
+ value?: string | number;
28
+ values?: Array<string | number>;
29
+ date?: Date;
30
+ dateRange?: DateRange;
31
+ }
32
+ export type ApsaraColumnDef<TData> = Omit<ColumnDef<TData, any>, "accessorKey" | "aggregatedCell" | "aggregationFn" | "columns" | "filterFn" | "id" | "columnDefType" | "sortingFn" | "filterVariant"> & {
10
33
  id?: LiteralUnion<string & keyof TData>;
11
34
  accessorKey?: DeepKeys<TData>;
12
- accessorFn?: (originalRow: TData) => any;
35
+ accessorFn?: AccessorFn<TData, any>;
13
36
  aggregationFn?: ApsaraAggregationFn<TData> | Array<ApsaraAggregationFn<TData>>;
14
37
  filterFn?: ApsaraFilterFn<TData>;
15
- filterVariant?: "checkbox" | "date" | "date-range" | "multi-select" | "range" | "select" | "text";
38
+ filterVariant?: columnTypes;
16
39
  columnDefType?: "data" | "display" | "group";
17
40
  columns?: ApsaraColumnDef<TData>[];
18
41
  };
@@ -1 +1 @@
1
- {"version":3,"file":"datatables.types.d.ts","sourceRoot":"","sources":["../../table/datatables.types.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,SAAS,EACT,QAAQ,EACR,QAAQ,EACT,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,KAAK,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAE5E,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAC3C,MAAM,GAAG,MAAM,OAAO,eAAe,CACtC,CAAC;AACF,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,IAC7D,QAAQ,CAAC,KAAK,CAAC,GACf,kBAAkB,CAAC;AAEvB,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAC1C,MAAM,OAAO,oBAAoB,CAAC;AACpC,MAAM,MAAM,mBAAmB,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,IAClE,aAAa,CAAC,KAAK,CAAC,GACpB,uBAAuB,CAAC;AAE5B,MAAM,MAAM,eAAe,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,IAAI,CACxE,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,EACvB,aAAa,GACb,gBAAgB,GAChB,eAAe,GACf,SAAS,GACT,UAAU,GACV,IAAI,GACJ,WAAW,CACd,GAAG;IACF,EAAE,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,GAAG,CAAC;IACzC,aAAa,CAAC,EACV,mBAAmB,CAAC,KAAK,CAAC,GAC1B,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IACjC,aAAa,CAAC,EACV,UAAU,GACV,MAAM,GACN,YAAY,GACZ,cAAc,GACd,OAAO,GACP,QAAQ,GACR,MAAM,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC7C,OAAO,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"datatables.types.d.ts","sourceRoot":"","sources":["../../table/datatables.types.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,SAAS,EACT,QAAQ,EACR,QAAQ,EACT,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,KAAK,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAE5E,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAC3C,MAAM,GAAG,MAAM,OAAO,eAAe,CACtC,CAAC;AACF,MAAM,MAAM,cAAc,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC;AAEzE,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAC1C,MAAM,OAAO,oBAAoB,CAAC;AACpC,MAAM,MAAM,mBAAmB,CAAC,KAAK,IACjC,aAAa,CAAC,KAAK,CAAC,GACpB,uBAAuB,CAAC;AAE5B,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,cAAc,CAAC;AAEtD,eAAO,MAAM,kBAAkB;;;;;CAKrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAE9D,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AAE3D,MAAM,MAAM,kBAAkB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,MAAM,eAAe,CAAC,KAAK,IAAI,IAAI,CACvC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,EACnB,aAAa,GACb,gBAAgB,GAChB,eAAe,GACf,SAAS,GACT,UAAU,GACV,IAAI,GACJ,eAAe,GACf,WAAW,GACX,eAAe,CAClB,GAAG;IACF,EAAE,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpC,aAAa,CAAC,EACV,mBAAmB,CAAC,KAAK,CAAC,GAC1B,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IACjC,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC7C,OAAO,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;CACpC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { FilterFn } from "@tanstack/table-core";
2
+ import { columnTypes, FilterValue, filterValueType } from "./datatables.types";
3
+ export interface FilterOperation {
4
+ label: string;
5
+ value: string;
6
+ fn?: FilterFn<FilterValue>;
7
+ hideValueField?: boolean;
8
+ component?: filterValueType;
9
+ }
10
+ export declare const operationsOptions: Record<columnTypes, Array<FilterOperation>>;
11
+ //# sourceMappingURL=filterFns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterFns.d.ts","sourceRoot":"","sources":["../../table/filterFns.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EACL,WAAW,EAEX,WAAW,EACX,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAQ5B,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,CAoKzE,CAAC"}
@@ -7,5 +7,7 @@ export declare const useTable: () => {
7
7
  resetColumns: () => void;
8
8
  globalFilter: string;
9
9
  onGlobalFilterChange: import("@tanstack/table-core").OnChangeFn<any>;
10
+ tableCustomFilter: import("../datatables.types").tableFilterMap;
11
+ updateColumnCustomFilter: import("../datatables.types").updateColumnFilter;
10
12
  };
11
13
  //# sourceMappingURL=useTable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useTable.d.ts","sourceRoot":"","sources":["../../../table/hooks/useTable.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ;;;;;;;;;CAOpB,CAAC"}
1
+ {"version":3,"file":"useTable.d.ts","sourceRoot":"","sources":["../../../table/hooks/useTable.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ;;;;;;;;;;;CAOpB,CAAC"}
@@ -1,12 +1,25 @@
1
1
  import { VariantProps } from "class-variance-authority";
2
- import { InputHTMLAttributes } from "react";
2
+ import { InputHTMLAttributes, PropsWithChildren } from "react";
3
+ declare const textfield: (props?: ({
4
+ size?: "small" | "medium" | null | undefined;
5
+ state?: "invalid" | "valid" | null | undefined;
6
+ hasLeadingElement?: boolean | null | undefined;
7
+ hasTrailingElement?: boolean | null | undefined;
8
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
9
+ export type TextfieldProps = Omit<InputHTMLAttributes<HTMLInputElement>, "size"> & PropsWithChildren<VariantProps<typeof textfield>> & {
10
+ leading?: React.ReactElement;
11
+ trailing?: React.ReactElement;
12
+ };
3
13
  export declare const TextField: import("react").ForwardRefExoticComponent<Omit<InputHTMLAttributes<HTMLInputElement>, "size"> & VariantProps<(props?: ({
4
14
  size?: "small" | "medium" | null | undefined;
5
15
  state?: "invalid" | "valid" | null | undefined;
6
- leading?: boolean | null | undefined;
16
+ hasLeadingElement?: boolean | null | undefined;
17
+ hasTrailingElement?: boolean | null | undefined;
7
18
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string> & {
8
19
  children?: import("react").ReactNode;
9
20
  } & {
10
21
  leading?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
22
+ trailing?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
11
23
  } & import("react").RefAttributes<HTMLInputElement>>;
24
+ export {};
12
25
  //# sourceMappingURL=textfield.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"textfield.d.ts","sourceRoot":"","sources":["../../textfield/textfield.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAc,mBAAmB,EAAqB,MAAM,OAAO,CAAC;AA8B3E,eAAO,MAAM,SAAS;;;;;;;;oDAgBrB,CAAC"}
1
+ {"version":3,"file":"textfield.d.ts","sourceRoot":"","sources":["../../textfield/textfield.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAc,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI3E,QAAA,MAAM,SAAS;;;;;mFAsBb,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,IAAI,CAC/B,mBAAmB,CAAC,gBAAgB,CAAC,EACrC,MAAM,CACP,GACC,iBAAiB,CAAC,YAAY,CAAC,OAAO,SAAS,CAAC,CAAC,GAAG;IAClD,OAAO,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;CAC/B,CAAC;AAEJ,eAAO,MAAM,SAAS;;;;;;;;;;oDAgCrB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raystack/apsara",
3
- "version": "0.12.0",
3
+ "version": "0.14.0",
4
4
  "types": "dist/index.d.ts",
5
5
  "sideEffects": false,
6
6
  "engines": {
@@ -55,6 +55,7 @@
55
55
  "@types/react-select": "^5.0.1",
56
56
  "class-variance-authority": "^0.6.0",
57
57
  "cmdk": "^0.2.0",
58
+ "dayjs": "^1.11.11",
58
59
  "eslint-config-custom": "workspace:*",
59
60
  "np": "^8.0.4",
60
61
  "npm": "^9.7.1",
@@ -75,6 +76,7 @@
75
76
  "@radix-ui/react-toggle-group": "^1.0.4",
76
77
  "@radix-ui/react-tooltip": "^1.0.7",
77
78
  "react-day-picker": "^8.10.0",
79
+ "react-loading-skeleton": "^3.4.0",
78
80
  "release-it": "^16.2.1"
79
81
  }
80
82
  }