@daiso-tech/core 0.36.0 → 0.37.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.
Files changed (99) hide show
  1. package/dist/async/middlewares/_shared.d.ts +6 -1
  2. package/dist/async/middlewares/_shared.js +11 -1
  3. package/dist/async/middlewares/_shared.js.map +1 -1
  4. package/dist/async/middlewares/fallback/fallback.middleware.d.ts +1 -1
  5. package/dist/async/middlewares/fallback/fallback.middleware.js +2 -1
  6. package/dist/async/middlewares/fallback/fallback.middleware.js.map +1 -1
  7. package/dist/async/middlewares/retry/retry.middleware.js +2 -2
  8. package/dist/async/middlewares/retry/retry.middleware.js.map +1 -1
  9. package/dist/cache/contracts/cache-factory.contract.d.ts +2 -2
  10. package/dist/cache/implementations/adapters/_module-exports.d.ts +1 -2
  11. package/dist/cache/implementations/adapters/_module-exports.js +1 -2
  12. package/dist/cache/implementations/adapters/_module-exports.js.map +1 -1
  13. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.d.ts +41 -16
  14. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js +102 -57
  15. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js.map +1 -1
  16. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +1 -1
  17. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  18. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +1 -1
  19. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +1 -1
  20. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +1 -1
  21. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  22. package/dist/cache/implementations/derivables/cache/cache.d.ts +15 -3
  23. package/dist/cache/implementations/derivables/cache/cache.js +15 -2
  24. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  25. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +11 -8
  26. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +9 -0
  27. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  28. package/dist/collection/contracts/async-collection.contract.d.ts +6 -0
  29. package/dist/collection/contracts/collection.contract.d.ts +6 -0
  30. package/dist/collection/implementations/async-iterable-collection/_shared/_module.d.ts +1 -0
  31. package/dist/collection/implementations/async-iterable-collection/_shared/_module.js +1 -0
  32. package/dist/collection/implementations/async-iterable-collection/_shared/_module.js.map +1 -1
  33. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.d.ts +7 -0
  34. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js +17 -0
  35. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js.map +1 -0
  36. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +2 -0
  37. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +4 -1
  38. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  39. package/dist/collection/implementations/iterable-collection/_shared/_module.d.ts +1 -0
  40. package/dist/collection/implementations/iterable-collection/_shared/_module.js +1 -0
  41. package/dist/collection/implementations/iterable-collection/_shared/_module.js.map +1 -1
  42. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.d.ts +7 -0
  43. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.js +21 -0
  44. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.js.map +1 -0
  45. package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +2 -0
  46. package/dist/collection/implementations/iterable-collection/iterable-collection.js +4 -1
  47. package/dist/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  48. package/dist/collection/implementations/list-collection/list-collection.d.ts +2 -0
  49. package/dist/collection/implementations/list-collection/list-collection.js +14 -1
  50. package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
  51. package/dist/event-bus/contracts/event-bus-factory.contract.d.ts +2 -2
  52. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +34 -4
  53. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +46 -6
  54. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  55. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +9 -7
  56. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +11 -0
  57. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  58. package/dist/lock/implementations/adapters/_module-exports.d.ts +1 -2
  59. package/dist/lock/implementations/adapters/_module-exports.js +1 -2
  60. package/dist/lock/implementations/adapters/_module-exports.js.map +1 -1
  61. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +37 -12
  62. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +73 -32
  63. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  64. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js +1 -1
  65. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js.map +1 -1
  66. package/dist/utilities/functions/_module-exports.d.ts +1 -0
  67. package/dist/utilities/functions/_module-exports.js +1 -0
  68. package/dist/utilities/functions/_module-exports.js.map +1 -1
  69. package/dist/utilities/functions/lazy.d.ts +4 -0
  70. package/dist/utilities/functions/lazy.js +9 -3
  71. package/dist/utilities/functions/lazy.js.map +1 -1
  72. package/dist/utilities/functions/validate.d.ts +8 -0
  73. package/dist/utilities/functions/validate.js +17 -0
  74. package/dist/utilities/functions/validate.js.map +1 -0
  75. package/package.json +14 -11
  76. package/dist/cache/implementations/adapters/libsql-cache-adapter/_module.d.ts +0 -1
  77. package/dist/cache/implementations/adapters/libsql-cache-adapter/_module.js +0 -2
  78. package/dist/cache/implementations/adapters/libsql-cache-adapter/_module.js.map +0 -1
  79. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +0 -75
  80. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +0 -95
  81. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +0 -1
  82. package/dist/cache/implementations/adapters/sqlite-cache-adapter/_module.d.ts +0 -1
  83. package/dist/cache/implementations/adapters/sqlite-cache-adapter/_module.js +0 -2
  84. package/dist/cache/implementations/adapters/sqlite-cache-adapter/_module.js.map +0 -1
  85. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +0 -70
  86. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +0 -94
  87. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +0 -1
  88. package/dist/lock/implementations/adapters/libsql-lock-adapter/_module.d.ts +0 -1
  89. package/dist/lock/implementations/adapters/libsql-lock-adapter/_module.js +0 -2
  90. package/dist/lock/implementations/adapters/libsql-lock-adapter/_module.js.map +0 -1
  91. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.d.ts +0 -60
  92. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js +0 -84
  93. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js.map +0 -1
  94. package/dist/lock/implementations/adapters/sqlite-lock-adapter/_module.d.ts +0 -1
  95. package/dist/lock/implementations/adapters/sqlite-lock-adapter/_module.js +0 -2
  96. package/dist/lock/implementations/adapters/sqlite-lock-adapter/_module.js.map +0 -1
  97. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.d.ts +0 -59
  98. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js +0 -83
  99. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js.map +0 -1
@@ -8,12 +8,22 @@ import { type NoneFunc, type TimeSpan, Namespace } from "../../../../utilities/_
8
8
  import { LazyPromise } from "../../../../async/_module-exports.js";
9
9
  import type { IEventBus, Unsubscribe, EventListener } from "../../../../event-bus/contracts/_module-exports.js";
10
10
  import type { AsyncLazy, Factory } from "../../../../utilities/_module-exports.js";
11
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
11
12
  /**
12
13
  *
13
14
  * IMPORT_PATH: `"@daiso-tech/core/cache"`
14
15
  * @group Derivables
15
16
  */
