@nodeblocks/frontend-list-users-block 0.0.2

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.
@@ -0,0 +1,109 @@
1
+ import { InputHTMLAttributes } from "react";
2
+ import { ColumnDef } from "@tanstack/react-table";
3
+ import { IconType, MenuItemProps } from "@basaldev/blocks-frontend-framework";
4
+ import { DefaultBlocks } from "./blocks";
5
+ import "@basaldev/blocks-frontend-framework/dist/style.css";
6
+ import "@fontsource/material-symbols-outlined/400.css";
7
+ import "./list-user.css";
8
+ type InputAction = InputHTMLAttributes<HTMLInputElement> & {
9
+ className?: string;
10
+ /**
11
+ * Default value. This is used for initially setting up the input when used without
12
+ * controlled value. If you want to use controlled value, use `value` prop instead.
13
+ */
14
+ defaultValue?: string;
15
+ /** Error text */
16
+ errorText?: string;
17
+ /** Is input disabled */
18
+ isDisabled?: boolean;
19
+ /** Shows red required mark */
20
+ isRequired?: boolean;
21
+ /** Label of the input field */
22
+ label?: string;
23
+ /** Configurable label weight */
24
+ labelWeight?: "bold" | "regular";
25
+ /** Input name */
26
+ name?: string;
27
+ /** On Input change callback */
28
+ onChange?: (value: string, name?: string) => void;
29
+ /** On enter pressed callback */
30
+ onEnter?: (value: string, name?: string) => void;
31
+ /** Operation onClick callback */
32
+ onOperationClick?: () => void;
33
+ /** Operation text */
34
+ operationText?: string;
35
+ /** Placeholder */
36
+ placeholder?: string;
37
+ /** Text to place after the component */
38
+ postfixText?: string;
39
+ /** Set input to readonly */
40
+ readonly?: boolean;
41
+ /** Input value */
42
+ value?: string;
43
+ };
44
+ type ButtonAction = {
45
+ className: string;
46
+ name?: string;
47
+ label?: string;
48
+ icon?: IconType;
49
+ onClick: () => void;
50
+ };
51
+ type ListUsersProps<TRowData extends {
52
+ [k: string]: any;
53
+ }> = {
54
+ title?: string;
55
+ children?: (props: {
56
+ defaultBlocks: DefaultBlocks;
57
+ }) => {
58
+ blocks: DefaultBlocks;
59
+ [key: string]: any;
60
+ };
61
+ emptyDataView?: {
62
+ message?: string;
63
+ icon?: IconType;
64
+ };
65
+ tableView?: {
66
+ headerRow?: {
67
+ [key: string]: string;
68
+ } & {
69
+ name: string;
70
+ createdAt: string;
71
+ status: string;
72
+ };
73
+ cellData?: {
74
+ [key: string]: string;
75
+ } & {
76
+ statusNotInUse: string;
77
+ statusInUse: string;
78
+ };
79
+ dropdownMenu?: (cell: TRowData) => Array<Omit<MenuItemProps, "onNavigate">>;
80
+ };
81
+ actions?: {
82
+ search?: InputAction;
83
+ filter?: ButtonAction;
84
+ };
85
+ columns?: Array<{
86
+ accessor: (row: TRowData) => unknown;
87
+ props: Omit<ColumnDef<TRowData, any>, "accessorFn" | "accessorKey">;
88
+ }>;
89
+ data?: Array<TRowData>;
90
+ showLoading?: boolean;
91
+ rowHref?: (row: TRowData) => string;
92
+ pagination?: {
93
+ /** Custom class to give the html component */
94
+ className?: string;
95
+ /** Currently selected page in the pagination. Pages are counted from 1. */
96
+ currentPage: number;
97
+ /** Callback when the page is changed */
98
+ onPageChange: (page: number) => void;
99
+ /** Total number of pages in the pagination. */
100
+ totalPages: number;
101
+ };
102
+ className?: string;
103
+ onNavigate?: ((to: string) => void);
104
+ };
105
+ declare const ListUsers: <TRowData extends {
106
+ [k: string]: any;
107
+ }>({ title, showLoading, emptyDataView, tableView, actions, columns, children, data, pagination, rowHref, className, onNavigate }: ListUsersProps<TRowData>) => import("react/jsx-runtime").JSX.Element;
108
+ export default ListUsers;
109
+ //# sourceMappingURL=ListUsers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListUsers.d.ts","sourceRoot":"","sources":["../src/ListUsers.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ export type Block<T extends unknown = {
3
+ [k: string]: any;
4
+ }> = (props: T) => React.ReactNode;
5
+ export type DefaultBlocks = {
6
+ Title: Block<{
7
+ [k: string]: any;
8
+ }>;
9
+ Actions: Block<{
10
+ [k: string]: any;
11
+ }>;
12
+ Table: Block<{
13
+ [k: string]: any;
14
+ }>;
15
+ };
16
+ export type DefaultOptions = {};
17
+ //# sourceMappingURL=blocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../src/blocks.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,OAAO,GAAG;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,IAAI,CAC5D,KAAK,EAAE,CAAC,KACL,KAAK,CAAC,SAAS,CAAC;AAErB,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,KAAK,CAAC;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAAC;IACnC,OAAO,EAAE,KAAK,CAAC;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAAC;IACrC,KAAK,EAAE,KAAK,CAAC;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,EAAE,CAAC"}