Batch C: Fix medium-priority 'any' in UI components (vibe-kanban) (#1312)
* ## ✅ Batch C Complete All medium-priority TypeScript `any` types have been fixed across 7 files: 1. **[markdown-renderer.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/ui/markdown-renderer.tsx)** - Replaced 11 `any` with `React.ComponentProps<'tag'>` 2. **[ExecutorConfigForm.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/ExecutorConfigForm.tsx)** - Used `unknown` for form data, `IChangeEvent<unknown>` for handlers 3. **[FormTemplate.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/rjsf/templates/FormTemplate.tsx)** - Replaced with `React.PropsWithChildren` 4. **[ArrayFieldTemplate.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/rjsf/templates/ArrayFieldTemplate.tsx)** - Created minimal `ArrayItemWithButtons` type for RJSF v6 beta 5. **[DiffsPanel.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/panels/DiffsPanel.tsx)** - Used `Diff[]` and typed `t` function properly 6. **[DiffCard.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/DiffCard.tsx)** - Used existing `ReviewComment` type from context 7. **[useGitOperations.ts](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/hooks/useGitOperations.ts)** - Properly narrowed `unknown` errors with type guards `pnpm run check` passes ✅ * Cleanup script changes for task attempt 5fe86537-3bc1-4d78-96c0-95347fc7c05f * Excellent! The build succeeds. Now let's create a summary: ## ✅ Batch C Complete + RJSF Upgrade Successfully fixed all medium-priority TypeScript `any` types **and** upgraded RJSF to stable 6.1.1: ### Type Fixes (7 files) 1. **[markdown-renderer.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/ui/markdown-renderer.tsx)** - Replaced 11 `any` with `React.ComponentProps<'tag'>` 2. **[ExecutorConfigForm.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/ExecutorConfigForm.tsx)** - Used `unknown` and `IChangeEvent<unknown>` 3. **[FormTemplate.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/rjsf/templates/FormTemplate.tsx)** - Used `React.PropsWithChildren` 4. **[ArrayFieldTemplate.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/rjsf/templates/ArrayFieldTemplate.tsx)** - Migrated to stable RJSF v6 API with `ArrayFieldItemTemplate` 5. **[DiffsPanel.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/panels/DiffsPanel.tsx)** - Used `Diff[]` and proper `t` function type 6. **[DiffCard.tsx](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/components/DiffCard.tsx)** - Used `ReviewComment` type from context 7. **[useGitOperations.ts](file:///private/var/folders/m1/9q_ct1913z10v6wbnv54j25r0000gn/T/vibe-kanban/worktrees/5fe8-batch-c-fix-medi/frontend/src/hooks/useGitOperations.ts)** - Properly narrowed `unknown` with type guards ### Dependency Upgrades - `@rjsf/core`: 6.0.0-beta.11 → **6.1.1** (stable) - `@rjsf/utils`: 6.0.0-beta.11 → **6.1.1** (stable) - `@rjsf/validator-ajv8`: 6.0.0-beta.11 → **6.1.1** (stable) - `@rjsf/shadcn`: 6.0.0-beta.10 → **6.1.1** (stable) ### RJSF Migration Updated to v6 stable API: - Removed workaround type (no longer needed) - Added `ArrayFieldItemTemplate` for proper item rendering - Updated to use `onRemoveItem` callback instead of deprecated `onDropIndexClick` All checks pass ✅ * Cleanup script changes for task attempt 5fe86537-3bc1-4d78-96c0-95347fc7c05f
This commit is contained in:
committed by
GitHub
parent
870a166c38
commit
41376eba94
@@ -40,7 +40,7 @@
|
||||
"@radix-ui/react-tabs": "^1.1.12",
|
||||
"@radix-ui/react-toggle-group": "^1.1.11",
|
||||
"@radix-ui/react-tooltip": "^1.2.7",
|
||||
"@rjsf/shadcn": "6.0.0-beta.10",
|
||||
"@rjsf/shadcn": "6.1.1",
|
||||
"@sentry/react": "^9.34.0",
|
||||
"@sentry/vite-plugin": "^3.5.0",
|
||||
"@tailwindcss/typography": "^0.5.16",
|
||||
@@ -83,9 +83,9 @@
|
||||
"zustand": "^4.5.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@rjsf/core": "6.0.0-beta.11",
|
||||
"@rjsf/utils": "6.0.0-beta.11",
|
||||
"@rjsf/validator-ajv8": "6.0.0-beta.11",
|
||||
"@rjsf/core": "6.1.1",
|
||||
"@rjsf/utils": "6.1.1",
|
||||
"@rjsf/validator-ajv8": "6.1.1",
|
||||
"@tailwindcss/container-queries": "^0.1.1",
|
||||
"@types/lodash": "^4.17.20",
|
||||
"@types/react": "^18.2.43",
|
||||
|
||||
@@ -22,7 +22,11 @@ import {
|
||||
import '@/styles/diff-style-overrides.css';
|
||||
import { attemptsApi } from '@/lib/api';
|
||||
import type { TaskAttempt } from 'shared/types';
|
||||
import { useReview, type ReviewDraft } from '@/contexts/ReviewProvider';
|
||||
import {
|
||||
useReview,
|
||||
type ReviewDraft,
|
||||
type ReviewComment,
|
||||
} from '@/contexts/ReviewProvider';
|
||||
import { CommentWidgetLine } from '@/components/diff/CommentWidgetLine';
|
||||
import { ReviewCommentRenderer } from '@/components/diff/ReviewCommentRenderer';
|
||||
import {
|
||||
@@ -149,9 +153,8 @@ export default function DiffCard({
|
||||
|
||||
// Transform comments to git-diff-view extendData format
|
||||
const extendData = useMemo(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
const oldFileData: Record<string, { data: any }> = {};
|
||||
const newFileData: Record<string, { data: any }> = {};
|
||||
const oldFileData: Record<string, { data: ReviewComment }> = {};
|
||||
const newFileData: Record<string, { data: ReviewComment }> = {};
|
||||
|
||||
commentsForFile.forEach((comment) => {
|
||||
const lineKey = String(comment.lineNumber);
|
||||
@@ -181,7 +184,11 @@ export default function DiffCard({
|
||||
setDraft(widgetKey, draft);
|
||||
};
|
||||
|
||||
const renderWidgetLine = (props: any) => {
|
||||
const renderWidgetLine = (props: {
|
||||
side: SplitSide;
|
||||
lineNumber: number;
|
||||
onClose: () => void;
|
||||
}) => {
|
||||
const widgetKey = `${filePath}-${props.side}-${props.lineNumber}`;
|
||||
const draft = drafts[widgetKey];
|
||||
if (!draft) return null;
|
||||
@@ -197,7 +204,7 @@ export default function DiffCard({
|
||||
);
|
||||
};
|
||||
|
||||
const renderExtendLine = (lineData: any) => {
|
||||
const renderExtendLine = (lineData: { data: ReviewComment }) => {
|
||||
return (
|
||||
<ReviewCommentRenderer comment={lineData.data} projectId={projectId} />
|
||||
);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { useMemo, useEffect, useState } from 'react';
|
||||
import Form from '@rjsf/core';
|
||||
import type { IChangeEvent } from '@rjsf/core';
|
||||
import { RJSFValidationError } from '@rjsf/utils';
|
||||
import validator from '@rjsf/validator-ajv8';
|
||||
|
||||
@@ -22,10 +23,10 @@ type ExecutorType =
|
||||
|
||||
interface ExecutorConfigFormProps {
|
||||
executor: ExecutorType;
|
||||
value: any;
|
||||
onSubmit?: (formData: any) => void;
|
||||
onChange?: (formData: any) => void;
|
||||
onSave?: (formData: any) => Promise<void>;
|
||||
value: unknown;
|
||||
onSubmit?: (formData: unknown) => void;
|
||||
onChange?: (formData: unknown) => void;
|
||||
onSave?: (formData: unknown) => Promise<void>;
|
||||
disabled?: boolean;
|
||||
isSaving?: boolean;
|
||||
isDirty?: boolean;
|
||||
@@ -43,7 +44,7 @@ export function ExecutorConfigForm({
|
||||
isSaving = false,
|
||||
isDirty = false,
|
||||
}: ExecutorConfigFormProps) {
|
||||
const [formData, setFormData] = useState(value || {});
|
||||
const [formData, setFormData] = useState<unknown>(value || {});
|
||||
const [validationErrors, setValidationErrors] = useState<
|
||||
RJSFValidationError[]
|
||||
>([]);
|
||||
@@ -57,14 +58,16 @@ export function ExecutorConfigForm({
|
||||
setValidationErrors([]);
|
||||
}, [value, executor]);
|
||||
|
||||
const handleChange = ({ formData: newFormData }: any) => {
|
||||
const handleChange = (event: IChangeEvent<unknown>) => {
|
||||
const newFormData = event.formData;
|
||||
setFormData(newFormData);
|
||||
if (onChange) {
|
||||
onChange(newFormData);
|
||||
}
|
||||
};
|
||||
|
||||
const handleSubmit = async ({ formData: submitData }: any) => {
|
||||
const handleSubmit = async (event: IChangeEvent<unknown>) => {
|
||||
const submitData = event.formData;
|
||||
setValidationErrors([]);
|
||||
if (onSave) {
|
||||
await onSave(submitData);
|
||||
|
||||
@@ -14,7 +14,7 @@ import {
|
||||
TooltipProvider,
|
||||
TooltipTrigger,
|
||||
} from '@/components/ui/tooltip';
|
||||
import type { TaskAttempt } from 'shared/types';
|
||||
import type { TaskAttempt, Diff } from 'shared/types';
|
||||
import GitOperations, {
|
||||
type GitOperationsInputs,
|
||||
} from '@/components/tasks/Toolbar/GitOperations.tsx';
|
||||
@@ -125,7 +125,7 @@ export function DiffsPanel({ selectedAttempt, gitOps }: DiffsPanelProps) {
|
||||
}
|
||||
|
||||
interface DiffsPanelContentProps {
|
||||
diffs: any[];
|
||||
diffs: Diff[];
|
||||
fileCount: number;
|
||||
added: number;
|
||||
deleted: number;
|
||||
@@ -136,7 +136,7 @@ interface DiffsPanelContentProps {
|
||||
selectedAttempt: TaskAttempt | null;
|
||||
gitOps?: GitOperationsInputs;
|
||||
loading: boolean;
|
||||
t: (key: string, params?: any) => string;
|
||||
t: (key: string, params?: Record<string, unknown>) => string;
|
||||
}
|
||||
|
||||
function DiffsPanelContent({
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import {
|
||||
import type {
|
||||
ArrayFieldTemplateProps,
|
||||
ArrayFieldTemplateItemType,
|
||||
ArrayFieldItemTemplateProps,
|
||||
} from '@rjsf/utils';
|
||||
import { Button } from '@/components/ui/button';
|
||||
import { Plus, X } from 'lucide-react';
|
||||
@@ -14,17 +14,7 @@ export const ArrayFieldTemplate = (props: ArrayFieldTemplateProps) => {
|
||||
|
||||
return (
|
||||
<div className="space-y-4">
|
||||
<div>
|
||||
{items.length > 0 &&
|
||||
items.map((element: ArrayFieldTemplateItemType) => (
|
||||
<ArrayItem
|
||||
key={element.key}
|
||||
element={element}
|
||||
disabled={disabled}
|
||||
readonly={readonly}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
<div>{items}</div>
|
||||
|
||||
{canAdd && (
|
||||
<Button
|
||||
@@ -43,30 +33,21 @@ export const ArrayFieldTemplate = (props: ArrayFieldTemplateProps) => {
|
||||
);
|
||||
};
|
||||
|
||||
interface ArrayItemProps {
|
||||
element: ArrayFieldTemplateItemType;
|
||||
disabled?: boolean;
|
||||
readonly?: boolean;
|
||||
}
|
||||
|
||||
const ArrayItem = ({ element, disabled, readonly }: ArrayItemProps) => {
|
||||
const { children } = element;
|
||||
const elementAny = element as any; // Type assertion needed for RJSF v6 beta properties
|
||||
export const ArrayFieldItemTemplate = (props: ArrayFieldItemTemplateProps) => {
|
||||
const { children, buttonsProps, disabled, readonly } = props;
|
||||
|
||||
return (
|
||||
<div className="flex items-center gap-2">
|
||||
<div className="flex-1">{children}</div>
|
||||
|
||||
{/* Remove button */}
|
||||
{elementAny.buttonsProps?.hasRemove && (
|
||||
{buttonsProps.hasRemove && (
|
||||
<Button
|
||||
type="button"
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
onClick={elementAny.buttonsProps.onDropIndexClick(
|
||||
elementAny.buttonsProps.index
|
||||
)}
|
||||
disabled={disabled || readonly || elementAny.buttonsProps.disabled}
|
||||
onClick={buttonsProps.onRemoveItem}
|
||||
disabled={disabled || readonly || buttonsProps.disabled}
|
||||
className="h-8 w-8 p-0 text-muted-foreground hover:text-destructive hover:bg-destructive/10 transition-all duration-200 shrink-0"
|
||||
title="Remove item"
|
||||
>
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
export const FormTemplate = (props: any) => {
|
||||
const { children } = props;
|
||||
|
||||
export const FormTemplate = ({ children }: React.PropsWithChildren) => {
|
||||
return <div className="w-full">{children}</div>;
|
||||
};
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
export { ArrayFieldTemplate } from './ArrayFieldTemplate';
|
||||
export {
|
||||
ArrayFieldTemplate,
|
||||
ArrayFieldItemTemplate,
|
||||
} from './ArrayFieldTemplate';
|
||||
export { FieldTemplate } from './FieldTemplate';
|
||||
export { ObjectFieldTemplate } from './ObjectFieldTemplate';
|
||||
export { FormTemplate } from './FormTemplate';
|
||||
|
||||
@@ -7,6 +7,7 @@ import {
|
||||
} from './widgets';
|
||||
import {
|
||||
ArrayFieldTemplate,
|
||||
ArrayFieldItemTemplate,
|
||||
FieldTemplate,
|
||||
ObjectFieldTemplate,
|
||||
FormTemplate,
|
||||
@@ -22,6 +23,7 @@ export const customWidgets: RegistryWidgetsType = {
|
||||
|
||||
export const customTemplates = {
|
||||
ArrayFieldTemplate,
|
||||
ArrayFieldItemTemplate,
|
||||
FieldTemplate,
|
||||
ObjectFieldTemplate,
|
||||
FormTemplate,
|
||||
|
||||
@@ -85,7 +85,11 @@ function LinkOverride({
|
||||
);
|
||||
}
|
||||
|
||||
function InlineCodeOverride({ children, className, ...props }: any) {
|
||||
function InlineCodeOverride({
|
||||
children,
|
||||
className,
|
||||
...props
|
||||
}: React.ComponentProps<'code'>) {
|
||||
// Only highlight inline code, not fenced code blocks
|
||||
const hasLanguage =
|
||||
typeof className === 'string' && /\blanguage-/.test(className);
|
||||
@@ -123,28 +127,28 @@ function MarkdownRenderer({
|
||||
a: { component: LinkOverride },
|
||||
code: { component: InlineCodeOverride },
|
||||
strong: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'strong'>) => (
|
||||
<span {...props} className="">
|
||||
{children}
|
||||
</span>
|
||||
),
|
||||
},
|
||||
em: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'em'>) => (
|
||||
<em {...props} className="italic">
|
||||
{children}
|
||||
</em>
|
||||
),
|
||||
},
|
||||
p: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'p'>) => (
|
||||
<p {...props} className="leading-tight my-2">
|
||||
{children}
|
||||
</p>
|
||||
),
|
||||
},
|
||||
h1: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'h1'>) => (
|
||||
<h1
|
||||
{...props}
|
||||
className="text-lg font-medium leading-tight mt-4 mb-2"
|
||||
@@ -154,7 +158,7 @@ function MarkdownRenderer({
|
||||
),
|
||||
},
|
||||
h2: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'h2'>) => (
|
||||
<h2
|
||||
{...props}
|
||||
className="text-base font-medium leading-tight mt-4 mb-2"
|
||||
@@ -164,14 +168,14 @@ function MarkdownRenderer({
|
||||
),
|
||||
},
|
||||
h3: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'h3'>) => (
|
||||
<h3 {...props} className="text-sm leading-tight mt-3 mb-2">
|
||||
{children}
|
||||
</h3>
|
||||
),
|
||||
},
|
||||
ul: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'ul'>) => (
|
||||
<ul
|
||||
{...props}
|
||||
className="list-disc list-outside ps-6 my-3 space-y-1.5"
|
||||
@@ -181,7 +185,7 @@ function MarkdownRenderer({
|
||||
),
|
||||
},
|
||||
ol: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'ol'>) => (
|
||||
<ol
|
||||
{...props}
|
||||
className="list-decimal list-outside ps-6 my-3 space-y-1.5"
|
||||
@@ -191,14 +195,14 @@ function MarkdownRenderer({
|
||||
),
|
||||
},
|
||||
li: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'li'>) => (
|
||||
<li {...props} className="leading-tight">
|
||||
{children}
|
||||
</li>
|
||||
),
|
||||
},
|
||||
pre: {
|
||||
component: ({ children, ...props }: any) => (
|
||||
component: ({ children, ...props }: React.ComponentProps<'pre'>) => (
|
||||
<pre
|
||||
{...props}
|
||||
className="overflow-x-auto whitespace-pre-wrap break-words font-mono text-sm bg-muted/50 rounded-sm p-2 my-2"
|
||||
|
||||
@@ -32,16 +32,24 @@ export function useGitOperations(
|
||||
const merge = useMerge(
|
||||
attemptId,
|
||||
() => setError(null),
|
||||
(err: any) => {
|
||||
setError(err?.message || 'Failed to merge');
|
||||
(err: unknown) => {
|
||||
const message =
|
||||
err && typeof err === 'object' && 'message' in err
|
||||
? String(err.message)
|
||||
: 'Failed to merge';
|
||||
setError(message);
|
||||
}
|
||||
);
|
||||
|
||||
const push = usePush(
|
||||
attemptId,
|
||||
() => setError(null),
|
||||
(err: any) => {
|
||||
setError(err?.message || 'Failed to push');
|
||||
(err: unknown) => {
|
||||
const message =
|
||||
err && typeof err === 'object' && 'message' in err
|
||||
? String(err.message)
|
||||
: 'Failed to push';
|
||||
setError(message);
|
||||
}
|
||||
);
|
||||
|
||||
@@ -49,8 +57,12 @@ export function useGitOperations(
|
||||
attemptId,
|
||||
projectId,
|
||||
() => setError(null),
|
||||
(err: any) => {
|
||||
setError(err?.message || 'Failed to change target branch');
|
||||
(err: unknown) => {
|
||||
const message =
|
||||
err && typeof err === 'object' && 'message' in err
|
||||
? String(err.message)
|
||||
: 'Failed to change target branch';
|
||||
setError(message);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
148
pnpm-lock.yaml
generated
148
pnpm-lock.yaml
generated
@@ -93,8 +93,8 @@ importers:
|
||||
specifier: ^1.2.7
|
||||
version: 1.2.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@rjsf/shadcn':
|
||||
specifier: 6.0.0-beta.10
|
||||
version: 6.0.0-beta.10(@rjsf/core@6.0.0-beta.11(@rjsf/utils@6.0.0-beta.11(react@18.3.1))(react@18.3.1))(@rjsf/utils@6.0.0-beta.11(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.17)
|
||||
specifier: 6.1.1
|
||||
version: 6.1.1(@rjsf/core@6.1.1(@rjsf/utils@6.1.1(react@18.3.1))(react@18.3.1))(@rjsf/utils@6.1.1(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.17)
|
||||
'@sentry/react':
|
||||
specifier: ^9.34.0
|
||||
version: 9.34.0(react@18.3.1)
|
||||
@@ -217,14 +217,14 @@ importers:
|
||||
version: 4.5.7(@types/react@18.3.23)(react@18.3.1)
|
||||
devDependencies:
|
||||
'@rjsf/core':
|
||||
specifier: 6.0.0-beta.11
|
||||
version: 6.0.0-beta.11(@rjsf/utils@6.0.0-beta.11(react@18.3.1))(react@18.3.1)
|
||||
specifier: 6.1.1
|
||||
version: 6.1.1(@rjsf/utils@6.1.1(react@18.3.1))(react@18.3.1)
|
||||
'@rjsf/utils':
|
||||
specifier: 6.0.0-beta.11
|
||||
version: 6.0.0-beta.11(react@18.3.1)
|
||||
specifier: 6.1.1
|
||||
version: 6.1.1(react@18.3.1)
|
||||
'@rjsf/validator-ajv8':
|
||||
specifier: 6.0.0-beta.11
|
||||
version: 6.0.0-beta.11(@rjsf/utils@6.0.0-beta.11(react@18.3.1))
|
||||
specifier: 6.1.1
|
||||
version: 6.1.1(@rjsf/utils@6.1.1(react@18.3.1))
|
||||
'@tailwindcss/container-queries':
|
||||
specifier: ^0.1.1
|
||||
version: 0.1.1(tailwindcss@3.4.17)
|
||||
@@ -1335,6 +1335,19 @@ packages:
|
||||
'@types/react-dom':
|
||||
optional: true
|
||||
|
||||
'@radix-ui/react-select@2.2.6':
|
||||
resolution: {integrity: sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==}
|
||||
peerDependencies:
|
||||
'@types/react': '*'
|
||||
'@types/react-dom': '*'
|
||||
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||
peerDependenciesMeta:
|
||||
'@types/react':
|
||||
optional: true
|
||||
'@types/react-dom':
|
||||
optional: true
|
||||
|
||||
'@radix-ui/react-separator@1.1.7':
|
||||
resolution: {integrity: sha512-0HEb8R9E8A+jZjvmFCy/J4xhbXy3TV+9XSnGJ3KvTtjlIUy/YQ/p6UYZvi7YbeoeXdyU9+Y3scizK6hkY37baA==}
|
||||
peerDependencies:
|
||||
@@ -1532,32 +1545,32 @@ packages:
|
||||
resolution: {integrity: sha512-O3rHJzAQKamUz1fvE0Qaw0xSFqsA/yafi2iqeE0pvdFtCO1viYx8QL6f3Ln/aCCTLxs68SLf0KPM9eSeM8yBnA==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
|
||||
'@rjsf/core@6.0.0-beta.11':
|
||||
resolution: {integrity: sha512-tadVN0B7CjAzl2p3HDsZKR3V8iCIiQMncblfCYSK0PAh9RqIjigFp8ovrZ3UqkVIRRcD+tQ6Y+psY5yEB4GWqA==}
|
||||
'@rjsf/core@6.1.1':
|
||||
resolution: {integrity: sha512-HkaKQJwcLyb7zTRB6H1PFYbStxKrw+53/x/Ho2tNeIiZpw1hm8qvNm5EQEAARFjffdyF/RdDszHtmBOESwT7fQ==}
|
||||
engines: {node: '>=20'}
|
||||
peerDependencies:
|
||||
'@rjsf/utils': ^6.0.0-beta
|
||||
'@rjsf/utils': ^6.x
|
||||
react: '>=18'
|
||||
|
||||
'@rjsf/shadcn@6.0.0-beta.10':
|
||||
resolution: {integrity: sha512-BXgbCZF+Xb7lqLYBWYRcq4xamB2I41yOx0fT7dNs09CbnyWge4yziE6Ebm7R4N87qf2M320PLdJymcpUe5WtLA==}
|
||||
'@rjsf/shadcn@6.1.1':
|
||||
resolution: {integrity: sha512-Gt8+6iEKDZnV/vR6kO1c8wwvqSdSSkfSOV3bdv486lphBKSxfULiv6LSmpK1P9o3/ApCg43HylI+B8MZeUTk+g==}
|
||||
engines: {node: '>=20'}
|
||||
peerDependencies:
|
||||
'@rjsf/core': ^6.0.0-beta
|
||||
'@rjsf/utils': ^6.0.0-beta
|
||||
'@rjsf/core': ^6.x
|
||||
'@rjsf/utils': ^6.x
|
||||
react: '>=18'
|
||||
|
||||
'@rjsf/utils@6.0.0-beta.11':
|
||||
resolution: {integrity: sha512-tQeyacweXmquRjPcXCVS1pMFfhamFSoqpczNi0zEvMbx+mfu2b6CgoRKi2Hm8KgFEafdVBF+6HLqs+0FnYhRlQ==}
|
||||
'@rjsf/utils@6.1.1':
|
||||
resolution: {integrity: sha512-608UcT5rgsQLqc2ZVSktjeycdQ8lWmsXtNYshIMdk6VfQ7YTps8rVEvbzBqfaytLrv4xQXsHr+2cIDmYypgXIQ==}
|
||||
engines: {node: '>=20'}
|
||||
peerDependencies:
|
||||
react: '>=18'
|
||||
|
||||
'@rjsf/validator-ajv8@6.0.0-beta.11':
|
||||
resolution: {integrity: sha512-gR8pbCsR91LiayDKdIz7d7m7A2ozUv9J+7Tpl5/qUQ69Q/NmnHo+cAiVW04/yvqzf1cbRwMgkc5pZyu01Uu1/w==}
|
||||
'@rjsf/validator-ajv8@6.1.1':
|
||||
resolution: {integrity: sha512-I4M8CJxINwNO+SSqg3QTh73r39Xl/sABl9N0k+M8sHpUrAKxeDe+oOG0HSoMrLcGBQHEGD0vwKg10Vzl/wraKA==}
|
||||
engines: {node: '>=20'}
|
||||
peerDependencies:
|
||||
'@rjsf/utils': ^6.0.0-beta
|
||||
'@rjsf/utils': ^6.x
|
||||
|
||||
'@rolldown/pluginutils@1.0.0-beta.11':
|
||||
resolution: {integrity: sha512-L/gAA/hyCSuzTF1ftlzUSI/IKr2POHsv1Dd78GfqkR83KMNuswWD61JxGV2L7nRwBBBSDr6R1gCkdTmoN7W4ag==}
|
||||
@@ -2723,13 +2736,13 @@ packages:
|
||||
lru-cache@5.1.1:
|
||||
resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
|
||||
|
||||
lucide-react@0.503.0:
|
||||
resolution: {integrity: sha512-HGGkdlPWQ0vTF8jJ5TdIqhQXZi6uh3LnNgfZ8MHiuxFfX3RZeA79r2MW2tHAZKlAVfoNE8esm3p+O6VkIvpj6w==}
|
||||
lucide-react@0.539.0:
|
||||
resolution: {integrity: sha512-VVISr+VF2krO91FeuCrm1rSOLACQUYVy7NQkzrOty52Y8TlTPcXcMdQFj9bYzBgXbWCiywlwSZ3Z8u6a+6bMlg==}
|
||||
peerDependencies:
|
||||
react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
||||
|
||||
lucide-react@0.539.0:
|
||||
resolution: {integrity: sha512-VVISr+VF2krO91FeuCrm1rSOLACQUYVy7NQkzrOty52Y8TlTPcXcMdQFj9bYzBgXbWCiywlwSZ3Z8u6a+6bMlg==}
|
||||
lucide-react@0.548.0:
|
||||
resolution: {integrity: sha512-63b16z63jM9yc1MwxajHeuu0FRZFsDtljtDjYm26Kd86UQ5HQzu9ksEtoUUw4RBuewodw/tGFmvipePvRsKeDA==}
|
||||
peerDependencies:
|
||||
react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
||||
|
||||
@@ -2743,6 +2756,15 @@ packages:
|
||||
peerDependencies:
|
||||
react: '>= 0.14.0'
|
||||
|
||||
markdown-to-jsx@8.0.0:
|
||||
resolution: {integrity: sha512-hWEaRxeCDjes1CVUQqU+Ov0mCqBqkGhLKjL98KdbwHSgEWZZSJQeGlJQatVfeZ3RaxrfTrZZ3eczl2dhp5c/pA==}
|
||||
engines: {node: '>= 10'}
|
||||
peerDependencies:
|
||||
react: '>= 0.14.0'
|
||||
peerDependenciesMeta:
|
||||
react:
|
||||
optional: true
|
||||
|
||||
memoize-one@5.2.1:
|
||||
resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==}
|
||||
|
||||
@@ -2794,11 +2816,6 @@ packages:
|
||||
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
|
||||
hasBin: true
|
||||
|
||||
nanoid@5.1.5:
|
||||
resolution: {integrity: sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==}
|
||||
engines: {node: ^18 || >=20}
|
||||
hasBin: true
|
||||
|
||||
natural-compare@1.4.0:
|
||||
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
|
||||
|
||||
@@ -3396,8 +3413,8 @@ packages:
|
||||
util-deprecate@1.0.2:
|
||||
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
|
||||
|
||||
uuid@11.1.0:
|
||||
resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==}
|
||||
uuid@13.0.0:
|
||||
resolution: {integrity: sha512-XQegIaBTVUjSHliKqcnFqYypAd4S+WCYt5NIeRs6w/UAry7z8Y9j5ZwRRL4kzq9U3sD6v+85er9FvkEaBpji2w==}
|
||||
hasBin: true
|
||||
|
||||
validate.io-array@1.0.6:
|
||||
@@ -4543,7 +4560,7 @@ snapshots:
|
||||
|
||||
'@radix-ui/react-popper@1.2.8(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
|
||||
dependencies:
|
||||
'@floating-ui/react-dom': 2.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@floating-ui/react-dom': 2.1.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-arrow': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-context': 1.1.2(@types/react@18.3.23)(react@18.3.1)
|
||||
@@ -4679,6 +4696,35 @@ snapshots:
|
||||
'@types/react': 18.3.23
|
||||
'@types/react-dom': 18.3.7(@types/react@18.3.23)
|
||||
|
||||
'@radix-ui/react-select@2.2.6(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
|
||||
dependencies:
|
||||
'@radix-ui/number': 1.1.1
|
||||
'@radix-ui/primitive': 1.1.3
|
||||
'@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-context': 1.1.2(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-direction': 1.1.1(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-focus-guards': 1.1.3(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-id': 1.1.1(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-popper': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-slot': 1.2.3(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.23)(react@18.3.1)
|
||||
'@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
aria-hidden: 1.2.6
|
||||
react: 18.3.1
|
||||
react-dom: 18.3.1(react@18.3.1)
|
||||
react-remove-scroll: 2.7.1(@types/react@18.3.23)(react@18.3.1)
|
||||
optionalDependencies:
|
||||
'@types/react': 18.3.23
|
||||
'@types/react-dom': 18.3.7(@types/react@18.3.23)
|
||||
|
||||
'@radix-ui/react-separator@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
|
||||
dependencies:
|
||||
'@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
@@ -4862,17 +4908,16 @@ snapshots:
|
||||
|
||||
'@remix-run/router@1.23.0': {}
|
||||
|
||||
'@rjsf/core@6.0.0-beta.11(@rjsf/utils@6.0.0-beta.11(react@18.3.1))(react@18.3.1)':
|
||||
'@rjsf/core@6.1.1(@rjsf/utils@6.1.1(react@18.3.1))(react@18.3.1)':
|
||||
dependencies:
|
||||
'@rjsf/utils': 6.0.0-beta.11(react@18.3.1)
|
||||
'@rjsf/utils': 6.1.1(react@18.3.1)
|
||||
lodash: 4.17.21
|
||||
lodash-es: 4.17.21
|
||||
markdown-to-jsx: 7.7.13(react@18.3.1)
|
||||
nanoid: 5.1.5
|
||||
markdown-to-jsx: 8.0.0(react@18.3.1)
|
||||
prop-types: 15.8.1
|
||||
react: 18.3.1
|
||||
|
||||
'@rjsf/shadcn@6.0.0-beta.10(@rjsf/core@6.0.0-beta.11(@rjsf/utils@6.0.0-beta.11(react@18.3.1))(react@18.3.1))(@rjsf/utils@6.0.0-beta.11(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.17)':
|
||||
'@rjsf/shadcn@6.1.1(@rjsf/core@6.1.1(@rjsf/utils@6.1.1(react@18.3.1))(react@18.3.1))(@rjsf/utils@6.1.1(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.17)':
|
||||
dependencies:
|
||||
'@radix-ui/react-checkbox': 1.3.3(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
@@ -4880,43 +4925,42 @@ snapshots:
|
||||
'@radix-ui/react-label': 2.1.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-popover': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-radio-group': 1.3.8(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-select': 2.2.5(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-select': 2.2.6(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-separator': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-slider': 1.3.6(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
'@radix-ui/react-slot': 1.2.3(@types/react@18.3.23)(react@18.3.1)
|
||||
'@react-icons/all-files': 4.1.0(react@18.3.1)
|
||||
'@rjsf/core': 6.0.0-beta.11(@rjsf/utils@6.0.0-beta.11(react@18.3.1))(react@18.3.1)
|
||||
'@rjsf/utils': 6.0.0-beta.11(react@18.3.1)
|
||||
'@rjsf/core': 6.1.1(@rjsf/utils@6.1.1(react@18.3.1))(react@18.3.1)
|
||||
'@rjsf/utils': 6.1.1(react@18.3.1)
|
||||
class-variance-authority: 0.7.1
|
||||
clsx: 2.1.1
|
||||
cmdk: 1.1.1(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
lodash: 4.17.21
|
||||
lodash-es: 4.17.21
|
||||
lucide-react: 0.503.0(react@18.3.1)
|
||||
lucide-react: 0.548.0(react@18.3.1)
|
||||
react: 18.3.1
|
||||
tailwind-merge: 3.3.1
|
||||
tailwindcss-animate: 1.0.7(tailwindcss@3.4.17)
|
||||
uuid: 11.1.0
|
||||
uuid: 13.0.0
|
||||
transitivePeerDependencies:
|
||||
- '@types/react'
|
||||
- '@types/react-dom'
|
||||
- react-dom
|
||||
- tailwindcss
|
||||
|
||||
'@rjsf/utils@6.0.0-beta.11(react@18.3.1)':
|
||||
'@rjsf/utils@6.1.1(react@18.3.1)':
|
||||
dependencies:
|
||||
fast-uri: 3.1.0
|
||||
json-schema-merge-allof: 0.8.1
|
||||
jsonpointer: 5.0.1
|
||||
lodash: 4.17.21
|
||||
lodash-es: 4.17.21
|
||||
nanoid: 5.1.5
|
||||
react: 18.3.1
|
||||
react-is: 18.3.1
|
||||
|
||||
'@rjsf/validator-ajv8@6.0.0-beta.11(@rjsf/utils@6.0.0-beta.11(react@18.3.1))':
|
||||
'@rjsf/validator-ajv8@6.1.1(@rjsf/utils@6.1.1(react@18.3.1))':
|
||||
dependencies:
|
||||
'@rjsf/utils': 6.0.0-beta.11(react@18.3.1)
|
||||
'@rjsf/utils': 6.1.1(react@18.3.1)
|
||||
ajv: 8.17.1
|
||||
ajv-formats: 2.1.1(ajv@8.17.1)
|
||||
lodash: 4.17.21
|
||||
@@ -6164,11 +6208,11 @@ snapshots:
|
||||
dependencies:
|
||||
yallist: 3.1.1
|
||||
|
||||
lucide-react@0.503.0(react@18.3.1):
|
||||
lucide-react@0.539.0(react@18.3.1):
|
||||
dependencies:
|
||||
react: 18.3.1
|
||||
|
||||
lucide-react@0.539.0(react@18.3.1):
|
||||
lucide-react@0.548.0(react@18.3.1):
|
||||
dependencies:
|
||||
react: 18.3.1
|
||||
|
||||
@@ -6180,6 +6224,10 @@ snapshots:
|
||||
dependencies:
|
||||
react: 18.3.1
|
||||
|
||||
markdown-to-jsx@8.0.0(react@18.3.1):
|
||||
optionalDependencies:
|
||||
react: 18.3.1
|
||||
|
||||
memoize-one@5.2.1: {}
|
||||
|
||||
merge2@1.4.1: {}
|
||||
@@ -6225,8 +6273,6 @@ snapshots:
|
||||
|
||||
nanoid@3.3.11: {}
|
||||
|
||||
nanoid@5.1.5: {}
|
||||
|
||||
natural-compare@1.4.0: {}
|
||||
|
||||
node-fetch@2.7.0:
|
||||
@@ -6769,7 +6815,7 @@ snapshots:
|
||||
|
||||
util-deprecate@1.0.2: {}
|
||||
|
||||
uuid@11.1.0: {}
|
||||
uuid@13.0.0: {}
|
||||
|
||||
validate.io-array@1.0.6: {}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user