@thisisagile/easy 17.31.0 → 17.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/dist/{chunk-NIWK2A5T.mjs → chunk-2RHBJLH7.mjs} +8 -12
  2. package/dist/{chunk-NIWK2A5T.mjs.map → chunk-2RHBJLH7.mjs.map} +1 -1
  3. package/dist/{chunk-OOWOFPDC.mjs → chunk-4TGUPVQN.mjs} +2 -2
  4. package/dist/{chunk-GQ7XGATB.mjs → chunk-AMBSWR6J.mjs} +7 -9
  5. package/dist/{chunk-GQ7XGATB.mjs.map → chunk-AMBSWR6J.mjs.map} +1 -1
  6. package/dist/{chunk-DY33LKDP.mjs → chunk-BZNMKX6O.mjs} +2 -2
  7. package/dist/{chunk-6RSZTLCP.mjs → chunk-ESECEXXM.mjs} +4 -4
  8. package/dist/{chunk-PZFHPGDR.mjs → chunk-FCJ4TDW7.mjs} +2 -2
  9. package/dist/{chunk-6PR3OZQP.mjs → chunk-H7NA23T6.mjs} +3 -3
  10. package/dist/{chunk-UNU355PL.mjs → chunk-I5VS3NUO.mjs} +5 -5
  11. package/dist/{chunk-DV7PHOM6.mjs → chunk-JSALAKCR.mjs} +3 -3
  12. package/dist/{chunk-QSB4QYYE.mjs → chunk-KTK2V5FC.mjs} +2 -2
  13. package/dist/{chunk-LKBFD66J.mjs → chunk-KX7RRPEZ.mjs} +3 -5
  14. package/dist/{chunk-LKBFD66J.mjs.map → chunk-KX7RRPEZ.mjs.map} +1 -1
  15. package/dist/{chunk-5O2BGB5V.mjs → chunk-LAY4XDIL.mjs} +3 -3
  16. package/dist/{chunk-PIZ7IORV.mjs → chunk-LP2MEIWU.mjs} +2 -2
  17. package/dist/{chunk-X24AKSPO.mjs → chunk-PCKGK5AF.mjs} +2 -2
  18. package/dist/{chunk-3BJH75JQ.mjs → chunk-PQTYEEZC.mjs} +2 -2
  19. package/dist/{chunk-PKA5XEUC.mjs → chunk-R6UXMGTJ.mjs} +3 -3
  20. package/dist/{chunk-TYH6CVJL.mjs → chunk-RBGF26S7.mjs} +4 -4
  21. package/dist/{chunk-IYFZMJYO.mjs → chunk-TNPMWL7Y.mjs} +7 -11
  22. package/dist/{chunk-IYFZMJYO.mjs.map → chunk-TNPMWL7Y.mjs.map} +1 -1
  23. package/dist/{chunk-GJL7E2EJ.mjs → chunk-TPGAM536.mjs} +4 -4
  24. package/dist/{chunk-2MNT7B4T.mjs → chunk-UYBPL7PM.mjs} +7 -7
  25. package/dist/{chunk-HI2JE5PJ.mjs → chunk-XAIZBTVQ.mjs} +2 -2
  26. package/dist/chunk-ZBS4A3QI.mjs +614 -0
  27. package/dist/chunk-ZBS4A3QI.mjs.map +1 -0
  28. package/dist/data/InMemoryGateway.mjs +5 -11
  29. package/dist/data/InMemoryGateway.mjs.map +1 -1
  30. package/dist/domain/Audit.mjs +6 -11
  31. package/dist/domain/Child.mjs +6 -11
  32. package/dist/domain/Child.mjs.map +1 -1
  33. package/dist/domain/DateTime.mjs +3 -8
  34. package/dist/domain/Entity.mjs +11 -16
  35. package/dist/domain/Entity.mjs.map +1 -1
  36. package/dist/domain/Repo.mjs +5 -11
  37. package/dist/domain/Repo.mjs.map +1 -1
  38. package/dist/domain/Struct.mjs +3 -8
  39. package/dist/domain/Typo.mjs +4 -10
  40. package/dist/domain/Typo.mjs.map +1 -1
  41. package/dist/http/CacheControl.mjs +4 -9
  42. package/dist/http/CacheControl.mjs.map +1 -1
  43. package/dist/http/LocalRequestStore.mjs +6 -2
  44. package/dist/http/LocalRequestStore.mjs.map +1 -1
  45. package/dist/http/RequestOptions.mjs +6 -4
  46. package/dist/http/RestResult.mjs +4 -9
  47. package/dist/http/toResponse.mjs +5 -10
  48. package/dist/index.js +317 -306
  49. package/dist/index.js.map +1 -1
  50. package/dist/process/App.mjs +5 -2
  51. package/dist/process/App.mjs.map +1 -1
  52. package/dist/process/Manage.mjs +4 -9
  53. package/dist/process/Manage.mjs.map +1 -1
  54. package/dist/process/Scope.mjs +5 -2
  55. package/dist/process/Search.mjs +4 -9
  56. package/dist/process/UseCase.mjs +4 -1
  57. package/dist/process/UseCase.mjs.map +1 -1
  58. package/dist/resources/Req.mjs +3 -8
  59. package/dist/resources/Req.mjs.map +1 -1
  60. package/dist/services/Api.mjs +11 -16
  61. package/dist/services/ApiGateway.mjs +14 -19
  62. package/dist/services/AxiosProvider.mjs +10 -15
  63. package/dist/services/MappedRouteGateway.mjs +15 -20
  64. package/dist/services/MappedRouteGateway.mjs.map +1 -1
  65. package/dist/services/RouteGateway.mjs +15 -20
  66. package/dist/services/ViewRouteGateway.mjs +17 -22
  67. package/dist/services/ViewRouteGateway.mjs.map +1 -1
  68. package/dist/sql/Column.mjs +3 -8
  69. package/dist/sql/Table.mjs +3 -8
  70. package/dist/sql/Table.mjs.map +1 -1
  71. package/dist/sql/TableGateway.mjs +4 -9
  72. package/dist/sql/TableGateway.mjs.map +1 -1
  73. package/dist/types/CacheAge.mjs +4 -9
  74. package/dist/types/Case.d.ts +16 -0
  75. package/dist/types/Case.mjs +2 -7
  76. package/dist/types/Context.mjs +6 -2
  77. package/dist/types/Exception.mjs +4 -2
  78. package/dist/types/Gateway.mjs +4 -3
  79. package/dist/types/IsEqual.mjs +3 -8
  80. package/dist/types/Number.mjs +3 -8
  81. package/dist/types/PageList.mjs +3 -8
  82. package/dist/types/Parser.mjs +2 -7
  83. package/dist/types/Parser.mjs.map +1 -1
  84. package/dist/types/Repository.mjs +4 -3
  85. package/dist/types/Result.mjs +6 -3
  86. package/dist/types/Results.mjs +6 -4
  87. package/dist/types/Template.d.ts +1 -0
  88. package/dist/types/Template.mjs +6 -1
  89. package/dist/types/ToText.mjs +6 -1
  90. package/dist/types/Try.mjs +2 -7
  91. package/dist/types/Uri.mjs +3 -9
  92. package/dist/types/Uri.mjs.map +1 -1
  93. package/dist/utils/Sentence.mjs +6 -1
  94. package/dist/utils/Sentence.mjs.map +1 -1
  95. package/dist/utils/View.mjs +5 -10
  96. package/dist/validation/Contraints.mjs +3 -8
  97. package/dist/validation/Validate.mjs +2 -7
  98. package/dist/validation/When.mjs +2 -7
  99. package/package.json +1 -1
  100. package/src/types/Case.ts +12 -0
  101. package/src/types/Template.ts +7 -3
  102. package/src/types/ToText.ts +1 -1
  103. package/dist/chunk-6JA2EI2T.mjs +0 -20
  104. package/dist/chunk-6JA2EI2T.mjs.map +0 -1
  105. package/dist/chunk-HTHNHACU.mjs +0 -94
  106. package/dist/chunk-HTHNHACU.mjs.map +0 -1
  107. package/dist/chunk-MIYBZDW6.mjs +0 -35
  108. package/dist/chunk-MIYBZDW6.mjs.map +0 -1
  109. package/dist/chunk-SOUOSMQ6.mjs +0 -165
  110. package/dist/chunk-SOUOSMQ6.mjs.map +0 -1
  111. package/dist/chunk-VTEGCABM.mjs +0 -40
  112. package/dist/chunk-VTEGCABM.mjs.map +0 -1
  113. package/dist/chunk-WIQKEALP.mjs +0 -324
  114. package/dist/chunk-WIQKEALP.mjs.map +0 -1
  115. /package/dist/{chunk-OOWOFPDC.mjs.map → chunk-4TGUPVQN.mjs.map} +0 -0
  116. /package/dist/{chunk-DY33LKDP.mjs.map → chunk-BZNMKX6O.mjs.map} +0 -0
  117. /package/dist/{chunk-6RSZTLCP.mjs.map → chunk-ESECEXXM.mjs.map} +0 -0
  118. /package/dist/{chunk-PZFHPGDR.mjs.map → chunk-FCJ4TDW7.mjs.map} +0 -0
  119. /package/dist/{chunk-6PR3OZQP.mjs.map → chunk-H7NA23T6.mjs.map} +0 -0
  120. /package/dist/{chunk-UNU355PL.mjs.map → chunk-I5VS3NUO.mjs.map} +0 -0
  121. /package/dist/{chunk-DV7PHOM6.mjs.map → chunk-JSALAKCR.mjs.map} +0 -0
  122. /package/dist/{chunk-QSB4QYYE.mjs.map → chunk-KTK2V5FC.mjs.map} +0 -0
  123. /package/dist/{chunk-5O2BGB5V.mjs.map → chunk-LAY4XDIL.mjs.map} +0 -0
  124. /package/dist/{chunk-PIZ7IORV.mjs.map → chunk-LP2MEIWU.mjs.map} +0 -0
  125. /package/dist/{chunk-X24AKSPO.mjs.map → chunk-PCKGK5AF.mjs.map} +0 -0
  126. /package/dist/{chunk-3BJH75JQ.mjs.map → chunk-PQTYEEZC.mjs.map} +0 -0
  127. /package/dist/{chunk-PKA5XEUC.mjs.map → chunk-R6UXMGTJ.mjs.map} +0 -0
  128. /package/dist/{chunk-TYH6CVJL.mjs.map → chunk-RBGF26S7.mjs.map} +0 -0
  129. /package/dist/{chunk-GJL7E2EJ.mjs.map → chunk-TPGAM536.mjs.map} +0 -0
  130. /package/dist/{chunk-2MNT7B4T.mjs.map → chunk-UYBPL7PM.mjs.map} +0 -0
  131. /package/dist/{chunk-HI2JE5PJ.mjs.map → chunk-XAIZBTVQ.mjs.map} +0 -0
