@sourceregistry/sveltekit-enhance 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,13 +1,13 @@
1
1
  import { type Action, type ActionResult, type Cookies, type Handle, type RequestEvent, type ResolveOptions, type ServerLoadEvent } from '@sveltejs/kit';
2
2
  import type { RouteId as AppRouteId, LayoutParams as AppLayoutParams } from '$app/types';
3
3
  export type MaybePromise<T> = T | Promise<T>;
4
- export type EnhanceErrorHandler = <T = any>(err: unknown) => MaybePromise<T> | undefined | never | void;
4
+ export type EnhanceErrorHandler = <T = any>(err: unknown) => MaybePromise<T | Response | undefined | never | void>;
5
5
  export type EnhanceResponseHandler = (input: {
6
6
  event: RequestEvent;
7
7
  response: Response;
8
8
  }) => MaybePromise<unknown>;
9
9
  export type EnhanceCallType = 'handle' | 'load' | 'method' | 'action';
10
- export type EnhanceInput<CallType extends EnhanceCallType = EnhanceCallType, Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>, RouteId extends AppRouteId | null = AppRouteId | null, ParentData extends Record<string, any> = Record<string, any>> = {
10
+ export type EnhanceInput<CallType extends EnhanceCallType = EnhanceCallType, Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>, RouteId extends AppRouteId | string | null = AppRouteId | string | null, ParentData extends Record<string, any> = Record<string, any>> = {
11
11
  cookies: Cookies;
12
12
  params: Params;
13
13
  route: {
@@ -28,8 +28,8 @@ export type EnhanceInput<CallType extends EnhanceCallType = EnhanceCallType, Par
28
28
  depends: ServerLoadEvent<Params, ParentData, RouteId>['depends'];
29
29
  untrack: ServerLoadEvent<Params, ParentData, RouteId>['untrack'];
30
30
  } : object);
31
- export type EnhanceFunction<CallType extends EnhanceCallType = EnhanceCallType, Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>, RouteId extends AppRouteId | null = AppRouteId | null, EnhanceReturn = any> = (event: EnhanceInput<CallType, Params, RouteId>) => MaybePromise<EnhanceReturn>;
32
- export type EnhanceAction<Params extends AppLayoutParams<'/'>, OutputData extends Record<string, any> | void, RouteId extends AppRouteId | null, EnhanceReturn extends ActionResult | never | any = ActionResult> = (event: RequestEvent<Params, RouteId> & {
31
+ export type EnhanceFunction<CallType extends EnhanceCallType = EnhanceCallType, Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>, RouteId extends AppRouteId | string | null = AppRouteId | string | null, EnhanceReturn = any> = (event: EnhanceInput<CallType, Params, RouteId>) => MaybePromise<EnhanceReturn>;
32
+ export type EnhanceAction<Params extends AppLayoutParams<'/'>, OutputData extends Record<string, any> | void, RouteId extends AppRouteId | string | null, EnhanceReturn extends ActionResult | never | any = ActionResult> = (event: RequestEvent<Params, RouteId> & {
33
33
  context: EnhanceReturn;
34
34
  }) => MaybePromise<OutputData>;
35
35
  export type EnhanceLoad<Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>, ParentData extends Record<string, any> = Record<string, any>, OutputData extends Record<string, any> | void = Record<string, any> | void, RouteId extends AppRouteId | null = AppRouteId | null, EnhanceReturn extends never | any = any> = (event: ServerLoadEvent<Params, ParentData, RouteId> & {
@@ -44,14 +44,14 @@ export type EnhanceHandle<EnhanceReturn extends never | any = any> = (input: {
44
44
  export type EnhanceMethod<Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>, RouteId extends AppRouteId | null = AppRouteId | null, EnhanceReturn extends never | any = any> = (event: RequestEvent<Params, RouteId> & {
45
45
  context: EnhanceReturn;
46
46
  }) => MaybePromise<Response>;
47
- export declare const action: <Params extends AppLayoutParams<"/"> = AppLayoutParams<"/">, OutputData extends Record<string, any> | void = Record<string, any> | void, RouteId extends AppRouteId | null = AppRouteId | null, const Enhances extends readonly EnhanceFunction<"action", Params, RouteId, object>[] = readonly EnhanceFunction<"action", Params, RouteId, object>[], EnhanceReturn extends ConcatReturnTypes<Enhances> = ConcatReturnTypes<Enhances>>(action: EnhanceAction<Params, OutputData, RouteId, EnhanceReturn>, ...enhances: [...Enhances]) => Action<Params, OutputData, RouteId>;
47
+ export declare const action: <Params extends AppLayoutParams<"/"> = AppLayoutParams<"/">, OutputData extends Record<string, any> | void = Record<string, any> | void, RouteId extends AppRouteId | string | null = AppRouteId | string | null, const Enhances extends readonly EnhanceFunction<"action", Params, RouteId, object>[] = readonly EnhanceFunction<"action", Params, RouteId, object>[], EnhanceReturn extends ConcatReturnTypes<Enhances> = ConcatReturnTypes<Enhances>>(action: EnhanceAction<Params, OutputData, RouteId, EnhanceReturn>, ...enhances: [...Enhances]) => Action<Params, OutputData, RouteId>;
48
48
  export declare const load: <Params extends AppLayoutParams<"/"> = AppLayoutParams<"/">, ParentData extends Record<string, any> = Record<string, any>, OutputData extends Record<string, any> | void = Record<string, any> | void, RouteId extends AppRouteId | null = AppRouteId | null, const Enhances extends readonly EnhanceFunction<"load", Params, RouteId, object>[] = readonly EnhanceFunction<"load", Params, RouteId, object>[], EnhanceReturn extends ConcatReturnTypes<Enhances> = ConcatReturnTypes<Enhances>>(load: EnhanceLoad<Params, ParentData, OutputData, RouteId, EnhanceReturn>, ...contexts: [...Enhances]) => (event: ServerLoadEvent<Params, ParentData, RouteId>) => Promise<OutputData>;
49
- export declare const method: <Params extends AppLayoutParams<"/"> = AppLayoutParams<"/">, RouteId extends AppRouteId | null = AppRouteId | null, const Enhances extends readonly EnhanceFunction<"method", Params, RouteId, object>[] = readonly EnhanceFunction<"method", Params, RouteId, object>[], EnhanceReturn extends Awaited<ConcatReturnTypes<Enhances>> = Awaited<ConcatReturnTypes<Enhances>>>(handle: EnhanceMethod<Params, RouteId, EnhanceReturn>, ...contexts: [...Enhances]) => (event: RequestEvent<Params, RouteId>) => Promise<Response>;
49
+ export declare const method: <Params extends AppLayoutParams<"/"> = AppLayoutParams<"/">, RouteId extends AppRouteId | string | null = AppRouteId | string | null, const Enhances extends readonly EnhanceFunction<"method", Params, RouteId, object>[] = readonly EnhanceFunction<"method", Params, RouteId, object>[], EnhanceReturn extends Awaited<ConcatReturnTypes<Enhances>> = Awaited<ConcatReturnTypes<Enhances>>>(handle: EnhanceMethod<Params, RouteId, EnhanceReturn>, ...contexts: [...Enhances]) => (event: RequestEvent<Params, RouteId>) => Promise<Response>;
50
50
  export declare const handle: <const Enhances extends readonly EnhanceFunction<"handle">[] = readonly EnhanceFunction<"handle">[], EnhanceReturn extends Awaited<ConcatReturnTypes<Enhances>> = Awaited<ConcatReturnTypes<Enhances>>>(handle: EnhanceHandle<EnhanceReturn>, ...contexts: [...Enhances]) => Handle;
51
51
  export declare const enhance: {
52
- action: <Params extends AppLayoutParams<"/"> = Record<string, string>, OutputData extends Record<string, any> | void = void | Record<string, any>, RouteId extends AppRouteId | null = string | null, const Enhances extends readonly EnhanceFunction<"action", Params, RouteId, object>[] = readonly EnhanceFunction<"action", Params, RouteId, object>[], EnhanceReturn extends ConcatReturnTypes<Enhances> = ConcatReturnTypes<Enhances>>(action: EnhanceAction<Params, OutputData, RouteId, EnhanceReturn>, ...enhances: Enhances) => Action<Params, OutputData, RouteId>;
52
+ action: <Params extends AppLayoutParams<"/"> = Record<string, string>, OutputData extends Record<string, any> | void = void | Record<string, any>, RouteId extends AppRouteId | string | null = string | null, const Enhances extends readonly EnhanceFunction<"action", Params, RouteId, object>[] = readonly EnhanceFunction<"action", Params, RouteId, object>[], EnhanceReturn extends ConcatReturnTypes<Enhances> = ConcatReturnTypes<Enhances>>(action: EnhanceAction<Params, OutputData, RouteId, EnhanceReturn>, ...enhances: Enhances) => Action<Params, OutputData, RouteId>;
53
53
  load: <Params extends AppLayoutParams<"/"> = Record<string, string>, ParentData extends Record<string, any> = Record<string, any>, OutputData extends Record<string, any> | void = void | Record<string, any>, RouteId extends AppRouteId | null = string | null, const Enhances extends readonly EnhanceFunction<"load", Params, RouteId, object>[] = readonly EnhanceFunction<"load", Params, RouteId, object>[], EnhanceReturn extends ConcatReturnTypes<Enhances> = ConcatReturnTypes<Enhances>>(load: EnhanceLoad<Params, ParentData, OutputData, RouteId, EnhanceReturn>, ...contexts: Enhances) => (event: ServerLoadEvent<Params, ParentData, RouteId>) => Promise<OutputData>;
54
- method: <Params extends AppLayoutParams<"/"> = Record<string, string>, RouteId extends AppRouteId | null = string | null, const Enhances extends readonly EnhanceFunction<"method", Params, RouteId, object>[] = readonly EnhanceFunction<"method", Params, RouteId, object>[], EnhanceReturn extends Awaited<ConcatReturnTypes<Enhances>> = Awaited<ConcatReturnTypes<Enhances>>>(handle: EnhanceMethod<Params, RouteId, EnhanceReturn>, ...contexts: Enhances) => (event: RequestEvent<Params, RouteId>) => Promise<Response>;
54
+ method: <Params extends AppLayoutParams<"/"> = Record<string, string>, RouteId extends AppRouteId | string | null = string | null, const Enhances extends readonly EnhanceFunction<"method", Params, RouteId, object>[] = readonly EnhanceFunction<"method", Params, RouteId, object>[], EnhanceReturn extends Awaited<ConcatReturnTypes<Enhances>> = Awaited<ConcatReturnTypes<Enhances>>>(handle: EnhanceMethod<Params, RouteId, EnhanceReturn>, ...contexts: Enhances) => (event: RequestEvent<Params, RouteId>) => Promise<Response>;
55
55
  handle: <const Enhances extends readonly EnhanceFunction<"handle">[] = readonly EnhanceFunction<"handle", Record<string, string>, string | null, any>[], EnhanceReturn extends Awaited<ConcatReturnTypes<Enhances>> = Awaited<ConcatReturnTypes<Enhances>>>(handle: EnhanceHandle<EnhanceReturn>, ...contexts: Enhances) => Handle;
56
56
  };
57
57
  export type Enhancers<Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>, RouteId extends AppRouteId | null = AppRouteId | null, EnhanceReturn extends never | any = any> = Record<string, EnhanceFunction<EnhanceCallType, Params, RouteId, EnhanceReturn>>;
package/dist/index.js CHANGED
@@ -25,8 +25,13 @@ const EnhanceErrorHandle = async (e, contextInput) => {
25
25
  }
26
26
  throw e;
27
27
  };
28
- export const action = (action, ...enhances) => async (event) => {
28
+ export const action = (action, ...enhances
29
+ // @ts-expect-error relax the route_id when integrating with libraries
30
+ ) =>
31
+ // @ts-expect-error relax the route_id when integrating with libraries
32
+ async (event) => {
29
33
  let combined = {};
34
+ // @ts-expect-error relax the route_id when integrating with libraries
30
35
  const input = Object.assign(event, {
31
36
  __errorHandlers__: [],
32
37
  isAction: false,
@@ -79,9 +84,13 @@ export const load = (load, ...contexts) => {
79
84
  }
80
85
  };
81
86
  };
82
- export const method = (handle, ...contexts) => {
87
+ export const method = (
88
+ // @ts-expect-error this is to relax the typing around external integrations
89
+ handle, ...contexts) => {
90
+ // @ts-expect-error this is to relax the typing around external integrations
83
91
  return async (event) => {
84
92
  let combined = {};
93
+ // @ts-expect-error this is to relax the typing around external integrations
85
94
  const contextInput = Object.assign(event, {
86
95
  __errorHandlers__: [],
87
96
  isAction: false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sourceregistry/sveltekit-enhance",
3
- "version": "1.0.1",
3
+ "version": "1.1.0",
4
4
  "description": "Composable enhance and form utilities for SvelteKit actions, loads, methods, and hooks.",
5
5
  "author": "A.P.A. Slaa (a.p.a.slaa@projectsource.nl)",
6
6
  "scripts": {