@percepta/utils 0.1.11 → 0.1.13
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/config/getEnvConfig.cjs.map +1 -1
- package/dist/config/getEnvConfig.d.cts +4 -4
- package/dist/config/getEnvConfig.d.cts.map +1 -1
- package/dist/config/getEnvConfig.d.ts +4 -4
- package/dist/config/getEnvConfig.d.ts.map +1 -1
- package/dist/config/getEnvConfig.js.map +1 -1
- package/dist/utils/assertNever.cjs.map +1 -1
- package/dist/utils/assertNever.d.cts.map +1 -1
- package/dist/utils/assertNever.d.ts.map +1 -1
- package/dist/utils/assertNever.js.map +1 -1
- package/dist/utils/batchAsync.cjs.map +1 -1
- package/dist/utils/batchAsync.d.cts.map +1 -1
- package/dist/utils/batchAsync.d.ts.map +1 -1
- package/dist/utils/batchAsync.js.map +1 -1
- package/dist/utils/logNever.cjs.map +1 -1
- package/dist/utils/logNever.d.cts.map +1 -1
- package/dist/utils/logNever.d.ts.map +1 -1
- package/dist/utils/logNever.js.map +1 -1
- package/dist/utils/promiseAllValues.cjs.map +1 -1
- package/dist/utils/promiseAllValues.d.cts.map +1 -1
- package/dist/utils/promiseAllValues.d.ts.map +1 -1
- package/dist/utils/promiseAllValues.js.map +1 -1
- package/dist/utils/replaceAt.cjs.map +1 -1
- package/dist/utils/replaceAt.d.cts.map +1 -1
- package/dist/utils/replaceAt.d.ts.map +1 -1
- package/dist/utils/replaceAt.js.map +1 -1
- package/dist/utils/zodKeyedTypeUnion.cjs.map +1 -1
- package/dist/utils/zodKeyedTypeUnion.d.cts.map +1 -1
- package/dist/utils/zodKeyedTypeUnion.d.ts.map +1 -1
- package/dist/utils/zodKeyedTypeUnion.js.map +1 -1
- package/package.json +6 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEnvConfig.cjs","names":["z"],"sources":["../../src/config/getEnvConfig.ts"],"sourcesContent":["// @percepta/config/src/createEnvConfig.ts\nimport { z } from \"zod\";\n\n// Base schema that all apps get\nexport const BASE_ENV_SCHEMA = z.object({\n NODE_ENV: z\n .enum([\"development\", \"production\", \"test\"])\n .default(\"development\"),\n LOG_LEVEL: z\n .string()\n .toLowerCase()\n .pipe(z.enum([\"debug\", \"info\", \"warn\", \"error\"]))\n .default(\"info\"),\n});\n\nexport type BaseEnvConfig = z.infer<typeof BASE_ENV_SCHEMA>;\n\n// Factory that creates a configured getEnvConfig\nexport function createEnvConfig<TExtension extends z.ZodRawShape>(\n extensionSchema: z.ZodObject<TExtension>,\n) {\n const schema = BASE_ENV_SCHEMA.extend(extensionSchema.shape);\n type Config = z.infer<typeof schema>;\n\n let _cached: Config | undefined;\n\n function getEnvConfig(): Config {\n if (_cached == null) {\n _cached = schema.parse(process.env);\n }\n return _cached;\n }\n\n return { getEnvConfig, schema };\n}\n"],"mappings":";;AAIA,MAAa,kBAAkBA,IAAAA,EAAE,OAAO;CACtC,UAAUA,IAAAA,EACP,KAAK;EAAC;EAAe;EAAc;
|
|
1
|
+
{"version":3,"file":"getEnvConfig.cjs","names":["z"],"sources":["../../src/config/getEnvConfig.ts"],"sourcesContent":["// @percepta/config/src/createEnvConfig.ts\nimport { z } from \"zod\";\n\n// Base schema that all apps get\nexport const BASE_ENV_SCHEMA = z.object({\n NODE_ENV: z\n .enum([\"development\", \"production\", \"test\"])\n .default(\"development\"),\n LOG_LEVEL: z\n .string()\n .toLowerCase()\n .pipe(z.enum([\"debug\", \"info\", \"warn\", \"error\"]))\n .default(\"info\"),\n});\n\nexport type BaseEnvConfig = z.infer<typeof BASE_ENV_SCHEMA>;\n\n// Factory that creates a configured getEnvConfig\nexport function createEnvConfig<TExtension extends z.ZodRawShape>(\n extensionSchema: z.ZodObject<TExtension>,\n) {\n const schema = BASE_ENV_SCHEMA.extend(extensionSchema.shape);\n type Config = z.infer<typeof schema>;\n\n let _cached: Config | undefined;\n\n function getEnvConfig(): Config {\n if (_cached == null) {\n _cached = schema.parse(process.env);\n }\n return _cached;\n }\n\n return { getEnvConfig, schema };\n}\n"],"mappings":";;AAIA,MAAa,kBAAkBA,IAAAA,EAAE,OAAO;CACtC,UAAUA,IAAAA,EACP,KAAK;EAAC;EAAe;EAAc;CAAM,CAAC,EAC1C,QAAQ,aAAa;CACxB,WAAWA,IAAAA,EACR,OAAO,EACP,YAAY,EACZ,KAAKA,IAAAA,EAAE,KAAK;EAAC;EAAS;EAAQ;EAAQ;CAAO,CAAC,CAAC,EAC/C,QAAQ,MAAM;AACnB,CAAC;AAKD,SAAgB,gBACd,iBACA;CACA,MAAM,SAAS,gBAAgB,OAAO,gBAAgB,KAAK;CAG3D,IAAI;CAEJ,SAAS,eAAuB;EAC9B,IAAI,WAAW,MACb,UAAU,OAAO,MAAM,QAAQ,GAAG;EAEpC,OAAO;CACT;CAEA,OAAO;EAAE;EAAc;CAAO;AAChC"}
|
|
@@ -28,7 +28,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
28
28
|
warn: "warn";
|
|
29
29
|
error: "error";
|
|
30
30
|
}>>>;
|
|
31
|
-
} & TExtension : ({
|
|
31
|
+
} & { -readonly [P in keyof TExtension]: TExtension[P] } : ({
|
|
32
32
|
NODE_ENV: z.ZodDefault<z.ZodEnum<{
|
|
33
33
|
development: "development";
|
|
34
34
|
production: "production";
|
|
@@ -40,7 +40,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
40
40
|
warn: "warn";
|
|
41
41
|
error: "error";
|
|
42
42
|
}>>>;
|
|
43
|
-
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof TExtension]: TExtension[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, {}>;
|
|
43
|
+
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof { -readonly [P in keyof TExtension]: TExtension[P] }]: { -readonly [P in keyof TExtension]: TExtension[P] }[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, {}>;
|
|
44
44
|
schema: z.ZodObject<(("NODE_ENV" | "LOG_LEVEL") & keyof TExtension extends never ? {
|
|
45
45
|
NODE_ENV: z.ZodDefault<z.ZodEnum<{
|
|
46
46
|
development: "development";
|
|
@@ -53,7 +53,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
53
53
|
warn: "warn";
|
|
54
54
|
error: "error";
|
|
55
55
|
}>>>;
|
|
56
|
-
} & TExtension : ({
|
|
56
|
+
} & { -readonly [P in keyof TExtension]: TExtension[P] } : ({
|
|
57
57
|
NODE_ENV: z.ZodDefault<z.ZodEnum<{
|
|
58
58
|
development: "development";
|
|
59
59
|
production: "production";
|
|
@@ -65,7 +65,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
65
65
|
warn: "warn";
|
|
66
66
|
error: "error";
|
|
67
67
|
}>>>;
|
|
68
|
-
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof TExtension]: TExtension[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, z.core.$strip>;
|
|
68
|
+
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof { -readonly [P in keyof TExtension]: TExtension[P] }]: { -readonly [P in keyof TExtension]: TExtension[P] }[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, z.core.$strip>;
|
|
69
69
|
};
|
|
70
70
|
//#endregion
|
|
71
71
|
export { BASE_ENV_SCHEMA, BaseEnvConfig, createEnvConfig };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEnvConfig.d.cts","names":[],"sources":["../../src/config/getEnvConfig.ts"],"mappings":";;;cAIa,eAAA,EAAe,CAAA,CAAA,SAAA;;;;;;;;;;;;;KAWhB,aAAA,GAAgB,CAAA,CAAE,
|
|
1
|
+
{"version":3,"file":"getEnvConfig.d.cts","names":[],"sources":["../../src/config/getEnvConfig.ts"],"mappings":";;;cAIa,eAAA,EAAe,CAAA,CAAA,SAAA;;;;;;;;;;;;;KAWhB,aAAA,GAAgB,CAAA,CAAE,KAAK,QAAQ,eAAA;AAAA,iBAG3B,eAAA,oBAAmC,CAAA,CAAE,WAAA,EACnD,eAAA,EAAiB,CAAA,CAAE,SAAA,CAAU,UAAA"}
|
|
@@ -28,7 +28,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
28
28
|
warn: "warn";
|
|
29
29
|
error: "error";
|
|
30
30
|
}>>>;
|
|
31
|
-
} & TExtension : ({
|
|
31
|
+
} & { -readonly [P in keyof TExtension]: TExtension[P] } : ({
|
|
32
32
|
NODE_ENV: z.ZodDefault<z.ZodEnum<{
|
|
33
33
|
development: "development";
|
|
34
34
|
production: "production";
|
|
@@ -40,7 +40,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
40
40
|
warn: "warn";
|
|
41
41
|
error: "error";
|
|
42
42
|
}>>>;
|
|
43
|
-
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof TExtension]: TExtension[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, {}>;
|
|
43
|
+
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof { -readonly [P in keyof TExtension]: TExtension[P] }]: { -readonly [P in keyof TExtension]: TExtension[P] }[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, {}>;
|
|
44
44
|
schema: z.ZodObject<(("NODE_ENV" | "LOG_LEVEL") & keyof TExtension extends never ? {
|
|
45
45
|
NODE_ENV: z.ZodDefault<z.ZodEnum<{
|
|
46
46
|
development: "development";
|
|
@@ -53,7 +53,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
53
53
|
warn: "warn";
|
|
54
54
|
error: "error";
|
|
55
55
|
}>>>;
|
|
56
|
-
} & TExtension : ({
|
|
56
|
+
} & { -readonly [P in keyof TExtension]: TExtension[P] } : ({
|
|
57
57
|
NODE_ENV: z.ZodDefault<z.ZodEnum<{
|
|
58
58
|
development: "development";
|
|
59
59
|
production: "production";
|
|
@@ -65,7 +65,7 @@ declare function createEnvConfig<TExtension extends z.ZodRawShape>(extensionSche
|
|
|
65
65
|
warn: "warn";
|
|
66
66
|
error: "error";
|
|
67
67
|
}>>>;
|
|
68
|
-
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof TExtension]: TExtension[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, z.core.$strip>;
|
|
68
|
+
} extends infer T_1 extends z.core.util.SomeObject ? { [K in keyof T_1 as K extends keyof TExtension ? never : K]: T_1[K] } : never) & { [K_1 in keyof { -readonly [P in keyof TExtension]: TExtension[P] }]: { -readonly [P in keyof TExtension]: TExtension[P] }[K_1] }) extends infer T ? { [k in keyof T]: T[k] } : never, z.core.$strip>;
|
|
69
69
|
};
|
|
70
70
|
//#endregion
|
|
71
71
|
export { BASE_ENV_SCHEMA, BaseEnvConfig, createEnvConfig };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEnvConfig.d.ts","names":[],"sources":["../../src/config/getEnvConfig.ts"],"mappings":";;;cAIa,eAAA,EAAe,CAAA,CAAA,SAAA;;;;;;;;;;;;;KAWhB,aAAA,GAAgB,CAAA,CAAE,
|
|
1
|
+
{"version":3,"file":"getEnvConfig.d.ts","names":[],"sources":["../../src/config/getEnvConfig.ts"],"mappings":";;;cAIa,eAAA,EAAe,CAAA,CAAA,SAAA;;;;;;;;;;;;;KAWhB,aAAA,GAAgB,CAAA,CAAE,KAAK,QAAQ,eAAA;AAAA,iBAG3B,eAAA,oBAAmC,CAAA,CAAE,WAAA,EACnD,eAAA,EAAiB,CAAA,CAAE,SAAA,CAAU,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEnvConfig.js","names":[],"sources":["../../src/config/getEnvConfig.ts"],"sourcesContent":["// @percepta/config/src/createEnvConfig.ts\nimport { z } from \"zod\";\n\n// Base schema that all apps get\nexport const BASE_ENV_SCHEMA = z.object({\n NODE_ENV: z\n .enum([\"development\", \"production\", \"test\"])\n .default(\"development\"),\n LOG_LEVEL: z\n .string()\n .toLowerCase()\n .pipe(z.enum([\"debug\", \"info\", \"warn\", \"error\"]))\n .default(\"info\"),\n});\n\nexport type BaseEnvConfig = z.infer<typeof BASE_ENV_SCHEMA>;\n\n// Factory that creates a configured getEnvConfig\nexport function createEnvConfig<TExtension extends z.ZodRawShape>(\n extensionSchema: z.ZodObject<TExtension>,\n) {\n const schema = BASE_ENV_SCHEMA.extend(extensionSchema.shape);\n type Config = z.infer<typeof schema>;\n\n let _cached: Config | undefined;\n\n function getEnvConfig(): Config {\n if (_cached == null) {\n _cached = schema.parse(process.env);\n }\n return _cached;\n }\n\n return { getEnvConfig, schema };\n}\n"],"mappings":";;AAIA,MAAa,kBAAkB,EAAE,OAAO;CACtC,UAAU,EACP,KAAK;EAAC;EAAe;EAAc;
|
|
1
|
+
{"version":3,"file":"getEnvConfig.js","names":[],"sources":["../../src/config/getEnvConfig.ts"],"sourcesContent":["// @percepta/config/src/createEnvConfig.ts\nimport { z } from \"zod\";\n\n// Base schema that all apps get\nexport const BASE_ENV_SCHEMA = z.object({\n NODE_ENV: z\n .enum([\"development\", \"production\", \"test\"])\n .default(\"development\"),\n LOG_LEVEL: z\n .string()\n .toLowerCase()\n .pipe(z.enum([\"debug\", \"info\", \"warn\", \"error\"]))\n .default(\"info\"),\n});\n\nexport type BaseEnvConfig = z.infer<typeof BASE_ENV_SCHEMA>;\n\n// Factory that creates a configured getEnvConfig\nexport function createEnvConfig<TExtension extends z.ZodRawShape>(\n extensionSchema: z.ZodObject<TExtension>,\n) {\n const schema = BASE_ENV_SCHEMA.extend(extensionSchema.shape);\n type Config = z.infer<typeof schema>;\n\n let _cached: Config | undefined;\n\n function getEnvConfig(): Config {\n if (_cached == null) {\n _cached = schema.parse(process.env);\n }\n return _cached;\n }\n\n return { getEnvConfig, schema };\n}\n"],"mappings":";;AAIA,MAAa,kBAAkB,EAAE,OAAO;CACtC,UAAU,EACP,KAAK;EAAC;EAAe;EAAc;CAAM,CAAC,EAC1C,QAAQ,aAAa;CACxB,WAAW,EACR,OAAO,EACP,YAAY,EACZ,KAAK,EAAE,KAAK;EAAC;EAAS;EAAQ;EAAQ;CAAO,CAAC,CAAC,EAC/C,QAAQ,MAAM;AACnB,CAAC;AAKD,SAAgB,gBACd,iBACA;CACA,MAAM,SAAS,gBAAgB,OAAO,gBAAgB,KAAK;CAG3D,IAAI;CAEJ,SAAS,eAAuB;EAC9B,IAAI,WAAW,MACb,UAAU,OAAO,MAAM,QAAQ,GAAG;EAEpC,OAAO;CACT;CAEA,OAAO;EAAE;EAAc;CAAO;AAChC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertNever.cjs","names":[],"sources":["../../src/utils/assertNever.ts"],"sourcesContent":["export function assertNever(value: never): never {\n throw new Error(\"Unexpected value.\", { cause: value });\n}\n"],"mappings":";AAAA,SAAgB,YAAY,OAAqB;
|
|
1
|
+
{"version":3,"file":"assertNever.cjs","names":[],"sources":["../../src/utils/assertNever.ts"],"sourcesContent":["export function assertNever(value: never): never {\n throw new Error(\"Unexpected value.\", { cause: value });\n}\n"],"mappings":";AAAA,SAAgB,YAAY,OAAqB;CAC/C,MAAM,IAAI,MAAM,qBAAqB,EAAE,OAAO,MAAM,CAAC;AACvD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertNever.d.cts","names":[],"sources":["../../src/utils/assertNever.ts"],"mappings":";iBAAgB,WAAA,CAAY,
|
|
1
|
+
{"version":3,"file":"assertNever.d.cts","names":[],"sources":["../../src/utils/assertNever.ts"],"mappings":";iBAAgB,WAAA,CAAY,KAAY"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertNever.d.ts","names":[],"sources":["../../src/utils/assertNever.ts"],"mappings":";iBAAgB,WAAA,CAAY,
|
|
1
|
+
{"version":3,"file":"assertNever.d.ts","names":[],"sources":["../../src/utils/assertNever.ts"],"mappings":";iBAAgB,WAAA,CAAY,KAAY"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertNever.js","names":[],"sources":["../../src/utils/assertNever.ts"],"sourcesContent":["export function assertNever(value: never): never {\n throw new Error(\"Unexpected value.\", { cause: value });\n}\n"],"mappings":";AAAA,SAAgB,YAAY,OAAqB;
|
|
1
|
+
{"version":3,"file":"assertNever.js","names":[],"sources":["../../src/utils/assertNever.ts"],"sourcesContent":["export function assertNever(value: never): never {\n throw new Error(\"Unexpected value.\", { cause: value });\n}\n"],"mappings":";AAAA,SAAgB,YAAY,OAAqB;CAC/C,MAAM,IAAI,MAAM,qBAAqB,EAAE,OAAO,MAAM,CAAC;AACvD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batchAsync.cjs","names":[],"sources":["../../src/utils/batchAsync.ts"],"sourcesContent":["import { chunk, flatten } from \"lodash-es\";\n\nexport async function batchAsync<TValue, TReturn>(\n values: TValue[],\n batchSize: number,\n iteratee: (value: TValue, index: number) => Promise<TReturn>,\n): Promise<TReturn[]> {\n if (batchSize <= 0) {\n throw new Error(\"batchSize must be greater than 0\");\n }\n const results: TReturn[][] = [];\n const valuesWithIndex = values.map(\n (value, index): [value: TValue, index: number] => [value, index],\n );\n const chunkedValues = chunk(valuesWithIndex, batchSize);\n for (const chunkGroup of chunkedValues) {\n const chunkResults = await Promise.all(\n chunkGroup.map(([value, index]) => iteratee(value, index)),\n );\n results.push(chunkResults);\n }\n return flatten(results);\n}\n"],"mappings":";;AAEA,eAAsB,WACpB,QACA,WACA,UACoB;
|
|
1
|
+
{"version":3,"file":"batchAsync.cjs","names":[],"sources":["../../src/utils/batchAsync.ts"],"sourcesContent":["import { chunk, flatten } from \"lodash-es\";\n\nexport async function batchAsync<TValue, TReturn>(\n values: TValue[],\n batchSize: number,\n iteratee: (value: TValue, index: number) => Promise<TReturn>,\n): Promise<TReturn[]> {\n if (batchSize <= 0) {\n throw new Error(\"batchSize must be greater than 0\");\n }\n const results: TReturn[][] = [];\n const valuesWithIndex = values.map(\n (value, index): [value: TValue, index: number] => [value, index],\n );\n const chunkedValues = chunk(valuesWithIndex, batchSize);\n for (const chunkGroup of chunkedValues) {\n const chunkResults = await Promise.all(\n chunkGroup.map(([value, index]) => iteratee(value, index)),\n );\n results.push(chunkResults);\n }\n return flatten(results);\n}\n"],"mappings":";;AAEA,eAAsB,WACpB,QACA,WACA,UACoB;CACpB,IAAI,aAAa,GACf,MAAM,IAAI,MAAM,kCAAkC;CAEpD,MAAM,UAAuB,CAAC;CAI9B,MAAM,iBAAA,GAAA,UAAA,OAHkB,OAAO,KAC5B,OAAO,UAA0C,CAAC,OAAO,KAAK,CAEvB,GAAG,SAAS;CACtD,KAAK,MAAM,cAAc,eAAe;EACtC,MAAM,eAAe,MAAM,QAAQ,IACjC,WAAW,KAAK,CAAC,OAAO,WAAW,SAAS,OAAO,KAAK,CAAC,CAC3D;EACA,QAAQ,KAAK,YAAY;CAC3B;CACA,QAAA,GAAA,UAAA,SAAe,OAAO;AACxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batchAsync.d.cts","names":[],"sources":["../../src/utils/batchAsync.ts"],"mappings":";iBAEsB,UAAA,
|
|
1
|
+
{"version":3,"file":"batchAsync.d.cts","names":[],"sources":["../../src/utils/batchAsync.ts"],"mappings":";iBAEsB,UAAA,kBACpB,MAAA,EAAQ,MAAA,IACR,SAAA,UACA,QAAA,GAAW,KAAA,EAAO,MAAA,EAAQ,KAAA,aAAkB,OAAA,CAAQ,OAAA,IACnD,OAAA,CAAQ,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batchAsync.d.ts","names":[],"sources":["../../src/utils/batchAsync.ts"],"mappings":";iBAEsB,UAAA,
|
|
1
|
+
{"version":3,"file":"batchAsync.d.ts","names":[],"sources":["../../src/utils/batchAsync.ts"],"mappings":";iBAEsB,UAAA,kBACpB,MAAA,EAAQ,MAAA,IACR,SAAA,UACA,QAAA,GAAW,KAAA,EAAO,MAAA,EAAQ,KAAA,aAAkB,OAAA,CAAQ,OAAA,IACnD,OAAA,CAAQ,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batchAsync.js","names":[],"sources":["../../src/utils/batchAsync.ts"],"sourcesContent":["import { chunk, flatten } from \"lodash-es\";\n\nexport async function batchAsync<TValue, TReturn>(\n values: TValue[],\n batchSize: number,\n iteratee: (value: TValue, index: number) => Promise<TReturn>,\n): Promise<TReturn[]> {\n if (batchSize <= 0) {\n throw new Error(\"batchSize must be greater than 0\");\n }\n const results: TReturn[][] = [];\n const valuesWithIndex = values.map(\n (value, index): [value: TValue, index: number] => [value, index],\n );\n const chunkedValues = chunk(valuesWithIndex, batchSize);\n for (const chunkGroup of chunkedValues) {\n const chunkResults = await Promise.all(\n chunkGroup.map(([value, index]) => iteratee(value, index)),\n );\n results.push(chunkResults);\n }\n return flatten(results);\n}\n"],"mappings":";;AAEA,eAAsB,WACpB,QACA,WACA,UACoB;
|
|
1
|
+
{"version":3,"file":"batchAsync.js","names":[],"sources":["../../src/utils/batchAsync.ts"],"sourcesContent":["import { chunk, flatten } from \"lodash-es\";\n\nexport async function batchAsync<TValue, TReturn>(\n values: TValue[],\n batchSize: number,\n iteratee: (value: TValue, index: number) => Promise<TReturn>,\n): Promise<TReturn[]> {\n if (batchSize <= 0) {\n throw new Error(\"batchSize must be greater than 0\");\n }\n const results: TReturn[][] = [];\n const valuesWithIndex = values.map(\n (value, index): [value: TValue, index: number] => [value, index],\n );\n const chunkedValues = chunk(valuesWithIndex, batchSize);\n for (const chunkGroup of chunkedValues) {\n const chunkResults = await Promise.all(\n chunkGroup.map(([value, index]) => iteratee(value, index)),\n );\n results.push(chunkResults);\n }\n return flatten(results);\n}\n"],"mappings":";;AAEA,eAAsB,WACpB,QACA,WACA,UACoB;CACpB,IAAI,aAAa,GACf,MAAM,IAAI,MAAM,kCAAkC;CAEpD,MAAM,UAAuB,CAAC;CAI9B,MAAM,gBAAgB,MAHE,OAAO,KAC5B,OAAO,UAA0C,CAAC,OAAO,KAAK,CAEvB,GAAG,SAAS;CACtD,KAAK,MAAM,cAAc,eAAe;EACtC,MAAM,eAAe,MAAM,QAAQ,IACjC,WAAW,KAAK,CAAC,OAAO,WAAW,SAAS,OAAO,KAAK,CAAC,CAC3D;EACA,QAAQ,KAAK,YAAY;CAC3B;CACA,OAAO,QAAQ,OAAO;AACxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logNever.cjs","names":[],"sources":["../../src/utils/logNever.ts"],"sourcesContent":["export function logNever(value: never): void;\nexport function logNever<TReturn>(value: never, returnValue: TReturn): TReturn;\nexport function logNever(value: never, returnValue?: unknown): unknown {\n console.error(\"Unexpected value.\", value);\n return returnValue;\n}\n"],"mappings":";AAEA,SAAgB,SAAS,OAAc,aAAgC;
|
|
1
|
+
{"version":3,"file":"logNever.cjs","names":[],"sources":["../../src/utils/logNever.ts"],"sourcesContent":["export function logNever(value: never): void;\nexport function logNever<TReturn>(value: never, returnValue: TReturn): TReturn;\nexport function logNever(value: never, returnValue?: unknown): unknown {\n console.error(\"Unexpected value.\", value);\n return returnValue;\n}\n"],"mappings":";AAEA,SAAgB,SAAS,OAAc,aAAgC;CACrE,QAAQ,MAAM,qBAAqB,KAAK;CACxC,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logNever.d.cts","names":[],"sources":["../../src/utils/logNever.ts"],"mappings":";iBAAgB,QAAA,CAAS,
|
|
1
|
+
{"version":3,"file":"logNever.d.cts","names":[],"sources":["../../src/utils/logNever.ts"],"mappings":";iBAAgB,QAAA,CAAS,KAAY;AAAA,iBACrB,QAAA,UAAkB,KAAA,SAAc,WAAA,EAAa,OAAA,GAAU,OAAO"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logNever.d.ts","names":[],"sources":["../../src/utils/logNever.ts"],"mappings":";iBAAgB,QAAA,CAAS,
|
|
1
|
+
{"version":3,"file":"logNever.d.ts","names":[],"sources":["../../src/utils/logNever.ts"],"mappings":";iBAAgB,QAAA,CAAS,KAAY;AAAA,iBACrB,QAAA,UAAkB,KAAA,SAAc,WAAA,EAAa,OAAA,GAAU,OAAO"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logNever.js","names":[],"sources":["../../src/utils/logNever.ts"],"sourcesContent":["export function logNever(value: never): void;\nexport function logNever<TReturn>(value: never, returnValue: TReturn): TReturn;\nexport function logNever(value: never, returnValue?: unknown): unknown {\n console.error(\"Unexpected value.\", value);\n return returnValue;\n}\n"],"mappings":";AAEA,SAAgB,SAAS,OAAc,aAAgC;
|
|
1
|
+
{"version":3,"file":"logNever.js","names":[],"sources":["../../src/utils/logNever.ts"],"sourcesContent":["export function logNever(value: never): void;\nexport function logNever<TReturn>(value: never, returnValue: TReturn): TReturn;\nexport function logNever(value: never, returnValue?: unknown): unknown {\n console.error(\"Unexpected value.\", value);\n return returnValue;\n}\n"],"mappings":";AAEA,SAAgB,SAAS,OAAc,aAAgC;CACrE,QAAQ,MAAM,qBAAqB,KAAK;CACxC,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseAllValues.cjs","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"sourcesContent":["import { fromPairs } from \"lodash-es\";\n\ntype PromiseObject<T> = {\n [K in keyof T]: Promise<T[K]>;\n};\n\nexport async function promiseAllValues<T>(\n promiseObject: PromiseObject<T>,\n): Promise<T> {\n const results = await Promise.all(\n Object.entries(promiseObject).map(\n async ([key, promise]): Promise<[string, unknown]> => [\n key,\n await promise,\n ],\n ),\n );\n\n return fromPairs(results) as T;\n}\n"],"mappings":";;AAMA,eAAsB,iBACpB,eACY;
|
|
1
|
+
{"version":3,"file":"promiseAllValues.cjs","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"sourcesContent":["import { fromPairs } from \"lodash-es\";\n\ntype PromiseObject<T> = {\n [K in keyof T]: Promise<T[K]>;\n};\n\nexport async function promiseAllValues<T>(\n promiseObject: PromiseObject<T>,\n): Promise<T> {\n const results = await Promise.all(\n Object.entries(promiseObject).map(\n async ([key, promise]): Promise<[string, unknown]> => [\n key,\n await promise,\n ],\n ),\n );\n\n return fromPairs(results) as T;\n}\n"],"mappings":";;AAMA,eAAsB,iBACpB,eACY;CAUZ,QAAA,GAAA,UAAA,WAAiB,MATK,QAAQ,IAC5B,OAAO,QAAQ,aAAa,EAAE,IAC5B,OAAO,CAAC,KAAK,aAAyC,CACpD,KACA,MAAM,OACR,CACF,CACF,CAEwB;AAC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseAllValues.d.cts","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"mappings":";KAEK,aAAA,oBACS,CAAA,GAAI,OAAA,CAAQ,CAAA,CAAE,CAAA;AAAA,iBAGN,gBAAA,
|
|
1
|
+
{"version":3,"file":"promiseAllValues.d.cts","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"mappings":";KAEK,aAAA,oBACS,CAAA,GAAI,OAAA,CAAQ,CAAA,CAAE,CAAA;AAAA,iBAGN,gBAAA,IACpB,aAAA,EAAe,aAAA,CAAc,CAAA,IAC5B,OAAA,CAAQ,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseAllValues.d.ts","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"mappings":";KAEK,aAAA,oBACS,CAAA,GAAI,OAAA,CAAQ,CAAA,CAAE,CAAA;AAAA,iBAGN,gBAAA,
|
|
1
|
+
{"version":3,"file":"promiseAllValues.d.ts","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"mappings":";KAEK,aAAA,oBACS,CAAA,GAAI,OAAA,CAAQ,CAAA,CAAE,CAAA;AAAA,iBAGN,gBAAA,IACpB,aAAA,EAAe,aAAA,CAAc,CAAA,IAC5B,OAAA,CAAQ,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseAllValues.js","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"sourcesContent":["import { fromPairs } from \"lodash-es\";\n\ntype PromiseObject<T> = {\n [K in keyof T]: Promise<T[K]>;\n};\n\nexport async function promiseAllValues<T>(\n promiseObject: PromiseObject<T>,\n): Promise<T> {\n const results = await Promise.all(\n Object.entries(promiseObject).map(\n async ([key, promise]): Promise<[string, unknown]> => [\n key,\n await promise,\n ],\n ),\n );\n\n return fromPairs(results) as T;\n}\n"],"mappings":";;AAMA,eAAsB,iBACpB,eACY;
|
|
1
|
+
{"version":3,"file":"promiseAllValues.js","names":[],"sources":["../../src/utils/promiseAllValues.ts"],"sourcesContent":["import { fromPairs } from \"lodash-es\";\n\ntype PromiseObject<T> = {\n [K in keyof T]: Promise<T[K]>;\n};\n\nexport async function promiseAllValues<T>(\n promiseObject: PromiseObject<T>,\n): Promise<T> {\n const results = await Promise.all(\n Object.entries(promiseObject).map(\n async ([key, promise]): Promise<[string, unknown]> => [\n key,\n await promise,\n ],\n ),\n );\n\n return fromPairs(results) as T;\n}\n"],"mappings":";;AAMA,eAAsB,iBACpB,eACY;CAUZ,OAAO,UAAU,MATK,QAAQ,IAC5B,OAAO,QAAQ,aAAa,EAAE,IAC5B,OAAO,CAAC,KAAK,aAAyC,CACpD,KACA,MAAM,OACR,CACF,CACF,CAEwB;AAC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replaceAt.cjs","names":[],"sources":["../../src/utils/replaceAt.ts"],"sourcesContent":["/**\n * Returns a new array with the element at the specified index replaced.\n *\n * @param array The source array\n * @param index The index of the element to replace\n * @param value The new value to insert at the index\n * @returns A new array with the replacement applied\n */\nexport function replaceAt<T>(array: T[], index: number, value: T): T[] {\n const newArray = [...array];\n newArray[index] = value;\n return newArray;\n}\n"],"mappings":";;;;;;;;;AAQA,SAAgB,UAAa,OAAY,OAAe,OAAe;CACrE,MAAM,WAAW,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"replaceAt.cjs","names":[],"sources":["../../src/utils/replaceAt.ts"],"sourcesContent":["/**\n * Returns a new array with the element at the specified index replaced.\n *\n * @param array The source array\n * @param index The index of the element to replace\n * @param value The new value to insert at the index\n * @returns A new array with the replacement applied\n */\nexport function replaceAt<T>(array: T[], index: number, value: T): T[] {\n const newArray = [...array];\n newArray[index] = value;\n return newArray;\n}\n"],"mappings":";;;;;;;;;AAQA,SAAgB,UAAa,OAAY,OAAe,OAAe;CACrE,MAAM,WAAW,CAAC,GAAG,KAAK;CAC1B,SAAS,SAAS;CAClB,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replaceAt.d.cts","names":[],"sources":["../../src/utils/replaceAt.ts"],"mappings":";;AAQA;;;;;;;iBAAgB,SAAA,
|
|
1
|
+
{"version":3,"file":"replaceAt.d.cts","names":[],"sources":["../../src/utils/replaceAt.ts"],"mappings":";;AAQA;;;;;;;iBAAgB,SAAA,IAAa,KAAA,EAAO,CAAA,IAAK,KAAA,UAAe,KAAA,EAAO,CAAA,GAAI,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replaceAt.d.ts","names":[],"sources":["../../src/utils/replaceAt.ts"],"mappings":";;AAQA;;;;;;;iBAAgB,SAAA,
|
|
1
|
+
{"version":3,"file":"replaceAt.d.ts","names":[],"sources":["../../src/utils/replaceAt.ts"],"mappings":";;AAQA;;;;;;;iBAAgB,SAAA,IAAa,KAAA,EAAO,CAAA,IAAK,KAAA,UAAe,KAAA,EAAO,CAAA,GAAI,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replaceAt.js","names":[],"sources":["../../src/utils/replaceAt.ts"],"sourcesContent":["/**\n * Returns a new array with the element at the specified index replaced.\n *\n * @param array The source array\n * @param index The index of the element to replace\n * @param value The new value to insert at the index\n * @returns A new array with the replacement applied\n */\nexport function replaceAt<T>(array: T[], index: number, value: T): T[] {\n const newArray = [...array];\n newArray[index] = value;\n return newArray;\n}\n"],"mappings":";;;;;;;;;AAQA,SAAgB,UAAa,OAAY,OAAe,OAAe;CACrE,MAAM,WAAW,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"replaceAt.js","names":[],"sources":["../../src/utils/replaceAt.ts"],"sourcesContent":["/**\n * Returns a new array with the element at the specified index replaced.\n *\n * @param array The source array\n * @param index The index of the element to replace\n * @param value The new value to insert at the index\n * @returns A new array with the replacement applied\n */\nexport function replaceAt<T>(array: T[], index: number, value: T): T[] {\n const newArray = [...array];\n newArray[index] = value;\n return newArray;\n}\n"],"mappings":";;;;;;;;;AAQA,SAAgB,UAAa,OAAY,OAAe,OAAe;CACrE,MAAM,WAAW,CAAC,GAAG,KAAK;CAC1B,SAAS,SAAS;CAClB,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zodKeyedTypeUnion.cjs","names":["z"],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"zodKeyedTypeUnion.cjs","names":["z"],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"sourcesContent":["import type { KeyedTypeUnion, ValueForTypeKey } from \"keyed-type-union\";\nimport { z } from \"zod\";\n\ntype SchemasByType<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>, TTypeKey>,\n TTypeKey extends string = \"type\",\n> = {\n [TType in TTypeUnion[TTypeKey]]: z.ZodType<\n ValueForTypeKey<TTypeUnion, TType, TTypeKey>\n >;\n};\n\n/**\n * Creates a Zod schema for a discriminated union of type-union types.\n * We can use this util alongside keyed-type-union for stricter type union patterns.\n *\n * @param schemasByType A record of type keys to their corresponding Zod schemas.\n * @param typeKey The optional key used to discriminate between the different types in the union.\n * @returns A Zod schema for the discriminated union.\n */\nexport function zodKeyedTypeUnion<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>>,\n>(schemasByType: SchemasByType<TTypeUnion>): z.ZodType<TTypeUnion>;\nexport function zodKeyedTypeUnion<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>, TTypeKey>,\n TTypeKey extends string,\n>(\n schemasByType: SchemasByType<TTypeUnion, TTypeKey>,\n typeKey: TTypeKey,\n): z.ZodType<TTypeUnion>;\nexport function zodKeyedTypeUnion<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>, TTypeKey>,\n TTypeKey extends string,\n>(\n schemasByType: SchemasByType<TTypeUnion, TTypeKey>,\n typeKey: TTypeKey = \"type\" as never,\n): z.ZodType<TTypeUnion> {\n /**\n * There are a lot of casts here because of our fancy generics.\n * We won't worry about them for now; we'll just use our tests to ensure runtime safety.\n */\n return z.discriminatedUnion(\n typeKey,\n Object.entries(schemasByType).map(([type, schema]) =>\n z.object({\n [typeKey]: z.literal(type),\n [type]: schema as never,\n }),\n ) as never,\n ) as never;\n}\n"],"mappings":";;AA8BA,SAAgB,kBAId,eACA,UAAoB,QACG;;;;;CAKvB,OAAOA,IAAAA,EAAE,mBACP,SACA,OAAO,QAAQ,aAAa,EAAE,KAAK,CAAC,MAAM,YACxCA,IAAAA,EAAE,OAAO;GACN,UAAUA,IAAAA,EAAE,QAAQ,IAAI;GACxB,OAAO;CACV,CAAC,CACH,CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zodKeyedTypeUnion.d.cts","names":[],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"mappings":";;;;KAGK,aAAA,oBACgB,cAAA,CAAe,MAAA,mBAAyB,QAAA,mDAGjD,UAAA,CAAW,QAAA,IAAY,CAAA,CAAE,OAAA,CACjC,eAAA,CAAgB,UAAA,EAAY,KAAA,EAAO,QAAA;;;;;;;;;iBAYvB,iBAAA,oBACK,cAAA,CAAe,MAAA,
|
|
1
|
+
{"version":3,"file":"zodKeyedTypeUnion.d.cts","names":[],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"mappings":";;;;KAGK,aAAA,oBACgB,cAAA,CAAe,MAAA,mBAAyB,QAAA,mDAGjD,UAAA,CAAW,QAAA,IAAY,CAAA,CAAE,OAAA,CACjC,eAAA,CAAgB,UAAA,EAAY,KAAA,EAAO,QAAA;;;;;;;;;iBAYvB,iBAAA,oBACK,cAAA,CAAe,MAAA,oBAClC,aAAA,EAAe,aAAA,CAAc,UAAA,IAAc,CAAA,CAAE,OAAA,CAAQ,UAAA;AAAA,iBACvC,iBAAA,oBACK,cAAA,CAAe,MAAA,mBAAyB,QAAA,4BAG3D,aAAA,EAAe,aAAA,CAAc,UAAA,EAAY,QAAA,GACzC,OAAA,EAAS,QAAA,GACR,CAAA,CAAE,OAAA,CAAQ,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zodKeyedTypeUnion.d.ts","names":[],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"mappings":";;;;KAGK,aAAA,oBACgB,cAAA,CAAe,MAAA,mBAAyB,QAAA,mDAGjD,UAAA,CAAW,QAAA,IAAY,CAAA,CAAE,OAAA,CACjC,eAAA,CAAgB,UAAA,EAAY,KAAA,EAAO,QAAA;;;;;;;;;iBAYvB,iBAAA,oBACK,cAAA,CAAe,MAAA,
|
|
1
|
+
{"version":3,"file":"zodKeyedTypeUnion.d.ts","names":[],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"mappings":";;;;KAGK,aAAA,oBACgB,cAAA,CAAe,MAAA,mBAAyB,QAAA,mDAGjD,UAAA,CAAW,QAAA,IAAY,CAAA,CAAE,OAAA,CACjC,eAAA,CAAgB,UAAA,EAAY,KAAA,EAAO,QAAA;;;;;;;;;iBAYvB,iBAAA,oBACK,cAAA,CAAe,MAAA,oBAClC,aAAA,EAAe,aAAA,CAAc,UAAA,IAAc,CAAA,CAAE,OAAA,CAAQ,UAAA;AAAA,iBACvC,iBAAA,oBACK,cAAA,CAAe,MAAA,mBAAyB,QAAA,4BAG3D,aAAA,EAAe,aAAA,CAAc,UAAA,EAAY,QAAA,GACzC,OAAA,EAAS,QAAA,GACR,CAAA,CAAE,OAAA,CAAQ,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zodKeyedTypeUnion.js","names":[],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"zodKeyedTypeUnion.js","names":[],"sources":["../../src/utils/zodKeyedTypeUnion.ts"],"sourcesContent":["import type { KeyedTypeUnion, ValueForTypeKey } from \"keyed-type-union\";\nimport { z } from \"zod\";\n\ntype SchemasByType<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>, TTypeKey>,\n TTypeKey extends string = \"type\",\n> = {\n [TType in TTypeUnion[TTypeKey]]: z.ZodType<\n ValueForTypeKey<TTypeUnion, TType, TTypeKey>\n >;\n};\n\n/**\n * Creates a Zod schema for a discriminated union of type-union types.\n * We can use this util alongside keyed-type-union for stricter type union patterns.\n *\n * @param schemasByType A record of type keys to their corresponding Zod schemas.\n * @param typeKey The optional key used to discriminate between the different types in the union.\n * @returns A Zod schema for the discriminated union.\n */\nexport function zodKeyedTypeUnion<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>>,\n>(schemasByType: SchemasByType<TTypeUnion>): z.ZodType<TTypeUnion>;\nexport function zodKeyedTypeUnion<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>, TTypeKey>,\n TTypeKey extends string,\n>(\n schemasByType: SchemasByType<TTypeUnion, TTypeKey>,\n typeKey: TTypeKey,\n): z.ZodType<TTypeUnion>;\nexport function zodKeyedTypeUnion<\n TTypeUnion extends KeyedTypeUnion<Record<string, unknown>, TTypeKey>,\n TTypeKey extends string,\n>(\n schemasByType: SchemasByType<TTypeUnion, TTypeKey>,\n typeKey: TTypeKey = \"type\" as never,\n): z.ZodType<TTypeUnion> {\n /**\n * There are a lot of casts here because of our fancy generics.\n * We won't worry about them for now; we'll just use our tests to ensure runtime safety.\n */\n return z.discriminatedUnion(\n typeKey,\n Object.entries(schemasByType).map(([type, schema]) =>\n z.object({\n [typeKey]: z.literal(type),\n [type]: schema as never,\n }),\n ) as never,\n ) as never;\n}\n"],"mappings":";;AA8BA,SAAgB,kBAId,eACA,UAAoB,QACG;;;;;CAKvB,OAAO,EAAE,mBACP,SACA,OAAO,QAAQ,aAAa,EAAE,KAAK,CAAC,MAAM,YACxC,EAAE,OAAO;GACN,UAAU,EAAE,QAAQ,IAAI;GACxB,OAAO;CACV,CAAC,CACH,CACF;AACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@percepta/utils",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Shared utils for Mosaic",
|
|
6
6
|
"files": [
|
|
@@ -33,14 +33,16 @@
|
|
|
33
33
|
"zod": "^4.0.0"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@
|
|
37
|
-
"@percepta/
|
|
36
|
+
"@percepta/build": "^1.2.1",
|
|
37
|
+
"@percepta/raspberry": "^1.0.0",
|
|
38
|
+
"@types/lodash-es": "^4.17.12"
|
|
38
39
|
},
|
|
39
40
|
"scripts": {
|
|
40
41
|
"build": "tsdown",
|
|
41
42
|
"dev": "tsdown --watch",
|
|
42
43
|
"clean": "rimraf dist",
|
|
43
44
|
"typecheck": "tsc --noEmit",
|
|
44
|
-
"test": "vitest run"
|
|
45
|
+
"test": "vitest run",
|
|
46
|
+
"test:watch": "vitest"
|
|
45
47
|
}
|
|
46
48
|
}
|