@settlemint/sdk-utils 2.3.2-pr708c218f → 2.3.2-pr74f654b5

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 (89) hide show
  1. package/README.md +51 -7
  2. package/dist/environment.cjs +25 -409
  3. package/dist/environment.d.cts +3 -176
  4. package/dist/environment.d.ts +3 -176
  5. package/dist/environment.js +4 -0
  6. package/dist/filesystem.cjs +39 -123
  7. package/dist/filesystem.d.cts +4 -59
  8. package/dist/filesystem.d.ts +4 -59
  9. package/dist/filesystem.js +5 -0
  10. package/dist/http.cjs +34 -98
  11. package/dist/http.d.cts +4 -55
  12. package/dist/http.d.ts +4 -55
  13. package/dist/http.js +5 -0
  14. package/dist/index.cjs +27 -118
  15. package/dist/index.d.cts +4 -122
  16. package/dist/index.d.ts +4 -122
  17. package/dist/index.js +7 -0
  18. package/dist/json.cjs +83 -0
  19. package/dist/json.cjs.map +1 -0
  20. package/dist/json.d.cts +56 -0
  21. package/dist/json.d.ts +56 -0
  22. package/dist/json.js +80 -0
  23. package/dist/json.js.map +1 -0
  24. package/dist/logging.cjs +34 -141
  25. package/dist/logging.d.cts +4 -70
  26. package/dist/logging.d.ts +4 -70
  27. package/dist/logging.js +5 -0
  28. package/dist/package-manager.cjs +51 -196
  29. package/dist/package-manager.d.cts +7 -114
  30. package/dist/package-manager.d.ts +7 -114
  31. package/dist/package-manager.js +9 -0
  32. package/dist/retry.cjs +69 -0
  33. package/dist/retry.cjs.map +1 -0
  34. package/dist/retry.d.cts +19 -0
  35. package/dist/retry.d.ts +19 -0
  36. package/dist/retry.js +46 -0
  37. package/dist/retry.js.map +1 -0
  38. package/dist/runtime.cjs +38 -42
  39. package/dist/runtime.d.cts +2 -32
  40. package/dist/runtime.d.ts +2 -32
  41. package/dist/runtime.js +3 -0
  42. package/dist/string.cjs +76 -0
  43. package/dist/string.cjs.map +1 -0
  44. package/dist/string.d.cts +58 -0
  45. package/dist/string.d.ts +58 -0
  46. package/dist/string.js +72 -0
  47. package/dist/string.js.map +1 -0
  48. package/dist/terminal.cjs +91 -258
  49. package/dist/terminal.d.cts +11 -219
  50. package/dist/terminal.d.ts +11 -219
  51. package/dist/terminal.js +12 -0
  52. package/dist/url.cjs +25 -0
  53. package/dist/url.cjs.map +1 -0
  54. package/dist/url.d.cts +20 -0
  55. package/dist/url.d.ts +20 -0
  56. package/dist/url.js +24 -0
  57. package/dist/url.js.map +1 -0
  58. package/dist/validation.cjs +89 -186
  59. package/dist/validation.d.cts +7 -243
  60. package/dist/validation.d.ts +7 -243
  61. package/dist/validation.js +8 -0
  62. package/package.json +6 -6
  63. package/dist/environment.cjs.map +0 -1
  64. package/dist/environment.mjs +0 -384
  65. package/dist/environment.mjs.map +0 -1
  66. package/dist/filesystem.cjs.map +0 -1
  67. package/dist/filesystem.mjs +0 -105
  68. package/dist/filesystem.mjs.map +0 -1
  69. package/dist/http.cjs.map +0 -1
  70. package/dist/http.mjs +0 -80
  71. package/dist/http.mjs.map +0 -1
  72. package/dist/index.cjs.map +0 -1
  73. package/dist/index.mjs +0 -90
  74. package/dist/index.mjs.map +0 -1
  75. package/dist/logging.cjs.map +0 -1
  76. package/dist/logging.mjs +0 -123
  77. package/dist/logging.mjs.map +0 -1
  78. package/dist/package-manager.cjs.map +0 -1
  79. package/dist/package-manager.mjs +0 -167
  80. package/dist/package-manager.mjs.map +0 -1
  81. package/dist/runtime.cjs.map +0 -1
  82. package/dist/runtime.mjs +0 -23
  83. package/dist/runtime.mjs.map +0 -1
  84. package/dist/terminal.cjs.map +0 -1
  85. package/dist/terminal.mjs +0 -230
  86. package/dist/terminal.mjs.map +0 -1
  87. package/dist/validation.cjs.map +0 -1
  88. package/dist/validation.mjs +0 -161
  89. package/dist/validation.mjs.map +0 -1
