Skip to content

Commit

Permalink
fix avatar dropdown missing textValue (#66)
Browse files Browse the repository at this point in the history
  • Loading branch information
Enalmada authored Jan 4, 2024
1 parent b1c72b6 commit 3bc9495
Show file tree
Hide file tree
Showing 13 changed files with 49 additions and 23 deletions.
5 changes: 5 additions & 0 deletions .changeset/eighty-kings-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@enalmada/nextui-admin": patch
---

configurable sort and page descriptors
5 changes: 5 additions & 0 deletions .changeset/hot-seahorses-shop.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@enalmada/nextui-admin": patch
---

fix avatar dropdown missing textValue
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1 @@
bun.lockb binary
*.lockb binary diff=lockb
2 changes: 0 additions & 2 deletions build.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
/// <reference types="bun-types" />

import {
bunBuild,
getSourceFiles,
Expand Down
Binary file modified bun.lockb
Binary file not shown.
4 changes: 2 additions & 2 deletions dist/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ import { type DropdownItemConfig, type UserConfig, type UserDropdownConfig } fro
import { type AdminNavHeader } from './sidebar/companies-dropdown';
import { type SidebarSectionConfig } from './sidebar/sidebar';
import { TableWrapper, type PageDescriptor, type TableColumnProps } from './table/TableWrapper';
import { useTableWrapper } from './table/useTableWrapper';
import { useTableWrapper, type UseTableWrapperParams } from './table/useTableWrapper';
export { Layout, TableWrapper, useTableWrapper };
export type { SidebarSectionConfig, AdminNavHeader, UserDropdownConfig, DropdownItemConfig, UserConfig, PageDescriptor, SortDescriptor, TableColumnProps, };
export type { SidebarSectionConfig, AdminNavHeader, UserDropdownConfig, DropdownItemConfig, UserConfig, PageDescriptor, SortDescriptor, TableColumnProps, UseTableWrapperParams };
4 changes: 3 additions & 1 deletion dist/navbar/user-dropdown.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,13 @@ var UserDropdown = ({ userDropdownConfig }) => {
}, item.key, true, undefined, this);
}
return jsxDEV(DropdownItem, {
color: item.color,
color: item.color || "default",
textValue: item.label,
children: item.label
}, item.key, false, undefined, this);
});
dropdownItems.push(jsxDEV(DropdownItem, {
textValue: "Dark Mode Switch",
children: jsxDEV(DarkModeSwitch, {}, undefined, false, undefined, this)
}, "switch", false, undefined, this));
return jsxDEV(Dropdown, {
Expand Down
6 changes: 5 additions & 1 deletion dist/table/useTableWrapper.d.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
import React from 'react';
import { type SortDescriptor } from '@nextui-org/react';
import { type PageDescriptor, type TableWrapperProps } from './TableWrapper';
export declare function useTableWrapper<T>(): {
export interface UseTableWrapperParams {
defaultSortDescriptor?: SortDescriptor;
defaultPageDescriptor?: PageDescriptor;
}
export declare function useTableWrapper<T>({ defaultSortDescriptor, defaultPageDescriptor }?: UseTableWrapperParams): {
TableWrapperComponent: React.FC<TableWrapperProps<T>>;
sortDescriptor: SortDescriptor;
setSortDescriptor: React.Dispatch<React.SetStateAction<SortDescriptor>>;
Expand Down
8 changes: 5 additions & 3 deletions dist/table/useTableWrapper.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
// src/table/useTableWrapper.tsx
import {useState} from "react";
import {TableWrapper as TableWrapper2} from "./TableWrapper";
function useTableWrapper() {
function useTableWrapper({ defaultSortDescriptor, defaultPageDescriptor } = {}) {
const [sortDescriptor, setSortDescriptor] = useState({
column: "id",
direction: "descending"
direction: "descending",
...defaultSortDescriptor
});
const [pageDescriptor, setPageDescriptor] = useState({
page: 1,
pageSize: 50
pageSize: 15,
...defaultPageDescriptor
});
const TableWrapperComponent = (props) => {
return jsxDEV(TableWrapper2, {
Expand Down
15 changes: 7 additions & 8 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,22 +21,21 @@
"@changesets/cli": "2.27.1",
"@enalmada/bun-externals": "0.0.6",
"@ianvs/prettier-plugin-sort-imports": "4.1.1",
"@scaleway/changesets-renovate": "1.3.2",
"@types/node": "20.10.5",
"@types/react": "18.2.45",
"@typescript-eslint/eslint-plugin": "6.15.0",
"@typescript-eslint/parser": "6.15.0",
"bun-types": "1.0.18",
"@scaleway/changesets-renovate": "1.4.0",
"@types/node": "20.10.6",
"@types/react": "18.2.46",
"@typescript-eslint/eslint-plugin": "6.17.0",
"@typescript-eslint/parser": "6.17.0",
"cross-env": "7.0.3",
"eslint": "8.56.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.1.0",
"eslint-plugin-prettier": "5.1.2",
"fixpack": "4.0.0",
"husky": "8.0.3",
"lint-staged": "15.2.0",
"prettier": "3.1.1",
"typescript": "5.3.3",
"vitest": "1.1.0"
"vitest": "1.1.1"
},
"peerDependencies": {
"@nextui-org/react": "^2.1.13",
Expand Down
3 changes: 2 additions & 1 deletion src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import {
import { type AdminNavHeader } from './sidebar/companies-dropdown';
import { type SidebarSectionConfig } from './sidebar/sidebar';
import { TableWrapper, type PageDescriptor, type TableColumnProps } from './table/TableWrapper';
import { useTableWrapper } from './table/useTableWrapper';
import { useTableWrapper, type UseTableWrapperParams } from './table/useTableWrapper';

export { Layout, TableWrapper, useTableWrapper };

Expand All @@ -22,4 +22,5 @@ export type {
PageDescriptor,
SortDescriptor,
TableColumnProps,
UseTableWrapperParams,
};
4 changes: 2 additions & 2 deletions src/navbar/user-dropdown.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -54,15 +54,15 @@ export const UserDropdown = ({ userDropdownConfig }: Props) => {
);
}
return (
<DropdownItem key={item.key} color={item.color}>
<DropdownItem key={item.key} color={item.color || 'default'} textValue={item.label}>
{item.label}
</DropdownItem>
);
});

// Add the DarkModeSwitch as another DropdownItem
dropdownItems.push(
<DropdownItem key="switch">
<DropdownItem key="switch" textValue="Dark Mode Switch">
<DarkModeSwitch />
</DropdownItem>
);
Expand Down
14 changes: 12 additions & 2 deletions src/table/useTableWrapper.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,25 @@ import { type SortDescriptor } from '@nextui-org/react';

import { TableWrapper, type PageDescriptor, type TableWrapperProps } from './TableWrapper';

export function useTableWrapper<T>() {
export interface UseTableWrapperParams {
defaultSortDescriptor?: SortDescriptor;
defaultPageDescriptor?: PageDescriptor;
}

export function useTableWrapper<T>({
defaultSortDescriptor,
defaultPageDescriptor,
}: UseTableWrapperParams = {}) {
const [sortDescriptor, setSortDescriptor] = useState<SortDescriptor>({
column: 'id',
direction: 'descending',
...defaultSortDescriptor,
});

const [pageDescriptor, setPageDescriptor] = useState<PageDescriptor>({
page: 1,
pageSize: 50,
pageSize: 15,
...defaultPageDescriptor,
});

const TableWrapperComponent: React.FC<TableWrapperProps<T>> = (props) => {
Expand Down

0 comments on commit 3bc9495

Please sign in to comment.