-
Notifications
You must be signed in to change notification settings - Fork 6
(v1) Stop re-exporting type / Infer from framework integrations #1437
Copy link
Copy link
Open
Labels
@arkenv/nextjsIssues or Pull Requests involving the Next.js integration for ArkEnvIssues or Pull Requests involving the Next.js integration for ArkEnv@arkenv/nuxtIssues or Pull Requests involving the Nuxt integration for ArkEnvIssues or Pull Requests involving the Nuxt integration for ArkEnvneeds triageMaintainer needs to evaluate this issueMaintainer needs to evaluate this issuerefactorA change to the codebase that's neither a bug fix nor added functionalityA change to the codebase that's neither a bug fix nor added functionality
Milestone
Description
Metadata
Metadata
Assignees
Labels
@arkenv/nextjsIssues or Pull Requests involving the Next.js integration for ArkEnvIssues or Pull Requests involving the Next.js integration for ArkEnv@arkenv/nuxtIssues or Pull Requests involving the Nuxt integration for ArkEnvIssues or Pull Requests involving the Nuxt integration for ArkEnvneeds triageMaintainer needs to evaluate this issueMaintainer needs to evaluate this issuerefactorA change to the codebase that's neither a bug fix nor added functionalityA change to the codebase that's neither a bug fix nor added functionality
Problem
Framework integrations re-export ArkType helpers that already live on
@arkenv/core, which users must install anyway:export { type } from "@arkenv/core"on@arkenv/nuxt,/client,/serverexport type { Infer } from "@arkenv/core"on@arkenv/nuxttype/Inferre-exports on@arkenv/nextjs,/client,/server,/react-serverexport { type } from "@arkenv/nextjs"(or/client)Docs already teach
import { type } from "@arkenv/core"for internal shared schemas. The integration re-exports are redundant and blur the import mental model (strict layout: core for schema helpers, integration forarkenventries).Came out of review on #1422.
Desired behavior
typeandInferre-exports from Nuxt and Next.js public entry points.env.gencodegen templates to stop re-exportingtypefrom the integration (consumers import from@arkenv/corewhen needed).arkenvdefault,ArkEnvScript,withArkEnv/ config helpers, etc.).type— leave them alone unless something similar appears.type/Inferfrom the integration packages.Acceptance criteria
typeorInferre-exports from@arkenv/nuxtor@arkenv/nextjspublic entriestypefrom the integrationtypefrom@arkenv/coreonlyOut of scope
@arkenv/coreexportstype/Infer