@@ -1,7 +1,10 @@
1
1
  import {
2
2
  Scope
3
- } from "../chunk-QSB4QYYE.mjs";
4
- import "../chunk-SOUOSMQ6.mjs";
3
+ } from "../chunk-KTK2V5FC.mjs";
4
+ import "../chunk-ZBS4A3QI.mjs";
5
+ import "../chunk-2EJYJ4HI.mjs";
6
+ import "../chunk-OFGI5FLG.mjs";
7
+ import "../chunk-WSBULPUZ.mjs";
5
8
  import "../chunk-AG3P2RCU.mjs";
6
9
  import "../chunk-MK2UX4IH.mjs";
7
10
  import "../chunk-ZKLQJX4N.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/process/App.ts"],"sourcesContent":["import { Scope } from './Scope';\n\nexport class App extends Scope {\n constructor(name: string) {\n super(name);\n }\n\n static readonly Main = new App('Main');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAEO,IAAM,MAAN,MAAM,aAAY,MAAM;AAAA,EAC7B,YAAY,MAAc;AACxB,UAAM,IAAI;AAAA,EACZ;AAAA,EAEA,OAAgB,OAAO,IAAI,KAAI,MAAM;AACvC;","names":[]}
1
+ {"version":3,"sources":["../../src/process/App.ts"],"sourcesContent":["import { Scope } from './Scope';\n\nexport class App extends Scope {\n constructor(name: string) {\n super(name);\n }\n\n static readonly Main = new App('Main');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAM,MAAN,MAAM,aAAY,MAAM;AAAA,EAC7B,YAAY,MAAc;AACxB,UAAM,IAAI;AAAA,EACZ;AAAA,EAEA,OAAgB,OAAO,IAAI,KAAI,MAAM;AACvC;","names":[]}
@@ -1,16 +1,11 @@
1
1
  import {
2
2
  Search
3
- } from "../chunk-6PR3OZQP.mjs";
4
- import "../chunk-3BJH75JQ.mjs";
5
- import "../chunk-WIQKEALP.mjs";
6
- import "../chunk-OFGI5FLG.mjs";
7
- import "../chunk-MIYBZDW6.mjs";
8
- import "../chunk-6JA2EI2T.mjs";
3
+ } from "../chunk-H7NA23T6.mjs";
4
+ import "../chunk-PQTYEEZC.mjs";
5
+ import "../chunk-ZBS4A3QI.mjs";
9
6
  import "../chunk-2EJYJ4HI.mjs";
10
- import "../chunk-VTEGCABM.mjs";
7
+ import "../chunk-OFGI5FLG.mjs";
11
8
  import "../chunk-WSBULPUZ.mjs";
12
- import "../chunk-HTHNHACU.mjs";
13
- import "../chunk-SOUOSMQ6.mjs";
14
9
  import "../chunk-AG3P2RCU.mjs";
15
10
  import "../chunk-MK2UX4IH.mjs";
16
11
  import "../chunk-ZKLQJX4N.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/process/Manage.ts"],"sourcesContent":["import { Search } from './Search';\nimport { FetchOptions } from '../types/Gateway';\nimport { Json } from '../types/Json';\nimport { Id } from '../types/Id';\n\nexport class Manage<T, Options = FetchOptions> extends Search<T, Options> {\n add(json: Json): Promise<T> {\n return this.repo.add(json);\n }\n\n update(id: Id, json: Json): Promise<T> {\n return this.repo.update(id, json);\n }\n\n upsert(id: Id, json: Json): Promise<T> {\n return this.repo.upsert(id, json);\n }\n\n remove(id: Id): Promise<boolean> {\n return this.repo.remove(id);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,IAAM,SAAN,cAAgD,OAAmB;AAAA,EACxE,IAAI,MAAwB;AAC1B,WAAO,KAAK,KAAK,IAAI,IAAI;AAAA,EAC3B;AAAA,EAEA,OAAO,IAAQ,MAAwB;AACrC,WAAO,KAAK,KAAK,OAAO,IAAI,IAAI;AAAA,EAClC;AAAA,EAEA,OAAO,IAAQ,MAAwB;AACrC,WAAO,KAAK,KAAK,OAAO,IAAI,IAAI;AAAA,EAClC;AAAA,EAEA,OAAO,IAA0B;AAC/B,WAAO,KAAK,KAAK,OAAO,EAAE;AAAA,EAC5B;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/process/Manage.ts"],"sourcesContent":["import { Search } from './Search';\nimport { FetchOptions } from '../types/Gateway';\nimport { Json } from '../types/Json';\nimport { Id } from '../types/Id';\n\nexport class Manage<T, Options = FetchOptions> extends Search<T, Options> {\n add(json: Json): Promise<T> {\n return this.repo.add(json);\n }\n\n update(id: Id, json: Json): Promise<T> {\n return this.repo.update(id, json);\n }\n\n upsert(id: Id, json: Json): Promise<T> {\n return this.repo.upsert(id, json);\n }\n\n remove(id: Id): Promise<boolean> {\n return this.repo.remove(id);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAKO,IAAM,SAAN,cAAgD,OAAmB;AAAA,EACxE,IAAI,MAAwB;AAC1B,WAAO,KAAK,KAAK,IAAI,IAAI;AAAA,EAC3B;AAAA,EAEA,OAAO,IAAQ,MAAwB;AACrC,WAAO,KAAK,KAAK,OAAO,IAAI,IAAI;AAAA,EAClC;AAAA,EAEA,OAAO,IAAQ,MAAwB;AACrC,WAAO,KAAK,KAAK,OAAO,IAAI,IAAI;AAAA,EAClC;AAAA,EAEA,OAAO,IAA0B;AAC/B,WAAO,KAAK,KAAK,OAAO,EAAE;AAAA,EAC5B;AACF;","names":[]}
@@ -1,7 +1,10 @@
1
1
  import {
2
2
  Scope
3
- } from "../chunk-QSB4QYYE.mjs";
4
- import "../chunk-SOUOSMQ6.mjs";
3
+ } from "../chunk-KTK2V5FC.mjs";
4
+ import "../chunk-ZBS4A3QI.mjs";
5
+ import "../chunk-2EJYJ4HI.mjs";
6
+ import "../chunk-OFGI5FLG.mjs";
7
+ import "../chunk-WSBULPUZ.mjs";
5
8
  import "../chunk-AG3P2RCU.mjs";
6
9
  import "../chunk-MK2UX4IH.mjs";
