@thisisagile/easy 17.30.6 → 17.30.7

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 (109) hide show
  1. package/dist/{chunk-BZQBHD46.mjs → chunk-2MNT7B4T.mjs} +4 -4
  2. package/dist/{chunk-26EAXSRC.mjs → chunk-3BJH75JQ.mjs} +2 -2
  3. package/dist/{chunk-LVFZNHRN.mjs → chunk-5O2BGB5V.mjs} +3 -3
  4. package/dist/{chunk-MSV2376G.mjs → chunk-6JA2EI2T.mjs} +2 -2
  5. package/dist/{chunk-GMXT7KMA.mjs → chunk-6PR3OZQP.mjs} +3 -3
  6. package/dist/{chunk-LYMVCDQQ.mjs → chunk-6RSZTLCP.mjs} +2 -2
  7. package/dist/{chunk-L6BV4YY6.mjs → chunk-DV7PHOM6.mjs} +3 -3
  8. package/dist/{chunk-266QN2OA.mjs → chunk-DY33LKDP.mjs} +2 -2
  9. package/dist/{chunk-N6426VKQ.mjs → chunk-GJL7E2EJ.mjs} +2 -2
  10. package/dist/{chunk-ABF4LKKJ.mjs → chunk-GQ7XGATB.mjs} +6 -6
  11. package/dist/{chunk-CZW4O43O.mjs → chunk-HI2JE5PJ.mjs} +2 -2
  12. package/dist/{chunk-WAGRV5DZ.mjs → chunk-HTHNHACU.mjs} +2 -2
  13. package/dist/{chunk-NE6D5LD6.mjs → chunk-IYFZMJYO.mjs} +4 -4
  14. package/dist/{chunk-A37Z5B6K.mjs → chunk-LKBFD66J.mjs} +3 -3
  15. package/dist/{chunk-NOAHFVHL.mjs → chunk-MIYBZDW6.mjs} +2 -2
  16. package/dist/{chunk-JCSHKCHV.mjs → chunk-NIWK2A5T.mjs} +8 -8
  17. package/dist/{chunk-UYRY7EZ4.mjs → chunk-OOWOFPDC.mjs} +2 -2
  18. package/dist/{chunk-EZPDFEGN.mjs → chunk-PIZ7IORV.mjs} +2 -2
  19. package/dist/{chunk-DJIFXVXI.mjs → chunk-PKA5XEUC.mjs} +3 -3
  20. package/dist/{chunk-RZPP5MB5.mjs → chunk-PZFHPGDR.mjs} +2 -2
  21. package/dist/{chunk-27RKPSVR.mjs → chunk-QSB4QYYE.mjs} +2 -2
  22. package/dist/{chunk-N54W6R2R.mjs → chunk-SOUOSMQ6.mjs} +2 -1
  23. package/dist/chunk-SOUOSMQ6.mjs.map +1 -0
  24. package/dist/{chunk-VREU4DWW.mjs → chunk-TYH6CVJL.mjs} +4 -4
  25. package/dist/{chunk-XJMQ22GX.mjs → chunk-UNU355PL.mjs} +2 -2
  26. package/dist/{chunk-YMZQ7MVB.mjs → chunk-VTEGCABM.mjs} +2 -2
  27. package/dist/{chunk-457AXEIG.mjs → chunk-WIQKEALP.mjs} +5 -5
  28. package/dist/{chunk-URZDHOMW.mjs → chunk-X24AKSPO.mjs} +2 -2
  29. package/dist/data/InMemoryGateway.mjs +8 -8
  30. package/dist/domain/Audit.mjs +10 -10
  31. package/dist/domain/Child.mjs +8 -8
  32. package/dist/domain/DateTime.mjs +7 -7
  33. package/dist/domain/Entity.mjs +10 -10
  34. package/dist/domain/Repo.mjs +7 -7
  35. package/dist/domain/Struct.mjs +7 -7
  36. package/dist/domain/Typo.mjs +7 -7
  37. package/dist/http/CacheControl.mjs +8 -8
  38. package/dist/http/LocalRequestStore.mjs +2 -2
  39. package/dist/http/RequestOptions.mjs +3 -3
  40. package/dist/http/RestResult.mjs +7 -7
  41. package/dist/http/toResponse.mjs +8 -8
  42. package/dist/index.js +1 -0
  43. package/dist/index.js.map +1 -1
  44. package/dist/process/App.mjs +2 -2
  45. package/dist/process/Manage.mjs +8 -8
  46. package/dist/process/Scope.mjs +2 -2
  47. package/dist/process/Search.mjs +8 -8
  48. package/dist/process/UseCase.mjs +1 -1
  49. package/dist/resources/Req.mjs +7 -7
  50. package/dist/services/Api.mjs +13 -13
  51. package/dist/services/ApiGateway.mjs +16 -16
  52. package/dist/services/AxiosProvider.mjs +12 -12
  53. package/dist/services/MappedRouteGateway.mjs +17 -17
  54. package/dist/services/RouteGateway.mjs +17 -17
  55. package/dist/services/ViewRouteGateway.mjs +19 -19
  56. package/dist/sql/Column.mjs +7 -7
  57. package/dist/sql/Table.mjs +7 -7
  58. package/dist/sql/TableGateway.mjs +8 -8
  59. package/dist/types/CacheAge.mjs +8 -8
  60. package/dist/types/Case.mjs +6 -6
  61. package/dist/types/Context.mjs +2 -2
  62. package/dist/types/Exception.mjs +2 -2
  63. package/dist/types/Gateway.mjs +3 -3
  64. package/dist/types/IsEqual.mjs +7 -7
  65. package/dist/types/Number.mjs +7 -7
  66. package/dist/types/PageList.mjs +7 -7
  67. package/dist/types/Parser.mjs +6 -6
  68. package/dist/types/Repository.mjs +3 -3
  69. package/dist/types/Result.mjs +3 -3
  70. package/dist/types/Results.mjs +4 -4
  71. package/dist/types/Template.mjs +1 -1
  72. package/dist/types/ToText.d.ts +1 -0
  73. package/dist/types/ToText.mjs +1 -1
  74. package/dist/types/Try.mjs +6 -6
  75. package/dist/types/Uri.mjs +6 -6
  76. package/dist/utils/Sentence.mjs +1 -1
  77. package/dist/utils/View.mjs +9 -9
  78. package/dist/validation/Contraints.mjs +7 -7
  79. package/dist/validation/Validate.mjs +6 -6
  80. package/dist/validation/When.mjs +6 -6
  81. package/package.json +1 -1
  82. package/src/types/ToText.ts +2 -0
  83. package/dist/chunk-N54W6R2R.mjs.map +0 -1
  84. /package/dist/{chunk-BZQBHD46.mjs.map → chunk-2MNT7B4T.mjs.map} +0 -0
  85. /package/dist/{chunk-26EAXSRC.mjs.map → chunk-3BJH75JQ.mjs.map} +0 -0
  86. /package/dist/{chunk-LVFZNHRN.mjs.map → chunk-5O2BGB5V.mjs.map} +0 -0
  87. /package/dist/{chunk-MSV2376G.mjs.map → chunk-6JA2EI2T.mjs.map} +0 -0
  88. /package/dist/{chunk-GMXT7KMA.mjs.map → chunk-6PR3OZQP.mjs.map} +0 -0
  89. /package/dist/{chunk-LYMVCDQQ.mjs.map → chunk-6RSZTLCP.mjs.map} +0 -0
  90. /package/dist/{chunk-L6BV4YY6.mjs.map → chunk-DV7PHOM6.mjs.map} +0 -0
  91. /package/dist/{chunk-266QN2OA.mjs.map → chunk-DY33LKDP.mjs.map} +0 -0
  92. /package/dist/{chunk-N6426VKQ.mjs.map → chunk-GJL7E2EJ.mjs.map} +0 -0
  93. /package/dist/{chunk-ABF4LKKJ.mjs.map → chunk-GQ7XGATB.mjs.map} +0 -0
  94. /package/dist/{chunk-CZW4O43O.mjs.map → chunk-HI2JE5PJ.mjs.map} +0 -0
  95. /package/dist/{chunk-WAGRV5DZ.mjs.map → chunk-HTHNHACU.mjs.map} +0 -0
  96. /package/dist/{chunk-NE6D5LD6.mjs.map → chunk-IYFZMJYO.mjs.map} +0 -0
  97. /package/dist/{chunk-A37Z5B6K.mjs.map → chunk-LKBFD66J.mjs.map} +0 -0
  98. /package/dist/{chunk-NOAHFVHL.mjs.map → chunk-MIYBZDW6.mjs.map} +0 -0
  99. /package/dist/{chunk-JCSHKCHV.mjs.map → chunk-NIWK2A5T.mjs.map} +0 -0
  100. /package/dist/{chunk-UYRY7EZ4.mjs.map → chunk-OOWOFPDC.mjs.map} +0 -0
  101. /package/dist/{chunk-EZPDFEGN.mjs.map → chunk-PIZ7IORV.mjs.map} +0 -0
  102. /package/dist/{chunk-DJIFXVXI.mjs.map → chunk-PKA5XEUC.mjs.map} +0 -0
  103. /package/dist/{chunk-RZPP5MB5.mjs.map → chunk-PZFHPGDR.mjs.map} +0 -0
  104. /package/dist/{chunk-27RKPSVR.mjs.map → chunk-QSB4QYYE.mjs.map} +0 -0
  105. /package/dist/{chunk-VREU4DWW.mjs.map → chunk-TYH6CVJL.mjs.map} +0 -0
  106. /package/dist/{chunk-XJMQ22GX.mjs.map → chunk-UNU355PL.mjs.map} +0 -0
  107. /package/dist/{chunk-YMZQ7MVB.mjs.map → chunk-VTEGCABM.mjs.map} +0 -0
  108. /package/dist/{chunk-457AXEIG.mjs.map → chunk-WIQKEALP.mjs.map} +0 -0
  109. /package/dist/{chunk-URZDHOMW.mjs.map → chunk-X24AKSPO.mjs.map} +0 -0
@@ -5,16 +5,16 @@ import {
5
5
  toFilter,
6
6
  toPageList,
7
7
  toShortFilter
8
- } from "../chunk-26EAXSRC.mjs";
9
- import "../chunk-457AXEIG.mjs";
8
+ } from "../chunk-3BJH75JQ.mjs";
9
+ import "../chunk-WIQKEALP.mjs";
10
10
  import "../chunk-OFGI5FLG.mjs";
11
- import "../chunk-NOAHFVHL.mjs";
12
- import "../chunk-MSV2376G.mjs";
11
+ import "../chunk-MIYBZDW6.mjs";
12
+ import "../chunk-6JA2EI2T.mjs";
13
13
  import "../chunk-2EJYJ4HI.mjs";
14
- import "../chunk-YMZQ7MVB.mjs";
14
+ import "../chunk-VTEGCABM.mjs";
15
15
  import "../chunk-WSBULPUZ.mjs";
16
- import "../chunk-WAGRV5DZ.mjs";
17
- import "../chunk-N54W6R2R.mjs";
16
+ import "../chunk-HTHNHACU.mjs";
17
+ import "../chunk-SOUOSMQ6.mjs";
18
18
  import "../chunk-AG3P2RCU.mjs";
19
19
  import "../chunk-MK2UX4IH.mjs";
20
20
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  isValid
3
- } from "../chunk-457AXEIG.mjs";
3
+ } from "../chunk-WIQKEALP.mjs";
4
4
  import "../chunk-OFGI5FLG.mjs";
5
- import "../chunk-NOAHFVHL.mjs";
6
- import "../chunk-MSV2376G.mjs";
5
+ import "../chunk-MIYBZDW6.mjs";
6
+ import "../chunk-6JA2EI2T.mjs";
7
7
  import "../chunk-2EJYJ4HI.mjs";
8
- import "../chunk-YMZQ7MVB.mjs";
8
+ import "../chunk-VTEGCABM.mjs";
9
9
  import "../chunk-WSBULPUZ.mjs";
10
- import "../chunk-WAGRV5DZ.mjs";
11
- import "../chunk-N54W6R2R.mjs";
10
+ import "../chunk-HTHNHACU.mjs";
11
+ import "../chunk-SOUOSMQ6.mjs";
12
12
  import "../chunk-AG3P2RCU.mjs";
13
13
  import "../chunk-MK2UX4IH.mjs";
14
14
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Repository
3
- } from "../chunk-N6426VKQ.mjs";
3
+ } from "../chunk-GJL7E2EJ.mjs";
4
4
  import "../chunk-2EJYJ4HI.mjs";
5
- import "../chunk-YMZQ7MVB.mjs";
6
- import "../chunk-N54W6R2R.mjs";
5
+ import "../chunk-VTEGCABM.mjs";
6
+ import "../chunk-SOUOSMQ6.mjs";
7
7
  import "../chunk-AG3P2RCU.mjs";
8
8
  import "../chunk-MK2UX4IH.mjs";
9
9
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  isResult,
3
3
  toResult
4
- } from "../chunk-MSV2376G.mjs";
5
- import "../chunk-WAGRV5DZ.mjs";
6
- import "../chunk-N54W6R2R.mjs";
4
+ } from "../chunk-6JA2EI2T.mjs";
5
+ import "../chunk-HTHNHACU.mjs";
6
+ import "../chunk-SOUOSMQ6.mjs";
7
7
  import "../chunk-ZKLQJX4N.mjs";
8
8
  import "../chunk-HOVTNDHS.mjs";
9
9
  import "../chunk-SSROJBD5.mjs";
@@ -2,10 +2,10 @@ import {
2
2
  Results,
3
3
  isResults,
4
4
  toResults
5
- } from "../chunk-NOAHFVHL.mjs";
6
- import "../chunk-MSV2376G.mjs";
7
- import "../chunk-WAGRV5DZ.mjs";
8
- import "../chunk-N54W6R2R.mjs";
5
+ } from "../chunk-MIYBZDW6.mjs";
6
+ import "../chunk-6JA2EI2T.mjs";
7
+ import "../chunk-HTHNHACU.mjs";
8
+ import "../chunk-SOUOSMQ6.mjs";
9
9
  import "../chunk-ZKLQJX4N.mjs";
10
10
  import "../chunk-HOVTNDHS.mjs";
11
11
  import "../chunk-SSROJBD5.mjs";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Template,
3
3
  template
4
- } from "../chunk-N54W6R2R.mjs";
4
+ } from "../chunk-SOUOSMQ6.mjs";
5
5
  import "../chunk-ZKLQJX4N.mjs";
6
6
  import "../chunk-HOVTNDHS.mjs";
7
7
  import "../chunk-SSROJBD5.mjs";
@@ -27,6 +27,7 @@ export declare class ToText implements Text {
27
27
  parse: (subject: unknown, options?: {}) => ToText;
28
28
  is: (...others: unknown[]) => boolean;
29
29
  equals: (...others: unknown[]) => boolean;
30
+ like: (...others: unknown[]) => boolean;
30
31
  isLike: (...others: unknown[]) => boolean;
31
32
  ifLike: (...others: unknown[]) => Optional<this>;
32
33
  endsWith: (end?: unknown) => boolean;
@@ -2,7 +2,7 @@ import {
2
2
  ToText,
3
3
  text,
4
4
  textValue
5
- } from "../chunk-N54W6R2R.mjs";
5
+ } from "../chunk-SOUOSMQ6.mjs";
6
6
  import "../chunk-ZKLQJX4N.mjs";
7
7
  import "../chunk-HOVTNDHS.mjs";
8
8
  import "../chunk-SSROJBD5.mjs";
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  Try,
3
3
  tryTo
4
- } from "../chunk-457AXEIG.mjs";
4
+ } from "../chunk-WIQKEALP.mjs";
5
5
  import "../chunk-OFGI5FLG.mjs";
6
- import "../chunk-NOAHFVHL.mjs";
7
- import "../chunk-MSV2376G.mjs";
6
+ import "../chunk-MIYBZDW6.mjs";
7
+ import "../chunk-6JA2EI2T.mjs";
8
8
  import "../chunk-2EJYJ4HI.mjs";
9
- import "../chunk-YMZQ7MVB.mjs";
9
+ import "../chunk-VTEGCABM.mjs";
10
10
  import "../chunk-WSBULPUZ.mjs";
11
- import "../chunk-WAGRV5DZ.mjs";
12
- import "../chunk-N54W6R2R.mjs";
11
+ import "../chunk-HTHNHACU.mjs";
12
+ import "../chunk-SOUOSMQ6.mjs";
13
13
  import "../chunk-AG3P2RCU.mjs";
14
14
  import "../chunk-MK2UX4IH.mjs";
15
15
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  tryTo
3
- } from "../chunk-457AXEIG.mjs";
3
+ } from "../chunk-WIQKEALP.mjs";
4
4
  import "../chunk-OFGI5FLG.mjs";
5
- import "../chunk-NOAHFVHL.mjs";
6
- import "../chunk-MSV2376G.mjs";
5
+ import "../chunk-MIYBZDW6.mjs";
6
+ import "../chunk-6JA2EI2T.mjs";
7
7
  import "../chunk-2EJYJ4HI.mjs";
8
- import "../chunk-YMZQ7MVB.mjs";
8
+ import "../chunk-VTEGCABM.mjs";
9
9
  import "../chunk-WSBULPUZ.mjs";
10
10
  import {
11
11
  ctx
12
- } from "../chunk-WAGRV5DZ.mjs";
13
- import "../chunk-N54W6R2R.mjs";
12
+ } from "../chunk-HTHNHACU.mjs";
13
+ import "../chunk-SOUOSMQ6.mjs";
14
14
  import "../chunk-AG3P2RCU.mjs";
15
15
  import {
16
16
  meta
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  text
3
- } from "../chunk-N54W6R2R.mjs";
3
+ } from "../chunk-SOUOSMQ6.mjs";
4
4
  import "../chunk-ZKLQJX4N.mjs";
5
5
  import "../chunk-HOVTNDHS.mjs";
6
6
  import "../chunk-SSROJBD5.mjs";
@@ -4,19 +4,19 @@ import {
4
4
  toViewer,
5
5
  view,
6
6
  views
7
- } from "../chunk-BZQBHD46.mjs";
8
- import "../chunk-RZPP5MB5.mjs";
9
- import "../chunk-26EAXSRC.mjs";
7
+ } from "../chunk-2MNT7B4T.mjs";
8
+ import "../chunk-PZFHPGDR.mjs";
9
+ import "../chunk-3BJH75JQ.mjs";
10
10
  import "../chunk-YQC25ZQ4.mjs";
11
- import "../chunk-457AXEIG.mjs";
11
+ import "../chunk-WIQKEALP.mjs";
12
12
  import "../chunk-OFGI5FLG.mjs";
13
- import "../chunk-NOAHFVHL.mjs";
14
- import "../chunk-MSV2376G.mjs";
13
+ import "../chunk-MIYBZDW6.mjs";
14
+ import "../chunk-6JA2EI2T.mjs";
15
15
  import "../chunk-2EJYJ4HI.mjs";
16
- import "../chunk-YMZQ7MVB.mjs";
16
+ import "../chunk-VTEGCABM.mjs";
17
17
  import "../chunk-WSBULPUZ.mjs";
18
- import "../chunk-WAGRV5DZ.mjs";
19
- import "../chunk-N54W6R2R.mjs";
18
+ import "../chunk-HTHNHACU.mjs";
19
+ import "../chunk-SOUOSMQ6.mjs";
20
20
  import "../chunk-AG3P2RCU.mjs";
21
21
  import "../chunk-MK2UX4IH.mjs";
22
22
  import "../chunk-ZKLQJX4N.mjs";
@@ -17,17 +17,17 @@ import {
17
17
  required,
18
18
  rule,
19
19
  valid
20
- } from "../chunk-A37Z5B6K.mjs";
20
+ } from "../chunk-LKBFD66J.mjs";
21
21
  import "../chunk-ADJAEGCT.mjs";
22
- import "../chunk-457AXEIG.mjs";
22
+ import "../chunk-WIQKEALP.mjs";
23
23
  import "../chunk-OFGI5FLG.mjs";
24
- import "../chunk-NOAHFVHL.mjs";
25
- import "../chunk-MSV2376G.mjs";
24
+ import "../chunk-MIYBZDW6.mjs";
25
+ import "../chunk-6JA2EI2T.mjs";
26
26
  import "../chunk-2EJYJ4HI.mjs";
27
- import "../chunk-YMZQ7MVB.mjs";
27
+ import "../chunk-VTEGCABM.mjs";
28
28
  import "../chunk-WSBULPUZ.mjs";
29
- import "../chunk-WAGRV5DZ.mjs";
30
- import "../chunk-N54W6R2R.mjs";
29
+ import "../chunk-HTHNHACU.mjs";
30
+ import "../chunk-SOUOSMQ6.mjs";
31
31
  import "../chunk-AG3P2RCU.mjs";
32
32
  import "../chunk-MK2UX4IH.mjs";
33
33
  import "../chunk-ZKLQJX4N.mjs";
@@ -3,15 +3,15 @@ import {
3
3
  isValid,
4
4
  validate,
5
5
  validateReject
6
- } from "../chunk-457AXEIG.mjs";
6
+ } from "../chunk-WIQKEALP.mjs";
7
7
  import "../chunk-OFGI5FLG.mjs";
8
- import "../chunk-NOAHFVHL.mjs";
9
- import "../chunk-MSV2376G.mjs";
8
+ import "../chunk-MIYBZDW6.mjs";
9
+ import "../chunk-6JA2EI2T.mjs";
10
10
  import "../chunk-2EJYJ4HI.mjs";
11
- import "../chunk-YMZQ7MVB.mjs";
11
+ import "../chunk-VTEGCABM.mjs";
12
12
  import "../chunk-WSBULPUZ.mjs";
13
- import "../chunk-WAGRV5DZ.mjs";
14
- import "../chunk-N54W6R2R.mjs";
13
+ import "../chunk-HTHNHACU.mjs";
14
+ import "../chunk-SOUOSMQ6.mjs";
15
15
  import "../chunk-AG3P2RCU.mjs";
16
16
  import "../chunk-MK2UX4IH.mjs";
17
17
  import "../chunk-ZKLQJX4N.mjs";
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  When,
3
3
  when
4
- } from "../chunk-457AXEIG.mjs";
4
+ } from "../chunk-WIQKEALP.mjs";
5
5
  import "../chunk-OFGI5FLG.mjs";
6
- import "../chunk-NOAHFVHL.mjs";
7
- import "../chunk-MSV2376G.mjs";
6
+ import "../chunk-MIYBZDW6.mjs";
7
+ import "../chunk-6JA2EI2T.mjs";
8
8
  import "../chunk-2EJYJ4HI.mjs";
9
- import "../chunk-YMZQ7MVB.mjs";
9
+ import "../chunk-VTEGCABM.mjs";
10
10
  import "../chunk-WSBULPUZ.mjs";
11
- import "../chunk-WAGRV5DZ.mjs";
12
- import "../chunk-N54W6R2R.mjs";
11
+ import "../chunk-HTHNHACU.mjs";
12
+ import "../chunk-SOUOSMQ6.mjs";
13
13
  import "../chunk-AG3P2RCU.mjs";
