@pithos/core 2.2.0 → 2.2.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.
Files changed (49) hide show
  1. package/README.md +53 -333
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/arkhe/function/cast-comparator.d.ts +0 -1
  4. package/dist/arkhe/function/cast-comparator.d.ts.map +1 -1
  5. package/dist/arkhe/function/cast-comparator.js.map +1 -1
  6. package/dist/arkhe/function/cast-mapping.d.ts +0 -1
  7. package/dist/arkhe/function/cast-mapping.d.ts.map +1 -1
  8. package/dist/arkhe/function/cast-mapping.js +0 -1
  9. package/dist/arkhe/function/cast-mapping.js.map +1 -1
  10. package/dist/arkhe/function/memoize.d.ts +0 -2
  11. package/dist/arkhe/function/memoize.d.ts.map +1 -1
  12. package/dist/arkhe/function/memoize.js.map +1 -1
  13. package/dist/arkhe/function/pipe.d.ts +1 -2
  14. package/dist/arkhe/function/pipe.d.ts.map +1 -1
  15. package/dist/arkhe/function/pipe.js +1 -2
  16. package/dist/arkhe/function/pipe.js.map +1 -1
  17. package/dist/autocompletion.d.ts +1 -1
  18. package/dist/bridges/ensure.d.ts +11 -3
  19. package/dist/bridges/ensure.d.ts.map +1 -1
  20. package/dist/bridges/ensure.js +0 -24
  21. package/dist/bridges/ensure.js.map +1 -1
  22. package/dist/bridges/ensureAsync.d.ts +10 -3
  23. package/dist/bridges/ensureAsync.d.ts.map +1 -1
  24. package/dist/bridges/ensureAsync.js +0 -23
  25. package/dist/bridges/ensureAsync.js.map +1 -1
  26. package/dist/bridges/ensurePromise.d.ts +10 -3
  27. package/dist/bridges/ensurePromise.d.ts.map +1 -1
  28. package/dist/bridges/ensurePromise.js +0 -24
  29. package/dist/bridges/ensurePromise.js.map +1 -1
  30. package/dist/kanon/core/parser.d.ts +27 -1
  31. package/dist/kanon/core/parser.d.ts.map +1 -1
  32. package/dist/kanon/core/parser.js +0 -25
  33. package/dist/kanon/core/parser.js.map +1 -1
  34. package/dist/kanon/helpers/as-zod.shim.d.ts +2 -7
  35. package/dist/kanon/helpers/as-zod.shim.d.ts.map +1 -1
  36. package/dist/kanon/helpers/as-zod.shim.js +42 -5
  37. package/dist/kanon/helpers/as-zod.shim.js.map +1 -1
  38. package/dist/kanon/validation.d.ts +34 -43
  39. package/dist/kanon/validation.d.ts.map +1 -1
  40. package/dist/kanon/validation.js +19 -53
  41. package/dist/kanon/validation.js.map +1 -1
  42. package/dist/taphos/array/head.d.ts +2 -2
  43. package/dist/taphos/array/head.js +2 -2
  44. package/dist/taphos/array/without.d.ts +1 -1
  45. package/dist/taphos/array/without.js +1 -1
  46. package/dist/taphos/util/rangeRight.d.ts +1 -3
  47. package/dist/taphos/util/rangeRight.d.ts.map +1 -1
  48. package/dist/taphos/util/rangeRight.js.map +1 -1
  49. package/package.json +1 -1
