@pax2pay/model-banking 0.1.582 → 0.1.583

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 (105) hide show
  1. package/Identifier.ts +2 -2
  2. package/Log/Entry.ts +7 -7
  3. package/Log/Locations.ts +7 -7
  4. package/Log/Message/Configuration.ts +7 -7
  5. package/Log/Message/Entry.ts +6 -6
  6. package/Log/index.ts +9 -9
  7. package/Realm.ts +3 -3
  8. package/User/Access/Permission.ts +7 -3
  9. package/User/Access/index.ts +9 -7
  10. package/User/JWT/Payload.ts +26 -27
  11. package/User/JWT/index.ts +2 -2
  12. package/User/Password.ts +3 -5
  13. package/User/index.ts +9 -29
  14. package/dist/cjs/Identifier.d.ts +2 -2
  15. package/dist/cjs/Identifier.js +2 -35
  16. package/dist/cjs/Identifier.js.map +1 -1
  17. package/dist/cjs/Log/Entry.d.ts +12 -12
  18. package/dist/cjs/Log/Entry.js +5 -38
  19. package/dist/cjs/Log/Entry.js.map +1 -1
  20. package/dist/cjs/Log/Locations.d.ts +8 -8
  21. package/dist/cjs/Log/Locations.js +6 -39
  22. package/dist/cjs/Log/Locations.js.map +1 -1
  23. package/dist/cjs/Log/Message/Configuration.d.ts +8 -8
  24. package/dist/cjs/Log/Message/Configuration.js +6 -39
  25. package/dist/cjs/Log/Message/Configuration.js.map +1 -1
  26. package/dist/cjs/Log/Message/Entry.d.ts +7 -7
  27. package/dist/cjs/Log/Message/Entry.js +5 -38
  28. package/dist/cjs/Log/Message/Entry.js.map +1 -1
  29. package/dist/cjs/Log/index.d.ts +14 -14
  30. package/dist/cjs/Log/index.js +8 -41
  31. package/dist/cjs/Log/index.js.map +1 -1
  32. package/dist/cjs/Realm.d.ts +3 -3
  33. package/dist/cjs/Realm.js +2 -35
  34. package/dist/cjs/Realm.js.map +1 -1
  35. package/dist/cjs/User/Access/Permission.d.ts +42 -6
  36. package/dist/cjs/User/Access/Permission.js +4 -0
  37. package/dist/cjs/User/Access/Permission.js.map +1 -1
  38. package/dist/cjs/User/Access/index.d.ts +80 -7
  39. package/dist/cjs/User/Access/index.js +8 -0
  40. package/dist/cjs/User/Access/index.js.map +1 -1
  41. package/dist/cjs/User/JWT/Payload.d.ts +234 -26
  42. package/dist/cjs/User/JWT/Payload.js +20 -4
  43. package/dist/cjs/User/JWT/Payload.js.map +1 -1
  44. package/dist/cjs/User/JWT/index.js +2 -2
  45. package/dist/cjs/User/JWT/index.js.map +1 -1
  46. package/dist/cjs/User/Password.d.ts +12 -6
  47. package/dist/cjs/User/Password.js +2 -0
  48. package/dist/cjs/User/Password.js.map +1 -1
  49. package/dist/cjs/User/index.d.ts +112 -10
  50. package/dist/cjs/User/index.js +6 -18
  51. package/dist/cjs/User/index.js.map +1 -1
  52. package/dist/cjs/pax2pay.d.ts +1 -0
  53. package/dist/cjs/pax2pay.js +3 -1
  54. package/dist/cjs/pax2pay.js.map +1 -1
  55. package/dist/cjs/zod.d.ts +12 -0
  56. package/dist/cjs/zod.js +52 -0
  57. package/dist/cjs/zod.js.map +1 -0
  58. package/dist/mjs/Identifier.d.ts +2 -2
  59. package/dist/mjs/Identifier.js +2 -2
  60. package/dist/mjs/Identifier.js.map +1 -1
  61. package/dist/mjs/Log/Entry.d.ts +12 -12
  62. package/dist/mjs/Log/Entry.js +5 -5
  63. package/dist/mjs/Log/Entry.js.map +1 -1
  64. package/dist/mjs/Log/Locations.d.ts +8 -8
  65. package/dist/mjs/Log/Locations.js +6 -6
  66. package/dist/mjs/Log/Locations.js.map +1 -1
  67. package/dist/mjs/Log/Message/Configuration.d.ts +8 -8
  68. package/dist/mjs/Log/Message/Configuration.js +6 -6
  69. package/dist/mjs/Log/Message/Configuration.js.map +1 -1
  70. package/dist/mjs/Log/Message/Entry.d.ts +7 -7
  71. package/dist/mjs/Log/Message/Entry.js +5 -5
  72. package/dist/mjs/Log/Message/Entry.js.map +1 -1
  73. package/dist/mjs/Log/index.d.ts +14 -14
  74. package/dist/mjs/Log/index.js +8 -8
  75. package/dist/mjs/Log/index.js.map +1 -1
  76. package/dist/mjs/Realm.d.ts +3 -3
  77. package/dist/mjs/Realm.js +2 -2
  78. package/dist/mjs/Realm.js.map +1 -1
  79. package/dist/mjs/User/Access/Permission.d.ts +42 -6
  80. package/dist/mjs/User/Access/Permission.js +4 -0
  81. package/dist/mjs/User/Access/Permission.js.map +1 -1
  82. package/dist/mjs/User/Access/index.d.ts +80 -7
  83. package/dist/mjs/User/Access/index.js +8 -0
  84. package/dist/mjs/User/Access/index.js.map +1 -1
  85. package/dist/mjs/User/JWT/Payload.d.ts +234 -26
  86. package/dist/mjs/User/JWT/Payload.js +20 -4
  87. package/dist/mjs/User/JWT/Payload.js.map +1 -1
  88. package/dist/mjs/User/JWT/index.js +2 -2
  89. package/dist/mjs/User/JWT/index.js.map +1 -1
  90. package/dist/mjs/User/Password.d.ts +12 -6
  91. package/dist/mjs/User/Password.js +2 -0
  92. package/dist/mjs/User/Password.js.map +1 -1
  93. package/dist/mjs/User/index.d.ts +112 -10
  94. package/dist/mjs/User/index.js +6 -18
  95. package/dist/mjs/User/index.js.map +1 -1
  96. package/dist/mjs/pax2pay.d.ts +1 -0
  97. package/dist/mjs/pax2pay.js +1 -0
  98. package/dist/mjs/pax2pay.js.map +1 -1
  99. package/dist/mjs/zod.d.ts +12 -0
  100. package/dist/mjs/zod.js +16 -0
  101. package/dist/mjs/zod.js.map +1 -0
  102. package/package.json +2 -2
  103. package/pax2pay.ts +1 -0
  104. package/tsconfig.json +1 -2
  105. package/zod.ts +20 -0