@@ -1,243 +1,7 @@
1
- import { ZodType, ZodString, z } from 'zod/v4';
2
-
3
- /**
4
- * Validates a value against a given Zod schema.
5
- *
6
- * @param schema - The Zod schema to validate against.
7
- * @param value - The value to validate.
8
- * @returns The validated and parsed value.
9
- * @throws Will throw an error if validation fails, with formatted error messages.
10
- *
11
- * @example
12
- * import { validate } from "@settlemint/sdk-utils/validation";
13
- *
14
- * const validatedId = validate(IdSchema, "550e8400-e29b-41d4-a716-446655440000");
15
- */
16
- declare function validate<T extends ZodType>(schema: T, value: unknown): T["_output"];
17
-
18
- /**
19
- * Schema for validating application access tokens.
20
- * Application access tokens start with 'sm_aat_' prefix.
21
- */
22
- declare const ApplicationAccessTokenSchema: ZodString;
23
- type ApplicationAccessToken = z.infer<typeof ApplicationAccessTokenSchema>;
24
- /**
25
- * Schema for validating personal access tokens.
26
- * Personal access tokens start with 'sm_pat_' prefix.
27
- */
28
- declare const PersonalAccessTokenSchema: ZodString;
29
- type PersonalAccessToken = z.infer<typeof PersonalAccessTokenSchema>;
30
- /**
31
- * Schema for validating both application and personal access tokens.
32
- * Accepts tokens starting with either 'sm_pat_' or 'sm_aat_' prefix.
33
- */
34
- declare const AccessTokenSchema: ZodString;
35
- type AccessToken = z.infer<typeof AccessTokenSchema>;
36
-
37
- /**
38
- * Use this value to indicate that the resources are not part of the SettleMint platform.
39
- */
40
- declare const STANDALONE_INSTANCE = "standalone";
41
- /**
42
- * Schema for validating environment variables used by the SettleMint SDK.
43
- * Defines validation rules and types for configuration values like URLs,
44
- * access tokens, workspace names, and service endpoints.
45
- */
46
- declare const DotEnvSchema: z.ZodObject<{
47
- SETTLEMINT_INSTANCE: z.ZodDefault<z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<"standalone">]>>;
48
- SETTLEMINT_ACCESS_TOKEN: z.ZodOptional<z.ZodString>;
49
- SETTLEMINT_PERSONAL_ACCESS_TOKEN: z.ZodOptional<z.ZodString>;
50
- SETTLEMINT_WORKSPACE: z.ZodOptional<z.ZodString>;
51
- SETTLEMINT_APPLICATION: z.ZodOptional<z.ZodString>;
52
- SETTLEMINT_BLOCKCHAIN_NETWORK: z.ZodOptional<z.ZodString>;
53
- SETTLEMINT_BLOCKCHAIN_NETWORK_CHAIN_ID: z.ZodOptional<z.ZodString>;
54
- SETTLEMINT_BLOCKCHAIN_NODE: z.ZodOptional<z.ZodString>;
55
- SETTLEMINT_BLOCKCHAIN_NODE_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodString>;
56
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER: z.ZodOptional<z.ZodString>;
57
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodString>;
58
- SETTLEMINT_HASURA: z.ZodOptional<z.ZodString>;
59
- SETTLEMINT_HASURA_ENDPOINT: z.ZodOptional<z.ZodString>;
60
- SETTLEMINT_HASURA_ADMIN_SECRET: z.ZodOptional<z.ZodString>;
61
- SETTLEMINT_HASURA_DATABASE_URL: z.ZodOptional<z.ZodString>;
62
- SETTLEMINT_THEGRAPH: z.ZodOptional<z.ZodString>;
63
- SETTLEMINT_THEGRAPH_SUBGRAPHS_ENDPOINTS: z.ZodPipe<z.ZodTransform<never[] | null, unknown>, z.ZodOptional<z.ZodArray<z.ZodString>>>;
64
- SETTLEMINT_THEGRAPH_DEFAULT_SUBGRAPH: z.ZodOptional<z.ZodString>;
65
- SETTLEMINT_PORTAL: z.ZodOptional<z.ZodString>;
66
- SETTLEMINT_PORTAL_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodString>;
67
- SETTLEMINT_PORTAL_REST_ENDPOINT: z.ZodOptional<z.ZodString>;
68
- SETTLEMINT_PORTAL_WS_ENDPOINT: z.ZodOptional<z.ZodString>;
69
- SETTLEMINT_HD_PRIVATE_KEY: z.ZodOptional<z.ZodString>;
70
- SETTLEMINT_HD_PRIVATE_KEY_FORWARDER_ADDRESS: z.ZodOptional<z.ZodString>;
71
- SETTLEMINT_ACCESSIBLE_PRIVATE_KEY: z.ZodOptional<z.ZodString>;
72
- SETTLEMINT_MINIO: z.ZodOptional<z.ZodString>;
73
- SETTLEMINT_MINIO_ENDPOINT: z.ZodOptional<z.ZodString>;
74
- SETTLEMINT_MINIO_ACCESS_KEY: z.ZodOptional<z.ZodString>;
75
- SETTLEMINT_MINIO_SECRET_KEY: z.ZodOptional<z.ZodString>;
76
- SETTLEMINT_IPFS: z.ZodOptional<z.ZodString>;
77
- SETTLEMINT_IPFS_API_ENDPOINT: z.ZodOptional<z.ZodString>;
78
- SETTLEMINT_IPFS_PINNING_ENDPOINT: z.ZodOptional<z.ZodString>;
79
- SETTLEMINT_IPFS_GATEWAY_ENDPOINT: z.ZodOptional<z.ZodString>;
80
- SETTLEMINT_CUSTOM_DEPLOYMENT: z.ZodOptional<z.ZodString>;
81
- SETTLEMINT_CUSTOM_DEPLOYMENT_ENDPOINT: z.ZodOptional<z.ZodString>;
82
- SETTLEMINT_BLOCKSCOUT: z.ZodOptional<z.ZodString>;
83
- SETTLEMINT_BLOCKSCOUT_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodString>;
84
- SETTLEMINT_BLOCKSCOUT_UI_ENDPOINT: z.ZodOptional<z.ZodString>;
85
- SETTLEMINT_NEW_PROJECT_NAME: z.ZodOptional<z.ZodString>;
86
- SETTLEMINT_LOG_LEVEL: z.ZodDefault<z.ZodEnum<{
87
- error: "error";
88
- debug: "debug";
89
- info: "info";
90
- warn: "warn";
91
- none: "none";
92
- }>>;
93
- }, z.core.$strip>;
94
- /**
95
- * Type definition for the environment variables schema.
96
- */
97
- type DotEnv = z.infer<typeof DotEnvSchema>;
98
- /**
99
- * Partial version of the environment variables schema where all fields are optional.
100
- * Useful for validating incomplete configurations during development or build time.
101
- */
102
- declare const DotEnvSchemaPartial: z.ZodObject<{
103
- SETTLEMINT_INSTANCE: z.ZodOptional<z.ZodDefault<z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<"standalone">]>>>;
104
- SETTLEMINT_ACCESS_TOKEN: z.ZodOptional<z.ZodOptional<z.ZodString>>;
105
- SETTLEMINT_PERSONAL_ACCESS_TOKEN: z.ZodOptional<z.ZodOptional<z.ZodString>>;
106
- SETTLEMINT_WORKSPACE: z.ZodOptional<z.ZodOptional<z.ZodString>>;
107
- SETTLEMINT_APPLICATION: z.ZodOptional<z.ZodOptional<z.ZodString>>;
108
- SETTLEMINT_BLOCKCHAIN_NETWORK: z.ZodOptional<z.ZodOptional<z.ZodString>>;
109
- SETTLEMINT_BLOCKCHAIN_NETWORK_CHAIN_ID: z.ZodOptional<z.ZodOptional<z.ZodString>>;
110
- SETTLEMINT_BLOCKCHAIN_NODE: z.ZodOptional<z.ZodOptional<z.ZodString>>;
111
- SETTLEMINT_BLOCKCHAIN_NODE_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
112
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER: z.ZodOptional<z.ZodOptional<z.ZodString>>;
113
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
114
- SETTLEMINT_HASURA: z.ZodOptional<z.ZodOptional<z.ZodString>>;
115
- SETTLEMINT_HASURA_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
116
- SETTLEMINT_HASURA_ADMIN_SECRET: z.ZodOptional<z.ZodOptional<z.ZodString>>;
117
- SETTLEMINT_HASURA_DATABASE_URL: z.ZodOptional<z.ZodOptional<z.ZodString>>;
118
- SETTLEMINT_THEGRAPH: z.ZodOptional<z.ZodOptional<z.ZodString>>;
119
- SETTLEMINT_THEGRAPH_SUBGRAPHS_ENDPOINTS: z.ZodOptional<z.ZodPipe<z.ZodTransform<never[] | null, unknown>, z.ZodOptional<z.ZodArray<z.ZodString>>>>;
120
- SETTLEMINT_THEGRAPH_DEFAULT_SUBGRAPH: z.ZodOptional<z.ZodOptional<z.ZodString>>;
121
- SETTLEMINT_PORTAL: z.ZodOptional<z.ZodOptional<z.ZodString>>;
122
- SETTLEMINT_PORTAL_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
123
- SETTLEMINT_PORTAL_REST_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
124
- SETTLEMINT_PORTAL_WS_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
125
- SETTLEMINT_HD_PRIVATE_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
126
- SETTLEMINT_HD_PRIVATE_KEY_FORWARDER_ADDRESS: z.ZodOptional<z.ZodOptional<z.ZodString>>;
127
- SETTLEMINT_ACCESSIBLE_PRIVATE_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
128
- SETTLEMINT_MINIO: z.ZodOptional<z.ZodOptional<z.ZodString>>;
129
- SETTLEMINT_MINIO_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
130
- SETTLEMINT_MINIO_ACCESS_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
131
- SETTLEMINT_MINIO_SECRET_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
132
- SETTLEMINT_IPFS: z.ZodOptional<z.ZodOptional<z.ZodString>>;
133
- SETTLEMINT_IPFS_API_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
134
- SETTLEMINT_IPFS_PINNING_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
135
- SETTLEMINT_IPFS_GATEWAY_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
136
- SETTLEMINT_CUSTOM_DEPLOYMENT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
137
- SETTLEMINT_CUSTOM_DEPLOYMENT_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
138
- SETTLEMINT_BLOCKSCOUT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
139
- SETTLEMINT_BLOCKSCOUT_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
140
- SETTLEMINT_BLOCKSCOUT_UI_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
141
- SETTLEMINT_NEW_PROJECT_NAME: z.ZodOptional<z.ZodOptional<z.ZodString>>;
142
- SETTLEMINT_LOG_LEVEL: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
143
- error: "error";
144
- debug: "debug";
145
- info: "info";
146
- warn: "warn";
147
- none: "none";
148
- }>>>;
149
- }, z.core.$strip>;
150
- /**
151
- * Type definition for the partial environment variables schema.
152
- */
153
- type DotEnvPartial = z.infer<typeof DotEnvSchemaPartial>;
154
-
155
- /**
156
- * Schema for validating database IDs. Accepts both PostgreSQL UUIDs and MongoDB ObjectIDs.
157
- * PostgreSQL UUIDs are 32 hexadecimal characters with hyphens (e.g. 123e4567-e89b-12d3-a456-426614174000).
158
- * MongoDB ObjectIDs are 24 hexadecimal characters (e.g. 507f1f77bcf86cd799439011).
159
- *
160
- * @example
161
- * import { IdSchema } from "@settlemint/sdk-utils/validation";
162
- *
163
- * // Validate PostgreSQL UUID
164
- * const isValidUuid = IdSchema.safeParse("123e4567-e89b-12d3-a456-426614174000").success;
165
- *
166
- * // Validate MongoDB ObjectID
167
- * const isValidObjectId = IdSchema.safeParse("507f1f77bcf86cd799439011").success;
168
- */
169
- declare const IdSchema: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
170
- /**
171
- * Type definition for database IDs, inferred from IdSchema.
172
- * Can be either a PostgreSQL UUID string or MongoDB ObjectID string.
173
- */
174
- type Id = z.infer<typeof IdSchema>;
175
-
176
- /**
177
- * Schema for validating unique names used across the SettleMint platform.
178
- * Only accepts lowercase alphanumeric characters and hyphens.
179
- * Used for workspace names, application names, service names etc.
180
- *
181
- * @example
182
- * import { UniqueNameSchema } from "@settlemint/sdk-utils/validation";
183
- *
184
- * // Validate a workspace name
185
- * const isValidName = UniqueNameSchema.safeParse("my-workspace-123").success;
186
- * // true
187
- *
188
- * // Invalid names will fail validation
189
- * const isInvalidName = UniqueNameSchema.safeParse("My Workspace!").success;
190
- * // false
191
- */
192
- declare const UniqueNameSchema: z.ZodString;
193
-
194
- /**
195
- * Schema for validating URLs.
196
- *
197
- * @example
198
- * import { UrlSchema } from "@settlemint/sdk-utils/validation";
199
- *
200
- * // Validate a URL
201
- * const isValidUrl = UrlSchema.safeParse("https://console.settlemint.com").success;
202
- * // true
203
- *
204
- * // Invalid URLs will fail validation
205
- * const isInvalidUrl = UrlSchema.safeParse("not-a-url").success;
206
- * // false
207
- */
208
- declare const UrlSchema: z.ZodString;
209
- type Url = z.infer<typeof UrlSchema>;
210
- /**
211
- * Schema for validating URL paths.
212
- *
213
- * @example
214
- * import { UrlPathSchema } from "@settlemint/sdk-utils/validation";
215
- *
216
- * // Validate a URL path
217
- * const isValidPath = UrlPathSchema.safeParse("/api/v1/users").success;
218
- * // true
219
- *
220
- * // Invalid paths will fail validation
221
- * const isInvalidPath = UrlPathSchema.safeParse("not-a-path").success;
222
- * // false
223
- */
224
- declare const UrlPathSchema: z.ZodString;
225
- type UrlPath = z.infer<typeof UrlPathSchema>;
226
- /**
227
- * Schema that accepts either a full URL or a URL path.
228
- *
229
- * @example
230
- * import { UrlOrPathSchema } from "@settlemint/sdk-utils/validation";
231
- *
232
- * // Validate a URL
233
- * const isValidUrl = UrlOrPathSchema.safeParse("https://console.settlemint.com").success;
234
- * // true
235
- *
236
- * // Validate a path
237
- * const isValidPath = UrlOrPathSchema.safeParse("/api/v1/users").success;
238
- * // true
239
- */
240
- declare const UrlOrPathSchema: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
241
- type UrlOrPath = z.infer<typeof UrlOrPathSchema>;
242
-
243
- export { type AccessToken, AccessTokenSchema, type ApplicationAccessToken, ApplicationAccessTokenSchema, type DotEnv, type DotEnvPartial, DotEnvSchema, DotEnvSchemaPartial, type Id, IdSchema, type PersonalAccessToken, PersonalAccessTokenSchema, STANDALONE_INSTANCE, UniqueNameSchema, type Url, type UrlOrPath, UrlOrPathSchema, type UrlPath, UrlPathSchema, UrlSchema, validate };
1
+ import { validate } from "./validation/validate.js";
2
+ import { AccessToken, AccessTokenSchema, ApplicationAccessToken, ApplicationAccessTokenSchema, PersonalAccessToken, PersonalAccessTokenSchema } from "./validation/access-token.schema.js";
3
+ import { DotEnv, DotEnvPartial, DotEnvSchema, DotEnvSchemaPartial, STANDALONE_INSTANCE } from "./validation/dot-env.schema.js";
4
+ import { Id, IdSchema } from "./validation/id.schema.js";
5
+ import { UniqueNameSchema } from "./validation/unique-name.schema.js";
6
+ import { Url, UrlOrPath, UrlOrPathSchema, UrlPath, UrlPathSchema, UrlSchema } from "./validation/url.schema.js";
7
+ export { AccessToken, AccessTokenSchema, ApplicationAccessToken, ApplicationAccessTokenSchema, DotEnv, DotEnvPartial, DotEnvSchema, DotEnvSchemaPartial, Id, IdSchema, PersonalAccessToken, PersonalAccessTokenSchema, STANDALONE_INSTANCE, UniqueNameSchema, Url, UrlOrPath, UrlOrPathSchema, UrlPath, UrlPathSchema, UrlSchema, validate };
@@ -1,243 +1,7 @@
1
- import { ZodType, ZodString, z } from 'zod/v4';
2
-
3
- /**
4
- * Validates a value against a given Zod schema.
5
- *
6
- * @param schema - The Zod schema to validate against.
7
- * @param value - The value to validate.
8
- * @returns The validated and parsed value.
9
- * @throws Will throw an error if validation fails, with formatted error messages.
10
- *
11
- * @example
12
- * import { validate } from "@settlemint/sdk-utils/validation";
13
- *
14
- * const validatedId = validate(IdSchema, "550e8400-e29b-41d4-a716-446655440000");
15
- */
16
- declare function validate<T extends ZodType>(schema: T, value: unknown): T["_output"];
17
-
18
- /**
19
- * Schema for validating application access tokens.
20
- * Application access tokens start with 'sm_aat_' prefix.
21
- */
22
- declare const ApplicationAccessTokenSchema: ZodString;
23
- type ApplicationAccessToken = z.infer<typeof ApplicationAccessTokenSchema>;
24
- /**
25
- * Schema for validating personal access tokens.
26
- * Personal access tokens start with 'sm_pat_' prefix.
27
- */
28
- declare const PersonalAccessTokenSchema: ZodString;
29
- type PersonalAccessToken = z.infer<typeof PersonalAccessTokenSchema>;
30
- /**
31
- * Schema for validating both application and personal access tokens.
32
- * Accepts tokens starting with either 'sm_pat_' or 'sm_aat_' prefix.
33
- */
34
- declare const AccessTokenSchema: ZodString;
35
- type AccessToken = z.infer<typeof AccessTokenSchema>;
36
-
37
- /**
38
- * Use this value to indicate that the resources are not part of the SettleMint platform.
39
- */
40
- declare const STANDALONE_INSTANCE = "standalone";
41
- /**
42
- * Schema for validating environment variables used by the SettleMint SDK.
43
- * Defines validation rules and types for configuration values like URLs,
44
- * access tokens, workspace names, and service endpoints.
45
- */
46
- declare const DotEnvSchema: z.ZodObject<{
47
- SETTLEMINT_INSTANCE: z.ZodDefault<z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<"standalone">]>>;
48
- SETTLEMINT_ACCESS_TOKEN: z.ZodOptional<z.ZodString>;
49
- SETTLEMINT_PERSONAL_ACCESS_TOKEN: z.ZodOptional<z.ZodString>;
50
- SETTLEMINT_WORKSPACE: z.ZodOptional<z.ZodString>;
51
- SETTLEMINT_APPLICATION: z.ZodOptional<z.ZodString>;
52
- SETTLEMINT_BLOCKCHAIN_NETWORK: z.ZodOptional<z.ZodString>;
53
- SETTLEMINT_BLOCKCHAIN_NETWORK_CHAIN_ID: z.ZodOptional<z.ZodString>;
54
- SETTLEMINT_BLOCKCHAIN_NODE: z.ZodOptional<z.ZodString>;
55
- SETTLEMINT_BLOCKCHAIN_NODE_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodString>;
56
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER: z.ZodOptional<z.ZodString>;
57
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodString>;
58
- SETTLEMINT_HASURA: z.ZodOptional<z.ZodString>;
59
- SETTLEMINT_HASURA_ENDPOINT: z.ZodOptional<z.ZodString>;
60
- SETTLEMINT_HASURA_ADMIN_SECRET: z.ZodOptional<z.ZodString>;
61
- SETTLEMINT_HASURA_DATABASE_URL: z.ZodOptional<z.ZodString>;
62
- SETTLEMINT_THEGRAPH: z.ZodOptional<z.ZodString>;
63
- SETTLEMINT_THEGRAPH_SUBGRAPHS_ENDPOINTS: z.ZodPipe<z.ZodTransform<never[] | null, unknown>, z.ZodOptional<z.ZodArray<z.ZodString>>>;
64
- SETTLEMINT_THEGRAPH_DEFAULT_SUBGRAPH: z.ZodOptional<z.ZodString>;
65
- SETTLEMINT_PORTAL: z.ZodOptional<z.ZodString>;
66
- SETTLEMINT_PORTAL_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodString>;
67
- SETTLEMINT_PORTAL_REST_ENDPOINT: z.ZodOptional<z.ZodString>;
68
- SETTLEMINT_PORTAL_WS_ENDPOINT: z.ZodOptional<z.ZodString>;
69
- SETTLEMINT_HD_PRIVATE_KEY: z.ZodOptional<z.ZodString>;
70
- SETTLEMINT_HD_PRIVATE_KEY_FORWARDER_ADDRESS: z.ZodOptional<z.ZodString>;
71
- SETTLEMINT_ACCESSIBLE_PRIVATE_KEY: z.ZodOptional<z.ZodString>;
72
- SETTLEMINT_MINIO: z.ZodOptional<z.ZodString>;
73
- SETTLEMINT_MINIO_ENDPOINT: z.ZodOptional<z.ZodString>;
74
- SETTLEMINT_MINIO_ACCESS_KEY: z.ZodOptional<z.ZodString>;
75
- SETTLEMINT_MINIO_SECRET_KEY: z.ZodOptional<z.ZodString>;
76
- SETTLEMINT_IPFS: z.ZodOptional<z.ZodString>;
77
- SETTLEMINT_IPFS_API_ENDPOINT: z.ZodOptional<z.ZodString>;
78
- SETTLEMINT_IPFS_PINNING_ENDPOINT: z.ZodOptional<z.ZodString>;
79
- SETTLEMINT_IPFS_GATEWAY_ENDPOINT: z.ZodOptional<z.ZodString>;
80
- SETTLEMINT_CUSTOM_DEPLOYMENT: z.ZodOptional<z.ZodString>;
81
- SETTLEMINT_CUSTOM_DEPLOYMENT_ENDPOINT: z.ZodOptional<z.ZodString>;
82
- SETTLEMINT_BLOCKSCOUT: z.ZodOptional<z.ZodString>;
83
- SETTLEMINT_BLOCKSCOUT_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodString>;
84
- SETTLEMINT_BLOCKSCOUT_UI_ENDPOINT: z.ZodOptional<z.ZodString>;
85
- SETTLEMINT_NEW_PROJECT_NAME: z.ZodOptional<z.ZodString>;
86
- SETTLEMINT_LOG_LEVEL: z.ZodDefault<z.ZodEnum<{
87
- error: "error";
88
- debug: "debug";
89
- info: "info";
90
- warn: "warn";
91
- none: "none";
92
- }>>;
93
- }, z.core.$strip>;
94
- /**
95
- * Type definition for the environment variables schema.
96
- */
97
- type DotEnv = z.infer<typeof DotEnvSchema>;
98
- /**
99
- * Partial version of the environment variables schema where all fields are optional.
100
- * Useful for validating incomplete configurations during development or build time.
101
- */
102
- declare const DotEnvSchemaPartial: z.ZodObject<{
103
- SETTLEMINT_INSTANCE: z.ZodOptional<z.ZodDefault<z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<"standalone">]>>>;
104
- SETTLEMINT_ACCESS_TOKEN: z.ZodOptional<z.ZodOptional<z.ZodString>>;
105
- SETTLEMINT_PERSONAL_ACCESS_TOKEN: z.ZodOptional<z.ZodOptional<z.ZodString>>;
106
- SETTLEMINT_WORKSPACE: z.ZodOptional<z.ZodOptional<z.ZodString>>;
107
- SETTLEMINT_APPLICATION: z.ZodOptional<z.ZodOptional<z.ZodString>>;
108
- SETTLEMINT_BLOCKCHAIN_NETWORK: z.ZodOptional<z.ZodOptional<z.ZodString>>;
109
- SETTLEMINT_BLOCKCHAIN_NETWORK_CHAIN_ID: z.ZodOptional<z.ZodOptional<z.ZodString>>;
110
- SETTLEMINT_BLOCKCHAIN_NODE: z.ZodOptional<z.ZodOptional<z.ZodString>>;
111
- SETTLEMINT_BLOCKCHAIN_NODE_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
112
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER: z.ZodOptional<z.ZodOptional<z.ZodString>>;
113
- SETTLEMINT_BLOCKCHAIN_NODE_OR_LOAD_BALANCER_JSON_RPC_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
114
- SETTLEMINT_HASURA: z.ZodOptional<z.ZodOptional<z.ZodString>>;
115
- SETTLEMINT_HASURA_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
116
- SETTLEMINT_HASURA_ADMIN_SECRET: z.ZodOptional<z.ZodOptional<z.ZodString>>;
117
- SETTLEMINT_HASURA_DATABASE_URL: z.ZodOptional<z.ZodOptional<z.ZodString>>;
118
- SETTLEMINT_THEGRAPH: z.ZodOptional<z.ZodOptional<z.ZodString>>;
119
- SETTLEMINT_THEGRAPH_SUBGRAPHS_ENDPOINTS: z.ZodOptional<z.ZodPipe<z.ZodTransform<never[] | null, unknown>, z.ZodOptional<z.ZodArray<z.ZodString>>>>;
120
- SETTLEMINT_THEGRAPH_DEFAULT_SUBGRAPH: z.ZodOptional<z.ZodOptional<z.ZodString>>;
121
- SETTLEMINT_PORTAL: z.ZodOptional<z.ZodOptional<z.ZodString>>;
122
- SETTLEMINT_PORTAL_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
123
- SETTLEMINT_PORTAL_REST_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
124
- SETTLEMINT_PORTAL_WS_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
125
- SETTLEMINT_HD_PRIVATE_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
126
- SETTLEMINT_HD_PRIVATE_KEY_FORWARDER_ADDRESS: z.ZodOptional<z.ZodOptional<z.ZodString>>;
127
- SETTLEMINT_ACCESSIBLE_PRIVATE_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
128
- SETTLEMINT_MINIO: z.ZodOptional<z.ZodOptional<z.ZodString>>;
129
- SETTLEMINT_MINIO_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
130
- SETTLEMINT_MINIO_ACCESS_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
131
- SETTLEMINT_MINIO_SECRET_KEY: z.ZodOptional<z.ZodOptional<z.ZodString>>;
132
- SETTLEMINT_IPFS: z.ZodOptional<z.ZodOptional<z.ZodString>>;
133
- SETTLEMINT_IPFS_API_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
134
- SETTLEMINT_IPFS_PINNING_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
135
- SETTLEMINT_IPFS_GATEWAY_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
136
- SETTLEMINT_CUSTOM_DEPLOYMENT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
137
- SETTLEMINT_CUSTOM_DEPLOYMENT_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
138
- SETTLEMINT_BLOCKSCOUT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
139
- SETTLEMINT_BLOCKSCOUT_GRAPHQL_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
140
- SETTLEMINT_BLOCKSCOUT_UI_ENDPOINT: z.ZodOptional<z.ZodOptional<z.ZodString>>;
141
- SETTLEMINT_NEW_PROJECT_NAME: z.ZodOptional<z.ZodOptional<z.ZodString>>;
142
- SETTLEMINT_LOG_LEVEL: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
143
- error: "error";
144
- debug: "debug";
145
- info: "info";
146
- warn: "warn";
147
- none: "none";
148
- }>>>;
149
- }, z.core.$strip>;
150
- /**
151
- * Type definition for the partial environment variables schema.
152
- */
153
- type DotEnvPartial = z.infer<typeof DotEnvSchemaPartial>;
154
-
155
- /**
156
- * Schema for validating database IDs. Accepts both PostgreSQL UUIDs and MongoDB ObjectIDs.
157
- * PostgreSQL UUIDs are 32 hexadecimal characters with hyphens (e.g. 123e4567-e89b-12d3-a456-426614174000).
158
- * MongoDB ObjectIDs are 24 hexadecimal characters (e.g. 507f1f77bcf86cd799439011).
159
- *
160
- * @example
161
- * import { IdSchema } from "@settlemint/sdk-utils/validation";
162
- *
163
- * // Validate PostgreSQL UUID
164
- * const isValidUuid = IdSchema.safeParse("123e4567-e89b-12d3-a456-426614174000").success;
165
- *
166
- * // Validate MongoDB ObjectID
167
- * const isValidObjectId = IdSchema.safeParse("507f1f77bcf86cd799439011").success;
168
- */
169
- declare const IdSchema: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
170
- /**
171
- * Type definition for database IDs, inferred from IdSchema.
172
- * Can be either a PostgreSQL UUID string or MongoDB ObjectID string.
173
- */
174
- type Id = z.infer<typeof IdSchema>;
175
-
176
- /**
177
- * Schema for validating unique names used across the SettleMint platform.
178
- * Only accepts lowercase alphanumeric characters and hyphens.
179
- * Used for workspace names, application names, service names etc.
180
- *
181
- * @example
182
- * import { UniqueNameSchema } from "@settlemint/sdk-utils/validation";
183
- *
184
- * // Validate a workspace name
185
- * const isValidName = UniqueNameSchema.safeParse("my-workspace-123").success;
186
- * // true
187
- *
188
- * // Invalid names will fail validation
189
- * const isInvalidName = UniqueNameSchema.safeParse("My Workspace!").success;
190
- * // false
191
- */
192
- declare const UniqueNameSchema: z.ZodString;
193
-
194
- /**
195
- * Schema for validating URLs.
196
- *
197
- * @example
198
- * import { UrlSchema } from "@settlemint/sdk-utils/validation";
199
- *
200
- * // Validate a URL
201
- * const isValidUrl = UrlSchema.safeParse("https://console.settlemint.com").success;
202
- * // true
203
- *
204
- * // Invalid URLs will fail validation
205
- * const isInvalidUrl = UrlSchema.safeParse("not-a-url").success;
206
- * // false
207
- */
208
- declare const UrlSchema: z.ZodString;
209
- type Url = z.infer<typeof UrlSchema>;
210
- /**
211
- * Schema for validating URL paths.
212
- *
213
- * @example
214
- * import { UrlPathSchema } from "@settlemint/sdk-utils/validation";
215
- *
216
- * // Validate a URL path
217
- * const isValidPath = UrlPathSchema.safeParse("/api/v1/users").success;
218
- * // true
219
- *
220
- * // Invalid paths will fail validation
221
- * const isInvalidPath = UrlPathSchema.safeParse("not-a-path").success;
222
- * // false
223
- */
224
- declare const UrlPathSchema: z.ZodString;
225
- type UrlPath = z.infer<typeof UrlPathSchema>;
226
- /**
227
- * Schema that accepts either a full URL or a URL path.
228
- *
229
- * @example
230
- * import { UrlOrPathSchema } from "@settlemint/sdk-utils/validation";
231
- *
232
- * // Validate a URL
233
- * const isValidUrl = UrlOrPathSchema.safeParse("https://console.settlemint.com").success;
234
- * // true
235
- *
236
- * // Validate a path
237
- * const isValidPath = UrlOrPathSchema.safeParse("/api/v1/users").success;
238
- * // true
239
- */
240
- declare const UrlOrPathSchema: z.ZodUnion<readonly [z.ZodString, z.ZodString]>;
241
- type UrlOrPath = z.infer<typeof UrlOrPathSchema>;
242
-
243
- export { type AccessToken, AccessTokenSchema, type ApplicationAccessToken, ApplicationAccessTokenSchema, type DotEnv, type DotEnvPartial, DotEnvSchema, DotEnvSchemaPartial, type Id, IdSchema, type PersonalAccessToken, PersonalAccessTokenSchema, STANDALONE_INSTANCE, UniqueNameSchema, type Url, type UrlOrPath, UrlOrPathSchema, type UrlPath, UrlPathSchema, UrlSchema, validate };
1
+ import { validate } from "./validation/validate.js";
2
+ import { AccessToken, AccessTokenSchema, ApplicationAccessToken, ApplicationAccessTokenSchema, PersonalAccessToken, PersonalAccessTokenSchema } from "./validation/access-token.schema.js";
3
+ import { DotEnv, DotEnvPartial, DotEnvSchema, DotEnvSchemaPartial, STANDALONE_INSTANCE } from "./validation/dot-env.schema.js";
4
+ import { Id, IdSchema } from "./validation/id.schema.js";
5
+ import { UniqueNameSchema } from "./validation/unique-name.schema.js";
6
+ import { Url, UrlOrPath, UrlOrPathSchema, UrlPath, UrlPathSchema, UrlSchema } from "./validation/url.schema.js";
7
+ export { AccessToken, AccessTokenSchema, ApplicationAccessToken, ApplicationAccessTokenSchema, DotEnv, DotEnvPartial, DotEnvSchema, DotEnvSchemaPartial, Id, IdSchema, PersonalAccessToken, PersonalAccessTokenSchema, STANDALONE_INSTANCE, UniqueNameSchema, Url, UrlOrPath, UrlOrPathSchema, UrlPath, UrlPathSchema, UrlSchema, validate };
@@ -0,0 +1,8 @@
1
+ import { validate } from "./validation/validate.js";
2
+ import { AccessTokenSchema, ApplicationAccessTokenSchema, PersonalAccessTokenSchema } from "./validation/access-token.schema.js";
3
+ import { DotEnvSchema, DotEnvSchemaPartial, STANDALONE_INSTANCE } from "./validation/dot-env.schema.js";
4
+ import { IdSchema } from "./validation/id.schema.js";
5
+ import { UniqueNameSchema } from "./validation/unique-name.schema.js";
6
+ import { UrlOrPathSchema, UrlPathSchema, UrlSchema } from "./validation/url.schema.js";
7
+
8
+ export { AccessTokenSchema, ApplicationAccessTokenSchema, DotEnvSchema, DotEnvSchemaPartial, IdSchema, PersonalAccessTokenSchema, STANDALONE_INSTANCE, UniqueNameSchema, UrlOrPathSchema, UrlPathSchema, UrlSchema, validate };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@settlemint/sdk-utils",
3
3
  "description": "Shared utilities and helper functions for SettleMint SDK modules",
