c596a5e342
## 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`.
50 lines
1.5 KiB
TypeScript
50 lines
1.5 KiB
TypeScript
import { JsonList } from '@ui/json-visualizer/components/internal/JsonList';
|
|
import { JsonNode } from '@ui/json-visualizer/components/JsonNode';
|
|
import { JsonTreeContextProvider } from '@ui/json-visualizer/components/JsonTreeContextProvider';
|
|
import { type ShouldExpandNodeInitiallyProps } from '@ui/json-visualizer/contexts/JsonTreeContext';
|
|
import { type GetJsonNodeHighlighting } from '@ui/json-visualizer/types/GetJsonNodeHighlighting';
|
|
import { type JsonValue } from 'type-fest';
|
|
|
|
export const JsonTree = ({
|
|
value,
|
|
getNodeHighlighting,
|
|
shouldExpandNodeInitially,
|
|
emptyArrayLabel,
|
|
emptyObjectLabel,
|
|
emptyStringLabel,
|
|
arrowButtonCollapsedLabel,
|
|
arrowButtonExpandedLabel,
|
|
onNodeValueClick,
|
|
}: {
|
|
value: JsonValue;
|
|
getNodeHighlighting?: GetJsonNodeHighlighting;
|
|
shouldExpandNodeInitially: (
|
|
params: ShouldExpandNodeInitiallyProps,
|
|
) => boolean;
|
|
emptyArrayLabel: string;
|
|
emptyObjectLabel: string;
|
|
emptyStringLabel: string;
|
|
arrowButtonCollapsedLabel: string;
|
|
arrowButtonExpandedLabel: string;
|
|
onNodeValueClick?: (valueAsString: string) => void;
|
|
}) => {
|
|
return (
|
|
<JsonTreeContextProvider
|
|
value={{
|
|
getNodeHighlighting,
|
|
shouldExpandNodeInitially,
|
|
emptyArrayLabel,
|
|
emptyObjectLabel,
|
|
emptyStringLabel,
|
|
arrowButtonCollapsedLabel,
|
|
arrowButtonExpandedLabel,
|
|
onNodeValueClick,
|
|
}}
|
|
>
|
|
<JsonList depth={0}>
|
|
<JsonNode value={value} depth={0} keyPath="" />
|
|
</JsonList>
|
|
</JsonTreeContextProvider>
|
|
);
|
|
};
|