From c91a0236612aff721a4681130ee9a9317140fc21 Mon Sep 17 00:00:00 2001 From: DorijanH Date: Fri, 22 Dec 2023 01:09:16 +0100 Subject: [PATCH 1/4] feat(react-ui): Added changelog config --- packages/react-ui/.changelog.json | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 packages/react-ui/.changelog.json diff --git a/packages/react-ui/.changelog.json b/packages/react-ui/.changelog.json new file mode 100644 index 00000000..ea1c548f --- /dev/null +++ b/packages/react-ui/.changelog.json @@ -0,0 +1,14 @@ +{ + "categories": [ + "ConfirmButton", + "ConfirmDialog", + "DatePicker", + "DateTimeRangePicker", + "DropdownButton", + "PageDrawer", + "SearchHeader", + "Select", + "SplitButton", + "TimeInput" + ] +} \ No newline at end of file From 34e5490c508fcb328a6cc8ae9c3ba0a09b2fbefc Mon Sep 17 00:00:00 2001 From: DorijanH Date: Fri, 22 Dec 2023 01:10:14 +0100 Subject: [PATCH 2/4] feat(react-ui/page-drawer): Added bgColor and rootSx optional props --- packages/react-ui/PageDrawer/PageDrawer.tsx | 36 ++++++++++++++----- ...wer] `bgColor` and `rootSx` optional props | 0 packages/react-ui/temp/react-ui.api.md | 6 +++- 3 files changed, 33 insertions(+), 9 deletions(-) create mode 100644 packages/react-ui/changes/Added [PageDrawer] `bgColor` and `rootSx` optional props diff --git a/packages/react-ui/PageDrawer/PageDrawer.tsx b/packages/react-ui/PageDrawer/PageDrawer.tsx index de04780e..3a18301d 100644 --- a/packages/react-ui/PageDrawer/PageDrawer.tsx +++ b/packages/react-ui/PageDrawer/PageDrawer.tsx @@ -6,8 +6,14 @@ import { type TouchEvent as ReactTouchEvent, type MouseEvent as ReactMouseEvent } from 'react'; -import { Accordion, AccordionDetails, AccordionSummary } from '@mui/material'; -import { Box } from '@mui/system'; +import { + Accordion, + AccordionDetails, + AccordionSummary, + Box, + type SxProps, + type Theme +} from '@mui/material'; import { ExpandMore } from '@mui/icons-material'; const isScrollable = (node: Element) => { @@ -37,12 +43,23 @@ const getScrollParent = (node: Element): Element => { * @public */ export type PageDrawerProps = HTMLAttributes & { + /** + * @defaultValue `primary.dark` + */ color?: string; + /** + * @defaultValue `background.default` + */ + bgColor?: string; expanded?: boolean; height?: number; + /** + * @defaultValue `50` + */ minHeight?: number; onChange?: () => void; onResize?: (height: number | undefined) => void; + rootSx?: SxProps; }; /** @@ -59,7 +76,9 @@ export function PageDrawer({ height, minHeight = 50, onResize, - color, + color = 'primary.dark', + bgColor = 'background.default', + rootSx = {}, ...rest }: PageDrawerProps) { const isResizingRef = useRef(false); @@ -167,7 +186,8 @@ export function PageDrawer({ border: 'none', '&::before': { display: 'none' - } + }, + ...rootSx }} expanded={realExpanded} onChange={handleOnChange} @@ -183,7 +203,7 @@ export function PageDrawer({ minHeight: 32, height: 32, '.MuiAccordionSummary-expandIconWrapper': { - bgcolor: color ?? 'primary.dark', + bgcolor: color, color: 'primary.main', borderRadius: 1 }, @@ -199,7 +219,7 @@ export function PageDrawer({ left: 0, right: 0, bottom: 0, - bgcolor: 'background.default' + bgcolor: bgColor } }} > @@ -207,7 +227,7 @@ export function PageDrawer({ sx={{ borderTop: '1px solid', borderBottom: '1px solid', - borderColor: color ?? 'primary.dark', + borderColor: color, height: 3, width: '100%', position: 'absolute', @@ -219,7 +239,7 @@ export function PageDrawer({ & { color?: string; + bgColor?: string; expanded?: boolean; height?: number; minHeight?: number; onChange?: () => void; onResize?: (height: number | undefined) => void; + rootSx?: SxProps; }; // @public From 0fb48d3f8596d5ef629ba69ee5fd99b9900116ec Mon Sep 17 00:00:00 2001 From: DorijanH Date: Fri, 22 Dec 2023 02:07:33 +0100 Subject: [PATCH 3/4] chore(react-ui/page-drawer): Changed rootSx prop for slots --- packages/react-ui/PageDrawer/PageDrawer.tsx | 20 +++++++++++++++---- ...wer] `bgColor` and `slots` optional props} | 0 packages/react-ui/temp/react-ui.api.md | 14 +++++++++++-- 3 files changed, 28 insertions(+), 6 deletions(-) rename packages/react-ui/changes/{Added [PageDrawer] `bgColor` and `rootSx` optional props => Added [PageDrawer] `bgColor` and `slots` optional props} (100%) diff --git a/packages/react-ui/PageDrawer/PageDrawer.tsx b/packages/react-ui/PageDrawer/PageDrawer.tsx index 3a18301d..ba497993 100644 --- a/packages/react-ui/PageDrawer/PageDrawer.tsx +++ b/packages/react-ui/PageDrawer/PageDrawer.tsx @@ -59,7 +59,17 @@ export type PageDrawerProps = HTMLAttributes & { minHeight?: number; onChange?: () => void; onResize?: (height: number | undefined) => void; - rootSx?: SxProps; + slots?: { + root?: { + sx?: SxProps; + }, + summary?: { + sx?: SxProps; + }, + details?: { + sx?: SxProps; + } + } }; /** @@ -78,7 +88,7 @@ export function PageDrawer({ onResize, color = 'primary.dark', bgColor = 'background.default', - rootSx = {}, + slots = {}, ...rest }: PageDrawerProps) { const isResizingRef = useRef(false); @@ -187,7 +197,7 @@ export function PageDrawer({ '&::before': { display: 'none' }, - ...rootSx + ...(slots.root?.sx ?? {}) }} expanded={realExpanded} onChange={handleOnChange} @@ -220,7 +230,8 @@ export function PageDrawer({ right: 0, bottom: 0, bgcolor: bgColor - } + }, + ...(slots.summary?.sx ?? {}) }} > {children} diff --git a/packages/react-ui/changes/Added [PageDrawer] `bgColor` and `rootSx` optional props b/packages/react-ui/changes/Added [PageDrawer] `bgColor` and `slots` optional props similarity index 100% rename from packages/react-ui/changes/Added [PageDrawer] `bgColor` and `rootSx` optional props rename to packages/react-ui/changes/Added [PageDrawer] `bgColor` and `slots` optional props diff --git a/packages/react-ui/temp/react-ui.api.md b/packages/react-ui/temp/react-ui.api.md index 21b99db3..bb7cbb68 100644 --- a/packages/react-ui/temp/react-ui.api.md +++ b/packages/react-ui/temp/react-ui.api.md @@ -105,7 +105,7 @@ export type DropdownButtonProps = ButtonProps & { }; // @public -export function PageDrawer({ expanded, onChange, children, height, minHeight, onResize, color, bgColor, rootSx, ...rest }: PageDrawerProps): react_jsx_runtime.JSX.Element; +export function PageDrawer({ expanded, onChange, children, height, minHeight, onResize, color, bgColor, slots, ...rest }: PageDrawerProps): react_jsx_runtime.JSX.Element; // @public export type PageDrawerProps = HTMLAttributes & { @@ -116,7 +116,17 @@ export type PageDrawerProps = HTMLAttributes & { minHeight?: number; onChange?: () => void; onResize?: (height: number | undefined) => void; - rootSx?: SxProps; + slots?: { + root?: { + sx?: SxProps; + }; + summary?: { + sx?: SxProps; + }; + details?: { + sx?: SxProps; + }; + }; }; // @public From e56f2f5f3819b9a1e602340ed4d821cf12a8d430 Mon Sep 17 00:00:00 2001 From: Aleksandar Toplek Date: Tue, 1 Apr 2025 16:08:35 +0200 Subject: [PATCH 4/4] Changes --- apps/docs/{.eslintrc.js => .eslintrc.cjs} | 2 +- apps/docs/package.json | 1 + packages/eslint-config-custom/next.js | 2 -- ...esizeObserver not returns correct ref type | 0 .../react-hooks/hooks/useResizeObserver.ts | 4 ++-- packages/react-hooks/temp/react-hooks.api.md | 2 +- packages/react-mui-hooks/package.json | 2 +- packages/react-ui/temp/react-ui.api.md | 7 +++--- pnpm-lock.yaml | 22 +++++++++++++++++++ 9 files changed, 32 insertions(+), 10 deletions(-) rename apps/docs/{.eslintrc.js => .eslintrc.cjs} (62%) create mode 100644 packages/react-hooks/changes/Fixed useResizeObserver not returns correct ref type diff --git a/apps/docs/.eslintrc.js b/apps/docs/.eslintrc.cjs similarity index 62% rename from apps/docs/.eslintrc.js rename to apps/docs/.eslintrc.cjs index 0f33f73a..0e5e86f8 100644 --- a/apps/docs/.eslintrc.js +++ b/apps/docs/.eslintrc.cjs @@ -1,3 +1,3 @@ -export default { +module.exports = { extends: ["custom/next"], }; diff --git a/apps/docs/package.json b/apps/docs/package.json index d9f601e4..d4cf3bd0 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -49,6 +49,7 @@ "@types/node": "22.13.10", "@types/react": "19.0.10", "@types/react-dom": "19.0.4", + "@next/eslint-plugin-next": "15.2.4", "pagefind": "1.3.0", "postcss": "8.5.3", "tailwindcss": "4.0.17", diff --git a/packages/eslint-config-custom/next.js b/packages/eslint-config-custom/next.js index 4b95e4ac..0050d21b 100644 --- a/packages/eslint-config-custom/next.js +++ b/packages/eslint-config-custom/next.js @@ -8,7 +8,6 @@ const project = resolve(process.cwd(), "tsconfig.json"); * * This config extends the Vercel Engineering Style Guide. * For more information, see https://github.com/vercel/style-guide - * */ module.exports = { @@ -18,7 +17,6 @@ module.exports = { "@vercel/style-guide/eslint/browser", "@vercel/style-guide/eslint/react", "@vercel/style-guide/eslint/next", - "eslint-config-turbo", ].map(require.resolve), parserOptions: { project, diff --git a/packages/react-hooks/changes/Fixed useResizeObserver not returns correct ref type b/packages/react-hooks/changes/Fixed useResizeObserver not returns correct ref type new file mode 100644 index 00000000..e69de29b diff --git a/packages/react-hooks/hooks/useResizeObserver.ts b/packages/react-hooks/hooks/useResizeObserver.ts index 1c88190f..b4f01969 100644 --- a/packages/react-hooks/hooks/useResizeObserver.ts +++ b/packages/react-hooks/hooks/useResizeObserver.ts @@ -7,8 +7,8 @@ import { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect'; * @returns The ref. * @public */ -export function useResizeObserver(callback: (element: any, entry: ResizeObserverEntry) => void) { - const ref = useRef(null); +export function useResizeObserver(callback: (element: any, entry: ResizeObserverEntry) => void) { + const ref = useRef(null); useIsomorphicLayoutEffect(() => { const element = ref?.current; diff --git a/packages/react-hooks/temp/react-hooks.api.md b/packages/react-hooks/temp/react-hooks.api.md index 1ce9093c..a1d7997a 100644 --- a/packages/react-hooks/temp/react-hooks.api.md +++ b/packages/react-hooks/temp/react-hooks.api.md @@ -42,7 +42,7 @@ export type UsePromiseResult = { }; // @public -export function useResizeObserver(callback: (element: any, entry: ResizeObserverEntry) => void): react.MutableRefObject; +export function useResizeObserver(callback: (element: any, entry: ResizeObserverEntry) => void): react.RefObject; // (No @packageDocumentation comment for this package) diff --git a/packages/react-mui-hooks/package.json b/packages/react-mui-hooks/package.json index ef148611..8f760ddd 100644 --- a/packages/react-mui-hooks/package.json +++ b/packages/react-mui-hooks/package.json @@ -42,7 +42,7 @@ "peerDependencies": { "@enterwell/react-ui": "^0", "@mui/material": "^6", - "@mui/x-data-grid-pro": "^6", + "@mui/x-data-grid-pro": "^7", "react": "^18", "react-dom": "^18" } diff --git a/packages/react-ui/temp/react-ui.api.md b/packages/react-ui/temp/react-ui.api.md index bd5603ed..e07356d9 100644 --- a/packages/react-ui/temp/react-ui.api.md +++ b/packages/react-ui/temp/react-ui.api.md @@ -17,6 +17,7 @@ import { DatePickerProps as DatePickerProps_2 } from '@mui/x-date-pickers/DatePi import { DialogProps } from '@mui/material'; import { FocusEvent as FocusEvent_2 } from 'react'; import { HTMLAttributes } from 'react'; +import { JSX } from 'react'; import * as react from 'react'; import * as react_jsx_runtime from 'react/jsx-runtime'; import { ReactElement } from 'react'; @@ -109,9 +110,6 @@ export type DropdownButtonProps = Omit & { onClick?: (event: any, value: any) => void; }; -// @public -export function PageDrawer({ expanded, onChange, children, height, minHeight, onResize, color, bgColor, slots, ...rest }: PageDrawerProps): react_jsx_runtime.JSX.Element; - // @public export function ItemAccordion(props: AccordionProps): react_jsx_runtime.JSX.Element; @@ -124,6 +122,9 @@ export function ItemAccordionDetails(props: AccordionDetailsProps): react_jsx_ru // @public export function ItemAccordionSummary(props: AccordionSummaryProps): react_jsx_runtime.JSX.Element; +// @public +export function PageDrawer({ expanded, onChange, children, height, minHeight, onResize, color, bgColor, slots, ...rest }: PageDrawerProps): react_jsx_runtime.JSX.Element; + // @public export type PageDrawerProps = HTMLAttributes & { color?: string; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 663daaba..118c5956 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -96,6 +96,9 @@ importers: specifier: 1.0.7 version: 1.0.7(tailwindcss@4.0.17) devDependencies: + '@next/eslint-plugin-next': + specifier: 15.2.4 + version: 15.2.4 '@tailwindcss/postcss': specifier: 4.0.17 version: 4.0.17 @@ -1285,6 +1288,9 @@ packages: '@next/env@15.2.4': resolution: {integrity: sha512-+SFtMgoiYP3WoSswuNmxJOCwi06TdWE733D+WPjpXIe4LXGULwEaofiiAy6kbS0+XjM5xF5n3lKuBwN2SnqD9g==} + '@next/eslint-plugin-next@15.2.4': + resolution: {integrity: sha512-O8ScvKtnxkp8kL9TpJTTKnMqlkZnS+QxwoQnJwPGBxjBbzd6OVVPEJ5/pMNrktSyXQD/chEfzfFzYLM6JANOOQ==} + '@next/swc-darwin-arm64@15.2.4': resolution: {integrity: sha512-1AnMfs655ipJEDC/FHkSr0r3lXBgpqKo4K1kiwfUf3iE68rDFXZ1TtHdMvf7D0hMItgDZ7Vuq3JgNMbt/+3bYw==} engines: {node: '>= 10'} @@ -3027,6 +3033,10 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} @@ -6653,6 +6663,10 @@ snapshots: '@next/env@15.2.4': {} + '@next/eslint-plugin-next@15.2.4': + dependencies: + fast-glob: 3.3.1 + '@next/swc-darwin-arm64@15.2.4': optional: true @@ -8736,6 +8750,14 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-glob@3.3.1: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5