@@ -1,5 +1,6 @@
1
1
  import { isoly } from "isoly";
2
2
  import { Realm } from "../Realm";
3
+ import { zod } from "../zod";
3
4
  import { Access as UserAccess } from "./Access";
4
5
  import { Identity as UserIdentity } from "./Identity";
5
6
  import { JWT as UserJWT } from "./JWT";
@@ -20,12 +21,24 @@ export declare namespace User {
20
21
  export import Password = UserPassword;
21
22
  function fromInvite(invite: Invite): User;
22
23
  function toJWTPayloadCreatable(user: User, realm: Realm): User.JWT.Payload.Creatable;
23
- interface Creatable {
24
- invite: string;
25
- password: Password.Creatable;
26
- }
24
+ type Creatable = zod.infer<typeof Creatable.typeZod>;
27
25
  namespace Creatable {
28
- const type: import("isly/dist/cjs/object").IslyObject<Creatable, object>;
26
+ const type: import("isly/dist/cjs/object").IslyObject<{
27
+ invite: string;
28
+ password: {
29
+ new: string;
30
+ repeat: string;
31
+ current?: string | undefined;
32
+ };
33
+ }, object>;
34
+ const typeZod: zod.ZodObject<{
35
+ invite: zod.ZodString;
36
+ password: zod.ZodObject<{
37
+ current: zod.ZodOptional<zod.ZodString>;
38
+ new: zod.ZodString;
39
+ repeat: zod.ZodString;
40
+ }, zod.z.core.$strip>;
41
+ }, zod.z.core.$strip>;
29
42
  }
30
43
  interface Invite {
31
44
  id: string;
@@ -33,12 +46,101 @@ export declare namespace User {
33
46
  access: Access;
34
47
  }
35
48
  namespace Invite {
36
- interface Creatable {
37
- email: string;
38
- access: Access;
39
- }
49
+ type Creatable = zod.infer<typeof Creatable.typeZod>;
40
50
  namespace Creatable {
41
- const type: import("isly/dist/cjs/object").IslyObject<Creatable, object>;
51
+ const typeZod: zod.ZodObject<{
52
+ email: zod.ZodString;
53
+ access: zod.ZodObject<{
54
+ uk: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<{
55
+ rule: "rule";
56
+ card: "card";
57
+ organization: "organization";
58
+ transaction: "transaction";
59
+ settlement: "settlement";
60
+ user: "user";
61
+ log: "log";
62
+ operation: "operation";
63
+ "*": "*";
64
+ treasury: "treasury";
65
+ }> & zod.z.core.$partial, zod.ZodEnum<{
66
+ developer: "developer";
67
+ read: "read";
68
+ write: "write";
69
+ admin: "admin";
70
+ }>>>;
71
+ uguk: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<{
72
+ rule: "rule";
73
+ card: "card";
74
+ organization: "organization";
75
+ transaction: "transaction";
76
+ settlement: "settlement";
77
+ user: "user";
78
+ log: "log";
79
+ operation: "operation";
80
+ "*": "*";
81
+ treasury: "treasury";
82
+ }> & zod.z.core.$partial, zod.ZodEnum<{
83
+ developer: "developer";
84
+ read: "read";
85
+ write: "write";
86
+ admin: "admin";
87
+ }>>>;
88
+ eea: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<{
89
+ rule: "rule";
90
+ card: "card";
91
+ organization: "organization";
92
+ transaction: "transaction";
93
+ settlement: "settlement";
94
+ user: "user";
95
+ log: "log";
96
+ operation: "operation";
97
+ "*": "*";
98
+ treasury: "treasury";
99
+ }> & zod.z.core.$partial, zod.ZodEnum<{
100
+ developer: "developer";
101
+ read: "read";
102
+ write: "write";
103
+ admin: "admin";
104
+ }>>>;
105
+ test: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<{
106
+ rule: "rule";
107
+ card: "card";
108
+ organization: "organization";
109
+ transaction: "transaction";
110
+ settlement: "settlement";
111
+ user: "user";
112
+ log: "log";
113
+ operation: "operation";
114
+ "*": "*";
115
+ treasury: "treasury";
116
+ }> & zod.z.core.$partial, zod.ZodEnum<{
117
+ developer: "developer";
118
+ read: "read";
119
+ write: "write";
120
+ admin: "admin";
121
+ }>>>;
122
+ "*": zod.ZodOptional<zod.ZodObject<{
123
+ user: zod.ZodOptional<zod.ZodEnum<{
124
+ developer: "developer";
125
+ read: "read";
126
+ write: "write";
127
+ admin: "admin";
128
+ }>>;
129
+ }, zod.z.core.$strip>>;
130
+ }, zod.z.core.$strip>;
131
+ }, zod.z.core.$strip>;
132
+ const type: import("isly/dist/cjs/object").IslyObject<{
133
+ email: string;
134
+ access: {
135
+ uk?: Partial<Record<"rule" | "card" | "organization" | "transaction" | "settlement" | "user" | "log" | "operation" | "*" | "treasury", "developer" | "read" | "write" | "admin">> | undefined;
136
+ uguk?: Partial<Record<"rule" | "card" | "organization" | "transaction" | "settlement" | "user" | "log" | "operation" | "*" | "treasury", "developer" | "read" | "write" | "admin">> | undefined;
137
+ eea?: Partial<Record<"rule" | "card" | "organization" | "transaction" | "settlement" | "user" | "log" | "operation" | "*" | "treasury", "developer" | "read" | "write" | "admin">> | undefined;
138
+ test?: Partial<Record<"rule" | "card" | "organization" | "transaction" | "settlement" | "user" | "log" | "operation" | "*" | "treasury", "developer" | "read" | "write" | "admin">> | undefined;
139
+ "*"?: {
140
+ user?: "developer" | "read" | "write" | "admin" | undefined;
141
+ } | undefined;
142
+ };
143
+ }, object>;
42
144
  }
43
145
  }
44
146
  }
@@ -1,5 +1,6 @@
1
1
  import { isoly } from "isoly";
2
2
  import { isly } from "isly";
3
+ import { zod } from "../zod";
3
4
  import { Access as UserAccess } from "./Access";
4
5
  import { Identity as UserIdentity } from "./Identity";
5
6
  import { JWT as UserJWT } from "./JWT";
@@ -12,36 +13,23 @@ export var User;
12
13
  User.Password = UserPassword;
13
14
  function fromInvite(invite) {
14
15
  const now = isoly.DateTime.now();
15
- return {
16
- email: invite.email,
17
- access: invite.access,
18
- changed: now,
19
- created: now,
20
- password: {
21
- changed: now,
22
- },
23
- };
16
+ return { email: invite.email, access: invite.access, changed: now, created: now, password: { changed: now } };
24
17
  }
25
18
  User.fromInvite = fromInvite;
26
19
  function toJWTPayloadCreatable(user, realm) {
27
- return {
28
- sub: user.email,
29
- permission: { ...(user.access[realm] ?? {}), ...(user.access["*"] ?? {}) },
30
- realm,
31
- };
20
+ return { sub: user.email, permission: { ...(user.access[realm] ?? {}), ...(user.access["*"] ?? {}) }, realm };
32
21
  }
33
22
  User.toJWTPayloadCreatable = toJWTPayloadCreatable;
34
23
  let Creatable;
35
24
  (function (Creatable) {
36
- Creatable.type = isly.object({
37
- invite: isly.string(),
38
- password: User.Password.Creatable.type,
39
- });
25
+ Creatable.type = isly.object({ invite: isly.string(), password: User.Password.Creatable.type });
26
+ Creatable.typeZod = zod.object({ invite: zod.string(), password: User.Password.Creatable.typeZod });
40
27
  })(Creatable = User.Creatable || (User.Creatable = {}));
41
28
  let Invite;
42
29
  (function (Invite) {
43
30
  let Creatable;
44
31
  (function (Creatable) {
32
+ Creatable.typeZod = zod.object({ email: zod.string(), access: User.Access.typeZod });
45
33
  Creatable.type = isly.object({ email: isly.string(), access: User.Access.type });
46
34
  })(Creatable = Invite.Creatable || (Invite.Creatable = {}));
47
35
  })(Invite = User.Invite || (User.Invite = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../User/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,GAAG,IAAI,OAAO,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,YAAY,CAAA;AAWrD,MAAM,KAAW,IAAI,CAgDpB;AAhDD,WAAiB,IAAI;IACN,WAAM,GAAG,UAAU,CAAA;IACnB,aAAQ,GAAG,YAAY,CAAA;IACvB,QAAG,GAAG,OAAO,CAAA;IACb,aAAQ,GAAG,YAAY,CAAA;IACrC,SAAgB,UAAU,CAAC,MAAc;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;QAChC,OAAO;YACN,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,GAAG;YACZ,OAAO,EAAE,GAAG;YACZ,QAAQ,EAAE;gBACT,OAAO,EAAE,GAAG;aACZ;SACD,CAAA;IACF,CAAC;IAXe,eAAU,aAWzB,CAAA;IACD,SAAgB,qBAAqB,CAAC,IAAU,EAAE,KAAY;QAC7D,OAAO;YACN,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,UAAU,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE;YAC1E,KAAK;SACL,CAAA;IACF,CAAC;IANe,0BAAqB,wBAMpC,CAAA;IAKD,IAAiB,SAAS,CAKzB;IALD,WAAiB,SAAS;QACZ,cAAI,GAAG,IAAI,CAAC,MAAM,CAAY;YAC1C,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;YACrB,QAAQ,EAAE,KAAA,QAAQ,CAAC,SAAS,CAAC,IAAI;SACjC,CAAC,CAAA;IACH,CAAC,EALgB,SAAS,GAAT,cAAS,KAAT,cAAS,QAKzB;IAMD,IAAiB,MAAM,CAQtB;IARD,WAAiB,MAAM;QAKtB,IAAiB,SAAS,CAEzB;QAFD,WAAiB,SAAS;YACZ,cAAI,GAAG,IAAI,CAAC,MAAM,CAAY,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAA,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1F,CAAC,EAFgB,SAAS,GAAT,gBAAS,KAAT,gBAAS,QAEzB;IACF,CAAC,EARgB,MAAM,GAAN,WAAM,KAAN,WAAM,QAQtB;AACF,CAAC,EAhDgB,IAAI,KAAJ,IAAI,QAgDpB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../User/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,GAAG,IAAI,OAAO,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,YAAY,CAAA;AASrD,MAAM,KAAW,IAAI,CA6BpB;AA7BD,WAAiB,IAAI;IACN,WAAM,GAAG,UAAU,CAAA;IACnB,aAAQ,GAAG,YAAY,CAAA;IACvB,QAAG,GAAG,OAAO,CAAA;IACb,aAAQ,GAAG,YAAY,CAAA;IACrC,SAAgB,UAAU,CAAC,MAAc;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;QAChC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAA;IAC9G,CAAC;IAHe,eAAU,aAGzB,CAAA;IACD,SAAgB,qBAAqB,CAAC,IAAU,EAAE,KAAY;QAC7D,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,CAAA;IAC9G,CAAC;IAFe,0BAAqB,wBAEpC,CAAA;IAED,IAAiB,SAAS,CAGzB;IAHD,WAAiB,SAAS;QACZ,cAAI,GAAG,IAAI,CAAC,MAAM,CAAY,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAA,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA;QAC3F,iBAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAA,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAA;IAClG,CAAC,EAHgB,SAAS,GAAT,cAAS,KAAT,cAAS,QAGzB;IAMD,IAAiB,MAAM,CAMtB;IAND,WAAiB,MAAM;QAEtB,IAAiB,SAAS,CAGzB;QAHD,WAAiB,SAAS;YACZ,iBAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAA,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;YACrE,cAAI,GAAG,IAAI,CAAC,MAAM,CAAY,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAA,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1F,CAAC,EAHgB,SAAS,GAAT,gBAAS,KAAT,gBAAS,QAGzB;IACF,CAAC,EANgB,MAAM,GAAN,WAAM,KAAN,WAAM,QAMtB;AACF,CAAC,EA7BgB,IAAI,KAAJ,IAAI,QA6BpB"}
@@ -32,3 +32,4 @@ export { Treasury } from "./Treasury";
32
32
  export { User } from "./User";
33
33
  export { Warning } from "./Warning";
34
34
  export { Quarter } from "./Quarter";
35
+ export { zodHelper } from "./zod";
@@ -32,4 +32,5 @@ export { Treasury } from "./Treasury";
32
32
  export { User } from "./User";
33
33
  export { Warning } from "./Warning";
34
34
  export { Quarter } from "./Quarter";
35
+ export { zodHelper } from "./zod";
35
36
  //# sourceMappingURL=pax2pay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pax2pay.js","sourceRoot":"","sources":["../../pax2pay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA"}
1
+ {"version":3,"file":"pax2pay.js","sourceRoot":"","sources":["../../pax2pay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA"}
@@ -0,0 +1,12 @@
1
+ export * as zod from "zod";
2
+ import * as zod from "zod/v4";
3
+ import { $strip } from "zod/v4/core";
4
+ export declare namespace zodHelper {
5
+ type ExtraKeys<Schema, Type> = Exclude<keyof Schema, keyof Type>;
6
+ type ThrowIfExtraKeys<Schema, Type> = ExtraKeys<Schema, Type> extends never ? unknown : {
7
+ [key: string]: never;
8
+ };
9
+ export function fromType<Type>(): <Schema extends { [K in keyof Type]: zod.ZodType<Type[K]>; } & ThrowIfExtraKeys<Schema, Type>>(schema: Schema) => zod.ZodObject<Schema, $strip>;
10
+ export function is<T>(type: zod.ZodType<T>, value: unknown): value is T;
11
+ export {};
12
+ }
@@ -0,0 +1,16 @@
1
+ export * as zod from "zod";
2
+ import * as zod from "zod/v4";
3
+ export var zodHelper;
4
+ (function (zodHelper) {
5
+ function fromType() {
6
+ return (schema) => {
7
+ return zod.object(schema);
8
+ };
9
+ }
10
+ zodHelper.fromType = fromType;
11
+ function is(type, value) {
12
+ return type.safeParse(value).success;
13
+ }
14
+ zodHelper.is = is;
15
+ })(zodHelper || (zodHelper = {}));
16
+ //# sourceMappingURL=zod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod.js","sourceRoot":"","sources":["../../zod.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAA;AAC1B,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAA;AAG7B,MAAM,KAAW,SAAS,CAazB;AAbD,WAAiB,SAAS;IAGzB,SAAgB,QAAQ;QACvB,OAAO,CACN,MAAc,EACkB,EAAE;YAClC,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC1B,CAAC,CAAA;IACF,CAAC;IANe,kBAAQ,WAMvB,CAAA;IACD,SAAgB,EAAE,CAAI,IAAoB,EAAE,KAAc;QACzD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAA;IACrC,CAAC;IAFe,YAAE,KAEjB,CAAA;AACF,CAAC,EAbgB,SAAS,KAAT,SAAS,QAazB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pax2pay/model-banking",
3
- "version": "0.1.582",
3
+ "version": "0.1.583",
4
4
  "description": "Library containing data model types and functions for the Pax2Pay Banking API.",
5
5
  "author": "Pax2Pay Ltd",
6
6
  "license": "MIT",
@@ -69,6 +69,6 @@
69
69
  "selectively": "^2.0.15",
70
70
  "slackly": "0.0.6",
71
71
  "typedly": "0.0.27",
72
- "zod": "^4.1.13"
72
+ "zod": "4.1.13"
73
73
  }
74
74
  }
package/pax2pay.ts CHANGED
@@ -32,3 +32,4 @@ export { Treasury } from "./Treasury"
32
32
  export { User } from "./User"
33
33
  export { Warning } from "./Warning"
34
34
  export { Quarter } from "./Quarter"
35
+ export { zodHelper } from "./zod"
package/tsconfig.json CHANGED
@@ -16,7 +16,6 @@
16
16
  "resolveJsonModule": true,
17
17
  // "strict": true,
18
18
  "alwaysStrict": true,
19
- "baseUrl": ".",
20
19
  "allowSyntheticDefaultImports": true,
21
20
  "noImplicitAny": true,
22
21
  "removeComments": true,
@@ -33,7 +32,7 @@
33
32
  "**/*.spec.ts",
34
33
  ],
35
34
  "files": [
36
- "index.ts",
35
+ "index.ts"
37
36
  ],
38
37
  "typeAcquisition": {
39
38
  "enable": true
package/zod.ts ADDED
@@ -0,0 +1,20 @@
1
+ // re-export zod so that it can be auto imported as
2
+ // import { zod } from "zod"
3
+ export * as zod from "zod"
4
+ import * as zod from "zod/v4"
5
+ import { $strip } from "zod/v4/core"
6
+
7
+ export namespace zodHelper {
8
+ type ExtraKeys<Schema, Type> = Exclude<keyof Schema, keyof Type> // Checks for extra keys in schema not defined in the model
9
+ type ThrowIfExtraKeys<Schema, Type> = ExtraKeys<Schema, Type> extends never ? unknown : { [key: string]: never } // If there are extra keys, raise a type error
10
+ export function fromType<Type>() {
11
+ return <Schema extends { [K in keyof Type]: zod.ZodType<Type[K]> } & ThrowIfExtraKeys<Schema, Type>>(
12
+ schema: Schema
13
+ ): zod.ZodObject<Schema, $strip> => {
14
+ return zod.object(schema)
15
+ }
16
+ }
17
+ export function is<T>(type: zod.ZodType<T>, value: unknown): value is T {
18
+ return type.safeParse(value).success
19
+ }
20
+ }