@effect-app/infra 4.0.0-beta.190 → 4.0.0-beta.192

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 (54) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/Emailer/service.d.ts +2 -2
  3. package/dist/Emailer/service.d.ts.map +1 -1
  4. package/dist/MainFiberSet.d.ts +5 -5
  5. package/dist/MainFiberSet.d.ts.map +1 -1
  6. package/dist/MainFiberSet.js +1 -1
  7. package/dist/Model/Repository/ext.d.ts +3 -3
  8. package/dist/Model/Repository/ext.d.ts.map +1 -1
  9. package/dist/Model/Repository/ext.js +1 -1
  10. package/dist/Model/filter/types/path/eager.d.ts +1 -1
  11. package/dist/Model/filter/types/path/eager.d.ts.map +1 -1
  12. package/dist/Model/filter/types/path/eager.js +1 -1
  13. package/dist/Model/query/dsl.d.ts +16 -16
  14. package/dist/Model/query/dsl.d.ts.map +1 -1
  15. package/dist/RequestContext.d.ts +1 -1
  16. package/dist/RequestContext.d.ts.map +1 -1
  17. package/dist/RequestContext.js +1 -2
  18. package/dist/Store/Cosmos/query.d.ts +1 -1
  19. package/dist/Store/Cosmos/query.d.ts.map +1 -1
  20. package/dist/Store/Cosmos/query.js +3 -3
  21. package/dist/Store/service.d.ts +2 -2
  22. package/dist/Store/service.d.ts.map +1 -1
  23. package/dist/adapters/ServiceBus.d.ts +3 -3
  24. package/dist/adapters/ServiceBus.d.ts.map +1 -1
  25. package/dist/adapters/logger.d.ts +1 -1
  26. package/dist/api/ContextProvider.d.ts +2 -2
  27. package/dist/api/ContextProvider.d.ts.map +1 -1
  28. package/dist/api/ContextProvider.js +1 -1
  29. package/dist/api/routing.d.ts +8 -8
  30. package/dist/api/routing.d.ts.map +1 -1
  31. package/dist/api/routing.js +1 -1
  32. package/dist/test.d.ts +2 -2
  33. package/dist/test.d.ts.map +1 -1
  34. package/dist/test.js +1 -1
  35. package/package.json +10 -12
  36. package/src/Emailer/service.ts +1 -1
  37. package/src/MainFiberSet.ts +2 -3
  38. package/src/Model/Repository/ext.ts +3 -4
  39. package/src/Model/filter/types/path/eager.ts +1 -2
  40. package/src/Model/query/dsl.ts +18 -18
  41. package/src/RequestContext.ts +0 -2
  42. package/src/Store/Cosmos/query.ts +7 -9
  43. package/src/Store/service.ts +1 -1
  44. package/src/adapters/ServiceBus.ts +1 -1
  45. package/src/api/ContextProvider.ts +1 -2
  46. package/src/api/routing.ts +10 -16
  47. package/src/test.ts +1 -1
  48. package/dist/Operations.d.ts +0 -55
  49. package/dist/Operations.d.ts.map +0 -1
  50. package/dist/Operations.js +0 -99
  51. package/dist/OperationsRepo.d.ts +0 -23
  52. package/dist/OperationsRepo.d.ts.map +0 -1
  53. package/dist/OperationsRepo.js +0 -14
  54. package/eslint.config.mjs +0 -24
@@ -54,7 +54,7 @@ type ExtractFieldValuesRefined<T> = T extends QueryTogether<any, infer TFieldVal
54
54
 
55
55
  export type RelationDirection = "some" | "every"
56
56
  export type Relation = { relation: RelationDirection }
57
- export type Query<TFieldValues extends FieldValues> = QueryTogether<TFieldValues, TFieldValues, false, "initial">
57
+ export type Query<TFieldValues extends FieldValues> = QueryTogether<TFieldValues, TFieldValues>
58
58
  export type QueryWhere<
59
59
  TFieldValues extends FieldValues,
60
60
  TFieldValuesRefined extends TFieldValues = TFieldValues,
@@ -1538,7 +1538,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1538
1538
  fb: (current: Query<TFieldValues>) => QueryWhere<TFieldValues, TFieldValuesRefined2, E2>
1539
1539
  ): (
1540
1540
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1541
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined2, false>
1541
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined2>
1542
1542
 
1543
1543
  <
1544
1544
  TFieldValues extends FieldValues,
@@ -1555,7 +1555,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1555
1555
  ) => QueryWhere<TFieldValues, TFieldValuesRefined3, E3>
1556
1556
  ): (
1557
1557
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1558
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined3, false>
1558
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined3>
1559
1559
 
1560
1560
  <
1561
1561
  TFieldValues extends FieldValues,
@@ -1577,7 +1577,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1577
1577
  ) => QueryWhere<TFieldValues, TFieldValuesRefined4, E4>
1578
1578
  ): (
1579
1579
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1580
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined4, false>
1580
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined4>
1581
1581
 
1582
1582
  <
1583
1583
  TFieldValues extends FieldValues,
@@ -1604,7 +1604,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1604
1604
  ) => QueryWhere<TFieldValues, TFieldValuesRefined5, E5>
1605
1605
  ): (
1606
1606
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1607
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined5, false>
1607
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined5>
1608
1608
 
1609
1609
  <
1610
1610
  TFieldValues extends FieldValues,
@@ -1636,7 +1636,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1636
1636
  ) => QueryWhere<TFieldValues, TFieldValuesRefined6, E6>
1637
1637
  ): (
1638
1638
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1639
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined6, false>
1639
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined6>
1640
1640
 
1641
1641
  <
1642
1642
  TFieldValues extends FieldValues,
@@ -1673,7 +1673,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1673
1673
  ) => QueryWhere<TFieldValues, TFieldValuesRefined7, E7>
1674
1674
  ): (
1675
1675
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1676
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined7, false>
1676
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined7>
1677
1677
 
1678
1678
  <
1679
1679
  TFieldValues extends FieldValues,
@@ -1715,7 +1715,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1715
1715
  ) => QueryWhere<TFieldValues, TFieldValuesRefined8, E8>
1716
1716
  ): (
1717
1717
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1718
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined2, false>
1718
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined2>
1719
1719
 
1720
1720
  <
1721
1721
  TFieldValues extends FieldValues,
@@ -1762,7 +1762,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1762
1762
  ) => QueryWhere<TFieldValues, TFieldValuesRefined9, E9>
1763
1763
  ): (
1764
1764
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1765
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined9, false>
1765
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined9>
1766
1766
 
1767
1767
  <
1768
1768
  TFieldValues extends FieldValues,
@@ -1814,7 +1814,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1814
1814
  ) => QueryWhere<TFieldValues, TFieldValuesRefined10, E10>
1815
1815
  ): (
1816
1816
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1817
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined10, false>
1817
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined10>
1818
1818
 
1819
1819
  <
1820
1820
  TFieldValues extends FieldValues,
@@ -1871,7 +1871,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1871
1871
  ) => QueryWhere<TFieldValues, TFieldValuesRefined11, E11>
1872
1872
  ): (
1873
1873
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1874
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined11, false>
1874
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined11>
1875
1875
 
1876
1876
  <
1877
1877
  TFieldValues extends FieldValues,
@@ -1933,7 +1933,7 @@ export type NestedQueriesFreeDisjointRefinement = {
1933
1933
  ) => QueryWhere<TFieldValues, TFieldValuesRefined12, E12>
1934
1934
  ): (
1935
1935
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
1936
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined12, false>
1936
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined12>
1937
1937
 
1938
1938
  <
1939
1939
  TFieldValues extends FieldValues,
@@ -2000,7 +2000,7 @@ export type NestedQueriesFreeDisjointRefinement = {
2000
2000
  ) => QueryWhere<TFieldValues, TFieldValuesRefined13, E13>
2001
2001
  ): (
2002
2002
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
2003
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined13, false>
2003
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined13>
2004
2004
 
2005
2005
  <
2006
2006
  TFieldValues extends FieldValues,
@@ -2072,7 +2072,7 @@ export type NestedQueriesFreeDisjointRefinement = {
2072
2072
  ) => QueryWhere<TFieldValues, TFieldValuesRefined14, E14>
2073
2073
  ): (
2074
2074
  current: QueryWhere<TFieldValues, TFieldValuesRefined, E>
2075
- ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined14, false>
2075
+ ) => QueryWhere<TFieldValues, TFieldValuesRefined | TFieldValuesRefined14>
2076
2076
  }
2077
2077
 
2078
2078
  export type FilterWhere =
@@ -2099,12 +2099,12 @@ export type WhereEveryOrSome =
2099
2099
  subPath: TFieldName,
2100
2100
  dude: (
2101
2101
  current: Query<TFieldValues[TFieldName][number]>
2102
- ) => QueryWhere<TFieldValues[TFieldName][number], TFieldValues[TFieldName][number], false>,
2102
+ ) => QueryWhere<TFieldValues[TFieldName][number], TFieldValues[TFieldName][number]>,
2103
2103
  ...dudes: ((
2104
- current: QueryWhere<TFieldValues[TFieldName][number], TFieldValues[TFieldName][number], false>
2105
- ) => QueryWhere<TFieldValues[TFieldName][number], TFieldValues[TFieldName][number], false>)[]
2104
+ current: QueryWhere<TFieldValues[TFieldName][number], TFieldValues[TFieldName][number]>
2105
+ ) => QueryWhere<TFieldValues[TFieldName][number], TFieldValues[TFieldName][number]>)[]
2106
2106
  ): (
2107
2107
  current: Query<TFieldValues>
2108
- ) => QueryWhere<TFieldValues, TFieldValues, false>
2108
+ ) => QueryWhere<TFieldValues, TFieldValues>
2109
2109
  }
2110
2110
  & FilterContinuationsWithSubpath
@@ -53,11 +53,9 @@ export const spanAttributes = (ctx: Pick<RequestContext, "locale" | "namespace">
53
53
 
54
54
  // codegen:start {preset: model}
55
55
  //
56
- /* eslint-disable */
57
56
  export namespace RequestContext {
58
57
  export interface Encoded extends S.StructNestedEncoded<typeof RequestContext> {}
59
58
  }
60
- /* eslint-enable */
61
59
  //
62
60
  // codegen:end
63
61
  //
@@ -279,16 +279,14 @@ export function buildWhereCosmosQuery3(
279
279
  query: `
280
280
  SELECT ${
281
281
  select
282
- ? `${
283
- select
284
- .map((s) =>
285
- typeof s === "string"
286
- ? dottedToAccess(s === idKey ? "f.id" : `f.${s}`) // x["y"} vs x.y, helps with reserved keywords like "value"
287
- : `ARRAY (SELECT ${s.subKeys.map((_) => dottedToAccess(`t.${_}`)).join(",")}
282
+ ? select
283
+ .map((s) =>
284
+ typeof s === "string"
285
+ ? dottedToAccess(s === idKey ? "f.id" : `f.${s}`) // x["y"} vs x.y, helps with reserved keywords like "value"
286
+ : `ARRAY (SELECT ${s.subKeys.map((_) => dottedToAccess(`t.${_}`)).join(",")}
288
287
  FROM t in ${dottedToAccess(`f.${s.key}`)}) AS ${s.key}`
289
- )
290
- .join(", ")
291
- }`
288
+ )
289
+ .join(", ")
292
290
  : "f"
293
291
  }
294
292
  FROM ${name} f
@@ -202,7 +202,7 @@ export type PersistenceModelType<Encoded extends object> = Encoded & {
202
202
  }
203
203
 
204
204
  export interface StorageConfig {
205
- url: Redacted.Redacted<string>
205
+ url: Redacted.Redacted
206
206
  prefix: string
207
207
  dbName: string
208
208
  }
@@ -52,7 +52,7 @@ export class Sender extends Context.Opaque<Sender, {
52
52
  sendMessages: (
53
53
  messages: ServiceBusMessage | ServiceBusMessage[] | ServiceBusMessageBatch,
54
54
  options?: Omit<OperationOptionsBase, "abortSignal">
55
- ) => Effect.Effect<void, never, never>
55
+ ) => Effect.Effect<void>
56
56
  }>()("Sender", { make: makeSender }) {
57
57
  static readonly layer = (name: string) => this.toLayer(this.make(name))
58
58
  }
@@ -98,8 +98,7 @@ export const ContextProvider = <
98
98
  | Effect.Effect<ContextProviderA, never, ContextProviderR>
99
99
  | (() => Generator<
100
100
  Yieldable<any, any, never, ContextProviderR>,
101
- ContextProviderA,
102
- any
101
+ ContextProviderA
103
102
  >),
104
103
  MakeContextProviderE,
105
104
  MakeContextProviderR | Scope.Scope
@@ -384,9 +384,7 @@ export const makeRouter = <
384
384
  : Impl[K]["raw"] extends (...args: any[]) => Stream.Stream<any, any, infer R> ? R
385
385
  : Impl[K]["raw"] extends Stream.Stream<any, any, infer R> ? R
386
386
  : Impl[K]["raw"] extends (...args: any[]) => Generator<
387
- Yieldable<any, any, any, infer R>,
388
- any,
389
- any
387
+ Yieldable<any, any, any, infer R>
390
388
  > ? R
391
389
  : never
392
390
  : Impl[K] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R
@@ -394,9 +392,7 @@ export const makeRouter = <
394
392
  : Impl[K] extends (...args: any[]) => Stream.Stream<any, any, infer R> ? R
395
393
  : Impl[K] extends Stream.Stream<any, any, infer R> ? R
396
394
  : Impl[K] extends (...args: any[]) => Generator<
397
- Yieldable<any, any, any, infer R>,
398
- any,
399
- any
395
+ Yieldable<any, any, any, infer R>
400
396
  > ? R
401
397
  : never,
402
398
  | GetEffectContext<RequestContextMap, Resource[K]["config"]>
@@ -425,7 +421,7 @@ export const makeRouter = <
425
421
  match: any
426
422
  ) =>
427
423
  | Effect.Effect<THandlers, MakeE, MakeR>
428
- | Generator<Yieldable<any, any, MakeE, MakeR>, THandlers, any>
424
+ | Generator<Yieldable<any, any, MakeE, MakeR>, THandlers>
429
425
  ) => {
430
426
  const dependenciesL = (dependencies ? Layer.mergeAll(...dependencies as any) : Layer.empty) as Layer.Layer<
431
427
  LayerUtils.GetLayersSuccess<MakeDependencies>,
@@ -620,8 +616,7 @@ export const makeRouter = <
620
616
  any,
621
617
  any
622
618
  >,
623
- { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]> },
624
- any
619
+ { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]> }
625
620
  >
626
621
  /** @deprecated */
627
622
  readonly ಠ_ಠ: never
@@ -652,8 +647,7 @@ export const makeRouter = <
652
647
  // v4: generators yield Yieldable with asEffect()
653
648
  effect: (match: typeof router3) => Generator<
654
649
  Yieldable<any, any, any, any>,
655
- { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]> },
656
- any
650
+ { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]> }
657
651
  >
658
652
  }
659
653
  >(
@@ -713,23 +707,23 @@ export type MakeErrors<Make> = /*Make extends { readonly effect: (_: any) => Eff
713
707
  : Make extends { readonly effect: (_: any) => Effect.Effect<any, never, any> } ? never
714
708
  : */
715
709
  // v4: generators yield Yieldable with asEffect()
716
- Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, never, any>, any, any> } ? never
717
- : Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, infer E, any>, any, any> } ? E
710
+ Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, never, any>> } ? never
711
+ : Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, infer E, any>> } ? E
718
712
  : never
719
713
 
720
714
  export type MakeContext<Make> = /*Make extends { readonly effect: (_: any) => Effect.Effect<any, any, infer R> } ? R
721
715
  : Make extends { readonly effect: (_: any) => Effect.Effect<any, any, never> } ? never
722
716
  : */
723
717
  // v4: generators yield Yieldable with asEffect()
724
- Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, any, never>, any, any> } ? never
725
- : Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, any, infer R>, any, any> } ? R
718
+ Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, any>> } ? never
719
+ : Make extends { readonly effect: (_: any) => Generator<Yieldable<any, any, any, infer R>> } ? R
726
720
  : never
727
721
 
728
722
  export type MakeHandlers<Make, _Handlers extends Record<string, any>> = /*Make extends
729
723
  { readonly effect: (_: any) => Effect.Effect<{ [K in keyof Handlers]: AnyHandler<Handlers[K]> }, any, any> }
730
724
  ? Effect.Success<ReturnType<Make["effect"]>>
731
725
  : */
732
- Make extends { readonly effect: (_: any) => Generator<any, infer S, any> } ? S
726
+ Make extends { readonly effect: (_: any) => Generator<any, infer S> } ? S
733
727
  : never
734
728
 
735
729
  export type MakeDepsE<Make> = Layer.Error<MakeDeps<Make>>
package/src/test.ts CHANGED
@@ -16,7 +16,7 @@ export const createRandomInstance = <A extends object, I, R>(s: S.Codec<A, I, R>
16
16
  /**
17
17
  * Like `createRandomInstance`, but takes encoded values rather than decoded ones.
18
18
  */
19
- export const createRandomInstanceI = <A extends object, I>(s: S.Codec<A, I, never> & { fields: S.Struct.Fields }) => {
19
+ export const createRandomInstanceI = <A extends object, I>(s: S.Codec<A, I> & { fields: S.Struct.Fields }) => {
20
20
  const gen = generate(S.toArbitrary(s))
21
21
  const encode = S.encodeSync(s)
22
22
  const decode = S.decodeSync(s)
@@ -1,55 +0,0 @@
1
- import { Context, Effect, type Fiber, Layer, Option, S } from "effect-app";
2
- import { Operation, OperationId, type OperationProgress } from "effect-app/Operations";
3
- import { NonEmptyString2k } from "effect-app/Schema";
4
- import * as Scope from "effect/Scope";
5
- import { OperationsRepo } from "./OperationsRepo.js";
6
- import { RequestFiberSet } from "./RequestFiberSet.js";
7
- declare const Operations_base: Context.OpaqueClass<Operations, "effect-app/Operations", {
8
- cleanup: Effect.Effect<void[], never, never>;
9
- register: (title: NonEmptyString2k) => Effect.Effect<S.StringId, never, Scope.Scope>;
10
- fork: <R, R2, E, E2, A, A2>(self: (id: OperationId) => Effect.Effect<A, E, R>, fnc: (id: OperationId) => Effect.Effect<A2, E2, R2>, title: NonEmptyString2k) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope> | Exclude<R2, Scope.Scope>>;
11
- fork2: {
12
- (title: NonEmptyString2k): <R, E, A>(self: (opId: OperationId) => Effect.Effect<A, E, R>) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
13
- <R, E, A>(self: (opId: OperationId) => Effect.Effect<A, E, R>, title: NonEmptyString2k): Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
14
- };
15
- forkOperation: {
16
- (title: NonEmptyString2k): <R, E, A>(self: Effect.Effect<A, E, R>) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
17
- <R, E, A>(self: Effect.Effect<A, E, R>, title: NonEmptyString2k): Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
18
- };
19
- forkOperationFunction: <R, E, A, Inp>(fnc: (inp: Inp) => Effect.Effect<A, E, R>, title: NonEmptyString2k) => (inp: Inp) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
20
- all: Effect.Effect<Operation[], never, never>;
21
- find: (id: OperationId) => Effect.Effect<Option.Option<Operation>, never, never>;
22
- update: (id: S.StringId, progress: OperationProgress) => Effect.Effect<void, never, never>;
23
- }> & {
24
- readonly make: Effect.Effect<{
25
- cleanup: Effect.Effect<void[], never, never>;
26
- register: (title: NonEmptyString2k) => Effect.Effect<S.StringId, never, Scope.Scope>;
27
- fork: <R, R2, E, E2, A, A2>(self: (id: OperationId) => Effect.Effect<A, E, R>, fnc: (id: OperationId) => Effect.Effect<A2, E2, R2>, title: NonEmptyString2k) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope> | Exclude<R2, Scope.Scope>>;
28
- fork2: {
29
- (title: NonEmptyString2k): <R, E, A>(self: (opId: OperationId) => Effect.Effect<A, E, R>) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
30
- <R, E, A>(self: (opId: OperationId) => Effect.Effect<A, E, R>, title: NonEmptyString2k): Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
31
- };
32
- forkOperation: {
33
- (title: NonEmptyString2k): <R, E, A>(self: Effect.Effect<A, E, R>) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
34
- <R, E, A>(self: Effect.Effect<A, E, R>, title: NonEmptyString2k): Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
35
- };
36
- forkOperationFunction: <R, E, A, Inp>(fnc: (inp: Inp) => Effect.Effect<A, E, R>, title: NonEmptyString2k) => (inp: Inp) => Effect.Effect<RunningOperation<A, E>, never, Exclude<R, Scope.Scope>>;
37
- all: Effect.Effect<Operation[], never, never>;
38
- find: (id: OperationId) => Effect.Effect<Option.Option<Operation>, never, never>;
39
- update: (id: S.StringId, progress: OperationProgress) => Effect.Effect<void, never, never>;
40
- }, never, OperationsRepo | RequestFiberSet>;
41
- };
42
- export declare class Operations extends Operations_base {
43
- private static readonly CleanupLive;
44
- static readonly Live: Layer.Layer<Operations, never, OperationsRepo>;
45
- static readonly forkOperation: (title: NonEmptyString2k) => <R, E, A>(self: Effect.Effect<A, E, R>) => Effect.Effect<RunningOperation<A, E>, never, Operations | Exclude<R, Scope.Scope>>;
46
- static readonly forkOperationFunction: <R, E, A, Inp>(fnc: (inp: Inp) => Effect.Effect<A, E, R>, title: NonEmptyString2k) => (inp: Inp) => Effect.Effect<RunningOperation<A, E>, never, Operations | Exclude<R, Scope.Scope>>;
47
- static readonly fork: <R, R2, E, E2, A, A2>(self: (id: OperationId) => Effect.Effect<A, E, R>, fnc: (id: OperationId) => Effect.Effect<A2, E2, R2>, title: NonEmptyString2k) => Effect.Effect<RunningOperation<A, E>, never, Operations | Exclude<R, Scope.Scope> | Exclude<R2, Scope.Scope>>;
48
- static readonly fork2: (title: NonEmptyString2k) => <R, E, A>(self: (opId: OperationId) => Effect.Effect<A, E, R>) => Effect.Effect<RunningOperation<A, E>, never, Operations | Exclude<R, Scope.Scope>>;
49
- }
50
- export interface RunningOperation<A, E> {
51
- id: OperationId;
52
- fiber: Fiber.Fiber<A, E>;
53
- }
54
- export {};
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL09wZXJhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFTLE9BQU8sRUFBa0IsTUFBTSxFQUFRLEtBQUssS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFZLE1BQU0sWUFBWSxDQUFBO0FBR2pILE9BQU8sRUFBRSxTQUFTLEVBQW9CLFdBQVcsRUFBRSxLQUFLLGlCQUFpQixFQUFvQixNQUFNLHVCQUF1QixDQUFBO0FBQzFILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3BELE9BQU8sS0FBSyxLQUFLLE1BQU0sY0FBYyxDQUFBO0FBSXJDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUVwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7OztzQkFvQzNCLGdCQUFnQjtXQXlCM0IsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLFFBQ3pCLENBQUMsRUFBRSxFQUFFLFdBQVcsS0FBSyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQzVDLENBQUMsRUFBRSxFQUFFLFdBQVcsS0FBSyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLFNBQzVDLGdCQUFnQixLQUN0QixNQUFNLENBQUMsTUFBTSxDQUNkLGdCQUFnQixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDdEIsS0FBSyxFQUNMLE9BQU8sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUNuRDs7Z0JBZ0JTLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxFQUFF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
@@ -1 +0,0 @@
1
- {"version":3,"file":"Operations.d.ts","sourceRoot":"","sources":["../src/Operations.ts"],"names":[],"mappings":"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"}
@@ -1,99 +0,0 @@
1
- import { reportError } from "@effect-app/infra/errorReporter";
2
- import { subHours } from "date-fns";
3
- import { Cause, Context, copy, Duration, Effect, Exit, Layer, Option, S, Schedule } from "effect-app";
4
- import { annotateLogscoped } from "effect-app/Effect";
5
- import { dual, pipe } from "effect-app/Function";
6
- import { Operation, OperationFailure, OperationId, OperationSuccess } from "effect-app/Operations";
7
- import { NonEmptyString2k } from "effect-app/Schema";
8
- import * as Scope from "effect/Scope";
9
- import { setupRequestContextFromCurrent } from "./api/setupRequest.js";
10
- import { MainFiberSet } from "./MainFiberSet.js";
11
- import { where } from "./Model/query.js";
12
- import { OperationsRepo } from "./OperationsRepo.js";
13
- import { batch } from "./rateLimit.js";
14
- import { RequestFiberSet } from "./RequestFiberSet.js";
15
- const reportAppError = reportError("Operations.Cleanup");
16
- const make = Effect.gen(function* () {
17
- const repo = yield* OperationsRepo;
18
- const reqFiberSet = yield* RequestFiberSet;
19
- const makeOp = Effect.sync(() => OperationId.make());
20
- const addOp = Effect.fnUntraced(function* (id, title) {
21
- return yield* repo.save(Operation.make({ id, title })).pipe(Effect.orDie);
22
- });
23
- const finishOp = Effect.fnUntraced(function* (id, exit) {
24
- const op = yield* repo.get(id).pipe(Effect.orDie);
25
- const result = Exit.isSuccess(exit)
26
- ? OperationSuccess.make({})
27
- : OperationFailure.make({
28
- message: Cause.hasInterruptsOnly(exit.cause)
29
- ? NonEmptyString2k("Interrupted")
30
- : Cause.hasDies(exit.cause)
31
- ? NonEmptyString2k("Unknown error")
32
- : Cause
33
- .findErrorOption(exit.cause)
34
- .pipe(Option.flatMap((_) => typeof _ === "object" && _ !== null && "message" in _ && S.is(NonEmptyString2k)(_.message)
35
- ? Option.some(_.message)
36
- : Option.none()), Option.getOrNull)
37
- });
38
- return yield* repo.save(copy(op, { updatedAt: new Date(), result })).pipe(Effect.orDie);
39
- });
40
- const register = (title) => Effect.tap(makeOp, (id) => Effect.andThen(annotateLogscoped("operationId", id), Effect.acquireRelease(addOp(id, title), (_, exit) => finishOp(id, exit))));
41
- const cleanup = Effect
42
- .gen(function* () {
43
- const before = subHours(new Date(), 1);
44
- const ops = yield* repo.query(where("updatedAt", "lt", before.toISOString()));
45
- return yield* pipe(ops, batch(100, Effect.succeed, (items) => repo.removeAndPublish(items)));
46
- })
47
- .pipe(setupRequestContextFromCurrent("Operations.cleanup"));
48
- const findOp = (id) => repo.find(id);
49
- const update = Effect.fnUntraced(function* (id, progress) {
50
- const op = yield* repo.get(id).pipe(Effect.orDie);
51
- return yield* repo.save(copy(op, { updatedAt: new Date(), progress })).pipe(Effect.orDie);
52
- });
53
- function fork(self, fnc, title) {
54
- return Effect.gen(function* () {
55
- const scope = yield* Scope.make();
56
- const id = yield* Scope.provide(register(title), scope);
57
- const fiber = yield* reqFiberSet.forkDaemonReportUnexpected(Scope.use(self(id).pipe(Effect.withSpan(title, {}, { captureStackTrace: false })), scope));
58
- yield* Scope.provide(Effect.forkScoped(Effect.interruptible(fnc(id))), scope);
59
- return { fiber, id };
60
- });
61
- }
62
- const fork2 = dual(2, Effect.fnUntraced(function* (self, title) {
63
- const scope = yield* Scope.make();
64
- const id = yield* Scope.provide(register(title), scope);
65
- const fiber = yield* reqFiberSet.forkDaemonReportUnexpected(Scope.use(self(id).pipe(Effect.withSpan(title, {}, { captureStackTrace: false })), scope));
66
- return { fiber, id };
67
- }));
68
- const forkOperation = dual(2, Effect.fnUntraced(function* (self, title) {
69
- const scope = yield* Scope.make();
70
- const id = yield* Scope.provide(register(title), scope);
71
- const fiber = yield* reqFiberSet.forkDaemonReportUnexpected(Scope.use(self.pipe(Effect.withSpan(title, {}, { captureStackTrace: false })), scope));
72
- return { fiber, id };
73
- }));
74
- function forkOperationFunction(fnc, title) {
75
- return (inp) => forkOperation(fnc(inp), title);
76
- }
77
- return {
78
- cleanup,
79
- register,
80
- fork,
81
- fork2,
82
- forkOperation,
83
- forkOperationFunction,
84
- all: repo.all,
85
- find: findOp,
86
- update
87
- };
88
- });
89
- export class Operations extends Context.Opaque()("effect-app/Operations", { make }) {
90
- static CleanupLive = this
91
- .use((_) => _.cleanup.pipe(Effect.exit, Effect.flatMap((exit) => Exit.isSuccess(exit) ? Effect.void : reportAppError(exit.cause)), Effect.schedule(Schedule.fixed(Duration.minutes(20))), Effect.map((_) => _), MainFiberSet.run))
92
- .pipe(Layer.effectDiscard, Layer.provide(MainFiberSet.Live));
93
- static Live = this.CleanupLive.pipe(Layer.provideMerge(this.toLayer(this.make)), Layer.provide(RequestFiberSet.Live));
94
- static forkOperation = (title) => (self) => this.use((_) => _.forkOperation(self, title));
95
- static forkOperationFunction = (fnc, title) => (inp) => this.use((_) => _.forkOperationFunction(fnc, title)(inp));
96
- static fork = (self, fnc, title) => this.use((_) => _.fork(self, fnc, title));
97
- static fork2 = (title) => (self) => this.use((_) => _.fork2(self, title));
98
- }
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9PcGVyYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ25DLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBYyxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDakgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDckQsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBMEIsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUMxSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNwRCxPQUFPLEtBQUssS0FBSyxNQUFNLGNBQWMsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDaEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQ3hDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDdEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRXRELE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0FBRXhELE1BQU0s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
@@ -1,23 +0,0 @@
1
- import { Context, Effect } from "effect-app";
2
- import { Operation } from "effect-app/Operations";
3
- declare const OperationsRepo_base: Context.ServiceClass<OperationsRepo, "OperationRepo", import("./Model/Repository.js").ExtendedRepository<Operation, {
4
- readonly createdAt: string;
5
- readonly id: string;
6
- readonly progress?: import("effect-app/Operations").OperationProgress.Encoded | undefined;
7
- readonly result?: import("effect-app/Operations").OperationSuccess.Encoded | import("effect-app/Operations").OperationFailure.Encoded | undefined;
8
- readonly title: string;
9
- readonly updatedAt: string | null;
10
- }, never, "Operation", "id", never, never, never>> & {
11
- readonly make: Effect.Effect<import("./Model/Repository.js").ExtendedRepository<Operation, {
12
- readonly createdAt: string;
13
- readonly id: string;
14
- readonly progress?: import("effect-app/Operations").OperationProgress.Encoded | undefined;
15
- readonly result?: import("effect-app/Operations").OperationSuccess.Encoded | import("effect-app/Operations").OperationFailure.Encoded | undefined;
16
- readonly title: string;
17
- readonly updatedAt: string | null;
18
- }, never, "Operation", "id", never, never, never>, never, import("./Model.js").RepositoryRegistry | import("./Store.js").StoreMaker>;
19
- };
20
- export declare class OperationsRepo extends OperationsRepo_base {
21
- }
22
- export {};
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9uc1JlcG8uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9PcGVyYXRpb25zUmVwby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdqRCxxQkFBYSxjQUFlLFNBQVEsbUJBV25DO0NBQUcifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"OperationsRepo.d.ts","sourceRoot":"","sources":["../src/OperationsRepo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;;;;;;;;;;;;;;;;;;AAGjD,qBAAa,cAAe,SAAQ,mBAWnC;CAAG"}
@@ -1,14 +0,0 @@
1
- import { Context, Effect } from "effect-app";
2
- import { Operation } from "effect-app/Operations";
3
- import { makeRepo } from "./Model.js";
4
- export class OperationsRepo extends Context.Service()("OperationRepo", {
5
- make: Effect.gen(function* () {
6
- return yield* makeRepo("Operation", Operation, {
7
- config: {
8
- allowNamespace: () => true
9
- }
10
- });
11
- })
12
- }) {
13
- }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9uc1JlcG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvT3BlcmF0aW9uc1JlcG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFckMsTUFBTSxPQUFPLGNBQWUsU0FBUSxPQUFPLENBQUMsT0FBTyxFQUFrQixDQUNuRSxlQUFlLEVBQ2Y7SUFDRSxJQUFJLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDeEIsT0FBTyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRTtZQUM3QyxNQUFNLEVBQUU7Z0JBQ04sY0FBYyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUk7YUFDM0I7U0FDRixDQUFDLENBQUE7SUFDSixDQUFDLENBQUM7Q0FDSCxDQUNGO0NBQUcifQ==
package/eslint.config.mjs DELETED
@@ -1,24 +0,0 @@
1
- import { augmentedConfig } from "@effect-app/eslint-shared-config/eslint.base.config"
2
- import path from "node:path"
3
- import { fileURLToPath } from "node:url"
4
-
5
- const __filename = fileURLToPath(import.meta.url)
6
- const __dirname = path.dirname(__filename)
7
-
8
- export default [
9
- ...augmentedConfig(__dirname, false, undefined, true),
10
- {
11
- ignores: [
12
- "**/*.js",
13
- "**/*.jsx",
14
- "**/*.d.ts",
15
- "node_modules/"
16
- ]
17
- },
18
- {
19
- rules: {
20
- "@typescript-eslint/no-empty-interface": "off",
21
- "@typescript-eslint/no-explicit-any": "warn"
22
- }
23
- }
24
- ]