@thisisagile/easy 10.11.6 → 10.11.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/domain/Repo.js.map +1 -1
- package/dist/domain/Struct.js.map +1 -1
- package/dist/http/RequestOptions.js.map +1 -1
- package/dist/process/Search.d.ts +2 -0
- package/dist/process/Search.js +1 -0
- package/dist/process/Search.js.map +1 -1
- package/dist/services/Api.js +1 -1
- package/dist/services/Api.js.map +1 -1
- package/dist/services/RouteGateway.js.map +1 -1
- package/dist/types/Case.d.ts +12 -0
- package/dist/types/Case.js +12 -0
- package/dist/types/Case.js.map +1 -1
- package/dist/types/Json.js.map +1 -1
- package/dist/types/PageList.js.map +1 -1
- package/dist/types/Try.d.ts +12 -0
- package/dist/types/Try.js +1 -0
- package/dist/types/Try.js.map +1 -1
- package/package.json +2 -2
- package/src/domain/Repo.ts +2 -18
- package/src/domain/Struct.ts +1 -2
- package/src/http/RequestOptions.ts +2 -1
- package/src/process/Search.ts +4 -2
- package/src/services/Api.ts +17 -6
- package/src/services/RouteGateway.ts +1 -3
- package/src/types/Case.ts +19 -1
- package/src/types/Json.ts +1 -1
- package/src/types/PageList.ts +5 -1
- package/src/types/Try.ts +2 -0
package/dist/domain/Repo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Repo.js","sourceRoot":"","sources":["../../src/domain/Repo.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Repo.js","sourceRoot":"","sources":["../../src/domain/Repo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Struct.js","sourceRoot":"","sources":["../../src/domain/Struct.ts"],"names":[],"mappings":";;;AAAA,oCAA8D;AAC9D,8CAAyC;AAEzC,MAAsB,MAAM;IAC1B,YAA+B,QAAa,EAAE;QAAf,UAAK,GAAL,KAAK,CAAU;
|
|
1
|
+
{"version":3,"file":"Struct.js","sourceRoot":"","sources":["../../src/domain/Struct.ts"],"names":[],"mappings":";;;AAAA,oCAA8D;AAC9D,8CAAyC;AAEzC,MAAsB,MAAM;IAC1B,YAA+B,QAAa,EAAE;QAAf,UAAK,GAAL,KAAK,CAAU;QAc9C,WAAM,GAAG,CAAC,IAAU,EAAU,EAAE,CAAC,IAAI,CAAC;QAE5B,UAAK,GAAG,CAAC,CAAU,EAAQ,EAAE,CAAC,YAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAhBX,CAAC;IAElD,IAAI,OAAO;QACT,OAAO,IAAA,qBAAQ,EAAC,IAAI,CAAC,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,MAAM;QACJ,OAAO,YAAI,CAAC,MAAM,CAAC,YAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IAC/B,CAAC;CAKF;AAlBD,wBAkBC;AAEM,MAAM,QAAQ,GAAG,CAAC,CAAW,EAAe,EAAE,CAAC,IAAA,iBAAS,EAAC,CAAC,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC;AAA7E,QAAA,QAAQ,YAAqE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestOptions.js","sourceRoot":"","sources":["../../src/http/RequestOptions.ts"],"names":[],"mappings":";;;AAAA,oCAAuF;AACvF,6CAA0C;AAC1C,+CAA4C;AAErC,MAAM,aAAa,GAAG,CAAC,OAAsC,EAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"RequestOptions.js","sourceRoot":"","sources":["../../src/http/RequestOptions.ts"],"names":[],"mappings":";;;AAAA,oCAAuF;AACvF,6CAA0C;AAC1C,+CAA4C;AAErC,MAAM,aAAa,GAAG,CAAC,OAAsC,EAA2B,EAAE,CAC/F,OAAO,YAAY,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;AADvD,QAAA,aAAa,iBAC0C;AAEpE,MAAa,cAAe,SAAQ,YAAI;IAqBtC,YAAqB,OAAoB,yBAAW,CAAC,IAAI,EAAW,UAAkC,EAAE,EAAS,WAAyB;QACxI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QADE,SAAI,GAAJ,IAAI,CAAgC;QAAW,YAAO,GAAP,OAAO,CAA6B;QAAS,gBAAW,GAAX,WAAW,CAAc;QAM1I,SAAI,GAAG,CAAC,OAAoB,EAAQ,EAAE;YACpC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,kBAAa,GAAG,CAAC,IAAY,EAAQ,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,WAAM,GAAG,CAAC,MAAc,EAAQ,EAAE;YAChC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;YAC7B,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,WAAM,GAAG,CAAC,IAAiB,EAAQ,EAAE;YACnC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,WAAM,GAAG,CAAC,GAAS,EAAQ,EAAE;YAC3B,OAAO,IAAA,kBAAU,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtE,CAAC,CAAC;QAEF,UAAK,GAAG,CAAC,QAAc,EAAE,QAAc,EAAQ,EAAE;YAC/C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,SAAS,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;QA/BA,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,uBAAU,CAAC,WAAW,CAAC,GAAG,WAAG,CAAC,OAAO,CAAC,aAAa,IAAI,IAAA,cAAM,GAAE,CAAC;IAC/E,CAAC;IAxBD,MAAM,KAAK,IAAI;QACb,OAAO,IAAI,cAAc,CAAC,yBAAW,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,KAAK,IAAI;QACb,OAAO,IAAI,cAAc,CAAC,yBAAW,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO,IAAI,cAAc,CAAC,yBAAW,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,KAAK,IAAI;QACb,OAAO,IAAI,cAAc,CAAC,yBAAW,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,KAAK,GAAG;QACZ,OAAO,IAAI,cAAc,CAAC,yBAAW,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;CAoCF;AAvDD,wCAuDC;AAEM,MAAM,gBAAgB,GAAG,CAAC,CAAW,EAAuB,EAAE,CAAC,IAAA,iBAAS,EAAC,CAAC,CAAC,IAAI,CAAC,YAAY,cAAc,CAAC;AAArG,QAAA,gBAAgB,oBAAqF"}
|
package/dist/process/Search.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Repo, Struct } from '../domain';
|
|
2
2
|
import { Id, JsonValue, Key, PageList, PageOptions } from '../types';
|
|
3
|
+
import { Req } from '../resources';
|
|
3
4
|
export declare class Search<T extends Struct> {
|
|
4
5
|
protected repo: Repo<T>;
|
|
5
6
|
constructor(repo: Repo<T>);
|
|
@@ -7,6 +8,7 @@ export declare class Search<T extends Struct> {
|
|
|
7
8
|
byId: (id: Id) => Promise<T>;
|
|
8
9
|
byIds: (...ids: Id[]) => Promise<PageList<T>>;
|
|
9
10
|
byKey: (key: Key, options?: PageOptions | undefined) => Promise<PageList<T>>;
|
|
11
|
+
query: ({ query, skip, take }: Req) => Promise<PageList<T>>;
|
|
10
12
|
search: (query: JsonValue, options?: PageOptions | undefined) => Promise<PageList<T>>;
|
|
11
13
|
exists: (id: Id) => Promise<boolean>;
|
|
12
14
|
}
|
package/dist/process/Search.js
CHANGED
|
@@ -10,6 +10,7 @@ class Search {
|
|
|
10
10
|
this.byId = (id) => this.repo.byId(id);
|
|
11
11
|
this.byIds = (...ids) => this.repo.byIds(...ids);
|
|
12
12
|
this.byKey = (key, options) => this.repo.byKey(key, options);
|
|
13
|
+
this.query = ({ query, skip, take }) => this.search(query, { skip, take });
|
|
13
14
|
this.search = (query, options) => (0, types_1.choose)(query)
|
|
14
15
|
.case(types_1.isNotEmpty, q => this.repo.search(q, options))
|
|
15
16
|
.else((0, utils_1.resolve)((0, types_1.toList)()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Search.js","sourceRoot":"","sources":["../../src/process/Search.ts"],"names":[],"mappings":";;;AACA,oCAAiG;AACjG,oCAAmC;AAGnC,MAAa,MAAM;IACjB,YAAsB,IAAa;QAAb,SAAI,GAAJ,IAAI,CAAS;QAEnC,QAAG,GAAG,CAAC,OAAqB,EAAwB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE9E,SAAI,GAAG,CAAC,EAAM,EAAc,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAElD,UAAK,GAAG,CAAC,GAAG,GAAS,EAAwB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;QAExE,UAAK,GAAG,CAAC,GAAQ,
|
|
1
|
+
{"version":3,"file":"Search.js","sourceRoot":"","sources":["../../src/process/Search.ts"],"names":[],"mappings":";;;AACA,oCAAiG;AACjG,oCAAmC;AAGnC,MAAa,MAAM;IACjB,YAAsB,IAAa;QAAb,SAAI,GAAJ,IAAI,CAAS;QAEnC,QAAG,GAAG,CAAC,OAAqB,EAAwB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE9E,SAAI,GAAG,CAAC,EAAM,EAAc,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAElD,UAAK,GAAG,CAAC,GAAG,GAAS,EAAwB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;QAExE,UAAK,GAAG,CAAC,GAAQ,EAAE,OAAqB,EAAwB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAEjG,UAAK,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAO,EAAwB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAEjG,WAAM,GAAG,CAAC,KAAgB,EAAE,OAAqB,EAAwB,EAAE,CACzE,IAAA,cAAM,EAAC,KAAK,CAAC;aACV,IAAI,CAAC,kBAAU,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;aACnD,IAAI,CAAC,IAAA,eAAO,EAAC,IAAA,cAAM,GAAK,CAAC,CAAC,CAAC;QAEhC,WAAM,GAAG,CAAC,EAAM,EAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAjBtB,CAAC;CAkBxC;AAnBD,wBAmBC"}
|
package/dist/services/Api.js
CHANGED
|
@@ -29,7 +29,7 @@ class Api {
|
|
|
29
29
|
return this.provider.execute({ uri, verb: http_1.HttpVerb.Delete, transform, transformError, options: this.options(http_1.HttpVerb.Delete, options) });
|
|
30
30
|
}
|
|
31
31
|
options(verb, options) {
|
|
32
|
-
return
|
|
32
|
+
return options instanceof http_1.RequestOptions ? options : http_1.RequestOptions.Json;
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
exports.Api = Api;
|
package/dist/services/Api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Api.js","sourceRoot":"","sources":["../../src/services/Api.ts"],"names":[],"mappings":";;;AACA,kCAA6F;AAC7F,mDAAgD;AAEhD,MAAa,GAAG;IACd,YAAqB,WAA4B,IAAI,6BAAa,EAAE;QAA/C,aAAQ,GAAR,QAAQ,CAAuC;
|
|
1
|
+
{"version":3,"file":"Api.js","sourceRoot":"","sources":["../../src/services/Api.ts"],"names":[],"mappings":";;;AACA,kCAA6F;AAC7F,mDAAgD;AAEhD,MAAa,GAAG;IACd,YAAqB,WAA4B,IAAI,6BAAa,EAAE;QAA/C,aAAQ,GAAR,QAAQ,CAAuC;IAAG,CAAC;IAExE,GAAG,CAAC,GAAQ,EAAE,OAAsC,EAAE,SAA2B,EAAE,iBAAiB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QAC/G,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC3B,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,IAAA,oBAAa,EAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,oBAAa,EAAC,OAAO,CAAC,EAAE,IAAI,CAAC;YAC9E,IAAI,EAAE,eAAQ,CAAC,GAAG;YAClB,SAAS;YACT,cAAc;YACd,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,eAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;SAC7C,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CACF,GAAQ,EACR,IAAc,EACd,UAA0B,qBAAc,CAAC,IAAI,EAC7C,SAA2B,EAC3B,iBAAiB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QAE9B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,eAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,eAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7I,CAAC;IAED,GAAG,CAAC,GAAQ,EAAE,IAAc,EAAE,UAA0B,qBAAc,CAAC,IAAI,EAAE,SAA2B,EAAE,iBAAiB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QACtI,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,eAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,eAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3I,CAAC;IAED,KAAK,CACH,GAAQ,EACR,IAAc,EACd,UAA0B,qBAAc,CAAC,IAAI,EAC7C,SAA2B,EAC3B,iBAAiB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QAE9B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,eAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/I,CAAC;IAED,MAAM,CAAC,GAAQ,EAAE,UAA0B,qBAAc,CAAC,IAAI,EAAE,SAA2B,EAAE,iBAAiB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QACzH,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,eAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,eAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3I,CAAC;IAED,OAAO,CAAC,IAAc,EAAE,OAAsC;QAC5D,OAAO,OAAO,YAAY,qBAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAc,CAAC,IAAI,CAAC;IAC3E,CAAC;CACF;AA5CD,kBA4CC;AAEY,QAAA,GAAG,GAAQ,IAAI,GAAG,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteGateway.js","sourceRoot":"","sources":["../../src/services/RouteGateway.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,oCAAsG;AACtG,kCAAoE;AAEpE,MAAa,YAAa,SAAQ,eAAO;IACvC,YAAqB,KAAgB,EAAW,OAAkB,EAAW,MAAW,IAAI,SAAG,EAAE;QAC/F,KAAK,EAAE,CAAC;QADW,UAAK,GAAL,KAAK,CAAW;QAAW,YAAO,GAAP,OAAO,CAAW;QAAW,QAAG,GAAH,GAAG,CAAiB;IAEjG,CAAC;IAED,GAAG,CAAC,GAAQ,EAAE,OAAsC;QAClD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,kBAAU,EAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"RouteGateway.js","sourceRoot":"","sources":["../../src/services/RouteGateway.ts"],"names":[],"mappings":"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"}
|
package/dist/types/Case.d.ts
CHANGED
|
@@ -4,6 +4,12 @@ declare class CaseBuilder<V> {
|
|
|
4
4
|
constructor(v: V);
|
|
5
5
|
case<T>(pred: Predicate<V>, out: Func<T, V>): Case<T, V>;
|
|
6
6
|
type<T, U = unknown>(guard: (u: unknown) => u is U, out: Func<T, U>): Case<T, V>;
|
|
7
|
+
is: {
|
|
8
|
+
defined: <T>(prop: Func<unknown, V>, out: Func<T, V>) => Case<T, V>;
|
|
9
|
+
};
|
|
10
|
+
if: {
|
|
11
|
+
defined: <T>(prop: Func<unknown, V>, out: Func<T, V>) => Case<T, V>;
|
|
12
|
+
};
|
|
7
13
|
}
|
|
8
14
|
declare class Case<T, V = unknown> {
|
|
9
15
|
protected value: V;
|
|
@@ -11,6 +17,12 @@ declare class Case<T, V = unknown> {
|
|
|
11
17
|
constructor(value: V, outcome?: T | undefined);
|
|
12
18
|
case(pred: Predicate<V>, out: Func<T, V>): Case<T, V>;
|
|
13
19
|
type<U>(guard: (u: unknown) => u is U, out: Func<T, U>): Case<T, V>;
|
|
20
|
+
is: {
|
|
21
|
+
defined: (prop: Func<unknown, V>, out: Func<T, V>) => Case<T, V>;
|
|
22
|
+
};
|
|
23
|
+
if: {
|
|
24
|
+
defined: (prop: Func<unknown, V>, out: Func<T, V>) => Case<T, V>;
|
|
25
|
+
};
|
|
14
26
|
else(alt: Get<T, V>): T;
|
|
15
27
|
}
|
|
16
28
|
export declare const choose: <V>(value: V) => CaseBuilder<V>;
|
package/dist/types/Case.js
CHANGED
|
@@ -5,6 +5,10 @@ const index_1 = require("./index");
|
|
|
5
5
|
class CaseBuilder {
|
|
6
6
|
constructor(v) {
|
|
7
7
|
this.v = v;
|
|
8
|
+
this.is = {
|
|
9
|
+
defined: (prop, out) => new Case(this.v).case((0, index_1.isDefined)(prop(this.v)), out),
|
|
10
|
+
};
|
|
11
|
+
this.if = this.is;
|
|
8
12
|
}
|
|
9
13
|
case(pred, out) {
|
|
10
14
|
return new Case(this.v).case(pred, out);
|
|
@@ -17,6 +21,10 @@ class Case {
|
|
|
17
21
|
constructor(value, outcome) {
|
|
18
22
|
this.value = value;
|
|
19
23
|
this.outcome = outcome;
|
|
24
|
+
this.is = {
|
|
25
|
+
defined: (prop, out) => new Case(this.value).case((0, index_1.isDefined)(prop(this.value)), out),
|
|
26
|
+
};
|
|
27
|
+
this.if = this.is;
|
|
20
28
|
}
|
|
21
29
|
case(pred, out) {
|
|
22
30
|
return (0, index_1.tryTo)(pred, this.value)
|
|
@@ -41,6 +49,10 @@ class Found extends Case {
|
|
|
41
49
|
super(value, outcome);
|
|
42
50
|
this.value = value;
|
|
43
51
|
this.outcome = outcome;
|
|
52
|
+
this.is = {
|
|
53
|
+
defined: (_prop, _out) => this,
|
|
54
|
+
};
|
|
55
|
+
this.if = this.is;
|
|
44
56
|
}
|
|
45
57
|
case(pred, out) {
|
|
46
58
|
return this;
|
package/dist/types/Case.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Case.js","sourceRoot":"","sources":["../../src/types/Case.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Case.js","sourceRoot":"","sources":["../../src/types/Case.ts"],"names":[],"mappings":"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"}
|
package/dist/types/Json.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Json.js","sourceRoot":"","sources":["../../src/types/Json.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,6BAAoD;AACpD,+BAAmC;AACnC,oCAAqC;AAK9B,MAAM,MAAM,GAAG,CAAC,OAAiB,EAAqC,EAAE,CAAC,IAAA,SAAG,EAAyB,OAAO,EAAE,QAAQ,CAAC,CAAC;AAAlH,QAAA,MAAM,UAA4G;AAElH,QAAA,IAAI,GAAG;IAClB,KAAK,EAAE,CAAwB,OAAgB,EAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAChG,KAAK,EAAE,CAAC,GAAG,QAAmB,EAAQ,EAAE,CAAC,YAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,cAAM,EAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,YAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9I,MAAM,EAAE,CAAwB,OAAU,EAAE,GAAW,EAAK,EAAE;QAC5D,IAAA,iBAAS,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAQ,OAAe,CAAC,GAAG,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"Json.js","sourceRoot":"","sources":["../../src/types/Json.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageList.js","sourceRoot":"","sources":["../../src/types/PageList.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AACtC,+CAAuD;AAQhD,MAAM,UAAU,GAAG,CAAI,KAAW,EAAE,OAAwD,EAAe,EAAE;IAClH,MAAM,IAAI,GAAG,IAAA,aAAM,EAAI,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAQ,CAAC;IAChD,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,GAAG,CAAC;IACjC,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;IAC5B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AANW,QAAA,UAAU,cAMrB;AAEK,MAAM,UAAU,GAAG,CAAO,CAAe,EAAE,QAAQ,IAAA,kBAAU,GAAK,EAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"PageList.js","sourceRoot":"","sources":["../../src/types/PageList.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AACtC,+CAAuD;AAQhD,MAAM,UAAU,GAAG,CAAI,KAAW,EAAE,OAAwD,EAAe,EAAE;IAClH,MAAM,IAAI,GAAG,IAAA,aAAM,EAAI,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAQ,CAAC;IAChD,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,GAAG,CAAC;IACjC,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;IAC5B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AANW,QAAA,UAAU,cAMrB;AAEK,MAAM,UAAU,GAAG,CAAO,CAAe,EAAE,QAAQ,IAAA,kBAAU,GAAK,EAAe,EAAE,CACxF,IAAA,kBAAU,EACR,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,yBAAW,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EACjC,KAAK,CACN,CAAC;AAJS,QAAA,UAAU,cAInB"}
|
package/dist/types/Try.d.ts
CHANGED
|
@@ -15,6 +15,18 @@ declare abstract class Try<T = unknown> implements Validatable {
|
|
|
15
15
|
valid: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
|
+
if: {
|
|
19
|
+
defined: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
20
|
+
empty: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
21
|
+
valid: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
22
|
+
true: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
23
|
+
false: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
24
|
+
not: {
|
|
25
|
+
defined: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
26
|
+
empty: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
27
|
+
valid: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
18
30
|
abstract get value(): T;
|
|
19
31
|
abstract get error(): Error;
|
|
20
32
|
abstract get isValid(): boolean;
|
package/dist/types/Try.js
CHANGED
package/dist/types/Try.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Try.js","sourceRoot":"","sources":["../../src/types/Try.ts"],"names":[],"mappings":";;;AAAA,6BAAkD;AAClD,8CAAyC;AACzC,+CAAoE;AAEpE,+BAAmC;AAGnC,MAAe,GAAG;IAAlB;QACE,OAAE,GAAG;YACH,OAAO,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,cAAS,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7F,KAAK,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,YAAO,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzF,KAAK,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,qBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAClG,IAAI,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,WAAM,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvF,KAAK,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAA,WAAM,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzF,GAAG,EAAE;gBACH,OAAO,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAA,cAAS,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9F,KAAK,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAA,YAAO,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1F,KAAK,EAAE,CAAC,IAAuB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAA,qBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;aACpG;SACF,CAAC;
|
|
1
|
+
{"version":3,"file":"Try.js","sourceRoot":"","sources":["../../src/types/Try.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thisisagile/easy",
|
|
3
|
-
"version": "10.11.
|
|
3
|
+
"version": "10.11.13",
|
|
4
4
|
"description": "Straightforward library for building domain-driven microservice architectures",
|
|
5
5
|
"author": "Sander Hoogendoorn",
|
|
6
6
|
"license": "MIT",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"access": "public"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@thisisagile/easy-test": "10.11.
|
|
34
|
+
"@thisisagile/easy-test": "10.11.13",
|
|
35
35
|
"@types/form-urlencoded": "^4.4.0",
|
|
36
36
|
"@types/jsonwebtoken": "^8.5.8",
|
|
37
37
|
"@types/validator": "^13.7.2"
|
package/src/domain/Repo.ts
CHANGED
|
@@ -1,26 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
asList,
|
|
3
|
-
asPageList,
|
|
4
|
-
Constructor,
|
|
5
|
-
Exception,
|
|
6
|
-
Gateway,
|
|
7
|
-
Id,
|
|
8
|
-
isValidatable,
|
|
9
|
-
Json,
|
|
10
|
-
JsonValue,
|
|
11
|
-
Key,
|
|
12
|
-
List,
|
|
13
|
-
PageList,
|
|
14
|
-
PageOptions,
|
|
15
|
-
toJson,
|
|
16
|
-
} from '../types';
|
|
1
|
+
import { asList, asPageList, Constructor, Exception, Gateway, Id, isValidatable, Json, JsonValue, Key, List, PageList, PageOptions, toJson } from '../types';
|
|
17
2
|
import { when } from '../validation';
|
|
18
3
|
import { reject, resolve } from '../utils';
|
|
19
4
|
import { Struct } from './Struct';
|
|
20
5
|
|
|
21
6
|
export class Repo<T extends Struct> {
|
|
22
|
-
constructor(protected ctor: Constructor<T>, private readonly gateway: Gateway) {
|
|
23
|
-
}
|
|
7
|
+
constructor(protected ctor: Constructor<T>, private readonly gateway: Gateway) {}
|
|
24
8
|
|
|
25
9
|
create = (item: T | Json): T => (isValidatable(item) ? item : new this.ctor(item));
|
|
26
10
|
|
package/src/domain/Struct.ts
CHANGED
|
@@ -2,8 +2,7 @@ import { isDefined, json, Json, Validatable } from '../types';
|
|
|
2
2
|
import { validate } from '../validation';
|
|
3
3
|
|
|
4
4
|
export abstract class Struct implements Validatable {
|
|
5
|
-
constructor(protected readonly state: any = {}) {
|
|
6
|
-
}
|
|
5
|
+
constructor(protected readonly state: any = {}) {}
|
|
7
6
|
|
|
8
7
|
get isValid(): boolean {
|
|
9
8
|
return validate(this).isValid;
|
|
@@ -2,7 +2,8 @@ import { ctx, Enum, isDefined, isNotEmpty, PageOptions, Text, toUuid } from '../
|
|
|
2
2
|
import { HttpHeader } from './HttpHeader';
|
|
3
3
|
import { ContentType } from './ContentType';
|
|
4
4
|
|
|
5
|
-
export const toPageOptions = (options?: RequestOptions | PageOptions): PageOptions | undefined =>
|
|
5
|
+
export const toPageOptions = (options?: RequestOptions | PageOptions): PageOptions | undefined =>
|
|
6
|
+
options instanceof RequestOptions ? options.pageOptions : options;
|
|
6
7
|
|
|
7
8
|
export class RequestOptions extends Enum {
|
|
8
9
|
static get Form(): RequestOptions {
|
package/src/process/Search.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Repo, Struct } from '../domain';
|
|
2
2
|
import { choose, Id, isNotEmpty, JsonValue, Key, toList, PageList, PageOptions } from '../types';
|
|
3
3
|
import { resolve } from '../utils';
|
|
4
|
-
|
|
4
|
+
import { Req } from '../resources';
|
|
5
5
|
|
|
6
6
|
export class Search<T extends Struct> {
|
|
7
7
|
constructor(protected repo: Repo<T>) {}
|
|
@@ -12,7 +12,9 @@ export class Search<T extends Struct> {
|
|
|
12
12
|
|
|
13
13
|
byIds = (...ids: Id[]): Promise<PageList<T>> => this.repo.byIds(...ids);
|
|
14
14
|
|
|
15
|
-
byKey = (key: Key,options?: PageOptions): Promise<PageList<T>> => this.repo.byKey(key, options);
|
|
15
|
+
byKey = (key: Key, options?: PageOptions): Promise<PageList<T>> => this.repo.byKey(key, options);
|
|
16
|
+
|
|
17
|
+
query = ({ query, skip, take }: Req): Promise<PageList<T>> => this.search(query, { skip, take });
|
|
16
18
|
|
|
17
19
|
search = (query: JsonValue, options?: PageOptions): Promise<PageList<T>> =>
|
|
18
20
|
choose(query)
|
package/src/services/Api.ts
CHANGED
|
@@ -3,8 +3,7 @@ import { HttpVerb, RequestOptions, RequestProvider, Response, toPageOptions } fr
|
|
|
3
3
|
import { AxiosProvider } from './AxiosProvider';
|
|
4
4
|
|
|
5
5
|
export class Api {
|
|
6
|
-
constructor(readonly provider: RequestProvider = new AxiosProvider()) {
|
|
7
|
-
}
|
|
6
|
+
constructor(readonly provider: RequestProvider = new AxiosProvider()) {}
|
|
8
7
|
|
|
9
8
|
get(uri: Uri, options?: RequestOptions | PageOptions, transform?: (r: any) => any, transformError = (r: any) => r): Promise<Response> {
|
|
10
9
|
return this.provider.execute({
|
|
@@ -16,7 +15,13 @@ export class Api {
|
|
|
16
15
|
});
|
|
17
16
|
}
|
|
18
17
|
|
|
19
|
-
post(
|
|
18
|
+
post(
|
|
19
|
+
uri: Uri,
|
|
20
|
+
body?: unknown,
|
|
21
|
+
options: RequestOptions = RequestOptions.Json,
|
|
22
|
+
transform?: (r: any) => any,
|
|
23
|
+
transformError = (r: any) => r
|
|
24
|
+
): Promise<Response> {
|
|
20
25
|
return this.provider.execute({ uri, verb: HttpVerb.Post, body, transform, transformError, options: this.options(HttpVerb.Post, options) });
|
|
21
26
|
}
|
|
22
27
|
|
|
@@ -24,8 +29,14 @@ export class Api {
|
|
|
24
29
|
return this.provider.execute({ uri, verb: HttpVerb.Put, body, transform, transformError, options: this.options(HttpVerb.Put, options) });
|
|
25
30
|
}
|
|
26
31
|
|
|
27
|
-
patch(
|
|
28
|
-
|
|
32
|
+
patch(
|
|
33
|
+
uri: Uri,
|
|
34
|
+
body?: unknown,
|
|
35
|
+
options: RequestOptions = RequestOptions.Json,
|
|
36
|
+
transform?: (r: any) => any,
|
|
37
|
+
transformError = (r: any) => r
|
|
38
|
+
): Promise<Response> {
|
|
39
|
+
return this.provider.execute({ uri, verb: HttpVerb.Patch, body, transform, transformError, options: this.options(HttpVerb.Patch, options) });
|
|
29
40
|
}
|
|
30
41
|
|
|
31
42
|
delete(uri: Uri, options: RequestOptions = RequestOptions.Json, transform?: (b: any) => any, transformError = (r: any) => r): Promise<Response> {
|
|
@@ -33,7 +44,7 @@ export class Api {
|
|
|
33
44
|
}
|
|
34
45
|
|
|
35
46
|
options(verb: HttpVerb, options?: RequestOptions | PageOptions): RequestOptions {
|
|
36
|
-
return
|
|
47
|
+
return options instanceof RequestOptions ? options : RequestOptions.Json;
|
|
37
48
|
}
|
|
38
49
|
}
|
|
39
50
|
|
|
@@ -8,9 +8,7 @@ export class RouteGateway extends Gateway {
|
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
get(uri: Uri, options?: RequestOptions | PageOptions): Promise<PageList<Json>> {
|
|
11
|
-
return this.api.get(uri, options).then(r => toPageList<Json>(r.body.data?.items,
|
|
12
|
-
toPageOptions(options) && { total: r.body.data?.totalItems },
|
|
13
|
-
));
|
|
11
|
+
return this.api.get(uri, options).then(r => toPageList<Json>(r.body.data?.items, toPageOptions(options) && { total: r.body.data?.totalItems }));
|
|
14
12
|
}
|
|
15
13
|
|
|
16
14
|
getOne(uri: Uri, options?: RequestOptions): Promise<Json | undefined> {
|
package/src/types/Case.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Func, Get, ofGet, Predicate, tryTo } from './index';
|
|
1
|
+
import { Func, Get, isDefined, ofGet, Predicate, tryTo } from './index';
|
|
2
2
|
|
|
3
3
|
class CaseBuilder<V> {
|
|
4
4
|
constructor(readonly v: V) {}
|
|
@@ -10,6 +10,12 @@ class CaseBuilder<V> {
|
|
|
10
10
|
type<T, U = unknown>(guard: (u: unknown) => u is U, out: Func<T, U>): Case<T, V> {
|
|
11
11
|
return new Case<T, V>(this.v).type<U>(guard, out);
|
|
12
12
|
}
|
|
13
|
+
|
|
14
|
+
is = {
|
|
15
|
+
defined: <T>(prop: Func<unknown, V>, out: Func<T, V>): Case<T, V> => new Case<T, V>(this.v).case(isDefined(prop(this.v)), out),
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
if = this.is;
|
|
13
19
|
}
|
|
14
20
|
|
|
15
21
|
class Case<T, V = unknown> {
|
|
@@ -31,6 +37,12 @@ class Case<T, V = unknown> {
|
|
|
31
37
|
.or(this);
|
|
32
38
|
}
|
|
33
39
|
|
|
40
|
+
is = {
|
|
41
|
+
defined: (prop: Func<unknown, V>, out: Func<T, V>): Case<T, V> => new Case<T, V>(this.value).case(isDefined(prop(this.value)), out),
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
if = this.is;
|
|
45
|
+
|
|
34
46
|
else(alt: Get<T, V>): T {
|
|
35
47
|
return ofGet<T, V>(alt, this.value);
|
|
36
48
|
}
|
|
@@ -49,6 +61,12 @@ class Found<T, V> extends Case<T, V> {
|
|
|
49
61
|
return this;
|
|
50
62
|
}
|
|
51
63
|
|
|
64
|
+
is = {
|
|
65
|
+
defined: (_prop: Func<unknown, V>, _out: Func<T, V>): Case<T, V> => this,
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
if = this.is;
|
|
69
|
+
|
|
52
70
|
else(alt: Get<T, V>): T {
|
|
53
71
|
return this.outcome;
|
|
54
72
|
}
|
package/src/types/Json.ts
CHANGED
|
@@ -12,7 +12,7 @@ export const json = {
|
|
|
12
12
|
parse: <T extends Json = Json>(subject: unknown): T => JSON.parse(JSON.stringify(subject ?? {})),
|
|
13
13
|
merge: (...subjects: unknown[]): Json => json.parse(subjects.map(s => asJson(s, s => json.parse(s))).reduce((js, j) => ({ ...js, ...j }), {})),
|
|
14
14
|
delete: <T extends Json = Json>(subject: T, key: string): T => {
|
|
15
|
-
ifDefined(subject, () => delete (subject as any)[key])
|
|
15
|
+
ifDefined(subject, () => delete (subject as any)[key]);
|
|
16
16
|
return subject;
|
|
17
17
|
},
|
|
18
18
|
set: <T extends Json = Json>(subject: T, key = '', value?: unknown): T =>
|
package/src/types/PageList.ts
CHANGED
|
@@ -15,4 +15,8 @@ export const toPageList = <T>(items?: T[], options?: Omit<PageOptions, 'sort'> &
|
|
|
15
15
|
return list;
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
-
export const asPageList = <T, U>(c: Construct<T>, items = toPageList<U>()): PageList<T> =>
|
|
18
|
+
export const asPageList = <T, U>(c: Construct<T>, items = toPageList<U>()): PageList<T> =>
|
|
19
|
+
toPageList<T>(
|
|
20
|
+
items.map(i => ofConstruct(c, i)),
|
|
21
|
+
items
|
|
22
|
+
);
|