7
10
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,16 +1,11 @@
1
1
  import {
2
2
  Search
3
- } from "../chunk-6PR3OZQP.mjs";
4
- import "../chunk-3BJH75JQ.mjs";
5
- import "../chunk-WIQKEALP.mjs";
6
- import "../chunk-OFGI5FLG.mjs";
7
- import "../chunk-MIYBZDW6.mjs";
8
- import "../chunk-6JA2EI2T.mjs";
3
+ } from "../chunk-H7NA23T6.mjs";
4
+ import "../chunk-PQTYEEZC.mjs";
5
+ import "../chunk-ZBS4A3QI.mjs";
9
6
  import "../chunk-2EJYJ4HI.mjs";
10
- import "../chunk-VTEGCABM.mjs";
7
+ import "../chunk-OFGI5FLG.mjs";
11
8
  import "../chunk-WSBULPUZ.mjs";
12
- import "../chunk-HTHNHACU.mjs";
13
- import "../chunk-SOUOSMQ6.mjs";
14
9
  import "../chunk-AG3P2RCU.mjs";
15
10
  import "../chunk-MK2UX4IH.mjs";
16
11
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,6 +1,9 @@
1
1
  import {
2
2
  text
3
- } from "../chunk-SOUOSMQ6.mjs";
3
+ } from "../chunk-ZBS4A3QI.mjs";
4
+ import "../chunk-2EJYJ4HI.mjs";
5
+ import "../chunk-OFGI5FLG.mjs";
6
+ import "../chunk-WSBULPUZ.mjs";
4
7
  import {
5
8
  Enum
6
9
  } from "../chunk-AG3P2RCU.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/process/UseCase.ts"],"sourcesContent":["import { Scope } from './Scope';\nimport { App } from './App';\nimport { Enum } from '../types/Enum';\nimport { kebab, Text } from '../types/Text';\nimport { List, toList } from '../types/List';\nimport { isIn, isString } from '../types/Is';\nimport { IdNamePlain } from '../types/IdName';\nimport { text } from '../types/ToText';\n\nexport class UseCase extends Enum {\n constructor(\n readonly app: App,\n name: string,\n id: Text = text(name).kebab,\n readonly scopes: List<Scope> = toList<Scope>()\n ) {\n super(name, id.toString());\n }\n\n static byScopes<U extends UseCase>(...s: Scope[]): List<U> {\n return this.filter(u => u.scopes.some(us => isIn(us, s)));\n }\n\n with(...s: Scope[]): this {\n this.scopes.add(\n ...toList(s)\n .flatMap(s => s.expand())\n .distinct()\n );\n return this;\n }\n\n for(item: string | IdNamePlain): UseCase {\n return new UseCase(this.app, `${this.name} ${isString(item) ? item : item?.name}`, kebab(`${this.id} ${isString(item) ? item : item.id}`)).with(\n ...this.scopes.map(s => s?.for(item))\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAM,UAAN,MAAM,iBAAgB,KAAK;AAAA,EAChC,YACW,KACT,MACA,KAAW,KAAK,IAAI,EAAE,OACb,SAAsB,OAAc,GAC7C;AACA,UAAM,MAAM,GAAG,SAAS,CAAC;AALhB;AAGA;AAAA,EAGX;AAAA,EAEA,OAAO,YAA+B,GAAqB;AACzD,WAAO,KAAK,OAAO,OAAK,EAAE,OAAO,KAAK,QAAM,KAAK,IAAI,CAAC,CAAC,CAAC;AAAA,EAC1D;AAAA,EAEA,QAAQ,GAAkB;AACxB,SAAK,OAAO;AAAA,MACV,GAAG,OAAO,CAAC,EACR,QAAQ,CAAAA,OAAKA,GAAE,OAAO,CAAC,EACvB,SAAS;AAAA,IACd;AACA,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,MAAqC;AACvC,WAAO,IAAI,SAAQ,KAAK,KAAK,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,IAAI,OAAO,MAAM,IAAI,IAAI,MAAM,GAAG,KAAK,EAAE,IAAI,SAAS,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC,EAAE;AAAA,MACzI,GAAG,KAAK,OAAO,IAAI,OAAK,GAAG,IAAI,IAAI,CAAC;AAAA,IACtC;AAAA,EACF;AACF;","names":["s"]}
1
+ {"version":3,"sources":["../../src/process/UseCase.ts"],"sourcesContent":["import { Scope } from './Scope';\nimport { App } from './App';\nimport { Enum } from '../types/Enum';\nimport { kebab, Text } from '../types/Text';\nimport { List, toList } from '../types/List';\nimport { isIn, isString } from '../types/Is';\nimport { IdNamePlain } from '../types/IdName';\nimport { text } from '../types/ToText';\n\nexport class UseCase extends Enum {\n constructor(\n readonly app: App,\n name: string,\n id: Text = text(name).kebab,\n readonly scopes: List<Scope> = toList<Scope>()\n ) {\n super(name, id.toString());\n }\n\n static byScopes<U extends UseCase>(...s: Scope[]): List<U> {\n return this.filter(u => u.scopes.some(us => isIn(us, s)));\n }\n\n with(...s: Scope[]): this {\n this.scopes.add(\n ...toList(s)\n .flatMap(s => s.expand())\n .distinct()\n );\n return this;\n }\n\n for(item: string | IdNamePlain): UseCase {\n return new UseCase(this.app, `${this.name} ${isString(item) ? item : item?.name}`, kebab(`${this.id} ${isString(item) ? item : item.id}`)).with(\n ...this.scopes.map(s => s?.for(item))\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAM,UAAN,MAAM,iBAAgB,KAAK;AAAA,EAChC,YACW,KACT,MACA,KAAW,KAAK,IAAI,EAAE,OACb,SAAsB,OAAc,GAC7C;AACA,UAAM,MAAM,GAAG,SAAS,CAAC;AALhB;AAGA;AAAA,EAGX;AAAA,EAEA,OAAO,YAA+B,GAAqB;AACzD,WAAO,KAAK,OAAO,OAAK,EAAE,OAAO,KAAK,QAAM,KAAK,IAAI,CAAC,CAAC,CAAC;AAAA,EAC1D;AAAA,EAEA,QAAQ,GAAkB;AACxB,SAAK,OAAO;AAAA,MACV,GAAG,OAAO,CAAC,EACR,QAAQ,CAAAA,OAAKA,GAAE,OAAO,CAAC,EACvB,SAAS;AAAA,IACd;AACA,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,MAAqC;AACvC,WAAO,IAAI,SAAQ,KAAK,KAAK,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,IAAI,OAAO,MAAM,IAAI,IAAI,MAAM,GAAG,KAAK,EAAE,IAAI,SAAS,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC,EAAE;AAAA,MACzI,GAAG,KAAK,OAAO,IAAI,OAAK,GAAG,IAAI,IAAI,CAAC;AAAA,IACtC;AAAA,EACF;AACF;","names":["s"]}
@@ -1,15 +1,10 @@
1
1
  import {
2
2
  asNumber
3
- } from "../chunk-HI2JE5PJ.mjs";
4
- import "../chunk-WIQKEALP.mjs";
5
- import "../chunk-OFGI5FLG.mjs";
6
- import "../chunk-MIYBZDW6.mjs";
7
- import "../chunk-6JA2EI2T.mjs";
3
+ } from "../chunk-XAIZBTVQ.mjs";
4
+ import "../chunk-ZBS4A3QI.mjs";
8
5
  import "../chunk-2EJYJ4HI.mjs";
9
- import "../chunk-VTEGCABM.mjs";
6
+ import "../chunk-OFGI5FLG.mjs";
10
7
  import "../chunk-WSBULPUZ.mjs";
11
- import "../chunk-HTHNHACU.mjs";
12
- import "../chunk-SOUOSMQ6.mjs";
13
8
  import "../chunk-AG3P2RCU.mjs";
14
9
  import "../chunk-MK2UX4IH.mjs";
