skir-client 0.1.0 → 1.0.1

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.
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import type { Express as ExpressApp, json as ExpressJson, Request as ExpressRequest, Response as ExpressResponse, text as ExpressText } from "express";
2
+ import type { Express as ExpressApp, json as ExpressJson, Request as ExpressRequest, text as ExpressText } from "express";
3
3
  /**
4
4
  * A single moment in time represented in a platform-independent format, with a
5
5
  * precision of one millisecond.
@@ -609,29 +609,186 @@ export declare class ServiceClient {
609
609
  constructor(serviceUrl: string, getRequestMetadata?: (m: Method<unknown, unknown>) => Promise<RequestMeta> | RequestMeta);
610
610
  /** Invokes the given method on the remote server through an RPC. */
611
611
  invokeRemote<Request, Response>(method: Method<Request, Response>, request: Request, httpMethod?: "GET" | "POST"): Promise<Response>;
612
- get lastResponseHeaders(): Headers | undefined;
613
- private lastRespHeaders;
614
612
  }
615
613
  /** Raw response returned by the server. */
616
- export declare class RawResponse {
614
+ export interface RawResponse {
617
615
  readonly data: string;
618
- readonly type: "ok-json" | "ok-html" | "bad-request" | "server-error";
619
- constructor(data: string, type: "ok-json" | "ok-html" | "bad-request" | "server-error");
620
- get statusCode(): number;
621
- get contentType(): string;
616
+ readonly statusCode: number;
617
+ readonly contentType: string;
622
618
  }
623
619
  /**
624
- * Implementation of a skir service.
620
+ * If this error is thrown from a method implementation, the specified status
621
+ * code and message will be returned in the HTTP response.
625
622
  *
626
- * Usage: call `.addMethod()` to register methods, then install the service on
627
- * an HTTP server either by:
628
- * - calling the `installServiceOnExpressApp()` top-level function if you are
629
- * using ExpressJS
630
- * - writing your own implementation of `installServiceOn*()` which calls
631
- * `.handleRequest()` if you are using another web application framework
623
+ * If any other type of exception is thrown, the response status code will be
624
+ * 500 (Internal Server Error).
632
625
  */
633
- export declare class Service<RequestMeta = ExpressRequest, ResponseMeta = ExpressResponse> {
634
- addMethod<Request, Response>(method: Method<Request, Response>, impl: (req: Request, reqMeta: RequestMeta, resMeta: ResponseMeta) => Promise<Response>): Service<RequestMeta, ResponseMeta>;
626
+ export declare class ServiceError extends Error {
627
+ private readonly spec;
628
+ constructor(spec: {
629
+ statusCode: 400;
630
+ desc: "Bad Request";
631
+ message?: string;
632
+ } | {
633
+ statusCode: 401;
634
+ desc: "Unauthorized";
635
+ message?: string;
636
+ } | {
637
+ statusCode: 402;
638
+ desc: "Payment Required";
639
+ message?: string;
640
+ } | {
641
+ statusCode: 403;
642
+ desc: "Forbidden";
643
+ message?: string;
644
+ } | {
645
+ statusCode: 404;
646
+ desc: "Not Found";
647
+ message?: string;
648
+ } | {
649
+ statusCode: 405;
650
+ desc: "Method Not Allowed";
651
+ message?: string;
652
+ } | {
653
+ statusCode: 406;
654
+ desc: "Not Acceptable";
655
+ message?: string;
656
+ } | {
657
+ statusCode: 407;
658
+ desc: "Proxy Authentication Required";
659
+ message?: string;
660
+ } | {
661
+ statusCode: 408;
662
+ desc: "Request Timeout";
663
+ message?: string;
664
+ } | {
665
+ statusCode: 409;
666
+ desc: "Conflict";
667
+ message?: string;
668
+ } | {
669
+ statusCode: 410;
670
+ desc: "Gone";
671
+ message?: string;
672
+ } | {
673
+ statusCode: 411;
674
+ desc: "Length Required";
675
+ message?: string;
676
+ } | {
677
+ statusCode: 412;
678
+ desc: "Precondition Failed";
679
+ message?: string;
680
+ } | {
681
+ statusCode: 413;
682
+ desc: "Content Too Large";
683
+ message?: string;
684
+ } | {
685
+ statusCode: 414;
686
+ desc: "URI Too Long";
687
+ message?: string;
688
+ } | {
689
+ statusCode: 415;
690
+ desc: "Unsupported Media Type";
691
+ message?: string;
692
+ } | {
693
+ statusCode: 416;
694
+ desc: "Range Not Satisfiable";
695
+ message?: string;
696
+ } | {
697
+ statusCode: 417;
698
+ desc: "Expectation Failed";
699
+ message?: string;
700
+ } | {
701
+ statusCode: 418;
702
+ desc: "I'm a teapot";
703
+ message?: string;
704
+ } | {
705
+ statusCode: 421;
706
+ desc: "Misdirected Request";
707
+ message?: string;
708
+ } | {
709
+ statusCode: 422;
710
+ desc: "Unprocessable Content";
711
+ message?: string;
712
+ } | {
713
+ statusCode: 423;
714
+ desc: "Locked";
715
+ message?: string;
716
+ } | {
717
+ statusCode: 424;
718
+ desc: "Failed Dependency";
719
+ message?: string;
720
+ } | {
721
+ statusCode: 425;
722
+ desc: "Too Early";
723
+ message?: string;
724
+ } | {
725
+ statusCode: 426;
726
+ desc: "Upgrade Required";
727
+ message?: string;
728
+ } | {
729
+ statusCode: 428;
730
+ desc: "Precondition Required";
731
+ message?: string;
732
+ } | {
733
+ statusCode: 429;
734
+ desc: "Too Many Requests";
735
+ message?: string;
736
+ } | {
737
+ statusCode: 431;
738
+ desc: "Request Header Fields Too Large";
739
+ message?: string;
740
+ } | {
741
+ statusCode: 451;
742
+ desc: "Unavailable For Legal Reasons";
743
+ message?: string;
744
+ } | {
745
+ statusCode: 500;
746
+ desc: "Internal Server Error";
747
+ message?: string;
748
+ } | {
749
+ statusCode: 501;
750
+ desc: "Not Implemented";
751
+ message?: string;
752
+ } | {
753
+ statusCode: 502;
754
+ desc: "Bad Gateway";
755
+ message?: string;
756
+ } | {
757
+ statusCode: 503;
758
+ desc: "Service Unavailable";
759
+ message?: string;
760
+ } | {
761
+ statusCode: 504;
762
+ desc: "Gateway Timeout";
763
+ message?: string;
764
+ } | {
765
+ statusCode: 505;
766
+ desc: "HTTP Version Not Supported";
767
+ message?: string;
768
+ } | {
769
+ statusCode: 506;
770
+ desc: "Variant Also Negotiates";
771
+ message?: string;
772
+ } | {
773
+ statusCode: 507;
774
+ desc: "Insufficient Storage";
775
+ message?: string;
776
+ } | {
777
+ statusCode: 508;
778
+ desc: "Loop Detected";
779
+ message?: string;
780
+ } | {
781
+ statusCode: 510;
782
+ desc: "Not Extended";
783
+ message?: string;
784
+ } | {
785
+ statusCode: 511;
786
+ desc: "Network Authentication Required";
787
+ message?: string;
788
+ });
789
+ toRawResponse(): RawResponse;
790
+ }
791
+ export interface RequestHandler<RequestMeta = ExpressRequest> {
635
792
  /**
636
793
  * Parses the content of a user request and invokes the appropriate method.
637
794
  * If you are using ExpressJS as your web application framework, you don't
@@ -641,14 +798,147 @@ export declare class Service<RequestMeta = ExpressRequest, ResponseMeta = Expres
641
798
  * If the request is a GET request, pass in the decoded query string as the
642
799
  * request's body. The query string is the part of the URL after '?', and it
643
800
  * can be decoded with DecodeURIComponent.
801
+ */
802
+ handleRequest(reqBody: string, reqMeta: RequestMeta): Promise<RawResponse>;
803
+ }
804
+ /** Configuration options for a Skir service. */
805
+ export interface ServiceOptions<RequestMeta = ExpressRequest> {
806
+ /**
807
+ * Whether to keep unrecognized values when deserializing requests.
644
808
  *
645
- * Pass in "keep-unrecognized-values" if the request cannot come from a
646
- * malicious user.
809
+ * **WARNING:** Only enable this for data from trusted sources. Malicious
810
+ * actors could inject fields with IDs not yet defined in your schema. If you
811
+ * preserve this data and later define those IDs in a future schema version,
812
+ * the injected data could be deserialized as valid fields, leading to
813
+ * security vulnerabilities or data corruption.
814
+ *
815
+ * Defaults to `false`.
647
816
  */
648
- handleRequest(reqBody: string, reqMeta: RequestMeta, resMeta: ResponseMeta, keepUnrecognizedValues?: "keep-unrecognized-values"): Promise<RawResponse>;
817
+ keepUnrecognizedValues: boolean;
818
+ /**
819
+ * Predicate that determines whether the message of an unknown error (i.e. not
820
+ * a `ServiceError`) should be sent to the client.
821
+ *
822
+ * By default, unknown errors are masked and the client receives a generic
823
+ * 'server error' message with status 500. This is to prevent leaking
824
+ * sensitive information to the client.
825
+ *
826
+ * You can enable this for debugging purposes or if you are sure that your
827
+ * error messages are safe to expose.
828
+ */
829
+ canCopyUnknownErrorMessageToResponse: (reqMeta: RequestMeta) => boolean;
830
+ /**
831
+ * Callback invoked whenever an error is thrown during method execution.
832
+ *
833
+ * Use this to log errors for monitoring, debugging, or alerting purposes.
834
+ * The callback receives the error object, the method being executed, the
835
+ * request that triggered the error, and the request metadata.
836
+ *
837
+ * Defaults to a no-op function.
838
+ */
839
+ errorLogger: <Request>(throwable: any, method: Method<Request, unknown>, req: Request, reqMeta: RequestMeta) => void;
840
+ /**
841
+ * URL to the JavaScript file for the Skir Studio app.
842
+ *
843
+ * Skir Studio is a web interface for exploring and testing your Skir service.
844
+ * It is served when the service receives a request at '${serviceUrl}?studio'.
845
+ */
846
+ studioAppJsUrl: string;
847
+ }
848
+ /**
849
+ * Implementation of a skir service.
850
+ *
851
+ * Usage: call `.addMethod()` to register methods, then install the service on
852
+ * an HTTP server either by:
853
+ * - calling the `installServiceOnExpressApp()` top-level function if you are
854
+ * using ExpressJS
855
+ * - writing your own implementation of `installServiceOn*()` which calls
856
+ * `.handleRequest()` if you are using another web application framework
857
+ *
858
+ * ## Handling Request Metadata
859
+ *
860
+ * The `RequestMeta` type parameter specifies what metadata (authentication,
861
+ * headers, etc.) your method implementations receive. There are two approaches:
862
+ *
863
+ * ### Approach 1: Use the framework's request type directly
864
+ *
865
+ * Set `RequestMeta` to your framework's request type (e.g., `ExpressRequest`).
866
+ * All method implementations will receive the full framework request object.
867
+ *
868
+ * ```typescript
869
+ * const service = new Service<ExpressRequest>();
870
+ * service.addMethod(myMethod, async (req, expressReq) => {
871
+ * const isAdmin = expressReq.user?.role === 'admin';
872
+ * // ...
873
+ * });
874
+ * installServiceOnExpressApp(app, '/api', service, text, json);
875
+ * ```
876
+ *
877
+ * ### Approach 2: Use a simplified custom type (recommended for testing)
878
+ *
879
+ * Set `RequestMeta` to a minimal type containing only what your service needs.
880
+ * Use `withRequestMeta()` to extract this data from the framework request when
881
+ * installing the service.
882
+ *
883
+ * ```typescript
884
+ * const service = new Service<{ isAdmin: boolean }>();
885
+ * service.addMethod(myMethod, async (req, { isAdmin }) => {
886
+ * // Implementation is framework-agnostic and easy to unit test
887
+ * if (!isAdmin) throw new ServiceError({ statusCode: 403, desc: "Forbidden" });
888
+ * // ...
889
+ * });
890
+ *
891
+ * // Adapt to Express when installing
892
+ * const handler = service.withRequestMeta((req: ExpressRequest) => ({
893
+ * isAdmin: req.user?.role === 'admin'
894
+ * }));
895
+ * installServiceOnExpressApp(app, '/api', handler, text, json);
896
+ * ```
897
+ *
898
+ * This approach decouples your service from the HTTP framework, making it easier
899
+ * to test and clearer about what request data it actually uses.
900
+ */
901
+ export declare class Service<RequestMeta = ExpressRequest> implements RequestHandler<RequestMeta> {
902
+ constructor(options?: Partial<ServiceOptions<RequestMeta>>);
903
+ addMethod<Request, Response>(method: Method<Request, Response>, impl: (req: Request, reqMeta: RequestMeta) => Promise<Response>): Service<RequestMeta>;
904
+ handleRequest(reqBody: string, reqMeta: RequestMeta): Promise<RawResponse>;
905
+ /**
906
+ * Creates a request handler that extracts simplified request metadata from
907
+ * framework-specific request objects before passing it to this service.
908
+ *
909
+ * This decouples your service implementation from the HTTP framework, making
910
+ * it easier to unit test (tests don't need to mock framework objects) and
911
+ * making the service implementation clearer by explicitly declaring exactly
912
+ * what request data it needs.
913
+ *
914
+ * @param transformFn Function that extracts the necessary data from the
915
+ * framework-specific request object. Can be async or sync.
916
+ * @returns A request handler that accepts the framework-specific request type.
917
+ *
918
+ * @example
919
+ * ```typescript
920
+ * // Define a service that only needs to know if the user is an admin
921
+ *
922
+ * const service = new Service<{ isAdmin: boolean }>();
923
+ *
924
+ * service.addMethod(myMethod, async (req, { isAdmin }) => {
925
+ * // Implementation is framework-agnostic and easy to test
926
+ * if (!isAdmin) throw new ServiceError({ statusCode: 403, desc: "Forbidden" });
927
+ * // ...
928
+ * });
929
+ *
930
+ * // Adapt it to work with Express
931
+ * const expressHandler = service.withRequestMeta((req: ExpressRequest) => ({
932
+ * isAdmin: req.user?.role === 'admin'
933
+ * }));
934
+ * installServiceOnExpressApp(app, '/api', expressHandler, text, json);
935
+ * ```
936
+ */
937
+ withRequestMeta<NewRequestMeta>(transformFn: (reqMeta: NewRequestMeta) => Promise<RequestMeta> | RequestMeta): RequestHandler<NewRequestMeta>;
938
+ private readonly options;
649
939
  private readonly methodImpls;
650
940
  }
651
- export declare function installServiceOnExpressApp(app: ExpressApp, queryPath: string, service: Service<ExpressRequest, ExpressResponse>, text: typeof ExpressText, json: typeof ExpressJson, keepUnrecognizedValues?: "keep-unrecognized-values"): void;
941
+ export declare function installServiceOnExpressApp(app: ExpressApp, queryPath: string, service: RequestHandler<ExpressRequest>, text: typeof ExpressText, json: typeof ExpressJson): void;
652
942
  interface StructSpec {
653
943
  kind: "struct";
654
944
  ctor: {
@@ -1 +1 @@
1
- {"version":3,"file":"skir-client.d.ts","sourceRoot":"","sources":["../../src/skir-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skir-client.d.ts","sourceRoot":"","sources":["../../src/skir-client.ts"],"names":[],"mappings":"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"}