@padosoft/utilities 1.4.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.mts +7 -0
- package/dist/index.mjs +1 -0
- package/dist/lib/configuration.d.mts +22 -0
- package/dist/lib/configuration.mjs +1 -0
- package/dist/lib/index.d.mts +5 -0
- package/dist/lib/index.mjs +1 -0
- package/dist/lib/query-proxy.d.mts +61 -0
- package/dist/lib/query-proxy.mjs +1 -0
- package/dist/lib/query.d.mts +83 -0
- package/dist/lib/query.mjs +1 -0
- package/dist/lib/turbo.d.mts +6 -0
- package/dist/lib/turbo.mjs +1 -0
- package/dist/lib/utils.d.mts +7 -0
- package/dist/lib/utils.mjs +1 -0
- package/dist/lib/zod/codecs/index.d.mts +2 -0
- package/dist/lib/zod/codecs/index.mjs +1 -0
- package/dist/lib/zod/codecs/json.d.mts +6 -0
- package/dist/lib/zod/codecs/json.mjs +1 -0
- package/dist/lib/zod/index.d.mts +3 -0
- package/dist/lib/zod/index.mjs +1 -0
- package/dist/lib/zod/utils.d.mts +10 -0
- package/dist/lib/zod/utils.mjs +1 -0
- package/dist/types/index.d.mts +3 -0
- package/dist/types/index.mjs +1 -0
- package/dist/types/utils.d.mts +12 -0
- package/dist/types/utils.mjs +1 -0
- package/dist/types/zod.d.mts +7 -0
- package/dist/types/zod.mjs +1 -0
- package/package.json +86 -0
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ConfigOverride, Configuration, defineConfigOverride } from "./lib/configuration.mjs";
|
|
2
|
+
import { fillArray, isColor, sleep, toPascalCase } from "./lib/utils.mjs";
|
|
3
|
+
import { QueryDefinition, QueryDescriptor, defineQuery, defineQueryGroup } from "./lib/query.mjs";
|
|
4
|
+
import { QueryProxy, createQueryProxy } from "./lib/query-proxy.mjs";
|
|
5
|
+
import { DeepMutable, DeepPartial, FullPartial, Intersect, LiteralUnion, MergeWithDefault, Mutable, Prettify, Satisfies } from "./types/utils.mjs";
|
|
6
|
+
import { ConvertMaybeZod, DeepConvertMaybeZod } from "./types/zod.mjs";
|
|
7
|
+
export { ConfigOverride, Configuration, ConvertMaybeZod, DeepConvertMaybeZod, DeepMutable, DeepPartial, FullPartial, Intersect, LiteralUnion, MergeWithDefault, Mutable, Prettify, QueryDefinition, QueryDescriptor, QueryProxy, Satisfies, createQueryProxy, defineConfigOverride, defineQuery, defineQueryGroup, fillArray, isColor, sleep, toPascalCase };
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Configuration as e,defineConfigOverride as t}from"./lib/configuration.mjs";import{fillArray as n,isColor as r,sleep as i,toPascalCase as a}from"./lib/utils.mjs";import{defineQuery as o,defineQueryGroup as s}from"./lib/query.mjs";import{createQueryProxy as c}from"./lib/query-proxy.mjs";export{e as Configuration,c as createQueryProxy,t as defineConfigOverride,o as defineQuery,s as defineQueryGroup,n as fillArray,r as isColor,i as sleep,a as toPascalCase};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
//#region src/lib/configuration.d.ts
|
|
2
|
+
interface ConfigOverride<TConfig extends object, K extends keyof TConfig = keyof TConfig> {
|
|
3
|
+
key: K;
|
|
4
|
+
override: (config: Readonly<TConfig>) => TConfig[K];
|
|
5
|
+
}
|
|
6
|
+
declare function defineConfigOverride<TConfig extends object, K extends keyof TConfig>(key: K, override: ConfigOverride<TConfig, K>["override"]): ConfigOverride<TConfig, K>;
|
|
7
|
+
declare class Configuration<TConfig extends object> {
|
|
8
|
+
protected overrides: ConfigOverride<TConfig>[];
|
|
9
|
+
protected config: TConfig;
|
|
10
|
+
private listeners;
|
|
11
|
+
constructor(defaultConfig: TConfig);
|
|
12
|
+
protected applyOverrides(config: TConfig): TConfig;
|
|
13
|
+
addOverride<K extends keyof TConfig>(override: ConfigOverride<TConfig, K>): void;
|
|
14
|
+
set(config: TConfig): void;
|
|
15
|
+
subscribe(listener: () => void): (() => void);
|
|
16
|
+
getSnapshot(): TConfig;
|
|
17
|
+
get(): TConfig;
|
|
18
|
+
get<K extends keyof TConfig>(key: K): TConfig[K];
|
|
19
|
+
get<K extends keyof TConfig>(key: K, defaultValue: NonNullable<TConfig[K]>): NonNullable<TConfig[K]>;
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
22
|
+
export { ConfigOverride, Configuration, defineConfigOverride };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e,t){return{key:e,override:t}}var t=class{overrides=[];config;listeners=new Set;constructor(e){this.config=e}applyOverrides(e){let t={...e};for(let e of this.overrides)t={...t,[e.key]:e.override(t)};return t}addOverride(e){this.overrides.push(e)}set(e){this.config=this.applyOverrides(e);for(let e of this.listeners)e()}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}getSnapshot(){return this.config}get(e,t){return e?this.config[e]??t:this.config}};export{t as Configuration,e as defineConfigOverride};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ConfigOverride, Configuration, defineConfigOverride } from "./configuration.mjs";
|
|
2
|
+
import { fillArray, isColor, sleep, toPascalCase } from "./utils.mjs";
|
|
3
|
+
import { QueryDefinition, QueryDescriptor, defineQuery, defineQueryGroup } from "./query.mjs";
|
|
4
|
+
import { QueryProxy, createQueryProxy } from "./query-proxy.mjs";
|
|
5
|
+
export { ConfigOverride, Configuration, QueryDefinition, QueryDescriptor, QueryProxy, createQueryProxy, defineConfigOverride, defineQuery, defineQueryGroup, fillArray, isColor, sleep, toPascalCase };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Configuration as e,defineConfigOverride as t}from"./configuration.mjs";import{fillArray as n,isColor as r,sleep as i,toPascalCase as a}from"./utils.mjs";import{defineQuery as o,defineQueryGroup as s}from"./query.mjs";import{createQueryProxy as c}from"./query-proxy.mjs";export{e as Configuration,c as createQueryProxy,t as defineConfigOverride,o as defineQuery,s as defineQueryGroup,n as fillArray,r as isColor,i as sleep,a as toPascalCase};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { QueryDescriptor } from "./query.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/query-proxy.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* An async method augmented with `$key` and `$query` helpers.
|
|
6
|
+
* The function itself remains directly callable.
|
|
7
|
+
*/
|
|
8
|
+
type QueryLeaf<TArgs extends unknown[], TResult> = {
|
|
9
|
+
(...args: TArgs): Promise<TResult>; /** Returns the query key array for the given arguments. */
|
|
10
|
+
$key(...args: TArgs): readonly unknown[]; /** Returns `{ queryKey, queryFn }` — spread directly into `useQuery()`. */
|
|
11
|
+
$query(...args: TArgs): QueryDescriptor<TResult>;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Recursively transforms a typed object:
|
|
15
|
+
* - Promise-returning methods → `QueryLeaf` (augmented with `$key` + `$query`)
|
|
16
|
+
* - Synchronous functions → passed through unchanged
|
|
17
|
+
* - Nested objects → recursively transformed
|
|
18
|
+
* - Primitives → passed through unchanged
|
|
19
|
+
*/
|
|
20
|
+
type QueryProxy<T> = T extends ((...args: infer A) => Promise<infer R>) ? QueryLeaf<A, R> : T extends ((...args: infer A) => infer R) ? (...args: A) => R : T extends object ? { readonly [K in keyof T]: QueryProxy<T[K]> } : T;
|
|
21
|
+
/**
|
|
22
|
+
* Wraps any typed object in a proxy that augments every async method with
|
|
23
|
+
* `.$key(...args)` and `.$query(...args)` helpers.
|
|
24
|
+
*
|
|
25
|
+
* The query key is derived automatically from the property-access path through
|
|
26
|
+
* the object plus the call arguments — no separate key definitions needed.
|
|
27
|
+
*
|
|
28
|
+
* Works with any typed object: REST clients, tRPC, service classes, etc.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```ts
|
|
32
|
+
* const q = createQueryProxy(apiClient);
|
|
33
|
+
*
|
|
34
|
+
* // Key — path through the object + args, no manual definition:
|
|
35
|
+
* q.v1.auth.getSession.$key(params)
|
|
36
|
+
* // → ['v1', 'auth', 'getSession', params]
|
|
37
|
+
*
|
|
38
|
+
* // Spread into useQuery — params specified exactly once:
|
|
39
|
+
* useQuery({
|
|
40
|
+
* ...q.v1.auth.getSession.$query(params),
|
|
41
|
+
* enabled: !!user,
|
|
42
|
+
* });
|
|
43
|
+
*
|
|
44
|
+
* // Direct call still works identically:
|
|
45
|
+
* await q.v1.auth.getSession(params);
|
|
46
|
+
*
|
|
47
|
+
* // For hook-based clients, wrap in useMemo:
|
|
48
|
+
* function useQ() {
|
|
49
|
+
* const client = useApiClient();
|
|
50
|
+
* return useMemo(() => createQueryProxy(client), [client]);
|
|
51
|
+
* }
|
|
52
|
+
* ```
|
|
53
|
+
*
|
|
54
|
+
* @param target - Any typed object with async methods.
|
|
55
|
+
* @param options.baseKey - Optional prefix prepended to every generated key.
|
|
56
|
+
*/
|
|
57
|
+
declare function createQueryProxy<T extends object>(target: T, options?: {
|
|
58
|
+
baseKey?: readonly unknown[];
|
|
59
|
+
}): QueryProxy<T>;
|
|
60
|
+
//#endregion
|
|
61
|
+
export { QueryProxy, createQueryProxy };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e,n){return t(e,[],n?.baseKey??[])}function t(e,n,r){return new Proxy(e,{get(e,i){if(typeof i==`symbol`)return e[i];let a=e[i],o=[...n,i];if(typeof a==`function`){let t=a.bind(e);return Object.assign((...e)=>t(...e),{$key:(...e)=>[...r,...o,...e],$query:(...e)=>({queryKey:[...r,...o,...e],queryFn:()=>t(...e)})})}return typeof a==`object`&&a?t(a,o,r):a}})}export{e as createQueryProxy};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
//#region src/lib/query.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* A plain object compatible with React Query (and similar libs) without importing them.
|
|
4
|
+
* Spread directly into `useQuery()`, `useSuspenseQuery()`, etc.
|
|
5
|
+
*/
|
|
6
|
+
type QueryDescriptor<TResult> = {
|
|
7
|
+
queryKey: readonly unknown[];
|
|
8
|
+
queryFn: () => Promise<TResult>;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* A typed query definition — holds the key factory and the fn factory together
|
|
12
|
+
* so parameters only need to be specified once at the call site.
|
|
13
|
+
*/
|
|
14
|
+
type QueryDefinition<TParams, TResult> = {
|
|
15
|
+
/** Returns the query key array for the given params. Use for cache invalidation / prefetching. */key(params: TParams): readonly unknown[]; /** Returns `{ queryKey, queryFn }` — spread directly into `useQuery()`. */
|
|
16
|
+
query(params: TParams): QueryDescriptor<TResult>;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Defines a typed query that pairs a key factory with a fn factory sharing the same params.
|
|
20
|
+
*
|
|
21
|
+
* The returned object is framework-agnostic — `query(params)` produces a plain
|
|
22
|
+
* `{ queryKey, queryFn }` object that can be spread into any React Query compatible hook.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```ts
|
|
26
|
+
* const cmsSectionQuery = defineQuery({
|
|
27
|
+
* queryKey: (p) => ['cms', 'section', p],
|
|
28
|
+
* queryFn: (p) => api.v1.cms.getCmsSection(p.section, p),
|
|
29
|
+
* });
|
|
30
|
+
*
|
|
31
|
+
* // In component — params specified once:
|
|
32
|
+
* useQuery({
|
|
33
|
+
* ...cmsSectionQuery.query({ section, nazioni_ID, listini_ID, lang, device }),
|
|
34
|
+
* enabled: !!section,
|
|
35
|
+
* });
|
|
36
|
+
*
|
|
37
|
+
* // For cache invalidation:
|
|
38
|
+
* queryClient.invalidateQueries({ queryKey: cmsSectionQuery.key({ section, ... }) });
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
declare function defineQuery<TParams, TResult>(config: {
|
|
42
|
+
queryKey: (params: TParams) => readonly unknown[];
|
|
43
|
+
queryFn: (params: TParams) => Promise<TResult>;
|
|
44
|
+
}): QueryDefinition<TParams, TResult>;
|
|
45
|
+
/**
|
|
46
|
+
* Groups related query definitions under a shared base key.
|
|
47
|
+
*
|
|
48
|
+
* Each member query's key is automatically prefixed with `baseKey`,
|
|
49
|
+
* so individual queries only define their tail segment.
|
|
50
|
+
* `group.base()` returns the raw base key for blanket invalidation.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```ts
|
|
54
|
+
* const pagesQueries = defineQueryGroup({
|
|
55
|
+
* baseKey: ['pages'],
|
|
56
|
+
* queries: {
|
|
57
|
+
* single: defineQuery({
|
|
58
|
+
* queryKey: ({ id, nazioni_ID }) => ['single', { id, nazioni_ID }],
|
|
59
|
+
* queryFn: ({ id, nazioni_ID }) => api.v1.cms.getPage(id, { nazioni_ID }),
|
|
60
|
+
* }),
|
|
61
|
+
* list: defineQuery({
|
|
62
|
+
* queryKey: ({ ids, nazioni_ID }) => ['list', { ids, nazioni_ID }],
|
|
63
|
+
* queryFn: (params) => api.v1.cms.getPages(params),
|
|
64
|
+
* }),
|
|
65
|
+
* },
|
|
66
|
+
* });
|
|
67
|
+
*
|
|
68
|
+
* pagesQueries.base() // → ['pages']
|
|
69
|
+
* pagesQueries.single.key({ id: 1, ... }) // → ['pages', 'single', { id: 1, ... }]
|
|
70
|
+
* pagesQueries.single.query({ id: 1, ... }) // → { queryKey, queryFn }
|
|
71
|
+
*
|
|
72
|
+
* // Invalidate all pages at once:
|
|
73
|
+
* queryClient.invalidateQueries({ queryKey: pagesQueries.base() });
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
declare function defineQueryGroup<TBase extends readonly unknown[], TDefs extends Record<string, QueryDefinition<unknown, unknown>>>(config: {
|
|
77
|
+
baseKey: TBase;
|
|
78
|
+
queries: TDefs;
|
|
79
|
+
}): {
|
|
80
|
+
base(): TBase;
|
|
81
|
+
} & TDefs;
|
|
82
|
+
//#endregion
|
|
83
|
+
export { QueryDefinition, QueryDescriptor, defineQuery, defineQueryGroup };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){return{key:e.queryKey,query:t=>({queryKey:e.queryKey(t),queryFn:()=>e.queryFn(t)})}}function t(e){let t={base:()=>e.baseKey};for(let[n,r]of Object.entries(e.queries))t[n]={key:t=>[...e.baseKey,...r.key(t)],query:t=>{let n=r.query(t);return{queryKey:[...e.baseKey,...n.queryKey],queryFn:n.queryFn}}};return t}export{e as defineQuery,t as defineQueryGroup};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{readdirSync as e}from"node:fs";import{resolve as t}from"node:path";import{cwd as n}from"node:process";const r=()=>e(t(n(),`apps`)),i=()=>e(t(n(),`packages`)),a=e=>e.includes(`.`)?`file name cannot include an extension`:e.includes(` `)?`file name cannot include spaces`:e?!0:`file name is required`;export{a as fileNameValidator,r as listApps,i as listPacakges};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
//#region src/lib/utils.d.ts
|
|
2
|
+
declare const fillArray: <T>(obj: T, n?: number) => T[];
|
|
3
|
+
declare const toPascalCase: (string: string) => string;
|
|
4
|
+
declare const isColor: (str: string) => boolean;
|
|
5
|
+
declare const sleep: (ms?: number) => Promise<void>;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { fillArray, isColor, sleep, toPascalCase };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=(e,t=8)=>Array.from({length:t},()=>({...e})),t=e=>{"worklet";return`${e}`.toLowerCase().replace(new RegExp(/[-_]+/,`g`),` `).replace(new RegExp(/[^\w\s]/,`g`),``).replace(new RegExp(/\s+(.)(\w*)/,`g`),(e,t,n)=>`${t.toUpperCase()+n}`).replace(new RegExp(/\w/),e=>e.toUpperCase())},n=e=>/^#([0-9A-Fa-f]{3}){1,2}$|^rgb/.test(e),r=(e=5e3)=>new Promise(t=>setTimeout(()=>t(),e));export{e as fillArray,n as isColor,r as sleep,t as toPascalCase};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsonCodec as e}from"./json.mjs";export{e as jsonCodec};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"zod";const t=t=>e.codec(e.string(),t,{decode:(t,n)=>{try{return JSON.parse(t)}catch(r){let i=r instanceof Error?r.message:String(r);return n.issues.push({code:`invalid_format`,format:`json`,input:t,message:i}),e.NEVER}},encode:e=>JSON.stringify(e)});export{t as jsonCodec};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsonCodec as e}from"./codecs/json.mjs";import"./codecs/index.mjs";import{formatZodError as t}from"./utils.mjs";export{t as formatZodError,e as jsonCodec};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as z from "zod/v4/core";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/zod/utils.d.ts
|
|
4
|
+
interface FormattedZodError {
|
|
5
|
+
code: string;
|
|
6
|
+
message: string;
|
|
7
|
+
}
|
|
8
|
+
declare const formatZodError: (error: z.$ZodError) => Readonly<FormattedZodError>;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { FormattedZodError, formatZodError };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{prettifyError as e}from"zod/v4/core";const t=t=>{let n=t.issues[0];return n?{code:n.code.toUpperCase(),message:e(t)}:{code:`UNKNOWN`,message:`Unknown issue`}};export{t as formatZodError};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { DeepMutable, DeepPartial, FullPartial, Intersect, LiteralUnion, MergeWithDefault, Mutable, Prettify, Satisfies } from "./utils.mjs";
|
|
2
|
+
import { ConvertMaybeZod, DeepConvertMaybeZod } from "./zod.mjs";
|
|
3
|
+
export { ConvertMaybeZod, DeepConvertMaybeZod, DeepMutable, DeepPartial, FullPartial, Intersect, LiteralUnion, MergeWithDefault, Mutable, Prettify, Satisfies };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
//#region src/types/utils.d.ts
|
|
2
|
+
type DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]> } : T;
|
|
3
|
+
type FullPartial<T> = T extends object ? { [P in keyof T]?: T[P] | undefined } : T;
|
|
4
|
+
type Prettify<T> = { [K in keyof T]: T[K] } & {};
|
|
5
|
+
type Intersect<T> = (T extends unknown ? (x: T) => 0 : never) extends ((x: infer R) => 0) ? R : never;
|
|
6
|
+
type MergeWithDefault<T extends Record<string, unknown>, Key extends string, Value> = Key extends keyof T ? T : T & { [K in Key]: Value };
|
|
7
|
+
type Satisfies<U, T extends U> = T;
|
|
8
|
+
type LiteralUnion<T extends U, U = string> = T | (U & {});
|
|
9
|
+
type Mutable<T> = { -readonly [P in keyof T]: T[P] };
|
|
10
|
+
type DeepMutable<T> = T extends object ? { [P in keyof T]: DeepMutable<T[P]> } : T;
|
|
11
|
+
//#endregion
|
|
12
|
+
export { DeepMutable, DeepPartial, FullPartial, Intersect, LiteralUnion, MergeWithDefault, Mutable, Prettify, Satisfies };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as z from "zod/v4/core";
|
|
2
|
+
|
|
3
|
+
//#region src/types/zod.d.ts
|
|
4
|
+
type ConvertMaybeZod<T> = T extends z.$ZodType ? z.infer<T> : T;
|
|
5
|
+
type DeepConvertMaybeZod<T> = T extends z.$ZodType ? z.infer<T> : T extends Array<infer U> ? DeepConvertMaybeZod<U>[] : T extends ReadonlyArray<infer U> ? Readonly<DeepConvertMaybeZod<U>>[] : T extends object ? { [K in keyof T]: DeepConvertMaybeZod<T[K]> } : T;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { ConvertMaybeZod, DeepConvertMaybeZod };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/package.json
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@padosoft/utilities",
|
|
3
|
+
"version": "1.4.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"types": "./dist/index.d.mts",
|
|
6
|
+
"exports": {
|
|
7
|
+
".": {
|
|
8
|
+
"default": "./dist/index.mjs",
|
|
9
|
+
"types": "./dist/index.d.mts"
|
|
10
|
+
},
|
|
11
|
+
"./lib": {
|
|
12
|
+
"default": "./dist/lib/index.mjs",
|
|
13
|
+
"types": "./dist/lib/index.d.mts"
|
|
14
|
+
},
|
|
15
|
+
"./lib/configuration": {
|
|
16
|
+
"default": "./dist/lib/configuration.mjs",
|
|
17
|
+
"types": "./dist/lib/configuration.d.mts"
|
|
18
|
+
},
|
|
19
|
+
"./lib/query": {
|
|
20
|
+
"default": "./dist/lib/query.mjs",
|
|
21
|
+
"types": "./dist/lib/query.d.mts"
|
|
22
|
+
},
|
|
23
|
+
"./lib/query-proxy": {
|
|
24
|
+
"default": "./dist/lib/query-proxy.mjs",
|
|
25
|
+
"types": "./dist/lib/query-proxy.d.mts"
|
|
26
|
+
},
|
|
27
|
+
"./lib/turbo": {
|
|
28
|
+
"default": "./dist/lib/turbo.mjs",
|
|
29
|
+
"types": "./dist/lib/turbo.d.mts"
|
|
30
|
+
},
|
|
31
|
+
"./lib/utils": {
|
|
32
|
+
"default": "./dist/lib/utils.mjs",
|
|
33
|
+
"types": "./dist/lib/utils.d.mts"
|
|
34
|
+
},
|
|
35
|
+
"./lib/zod": {
|
|
36
|
+
"default": "./dist/lib/zod/index.mjs",
|
|
37
|
+
"types": "./dist/lib/zod/index.d.mts"
|
|
38
|
+
},
|
|
39
|
+
"./lib/zod/codecs": {
|
|
40
|
+
"default": "./dist/lib/zod/codecs/index.mjs",
|
|
41
|
+
"types": "./dist/lib/zod/codecs/index.d.mts"
|
|
42
|
+
},
|
|
43
|
+
"./lib/zod/codecs/json": {
|
|
44
|
+
"default": "./dist/lib/zod/codecs/json.mjs",
|
|
45
|
+
"types": "./dist/lib/zod/codecs/json.d.mts"
|
|
46
|
+
},
|
|
47
|
+
"./lib/zod/utils": {
|
|
48
|
+
"default": "./dist/lib/zod/utils.mjs",
|
|
49
|
+
"types": "./dist/lib/zod/utils.d.mts"
|
|
50
|
+
},
|
|
51
|
+
"./types": {
|
|
52
|
+
"default": "./dist/types/index.mjs",
|
|
53
|
+
"types": "./dist/types/index.d.mts"
|
|
54
|
+
},
|
|
55
|
+
"./types/utils": {
|
|
56
|
+
"default": "./dist/types/utils.mjs",
|
|
57
|
+
"types": "./dist/types/utils.d.mts"
|
|
58
|
+
},
|
|
59
|
+
"./types/zod": {
|
|
60
|
+
"default": "./dist/types/zod.mjs",
|
|
61
|
+
"types": "./dist/types/zod.d.mts"
|
|
62
|
+
},
|
|
63
|
+
"./package.json": "./package.json"
|
|
64
|
+
},
|
|
65
|
+
"files": [
|
|
66
|
+
"dist"
|
|
67
|
+
],
|
|
68
|
+
"publishConfig": {
|
|
69
|
+
"access": "public",
|
|
70
|
+
"registry": "https://registry.npmjs.org/"
|
|
71
|
+
},
|
|
72
|
+
"repository": {
|
|
73
|
+
"url": "git+https://github.com/padosoft/ts-support.git"
|
|
74
|
+
},
|
|
75
|
+
"scripts": {
|
|
76
|
+
"build": "tsdown",
|
|
77
|
+
"ts:check": "tsc --noEmit"
|
|
78
|
+
},
|
|
79
|
+
"devDependencies": {
|
|
80
|
+
"@padosoft/config": "workspace:^"
|
|
81
|
+
},
|
|
82
|
+
"dependencies": {},
|
|
83
|
+
"peerDependencies": {
|
|
84
|
+
"zod": "^4.0.0"
|
|
85
|
+
}
|
|
86
|
+
}
|