15
10
  import "../chunk-ZKLQJX4N.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/resources/Req.ts"],"sourcesContent":["import { PageOptions } from '../types/PageList';\nimport { Optional } from '../types/Types';\nimport { Json, JsonValue } from '../types/Json';\nimport { OneOrMore } from '../types/Array';\nimport { ifDefined } from '../utils/If';\nimport { asNumber } from '../types/Number';\nimport { Id } from '../types/Id';\nimport type { Text } from '../types/Text';\n\nexport class Req<T = unknown> implements Omit<PageOptions, 'sort'> {\n readonly skip: Optional<number>;\n readonly take: Optional<number>;\n constructor(\n readonly path: Json = {},\n readonly query: Json = {},\n readonly body: T,\n readonly headers: Record<string, OneOrMore<string>>\n ) {\n this.skip = ifDefined(query.skip, s => asNumber(s));\n this.take = ifDefined(query.take, t => asNumber(t));\n }\n\n get id(): Id {\n return this.get('id');\n }\n\n get q(): JsonValue {\n return this.get('q');\n }\n\n get = (key: Text): any => this.path[key.toString()] ?? this.query[key.toString()];\n}\n\nexport function toReq<T = unknown>(req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: T; headers?: unknown }): Req {\n return new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAM,MAAN,MAA4D;AAAA,EAGjE,YACW,OAAa,CAAC,GACd,QAAc,CAAC,GACf,MACA,SACT;AAJS;AACA;AACA;AACA;AAET,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAClD,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EAVS;AAAA,EACA;AAAA,EAWT,IAAI,KAAS;AACX,WAAO,KAAK,IAAI,IAAI;AAAA,EACtB;AAAA,EAEA,IAAI,IAAe;AACjB,WAAO,KAAK,IAAI,GAAG;AAAA,EACrB;AAAA,EAEA,MAAM,CAAC,QAAmB,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,SAAS,CAAC;AAClF;AAEO,SAAS,MAAmB,KAA+F;AAChI,SAAO,IAAI,IAAI,IAAI,QAAgB,IAAI,OAAe,IAAI,MAAc,IAAI,OAA4C;AAC1H;","names":[]}
1
+ {"version":3,"sources":["../../src/resources/Req.ts"],"sourcesContent":["import { PageOptions } from '../types/PageList';\nimport { Optional } from '../types/Types';\nimport { Json, JsonValue } from '../types/Json';\nimport { OneOrMore } from '../types/Array';\nimport { ifDefined } from '../utils/If';\nimport { asNumber } from '../types/Number';\nimport { Id } from '../types/Id';\nimport type { Text } from '../types/Text';\n\nexport class Req<T = unknown> implements Omit<PageOptions, 'sort'> {\n readonly skip: Optional<number>;\n readonly take: Optional<number>;\n constructor(\n readonly path: Json = {},\n readonly query: Json = {},\n readonly body: T,\n readonly headers: Record<string, OneOrMore<string>>\n ) {\n this.skip = ifDefined(query.skip, s => asNumber(s));\n this.take = ifDefined(query.take, t => asNumber(t));\n }\n\n get id(): Id {\n return this.get('id');\n }\n\n get q(): JsonValue {\n return this.get('q');\n }\n\n get = (key: Text): any => this.path[key.toString()] ?? this.query[key.toString()];\n}\n\nexport function toReq<T = unknown>(req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: T; headers?: unknown }): Req {\n return new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAM,MAAN,MAA4D;AAAA,EAGjE,YACW,OAAa,CAAC,GACd,QAAc,CAAC,GACf,MACA,SACT;AAJS;AACA;AACA;AACA;AAET,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAClD,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EAVS;AAAA,EACA;AAAA,EAWT,IAAI,KAAS;AACX,WAAO,KAAK,IAAI,IAAI;AAAA,EACtB;AAAA,EAEA,IAAI,IAAe;AACjB,WAAO,KAAK,IAAI,GAAG;AAAA,EACrB;AAAA,EAEA,MAAM,CAAC,QAAmB,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,SAAS,CAAC;AAClF;AAEO,SAAS,MAAmB,KAA+F;AAChI,SAAO,IAAI,IAAI,IAAI,QAAgB,IAAI,OAAe,IAAI,MAAc,IAAI,OAA4C;AAC1H;","names":[]}
@@ -1,28 +1,23 @@
1
1
  import {
2
2
  Api,
3
3
  api
4
- } from "../chunk-PKA5XEUC.mjs";
5
- import "../chunk-NIWK2A5T.mjs";
6
- import "../chunk-X24AKSPO.mjs";
7
- import "../chunk-IYFZMJYO.mjs";
4
+ } from "../chunk-R6UXMGTJ.mjs";
5
+ import "../chunk-2RHBJLH7.mjs";
6
+ import "../chunk-PCKGK5AF.mjs";
7
+ import "../chunk-TNPMWL7Y.mjs";
8
+ import "../chunk-UYDZZAEK.mjs";
8
9
  import "../chunk-LNNALU5F.mjs";
9
10
  import "../chunk-TM2NCQN5.mjs";
10
- import "../chunk-UNU355PL.mjs";
11
- import "../chunk-SW2OCUH3.mjs";
12
- import "../chunk-UYDZZAEK.mjs";
11
+ import "../chunk-I5VS3NUO.mjs";
13
12
  import "../chunk-SJ4YFZKO.mjs";
14
- import "../chunk-5O2BGB5V.mjs";
15
- import "../chunk-HI2JE5PJ.mjs";
16
13
  import "../chunk-GBZ36SQE.mjs";
17
- import "../chunk-WIQKEALP.mjs";
18
- import "../chunk-OFGI5FLG.mjs";
19
- import "../chunk-MIYBZDW6.mjs";
20
- import "../chunk-6JA2EI2T.mjs";
14
+ import "../chunk-SW2OCUH3.mjs";
15
+ import "../chunk-LAY4XDIL.mjs";
16
+ import "../chunk-XAIZBTVQ.mjs";
17
+ import "../chunk-ZBS4A3QI.mjs";
21
18
  import "../chunk-2EJYJ4HI.mjs";
22
- import "../chunk-VTEGCABM.mjs";
19
+ import "../chunk-OFGI5FLG.mjs";
23
20
  import "../chunk-WSBULPUZ.mjs";
24
- import "../chunk-HTHNHACU.mjs";
25
- import "../chunk-SOUOSMQ6.mjs";
26
21
  import "../chunk-AG3P2RCU.mjs";
27
22
  import "../chunk-MK2UX4IH.mjs";
28
23
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,30 +1,25 @@
1
1
  import {
2
2
  ApiGateway
3
- } from "../chunk-TYH6CVJL.mjs";
4
- import "../chunk-PKA5XEUC.mjs";
5
- import "../chunk-NIWK2A5T.mjs";
6
- import "../chunk-X24AKSPO.mjs";
7
- import "../chunk-IYFZMJYO.mjs";
3
+ } from "../chunk-RBGF26S7.mjs";
4
+ import "../chunk-R6UXMGTJ.mjs";
5
+ import "../chunk-2RHBJLH7.mjs";
6
+ import "../chunk-PCKGK5AF.mjs";
7
+ import "../chunk-TNPMWL7Y.mjs";
8
+ import "../chunk-UYDZZAEK.mjs";
8
9
  import "../chunk-LNNALU5F.mjs";
9
10
  import "../chunk-TM2NCQN5.mjs";
10
- import "../chunk-UNU355PL.mjs";
11
- import "../chunk-SW2OCUH3.mjs";
12
- import "../chunk-UYDZZAEK.mjs";
11
+ import "../chunk-I5VS3NUO.mjs";
13
12
  import "../chunk-SJ4YFZKO.mjs";
14
- import "../chunk-5O2BGB5V.mjs";
15
- import "../chunk-HI2JE5PJ.mjs";
16
13
  import "../chunk-GBZ36SQE.mjs";
17
- import "../chunk-6RSZTLCP.mjs";
18
- import "../chunk-3BJH75JQ.mjs";
19
- import "../chunk-WIQKEALP.mjs";
20
- import "../chunk-OFGI5FLG.mjs";
21
- import "../chunk-MIYBZDW6.mjs";
22
- import "../chunk-6JA2EI2T.mjs";
14
+ import "../chunk-SW2OCUH3.mjs";
15
+ import "../chunk-ESECEXXM.mjs";
16
+ import "../chunk-PQTYEEZC.mjs";
17
+ import "../chunk-LAY4XDIL.mjs";
18
+ import "../chunk-XAIZBTVQ.mjs";
19
+ import "../chunk-ZBS4A3QI.mjs";
23
20
  import "../chunk-2EJYJ4HI.mjs";
24
- import "../chunk-VTEGCABM.mjs";
21
+ import "../chunk-OFGI5FLG.mjs";
25
22
  import "../chunk-WSBULPUZ.mjs";
26
- import "../chunk-HTHNHACU.mjs";
27
- import "../chunk-SOUOSMQ6.mjs";
28
23
  import "../chunk-AG3P2RCU.mjs";
29
24
  import "../chunk-MK2UX4IH.mjs";
30
25
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,25 +1,20 @@
1
1
  import {
2
2
  AxiosProvider
3
- } from "../chunk-NIWK2A5T.mjs";
4
- import "../chunk-X24AKSPO.mjs";
5
- import "../chunk-IYFZMJYO.mjs";
6
- import "../chunk-LNNALU5F.mjs";
7
- import "../chunk-UNU355PL.mjs";
8
- import "../chunk-SW2OCUH3.mjs";
3
+ } from "../chunk-2RHBJLH7.mjs";
4
+ import "../chunk-PCKGK5AF.mjs";
5
+ import "../chunk-TNPMWL7Y.mjs";
9
6
  import "../chunk-UYDZZAEK.mjs";
