@eslint-react/shared 1.26.2-beta.0 → 1.26.2-beta.3

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 CHANGED
@@ -59,6 +59,55 @@ declare const getId: () => string;
59
59
 
60
60
  declare function getReactVersion(fallback?: string): string;
61
61
 
62
+ /**
63
+ * Fallback type.
64
+ */
65
+ type Fallback<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>>> = MaybeReadonly<InferOutput<TSchema>> | ((dataset?: OutputDataset<InferOutput<TSchema>, InferIssue<TSchema>>, config?: Config<InferIssue<TSchema>>) => MaybeReadonly<InferOutput<TSchema>>);
66
+ /**
67
+ * Schema with fallback type.
68
+ */
69
+ type SchemaWithFallback<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>>, TFallback extends Fallback<TSchema>> = TSchema & {
70
+ /**
71
+ * The fallback value.
72
+ */
73
+ readonly fallback: TFallback;
74
+ };
75
+
76
+ /**
77
+ * Fallback async type.
78
+ */
79
+ type FallbackAsync<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>> = MaybeReadonly<InferOutput<TSchema>> | ((dataset?: OutputDataset<InferOutput<TSchema>, InferIssue<TSchema>>, config?: Config<InferIssue<TSchema>>) => MaybePromise<MaybeReadonly<InferOutput<TSchema>>>);
80
+ /**
81
+ * Schema with fallback async type.
82
+ */
83
+ type SchemaWithFallbackAsync<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>, TFallback extends FallbackAsync<TSchema>> = Omit<TSchema, 'async' | '~standard' | '~run'> & {
84
+ /**
85
+ * The fallback value.
86
+ */
87
+ readonly fallback: TFallback;
88
+ /**
89
+ * Whether it's async.
90
+ */
91
+ readonly async: true;
92
+ /**
93
+ * The Standard Schema properties.
94
+ *
95
+ * @internal
96
+ */
97
+ readonly '~standard': StandardProps<InferInput<TSchema>, InferOutput<TSchema>>;
98
+ /**
99
+ * Parses unknown input values.
100
+ *
101
+ * @param dataset The input dataset.
102
+ * @param config The configuration.
103
+ *
104
+ * @returns The output dataset.
105
+ *
106
+ * @internal
107
+ */
108
+ readonly '~run': (dataset: UnknownDataset, config: Config<BaseIssue<unknown>>) => Promise<OutputDataset<InferOutput<TSchema>, InferIssue<TSchema>>>;
109
+ };
110
+
62
111
  /**
63
112
  * Schema with pipe type.
64
113
  */
@@ -613,13 +662,13 @@ type OptionalEntrySchemaAsync = ExactOptionalSchemaAsync<BaseSchema<unknown, unk
613
662
  * Object entries interface.
614
663
  */
