Platform-neutral shapes every social provider maps its API onto: one row for a
connected account, one for a piece of its content. Raw per-platform payloads
(InstagramUser, ThreadsPost, …) stay available for anything these flatten.
Import these from naystack/socials/types, never from naystack/socials —
which is why that barrel doesn't re-export them. The build runs with
splitting: false, so the barrel inlines a private copy of this module: its
SocialPlatform would be a second enum object with the same values, and
anything identity-keyed rejects it (type-graphql's enum registry answers
"Cannot determine GraphQL input type"). This entry pulls in no server code, so
client bundles can import it too.
Platform-neutral shapes every social provider maps its API onto: one row for a connected account, one for a piece of its content. Raw per-platform payloads (
InstagramUser,ThreadsPost, …) stay available for anything these flatten.Import these from
naystack/socials/types, never fromnaystack/socials— which is why that barrel doesn't re-export them. The build runs withsplitting: false, so the barrel inlines a private copy of this module: itsSocialPlatformwould be a second enum object with the same values, and anything identity-keyed rejects it (type-graphql's enum registry answers "Cannot determine GraphQL input type"). This entry pulls in no server code, so client bundles can import it too.