7
+ import "../chunk-LNNALU5F.mjs";
8
+ import "../chunk-I5VS3NUO.mjs";
10
9
  import "../chunk-SJ4YFZKO.mjs";
11
- import "../chunk-5O2BGB5V.mjs";
12
- import "../chunk-HI2JE5PJ.mjs";
13
10
  import "../chunk-GBZ36SQE.mjs";
14
- import "../chunk-WIQKEALP.mjs";
15
- import "../chunk-OFGI5FLG.mjs";
16
- import "../chunk-MIYBZDW6.mjs";
17
- import "../chunk-6JA2EI2T.mjs";
11
+ import "../chunk-SW2OCUH3.mjs";
12
+ import "../chunk-LAY4XDIL.mjs";
13
+ import "../chunk-XAIZBTVQ.mjs";
14
+ import "../chunk-ZBS4A3QI.mjs";
18
15
  import "../chunk-2EJYJ4HI.mjs";
19
- import "../chunk-VTEGCABM.mjs";
16
+ import "../chunk-OFGI5FLG.mjs";
20
17
  import "../chunk-WSBULPUZ.mjs";
21
- import "../chunk-HTHNHACU.mjs";
22
- import "../chunk-SOUOSMQ6.mjs";
23
18
  import "../chunk-AG3P2RCU.mjs";
24
19
  import "../chunk-MK2UX4IH.mjs";
25
20
  import "../chunk-ZKLQJX4N.mjs";
@@ -4,37 +4,32 @@ import {
4
4
  import "../chunk-WJZFE5NE.mjs";
5
5
  import {
6
6
  RouteGateway
7
- } from "../chunk-DV7PHOM6.mjs";
8
- import "../chunk-TYH6CVJL.mjs";
7
+ } from "../chunk-JSALAKCR.mjs";
8
+ import "../chunk-RBGF26S7.mjs";
9
9
  import {
10
10
  Api
11
- } from "../chunk-PKA5XEUC.mjs";
12
- import "../chunk-NIWK2A5T.mjs";
13
- import "../chunk-X24AKSPO.mjs";
14
- import "../chunk-IYFZMJYO.mjs";
11
+ } from "../chunk-R6UXMGTJ.mjs";
12
+ import "../chunk-2RHBJLH7.mjs";
13
+ import "../chunk-PCKGK5AF.mjs";
14
+ import "../chunk-TNPMWL7Y.mjs";
15
+ import "../chunk-UYDZZAEK.mjs";
15
16
  import "../chunk-LNNALU5F.mjs";
16
17
  import "../chunk-TM2NCQN5.mjs";
17
- import "../chunk-UNU355PL.mjs";
18
- import "../chunk-SW2OCUH3.mjs";
19
- import "../chunk-UYDZZAEK.mjs";
18
+ import "../chunk-I5VS3NUO.mjs";
20
19
  import "../chunk-SJ4YFZKO.mjs";
21
- import "../chunk-5O2BGB5V.mjs";
22
- import "../chunk-HI2JE5PJ.mjs";
23
20
  import "../chunk-GBZ36SQE.mjs";
21
+ import "../chunk-SW2OCUH3.mjs";
24
22
  import "../chunk-GCY5A63A.mjs";
25
23
  import "../chunk-MDXL65W4.mjs";
26
- import "../chunk-6RSZTLCP.mjs";
27
- import "../chunk-3BJH75JQ.mjs";
28
24
  import "../chunk-YQC25ZQ4.mjs";
29
- import "../chunk-WIQKEALP.mjs";
30
- import "../chunk-OFGI5FLG.mjs";
31
- import "../chunk-MIYBZDW6.mjs";
32
- import "../chunk-6JA2EI2T.mjs";
25
+ import "../chunk-ESECEXXM.mjs";
26
+ import "../chunk-PQTYEEZC.mjs";
27
+ import "../chunk-LAY4XDIL.mjs";
28
+ import "../chunk-XAIZBTVQ.mjs";
29
+ import "../chunk-ZBS4A3QI.mjs";
33
30
  import "../chunk-2EJYJ4HI.mjs";
34
- import "../chunk-VTEGCABM.mjs";
31
+ import "../chunk-OFGI5FLG.mjs";
35
32
  import "../chunk-WSBULPUZ.mjs";
36
- import "../chunk-HTHNHACU.mjs";
37
- import "../chunk-SOUOSMQ6.mjs";
38
33
  import "../chunk-AG3P2RCU.mjs";
39
34
  import "../chunk-MK2UX4IH.mjs";
40
35
  import "../chunk-ZKLQJX4N.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/MappedRouteGateway.ts"],"sourcesContent":["import { Api } from './Api';\nimport { RouteGateway } from './RouteGateway';\nimport { Func } from '../types/Func';\nimport { Uri } from '../types/Uri';\nimport { Mapper } from '../utils/Mapper';\nimport { RequestOptions } from '../http/RequestOptions';\nimport { PageList } from '../types/PageList';\nimport { Json } from '../types/Json';\nimport { Optional } from '../types/Types';\n\nexport class MappedRouteGateway extends RouteGateway {\n constructor(\n readonly route: Func<Uri>,\n readonly routeId: Func<Uri>,\n readonly map = new Mapper(),\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.map.in(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.map.in(i));\n }\n\n add(item: Json): Promise<Json> {\n return super.add(this.map.out(item));\n }\n\n update(item: Json): Promise<Json> {\n return super.update(this.map.out(item));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,IAAM,qBAAN,cAAiC,aAAa;AAAA,EACnD,YACW,OACA,SACA,MAAM,IAAI,OAAO,GACjB,MAAW,IAAI,IAAI,GAC5B;AACA,UAAM,OAAO,SAAS,GAAG;AALhB;AACA;AACA;AACA;AAAA,EAGX;AAAA,EAEA,IAAI,KAAU,SAAmD;AAC/D,WAAO,MAAM,IAAI,KAAK,OAAO,EAAE,KAAK,QAAM,GAAG,IAAI,OAAK,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;AAAA,EACvE;AAAA,EAEA,OAAO,KAAU,SAAmD;AAClE,WAAO,MACJ,IAAI,KAAK,OAAO,EAChB,KAAK,QAAM,GAAG,MAAM,CAAC,EACrB,KAAK,OAAK,KAAK,IAAI,GAAG,CAAC,CAAC;AAAA,EAC7B;AAAA,EAEA,IAAI,MAA2B;AAC7B,WAAO,MAAM,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC;AAAA,EACrC;AAAA,EAEA,OAAO,MAA2B;AAChC,WAAO,MAAM,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC;AAAA,EACxC;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/services/MappedRouteGateway.ts"],"sourcesContent":["import { Api } from './Api';\nimport { RouteGateway } from './RouteGateway';\nimport { Func } from '../types/Func';\nimport { Uri } from '../types/Uri';\nimport { Mapper } from '../utils/Mapper';\nimport { RequestOptions } from '../http/RequestOptions';\nimport { PageList } from '../types/PageList';\nimport { Json } from '../types/Json';\nimport { Optional } from '../types/Types';\n\nexport class MappedRouteGateway extends RouteGateway {\n constructor(\n readonly route: Func<Uri>,\n readonly routeId: Func<Uri>,\n readonly map = new Mapper(),\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.map.in(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.map.in(i));\n }\n\n add(item: Json): Promise<Json> {\n return super.add(this.map.out(item));\n }\n\n update(item: Json): Promise<Json> {\n return super.update(this.map.out(item));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,IAAM,qBAAN,cAAiC,aAAa;AAAA,EACnD,YACW,OACA,SACA,MAAM,IAAI,OAAO,GACjB,MAAW,IAAI,IAAI,GAC5B;AACA,UAAM,OAAO,SAAS,GAAG;AALhB;AACA;AACA;AACA;AAAA,EAGX;AAAA,EAEA,IAAI,KAAU,SAAmD;AAC/D,WAAO,MAAM,IAAI,KAAK,OAAO,EAAE,KAAK,QAAM,GAAG,IAAI,OAAK,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;AAAA,EACvE;AAAA,EAEA,OAAO,KAAU,SAAmD;AAClE,WAAO,MACJ,IAAI,KAAK,OAAO,EAChB,KAAK,QAAM,GAAG,MAAM,CAAC,EACrB,KAAK,OAAK,KAAK,IAAI,GAAG,CAAC,CAAC;AAAA,EAC7B;AAAA,EAEA,IAAI,MAA2B;AAC7B,WAAO,MAAM,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC;AAAA,EACrC;AAAA,EAEA,OAAO,MAA2B;AAChC,WAAO,MAAM,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC;AAAA,EACxC;AACF;","names":[]}