14
14
  import "../chunk-MK2UX4IH.mjs";
15
15
  import "../chunk-ZKLQJX4N.mjs";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy",
3
- "version": "17.30.6",
3
+ "version": "17.30.7",
4
4
  "description": "Straightforward library for building domain-driven microservice architectures",
5
5
  "author": "Sander Hoogendoorn",
6
6
  "license": "MIT",
@@ -112,6 +112,8 @@ export class ToText implements Text {
112
112
 
113
113
  equals = this.is;
114
114
 
115
+ like = (...others: unknown[]): boolean => others.some(o => this.trim.lower.toString().includes(text(o).trim.lower.toString()));
116
+
115
117
  isLike = (...others: unknown[]): boolean => others.some(o => this.trim.lower.is(text(o).trim.lower));
116
118
 
117
119
  ifLike = (...others: unknown[]): Optional<this> => (this.isLike(...others) ? this : undefined);
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/types/ToText.ts","../src/types/Template.ts"],"sourcesContent":["import { asString, capitalize, replaceAll, Text } from './Text';\nimport { toName } from './Constructor';\nimport { Optional } from './Types';\nimport { Get, ofGet } from './Get';\nimport { isEmpty, isNotEmpty } from './Is';\nimport { List, toList } from './List';\nimport { JsonValue } from './Json';\nimport { template } from './Template';\n\nexport class ToText implements Text {\n constructor(readonly subject: string) {}\n\n get cap(): ToText {\n return this.map(s => capitalize(s?.toLowerCase()));\n }\n\n get capFirst(): ToText {\n return this.map(s => capitalize(s));\n }\n\n get title(): ToText {\n return this.map(s =>\n s\n .split(' ')\n .map(w => text(w).cap)\n .join(' ')\n );\n }\n\n get pascal(): ToText {\n return this.title.replace(' ', '');\n }\n\n get lower(): ToText {\n return this.map(s => s.toLowerCase());\n }\n\n get upper(): ToText {\n return this.map(s => s.toUpperCase());\n }\n\n get camel(): ToText {\n return this.title.trim.map(s => `${s.charAt(0).toLowerCase()}${s.slice(1)}`);\n }\n\n get kebab(): ToText {\n return this.lower.replace(' ', '-');\n }\n\n get strictKebab(): ToText {\n return this.map(s => s.replace(/[^a-z\\d]+/gi, ' ').trim()).kebab;\n }\n\n get slug(): ToText {\n return this.map(s =>\n s\n .replace(/ß/g, 'ss')\n .normalize('NFKD')\n .replace(/[\\u0300-\\u036F]/g, '')\n .toLowerCase()\n .replace(/[^a-z\\d]+/g, '-')\n .replace(/(^-)|(-$)/g, '')\n );\n }\n\n get snake(): ToText {\n return this.upper.replace(' ', '_');\n }\n\n get plural(): ToText {\n return this.ifLike('') ?? this.add('s');\n }\n\n get space(): ToText {\n return this.map(s => s.replace(/([a-z0-9])([A-Z])/g, '$1 $2').replace(/[_-]/g, ' '));\n }\n\n get sentence(): ToText {\n return this.isEmpty ? this : this.map(s => `${s.charAt(0).toUpperCase()}${s.slice(1)}.`);\n }\n\n get initials(): ToText {\n return this.map(s =>\n s\n .split(' ')\n .map(w => w[0])\n .join('')\n );\n }\n\n get trim(): ToText {\n return this.map(s => s.replace(/[- ,_#]/g, ''));\n }\n\n get trimSentence(): ToText {\n return this.map(s =>\n s\n .replace(/[\\u200B-\\u200D\\uFEFF]/g, '')\n .replace(/[\\s\\u00A0]+/g, ' ')\n .replace(/\\s+([.,;:!?])/g, '$1')\n .trim()\n );\n }\n\n get isEmpty(): boolean {\n return isEmpty(this.toString());\n }\n\n parse = (subject: unknown, options = {}): ToText => text(template(this.subject, subject, { type: toName(subject), ...options }));\n\n is = (...others: unknown[]): boolean => others.some(o => this.toString() === text(o).toString());\n\n equals = this.is;\n\n isLike = (...others: unknown[]): boolean => others.some(o => this.trim.lower.is(text(o).trim.lower));\n\n ifLike = (...others: unknown[]): Optional<this> => (this.isLike(...others) ? this : undefined);\n\n endsWith = (end?: unknown): boolean => this.subject.endsWith(asString(end));\n\n startsWith = (end?: unknown): boolean => this.subject.startsWith(asString(end));\n\n first = (n: number): ToText => this.map(s => s.substring(0, n));\n\n last = (n: number): ToText => this.map(s => s.substring(s.length - n));\n\n map = (func: Get<string, string>): ToText => text(ofGet(func, this.subject));\n\n replace = (search: Text, replace: Text): ToText => this.map(s => replaceAll(s, search, replace));\n\n add = (add?: unknown, separator = ''): ToText => this.map(s => (isNotEmpty(add) ? `${s}${separator}${text(add)}` : s));\n\n with = (separator: string, ...other: unknown[]): ToText =>\n this.map(s =>\n toList(s)\n .add(...other.map(u => text(u).toString()))\n .filter(s => isNotEmpty(s))\n .join(separator)\n );\n\n split = (separator: string = ' '): List<string> => toList(this.subject.split(separator));\n\n toString(): string {\n return this.subject;\n }\n\n toJSON(): JsonValue {\n return this.subject;\n }\n}\n\nexport function text(subject?: unknown, alt = ''): ToText {\n const sub = subject ? asString(subject) : alt;\n return new ToText(sub !== '[object Object]' ? sub : '');\n}\n\nexport function textValue(subject: any, prop: string): string {\n const p = prop.split('.');\n const root = subject?.[p[0]];\n const initial = typeof root === 'object' && root !== null ? root : text(root);\n return (\n p\n .splice(1)\n .reduce((t, s) => t?.[s], initial)\n ?.toString() ?? ''\n );\n}\n","import { List, toList } from './List';\nimport { asString, Text } from './Text';\nimport { toName } from './Constructor';\nimport { entries } from './Object';\nimport { text, textValue } from './ToText';\n\nexport type TemplateOptions = { type?: Text; property?: Text; actual?: Text; subject?: Text };\n\nexport class Template implements Text {\n constructor(\n private readonly template: string,\n private readonly subject: unknown = {},\n private readonly options: TemplateOptions = {}\n ) {}\n\n toString = (): string => {\n return entries(this.options)\n .reduce((t, [k]) => this.option(t, k), this.object())\n .replace(' ', ' ');\n };\n\n private readonly props = (tmpl: string, key: string, result: List<string> = toList()): string[] => {\n const i1 = tmpl.indexOf(`{${key}`);\n if (i1 < 0) {\n return result;\n }\n const i2 = tmpl.indexOf('}', i1);\n return this.props(tmpl.slice(i2 + 1), key, result.add(tmpl.substring(i1 + 1, i2)));\n };\n\n private readonly object = (): string => {\n return this.props(this.template, 'this').reduce((t: string, p) => t.replace(`{${p}}`, textValue(this.subject, p.replace('this.', ''))), this.template);\n };\n\n private readonly option = (tmpl: string, prop: string): string => {\n return this.props(tmpl, prop).reduce((t: string, p) => t.replace(`{${p}}`, textValue(this.options, p)), tmpl);\n };\n}\n\nexport function template(tmpl: Text, subject: unknown, options: TemplateOptions = {}): Text {\n return new Template(asString(tmpl), subject, {\n type: toName(subject),\n subject: text(JSON.stringify(subject)),\n ...options,\n });\n}\n"],"mappings":"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","names":["s","template"]}