From c650ae20e5bd4da69f2f02fb278ce714b0473ac5 Mon Sep 17 00:00:00 2001 From: Remix Run Bot Date: Thu, 9 May 2024 00:09:57 +0000 Subject: [PATCH] chore: format --- .changeset/rotten-geckos-yawn.md | 20 ++++++++++---------- docs/guides/single-fetch.md | 2 +- packages/remix-deno/index.ts | 8 ++++---- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.changeset/rotten-geckos-yawn.md b/.changeset/rotten-geckos-yawn.md index 72862e112a7..c924d49c3e6 100644 --- a/.changeset/rotten-geckos-yawn.md +++ b/.changeset/rotten-geckos-yawn.md @@ -15,9 +15,9 @@ Rather, they exist solely for typesafety by providing types for args and by ensu ```ts export let loader = defineLoader(({ request }) => { // ^? Request - return {a:1, b: () => 2} + return { a: 1, b: () => 2 }; // ^ type error: `b` is not serializable -}) +}); ``` Note that `defineLoader` and `defineAction` are not technically necessary for defining loaders and actions if you aren't concerned with typesafety: @@ -25,8 +25,8 @@ Note that `defineLoader` and `defineAction` are not technically necessary for de ```ts // this totally works! and typechecking is happy too! export let loader = () => { - return {a: 1} -} + return { a: 1 }; +}; ``` This means that you can opt-in to `defineLoader` incrementally, one loader at a time. @@ -35,15 +35,15 @@ You can return custom responses via the `json`/`defer` utilities, but doing so w ```ts let loader1 = () => { - return {a: 1, b: new Date()} -} -let data1 = useLoaderData() + return { a: 1, b: new Date() }; +}; +let data1 = useLoaderData(); // ^? {a: number, b: Date} let loader2 = () => { - return json({a: 1, b: new Date()}) // this opts-out of turbo-stream -} -let data2 = useLoaderData() + return json({ a: 1, b: new Date() }); // this opts-out of turbo-stream +}; +let data2 = useLoaderData(); // ^? JsonifyObject<{a: number, b: Date}> which is really {a: number, b: string} ``` diff --git a/docs/guides/single-fetch.md b/docs/guides/single-fetch.md index 8a7d396dbcc..ac4351f0e2e 100644 --- a/docs/guides/single-fetch.md +++ b/docs/guides/single-fetch.md @@ -106,7 +106,7 @@ In order to ensure you get the proper types when using Single Fetch, we've inclu 🚨 Make sure the single-fetch types come after any other Remix packages in `types` so that they override those existing types. -** `defineLoader`, `defineAction`, `defineClientLoader`, `defineClientAction` ** +\*\* `defineLoader`, `defineAction`, `defineClientLoader`, `defineClientAction` \*\* To get typesafety when defining loaders and actions, you can use the `defineLoader` and `defineAction` utilities: diff --git a/packages/remix-deno/index.ts b/packages/remix-deno/index.ts index 160c21d9d50..9de14b92d62 100644 --- a/packages/remix-deno/index.ts +++ b/packages/remix-deno/index.ts @@ -16,10 +16,6 @@ export { export { broadcastDevReady, createSession, - unstable_defineLoader, - unstable_defineClientLoader, - unstable_defineAction, - unstable_defineClientAction, defer, isCookie, isSession, @@ -30,6 +26,10 @@ export { redirectDocument, unstable_composeUploadHandlers, unstable_createMemoryUploadHandler, + unstable_defineAction, + unstable_defineClientAction, + unstable_defineClientLoader, + unstable_defineLoader, unstable_parseMultipartFormData, } from "@remix-run/server-runtime";