@@ -45,7 +45,6 @@ export const z = {
45
45
  const schemaWithEntries = { ...schema, entries: currentEntries };
46
46
  return Object.assign(base, {
47
47
  strict: () => createObjectAdapter(strictObject(currentEntries), currentEntries),
48
- passthrough: () => createObjectAdapter(looseObject(currentEntries), currentEntries),
49
48
  partial: () => createObjectAdapter(kanonPartial(schemaWithEntries), currentEntries),
50
49
  required: () => createObjectAdapter(kanonRequired(schemaWithEntries), currentEntries),
51
50
  pick: (mask) => {
@@ -56,7 +55,7 @@ export const z = {
56
55
  pickedEntries[key] = currentEntries[key];
57
56
  }
58
57
  }
59
- return createObjectAdapter(kanonPick(schemaWithEntries, keys), pickedEntries);
58
+ return createObjectAdapter(kanonPick(schemaWithEntries, Object.keys(pickedEntries)), pickedEntries);
60
59
  },
61
60
  omit: (mask) => {
62
61
  const keys = Object.keys(mask);
@@ -73,6 +72,44 @@ export const z = {
73
72
  };
74
73
  return createObjectAdapter(object(entries), entries);
75
74
  },
75
+ looseObject: (shape) => {
76
+ const entries = {};
77
+ for (const key in shape) {
78
+ entries[key] = shape[key]._schema();
79
+ }
80
+ // Reuse the same createObjectAdapter pattern but start with looseObject
81
+ const createObjectAdapter = (schema, currentEntries) => {
82
+ const base = asZod(schema);
83
+ const schemaWithEntries = { ...schema, entries: currentEntries };
84
+ return Object.assign(base, {
85
+ strict: () => createObjectAdapter(strictObject(currentEntries), currentEntries),
86
+ partial: () => createObjectAdapter(kanonPartial(schemaWithEntries), currentEntries),
87
+ required: () => createObjectAdapter(kanonRequired(schemaWithEntries), currentEntries),
88
+ pick: (mask) => {
89
+ const keys = Object.keys(mask);
90
+ const pickedEntries = {};
91
+ for (const key of keys) {
92
+ if (key in currentEntries) {
93
+ pickedEntries[key] = currentEntries[key];
94
+ }
95
+ }
96
+ return createObjectAdapter(kanonPick(schemaWithEntries, Object.keys(pickedEntries)), pickedEntries);
97
+ },
98
+ omit: (mask) => {
99
+ const keys = Object.keys(mask);
100
+ const omittedEntries = {};
101
+ for (const key in currentEntries) {
102
+ if (!keys.includes(key)) {
103
+ omittedEntries[key] = currentEntries[key];
104
+ }
105
+ }
106
+ return createObjectAdapter(kanonOmit(schemaWithEntries, keys), omittedEntries);
107
+ },
108
+ keyof: () => asZod(kanonKeyof(schemaWithEntries)),
109
+ });
110
+ };
111
+ return createObjectAdapter(looseObject(entries), entries);
112
+ },
76
113
  record: (key, value) => asZod(record(key._schema(), value._schema())),
77
114
  array: (schema) => asZod(array(schema._schema())),
78
115
  tuple: (items) => {
@@ -92,9 +129,9 @@ export const z = {
92
129
  map: (key, value) => asZod(map(key._schema(), value._schema())),
93
130
  set: (value) => asZod(set(value._schema())),
94
131
  union(schemas) {
95
- // Match Zod behavior: requires array with at least 2 elements
96
- if (!Array.isArray(schemas) || schemas.length < 2) {
97
- throw new Error("z.union requires an array of at least 2 schemas");
132
+ // Match Zod v4 behavior: requires a non-empty array
133
+ if (!Array.isArray(schemas) || schemas.length < 1) {
134
+ throw new Error("z.union requires an array of at least 1 schema");
98
135
  }
99
136
  // Create a flat union schema with all schemas
100
137
  // INTENTIONAL: Dynamic schema creation - we use Schema<unknown> with union type property
@@ -1 +1 @@
1
- {"version":3,"file":"as-zod.shim.js","sourceRoot":"","sources":["../../../src/kanon/helpers/as-zod.shim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"as-zod.shim.js","sourceRoot":"","sources":["../../../src/kanon/helpers/as-zod.shim.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Schema } from "./types/base.js";
1
+ import { Schema, GenericSchema, Infer } from "./types/base.js";
2
2
  /**
3
3
  * Result type for safe parsing operations.
4
4
  *
@@ -12,53 +12,44 @@ export type SafeParseResult<T> = {
12
12
  success: false;
13
13
  error: string;
14
14
  };
15
+ /**
16
+ * Parses a value and throws on failure.
17
+ *
18
+ * @since 2.0.0
19
+ */
20
+ declare function validationParse<T>(schema: Schema<T>, value: unknown): T;
21
+ declare function validationParse<S extends GenericSchema>(schema: S, value: unknown): Infer<S>;
22
+ /**
23
+ * Parses a value and returns a discriminated result.
24
+ *
25
+ * @since 2.0.0
26
+ */
27
+ declare function validationSafeParse<T>(schema: Schema<T>, value: unknown): SafeParseResult<T>;
28
+ declare function validationSafeParse<S extends GenericSchema>(schema: S, value: unknown): SafeParseResult<Infer<S>>;
29
+ /**
30
+ * Async variant of `parse`, kept for API parity (logic stays sync).
31
+ *
32
+ * @since 2.0.0
33
+ */
34
+ declare function validationParseAsync<T>(schema: Schema<T>, value: unknown): Promise<T>;
35
+ declare function validationParseAsync<S extends GenericSchema>(schema: S, value: unknown): Promise<Infer<S>>;
36
+ /**
37
+ * Async variant of `safeParse`, kept for API parity (logic stays sync).
38
+ *
39
+ * @since 2.0.0
40
+ */
41
+ declare function validationSafeParseAsync<T>(schema: Schema<T>, value: unknown): Promise<SafeParseResult<T>>;
42
+ declare function validationSafeParseAsync<S extends GenericSchema>(schema: S, value: unknown): Promise<SafeParseResult<Infer<S>>>;
15
43
  /**
16
44
  * Kanon V3 lightweight validation helpers (Zod-like ergonomics, minimal surface).
17
45
  *
18
46
  * @since 2.0.0
19
47
  */
20
48
  export declare const validation: {
21
- /**
22
- * Parses a value and throws on failure.
23
- *
24
- * @template T - The expected output type.
25
- * @param schema - The Kanon schema to validate against.
26
- * @param value - The value to validate.
27
- * @returns The validated and possibly coerced value.
28
- * @throws {Error} When validation fails.
29
- * @since 2.0.0
30
- */
31
- parse<T>(schema: Schema<T>, value: unknown): T;
32
- /**
33
- * Parses a value and returns a discriminated result.
34
- *
35
- * @template T - The expected output type.
36
- * @param schema - The Kanon schema to validate against.
37
- * @param value - The value to validate.
38
- * @returns A `SafeParseResult` with `success` flag and data or error.
39
- * @since 2.0.0
40
- */
41
- safeParse<T>(schema: Schema<T>, value: unknown): SafeParseResult<T>;
42
- /**
43
- * Async variant of `parse`, kept for API parity (logic stays sync).
44
- *
45
- * @template T - The expected output type.
46
- * @param schema - The Kanon schema to validate against.
47
- * @param value - The value to validate.
48
- * @returns Promise resolving to the validated value.
49
- * @throws {Error} When validation fails.
50
- * @since 2.0.0
51
- */
52
- parseAsync<T>(schema: Schema<T>, value: unknown): Promise<T>;
53
- /**
54
- * Async variant of `safeParse`, kept for API parity (logic stays sync).
55
- *
56
- * @template T - The expected output type.
57
- * @param schema - The Kanon schema to validate against.
58
- * @param value - The value to validate.
59
- * @returns Promise resolving to a `SafeParseResult`.
60
- * @since 2.0.0
61
- */
62
- safeParseAsync<T>(schema: Schema<T>, value: unknown): Promise<SafeParseResult<T>>;
49
+ parse: typeof validationParse;
50
+ safeParse: typeof validationSafeParse;
51
+ parseAsync: typeof validationParseAsync;
52
+ safeParseAsync: typeof validationSafeParseAsync;
63
53
  };
54
+ export {};
64
55
  //# sourceMappingURL=validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/kanon/validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;;;GAKG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IACzB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC1B;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,UAAU;IACrB;;;;;;;;;OASG;UACG,CAAC,UAAU,MAAM,CAAC,CAAC,CAAC,SAAS,OAAO,GAAG,CAAC;IAM9C;;;;;;;;OAQG;cACO,CAAC,UAAU,MAAM,CAAC,CAAC,CAAC,SAAS,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC;IAInE;;;;;;;;;OASG;eACc,CAAC,UAAU,MAAM,CAAC,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAIlE;;;;;;;;OAQG;mBACkB,CAAC,UACZ,MAAM,CAAC,CAAC,CAAC,SACV,OAAO,GACb,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAG/B,CAAC"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/kanon/validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IACzB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC1B;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;;;GAIG;AACH,iBAAS,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC;AAClE,iBAAS,eAAe,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AAOvF;;;;GAIG;AACH,iBAAS,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;AACvF,iBAAS,mBAAmB,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAK5G;;;;GAIG;AACH,iBAAe,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AACtF,iBAAe,oBAAoB,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAK3G;;;;GAIG;AACH,iBAAe,wBAAwB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3G,iBAAe,wBAAwB,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAKhI;;;;GAIG;AACH,eAAO,MAAM,UAAU;;;;;CAKtB,CAAC"}
@@ -1,62 +1,28 @@
1
1
  import { parse } from "./core/parser.js";
2
+ function validationParse(schema, value) {
3
+ const result = parse(schema, value);
4
+ if (result.success)
5
+ return result.data;
6
+ throw new Error(result.error);
7
+ }
8
+ function validationSafeParse(schema, value) {
9
+ return parse(schema, value);
10
+ }
11
+ async function validationParseAsync(schema, value) {
12
+ return validationParse(schema, value);
13
+ }
14
+ async function validationSafeParseAsync(schema, value) {
15
+ return validationSafeParse(schema, value);
16
+ }
2
17
  /**
3
18
  * Kanon V3 lightweight validation helpers (Zod-like ergonomics, minimal surface).
4
19
  *
5
20
  * @since 2.0.0
6
21
  */
7
22
  export const validation = {
8
- /**
9
- * Parses a value and throws on failure.
10
- *
11
- * @template T - The expected output type.
12
- * @param schema - The Kanon schema to validate against.
13
- * @param value - The value to validate.
14
- * @returns The validated and possibly coerced value.
15
- * @throws {Error} When validation fails.
16
- * @since 2.0.0
17
- */
18
- parse(schema, value) {
19
- const result = parse(schema, value);
20
- if (result.success)
21
- return result.data;
22
- throw new Error(result.error);
23
- },
24
- /**
25
- * Parses a value and returns a discriminated result.
26
- *
27
- * @template T - The expected output type.
28
- * @param schema - The Kanon schema to validate against.
29
- * @param value - The value to validate.
30
- * @returns A `SafeParseResult` with `success` flag and data or error.
31
- * @since 2.0.0
32
- */
33
- safeParse(schema, value) {
34
- return parse(schema, value);
35
- },
36
- /**
37
- * Async variant of `parse`, kept for API parity (logic stays sync).
38
- *
39
- * @template T - The expected output type.
40
- * @param schema - The Kanon schema to validate against.
41
- * @param value - The value to validate.
42
- * @returns Promise resolving to the validated value.
43
- * @throws {Error} When validation fails.
44
- * @since 2.0.0
45
- */
46
- async parseAsync(schema, value) {
47
- return this.parse(schema, value);
48
- },
49
- /**
50
- * Async variant of `safeParse`, kept for API parity (logic stays sync).
51
- *
52
- * @template T - The expected output type.
53
- * @param schema - The Kanon schema to validate against.
54
- * @param value - The value to validate.
55
- * @returns Promise resolving to a `SafeParseResult`.
56
- * @since 2.0.0
57
- */
58
- async safeParseAsync(schema, value) {
59
- return this.safeParse(schema, value);
60
- },
23
+ parse: validationParse,
24
+ safeParse: validationSafeParse,
25
+ parseAsync: validationParseAsync,
26
+ safeParseAsync: validationSafeParseAsync,
61
27
  };
62
28
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/kanon/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAatC;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;;;;;;;;;OASG;IACH,KAAK,CAAI,MAAiB,EAAE,KAAc;QACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS,CAAI,MAAiB,EAAE,KAAc;QAC5C,OAAO,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU,CAAI,MAAiB,EAAE,KAAc;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,cAAc,CAClB,MAAiB,EACjB,KAAc;QAEd,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/kanon/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAoBtC,SAAS,eAAe,CAAC,MAAqB,EAAE,KAAc;IAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpC,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC;IACvC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AASD,SAAS,mBAAmB,CAAC,MAAqB,EAAE,KAAc;IAChE,OAAO,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC;AASD,KAAK,UAAU,oBAAoB,CAAC,MAAqB,EAAE,KAAc;IACvE,OAAO,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACxC,CAAC;AASD,KAAK,UAAU,wBAAwB,CAAC,MAAqB,EAAE,KAAc;IAC3E,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,KAAK,EAAE,eAAe;IACtB,SAAS,EAAE,mBAAmB;IAC9B,UAAU,EAAE,oBAAoB;IAChC,cAAc,EAAE,wBAAwB;CACzC,CAAC"}
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * Gets the first element of array.
3
3
  *
4
- * Alias for {@link first}.
4
+ * Alias for `first()`.
5
5
  *
6
6
  * @template T - The type of elements in the array.
7
7
  * @param array - The array to query.
8
8
  * @returns The first element of the array, or `undefined` if empty.
9
9
  * @deprecated Use `array[0]` or `array.at(0)` directly instead.
10
- * Reason: Alias of {@link first}
10
+ * Reason: Alias of `first()`
11
11
  * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at | Array.at() - MDN}
12
12
  * @see {@link https://caniuse.com/mdn-javascript_builtins_array_at | Browser support - Can I Use}
13
13
  * @since 2.0.0
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * Gets the first element of array.
3
3
  *
4
- * Alias for {@link first}.
4
+ * Alias for `first()`.
5
5
  *
6
6
  * @template T - The type of elements in the array.
7
7
  * @param array - The array to query.
8
8
  * @returns The first element of the array, or `undefined` if empty.
9
9
  * @deprecated Use `array[0]` or `array.at(0)` directly instead.
10
- * Reason: Alias of {@link first}
10
+ * Reason: Alias of `first()`
11
11
  * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at | Array.at() - MDN}
12
12
  * @see {@link https://caniuse.com/mdn-javascript_builtins_array_at | Browser support - Can I Use}
13
13
  * @since 2.0.0
@@ -21,7 +21,7 @@
21
21
  * console.log(filtered); // [1, 3, 5]
22
22
  *
23
23
  * // ✅ Recommended approach (Arkhe)
24
- * import { difference } from "pithos/arkhe/array/difference";
24
+ * import { difference } from "@pithos/core/arkhe/array/difference";
25
25
  * const filteredArkhe = difference(numbers, [2, 4]);
26
26
  * console.log(filteredArkhe); // [1, 3, 5]
27
27
  * ```
@@ -22,7 +22,7 @@ import { difference } from "../../arkhe/array/difference.js";
22
22
  * console.log(filtered); // [1, 3, 5]
23
23
  *
24
24
  * // ✅ Recommended approach (Arkhe)
25
- * import { difference } from "pithos/arkhe/array/difference";
25
+ * import { difference } from "@pithos/core/arkhe/array/difference";
26
26
  * const filteredArkhe = difference(numbers, [2, 4]);
27
27
  * console.log(filteredArkhe); // [1, 3, 5]
28
28
  * ```
@@ -2,9 +2,7 @@
2
2
  * Creates an array of numbers progressing from start up to, but not including, end,
3
3
  * in descending order.
4
4
  *
5
- * @param start - The start of the range.
6
- * @param end - The end of the range.
7
- * @param step - The value to increment or decrement by. Defaults to 1.
5
+ * @param end - The end of the range (or start when used with two arguments).
8
6
  * @returns The range of numbers in reverse order.
9
7
  * @deprecated Use `range().reverse()` directly instead.
10
8
  * @see range
@@ -1 +1 @@
1
- {"version":3,"file":"rangeRight.d.ts","sourceRoot":"","sources":["../../../src/taphos/util/rangeRight.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;AAClD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"rangeRight.d.ts","sourceRoot":"","sources":["../../../src/taphos/util/rangeRight.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;AAClD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rangeRight.js","sourceRoot":"","sources":["../../../src/taphos/util/rangeRight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA8B1C,MAAM,UAAU,UAAU,CACxB,UAAkB,EAClB,GAAY,EACZ,IAAa;IAEb,0IAA0I;IAC1I,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"rangeRight.js","sourceRoot":"","sources":["../../../src/taphos/util/rangeRight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA4B1C,MAAM,UAAU,UAAU,CACxB,UAAkB,EAClB,GAAY,EACZ,IAAa;IAEb,0IAA0I;IAC1I,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AAChD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pithos/core",
3
- "version": "2.2.0",
3
+ "version": "2.2.1",
4
4
  "description": "Advanced JavaScript/TypeScript superset providing utilities, validation, and functional patterns",
5
5
  "publishConfig": {
6
6
  "access": "public"