@thisisagile/easy
Version:
Straightforward library for building domain-driven microservice architectures
1 lines • 2.08 kB
Source Map (JSON)
{"version":3,"sources":["../../src/services/ViewRouteGateway.ts"],"sourcesContent":["import { Api } from './Api';\nimport { RouteGateway } from './RouteGateway';\nimport { Func } from '../types/Func';\nimport { Uri } from '../types/Uri';\nimport { view } from '../utils/View';\nimport { RequestOptions } from '../http/RequestOptions';\nimport { PageList } from '../types/PageList';\nimport { Json } from '../types/Json';\nimport { Optional } from '../types/Types';\n\nexport class ViewRouteGateway extends RouteGateway {\n constructor(\n readonly route: Func<Uri>,\n readonly routeId: Func<Uri>,\n readonly views = {\n in: view({}).fromSource,\n out: view({}).fromSource,\n },\n readonly api: Api = new Api()\n ) {\n super(route, routeId, api);\n }\n\n get(uri: Uri, options?: RequestOptions): Promise<PageList<Json>> {\n return super.get(uri, options).then(is => is.map(i => this.views.in.from(i)));\n }\n\n getOne(uri: Uri, options?: RequestOptions): Promise<Optional<Json>> {\n return super\n .get(uri, options)\n .then(is => is.first())\n .then(i => this.views.in.from(i));\n }\n\n add(item: Json): Promise<Json> {\n return super.add(this.views.out.from(item));\n }\n\n update(item: Json): Promise<Json> {\n return super.update(this.views.out.from(item));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,IAAM,mBAAN,cAA+B,aAAa;AAAA,EACjD,YACW,OACA,SACA,QAAQ;AAAA,IACf,IAAI,KAAK,CAAC,CAAC,EAAE;AAAA,IACb,KAAK,KAAK,CAAC,CAAC,EAAE;AAAA,EAChB,GACS,MAAW,IAAI,IAAI,GAC5B;AACA,UAAM,OAAO,SAAS,GAAG;AARhB;AACA;AACA;AAIA;AAAA,EAGX;AAAA,EAEA,IAAI,KAAU,SAAmD;AAC/D,WAAO,MAAM,IAAI,KAAK,OAAO,EAAE,KAAK,QAAM,GAAG,IAAI,OAAK,KAAK,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;AAAA,EAC9E;AAAA,EAEA,OAAO,KAAU,SAAmD;AAClE,WAAO,MACJ,IAAI,KAAK,OAAO,EAChB,KAAK,QAAM,GAAG,MAAM,CAAC,EACrB,KAAK,OAAK,KAAK,MAAM,GAAG,KAAK,CAAC,CAAC;AAAA,EACpC;AAAA,EAEA,IAAI,MAA2B;AAC7B,WAAO,MAAM,IAAI,KAAK,MAAM,IAAI,KAAK,IAAI,CAAC;AAAA,EAC5C;AAAA,EAEA,OAAO,MAA2B;AAChC,WAAO,MAAM,OAAO,KAAK,MAAM,IAAI,KAAK,IAAI,CAAC;AAAA,EAC/C;AACF;","names":[]}