@@ -1,31 +1,26 @@
1
1
  import {
2
2
  RouteGateway
3
- } from "../chunk-DV7PHOM6.mjs";
4
- import "../chunk-TYH6CVJL.mjs";
5
- import "../chunk-PKA5XEUC.mjs";
6
- import "../chunk-NIWK2A5T.mjs";
7
- import "../chunk-X24AKSPO.mjs";
8
- import "../chunk-IYFZMJYO.mjs";
3
+ } from "../chunk-JSALAKCR.mjs";
4
+ import "../chunk-RBGF26S7.mjs";
5
+ import "../chunk-R6UXMGTJ.mjs";
6
+ import "../chunk-2RHBJLH7.mjs";
7
+ import "../chunk-PCKGK5AF.mjs";
8
+ import "../chunk-TNPMWL7Y.mjs";
9
+ import "../chunk-UYDZZAEK.mjs";
9
10
  import "../chunk-LNNALU5F.mjs";
10
11
  import "../chunk-TM2NCQN5.mjs";
11
- import "../chunk-UNU355PL.mjs";
12
- import "../chunk-SW2OCUH3.mjs";
13
- import "../chunk-UYDZZAEK.mjs";
12
+ import "../chunk-I5VS3NUO.mjs";
14
13
  import "../chunk-SJ4YFZKO.mjs";
15
- import "../chunk-5O2BGB5V.mjs";
16
- import "../chunk-HI2JE5PJ.mjs";
17
14
  import "../chunk-GBZ36SQE.mjs";
18
- import "../chunk-6RSZTLCP.mjs";
19
- import "../chunk-3BJH75JQ.mjs";
20
- import "../chunk-WIQKEALP.mjs";
21
- import "../chunk-OFGI5FLG.mjs";
22
- import "../chunk-MIYBZDW6.mjs";
23
- import "../chunk-6JA2EI2T.mjs";
15
+ import "../chunk-SW2OCUH3.mjs";
16
+ import "../chunk-ESECEXXM.mjs";
17
+ import "../chunk-PQTYEEZC.mjs";
18
+ import "../chunk-LAY4XDIL.mjs";
19
+ import "../chunk-XAIZBTVQ.mjs";
20
+ import "../chunk-ZBS4A3QI.mjs";
24
21
  import "../chunk-2EJYJ4HI.mjs";
25
- import "../chunk-VTEGCABM.mjs";
22
+ import "../chunk-OFGI5FLG.mjs";
26
23
  import "../chunk-WSBULPUZ.mjs";
27
- import "../chunk-HTHNHACU.mjs";
28
- import "../chunk-SOUOSMQ6.mjs";
29
24
  import "../chunk-AG3P2RCU.mjs";
30
25
  import "../chunk-MK2UX4IH.mjs";
31
26
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,38 +1,33 @@
1
1
  import {
2
2
  view
3
- } from "../chunk-2MNT7B4T.mjs";
4
- import "../chunk-PZFHPGDR.mjs";
3
+ } from "../chunk-UYBPL7PM.mjs";
4
+ import "../chunk-FCJ4TDW7.mjs";
5
5
  import {
6
6
  RouteGateway
7
- } from "../chunk-DV7PHOM6.mjs";
8
- import "../chunk-TYH6CVJL.mjs";
7
+ } from "../chunk-JSALAKCR.mjs";
8
+ import "../chunk-RBGF26S7.mjs";
9
9
  import {
10
10
  Api
11
- } from "../chunk-PKA5XEUC.mjs";
12
- import "../chunk-NIWK2A5T.mjs";
13
- import "../chunk-X24AKSPO.mjs";
14
- import "../chunk-IYFZMJYO.mjs";
11
+ } from "../chunk-R6UXMGTJ.mjs";
12
+ import "../chunk-2RHBJLH7.mjs";
13
+ import "../chunk-PCKGK5AF.mjs";
14
+ import "../chunk-TNPMWL7Y.mjs";
15
+ import "../chunk-UYDZZAEK.mjs";
15
16
  import "../chunk-LNNALU5F.mjs";
16
17
  import "../chunk-TM2NCQN5.mjs";
17
- import "../chunk-UNU355PL.mjs";
18
- import "../chunk-SW2OCUH3.mjs";
19
- import "../chunk-UYDZZAEK.mjs";
18
+ import "../chunk-I5VS3NUO.mjs";
20
19
  import "../chunk-SJ4YFZKO.mjs";
21
- import "../chunk-5O2BGB5V.mjs";
22
- import "../chunk-HI2JE5PJ.mjs";
23
20
  import "../chunk-GBZ36SQE.mjs";
24
- import "../chunk-6RSZTLCP.mjs";
25
- import "../chunk-3BJH75JQ.mjs";
21
+ import "../chunk-SW2OCUH3.mjs";
26
22
  import "../chunk-YQC25ZQ4.mjs";
27
- import "../chunk-WIQKEALP.mjs";
28
- import "../chunk-OFGI5FLG.mjs";
29
- import "../chunk-MIYBZDW6.mjs";
30
- import "../chunk-6JA2EI2T.mjs";
23
+ import "../chunk-ESECEXXM.mjs";
24
+ import "../chunk-PQTYEEZC.mjs";
25
+ import "../chunk-LAY4XDIL.mjs";
26
+ import "../chunk-XAIZBTVQ.mjs";
27
+ import "../chunk-ZBS4A3QI.mjs";
31
28
  import "../chunk-2EJYJ4HI.mjs";
32
- import "../chunk-VTEGCABM.mjs";
29
+ import "../chunk-OFGI5FLG.mjs";
33
30
  import "../chunk-WSBULPUZ.mjs";
34
- import "../chunk-HTHNHACU.mjs";
35
- import "../chunk-SOUOSMQ6.mjs";
36
31
  import "../chunk-AG3P2RCU.mjs";
37
32
  import "../chunk-MK2UX4IH.mjs";
38
33
  import "../chunk-ZKLQJX4N.mjs";
@@ -1 +1 @@
1
- {"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":[]}
1
+ {"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":[]}
@@ -2,19 +2,14 @@ import {
2
2
  Column,
3
3
  OrderColumn,
4
4
  PatternColumn
5
- } from "../chunk-DY33LKDP.mjs";
5
+ } from "../chunk-BZNMKX6O.mjs";
6
6
  import "../chunk-OKPGJD64.mjs";
7
7
  import "../chunk-GCY5A63A.mjs";
8
8
  import "../chunk-MDXL65W4.mjs";
9
- import "../chunk-WIQKEALP.mjs";
10
- import "../chunk-OFGI5FLG.mjs";
11
- import "../chunk-MIYBZDW6.mjs";
12
- import "../chunk-6JA2EI2T.mjs";
9
+ import "../chunk-ZBS4A3QI.mjs";
13
10
  import "../chunk-2EJYJ4HI.mjs";
14
- import "../chunk-VTEGCABM.mjs";
11
+ import "../chunk-OFGI5FLG.mjs";
15
12
  import "../chunk-WSBULPUZ.mjs";
16
- import "../chunk-HTHNHACU.mjs";
17
- import "../chunk-SOUOSMQ6.mjs";
18
13
  import "../chunk-AG3P2RCU.mjs";
19
14
  import "../chunk-MK2UX4IH.mjs";
20
15
  import "../chunk-ZKLQJX4N.mjs";
@@ -3,7 +3,7 @@ import {
3
3
  } from "../chunk-2AB6ZQHC.mjs";
4
4
  import {
5
5
  Column
6
- } from "../chunk-DY33LKDP.mjs";
6
+ } from "../chunk-BZNMKX6O.mjs";
7
7
  import {
8
8
  Count
9
9
  } from "../chunk-RUFO75IB.mjs";
@@ -35,15 +35,10 @@ import {
35
35
  import "../chunk-GCY5A63A.mjs";
36
36
  import "../chunk-MDXL65W4.mjs";
37
37
  import "../chunk-YQC25ZQ4.mjs";
38
- import "../chunk-WIQKEALP.mjs";
39
- import "../chunk-OFGI5FLG.mjs";
40
- import "../chunk-MIYBZDW6.mjs";
41
- import "../chunk-6JA2EI2T.mjs";
38
+ import "../chunk-ZBS4A3QI.mjs";
42
39
  import "../chunk-2EJYJ4HI.mjs";
43
- import "../chunk-VTEGCABM.mjs";
40
+ import "../chunk-OFGI5FLG.mjs";
44
41
  import "../chunk-WSBULPUZ.mjs";
45
- import "../chunk-HTHNHACU.mjs";
46
- import "../chunk-SOUOSMQ6.mjs";
47
42
  import "../chunk-AG3P2RCU.mjs";
48
43
  import "../chunk-MK2UX4IH.mjs";
49
44
  import "../chunk-ZKLQJX4N.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sql/Table.ts"],"sourcesContent":["import { Column } from './Column';\nimport { Select } from './Select';\nimport { Insert } from './Insert';\nimport { Update } from './Update';\nimport { Delete } from './Delete';\nimport { Join } from './Join';\nimport { Count } from './Count';\nimport { MapOptions, Mapper, mappings } from '../utils/Mapper';\nimport { PropertyOptions } from '../utils/Property';\nimport { toUuid } from '../types/Uuid';\nimport { Database } from '../data/Database';\nimport { toList } from '../types/List';\nimport { Json } from '../types/Json';\n\nexport class Table extends Mapper {\n protected readonly map = {\n ...mappings,\n column: <T = unknown>(name: string, options?: PropertyOptions<T>): Column => new Column(this, name, options),\n };\n\n readonly id = this.map.column('', { dflt: toUuid });\n\n constructor(options: MapOptions = { startFrom: 'source' }) {\n super(options);\n }\n\n get db(): Database {\n return Database.Default;\n }\n\n get count(): Count {\n return new Count(this);\n }\n\n /**\n * @deprecated Deprecated since version 6.2. Please use map.column instead.\n */\n prop = <T = unknown>(name: string, options?: PropertyOptions<T>): Column => this.map.column(name, options);\n\n select = (...columns: Column[]): Select => new Select(this, toList(columns));\n\n insert = (fields: Json): Insert => new Insert(this, this.out(fields));\n update = (fields: Json): Update => new Update(this, this.out(fields));\n delete = (): Delete => new Delete(this, toList());\n\n readonly join = (t: Table): Join => new Join(this, t);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcO,IAAM,QAAN,cAAoB,OAAO;AAAA,EACb,MAAM;AAAA,IACvB,GAAG;AAAA,IACH,QAAQ,CAAc,MAAc,YAAyC,IAAI,OAAO,MAAM,MAAM,OAAO;AAAA,EAC7G;AAAA,EAES,KAAK,KAAK,IAAI,OAAO,IAAI,EAAE,MAAM,OAAO,CAAC;AAAA,EAElD,YAAY,UAAsB,EAAE,WAAW,SAAS,GAAG;AACzD,UAAM,OAAO;AAAA,EACf;AAAA,EAEA,IAAI,KAAe;AACjB,WAAO,SAAS;AAAA,EAClB;AAAA,EAEA,IAAI,QAAe;AACjB,WAAO,IAAI,MAAM,IAAI;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,CAAc,MAAc,YAAyC,KAAK,IAAI,OAAO,MAAM,OAAO;AAAA,EAEzG,SAAS,IAAI,YAA8B,IAAI,OAAO,MAAM,OAAO,OAAO,CAAC;AAAA,EAE3E,SAAS,CAAC,WAAyB,IAAI,OAAO,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA,EACpE,SAAS,CAAC,WAAyB,IAAI,OAAO,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA,EACpE,SAAS,MAAc,IAAI,OAAO,MAAM,OAAO,CAAC;AAAA,EAEvC,OAAO,CAAC,MAAmB,IAAI,KAAK,MAAM,CAAC;AACtD;","names":[]}
1
+ {"version":3,"sources":["../../src/sql/Table.ts"],"sourcesContent":["import { Column } from './Column';\nimport { Select } from './Select';\nimport { Insert } from './Insert';\nimport { Update } from './Update';\nimport { Delete } from './Delete';\nimport { Join } from './Join';\nimport { Count } from './Count';\nimport { MapOptions, Mapper, mappings } from '../utils/Mapper';\nimport { PropertyOptions } from '../utils/Property';\nimport { toUuid } from '../types/Uuid';\nimport { Database } from '../data/Database';\nimport { toList } from '../types/List';\nimport { Json } from '../types/Json';\n\nexport class Table extends Mapper {\n protected readonly map = {\n ...mappings,\n column: <T = unknown>(name: string, options?: PropertyOptions<T>): Column => new Column(this, name, options),\n };\n\n readonly id = this.map.column('', { dflt: toUuid });\n\n constructor(options: MapOptions = { startFrom: 'source' }) {\n super(options);\n }\n\n get db(): Database {\n return Database.Default;\n }\n\n get count(): Count {\n return new Count(this);\n }\n\n /**\n * @deprecated Deprecated since version 6.2. Please use map.column instead.\n */\n prop = <T = unknown>(name: string, options?: PropertyOptions<T>): Column => this.map.column(name, options);\n\n select = (...columns: Column[]): Select => new Select(this, toList(columns));\n\n insert = (fields: Json): Insert => new Insert(this, this.out(fields));\n update = (fields: Json): Update => new Update(this, this.out(fields));\n delete = (): Delete => new Delete(this, toList());\n\n readonly join = (t: Table): Join => new Join(this, t);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcO,IAAM,QAAN,cAAoB,OAAO;AAAA,EACb,MAAM;AAAA,IACvB,GAAG;AAAA,IACH,QAAQ,CAAc,MAAc,YAAyC,IAAI,OAAO,MAAM,MAAM,OAAO;AAAA,EAC7G;AAAA,EAES,KAAK,KAAK,IAAI,OAAO,IAAI,EAAE,MAAM,OAAO,CAAC;AAAA,EAElD,YAAY,UAAsB,EAAE,WAAW,SAAS,GAAG;AACzD,UAAM,OAAO;AAAA,EACf;AAAA,EAEA,IAAI,KAAe;AACjB,WAAO,SAAS;AAAA,EAClB;AAAA,EAEA,IAAI,QAAe;AACjB,WAAO,IAAI,MAAM,IAAI;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,CAAc,MAAc,YAAyC,KAAK,IAAI,OAAO,MAAM,OAAO;AAAA,EAEzG,SAAS,IAAI,YAA8B,IAAI,OAAO,MAAM,OAAO,OAAO,CAAC;AAAA,EAE3E,SAAS,CAAC,WAAyB,IAAI,OAAO,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA,EACpE,SAAS,CAAC,WAAyB,IAAI,OAAO,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA,EACpE,SAAS,MAAc,IAAI,OAAO,MAAM,OAAO,CAAC;AAAA,EAEvC,OAAO,CAAC,MAAmB,IAAI,KAAK,MAAM,CAAC;AACtD;","names":[]}
@@ -1,20 +1,15 @@
1
1
  import {
2
2
  Gateway
3
- } from "../chunk-6RSZTLCP.mjs";
3
+ } from "../chunk-ESECEXXM.mjs";
4
4
  import {
5
5
  toPageList
6
- } from "../chunk-3BJH75JQ.mjs";
6
+ } from "../chunk-PQTYEEZC.mjs";
7
7
  import {
8
8
  when
9
- } from "../chunk-WIQKEALP.mjs";
10
- import "../chunk-OFGI5FLG.mjs";
11
- import "../chunk-MIYBZDW6.mjs";
12
- import "../chunk-6JA2EI2T.mjs";
9
+ } from "../chunk-ZBS4A3QI.mjs";
13
10
  import "../chunk-2EJYJ4HI.mjs";
14
- import "../chunk-VTEGCABM.mjs";
11
+ import "../chunk-OFGI5FLG.mjs";
15
12
  import "../chunk-WSBULPUZ.mjs";
16
- import "../chunk-HTHNHACU.mjs";
17
- import "../chunk-SOUOSMQ6.mjs";
18
13
  import "../chunk-AG3P2RCU.mjs";
19
14
  import "../chunk-MK2UX4IH.mjs";
20
15
  import "../chunk-ZKLQJX4N.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sql/TableGateway.ts"],"sourcesContent":["import { Table } from './Table';\nimport { PageList, PageOptions, toPageList } from '../types/PageList';\nimport { QueryProvider } from '../data/QueryProvider';\nimport { Gateway } from '../types/Gateway';\nimport { Json } from '../types/Json';\nimport { Id } from '../types/Id';\nimport { Optional } from '../types/Types';\nimport { ifDefined } from '../utils/If';\nimport { isDefined } from '../types/Is';\nimport { when } from '../validation/When';\n\nexport type TableOptions = PageOptions & { provider?: QueryProvider };\n\nexport class TableGateway<T extends Table> extends Gateway<PageOptions> {\n constructor(\n readonly table: T,\n readonly provider = table.db.provide<QueryProvider>()\n ) {\n super();\n }\n\n protected provide = ({ provider }: TableOptions = {}): QueryProvider => provider ?? this.provider;\n\n all(options?: TableOptions): Promise<PageList<Json>> {\n return this.provide(options)\n .query(this.table.select())\n .then(js =>\n toPageList(\n js.map(j => this.table.in(j)),\n options\n )\n );\n }\n\n byId(id: Id, options?: TableOptions): Promise<Optional<Json>> {\n return this.provide(options)\n .query(this.table.select().where(this.table.id.is(id)))\n .then(js => js.first())\n .then(j => ifDefined(j, this.table.in(j)));\n }\n\n exists(id: Id, options?: TableOptions): Promise<boolean> {\n return this.byId(id).then(j => isDefined(j));\n }\n\n add(item: Json, options?: TableOptions): Promise<Json> {\n return this.provide(options)\n .query(this.table.insert(item))\n .then(js => when(js.first()).not.isDefined.reject(`Could not add items with id ${item.id}`))\n .then(j => this.table.in(j));\n }\n\n remove(id: Id, options?: TableOptions): Promise<boolean> {\n return this.provide(options)\n .command(this.table.delete().where(this.table.id.is(id)))\n .then(() => true);\n }\n\n update(item: Json, options?: TableOptions): Promise<Json> {\n return this.provide(options)\n .query(this.table.update(item).where(this.table.id.is(item.id)))\n .then(js => when(js.first()).not.isDefined.reject(`Could not update item with id ${item.id}`))\n .then(j => this.table.in(j));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaO,IAAM,eAAN,cAA4C,QAAqB;AAAA,EACtE,YACW,OACA,WAAW,MAAM,GAAG,QAAuB,GACpD;AACA,UAAM;AAHG;AACA;AAAA,EAGX;AAAA,EAEU,UAAU,CAAC,EAAE,SAAS,IAAkB,CAAC,MAAqB,YAAY,KAAK;AAAA,EAEzF,IAAI,SAAiD;AACnD,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,CAAC,EACzB;AAAA,MAAK,QACJ;AAAA,QACE,GAAG,IAAI,OAAK,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,QAC5B;AAAA,MACF;AAAA,IACF;AAAA,EACJ;AAAA,EAEA,KAAK,IAAQ,SAAiD;AAC5D,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,EACrD,KAAK,QAAM,GAAG,MAAM,CAAC,EACrB,KAAK,OAAK,UAAU,GAAG,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC;AAAA,EAC7C;AAAA,EAEA,OAAO,IAAQ,SAA0C;AACvD,WAAO,KAAK,KAAK,EAAE,EAAE,KAAK,OAAK,UAAU,CAAC,CAAC;AAAA,EAC7C;AAAA,EAEA,IAAI,MAAY,SAAuC;AACrD,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,IAAI,CAAC,EAC7B,KAAK,QAAM,KAAK,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,OAAO,+BAA+B,KAAK,EAAE,EAAE,CAAC,EAC1F,KAAK,OAAK,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,EAC/B;AAAA,EAEA,OAAO,IAAQ,SAA0C;AACvD,WAAO,KAAK,QAAQ,OAAO,EACxB,QAAQ,KAAK,MAAM,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,EACvD,KAAK,MAAM,IAAI;AAAA,EACpB;AAAA,EAEA,OAAO,MAAY,SAAuC;AACxD,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC,EAC9D,KAAK,QAAM,KAAK,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,OAAO,iCAAiC,KAAK,EAAE,EAAE,CAAC,EAC5F,KAAK,OAAK,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,EAC/B;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/sql/TableGateway.ts"],"sourcesContent":["import { Table } from './Table';\nimport { PageList, PageOptions, toPageList } from '../types/PageList';\nimport { QueryProvider } from '../data/QueryProvider';\nimport { Gateway } from '../types/Gateway';\nimport { Json } from '../types/Json';\nimport { Id } from '../types/Id';\nimport { Optional } from '../types/Types';\nimport { ifDefined } from '../utils/If';\nimport { isDefined } from '../types/Is';\nimport { when } from '../validation/When';\n\nexport type TableOptions = PageOptions & { provider?: QueryProvider };\n\nexport class TableGateway<T extends Table> extends Gateway<PageOptions> {\n constructor(\n readonly table: T,\n readonly provider = table.db.provide<QueryProvider>()\n ) {\n super();\n }\n\n protected provide = ({ provider }: TableOptions = {}): QueryProvider => provider ?? this.provider;\n\n all(options?: TableOptions): Promise<PageList<Json>> {\n return this.provide(options)\n .query(this.table.select())\n .then(js =>\n toPageList(\n js.map(j => this.table.in(j)),\n options\n )\n );\n }\n\n byId(id: Id, options?: TableOptions): Promise<Optional<Json>> {\n return this.provide(options)\n .query(this.table.select().where(this.table.id.is(id)))\n .then(js => js.first())\n .then(j => ifDefined(j, this.table.in(j)));\n }\n\n exists(id: Id, options?: TableOptions): Promise<boolean> {\n return this.byId(id).then(j => isDefined(j));\n }\n\n add(item: Json, options?: TableOptions): Promise<Json> {\n return this.provide(options)\n .query(this.table.insert(item))\n .then(js => when(js.first()).not.isDefined.reject(`Could not add items with id ${item.id}`))\n .then(j => this.table.in(j));\n }\n\n remove(id: Id, options?: TableOptions): Promise<boolean> {\n return this.provide(options)\n .command(this.table.delete().where(this.table.id.is(id)))\n .then(() => true);\n }\n\n update(item: Json, options?: TableOptions): Promise<Json> {\n return this.provide(options)\n .query(this.table.update(item).where(this.table.id.is(item.id)))\n .then(js => when(js.first()).not.isDefined.reject(`Could not update item with id ${item.id}`))\n .then(j => this.table.in(j));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaO,IAAM,eAAN,cAA4C,QAAqB;AAAA,EACtE,YACW,OACA,WAAW,MAAM,GAAG,QAAuB,GACpD;AACA,UAAM;AAHG;AACA;AAAA,EAGX;AAAA,EAEU,UAAU,CAAC,EAAE,SAAS,IAAkB,CAAC,MAAqB,YAAY,KAAK;AAAA,EAEzF,IAAI,SAAiD;AACnD,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,CAAC,EACzB;AAAA,MAAK,QACJ;AAAA,QACE,GAAG,IAAI,OAAK,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,QAC5B;AAAA,MACF;AAAA,IACF;AAAA,EACJ;AAAA,EAEA,KAAK,IAAQ,SAAiD;AAC5D,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,EACrD,KAAK,QAAM,GAAG,MAAM,CAAC,EACrB,KAAK,OAAK,UAAU,GAAG,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC;AAAA,EAC7C;AAAA,EAEA,OAAO,IAAQ,SAA0C;AACvD,WAAO,KAAK,KAAK,EAAE,EAAE,KAAK,OAAK,UAAU,CAAC,CAAC;AAAA,EAC7C;AAAA,EAEA,IAAI,MAAY,SAAuC;AACrD,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,IAAI,CAAC,EAC7B,KAAK,QAAM,KAAK,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,OAAO,+BAA+B,KAAK,EAAE,EAAE,CAAC,EAC1F,KAAK,OAAK,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,EAC/B;AAAA,EAEA,OAAO,IAAQ,SAA0C;AACvD,WAAO,KAAK,QAAQ,OAAO,EACxB,QAAQ,KAAK,MAAM,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,EACvD,KAAK,MAAM,IAAI;AAAA,EACpB;AAAA,EAEA,OAAO,MAAY,SAAuC;AACxD,WAAO,KAAK,QAAQ,OAAO,EACxB,MAAM,KAAK,MAAM,OAAO,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC,EAC9D,KAAK,QAAM,KAAK,GAAG,MAAM,CAAC,EAAE,IAAI,UAAU,OAAO,iCAAiC,KAAK,EAAE,EAAE,CAAC,EAC5F,KAAK,OAAK,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,EAC/B;AACF;","names":[]}
@@ -1,17 +1,12 @@
1
1
  import {
2
2
  cacheAge,
3
3
  isCacheAge
4
- } from "../chunk-5O2BGB5V.mjs";
5
- import "../chunk-HI2JE5PJ.mjs";
6
- import "../chunk-WIQKEALP.mjs";
7
- import "../chunk-OFGI5FLG.mjs";
8
- import "../chunk-MIYBZDW6.mjs";
9
- import "../chunk-6JA2EI2T.mjs";
4
+ } from "../chunk-LAY4XDIL.mjs";
5
+ import "../chunk-XAIZBTVQ.mjs";
6
+ import "../chunk-ZBS4A3QI.mjs";
10
7
  import "../chunk-2EJYJ4HI.mjs";
11
- import "../chunk-VTEGCABM.mjs";
8
+ import "../chunk-OFGI5FLG.mjs";
12
9
  import "../chunk-WSBULPUZ.mjs";
13
- import "../chunk-HTHNHACU.mjs";
14
- import "../chunk-SOUOSMQ6.mjs";
15
10
  import "../chunk-AG3P2RCU.mjs";
16
11
  import "../chunk-MK2UX4IH.mjs";
17
12
  import "../chunk-ZKLQJX4N.mjs";