@nevermined-io/commons 0.0.1 → 0.1.13

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.
package/package.json CHANGED
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "name": "@nevermined-io/commons",
3
- "version": "0.0.1",
3
+ "version": "0.1.13",
4
4
  "type": "module",
5
- "private": false,
6
5
  "main": "../dist/index.js",
7
6
  "module": "./dist/index.js",
8
7
  "types": "./dist/index.d.ts",
@@ -1,46 +0,0 @@
1
- import { z } from 'zod';
2
- /**
3
- * Generic API response wrapper used across all Nevermined API endpoints.
4
- * This schema is shared between backend and frontend.
5
- *
6
- * @template T - The Zod schema for the data returned in the response
7
- *
8
- * @example
9
- * // Backend usage in controller
10
- * const responseSchema = NvmAPIResultSchema(CreateOrganizationResponseDataSchema)
11
- * const result = {
12
- * success: true,
13
- * message: 'Organization created',
14
- * httpStatus: 201,
15
- * data: { organization, adminMember }
16
- * }
17
- *
18
- * @example
19
- * // Frontend usage
20
- * const response = await api.post('/api/v1/organizations')
21
- * const parsed = NvmAPIResultSchema(CreateOrganizationResponseDataSchema).parse(response)
22
- * if (parsed.success) {
23
- * console.log(parsed.data?.organization)
24
- * }
25
- */
26
- export declare const NvmAPIResultSchema: <T extends z.ZodTypeAny>(dataSchema: T) => z.ZodObject<{
27
- success: z.ZodBoolean;
28
- message: z.ZodOptional<z.ZodString>;
29
- txHash: z.ZodOptional<z.ZodString>;
30
- httpStatus: z.ZodOptional<z.ZodNumber>;
31
- data: z.ZodOptional<T>;
32
- when: z.ZodOptional<z.ZodDate>;
33
- }, z.core.$strip>;
34
- /**
35
- * Type-safe interface inferred from the Zod schema
36
- * @template T - The type of data returned in the response
37
- */
38
- export type NvmAPIResult<T = unknown> = {
39
- success: boolean;
40
- message?: string;
41
- txHash?: string;
42
- httpStatus?: number;
43
- data?: T;
44
- when?: Date;
45
- };
46
- //# sourceMappingURL=ApiResponseTypes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ApiResponseTypes.d.ts","sourceRoot":"","sources":["../../../src/lib/types/ApiResponseTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC;;;;;;;iBAcpE,CAAA;AAEJ;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,CAAC,CAAA;IACR,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ,CAAA"}
@@ -1,39 +0,0 @@
1
- import { z } from 'zod';
2
- /**
3
- * Generic API response wrapper used across all Nevermined API endpoints.
4
- * This schema is shared between backend and frontend.
5
- *
6
- * @template T - The Zod schema for the data returned in the response
7
- *
8
- * @example
9
- * // Backend usage in controller
10
- * const responseSchema = NvmAPIResultSchema(CreateOrganizationResponseDataSchema)
11
- * const result = {
12
- * success: true,
13
- * message: 'Organization created',
14
- * httpStatus: 201,
15
- * data: { organization, adminMember }
16
- * }
17
- *
18
- * @example
19
- * // Frontend usage
20
- * const response = await api.post('/api/v1/organizations')
21
- * const parsed = NvmAPIResultSchema(CreateOrganizationResponseDataSchema).parse(response)
22
- * if (parsed.success) {
23
- * console.log(parsed.data?.organization)
24
- * }
25
- */
26
- export const NvmAPIResultSchema = (dataSchema) => z.object({
27
- /** Whether the operation was successful */
28
- success: z.boolean(),
29
- /** Human-readable message describing the result */
30
- message: z.string().optional(),
31
- /** Transaction hash (for blockchain operations) */
32
- txHash: z.string().optional(),
33
- /** HTTP status code */
34
- httpStatus: z.number().optional(),
35
- /** The response payload - typed based on the endpoint */
36
- data: dataSchema.optional(),
37
- /** Timestamp of when the response was generated */
38
- when: z.date().optional(),
39
- });
@@ -1,150 +0,0 @@
1
- import { z } from 'zod';
2
- import { OrganizationMemberRole } from './types.js';
3
- /**
4
- * Schema for creating a user by organization (POST /account)
5
- */
6
- export declare const CreateUserByOrganizationResponseDataSchema: z.ZodObject<{
7
- walletResult: z.ZodObject<{
8
- hash: z.ZodString;
9
- userId: z.ZodString;
10
- userWallet: z.ZodString;
11
- alreadyMember: z.ZodBoolean;
12
- }, z.core.$strip>;
13
- }, z.core.$strip>;
14
- /**
15
- * Schema for creating an organization (POST /organizations)
16
- */
17
- export declare const CreateOrganizationResponseDataSchema: z.ZodObject<{
18
- organization: z.ZodObject<{
19
- orgId: z.ZodString;
20
- name: z.ZodString;
21
- description: z.ZodOptional<z.ZodString>;
22
- url: z.ZodOptional<z.ZodString>;
23
- organizationWallet: z.ZodString;
24
- cryptoFees: z.ZodString;
25
- fiatFees: z.ZodString;
26
- isActive: z.ZodBoolean;
27
- createdAt: z.ZodString;
28
- }, z.core.$strip>;
29
- adminMember: z.ZodObject<{
30
- id: z.ZodString;
31
- orgId: z.ZodString;
32
- userId: z.ZodString;
33
- userAddress: z.ZodString;
34
- role: z.ZodEnum<typeof OrganizationMemberRole>;
35
- isActive: z.ZodBoolean;
36
- createdAt: z.ZodString;
37
- }, z.core.$strip>;
38
- }, z.core.$strip>;
39
- /**
40
- * Schema for user organization info (GET /organizations/user-info/:userId)
41
- */
42
- export declare const UserOrganizationInfoResponseDataSchema: z.ZodObject<{
43
- userOrgInfo: z.ZodObject<{
44
- orgId: z.ZodString;
45
- userAddress: z.ZodString;
46
- role: z.ZodEnum<typeof OrganizationMemberRole>;
47
- userIsActive: z.ZodBoolean;
48
- organizationIsActive: z.ZodBoolean;
49
- organizationCryptoFees: z.ZodString;
50
- organizationFiatFees: z.ZodString;
51
- organizationOrganizationWallet: z.ZodString;
52
- }, z.core.$strip>;
53
- }, z.core.$strip>;
54
- /**
55
- * Schema for single organization member data
56
- */
57
- export declare const OrganizationMemberDataSchema: z.ZodObject<{
58
- id: z.ZodString;
59
- orgId: z.ZodString;
60
- userId: z.ZodString;
61
- userAddress: z.ZodString;
62
- role: z.ZodEnum<typeof OrganizationMemberRole>;
63
- isActive: z.ZodBoolean;
64
- createdAt: z.ZodString;
65
- updatedAt: z.ZodString;
66
- }, z.core.$strip>;
67
- /**
68
- * Schema for organization members paginated response (POST /organizations/members)
69
- */
70
- export declare const OrganizationMembersResponseDataSchema: z.ZodObject<{
71
- totalResults: z.ZodNumber;
72
- members: z.ZodArray<z.ZodObject<{
73
- id: z.ZodString;
74
- orgId: z.ZodString;
75
- userId: z.ZodString;
76
- userAddress: z.ZodString;
77
- role: z.ZodEnum<typeof OrganizationMemberRole>;
78
- isActive: z.ZodBoolean;
79
- createdAt: z.ZodString;
80
- updatedAt: z.ZodString;
81
- }, z.core.$strip>>;
82
- page: z.ZodOptional<z.ZodNumber>;
83
- offset: z.ZodOptional<z.ZodNumber>;
84
- }, z.core.$strip>;
85
- /**
86
- * Schema for organization update response (PUT /organizations)
87
- */
88
- export declare const UpdateOrganizationResponseDataSchema: z.ZodObject<{
89
- organization: z.ZodObject<{
90
- orgId: z.ZodString;
91
- name: z.ZodString;
92
- description: z.ZodOptional<z.ZodString>;
93
- url: z.ZodOptional<z.ZodString>;
94
- organizationWallet: z.ZodString;
95
- cryptoFees: z.ZodString;
96
- fiatFees: z.ZodString;
97
- isActive: z.ZodBoolean;
98
- updatedAt: z.ZodString;
99
- }, z.core.$strip>;
100
- }, z.core.$strip>;
101
- /**
102
- * Schema for Branding object
103
- */
104
- export declare const BrandingSchema: z.ZodObject<{
105
- themeName: z.ZodOptional<z.ZodString>;
106
- logo: z.ZodOptional<z.ZodString>;
107
- leftPanelHeadingTextColor: z.ZodOptional<z.ZodString>;
108
- leftPanelBodyTextColor: z.ZodOptional<z.ZodString>;
109
- leftPanelBackgroundColor1: z.ZodOptional<z.ZodString>;
110
- leftPanelBackgroundColor2: z.ZodOptional<z.ZodString>;
111
- leftPanelBackgroundImageUrl: z.ZodOptional<z.ZodString>;
112
- rightCardTextColor: z.ZodOptional<z.ZodString>;
113
- rightCardButtonBackgroundColor: z.ZodOptional<z.ZodString>;
114
- rightCardButtonTextColor: z.ZodOptional<z.ZodString>;
115
- rightCardBackgroundColor1: z.ZodOptional<z.ZodString>;
116
- rightCardBackgroundColor2: z.ZodOptional<z.ZodString>;
117
- rightCardBackgroundImageUrl: z.ZodOptional<z.ZodString>;
118
- }, z.core.$strip>;
119
- /**
120
- * Schema for organization branding response (GET/POST /organizations/branding)
121
- */
122
- export declare const OrganizationBrandingResponseDataSchema: z.ZodObject<{
123
- branding: z.ZodNullable<z.ZodObject<{
124
- branding: z.ZodNullable<z.ZodObject<{
125
- themeName: z.ZodOptional<z.ZodString>;
126
- logo: z.ZodOptional<z.ZodString>;
127
- leftPanelHeadingTextColor: z.ZodOptional<z.ZodString>;
128
- leftPanelBodyTextColor: z.ZodOptional<z.ZodString>;
129
- leftPanelBackgroundColor1: z.ZodOptional<z.ZodString>;
130
- leftPanelBackgroundColor2: z.ZodOptional<z.ZodString>;
131
- leftPanelBackgroundImageUrl: z.ZodOptional<z.ZodString>;
132
- rightCardTextColor: z.ZodOptional<z.ZodString>;
133
- rightCardButtonBackgroundColor: z.ZodOptional<z.ZodString>;
134
- rightCardButtonTextColor: z.ZodOptional<z.ZodString>;
135
- rightCardBackgroundColor1: z.ZodOptional<z.ZodString>;
136
- rightCardBackgroundColor2: z.ZodOptional<z.ZodString>;
137
- rightCardBackgroundImageUrl: z.ZodOptional<z.ZodString>;
138
- }, z.core.$strip>>;
139
- name: z.ZodString;
140
- url: z.ZodString;
141
- }, z.core.$strip>>;
142
- }, z.core.$strip>;
143
- export type CreateUserByOrganizationResponseData = z.infer<typeof CreateUserByOrganizationResponseDataSchema>;
144
- export type CreateOrganizationResponseData = z.infer<typeof CreateOrganizationResponseDataSchema>;
145
- export type UserOrganizationInfoResponseData = z.infer<typeof UserOrganizationInfoResponseDataSchema>;
146
- export type OrganizationMemberData = z.infer<typeof OrganizationMemberDataSchema>;
147
- export type OrganizationMembersResponseData = z.infer<typeof OrganizationMembersResponseDataSchema>;
148
- export type UpdateOrganizationResponseData = z.infer<typeof UpdateOrganizationResponseDataSchema>;
149
- export type OrganizationBrandingResponseData = z.infer<typeof OrganizationBrandingResponseDataSchema>;
150
- //# sourceMappingURL=OrganizationResponseTypes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OrganizationResponseTypes.d.ts","sourceRoot":"","sources":["../../../src/lib/types/OrganizationResponseTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAMnD;;GAEG;AACH,eAAO,MAAM,0CAA0C;;;;;;;iBAOrD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;iBAqB/C,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,sCAAsC;;;;;;;;;;;iBAWjD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;iBASvC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;iBAKhD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;iBAY/C,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;iBAczB,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;iBAQjD,CAAA;AAMF,MAAM,MAAM,oCAAoC,GAAG,CAAC,CAAC,KAAK,CACxD,OAAO,0CAA0C,CAClD,CAAA;AACD,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA;AACjF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CACnD,OAAO,qCAAqC,CAC7C,CAAA;AACD,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA"}
@@ -1,124 +0,0 @@
1
- import { z } from 'zod';
2
- import { OrganizationMemberRole } from './types.js';
3
- // ============================================================================
4
- // Zod Schemas for Response Data Types
5
- // ============================================================================
6
- /**
7
- * Schema for creating a user by organization (POST /account)
8
- */
9
- export const CreateUserByOrganizationResponseDataSchema = z.object({
10
- walletResult: z.object({
11
- hash: z.string(),
12
- userId: z.string(),
13
- userWallet: z.string(),
14
- alreadyMember: z.boolean(),
15
- }),
16
- });
17
- /**
18
- * Schema for creating an organization (POST /organizations)
19
- */
20
- export const CreateOrganizationResponseDataSchema = z.object({
21
- organization: z.object({
22
- orgId: z.string(),
23
- name: z.string(),
24
- description: z.string().optional(),
25
- url: z.string().optional(),
26
- organizationWallet: z.string(),
27
- cryptoFees: z.string(),
28
- fiatFees: z.string(),
29
- isActive: z.boolean(),
30
- createdAt: z.string().datetime(),
31
- }),
32
- adminMember: z.object({
33
- id: z.string(),
34
- orgId: z.string(),
35
- userId: z.string(),
36
- userAddress: z.string(),
37
- role: z.nativeEnum(OrganizationMemberRole),
38
- isActive: z.boolean(),
39
- createdAt: z.string().datetime(),
40
- }),
41
- });
42
- /**
43
- * Schema for user organization info (GET /organizations/user-info/:userId)
44
- */
45
- export const UserOrganizationInfoResponseDataSchema = z.object({
46
- userOrgInfo: z.object({
47
- orgId: z.string(),
48
- userAddress: z.string(),
49
- role: z.nativeEnum(OrganizationMemberRole),
50
- userIsActive: z.boolean(),
51
- organizationIsActive: z.boolean(),
52
- organizationCryptoFees: z.string(),
53
- organizationFiatFees: z.string(),
54
- organizationOrganizationWallet: z.string(),
55
- }),
56
- });
57
- /**
58
- * Schema for single organization member data
59
- */
60
- export const OrganizationMemberDataSchema = z.object({
61
- id: z.string(),
62
- orgId: z.string(),
63
- userId: z.string(),
64
- userAddress: z.string(),
65
- role: z.nativeEnum(OrganizationMemberRole),
66
- isActive: z.boolean(),
67
- createdAt: z.string().datetime(),
68
- updatedAt: z.string().datetime(),
69
- });
70
- /**
71
- * Schema for organization members paginated response (POST /organizations/members)
72
- */
73
- export const OrganizationMembersResponseDataSchema = z.object({
74
- totalResults: z.number(),
75
- members: z.array(OrganizationMemberDataSchema),
76
- page: z.number().optional(),
77
- offset: z.number().optional(),
78
- });
79
- /**
80
- * Schema for organization update response (PUT /organizations)
81
- */
82
- export const UpdateOrganizationResponseDataSchema = z.object({
83
- organization: z.object({
84
- orgId: z.string(),
85
- name: z.string(),
86
- description: z.string().optional(),
87
- url: z.string().optional(),
88
- organizationWallet: z.string(),
89
- cryptoFees: z.string(),
90
- fiatFees: z.string(),
91
- isActive: z.boolean(),
92
- updatedAt: z.string().datetime(),
93
- }),
94
- });
95
- /**
96
- * Schema for Branding object
97
- */
98
- export const BrandingSchema = z.object({
99
- themeName: z.string().optional(),
100
- logo: z.string().optional(),
101
- leftPanelHeadingTextColor: z.string().optional(),
102
- leftPanelBodyTextColor: z.string().optional(),
103
- leftPanelBackgroundColor1: z.string().optional(),
104
- leftPanelBackgroundColor2: z.string().optional(),
105
- leftPanelBackgroundImageUrl: z.string().optional(),
106
- rightCardTextColor: z.string().optional(),
107
- rightCardButtonBackgroundColor: z.string().optional(),
108
- rightCardButtonTextColor: z.string().optional(),
109
- rightCardBackgroundColor1: z.string().optional(),
110
- rightCardBackgroundColor2: z.string().optional(),
111
- rightCardBackgroundImageUrl: z.string().optional(),
112
- });
113
- /**
114
- * Schema for organization branding response (GET/POST /organizations/branding)
115
- */
116
- export const OrganizationBrandingResponseDataSchema = z.object({
117
- branding: z
118
- .object({
119
- branding: BrandingSchema.nullable(),
120
- name: z.string(),
121
- url: z.string(),
122
- })
123
- .nullable(),
124
- });