Files
twenty/packages/twenty-front/src/modules/side-panel/hooks/useOpenFrontComponentInSidePanel.ts
T
Raphaël Bosi c596a5e342 Rename twenty-ui to twenty-ui-deprecated and twenty-new-ui to twenty-ui to prepare package release (#21315)
## Description

Promotes the next-gen UI library (formerly `twenty-new-ui`) to the name
**`twenty-ui`** (v0.1.0, publishable) and renames the old package to
**`twenty-ui-deprecated`**. Rewrites ~1,730 `twenty-ui` imports →
`twenty-ui-deprecated`, updates all configs/CI/Docker/deps, and migrates
twenty-front's `Toggle` to the new package (first consumer) as a
drop-in.

## Next steps
- Wire the `ui/v*` publish dispatch (`cd-deploy-tag.yaml` +
`.yarnrc.yml`), then tag `ui/v0.1.0` to publish.
- Continue migrating components from `twenty-ui-deprecated` →
`twenty-ui`.
2026-06-08 18:12:28 +02:00

58 lines
1.6 KiB
TypeScript

import { useSidePanelMenu } from '@/side-panel/hooks/useSidePanelMenu';
import { viewableFrontComponentIdComponentState } from '@/side-panel/pages/front-component/states/viewableFrontComponentIdComponentState';
import { viewableFrontComponentRecordContextComponentState } from '@/side-panel/pages/front-component/states/viewableFrontComponentRecordContextComponentState';
import { useStore } from 'jotai';
import { SidePanelPages } from 'twenty-shared/types';
import { type IconComponent } from 'twenty-ui-deprecated/display';
import { v4 } from 'uuid';
export const useOpenFrontComponentInSidePanel = () => {
const store = useStore();
const { navigateSidePanelMenu } = useSidePanelMenu();
const openFrontComponentInSidePanel = ({
frontComponentId,
pageTitle,
pageIcon,
resetNavigationStack = false,
recordContext,
}: {
frontComponentId: string;
pageTitle: string;
pageIcon: IconComponent;
resetNavigationStack?: boolean;
recordContext?: {
recordId: string;
objectNameSingular: string;
};
}) => {
const pageComponentInstanceId = v4();
store.set(
viewableFrontComponentIdComponentState.atomFamily({
instanceId: pageComponentInstanceId,
}),
frontComponentId,
);
store.set(
viewableFrontComponentRecordContextComponentState.atomFamily({
instanceId: pageComponentInstanceId,
}),
recordContext ?? null,
);
navigateSidePanelMenu({
page: SidePanelPages.ViewFrontComponent,
pageTitle,
pageIcon,
pageId: pageComponentInstanceId,
resetNavigationStack,
});
};
return {
openFrontComponentInSidePanel,
};
};