New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@orpc/shared

Package Overview
Dependencies
Maintainers
0
Versions
227
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@orpc/shared - npm Package Compare versions

Comparing version 0.0.0-next.7e55b05 to 0.0.0-next.7e904b4

dist/src/chain.d.ts

205

dist/index.js

@@ -1,80 +0,2 @@

import {
convertToStandardError
} from "./chunk-CCTAECMC.js";
// src/constants.ts
var ORPC_HANDLER_HEADER = "x-orpc-handler";
var ORPC_HANDLER_VALUE = "orpc";
// src/hook.ts
async function executeWithHooks(options) {
const interceptors = convertToArray(options.hooks?.interceptor);
const onStarts = convertToArray(options.hooks?.onStart);
const onSuccesses = convertToArray(options.hooks?.onSuccess);
const onErrors = convertToArray(options.hooks?.onError);
const onFinishes = convertToArray(options.hooks?.onFinish);
let currentExecuteIndex = 0;
const next = async () => {
const execute = interceptors[currentExecuteIndex];
if (execute) {
currentExecuteIndex++;
return await execute(options.input, options.context, {
...options.meta,
next
});
}
let state = { status: "pending", input: options.input, output: void 0, error: void 0 };
try {
for (const onStart of onStarts) {
await onStart(state, options.context, options.meta);
}
const output = await options.execute();
state = { status: "success", input: options.input, output, error: void 0 };
for (let i = onSuccesses.length - 1; i >= 0; i--) {
await onSuccesses[i](state, options.context, options.meta);
}
} catch (e) {
state = { status: "error", input: options.input, error: convertToStandardError(e), output: void 0 };
for (let i = onErrors.length - 1; i >= 0; i--) {
try {
await onErrors[i](state, options.context, options.meta);
} catch (e2) {
state = { status: "error", input: options.input, error: convertToStandardError(e2), output: void 0 };
}
}
}
for (let i = onFinishes.length - 1; i >= 0; i--) {
try {
await onFinishes[i](state, options.context, options.meta);
} catch (e) {
state = { status: "error", input: options.input, error: convertToStandardError(e), output: void 0 };
}
}
if (state.status === "error") {
throw state.error;
}
return state.output;
};
return await next();
}
function convertToArray(value2) {
if (value2 === void 0) {
return [];
}
return Array.isArray(value2) ? value2 : [value2];
}
// src/json.ts
function parseJSONSafely(text) {
if (text === "")
return void 0;
try {
return JSON.parse(text);
} catch {
return text;
}
}
// src/object.ts
import { isPlainObject } from "is-what";
function set(root, segments, value2) {

@@ -115,3 +37,3 @@ const ref = { root };

});
} else if (isPlainObject(payload)) {
} else if (isObject(payload)) {
for (const key in payload) {

@@ -123,35 +45,87 @@ findDeepMatches(check, payload[key], [...segments, key], maps, values);

}
function isObject(value2) {
if (!value2 || typeof value2 !== "object") {
return false;
}
const proto = Object.getPrototypeOf(value2);
return proto === Object.prototype || !proto || !proto.constructor;
}
// src/proxy.ts
function createCallableObject(obj, handler) {
const proxy = new Proxy(handler, {
has(target, key) {
return Reflect.has(obj, key) || Reflect.has(target, key);
},
ownKeys(target) {
return Array.from(new Set(Reflect.ownKeys(obj).concat(...Reflect.ownKeys(target))));
},
get(target, key) {
if (!Reflect.has(target, key) || Reflect.has(obj, key)) {
return Reflect.get(obj, key);
}
return Reflect.get(target, key);
},
defineProperty(_, key, descriptor) {
return Reflect.defineProperty(obj, key, descriptor);
},
set(_, key, value2) {
return Reflect.set(obj, key, value2);
},
deleteProperty(target, key) {
return Reflect.deleteProperty(target, key) && Reflect.deleteProperty(obj, key);
// src/error.ts
function toError(error) {
if (error instanceof Error) {
return error;
}
if (typeof error === "string") {
return new Error(error, { cause: error });
}
if (isObject(error)) {
if ("message" in error && typeof error.message === "string") {
return new Error(error.message, { cause: error });
}
});
return proxy;
if ("name" in error && typeof error.name === "string") {
return new Error(error.name, { cause: error });
}
}
return new Error("Unknown error", { cause: error });
}
// src/interceptor.ts
function onStart(callback) {
return async (options, ...rest) => {
await callback(options, ...rest);
return await options.next();
};
}
function onSuccess(callback) {
return async (options, ...rest) => {
const result = await options.next();
await callback(result, options, ...rest);
return result;
};
}
function onError(callback) {
return async (options, ...rest) => {
try {
return await options.next();
} catch (error) {
await callback(error, options, ...rest);
throw error;
}
};
}
function onFinish(callback) {
let state;
return async (options, ...rest) => {
try {
const result = await options.next();
state = [result, void 0, "success"];
return result;
} catch (error) {
state = [void 0, error, "error"];
throw error;
} finally {
await callback(state, options, ...rest);
}
};
}
async function intercept(interceptors, options, main) {
let index = 0;
const next = async (options2) => {
const interceptor = interceptors[index++];
if (!interceptor) {
return await main(options2);
}
return await interceptor({
...options2,
next: (newOptions = options2) => next(newOptions)
});
};
return await next(options);
}
// src/value.ts
function value(value2) {
function value(value2, ...args) {
if (typeof value2 === "function") {
return value2();
return value2(...args);
}

@@ -162,19 +136,20 @@ return value2;

// src/index.ts
import { isPlainObject as isPlainObject2 } from "is-what";
import { guard, mapEntries, mapValues, omit, trim } from "radash";
import { group, guard, mapEntries, mapValues, omit, retry, trim } from "radash";
export {
ORPC_HANDLER_HEADER,
ORPC_HANDLER_VALUE,
convertToArray,
createCallableObject,
executeWithHooks,
findDeepMatches,
get,
group,
guard,
isPlainObject2 as isPlainObject,
intercept,
isObject,
mapEntries,
mapValues,
omit,
parseJSONSafely,
onError,
onFinish,
onStart,
onSuccess,
retry,
set,
toError,
trim,

@@ -181,0 +156,0 @@ value

@@ -1,65 +0,2 @@

import type { StandardSchemaV1 } from '@standard-schema/spec';
export declare const ORPC_ERROR_CODE_STATUSES: {
readonly BAD_REQUEST: 400;
readonly UNAUTHORIZED: 401;
readonly FORBIDDEN: 403;
readonly NOT_FOUND: 404;
readonly METHOD_NOT_SUPPORTED: 405;
readonly NOT_ACCEPTABLE: 406;
readonly TIMEOUT: 408;
readonly CONFLICT: 409;
readonly PRECONDITION_FAILED: 412;
readonly PAYLOAD_TOO_LARGE: 413;
readonly UNSUPPORTED_MEDIA_TYPE: 415;
readonly UNPROCESSABLE_CONTENT: 422;
readonly TOO_MANY_REQUESTS: 429;
readonly CLIENT_CLOSED_REQUEST: 499;
readonly INTERNAL_SERVER_ERROR: 500;
readonly NOT_IMPLEMENTED: 501;
readonly BAD_GATEWAY: 502;
readonly SERVICE_UNAVAILABLE: 503;
readonly GATEWAY_TIMEOUT: 504;
};
export type ORPCErrorCode = keyof typeof ORPC_ERROR_CODE_STATUSES;
export interface ORPCErrorJSON<TCode extends ORPCErrorCode, TData> {
code: TCode;
status: number;
message: string;
data: TData;
issues?: readonly StandardSchemaV1.Issue[];
}
export type ANY_ORPC_ERROR_JSON = ORPCErrorJSON<any, any>;
export type WELL_ORPC_ERROR_JSON = ORPCErrorJSON<ORPCErrorCode, unknown>;
export declare class ORPCError<TCode extends ORPCErrorCode, TData> extends Error {
zz$oe: {
code: TCode;
status?: number;
message?: string;
cause?: unknown;
issues?: readonly StandardSchemaV1.Issue[];
} & (undefined extends TData ? {
data?: TData;
} : {
data: TData;
});
constructor(zz$oe: {
code: TCode;
status?: number;
message?: string;
cause?: unknown;
issues?: readonly StandardSchemaV1.Issue[];
} & (undefined extends TData ? {
data?: TData;
} : {
data: TData;
}));
get code(): TCode;
get status(): number;
get data(): TData;
get issues(): readonly StandardSchemaV1.Issue[] | undefined;
toJSON(): ORPCErrorJSON<TCode, TData>;
static fromJSON(json: unknown): ORPCError<ORPCErrorCode, any> | undefined;
}
export type WELL_ORPC_ERROR = ORPCError<ORPCErrorCode, unknown>;
export declare function convertToStandardError(error: unknown): Error;
export declare function toError(error: unknown): Error;
//# sourceMappingURL=error.d.ts.map

@@ -1,11 +0,10 @@

export * from './constants';
export * from './chain';
export * from './error';
export * from './function';
export * from './hook';
export * from './json';
export * from './interceptor';
export * from './object';
export * from './proxy';
export * from './types';
export * from './value';
export { isPlainObject } from 'is-what';
export { guard, mapEntries, mapValues, omit, trim } from 'radash';
export type * from 'type-fest';
export { group, guard, mapEntries, mapValues, omit, retry, trim } from 'radash';
export type { IsEqual, IsNever, PartialDeep, Promisable } from 'type-fest';
//# sourceMappingURL=index.d.ts.map
export type Segment = string | number;
export declare function set(root: Readonly<Record<string, unknown> | unknown[]>, segments: Readonly<Segment[]>, value: unknown): unknown;
export declare function set(root: unknown, segments: Readonly<Segment[]>, value: unknown): unknown;
export declare function get(root: Readonly<Record<string, unknown> | unknown[]>, segments: Readonly<Segment[]>): unknown;

@@ -8,2 +8,6 @@ export declare function findDeepMatches(check: (value: unknown) => boolean, payload: unknown, segments?: Segment[], maps?: Segment[][], values?: unknown[]): {

};
/**
* Check if the value is an object even it created by `Object.create(null)` or more tricky way.
*/
export declare function isObject(value: unknown): value is Record<PropertyKey, unknown>;
//# sourceMappingURL=object.d.ts.map
import type { Promisable } from 'type-fest';
export type Value<T> = T | (() => Promisable<T>);
export declare function value<T extends Value<any>>(value: T): Promise<T extends Value<infer U> ? U : never>;
export type Value<T, TArgs extends any[] = []> = T | ((...args: TArgs) => Promisable<T>);
export declare function value<T, TArgs extends any[]>(value: Value<T, TArgs>, ...args: NoInfer<TArgs>): Promise<T extends Value<infer U, any> ? U : never>;
//# sourceMappingURL=value.d.ts.map
{
"name": "@orpc/shared",
"type": "module",
"version": "0.0.0-next.7e55b05",
"version": "0.0.0-next.7e904b4",
"license": "MIT",

@@ -22,7 +22,2 @@ "homepage": "https://orpc.unnoq.com",

},
"./error": {
"types": "./dist/src/error.d.ts",
"import": "./dist/error.js",
"default": "./dist/error.js"
},
"./🔒/*": {

@@ -38,4 +33,2 @@ "types": "./dist/src/*.d.ts"

"dependencies": {
"@standard-schema/spec": "1.0.0-beta.4",
"is-what": "^5.0.2",
"radash": "^12.1.0",

@@ -45,3 +38,3 @@ "type-fest": "^4.26.1"

"scripts": {
"build": "tsup --clean --sourcemap --entry.index=src/index.ts --entry.error=src/error.ts --format=esm --onSuccess='tsc -b --noCheck'",
"build": "tsup --clean --sourcemap --entry.index=src/index.ts --format=esm --onSuccess='tsc -b --noCheck'",
"build:watch": "pnpm run build --watch",

@@ -48,0 +41,0 @@ "type:check": "tsc -b"

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc