effect-app 2.50.2 → 2.52.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @effect-app/prelude
2
2
 
3
+ ## 2.52.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 99cf15f: unify middleware api
8
+
9
+ ## 2.51.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 54dd59a: cleanup NES
14
+
3
15
  ## 2.50.2
4
16
 
5
17
  ### Patch Changes
@@ -1,3 +1,35 @@
1
- export * from "./NonEmptySetBase.js";
2
- export * as $ from "./NonEmptySetAspects.js";
1
+ import { type Equivalence, Option, type Order } from "effect";
2
+ import { type Set } from "./Set.js";
3
+ export interface NonEmptyBrand {
4
+ readonly NonEmpty: unique symbol;
5
+ }
6
+ export type NonEmptySet<A> = Set<A> & NonEmptyBrand;
7
+ declare class Wrapper<A> {
8
+ wrapped(ord: Order.Order<A>, eq?: Equivalence.Equivalence<A>): {
9
+ insert: (a: A) => (set: NonEmptySet<A>) => NonEmptySet<A>;
10
+ insert_: (set: NonEmptySet<A>, a: A) => NonEmptySet<A>;
11
+ remove: (a: A) => (set: Set<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
12
+ remove_: (set: Set<A>, a: A) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
13
+ reduce: <B>(b: B, f: (b: B, a: A) => B) => (fa: Set<A>) => B;
14
+ reduce_: <B>(fa: Set<A>, b: B, f: (b: B, a: A) => B) => B;
15
+ replace: (a: A) => (set: NonEmptySet<A>) => NonEmptySet<A>;
16
+ replace_: (set: NonEmptySet<A>, a: A) => NonEmptySet<A>;
17
+ toArray: (s: NonEmptySet<A>) => readonly [A, ...A[]];
18
+ fromArray: (as: readonly A[]) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
19
+ fromNonEmptyArray: (arr: readonly [A, ...A[]]) => NonEmptySet<A>;
20
+ from: (it: Iterable<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
21
+ of: (a: A) => NonEmptySet<A>;
22
+ concat_: (set: NonEmptySet<A>, it: Iterable<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
23
+ concat: (it: Iterable<A>) => (set: NonEmptySet<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
24
+ map: <A_1>(f: (x: A_1) => A_1) => (set: NonEmptySet<A_1>) => NonEmptySet<A_1>;
25
+ map_: <A_1>(set: NonEmptySet<A_1>, f: (x: A_1) => A_1) => NonEmptySet<A_1>;
26
+ filterMap: (f: (a: A) => Option.Option<A>) => (fa: Set<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
27
+ filterMap_: <A_1>(fa: Set<A_1>, f: (a: A_1) => Option.Option<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
28
+ };
29
+ }
30
+ export interface NonEmptySetSchemaExtensions<A> extends ReturnType<Wrapper<A>["wrapped"]> {
31
+ }
32
+ export declare const make: <A>(ord: Order.Order<A>, eq?: Equivalence.Equivalence<A>) => NonEmptySetSchemaExtensions<A>;
33
+ export declare function fromSet<A>(set: Set<A>): Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
34
+ export * from "./Set.js";
3
35
  //# sourceMappingURL=NonEmptySet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NonEmptySet.d.ts","sourceRoot":"","sources":["../src/NonEmptySet.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AAEpC,OAAO,KAAK,CAAC,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"NonEmptySet.d.ts","sourceRoot":"","sources":["../src/NonEmptySet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAG7D,OAAO,EAAqK,KAAK,GAAG,EAA8B,MAAM,UAAU,CAAA;AAElO,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,MAAM,CAAA;CACjC;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAA;AA0DnD,cAAM,OAAO,CAAC,CAAC;IACb,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;;;;;;;4BAzBtC,mBAAmB;;;;;;;;sCAQT,mBAAmB;;;;;;CAoBpD;AAED,MAAM,WAAW,2BAA2B,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CAAG;AAE5F,eAAO,MAAM,IAAI,EAAE,CAAC,CAAC,EACnB,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EACnB,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,KAC5B,2BAA2B,CAAC,CAAC,CAAS,CAAA;AAE3C,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,6DAMrC;AAGD,cAAc,UAAU,CAAA"}
@@ -1,3 +1,63 @@
1
- export * from "./NonEmptySetBase.js";
2
- export * as $ from "./NonEmptySetAspects.js";
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9uRW1wdHlTZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvTm9uRW1wdHlTZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQTtBQUVwQyxPQUFPLEtBQUssQ0FBQyxNQUFNLHlCQUF5QixDQUFBIn0=
1
+ import { Option } from "effect";
2
+ import { flow, pipe } from "./Function.js";
3
+ import { filter_, filterMap, filterMap_, fromArray as fromArrayOriginal, insert as insertOriginal, insert_ as insert_Original, map, map_, reduce, reduce_, remove, remove_, toArray as toArrayOriginal } from "./Set.js";
4
+ function make_(ord, eq_) {
5
+ const eq = eq_
6
+ ?? ((x, y) => ord(x, y) === 0);
7
+ const fromArray_ = fromArrayOriginal(eq);
8
+ const fromArray = flow(fromArray_, fromSet);
9
+ const fromNonEmptyArray = (arr) => fromArray_(arr);
10
+ const concat_ = (set, it) => fromArray([...set, ...it]);
11
+ const insert__ = insertOriginal(eq);
12
+ const insert = insert__;
13
+ const insert_ = insert_Original;
14
+ function replace_(set, a) {
15
+ return pipe(filter_(set, (x) => !eq(x, a)), insert__(a));
16
+ }
17
+ const toArray__ = toArrayOriginal(ord);
18
+ function toArray(s) {
19
+ return toArray__(s);
20
+ }
21
+ const remove__ = remove(eq);
22
+ const filterMap__ = filterMap(eq);
23
+ return {
24
+ insert,
25
+ insert_,
26
+ remove: (a) => flow(remove__(a), fromSet),
27
+ remove_: flow(remove_(eq), fromSet),
28
+ reduce: reduce(ord),
29
+ reduce_: reduce_(ord),
30
+ replace: (a) => (set) => replace_(set, a),
31
+ replace_,
32
+ toArray,
33
+ fromArray,
34
+ fromNonEmptyArray,
35
+ from: (it) => fromArray([...it]),
36
+ of: (a) => new Set([a]),
37
+ concat_,
38
+ concat: (it) => (set) => concat_(set, it),
39
+ // A and B the same, useful when editing elements.
40
+ map: map(eq),
41
+ map_: map_(eq),
42
+ filterMap: (f) => flow(filterMap__((a) => f(a)), fromSet),
43
+ filterMap_: flow(filterMap_(eq), fromSet)
44
+ };
45
+ // TODO: extend
46
+ }
47
+ class Wrapper {
48
+ wrapped(ord, eq) {
49
+ return make_(ord, eq);
50
+ }
51
+ }
52
+ export const make = make_;
53
+ export function fromSet(set) {
54
+ if (set.size > 0) {
55
+ return Option.some(set);
56
+ }
57
+ else {
58
+ return Option.none();
59
+ }
60
+ }
61
+ // TODO
62
+ export * from "./Set.js";
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9uRW1wdHlTZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvTm9uRW1wdHlTZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixNQUFNLEVBQWMsTUFBTSxRQUFRLENBQUE7QUFFN0QsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsSUFBSSxpQkFBaUIsRUFBRSxNQUFNLElBQUksY0FBYyxFQUFFLE9BQU8sSUFBSSxlQUFlLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQVksT0FBTyxJQUFJLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQVFsTyxTQUFTLEtBQUssQ0FBSSxHQUFtQixFQUFFLEdBQWdDO0lBQ3JFLE1BQU0sRUFBRSxHQUFHLEdBQUc7V0FDVCxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtJQUVoQyxNQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUN4QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQzNDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxHQUE2QixFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFtQixDQUFBO0lBQzlGLE1BQU0sT0FBTyxHQUFHLENBQUMsR0FBbUIsRUFBRSxFQUFlLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUNwRixNQUFNLFFBQVEsR0FBRyxjQUFjLENBQUMsRUFBRSxDQUFDLENB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
@@ -1,4 +1,5 @@
1
- import { S } from "../internal/lib.js";
1
+ import { type Tag } from "../Context.js";
2
+ import { type Context, type NonEmptyReadonlyArray, S } from "../internal/lib.js";
2
3
  import { type Values } from "../utils.js";
3
4
  /**
4
5
  * Middleware is inactivate by default, the Key is optional in route context, and the service is optionally provided as Effect Context.
@@ -9,8 +10,19 @@ export type RPCContextMap<Service, E> = {
9
10
  error: E;
10
11
  contextActivation: true;
11
12
  };
13
+ export type ContextRepr = NonEmptyReadonlyArray<Context.Tag<any, any>>;
14
+ export declare namespace ContextRepr {
15
+ type Identifier<A> = A extends ContextRepr ? Tag.Identifier<A[number]> : never;
16
+ type Service<A> = A extends ContextRepr ? Tag.Service<A[number]> : never;
17
+ }
18
+ export type AnyService = Context.Tag<any, any> | ContextRepr;
19
+ export declare namespace AnyService {
20
+ type Bla<A> = A extends ContextRepr ? Context.Context<ContextRepr.Identifier<A>> : A extends Context.Tag<any, any> ? Tag.Service<A> : never;
21
+ type Identifier<A> = A extends ContextRepr ? ContextRepr.Identifier<A> : A extends Context.Tag<any, any> ? Tag.Identifier<A> : never;
22
+ type Service<A> = A extends ContextRepr ? ContextRepr.Service<A> : A extends Context.Tag<any, any> ? Tag.Service<A> : never;
23
+ }
12
24
  export declare namespace RPCContextMap {
13
- type Custom<Service, E, Custom> = {
25
+ type Custom<Service extends AnyService, E, Custom> = {
14
26
  service: Service;
15
27
  error: E;
16
28
  contextActivation: Custom;
@@ -19,21 +31,21 @@ export declare namespace RPCContextMap {
19
31
  * Middleware is active by default, and provides the Service at Key in route context, and the Service is provided as Effect Context.
20
32
  * Unless explicitly omitted.
21
33
  */
22
- type Inverted<Service, E> = {
34
+ type Inverted<Service extends AnyService, E> = {
23
35
  service: Service;
24
36
  error: E;
25
37
  contextActivation: false;
26
38
  };
27
39
  type Any = {
28
- service: any;
40
+ service: AnyService;
29
41
  error: S.Schema.All;
30
42
  contextActivation: any;
31
43
  };
32
44
  }
33
45
  export type GetEffectContext<RequestContextMap extends Record<string, RPCContextMap.Any>, T> = Values<{
34
- [key in keyof RequestContextMap as RequestContextMap[key]["contextActivation"] extends true ? never : key extends keyof T ? T[key] extends true ? never : key : key]: RequestContextMap[key]["service"];
46
+ [key in keyof RequestContextMap as RequestContextMap[key]["contextActivation"] extends true ? never : key extends keyof T ? T[key] extends true ? never : key : key]: AnyService.Identifier<RequestContextMap[key]["service"]>;
35
47
  } & {
36
- [key in keyof RequestContextMap as RequestContextMap[key]["contextActivation"] extends false ? never : key extends keyof T ? T[key] extends true ? key : never : never]: RequestContextMap[key]["service"];
48
+ [key in keyof RequestContextMap as RequestContextMap[key]["contextActivation"] extends false ? never : key extends keyof T ? T[key] extends true ? key : never : never]: AnyService.Identifier<RequestContextMap[key]["service"]>;
37
49
  }>;
38
50
  export type GetEffectError<RequestContextMap extends Record<string, RPCContextMap.Any>, T> = Values<{
39
51
  [key in keyof RequestContextMap as RequestContextMap[key]["contextActivation"] extends true ? never : key extends keyof T ? T[key] extends true ? never : key : key]: RequestContextMap[key]["error"];
@@ -1 +1 @@
1
- {"version":3,"file":"req.d.ts","sourceRoot":"","sources":["../../src/client/req.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"req.d.ts","sourceRoot":"","sources":["../../src/client/req.ts"],"names":[],"mappings":"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"}
@@ -35,4 +35,4 @@ export const makeRpcClient = (errors, generalErrors) => {
35
35
  TaggedRequest
36
36
  };
37
37
  };
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9yZXEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNERBQTREO0FBQzVELHdEQUF3RDtBQUN4RCx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBa0Z0QyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQU0sRUFBRSxDQUFhLEVBQUUsRUFBRSxDQUN0QyxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0FBa0IzRzs7R0FFRztBQUNILE1BQU0sU0FBUyxHQUFtQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0FBRTVHLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUszQixNQUF5RSxFQUN6RSxhQUE2QixFQUM3QixFQUFFO0lBT0YsU0FBUyxhQUFhO1FBdUVwQiwrREFBK0Q7UUFDL0QsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUMxQyxPQUFPLENBQUMsQ0FDTixHQUFRLEVBQ1IsTUFBYyxFQUNkLE1BQVUsRUFDVixFQUFFO1lBQ0YsMkVBQTJFO1lBQzNFLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQVEsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3ZDLE9BQU8sRUFBRSxNQUFNO2dCQUNmLDhDQUE4QztnQkFDOUMsT0FBTyxFQUFFLEtBQUssQ0FDWixNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFDcEcsQ0FBQyxHQUFHLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQ2pEO2dCQUNELE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTztvQkFDdEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQzt3QkFDMUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU87d0JBQ3RFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7b0JBQzVCLENBQUMsQ0FBQyxTQUFTO2FBQ2QsQ0FBQyxDQUFBO1lBQ0YsT0FBTyxLQUFNLFNBQVMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBUztnQkFDMUQsWUFBWSxPQUFZLEVBQUUsb0JBQXlCLElBQUk7b0JBQ3JELDZEQUE2RDtvQkFDN0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxDQUFBO2dCQUNuQyxDQUFDO2FBQ0YsQ0FBQTtRQUNILENBQUMsQ0FBUSxDQUFBO0lBQ1gsQ0FBQztJQUVELE9BQU87UUFDTCxhQUFhO0tBQ2QsQ0FBQTtBQUNILENBQUMsQ0FBQSJ9
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9yZXEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNERBQTREO0FBQzVELHdEQUF3RDtBQUN4RCx1REFBdUQ7QUFHdkQsT0FBTyxFQUE0QyxDQUFDLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQW9HaEYsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFNLEVBQUUsQ0FBYSxFQUFFLEVBQUUsQ0FDdEMsQ0FBQyxLQUFLLFNBQVMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtBQWtCM0c7O0dBRUc7QUFDSCxNQUFNLFNBQVMsR0FBbUIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQTtBQUU1RyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FLM0IsTUFBeUUsRUFDekUsYUFBNkIsRUFDN0IsRUFBRTtJQU9GLFNBQVMsYUFBYTtRQXVFcEIsK0RBQStEO1FBQy9ELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDMUMsT0FBTyxDQUFDLENBQ04sR0FBUSxFQUNSLE1BQWMsRUFDZCxNQUFVLEVBQ1YsRUFBRTtZQUNGLDJFQUEyRTtZQUMzRSxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFRLENBQUMsR0FBRyxFQUFFO2dCQUN2QyxPQUFPLEVBQUUsTUFBTTtnQkFDZiw4Q0FBOEM7Z0JBQzlDLE9BQU8sRUFBRSxLQUFLLENBQ1osTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQ3BHLENBQUMsR0FBRyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUNqRDtnQkFDRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU87b0JBQ3RCLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7d0JBQzFCLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPO3dCQUN0RSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO29CQUM1QixDQUFDLENBQUMsU0FBUzthQUNkLENBQUMsQ0FBQTtZQUNGLE9BQU8sS0FBTSxTQUFTLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQVM7Z0JBQzFELFlBQVksT0FBWSxFQUFFLG9CQUF5QixJQUFJO29CQUNyRCw2REFBNkQ7b0JBQzdELEtBQUssQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsQ0FBQTtnQkFDbkMsQ0FBQzthQUNGLENBQUE7UUFDSCxDQUFDLENBQVEsQ0FBQTtJQUNYLENBQUM7SUFFRCxPQUFPO1FBQ0wsYUFBYTtLQUNkLENBQUE7QUFDSCxDQUFDLENBQUEifQ==
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "effect-app",
3
- "version": "2.50.2",
3
+ "version": "2.52.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
7
- "@effect/rpc": "^0.68.1",
7
+ "@effect/rpc": "^0.68.2",
8
8
  "@effect/rpc-http": "^0.52.4",
9
9
  "@tsconfig/strictest": "^2.0.5",
10
10
  "date-fns": "^4.1.0",
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "peerDependencies": {
29
29
  "@effect/platform": "^0.90.0",
30
- "effect": "^3.17.4"
30
+ "effect": "^3.17.5"
31
31
  },
32
32
  "typesVersions": {
33
33
  "*": {
@@ -73,14 +73,6 @@
73
73
  "types": "./dist/NonEmptySet.d.ts",
74
74
  "default": "./dist/NonEmptySet.js"
75
75
  },
76
- "./NonEmptySetAspects": {
77
- "types": "./dist/NonEmptySetAspects.d.ts",
78
- "default": "./dist/NonEmptySetAspects.js"
79
- },
80
- "./NonEmptySetBase": {
81
- "types": "./dist/NonEmptySetBase.d.ts",
82
- "default": "./dist/NonEmptySetBase.js"
83
- },
84
76
  "./Operations": {
85
77
  "types": "./dist/Operations.d.ts",
86
78
  "default": "./dist/Operations.js"
@@ -1,3 +1,90 @@
1
- export * from "./NonEmptySetBase.js"
1
+ import { type Equivalence, Option, type Order } from "effect"
2
+ import type { NonEmptyReadonlyArray } from "effect/Array"
3
+ import { flow, pipe } from "./Function.js"
4
+ import { filter_, filterMap, filterMap_, fromArray as fromArrayOriginal, insert as insertOriginal, insert_ as insert_Original, map, map_, reduce, reduce_, remove, remove_, type Set, toArray as toArrayOriginal } from "./Set.js"
2
5
 
3
- export * as $ from "./NonEmptySetAspects.js"
6
+ export interface NonEmptyBrand {
7
+ readonly NonEmpty: unique symbol
8
+ }
9
+
10
+ export type NonEmptySet<A> = Set<A> & NonEmptyBrand
11
+
12
+ function make_<A>(ord: Order.Order<A>, eq_?: Equivalence.Equivalence<A>) {
13
+ const eq = eq_
14
+ ?? ((x, y) => ord(x, y) === 0)
15
+
16
+ const fromArray_ = fromArrayOriginal(eq)
17
+ const fromArray = flow(fromArray_, fromSet)
18
+ const fromNonEmptyArray = (arr: NonEmptyReadonlyArray<A>) => fromArray_(arr) as NonEmptySet<A>
19
+ const concat_ = (set: NonEmptySet<A>, it: Iterable<A>) => fromArray([...set, ...it])
20
+ const insert__ = insertOriginal(eq)
21
+ const insert: (a: A) => (set: NonEmptySet<A>) => NonEmptySet<A> = insert__ as any
22
+ const insert_: (set: NonEmptySet<A>, a: A) => NonEmptySet<A> = insert_Original as any
23
+
24
+ function replace_(set: NonEmptySet<A>, a: A) {
25
+ return (pipe(filter_(set, (x) => !eq(x, a)), insert__(a)) as NonEmptySet<A>)
26
+ }
27
+
28
+ const toArray__ = toArrayOriginal(ord)
29
+
30
+ function toArray(s: NonEmptySet<A>) {
31
+ return toArray__(s) as NonEmptyReadonlyArray<A>
32
+ }
33
+
34
+ const remove__ = remove(eq)
35
+ const filterMap__ = filterMap(eq)
36
+
37
+ return {
38
+ insert,
39
+ insert_,
40
+ remove: (a: A) => flow(remove__(a), fromSet),
41
+ remove_: flow(remove_(eq), fromSet),
42
+ reduce: reduce(ord),
43
+ reduce_: reduce_(ord),
44
+ replace: (a: A) => (set: NonEmptySet<A>) => replace_(set, a),
45
+ replace_,
46
+ toArray,
47
+ fromArray,
48
+ fromNonEmptyArray,
49
+ from: (it: Iterable<A>) => fromArray([...it]),
50
+ of: (a: A) => new Set<A>([a]) as unknown as NonEmptySet<A>,
51
+ concat_,
52
+ concat: (it: Iterable<A>) => (set: NonEmptySet<A>) => concat_(set, it),
53
+
54
+ // A and B the same, useful when editing elements.
55
+ map: map(eq) as unknown as <A>(
56
+ f: (x: A) => A
57
+ ) => (set: NonEmptySet<A>) => NonEmptySet<A>,
58
+ map_: map_(eq) as unknown as <A>(
59
+ set: NonEmptySet<A>,
60
+ f: (x: A) => A
61
+ ) => NonEmptySet<A>,
62
+ filterMap: (f: (a: A) => Option.Option<A>) => flow(filterMap__<A>((a) => f(a)), fromSet),
63
+ filterMap_: flow(filterMap_(eq), fromSet)
64
+ }
65
+ // TODO: extend
66
+ }
67
+
68
+ class Wrapper<A> {
69
+ wrapped(ord: Order.Order<A>, eq?: Equivalence.Equivalence<A>) {
70
+ return make_(ord, eq)
71
+ }
72
+ }
73
+
74
+ export interface NonEmptySetSchemaExtensions<A> extends ReturnType<Wrapper<A>["wrapped"]> {}
75
+
76
+ export const make: <A>(
77
+ ord: Order.Order<A>,
78
+ eq?: Equivalence.Equivalence<A>
79
+ ) => NonEmptySetSchemaExtensions<A> = make_
80
+
81
+ export function fromSet<A>(set: Set<A>) {
82
+ if (set.size > 0) {
83
+ return Option.some(set as NonEmptySet<A>)
84
+ } else {
85
+ return Option.none()
86
+ }
87
+ }
88
+
89
+ // TODO
90
+ export * from "./Set.js"
package/src/client/req.ts CHANGED
@@ -2,7 +2,8 @@
2
2
  /* eslint-disable @typescript-eslint/no-unsafe-return */
3
3
  /* eslint-disable @typescript-eslint/no-explicit-any */
4
4
 
5
- import { S } from "../internal/lib.js"
5
+ import { type Tag } from "../Context.js"
6
+ import { type Context, type NonEmptyReadonlyArray, S } from "../internal/lib.js"
6
7
  import { type Values } from "../utils.js"
7
8
 
8
9
  /**
@@ -15,8 +16,26 @@ export type RPCContextMap<Service, E> = {
15
16
  contextActivation: true
16
17
  }
17
18
 
19
+ export type ContextRepr = NonEmptyReadonlyArray<Context.Tag<any, any>>
20
+ export namespace ContextRepr {
21
+ export type Identifier<A> = A extends ContextRepr ? Tag.Identifier<A[number]> : never
22
+ export type Service<A> = A extends ContextRepr ? Tag.Service<A[number]> : never
23
+ }
24
+ export type AnyService = Context.Tag<any, any> | ContextRepr
25
+ export namespace AnyService {
26
+ export type Bla<A> = A extends ContextRepr ? Context.Context<ContextRepr.Identifier<A>>
27
+ : A extends Context.Tag<any, any> ? Tag.Service<A>
28
+ : never
29
+ export type Identifier<A> = A extends ContextRepr ? ContextRepr.Identifier<A>
30
+ : A extends Context.Tag<any, any> ? Tag.Identifier<A>
31
+ : never
32
+ export type Service<A> = A extends ContextRepr ? ContextRepr.Service<A>
33
+ : A extends Context.Tag<any, any> ? Tag.Service<A>
34
+ : never
35
+ }
36
+
18
37
  export declare namespace RPCContextMap {
19
- export type Custom<Service, E, Custom> = {
38
+ export type Custom<Service extends AnyService, E, Custom> = {
20
39
  service: Service
21
40
  error: E
22
41
  contextActivation: Custom
@@ -26,14 +45,14 @@ export declare namespace RPCContextMap {
26
45
  * Middleware is active by default, and provides the Service at Key in route context, and the Service is provided as Effect Context.
27
46
  * Unless explicitly omitted.
28
47
  */
29
- export type Inverted<Service, E> = {
48
+ export type Inverted<Service extends AnyService, E> = {
30
49
  service: Service
31
50
  error: E
32
51
  contextActivation: false
33
52
  }
34
53
 
35
54
  export type Any = {
36
- service: any
55
+ service: AnyService
37
56
  error: S.Schema.All
38
57
  contextActivation: any
39
58
  }
@@ -47,7 +66,7 @@ export type GetEffectContext<RequestContextMap extends Record<string, RPCContext
47
66
  : key extends keyof T ? T[key] extends true ? never : key
48
67
  : key
49
68
  ]: // TODO: or as an Optional available?
50
- RequestContextMap[key]["service"]
69
+ AnyService.Identifier<RequestContextMap[key]["service"]>
51
70
  }
52
71
  // normal: contextActivation is true => add if explicitly set to true
53
72
  & {
@@ -56,7 +75,7 @@ export type GetEffectContext<RequestContextMap extends Record<string, RPCContext
56
75
  : key extends keyof T ? T[key] extends true ? key : never
57
76
  : never
58
77
  ]: // TODO: or as an Optional available?
59
- RequestContextMap[key]["service"]
78
+ AnyService.Identifier<RequestContextMap[key]["service"]>
60
79
  }
61
80
  >
62
81
 
@@ -1,2 +0,0 @@
1
- export * from "./NonEmptySetBase.js";
2
- //# sourceMappingURL=NonEmptySetAspects.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NonEmptySetAspects.d.ts","sourceRoot":"","sources":["../src/NonEmptySetAspects.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from "./NonEmptySetBase.js";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9uRW1wdHlTZXRBc3BlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL05vbkVtcHR5U2V0QXNwZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFBIn0=
@@ -1,35 +0,0 @@
1
- import { type Equivalence, Option, type Order } from "effect";
2
- import { type Set } from "./Set.js";
3
- export interface NonEmptyBrand {
4
- readonly NonEmpty: unique symbol;
5
- }
6
- export type NonEmptySet<A> = Set<A> & NonEmptyBrand;
7
- declare class Wrapper<A> {
8
- wrapped(ord: Order.Order<A>, eq?: Equivalence.Equivalence<A>): {
9
- insert: (a: A) => (set: NonEmptySet<A>) => NonEmptySet<A>;
10
- insert_: (set: NonEmptySet<A>, a: A) => NonEmptySet<A>;
11
- remove: (a: A) => (set: Set<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
12
- remove_: (set: Set<A>, a: A) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
13
- reduce: <B>(b: B, f: (b: B, a: A) => B) => (fa: Set<A>) => B;
14
- reduce_: <B>(fa: Set<A>, b: B, f: (b: B, a: A) => B) => B;
15
- replace: (a: A) => (set: NonEmptySet<A>) => NonEmptySet<A>;
16
- replace_: (set: NonEmptySet<A>, a: A) => NonEmptySet<A>;
17
- toArray: (s: NonEmptySet<A>) => readonly [A, ...A[]];
18
- fromArray: (as: readonly A[]) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
19
- fromNonEmptyArray: (arr: readonly [A, ...A[]]) => NonEmptySet<A>;
20
- from: (it: Iterable<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
21
- of: (a: A) => NonEmptySet<A>;
22
- concat_: (set: NonEmptySet<A>, it: Iterable<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
23
- concat: (it: Iterable<A>) => (set: NonEmptySet<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
24
- map: <A_1>(f: (x: A_1) => A_1) => (set: NonEmptySet<A_1>) => NonEmptySet<A_1>;
25
- map_: <A_1>(set: NonEmptySet<A_1>, f: (x: A_1) => A_1) => NonEmptySet<A_1>;
26
- filterMap: (f: (a: A) => Option.Option<A>) => (fa: Set<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
27
- filterMap_: <A_1>(fa: Set<A_1>, f: (a: A_1) => Option.Option<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
28
- };
29
- }
30
- export interface NonEmptySetSchemaExtensions<A> extends ReturnType<Wrapper<A>["wrapped"]> {
31
- }
32
- export declare const make: <A>(ord: Order.Order<A>, eq?: Equivalence.Equivalence<A>) => NonEmptySetSchemaExtensions<A>;
33
- export declare function fromSet<A>(set: Set<A>): Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
34
- export * from "./Set.js";
35
- //# sourceMappingURL=NonEmptySetBase.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NonEmptySetBase.d.ts","sourceRoot":"","sources":["../src/NonEmptySetBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAG7D,OAAO,EAAqK,KAAK,GAAG,EAA8B,MAAM,UAAU,CAAA;AAElO,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,MAAM,CAAA;CACjC;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAA;AA0DnD,cAAM,OAAO,CAAC,CAAC;IACb,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;;;;;;;4BAzBtC,mBAAmB;;;;;;;;sCAQT,mBAAmB;;;;;;CAoBpD;AAED,MAAM,WAAW,2BAA2B,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CAAG;AAE5F,eAAO,MAAM,IAAI,EAAE,CAAC,CAAC,EACnB,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EACnB,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,KAC5B,2BAA2B,CAAC,CAAC,CAAS,CAAA;AAE3C,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,6DAMrC;AAGD,cAAc,UAAU,CAAA"}
@@ -1,63 +0,0 @@
1
- import { Option } from "effect";
2
- import { flow, pipe } from "./Function.js";
3
- import { filter_, filterMap, filterMap_, fromArray as fromArrayOriginal, insert as insertOriginal, insert_ as insert_Original, map, map_, reduce, reduce_, remove, remove_, toArray as toArrayOriginal } from "./Set.js";
4
- function make_(ord, eq_) {
5
- const eq = eq_
6
- ?? ((x, y) => ord(x, y) === 0);
7
- const fromArray_ = fromArrayOriginal(eq);
8
- const fromArray = flow(fromArray_, fromSet);
9
- const fromNonEmptyArray = (arr) => fromArray_(arr);
10
- const concat_ = (set, it) => fromArray([...set, ...it]);
11
- const insert__ = insertOriginal(eq);
12
- const insert = insert__;
13
- const insert_ = insert_Original;
14
- function replace_(set, a) {
15
- return pipe(filter_(set, (x) => !eq(x, a)), insert__(a));
16
- }
17
- const toArray__ = toArrayOriginal(ord);
18
- function toArray(s) {
19
- return toArray__(s);
20
- }
21
- const remove__ = remove(eq);
22
- const filterMap__ = filterMap(eq);
23
- return {
24
- insert,
25
- insert_,
26
- remove: (a) => flow(remove__(a), fromSet),
27
- remove_: flow(remove_(eq), fromSet),
28
- reduce: reduce(ord),
29
- reduce_: reduce_(ord),
30
- replace: (a) => (set) => replace_(set, a),
31
- replace_,
32
- toArray,
33
- fromArray,
34
- fromNonEmptyArray,
35
- from: (it) => fromArray([...it]),
36
- of: (a) => new Set([a]),
37
- concat_,
38
- concat: (it) => (set) => concat_(set, it),
39
- // A and B the same, useful when editing elements.
40
- map: map(eq),
41
- map_: map_(eq),
42
- filterMap: (f) => flow(filterMap__((a) => f(a)), fromSet),
43
- filterMap_: flow(filterMap_(eq), fromSet)
44
- };
45
- // TODO: extend
46
- }
47
- class Wrapper {
48
- wrapped(ord, eq) {
49
- return make_(ord, eq);
50
- }
51
- }
52
- export const make = make_;
53
- export function fromSet(set) {
54
- if (set.size > 0) {
55
- return Option.some(set);
56
- }
57
- else {
58
- return Option.none();
59
- }
60
- }
61
- // TODO
62
- export * from "./Set.js";
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9uRW1wdHlTZXRCYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL05vbkVtcHR5U2V0QmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLE1BQU0sRUFBYyxNQUFNLFFBQVEsQ0FBQTtBQUU3RCxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxJQUFJLGlCQUFpQixFQUFFLE1BQU0sSUFBSSxjQUFjLEVBQUUsT0FBTyxJQUFJLGVBQWUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBWSxPQUFPLElBQUksZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBUWxPLFNBQVMsS0FBSyxDQUFJLEdBQW1CLEVBQUUsR0FBZ0M7SUFDckUsTUFBTSxFQUFFLEdBQUcsR0FBRztXQUNULENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBRWhDLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQ3hDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDM0MsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQTZCLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQW1CLENBQUE7SUFDOUYsTUFBTSxPQUFPLEdBQUcsQ0FBQyxHQUFtQixFQUFFLEVBQWUsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3BGLE1BQU0sUUFBUSxHQUFHLGNBQWMsQ0FBQyxFQUFF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
@@ -1 +0,0 @@
1
- export * from "./NonEmptySetBase.js"
@@ -1,90 +0,0 @@
1
- import { type Equivalence, Option, type Order } from "effect"
2
- import type { NonEmptyReadonlyArray } from "effect/Array"
3
- import { flow, pipe } from "./Function.js"
4
- import { filter_, filterMap, filterMap_, fromArray as fromArrayOriginal, insert as insertOriginal, insert_ as insert_Original, map, map_, reduce, reduce_, remove, remove_, type Set, toArray as toArrayOriginal } from "./Set.js"
5
-
6
- export interface NonEmptyBrand {
7
- readonly NonEmpty: unique symbol
8
- }
9
-
10
- export type NonEmptySet<A> = Set<A> & NonEmptyBrand
11
-
12
- function make_<A>(ord: Order.Order<A>, eq_?: Equivalence.Equivalence<A>) {
13
- const eq = eq_
14
- ?? ((x, y) => ord(x, y) === 0)
15
-
16
- const fromArray_ = fromArrayOriginal(eq)
17
- const fromArray = flow(fromArray_, fromSet)
18
- const fromNonEmptyArray = (arr: NonEmptyReadonlyArray<A>) => fromArray_(arr) as NonEmptySet<A>
19
- const concat_ = (set: NonEmptySet<A>, it: Iterable<A>) => fromArray([...set, ...it])
20
- const insert__ = insertOriginal(eq)
21
- const insert: (a: A) => (set: NonEmptySet<A>) => NonEmptySet<A> = insert__ as any
22
- const insert_: (set: NonEmptySet<A>, a: A) => NonEmptySet<A> = insert_Original as any
23
-
24
- function replace_(set: NonEmptySet<A>, a: A) {
25
- return (pipe(filter_(set, (x) => !eq(x, a)), insert__(a)) as NonEmptySet<A>)
26
- }
27
-
28
- const toArray__ = toArrayOriginal(ord)
29
-
30
- function toArray(s: NonEmptySet<A>) {
31
- return toArray__(s) as NonEmptyReadonlyArray<A>
32
- }
33
-
34
- const remove__ = remove(eq)
35
- const filterMap__ = filterMap(eq)
36
-
37
- return {
38
- insert,
39
- insert_,
40
- remove: (a: A) => flow(remove__(a), fromSet),
41
- remove_: flow(remove_(eq), fromSet),
42
- reduce: reduce(ord),
43
- reduce_: reduce_(ord),
44
- replace: (a: A) => (set: NonEmptySet<A>) => replace_(set, a),
45
- replace_,
46
- toArray,
47
- fromArray,
48
- fromNonEmptyArray,
49
- from: (it: Iterable<A>) => fromArray([...it]),
50
- of: (a: A) => new Set<A>([a]) as unknown as NonEmptySet<A>,
51
- concat_,
52
- concat: (it: Iterable<A>) => (set: NonEmptySet<A>) => concat_(set, it),
53
-
54
- // A and B the same, useful when editing elements.
55
- map: map(eq) as unknown as <A>(
56
- f: (x: A) => A
57
- ) => (set: NonEmptySet<A>) => NonEmptySet<A>,
58
- map_: map_(eq) as unknown as <A>(
59
- set: NonEmptySet<A>,
60
- f: (x: A) => A
61
- ) => NonEmptySet<A>,
62
- filterMap: (f: (a: A) => Option.Option<A>) => flow(filterMap__<A>((a) => f(a)), fromSet),
63
- filterMap_: flow(filterMap_(eq), fromSet)
64
- }
65
- // TODO: extend
66
- }
67
-
68
- class Wrapper<A> {
69
- wrapped(ord: Order.Order<A>, eq?: Equivalence.Equivalence<A>) {
70
- return make_(ord, eq)
71
- }
72
- }
73
-
74
- export interface NonEmptySetSchemaExtensions<A> extends ReturnType<Wrapper<A>["wrapped"]> {}
75
-
76
- export const make: <A>(
77
- ord: Order.Order<A>,
78
- eq?: Equivalence.Equivalence<A>
79
- ) => NonEmptySetSchemaExtensions<A> = make_
80
-
81
- export function fromSet<A>(set: Set<A>) {
82
- if (set.size > 0) {
83
- return Option.some(set as NonEmptySet<A>)
84
- } else {
85
- return Option.none()
86
- }
87
- }
88
-
89
- // TODO
90
- export * from "./Set.js"