4
- "version": "2.3.2-pr708c218f",
4
+ "version": "2.3.2-pr74f654b5",
5
5
  "type": "module",
6
6
  "private": false,
7
7
  "license": "FSL-1.1-MIT",
@@ -22,14 +22,14 @@
22
22
  },
23
23
  "files": ["dist"],
24
24
  "main": "./dist/index.cjs",
25
- "module": "./dist/index.mjs",
25
+ "module": "./dist/index.js",
26
26
  "types": "./dist/index.d.ts",
27
27
  "exports": {
28
28
  "./package.json": "./package.json",
29
29
  ".": {
30
30
  "import": {
31
31
  "types": "./dist/index.d.ts",
32
- "default": "./dist/index.mjs"
32
+ "default": "./dist/index.js"
33
33
  },
34
34
  "require": {
35
35
  "types": "./dist/index.d.cts",
@@ -39,7 +39,7 @@
39
39
  "./*": {
40
40
  "import": {
41
41
  "types": "./dist/*.d.ts",
42
- "default": "./dist/*.mjs"
42
+ "default": "./dist/*.js"
43
43
  },
44
44
  "require": {
45
45
  "types": "./dist/*.d.cts",
@@ -48,8 +48,8 @@
48
48
  }
49
49
  },
50
50
  "scripts": {
51
- "build": "tsup-node",
52
- "dev": "tsup-node --watch",
51
+ "build": "tsdown",
52
+ "dev": "tsdown --watch",
53
53
  "publint": "publint run --strict",
54
54
  "attw": "attw --pack .",
55
55
  "test": "bun test",