615
664
  interface ObjectEntries {
616
- [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | OptionalEntrySchema;
665
+ [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | SchemaWithFallback<BaseSchema<unknown, unknown, BaseIssue<unknown>>, unknown> | OptionalEntrySchema;
617
666
  }
618
667
  /**
619
668
  * Object entries async interface.
620
669
  */
621
670
  interface ObjectEntriesAsync {
622
- [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>> | OptionalEntrySchema | OptionalEntrySchemaAsync;
671
+ [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>> | SchemaWithFallback<BaseSchema<unknown, unknown, BaseIssue<unknown>>, unknown> | SchemaWithFallbackAsync<BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>, unknown> | OptionalEntrySchema | OptionalEntrySchemaAsync;
623
672
  }
624
673
  /**
625
674
  * Infer entries input type.
package/dist/index.d.ts CHANGED
@@ -59,6 +59,55 @@ declare const getId: () => string;
59
59
 
60
60
  declare function getReactVersion(fallback?: string): string;
61
61
 
62
+ /**
63
+ * Fallback type.
64
+ */
65
+ type Fallback<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>>> = MaybeReadonly<InferOutput<TSchema>> | ((dataset?: OutputDataset<InferOutput<TSchema>, InferIssue<TSchema>>, config?: Config<InferIssue<TSchema>>) => MaybeReadonly<InferOutput<TSchema>>);
66
+ /**
67
+ * Schema with fallback type.
68
+ */
69
+ type SchemaWithFallback<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>>, TFallback extends Fallback<TSchema>> = TSchema & {
70
+ /**
71
+ * The fallback value.
72
+ */
73
+ readonly fallback: TFallback;
74
+ };
75
+
76
+ /**
77
+ * Fallback async type.
78
+ */
79
+ type FallbackAsync<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>> = MaybeReadonly<InferOutput<TSchema>> | ((dataset?: OutputDataset<InferOutput<TSchema>, InferIssue<TSchema>>, config?: Config<InferIssue<TSchema>>) => MaybePromise<MaybeReadonly<InferOutput<TSchema>>>);
80
+ /**
81
+ * Schema with fallback async type.
82
+ */
83
+ type SchemaWithFallbackAsync<TSchema extends BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>, TFallback extends FallbackAsync<TSchema>> = Omit<TSchema, 'async' | '~standard' | '~run'> & {
84
+ /**
85
+ * The fallback value.
86
+ */
87
+ readonly fallback: TFallback;
88
+ /**
89
+ * Whether it's async.
90
+ */
91
+ readonly async: true;
92
+ /**
93
+ * The Standard Schema properties.
94
+ *
95
+ * @internal
96
+ */
97
+ readonly '~standard': StandardProps<InferInput<TSchema>, InferOutput<TSchema>>;
98
+ /**
99
+ * Parses unknown input values.
100
+ *
101
+ * @param dataset The input dataset.
102
+ * @param config The configuration.
103
+ *
104
+ * @returns The output dataset.
105
+ *
106
+ * @internal
107
+ */
108
+ readonly '~run': (dataset: UnknownDataset, config: Config<BaseIssue<unknown>>) => Promise<OutputDataset<InferOutput<TSchema>, InferIssue<TSchema>>>;
109
+ };
110
+
62
111
  /**
63
112
  * Schema with pipe type.
64
113
  */
@@ -613,13 +662,13 @@ type OptionalEntrySchemaAsync = ExactOptionalSchemaAsync<BaseSchema<unknown, unk
613
662
  * Object entries interface.
614
663
  */
615
664
  interface ObjectEntries {
616
- [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | OptionalEntrySchema;
665
+ [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | SchemaWithFallback<BaseSchema<unknown, unknown, BaseIssue<unknown>>, unknown> | OptionalEntrySchema;
617
666
  }
618
667
  /**
619
668
  * Object entries async interface.
620
669
  */
621
670
  interface ObjectEntriesAsync {
622
- [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>> | OptionalEntrySchema | OptionalEntrySchemaAsync;
671
+ [key: string]: BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>> | SchemaWithFallback<BaseSchema<unknown, unknown, BaseIssue<unknown>>, unknown> | SchemaWithFallbackAsync<BaseSchema<unknown, unknown, BaseIssue<unknown>> | BaseSchemaAsync<unknown, unknown, BaseIssue<unknown>>, unknown> | OptionalEntrySchema | OptionalEntrySchemaAsync;
623
672
  }
624
673
  /**
625
674
  * Infer entries input type.
package/dist/index.js CHANGED
@@ -248,7 +248,7 @@ function getReactVersion(fallback = "19.0.0") {
248
248
  }
249
249
  }
250
250
 
251
- // ../../node_modules/.pnpm/valibot@1.0.0-beta.14_typescript@5.7.3/node_modules/valibot/dist/index.js
251
+ // ../../node_modules/.pnpm/valibot@1.0.0-beta.15_typescript@5.7.3/node_modules/valibot/dist/index.js
252
252
  var store;
253
253
  // @__NO_SIDE_EFFECTS__
254
254
  function getGlobalConfig(config2) {
@@ -346,6 +346,16 @@ var ValiError = class extends Error {
346
346
  }
347
347
  };
348
348
  // @__NO_SIDE_EFFECTS__
349
+ function getFallback(schema, dataset, config2) {
350
+ return typeof schema.fallback === "function" ? (
351
+ // @ts-expect-error
352
+ schema.fallback(dataset, config2)
353
+ ) : (
354
+ // @ts-expect-error
355
+ schema.fallback
356
+ );
357
+ }
358
+ // @__NO_SIDE_EFFECTS__
349
359
  function getDefault(schema, dataset, config2) {
350
360
  return typeof schema.default === "function" ? (
351
361
  // @ts-expect-error
@@ -489,6 +499,8 @@ function object(entries, message) {
489
499
  dataset.typed = false;
490
500
  }
491
501
  dataset.value[key] = valueDataset.value;
502
+ } else if (valueSchema.fallback !== undefined) {
503
+ dataset.value[key] = /* @__PURE__ */ getFallback(valueSchema);
492
504
  } else if (valueSchema.type !== "exact_optional" && valueSchema.type !== "optional" && valueSchema.type !== "nullish") {
493
505
  _addIssue(this, "key", dataset, config2, {
494
506
  input: undefined,
package/dist/index.mjs CHANGED
@@ -240,7 +240,7 @@ function getReactVersion(fallback = "19.0.0") {
240
240
  }
241
241
  }
242
242
 
243
- // ../../node_modules/.pnpm/valibot@1.0.0-beta.14_typescript@5.7.3/node_modules/valibot/dist/index.js
243
+ // ../../node_modules/.pnpm/valibot@1.0.0-beta.15_typescript@5.7.3/node_modules/valibot/dist/index.js
244
244
  var store;
245
245
  // @__NO_SIDE_EFFECTS__
246
246
  function getGlobalConfig(config2) {
@@ -338,6 +338,16 @@ var ValiError = class extends Error {
338
338
  }
339
339
  };
340
340
  // @__NO_SIDE_EFFECTS__
341
+ function getFallback(schema, dataset, config2) {
342
+ return typeof schema.fallback === "function" ? (
343
+ // @ts-expect-error
344
+ schema.fallback(dataset, config2)
345
+ ) : (
346
+ // @ts-expect-error
347
+ schema.fallback
348
+ );
349
+ }
350
+ // @__NO_SIDE_EFFECTS__
341
351
  function getDefault(schema, dataset, config2) {
342
352
  return typeof schema.default === "function" ? (
343
353
  // @ts-expect-error
@@ -481,6 +491,8 @@ function object(entries, message) {
481
491
  dataset.typed = false;
482
492
  }
483
493
  dataset.value[key] = valueDataset.value;
494
+ } else if (valueSchema.fallback !== undefined) {
495
+ dataset.value[key] = /* @__PURE__ */ getFallback(valueSchema);
484
496
  } else if (valueSchema.type !== "exact_optional" && valueSchema.type !== "optional" && valueSchema.type !== "nullish") {
485
497
  _addIssue(this, "key", dataset, config2, {
486
498
  input: undefined,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eslint-react/shared",
3
- "version": "1.26.2-beta.0",
3
+ "version": "1.26.2-beta.3",
4
4
  "description": "ESLint React's Shared constants and functions.",
5
5
  "homepage": "https://github.com/Rel1cx/eslint-react",
6
6
  "bugs": {
@@ -33,10 +33,10 @@
33
33
  "./package.json"
34
34
  ],
35
35
  "dependencies": {
36
- "@typescript-eslint/utils": "^8.22.0",
36
+ "@typescript-eslint/utils": "^8.23.0",
37
37
  "picomatch": "^4.0.2",
38
38
  "ts-pattern": "^5.6.2",
39
- "@eslint-react/eff": "1.26.2-beta.0"
39
+ "@eslint-react/eff": "1.26.2-beta.3"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/picomatch": "^3.0.2",
@@ -44,7 +44,7 @@
44
44
  "micro-memoize": "^4.1.3",
45
45
  "tsup": "^8.3.6",
46
46
  "type-fest": "^4.33.0",
47
- "valibot": "^1.0.0-beta.14",
47
+ "valibot": "^1.0.0-beta.15",
48
48
  "@workspace/configs": "0.0.0"
49
49
  },
50
50
  "engines": {