@viridial/shared 1.0.65 → 1.0.66
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/dist/api/organization-review.service.d.ts +35 -0
- package/dist/api/organization-review.service.d.ts.map +1 -0
- package/dist/api/organization-review.service.js +47 -0
- package/dist/constants/api.constants.d.ts +7 -0
- package/dist/constants/api.constants.d.ts.map +1 -1
- package/dist/constants/api.constants.js +8 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/types/organization-review.types.d.ts +56 -0
- package/dist/types/organization-review.types.d.ts.map +1 -0
- package/dist/types/organization-review.types.js +4 -0
- package/package.json +1 -1
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service pour les avis d'agences immobilières
|
|
3
|
+
*/
|
|
4
|
+
import type { OrganizationReview, OrganizationReviewCreate, OrganizationReviewStats, OrganizationWithReviews } from '../types/organization-review.types';
|
|
5
|
+
export declare const organizationReviewService: {
|
|
6
|
+
/**
|
|
7
|
+
* Rechercher des agences avec leurs statistiques d'avis
|
|
8
|
+
*/
|
|
9
|
+
searchOrganizations(params?: {
|
|
10
|
+
city?: string;
|
|
11
|
+
postalCode?: string;
|
|
12
|
+
minRating?: number;
|
|
13
|
+
}): Promise<OrganizationWithReviews[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Obtenir les avis approuvés d'une agence
|
|
16
|
+
*/
|
|
17
|
+
getApprovedReviews(organizationId: number, page?: number, size?: number): Promise<{
|
|
18
|
+
content: OrganizationReview[];
|
|
19
|
+
totalElements: number;
|
|
20
|
+
totalPages: number;
|
|
21
|
+
}>;
|
|
22
|
+
/**
|
|
23
|
+
* Obtenir les statistiques d'avis d'une agence
|
|
24
|
+
*/
|
|
25
|
+
getReviewStats(organizationId: number): Promise<OrganizationReviewStats>;
|
|
26
|
+
/**
|
|
27
|
+
* Créer un avis pour une agence
|
|
28
|
+
*/
|
|
29
|
+
createReview(organizationId: number, review: OrganizationReviewCreate): Promise<OrganizationReview>;
|
|
30
|
+
/**
|
|
31
|
+
* Marquer un avis comme utile
|
|
32
|
+
*/
|
|
33
|
+
markAsHelpful(reviewId: number): Promise<void>;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=organization-review.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"organization-review.service.d.ts","sourceRoot":"","sources":["../../api/organization-review.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,oCAAoC,CAAA;AAE3C,eAAO,MAAM,yBAAyB;IACpC;;OAEG;iCACgC;QACjC,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAYtC;;OAEG;uCAEe,MAAM,SAChB,MAAM,SACN,MAAM,GACX,OAAO,CAAC;QAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IASxF;;OAEG;mCACkC,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAO9E;;OAEG;iCACgC,MAAM,UAAU,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQzG;;OAEG;4BAC2B,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGrD,CAAA"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service pour les avis d'agences immobilières
|
|
3
|
+
*/
|
|
4
|
+
import { httpClient } from './http.client';
|
|
5
|
+
export const organizationReviewService = {
|
|
6
|
+
/**
|
|
7
|
+
* Rechercher des agences avec leurs statistiques d'avis
|
|
8
|
+
*/
|
|
9
|
+
async searchOrganizations(params) {
|
|
10
|
+
const queryParams = new URLSearchParams();
|
|
11
|
+
if (params?.city)
|
|
12
|
+
queryParams.append('city', params.city);
|
|
13
|
+
if (params?.postalCode)
|
|
14
|
+
queryParams.append('postalCode', params.postalCode);
|
|
15
|
+
if (params?.minRating)
|
|
16
|
+
queryParams.append('minRating', params.minRating.toString());
|
|
17
|
+
const response = await httpClient.get(`/api/public/organizations/search${queryParams.toString() ? `?${queryParams.toString()}` : ''}`);
|
|
18
|
+
return response.data;
|
|
19
|
+
},
|
|
20
|
+
/**
|
|
21
|
+
* Obtenir les avis approuvés d'une agence
|
|
22
|
+
*/
|
|
23
|
+
async getApprovedReviews(organizationId, page = 0, size = 10) {
|
|
24
|
+
const response = await httpClient.get(`/api/public/organizations/${organizationId}/reviews?page=${page}&size=${size}`);
|
|
25
|
+
return response.data;
|
|
26
|
+
},
|
|
27
|
+
/**
|
|
28
|
+
* Obtenir les statistiques d'avis d'une agence
|
|
29
|
+
*/
|
|
30
|
+
async getReviewStats(organizationId) {
|
|
31
|
+
const response = await httpClient.get(`/api/public/organizations/${organizationId}/reviews/stats`);
|
|
32
|
+
return response.data;
|
|
33
|
+
},
|
|
34
|
+
/**
|
|
35
|
+
* Créer un avis pour une agence
|
|
36
|
+
*/
|
|
37
|
+
async createReview(organizationId, review) {
|
|
38
|
+
const response = await httpClient.post(`/api/public/organizations/${organizationId}/reviews`, review);
|
|
39
|
+
return response.data;
|
|
40
|
+
},
|
|
41
|
+
/**
|
|
42
|
+
* Marquer un avis comme utile
|
|
43
|
+
*/
|
|
44
|
+
async markAsHelpful(reviewId) {
|
|
45
|
+
await httpClient.post(`/api/public/organizations/reviews/${reviewId}/helpful`);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
@@ -153,6 +153,13 @@ export declare const API_ENDPOINTS: {
|
|
|
153
153
|
readonly UPDATE_STATUS: (id: number) => string;
|
|
154
154
|
readonly MARK_HELPFUL: (id: number) => string;
|
|
155
155
|
};
|
|
156
|
+
readonly ORGANIZATION_REVIEWS: {
|
|
157
|
+
readonly SEARCH: "/api/public/organizations/search";
|
|
158
|
+
readonly BY_ORGANIZATION: (id: number) => string;
|
|
159
|
+
readonly STATS: (id: number) => string;
|
|
160
|
+
readonly CREATE: (id: number) => string;
|
|
161
|
+
readonly MARK_HELPFUL: (id: number) => string;
|
|
162
|
+
};
|
|
156
163
|
};
|
|
157
164
|
/**
|
|
158
165
|
* Get API base URL from environment
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.constants.d.ts","sourceRoot":"","sources":["../../constants/api.constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;6BAcV,MAAM;gCACH,MAAM;;;qCAGD,MAAM;2CACA,MAAM;4CACL,MAAM;;;;6BAKrB,MAAM;;2CAEQ,MAAM;kCACf,MAAM;;;;6BAKX,MAAM;2CACQ,MAAM;oDACG,MAAM;;qCAErB,MAAM;8CACG,MAAM;+CACL,MAAM;+BACtB,MAAM;8BACP,MAAM;gCACJ,MAAM;gCACN,MAAM;;;8CAIQ,MAAM;2CACT,MAAM;oDACG,MAAM;;;;6BAK7B,MAAM;;;;;;gCAMH,MAAM;;;;6BAKT,MAAM;;;;;;;6BAQN,MAAM;sCACG,MAAM;;sCAEN,MAAM;;;;;;6BAOf,MAAM;;gCAEH,MAAM;;;;;;;iCAQP,MAAM;uDACgB,MAAM;8DACC,MAAM;kCAClC,MAAM;iCACP,MAAM;;;;;iCAKN,MAAM;gDACS,MAAM;uDACC,MAAM;qCACxB,MAAM;yCACF,MAAM;;;;;iCAKd,MAAM;qCACF,MAAM;;;;;;6BAOZ,MAAM;;iCAEF,MAAM;qCACF,MAAM;;;;;6BAMd,MAAM;;;;;6BAMN,MAAM;;6BAEN,MAAM;;;iCAGJ,MAAM;mCACJ,MAAM;kCACP,MAAM;;;;;6BAMT,MAAM;2CACQ,MAAM;iCAChB,MAAM;oCACH,MAAM;oCACN,MAAM;+BACX,MAAM;;;;;6BAMR,MAAM;2CACQ,MAAM;+CACF,MAAM;iDACJ,MAAM;mCACpB,MAAM;qCACJ,MAAM;qCACN,MAAM;oCACP,MAAM;;CAEnB,CAAA;AAEV;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"api.constants.d.ts","sourceRoot":"","sources":["../../constants/api.constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;6BAcV,MAAM;gCACH,MAAM;;;qCAGD,MAAM;2CACA,MAAM;4CACL,MAAM;;;;6BAKrB,MAAM;;2CAEQ,MAAM;kCACf,MAAM;;;;6BAKX,MAAM;2CACQ,MAAM;oDACG,MAAM;;qCAErB,MAAM;8CACG,MAAM;+CACL,MAAM;+BACtB,MAAM;8BACP,MAAM;gCACJ,MAAM;gCACN,MAAM;;;8CAIQ,MAAM;2CACT,MAAM;oDACG,MAAM;;;;6BAK7B,MAAM;;;;;;gCAMH,MAAM;;;;6BAKT,MAAM;;;;;;;6BAQN,MAAM;sCACG,MAAM;;sCAEN,MAAM;;;;;;6BAOf,MAAM;;gCAEH,MAAM;;;;;;;iCAQP,MAAM;uDACgB,MAAM;8DACC,MAAM;kCAClC,MAAM;iCACP,MAAM;;;;;iCAKN,MAAM;gDACS,MAAM;uDACC,MAAM;qCACxB,MAAM;yCACF,MAAM;;;;;iCAKd,MAAM;qCACF,MAAM;;;;;;6BAOZ,MAAM;;iCAEF,MAAM;qCACF,MAAM;;;;;6BAMd,MAAM;;;;;6BAMN,MAAM;;6BAEN,MAAM;;;iCAGJ,MAAM;mCACJ,MAAM;kCACP,MAAM;;;;;6BAMT,MAAM;2CACQ,MAAM;iCAChB,MAAM;oCACH,MAAM;oCACN,MAAM;+BACX,MAAM;;;;;6BAMR,MAAM;2CACQ,MAAM;+CACF,MAAM;iDACJ,MAAM;mCACpB,MAAM;qCACJ,MAAM;qCACN,MAAM;oCACP,MAAM;;;;uCAKH,MAAM;6BAChB,MAAM;8BACL,MAAM;oCACA,MAAM;;CAEnB,CAAA;AAEV;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,SAAS,CAAA"}
|
|
@@ -167,6 +167,14 @@ export const API_ENDPOINTS = {
|
|
|
167
167
|
BY_STATUS: (status) => `/api/reviews/status/${status}`,
|
|
168
168
|
UPDATE_STATUS: (id) => `/api/reviews/${id}/status`,
|
|
169
169
|
MARK_HELPFUL: (id) => `/api/reviews/${id}/helpful`
|
|
170
|
+
},
|
|
171
|
+
// Organization Reviews
|
|
172
|
+
ORGANIZATION_REVIEWS: {
|
|
173
|
+
SEARCH: '/api/public/organizations/search',
|
|
174
|
+
BY_ORGANIZATION: (id) => `/api/public/organizations/${id}/reviews`,
|
|
175
|
+
STATS: (id) => `/api/public/organizations/${id}/reviews/stats`,
|
|
176
|
+
CREATE: (id) => `/api/public/organizations/${id}/reviews`,
|
|
177
|
+
MARK_HELPFUL: (id) => `/api/public/organizations/reviews/${id}/helpful`
|
|
170
178
|
}
|
|
171
179
|
};
|
|
172
180
|
/**
|
package/dist/index.d.ts
CHANGED
|
@@ -51,4 +51,6 @@ export { PropertyType, PropertyStatus } from './types/property.types';
|
|
|
51
51
|
export { tokenUtils } from './utils/token.utils';
|
|
52
52
|
export { API_ENDPOINTS, API_BASE_URL } from './constants/api.constants';
|
|
53
53
|
export { UserStatus, UserRole } from './types/user.types';
|
|
54
|
+
export type { OrganizationReview, OrganizationReviewCreate, OrganizationReviewStats, OrganizationWithReviews, RatingDistribution } from './types/organization-review.types';
|
|
55
|
+
export { organizationReviewService } from './api/organization-review.service';
|
|
54
56
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -36,3 +36,4 @@ export { tokenUtils } from './utils/token.utils';
|
|
|
36
36
|
export { API_ENDPOINTS, API_BASE_URL } from './constants/api.constants';
|
|
37
37
|
// Enums
|
|
38
38
|
export { UserStatus, UserRole } from './types/user.types';
|
|
39
|
+
export { organizationReviewService } from './api/organization-review.service';
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types pour les avis d'agences immobilières
|
|
3
|
+
*/
|
|
4
|
+
export interface OrganizationReview {
|
|
5
|
+
id: number;
|
|
6
|
+
organizationId: number;
|
|
7
|
+
userId?: number;
|
|
8
|
+
authorName?: string;
|
|
9
|
+
authorEmail?: string;
|
|
10
|
+
rating: number;
|
|
11
|
+
comment: string;
|
|
12
|
+
status: 'PENDING' | 'APPROVED' | 'REJECTED';
|
|
13
|
+
verifiedClient?: boolean;
|
|
14
|
+
helpfulCount: number;
|
|
15
|
+
transactionType?: 'SALE' | 'RENT';
|
|
16
|
+
createdAt: string;
|
|
17
|
+
updatedAt?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface OrganizationReviewCreate {
|
|
20
|
+
organizationId: number;
|
|
21
|
+
userId?: number;
|
|
22
|
+
authorName?: string;
|
|
23
|
+
authorEmail?: string;
|
|
24
|
+
rating: number;
|
|
25
|
+
comment: string;
|
|
26
|
+
verifiedClient?: boolean;
|
|
27
|
+
transactionType?: 'SALE' | 'RENT';
|
|
28
|
+
}
|
|
29
|
+
export interface RatingDistribution {
|
|
30
|
+
fiveStars: number;
|
|
31
|
+
fourStars: number;
|
|
32
|
+
threeStars: number;
|
|
33
|
+
twoStars: number;
|
|
34
|
+
oneStar: number;
|
|
35
|
+
}
|
|
36
|
+
export interface OrganizationReviewStats {
|
|
37
|
+
averageRating: number;
|
|
38
|
+
totalReviews: number;
|
|
39
|
+
ratingDistribution: RatingDistribution;
|
|
40
|
+
verifiedClientPercentage: number;
|
|
41
|
+
}
|
|
42
|
+
export interface OrganizationWithReviews {
|
|
43
|
+
id: number;
|
|
44
|
+
name: string;
|
|
45
|
+
description?: string;
|
|
46
|
+
logoUrl?: string;
|
|
47
|
+
address?: string;
|
|
48
|
+
city?: string;
|
|
49
|
+
postalCode?: string;
|
|
50
|
+
country?: string;
|
|
51
|
+
phone?: string;
|
|
52
|
+
email?: string;
|
|
53
|
+
reviewStats: OrganizationReviewStats;
|
|
54
|
+
propertyCount: number;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=organization-review.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"organization-review.types.d.ts","sourceRoot":"","sources":["../../types/organization-review.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAA;IAC3C,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,wBAAwB,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,uBAAuB,CAAA;IACpC,aAAa,EAAE,MAAM,CAAA;CACtB"}
|