16
- export type CacheSettingsBase = {
17
+ export type CacheSettingsBase<TType = unknown> = {
18
+ /**
19
+ * You can provide any [standard schema](https://standardschema.dev/) compliant object to validate all input and output data to ensure runtime type safety.
20
+ */
21
+ schema?: StandardSchemaV1<TType>;
22
+ /**
23
+ * You can enable validating cache values when retrieving them.
24
+ * @default {true}
25
+ */
26
+ shouldValidateOutput?: boolean;
17
27
  /**
18
28
  * @default
19
29
  * ```ts
@@ -62,7 +72,7 @@ export type CacheAdapter<TType> = ICacheAdapter<TType> | IDatabaseCacheAdapter<T
62
72
  * IMPORT_PATH: `"@daiso-tech/core/cache"`
63
73
  * @group Derivables
64
74
  */
65
- export type CacheSettings = CacheSettingsBase & {
75
+ export type CacheSettings<TType = unknown> = CacheSettingsBase<TType> & {
66
76
  adapter: CacheAdapter<any>;
67
77
  };
68
78
  /**
@@ -76,6 +86,8 @@ export declare class Cache<TType = unknown> implements ICache<TType> {
76
86
  private readonly defaultTtl;
77
87
  private readonly namespace;
78
88
  private readonly lazyPromiseFactory;
89
+ private readonly schema;
90
+ private readonly shouldValidateOutput;
79
91
  /**
80
92
  *
81
93
  * @example
@@ -101,7 +113,7 @@ export declare class Cache<TType = unknown> implements ICache<TType> {
101
113
  * });
102
114
  * ```
103
115
  */
104
- constructor(settings: CacheSettings);
116
+ constructor(settings: CacheSettings<TType>);
105
117
  /**
106
118
  * You can listen to the following {@link CacheEventMap | `CacheEventMap`} of the {@link ICache | `ICache`} instance.
107
119
  * To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { CACHE_EVENTS, } from "../../../../cache/contracts/_module-exports.js";
6
6
  import { KeyNotFoundCacheError, TypeCacheError, } from "../../../../cache/contracts/_module-exports.js";
7
- import { resolveAsyncLazyable, resolveInvokable, } from "../../../../utilities/_module-exports.js";
7
+ import { resolveAsyncLazyable, resolveInvokable, validate, } from "../../../../utilities/_module-exports.js";
8
8
  import {} from "../../../../utilities/_module-exports.js";
9
9
  import { Namespace, } from "../../../../utilities/_module-exports.js";
10
10
  import { LazyPromise } from "../../../../async/_module-exports.js";
@@ -23,6 +23,8 @@ export class Cache {
23
23
  defaultTtl;
24
24
  namespace;
25
25
  lazyPromiseFactory;
26
+ schema;
27
+ shouldValidateOutput;
26
28
  /**
27
29
  *
28
30
  * @example
@@ -49,9 +51,11 @@ export class Cache {
49
51
  * ```
50
52
  */
51
53
  constructor(settings) {
52
- const { namespace = new Namespace(["@", "cache"]), adapter, eventBus = new EventBus({
54
+ const { shouldValidateOutput = true, schema, namespace = new Namespace(["@", "cache"]), adapter, eventBus = new EventBus({
53
55
  adapter: new MemoryEventBusAdapter(),
54
56
  }), defaultTtl = null, lazyPromiseFactory = (invokable) => new LazyPromise(invokable), } = settings;
57
+ this.shouldValidateOutput = shouldValidateOutput;
58
+ this.schema = schema;
55
59
  this.namespace = namespace;
56
60
  this.defaultTtl = defaultTtl;
57
61
  this.lazyPromiseFactory = resolveInvokable(lazyPromiseFactory);
@@ -125,6 +129,9 @@ export class Cache {
125
129
  const keyObj = this.namespace._getInternal().create(key);
126
130
  try {
127
131
  const value = await this.adapter.get(keyObj.namespaced);
132
+ if (this.shouldValidateOutput && value !== null) {
133
+ await validate(this.schema, value);
134
+ }
128
135
  if (value === null) {
129
136
  this.eventBus
130
137
  .dispatch(CACHE_EVENTS.NOT_FOUND, {
@@ -168,6 +175,9 @@ export class Cache {
168
175
  const keyObj = this.namespace._getInternal().create(key);
169
176
  try {
170
177
  const value = await this.adapter.getAndRemove(keyObj.namespaced);
178
+ if (this.shouldValidateOutput && value !== null) {
179
+ await validate(this.schema, value);
180
+ }
171
181
  if (value === null) {
172
182
  this.eventBus
173
183
  .dispatch(CACHE_EVENTS.NOT_FOUND, {
@@ -228,6 +238,7 @@ export class Cache {
228
238
  return this.createLazyPromise(async () => {
229
239
  const keyObj = this.namespace._getInternal().create(key);
230
240
  try {
241
+ await validate(this.schema, value);
231
242
  const hasAdded = await this.adapter.add(keyObj.namespaced, value, ttl);
232
243
  if (hasAdded) {
233
244
  this.eventBus
@@ -258,6 +269,7 @@ export class Cache {
258
269
  return this.createLazyPromise(async () => {
259
270
  const keyObj = this.namespace._getInternal().create(key);
260
271
  try {
272
+ await validate(this.schema, value);
261
273
  const hasUpdated = await this.adapter.put(keyObj.namespaced, value, ttl);
262
274
  if (hasUpdated) {
263
275
  this.eventBus
@@ -297,6 +309,7 @@ export class Cache {
297
309
  return this.createLazyPromise(async () => {
298
310
  const keyObj = this.namespace._getInternal().create(key);
299
311
  try {
312
+ await validate(this.schema, value);
300
313
  const hasUpdated = await this.adapter.update(keyObj.namespaced, value);
301
314
  if (hasUpdated) {
302
315
  this.eventBus
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache/cache.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D;;GAEG;AAQH,OAAO,EACH,YAAY,GAGf,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACH,qBAAqB,EACrB,cAAc,GACjB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACH,oBAAoB,EACpB,gBAAgB,EAChB,QAAQ,GACX,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAGN,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAGH,SAAS,GACZ,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAQzD,OAAO,EAAE,QAAQ,EAAE,MAAM,2DAA2D,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAChG,OAAO,EAAE,sBAAsB,EAAE,MAAM,uEAAuE,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,oEAAoE,CAAC;AAoF1G;;;;GAIG;AACH,MAAM,OAAO,KAAK;IACG,QAAQ,CAAkC;IAC1C,OAAO,CAAuB;IAC9B,UAAU,CAAkB;IAC5B,SAAS,CAAY;IACrB,kBAAkB,CAGjC;IACe,MAAM,CAAsC;IAC5C,oBAAoB,CAAU;IAE/C;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,YAAY,QAA8B;QACtC,MAAM,EACF,oBAAoB,GAAG,IAAI,EAC3B,MAAM,EACN,SAAS,GAAG,IAAI,SAAS,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EACzC,OAAO,EACP,QAAQ,GAAG,IAAI,QAAQ,CAAM;YACzB,OAAO,EAAE,IAAI,qBAAqB,EAAE;SACvC,CAAC,EACF,UAAU,GAAG,IAAI,EACjB,kBAAkB,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,SAAS,CAAC,GACjE,GAAG,QAAQ,CAAC;QAEb,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,GAAG,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAC3B,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,WAAW,CACP,SAAqB,EACrB,QAAyD;QAEzD,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACH,cAAc,CACV,SAAqB,EACrB,QAAyD;QAEzD,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACH,UAAU,CACN,SAAqB,EACrB,QAAyD;QAEzD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACH,SAAS,CACL,SAAqB;QAErB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,aAAa,CACT,SAAqB,EACrB,QAAyD;QAEzD,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACH,SAAS,CACL,SAAqB,EACrB,QAAyD;QAEzD,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAEO,iBAAiB,CACrB,OAAkC;QAElC,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,GAAsB;QACzB,OAAO,IAAI,WAAW,CAAC,KAAK,IAAI,EAAE;YAC9B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,OAAO,KAAK,KAAK,IAAI,CAAC;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,CAAC,GAAsB;QAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACtC,OAAO,CAAC,MAAM,CAAC;QACnB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,GAAG,CAAC,GAAsB;QACtB,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACxD,IAAI,IAAI,CAAC,oBAAoB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBAC9C,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACjB,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE;wBAC9B,GAAG,EAAE,MAAM,CAAC,QAAQ;qBACvB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE;wBAC1B,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK;qBACR,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBAED,OAAO,KAAK,CAAC;YACjB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;oBACrB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CAAC,GAAsB;QAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAQ,KAAK,IAAI,EAAE;YAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,MAAM,IAAI,qBAAqB,CAC3B,QAAQ,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,gBAAgB,CAC7E,CAAC;YACN,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,YAAY,CAAC,GAAsB;QAC/B,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CACzC,MAAM,CAAC,UAAU,CACpB,CAAC;gBACF,IAAI,IAAI,CAAC,oBAAoB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBAC9C,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACjB,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE;wBAC9B,GAAG,EAAE,MAAM,CAAC,QAAQ;qBACvB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE;wBAC1B,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK;qBACR,CAAC;yBACD,KAAK,EAAE,CAAC;oBACb,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,SAAS;wBACf,GAAG,EAAE,MAAM,CAAC,QAAQ;qBACvB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,OAAO,KAAK,CAAC;YACjB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;oBACrB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CACD,GAAsB,EACtB,YAA4C;QAE5C,OAAO,IAAI,CAAC,iBAAiB,CAAQ,KAAK,IAAI,EAAE;YAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,MAAM,oBAAoB,GACtB,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAC;gBAC7C,OAAO,oBAAoB,CAAC;YAChC,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,QAAQ,CACJ,GAAsB,EACtB,UAA0C,EAC1C,GAAqB;QAErB,OAAO,IAAI,CAAC,iBAAiB,CAAQ,KAAK,IAAI,EAAE;YAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,MAAM,oBAAoB,GACtB,MAAM,oBAAoB,CAAkB,UAAU,CAAC,CAAC;gBAC5D,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,oBAAoB,EAAE,GAAG,CAAC,CAAC;gBAC/C,OAAO,oBAAoB,CAAC;YAChC,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,GAAG,CACC,GAAsB,EACtB,KAAY,EACZ,MAAuB,IAAI,CAAC,UAAU;QAEtC,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACnC,MAAM,CAAC,UAAU,EACjB,KAAK,EACL,GAAG,CACN,CAAC;gBACF,IAAI,QAAQ,EAAE,CAAC;oBACX,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,OAAO;wBACb,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK;wBACL,GAAG;qBACN,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,OAAO,QAAQ,CAAC;YACpB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvB,KAAK;oBACL,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;oBACrB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,GAAG,CACC,GAAsB,EACtB,KAAY,EACZ,MAAuB,IAAI,CAAC,UAAU;QAEtC,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACrC,MAAM,CAAC,UAAU,EACjB,KAAK,EACL,GAAG,CACN,CAAC;gBACF,IAAI,UAAU,EAAE,CAAC;oBACb,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,SAAS;wBACf,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK;qBACR,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,OAAO;wBACb,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK;wBACL,GAAG;qBACN,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,OAAO,UAAU,CAAC;YACtB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvB,KAAK;oBACL,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;oBACrB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,MAAM,CAAC,GAAsB,EAAE,KAAY;QACvC,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CACxC,MAAM,CAAC,UAAU,EACjB,KAAK,CACR,CAAC;gBACF,IAAI,UAAU,EAAE,CAAC;oBACb,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,SAAS;wBACf,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK;qBACR,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE;wBAC9B,GAAG,EAAE,MAAM,CAAC,QAAQ;qBACvB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,OAAO,UAAU,CAAC;YACtB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvB,KAAK;oBACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACxB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CACL,GAAsB,EACtB,QAAQ,CAA2B;QAEnC,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAC3C,MAAM,CAAC,UAAU,EACjB,KAAK,CACR,CAAC;gBACF,IAAI,UAAU,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,aAAa;wBACnB,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK;qBACR,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,IAAI,UAAU,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,aAAa;wBACnB,GAAG,EAAE,MAAM,CAAC,QAAQ;wBACpB,KAAK,EAAE,CAAC,KAAK;qBAChB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,IAAI,CAAC,UAAU,EAAE,CAAC;oBACd,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE;wBAC9B,GAAG,EAAE,MAAM,CAAC,QAAQ;qBACvB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,OAAO,UAAU,CAAC;YACtB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvB,KAAK;oBACL,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI;oBAC3B,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,IAAI,cAAc,CACpB,0DAA0D,MAAM,CAAC,QAAQ,GAAG,EAC5E,KAAK,CACR,CAAC;YACN,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CACL,GAAsB,EACtB,QAAQ,CAA2B;QAEnC,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,KAA+B,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACP,CAAC;IAED,MAAM,CAAC,GAAsB;QACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;oBAC7C,MAAM,CAAC,UAAU;iBACpB,CAAC,CAAC;gBACH,IAAI,UAAU,EAAE,CAAC;oBACb,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5B,IAAI,EAAE,SAAS;wBACf,GAAG,EAAE,MAAM,CAAC,QAAQ;qBACvB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,QAAQ;yBACR,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE;wBAC9B,GAAG,EAAE,MAAM,CAAC,QAAQ;qBACvB,CAAC;yBACD,KAAK,EAAE,CAAC;gBACjB,CAAC;gBACD,OAAO,UAAU,CAAC;YACtB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACxB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,UAAU,CAAC,IAAiC;QACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YAC1B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAClC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAC5C,CAAC;YACF,IAAI,CAAC;gBACD,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CACtD,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAC/C,CAAC;gBACF,IAAI,oBAAoB,EAAE,CAAC;oBACvB,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CACxB,CACI,MAAM,EAC0C,EAAE,CAClD;wBACI,YAAY,CAAC,OAAO;wBACpB;4BACI,IAAI,EAAE,SAAS;4BACf,GAAG,EAAE,MAAM,CAAC,QAAQ;yBACvB;qBACK,CACjB,CAAC;oBACF,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;wBACtC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;oBACrD,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CACxB,CACI,MAAM,EAIR,EAAE,CACA;wBACI,YAAY,CAAC,SAAS;wBACtB;4BACI,GAAG,EAAE,MAAM,CAAC,QAAQ;yBACvB;qBACK,CACjB,CAAC;oBACF,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;wBACtC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;oBACrD,CAAC;gBACL,CAAC;gBACD,OAAO,oBAAoB,CAAC;YAChC,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;oBAChD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACxB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;YACrC,IAAI,CAAC;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAClC,YAAY,CAAC,OAAO,EACpB,EAAE,CACL,CAAC;gBACF,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAChC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,UAAU,CAC3C,CAAC;gBACF,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ;qBACR,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBACrC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;oBACvB,KAAK;iBACR,CAAC;qBACD,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -7,6 +7,7 @@ import type { ICache, ICacheFactory } from "../../../../cache/contracts/_module-
7
7
  import { type CacheSettingsBase, type CacheAdapter } from "../../../../cache/implementations/derivables/cache/_module.js";
8
8
  import { Namespace, type TimeSpan } from "../../../../utilities/_module-exports.js";
9
9
  import type { LazyPromise } from "../../../../async/_module-exports.js";
10
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
10
11
  /**
11
12
  *
12
13
  * IMPORT_PATH: `"@daiso-tech/core/cache"`
@@ -18,7 +19,7 @@ export type CacheAdapters<TAdapters extends string = string> = Partial<Record<TA
18
19
  * IMPORT_PATH: `"@daiso-tech/core/cache"`
19
20
  * @group Derivables
20
21
  */
21
- export type CacheFactorySettings<TAdapters extends string = string> = CacheSettingsBase & {
22
+ export type CacheFactorySettings<TAdapters extends string = string, TType = unknown> = CacheSettingsBase<TType> & {
22
23
  adapters: CacheAdapters<TAdapters>;
23
24
  defaultAdapter?: NoInfer<TAdapters>;
24
25
  };
@@ -28,7 +29,7 @@ export type CacheFactorySettings<TAdapters extends string = string> = CacheSetti
28
29
  * IMPORT_PATH: `"@daiso-tech/core/cache"`
29
30
  * @group Derivables
30
31
  */
31
- export declare class CacheFactory<TAdapters extends string = string> implements ICacheFactory<TAdapters> {
32
+ export declare class CacheFactory<TAdapters extends string = string, TType = unknown> implements ICacheFactory<TAdapters, TType> {
32
33
  private readonly settings;
33
34
  /**
34
35
  * @example
@@ -52,11 +53,13 @@ export declare class CacheFactory<TAdapters extends string = string> implements
52
53
  * defaultAdapter: "memory",
53
54
  * });
54
55
  */
55
- constructor(settings: CacheFactorySettings<TAdapters>);
56
- setNamespace(namespace: Namespace): CacheFactory<TAdapters>;
57
- setDefaultTtl(ttl: TimeSpan): CacheFactory<TAdapters>;
58
- setEventBus(eventBus: IEventBus): CacheFactory<TAdapters>;
59
- setLazyPromiseFactory(factory: Factory<AsyncLazy<any>, LazyPromise<any>>): CacheFactory<TAdapters>;
56
+ constructor(settings: CacheFactorySettings<TAdapters, TType>);
57
+ setNamespace(namespace: Namespace): CacheFactory<TAdapters, TType>;
58
+ setDefaultTtl(ttl: TimeSpan): CacheFactory<TAdapters, TType>;
59
+ setEventBus(eventBus: IEventBus): CacheFactory<TAdapters, TType>;
60
+ setLazyPromiseFactory(factory: Factory<AsyncLazy<any>, LazyPromise<any>>): CacheFactory<TAdapters, TType>;
61
+ setSchema<TSchemaOutputType>(schema: StandardSchemaV1<TSchemaOutputType>): CacheFactory<TAdapters, TSchemaOutputType>;
62
+ setType<TOutputType>(): CacheFactory<TAdapters, TOutputType>;
60
63
  /**
61
64
  * @example
62
65
  * ```ts
@@ -97,5 +100,5 @@ export declare class CacheFactory<TAdapters extends string = string> implements
97
100
  * .add("a", 1);
98
101
  * ```
99
102
  */
100
- use<TType = unknown>(adapterName?: TAdapters | undefined): ICache<TType>;
103
+ use(adapterName?: TAdapters | undefined): ICache<TType>;
101
104
  }
@@ -61,6 +61,15 @@ export class CacheFactory {
61
61
  lazyPromiseFactory: factory,
62
62
  });
63
63
  }
64
+ setSchema(schema) {
65
+ return new CacheFactory({
66
+ ...this.settings,
67
+ schema,
68
+ });
69
+ }
70
+ setType() {
71
+ return new CacheFactory(this.settings);
72
+ }
64
73
  /**
65
74
  * @example
66
75
  * ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"cache-factory.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache-factory/cache-factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,6BAA6B,EAC7B,gBAAgB,EAChB,wBAAwB,GAG3B,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACH,KAAK,GAGR,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAiB,MAAM,gCAAgC,CAAC;AAwB1E;;;;;GAKG;AACH,MAAM,OAAO,YAAY;IAyBQ;IAtB7B;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,YAA6B,QAAyC;QAAzC,aAAQ,GAAR,QAAQ,CAAiC;IAAG,CAAC;IAE1E,YAAY,CAAC,SAAoB;QAC7B,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,SAAS;SACZ,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,GAAa;QACvB,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,UAAU,EAAE,GAAG;SAClB,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,QAAmB;QAC3B,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CACjB,OAAkD;QAElD,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,kBAAkB,EAAE,OAAO;SAC9B,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,GAAG,CACC,cAAqC,IAAI,CAAC,QAAQ,CAAC,cAAc;QAEjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,EAAE,SAAS,GAAG,IAAI,SAAS,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpE,OAAO,IAAI,KAAK,CAAC;YACb,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO;YACP,SAAS,EAAE,IAAI,SAAS,CAAC;gBACrB,GAAG,gBAAgB,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC;gBACtD,WAAW;aACd,CAAC;SACL,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"cache-factory.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache-factory/cache-factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,6BAA6B,EAC7B,gBAAgB,EAChB,wBAAwB,GAG3B,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACH,KAAK,GAGR,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAiB,MAAM,gCAAgC,CAAC;AA2B1E;;;;;GAKG;AACH,MAAM,OAAO,YAAY;IA0BA;IAvBrB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,YACqB,QAAgD;QAAhD,aAAQ,GAAR,QAAQ,CAAwC;IAClE,CAAC;IAEJ,YAAY,CAAC,SAAoB;QAC7B,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,SAAS;SACZ,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,GAAa;QACvB,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,UAAU,EAAE,GAAG;SAClB,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,QAAmB;QAC3B,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CACjB,OAAkD;QAElD,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,kBAAkB,EAAE,OAAO;SAC9B,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CACL,MAA2C;QAE3C,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,MAAM;SACT,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,OAAO,IAAI,YAAY,CACnB,IAAI,CAAC,QAAwD,CAChE,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,GAAG,CACC,cAAqC,IAAI,CAAC,QAAQ,CAAC,cAAc;QAEjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,EAAE,SAAS,GAAG,IAAI,SAAS,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpE,OAAO,IAAI,KAAK,CAAC;YACb,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO;YACP,SAAS,EAAE,IAAI,SAAS,CAAC;gBACrB,GAAG,gBAAgB,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC;gBACtD,WAAW;aACd,CAAC;SACL,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -4,6 +4,7 @@
4
4
  import type { AsyncReduce, CrossJoinResult, AsyncPredicate, AsyncForEach, AsyncMap, AsyncModifier, Tap, AsyncTransform, Comparator, EnsureRecord, EnsureMap } from "../../collection/contracts/_shared/_module.js";
5
5
  import type { AsyncLazyable, AsyncIterableValue } from "../../utilities/_module-exports.js";
6
6
  import type { LazyPromise } from "../../async/_module-exports.js";
7
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
7
8
  /**
8
9
  *
9
10
  * IMPORT_PATH: `"@daiso-tech/core/collection/contracts"`
@@ -51,6 +52,11 @@ export type IAsyncCollection<TInput = unknown> = AsyncIterable<TInput> & {
51
52
  * ```
52
53
  */
53
54
  filter<TOutput extends TInput>(predicateFn: AsyncPredicate<TInput, IAsyncCollection<TInput>, TOutput>): IAsyncCollection<TOutput>;
55
+ /**
56
+ * The `validate` method filters all items that matches the `schema` and transforms them afterwards.
57
+ * The `schema` can be any [standard schema](https://standardschema.dev/) compliant object.
58
+ */
59
+ validate<TOutput>(schema: StandardSchemaV1<TInput, TOutput>): IAsyncCollection<TOutput>;
54
60
  /**
55
61
  * The `reject` method filters the collection using `predicateFn`, keeping only those items that not pass `predicateFn`.
56
62
  * @example
@@ -4,6 +4,7 @@
4
4
  import type { Comparator, PredicateInvokable, ForEach, Map, Modifier, Tap, Transform, Reduce, CrossJoinResult, EnsureMap, EnsureRecord } from "../../collection/contracts/_shared/_module.js";
5
5
  import type { ISerializable } from "../../serde/contracts/_module-exports.js";
6
6
  import type { Lazyable } from "../../utilities/_module-exports.js";
7
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
7
8
  export type Collapse<TValue> = TValue extends Array<infer TItem> | Iterable<infer TItem> | ICollection<infer TItem> ? TItem : TValue;
8
9
  /**
9
10
  * The `ICollection` contract offers a fluent and efficient approach to working with {@link Iterable | `Iterable`} objects.
@@ -47,6 +48,11 @@ export type ICollection<TInput = unknown> = Iterable<TInput> & ISerializable<TIn
47
48
  * ```
48
49
  */
49
50
  filter<TOutput extends TInput>(predicateFn: PredicateInvokable<TInput, ICollection<TInput>, TOutput>): ICollection<TOutput>;
51
+ /**
52
+ * The `validate` method filters all items that matches the `schema` and transforms them afterwards.
53
+ * The `schema` can be any [standard schema](https://standardschema.dev/) compliant object.
54
+ */
55
+ validate<TOutput>(schema: StandardSchemaV1<TInput, TOutput>): ICollection<TOutput>;
50
56
  /**
51
57
  * The `reject` method filters the collection using `predicateFn`, keeping only those items that not pass `predicateFn`.
52
58
  * @example
@@ -28,5 +28,6 @@ export * from "../../../../collection/implementations/async-iterable-collection/
28
28
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-tap-iterable.js";
29
29
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-unique-iterable.js";
30
30
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-update-iterable.js";
31
+ export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js";
31
32
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-when-iterable.js";
32
33
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-zip-iterable.js";
@@ -28,6 +28,7 @@ export * from "../../../../collection/implementations/async-iterable-collection/
28
28
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-tap-iterable.js";
29
29
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-unique-iterable.js";
30
30
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-update-iterable.js";
31
+ export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js";
31
32
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-when-iterable.js";
32
33
  export * from "../../../../collection/implementations/async-iterable-collection/_shared/async-zip-iterable.js";
33
34
  //# sourceMappingURL=_module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/async-iterable-collection/_shared/_module.ts"],"names":[],"mappings":"AAAA,cAAc,wFAAwF,CAAC;AACvG,cAAc,8FAA8F,CAAC;AAC7G,cAAc,2FAA2F,CAAC;AAC1G,cAAc,2FAA2F,CAAC;AAC1G,cAAc,6FAA6F,CAAC;AAC5G,cAAc,0FAA0F,CAAC;AACzG,cAAc,yFAAyF,CAAC;AACxG,cAAc,2FAA2F,CAAC;AAC1G,cAAc,2FAA2F,CAAC;AAC1G,cAAc,+FAA+F,CAAC;AAC9G,cAAc,gGAAgG,CAAC;AAC/G,cAAc,sFAAsF,CAAC;AACrG,cAAc,wFAAwF,CAAC;AACvG,cAAc,0FAA0F,CAAC;AACzG,cAAc,4FAA4F,CAAC;AAC3G,cAAc,0FAA0F,CAAC;AACzG,cAAc,yFAAyF,CAAC;AACxG,cAAc,0FAA0F,CAAC;AACzG,cAAc,0FAA0F,CAAC;AACzG,cAAc,uFAAuF,CAAC;AACtG,cAAc,6FAA6F,CAAC;AAC5G,cAAc,wFAAwF,CAAC;AACvG,cAAc,0FAA0F,CAAC;AACzG,cAAc,uFAAuF,CAAC;AACtG,cAAc,wFAAwF,CAAC;AACvG,cAAc,uFAAuF,CAAC;AACtG,cAAc,6FAA6F,CAAC;AAC5G,cAAc,sFAAsF,CAAC;AACrG,cAAc,yFAAyF,CAAC;AACxG,cAAc,yFAAyF,CAAC;AACxG,cAAc,uFAAuF,CAAC;AACtG,cAAc,sFAAsF,CAAC"}
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/async-iterable-collection/_shared/_module.ts"],"names":[],"mappings":"AAAA,cAAc,wFAAwF,CAAC;AACvG,cAAc,8FAA8F,CAAC;AAC7G,cAAc,2FAA2F,CAAC;AAC1G,cAAc,2FAA2F,CAAC;AAC1G,cAAc,6FAA6F,CAAC;AAC5G,cAAc,0FAA0F,CAAC;AACzG,cAAc,yFAAyF,CAAC;AACxG,cAAc,2FAA2F,CAAC;AAC1G,cAAc,2FAA2F,CAAC;AAC1G,cAAc,+FAA+F,CAAC;AAC9G,cAAc,gGAAgG,CAAC;AAC/G,cAAc,sFAAsF,CAAC;AACrG,cAAc,wFAAwF,CAAC;AACvG,cAAc,0FAA0F,CAAC;AACzG,cAAc,4FAA4F,CAAC;AAC3G,cAAc,0FAA0F,CAAC;AACzG,cAAc,yFAAyF,CAAC;AACxG,cAAc,0FAA0F,CAAC;AACzG,cAAc,0FAA0F,CAAC;AACzG,cAAc,uFAAuF,CAAC;AACtG,cAAc,6FAA6F,CAAC;AAC5G,cAAc,wFAAwF,CAAC;AACvG,cAAc,0FAA0F,CAAC;AACzG,cAAc,uFAAuF,CAAC;AACtG,cAAc,wFAAwF,CAAC;AACvG,cAAc,uFAAuF,CAAC;AACtG,cAAc,6FAA6F,CAAC;AAC5G,cAAc,sFAAsF,CAAC;AACrG,cAAc,yFAAyF,CAAC;AACxG,cAAc,yFAAyF,CAAC;AACxG,cAAc,2FAA2F,CAAC;AAC1G,cAAc,uFAAuF,CAAC;AACtG,cAAc,sFAAsF,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
2
+ export declare class AsyncValidateIterable<TInput, TOutput> implements AsyncIterable<TOutput> {
3
+ private readonly iterable;
4
+ private readonly schema;
5
+ constructor(iterable: AsyncIterable<TInput>, schema: StandardSchemaV1<TInput, TOutput>);
6
+ [Symbol.asyncIterator](): AsyncIterator<TOutput>;
7
+ }
@@ -0,0 +1,17 @@
1
+ export class AsyncValidateIterable {
2
+ iterable;
3
+ schema;
4
+ constructor(iterable, schema) {
5
+ this.iterable = iterable;
6
+ this.schema = schema;
7
+ }
8
+ async *[Symbol.asyncIterator]() {
9
+ for await (const item of this.iterable) {
10
+ const result = await this.schema["~standard"].validate(item);
11
+ if (!result.issues) {
12
+ yield result.value;
13
+ }
14
+ }
15
+ }
16
+ }
17
+ //# sourceMappingURL=async-validate-iterable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-validate-iterable.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,qBAAqB;IAIT;IACA;IAFrB,YACqB,QAA+B,EAC/B,MAAyC;QADzC,aAAQ,GAAR,QAAQ,CAAuB;QAC/B,WAAM,GAAN,MAAM,CAAmC;IAC3D,CAAC;IAEJ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACzB,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE7D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,MAAM,CAAC,KAAK,CAAC;YACvB,CAAC;QACL,CAAC;IACL,CAAC;CACJ"}
@@ -6,6 +6,7 @@ import { type AsyncCollapse, type AsyncPredicate, type AsyncForEach, type AsyncM
6
6
  import { type AsyncIterableValue, type AsyncLazyable } from "../../../utilities/_module-exports.js";
7
7
  import type { AsyncLazy, Factory } from "../../../utilities/_module-exports.js";
8
8
  import { LazyPromise } from "../../../async/_module-exports.js";
9
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
9
10
  /**
10
11
  *
11
12
  * IMPORT_PATH: `"@daiso-tech/core/collection"`
@@ -200,6 +201,7 @@ export declare class AsyncIterableCollection<TInput = unknown> implements IAsync
200
201
  keys(): IAsyncCollection<number>;
201
202
  copy(): IAsyncCollection<TInput>;
202
203
  filter<TOutput extends TInput>(predicateFn: AsyncPredicate<TInput, IAsyncCollection<TInput>, TOutput>): IAsyncCollection<TOutput>;
204
+ validate<TOutput>(schema: StandardSchemaV1<TInput, TOutput>): IAsyncCollection<TOutput>;
203
205
  reject<TOutput extends TInput>(predicateFn: AsyncPredicate<TInput, IAsyncCollection<TInput>, TOutput>): IAsyncCollection<Exclude<TInput, TOutput>>;
204
206
  map<TOutput>(mapFn: AsyncMap<TInput, IAsyncCollection<TInput>, TOutput>): IAsyncCollection<TOutput>;
205
207
  reduce(reduce: AsyncReduce<TInput, IAsyncCollection<TInput>, TInput>): LazyPromise<TInput>;
@@ -2,7 +2,7 @@
2
2
  * @module Collection
3
3
  */
4
4
  import { ItemNotFoundCollectionError, MultipleItemsFoundCollectionError, UnexpectedCollectionError, TypeCollectionError, EmptyCollectionError, } from "../../../collection/contracts/_module-exports.js";
5
- import { AsyncCrossJoinIterable, AsyncSlidingIteralbe, AsyncShuffleIterable, AsyncEntriesIterable, AsyncFilterIterable, AsyncChunkIterable, AsyncChunkWhileIterable, AsyncCollapseIterable, AsyncCountByIterable, AsyncFlatMapIterable, AsyncGroupByIterable, AsyncInsertAfterIterable, AsyncInsertBeforeIterable, AsyncMapIterable, AsyncMergeIterable, AsyncPadEndIterable, AsyncPadStartIterable, AsyncPartionIterable, AsyncSkipIterable, AsyncSkipUntilIterable, AsyncSortIterable, AsyncSplitIterable, AsyncTakeIterable, AsyncTakeUntilIterable, AsyncTapIterable, AsyncUniqueIterable, AsyncChangeIterable, AsyncWhenIterable, AsyncZipIterable, AsyncReverseIterable, AsyncSliceIterable, AsyncRepeatIterable, } from "../../../collection/implementations/async-iterable-collection/_shared/_module.js";
5
+ import { AsyncCrossJoinIterable, AsyncSlidingIteralbe, AsyncShuffleIterable, AsyncEntriesIterable, AsyncFilterIterable, AsyncChunkIterable, AsyncChunkWhileIterable, AsyncCollapseIterable, AsyncCountByIterable, AsyncFlatMapIterable, AsyncGroupByIterable, AsyncInsertAfterIterable, AsyncInsertBeforeIterable, AsyncMapIterable, AsyncMergeIterable, AsyncPadEndIterable, AsyncPadStartIterable, AsyncPartionIterable, AsyncSkipIterable, AsyncSkipUntilIterable, AsyncSortIterable, AsyncSplitIterable, AsyncTakeIterable, AsyncTakeUntilIterable, AsyncTapIterable, AsyncUniqueIterable, AsyncChangeIterable, AsyncWhenIterable, AsyncZipIterable, AsyncReverseIterable, AsyncSliceIterable, AsyncRepeatIterable, AsyncValidateIterable, } from "../../../collection/implementations/async-iterable-collection/_shared/_module.js";
6
6
  import { isInvokable, resolveInvokable, } from "../../../utilities/_module-exports.js";
7
7
  import { resolveAsyncLazyable } from "../../../utilities/_module-exports.js";
8
8
  import { LazyPromise } from "../../../async/_module-exports.js";
@@ -218,6 +218,9 @@ export class AsyncIterableCollection {
218
218
  filter(predicateFn) {
219
219
  return new AsyncIterableCollection(new AsyncFilterIterable(this, predicateFn));
220
220
  }
221
+ validate(schema) {
222
+ return new AsyncIterableCollection(new AsyncValidateIterable(this, schema));
223
+ }
221
224
  reject(predicateFn) {
222
225
  return this.filter(async (...arguments_) => !(await resolveInvokable(predicateFn)(...arguments_)));
223
226
  }
@@ -1 +1 @@
1
- {"version":3,"file":"async-iterable-collection.js","sourceRoot":"","sources":["../../../../src/collection/implementations/async-iterable-collection/async-iterable-collection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async-iterable-collection.js","sourceRoot":"","sources":["../../../../src/collection/implementations/async-iterable-collection/async-iterable-collection.ts"],"names":[],"mappings":"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"}
@@ -28,5 +28,6 @@ export * from "../../../../collection/implementations/iterable-collection/_share
28
28
  export * from "../../../../collection/implementations/iterable-collection/_shared/tap-iterable.js";
29
29
  export * from "../../../../collection/implementations/iterable-collection/_shared/unique-iterable.js";
30
30
  export * from "../../../../collection/implementations/iterable-collection/_shared/update-iterable.js";
31
+ export * from "../../../../collection/implementations/iterable-collection/_shared/validate-iterable.js";
31
32
  export * from "../../../../collection/implementations/iterable-collection/_shared/when-iterable.js";
32
33
  export * from "../../../../collection/implementations/iterable-collection/_shared/zip-iterable.js";
@@ -28,6 +28,7 @@ export * from "../../../../collection/implementations/iterable-collection/_share
28
28
  export * from "../../../../collection/implementations/iterable-collection/_shared/tap-iterable.js";
29
29
  export * from "../../../../collection/implementations/iterable-collection/_shared/unique-iterable.js";
30
30
  export * from "../../../../collection/implementations/iterable-collection/_shared/update-iterable.js";
31
+ export * from "../../../../collection/implementations/iterable-collection/_shared/validate-iterable.js";
31
32
  export * from "../../../../collection/implementations/iterable-collection/_shared/when-iterable.js";
32
33
  export * from "../../../../collection/implementations/iterable-collection/_shared/zip-iterable.js";
33
34
  //# sourceMappingURL=_module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/iterable-collection/_shared/_module.ts"],"names":[],"mappings":"AAAA,cAAc,4EAA4E,CAAC;AAC3F,cAAc,kFAAkF,CAAC;AACjG,cAAc,+EAA+E,CAAC;AAC9F,cAAc,+EAA+E,CAAC;AAC9F,cAAc,iFAAiF,CAAC;AAChG,cAAc,8EAA8E,CAAC;AAC7F,cAAc,6EAA6E,CAAC;AAC5F,cAAc,+EAA+E,CAAC;AAC9F,cAAc,+EAA+E,CAAC;AAC9F,cAAc,mFAAmF,CAAC;AAClG,cAAc,oFAAoF,CAAC;AACnG,cAAc,0EAA0E,CAAC;AACzF,cAAc,4EAA4E,CAAC;AAC3F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,gFAAgF,CAAC;AAC/F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,6EAA6E,CAAC;AAC5F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,iFAAiF,CAAC;AAChG,cAAc,4EAA4E,CAAC;AAC3F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,4EAA4E,CAAC;AAC3F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,iFAAiF,CAAC;AAChG,cAAc,0EAA0E,CAAC;AACzF,cAAc,6EAA6E,CAAC;AAC5F,cAAc,6EAA6E,CAAC;AAC5F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,0EAA0E,CAAC"}
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/iterable-collection/_shared/_module.ts"],"names":[],"mappings":"AAAA,cAAc,4EAA4E,CAAC;AAC3F,cAAc,kFAAkF,CAAC;AACjG,cAAc,+EAA+E,CAAC;AAC9F,cAAc,+EAA+E,CAAC;AAC9F,cAAc,iFAAiF,CAAC;AAChG,cAAc,8EAA8E,CAAC;AAC7F,cAAc,6EAA6E,CAAC;AAC5F,cAAc,+EAA+E,CAAC;AAC9F,cAAc,+EAA+E,CAAC;AAC9F,cAAc,mFAAmF,CAAC;AAClG,cAAc,oFAAoF,CAAC;AACnG,cAAc,0EAA0E,CAAC;AACzF,cAAc,4EAA4E,CAAC;AAC3F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,gFAAgF,CAAC;AAC/F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,6EAA6E,CAAC;AAC5F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,iFAAiF,CAAC;AAChG,cAAc,4EAA4E,CAAC;AAC3F,cAAc,8EAA8E,CAAC;AAC7F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,4EAA4E,CAAC;AAC3F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,iFAAiF,CAAC;AAChG,cAAc,0EAA0E,CAAC;AACzF,cAAc,6EAA6E,CAAC;AAC5F,cAAc,6EAA6E,CAAC;AAC5F,cAAc,+EAA+E,CAAC;AAC9F,cAAc,2EAA2E,CAAC;AAC1F,cAAc,0EAA0E,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
2
+ export declare class ValidateIterable<TInput, TOutput> implements Iterable<TOutput> {
3
+ private readonly iterable;
4
+ private readonly schema;
5
+ constructor(iterable: Iterable<TInput>, schema: StandardSchemaV1<TInput, TOutput>);
6
+ [Symbol.iterator](): Iterator<TOutput>;
7
+ }
@@ -0,0 +1,21 @@
1
+ import { isPromiseLike } from "../../../../utilities/_module-exports.js";
2
+ export class ValidateIterable {
3
+ iterable;
4
+ schema;
5
+ constructor(iterable, schema) {
6
+ this.iterable = iterable;
7
+ this.schema = schema;
8
+ }
9
+ *[Symbol.iterator]() {
10
+ for (const item of this.iterable) {
11
+ const result = this.schema["~standard"].validate(item);
12
+ if (isPromiseLike(result)) {
13
+ throw new TypeError("Schema validation must be synchronous");
14
+ }
15
+ if (!result.issues) {
16
+ yield result.value;
17
+ }
18
+ }
19
+ }
20
+ }
21
+ //# sourceMappingURL=validate-iterable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-iterable.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/iterable-collection/_shared/validate-iterable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,MAAM,OAAO,gBAAgB;IAEJ;IACA;IAFrB,YACqB,QAA0B,EAC1B,MAAyC;QADzC,aAAQ,GAAR,QAAQ,CAAkB;QAC1B,WAAM,GAAN,MAAM,CAAmC;IAC3D,CAAC;IAEJ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QACd,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,SAAS,CAAC,uCAAuC,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,MAAM,CAAC,KAAK,CAAC;YACvB,CAAC;QACL,CAAC;IACL,CAAC;CACJ"}
@@ -4,6 +4,7 @@
4
4
  import type { EnsureMap, EnsureRecord } from "../../../collection/contracts/_module-exports.js";
5
5
  import { type Collapse, type Comparator, type PredicateInvokable, type ForEach, type ICollection, type Map, type Modifier, type Tap, type Transform, type Reduce, type CrossJoinResult } from "../../../collection/contracts/_module-exports.js";
6
6
  import { type Lazyable } from "../../../utilities/_module-exports.js";
7
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
7
8
  /**
8
9
  * All methods that return {@link ICollection | `ICollection`} are executed lazly, meaning the execution will occur iterating the items withthe `forEach` method or `for of` loop.
9
10
  *
@@ -166,6 +167,7 @@ export declare class IterableCollection<TInput = unknown> implements ICollection
166
167
  keys(): ICollection<number>;
167
168
  copy(): ICollection<TInput>;
168
169
  filter<TOutput extends TInput>(predicateFn: PredicateInvokable<TInput, ICollection<TInput>, TOutput>): ICollection<TOutput>;
170
+ validate<TOutput>(schema: StandardSchemaV1<TInput, TOutput>): ICollection<TOutput>;
169
171
  reject<TOutput extends TInput>(predicateFn: PredicateInvokable<TInput, ICollection<TInput>, TOutput>): ICollection<Exclude<TInput, TOutput>>;
170
172
  map<TOutput>(mapFn: Map<TInput, ICollection<TInput>, TOutput>): ICollection<TOutput>;
171
173
  reduce(reduceFn: Reduce<TInput, ICollection<TInput>, TInput>): TInput;