@viridial/shared 1.0.57 → 1.0.59
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.service.d.ts +2 -0
- package/dist/api/organization.service.d.ts.map +1 -1
- package/dist/api/price-history.service.d.ts +26 -0
- package/dist/api/price-history.service.d.ts.map +1 -0
- package/dist/api/price-history.service.js +34 -0
- package/dist/api/review.service.d.ts +66 -0
- package/dist/api/review.service.d.ts.map +1 -0
- package/dist/api/review.service.js +76 -0
- package/dist/constants/api.constants.d.ts +14 -0
- package/dist/constants/api.constants.d.ts.map +1 -1
- package/dist/constants/api.constants.js +16 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/types/price-history.types.d.ts +37 -0
- package/dist/types/price-history.types.d.ts.map +1 -0
- package/dist/types/price-history.types.js +4 -0
- package/dist/types/review.types.d.ts +46 -0
- package/dist/types/review.types.d.ts.map +1 -0
- package/dist/types/review.types.js +9 -0
- package/package.json +1 -1
|
@@ -14,6 +14,7 @@ export interface Organization {
|
|
|
14
14
|
email?: string;
|
|
15
15
|
customDomains?: string;
|
|
16
16
|
quotas?: string;
|
|
17
|
+
defaultOfficeHours?: string;
|
|
17
18
|
createdAt: string;
|
|
18
19
|
updatedAt?: string;
|
|
19
20
|
}
|
|
@@ -27,6 +28,7 @@ export interface OrganizationSettings {
|
|
|
27
28
|
email?: string;
|
|
28
29
|
customDomains?: string;
|
|
29
30
|
quotas?: string;
|
|
31
|
+
defaultOfficeHours?: string;
|
|
30
32
|
}
|
|
31
33
|
export interface OrganizationCreate {
|
|
32
34
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization.service.d.ts","sourceRoot":"","sources":["../../api/organization.service.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,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,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,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,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"organization.service.d.ts","sourceRoot":"","sources":["../../api/organization.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { PriceHistory, PriceHistoryCreate, PriceHistoryStats } from '../types/price-history.types';
|
|
2
|
+
/**
|
|
3
|
+
* Service de gestion de l'historique des prix
|
|
4
|
+
*/
|
|
5
|
+
export declare const priceHistoryService: {
|
|
6
|
+
/**
|
|
7
|
+
* Créer une nouvelle entrée d'historique de prix
|
|
8
|
+
*/
|
|
9
|
+
create(propertyId: number, data: PriceHistoryCreate): Promise<PriceHistory>;
|
|
10
|
+
/**
|
|
11
|
+
* Récupérer l'historique des prix pour une propriété
|
|
12
|
+
*/
|
|
13
|
+
getByProperty(propertyId: number, params?: {
|
|
14
|
+
page?: number;
|
|
15
|
+
size?: number;
|
|
16
|
+
}): Promise<PriceHistory[]>;
|
|
17
|
+
/**
|
|
18
|
+
* Récupérer les statistiques sur l'historique des prix
|
|
19
|
+
*/
|
|
20
|
+
getStatsByProperty(propertyId: number): Promise<PriceHistoryStats>;
|
|
21
|
+
/**
|
|
22
|
+
* Supprimer une entrée d'historique
|
|
23
|
+
*/
|
|
24
|
+
delete(id: number): Promise<void>;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=price-history.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"price-history.service.d.ts","sourceRoot":"","sources":["../../api/price-history.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAEvG;;GAEG;AACH,eAAO,MAAM,mBAAmB;IAC9B;;OAEG;uBACsB,MAAM,QAAQ,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQjF;;OAEG;8BAC6B,MAAM,WAAW;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAQ3G;;OAEG;mCACkC,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAOxE;;OAEG;eACc,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGxC,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { httpClient } from './http.client';
|
|
2
|
+
import { API_ENDPOINTS } from '../constants/api.constants';
|
|
3
|
+
/**
|
|
4
|
+
* Service de gestion de l'historique des prix
|
|
5
|
+
*/
|
|
6
|
+
export const priceHistoryService = {
|
|
7
|
+
/**
|
|
8
|
+
* Créer une nouvelle entrée d'historique de prix
|
|
9
|
+
*/
|
|
10
|
+
async create(propertyId, data) {
|
|
11
|
+
const response = await httpClient.post(API_ENDPOINTS.PROPERTIES.PRICE_HISTORY(propertyId), data);
|
|
12
|
+
return response.data;
|
|
13
|
+
},
|
|
14
|
+
/**
|
|
15
|
+
* Récupérer l'historique des prix pour une propriété
|
|
16
|
+
*/
|
|
17
|
+
async getByProperty(propertyId, params) {
|
|
18
|
+
const response = await httpClient.get(API_ENDPOINTS.PROPERTIES.PRICE_HISTORY(propertyId), { params });
|
|
19
|
+
return response.data;
|
|
20
|
+
},
|
|
21
|
+
/**
|
|
22
|
+
* Récupérer les statistiques sur l'historique des prix
|
|
23
|
+
*/
|
|
24
|
+
async getStatsByProperty(propertyId) {
|
|
25
|
+
const response = await httpClient.get(API_ENDPOINTS.PROPERTIES.PRICE_HISTORY_STATS(propertyId));
|
|
26
|
+
return response.data;
|
|
27
|
+
},
|
|
28
|
+
/**
|
|
29
|
+
* Supprimer une entrée d'historique
|
|
30
|
+
*/
|
|
31
|
+
async delete(id) {
|
|
32
|
+
await httpClient.delete(API_ENDPOINTS.PROPERTIES.PRICE_HISTORY_DELETE(id));
|
|
33
|
+
}
|
|
34
|
+
};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { Review, ReviewCreate, ReviewStats } from '../types/review.types';
|
|
2
|
+
export interface PaginatedResponse<T> {
|
|
3
|
+
content: T[];
|
|
4
|
+
totalElements: number;
|
|
5
|
+
totalPages: number;
|
|
6
|
+
size: number;
|
|
7
|
+
number: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Service de gestion des avis
|
|
11
|
+
*/
|
|
12
|
+
export declare const reviewService: {
|
|
13
|
+
/**
|
|
14
|
+
* Créer un nouvel avis
|
|
15
|
+
*/
|
|
16
|
+
create(data: ReviewCreate): Promise<Review>;
|
|
17
|
+
/**
|
|
18
|
+
* Récupérer les avis approuvés d'une propriété (public)
|
|
19
|
+
*/
|
|
20
|
+
getApprovedByProperty(propertyId: number, params?: {
|
|
21
|
+
page?: number;
|
|
22
|
+
size?: number;
|
|
23
|
+
}): Promise<PaginatedResponse<Review>>;
|
|
24
|
+
/**
|
|
25
|
+
* Récupérer tous les avis d'une propriété (admin)
|
|
26
|
+
*/
|
|
27
|
+
getAllByProperty(propertyId: number, params?: {
|
|
28
|
+
page?: number;
|
|
29
|
+
size?: number;
|
|
30
|
+
}): Promise<PaginatedResponse<Review>>;
|
|
31
|
+
/**
|
|
32
|
+
* Récupérer les statistiques des avis d'une propriété
|
|
33
|
+
*/
|
|
34
|
+
getStatsByProperty(propertyId: number): Promise<ReviewStats>;
|
|
35
|
+
/**
|
|
36
|
+
* Récupérer un avis par ID
|
|
37
|
+
*/
|
|
38
|
+
getById(id: number): Promise<Review>;
|
|
39
|
+
/**
|
|
40
|
+
* Récupérer les avis d'un utilisateur
|
|
41
|
+
*/
|
|
42
|
+
getByUser(userId: number, params?: {
|
|
43
|
+
page?: number;
|
|
44
|
+
size?: number;
|
|
45
|
+
}): Promise<PaginatedResponse<Review>>;
|
|
46
|
+
/**
|
|
47
|
+
* Récupérer les avis par statut (admin)
|
|
48
|
+
*/
|
|
49
|
+
getByStatus(status: string, params?: {
|
|
50
|
+
page?: number;
|
|
51
|
+
size?: number;
|
|
52
|
+
}): Promise<PaginatedResponse<Review>>;
|
|
53
|
+
/**
|
|
54
|
+
* Mettre à jour le statut d'un avis (admin)
|
|
55
|
+
*/
|
|
56
|
+
updateStatus(id: number, status: string): Promise<Review>;
|
|
57
|
+
/**
|
|
58
|
+
* Marquer un avis comme utile
|
|
59
|
+
*/
|
|
60
|
+
markHelpful(id: number): Promise<Review>;
|
|
61
|
+
/**
|
|
62
|
+
* Supprimer un avis
|
|
63
|
+
*/
|
|
64
|
+
delete(id: number): Promise<void>;
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=review.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.service.d.ts","sourceRoot":"","sources":["../../api/review.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAsB,MAAM,uBAAuB,CAAA;AAElG,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB;;OAEG;iBACgB,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjD;;OAEG;sCACqC,MAAM,WAAW;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAQ9H;;OAEG;iCACgC,MAAM,WAAW;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAQzH;;OAEG;mCACkC,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAOlE;;OAEG;gBACe,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK1C;;OAEG;sBACqB,MAAM,WAAW;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAQ9G;;OAEG;wBACuB,MAAM,WAAW;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAQhH;;OAEG;qBACoB,MAAM,UAAU,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS/D;;OAEG;oBACmB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK9C;;OAEG;eACc,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGxC,CAAA"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { httpClient } from './http.client';
|
|
2
|
+
import { API_ENDPOINTS } from '../constants/api.constants';
|
|
3
|
+
/**
|
|
4
|
+
* Service de gestion des avis
|
|
5
|
+
*/
|
|
6
|
+
export const reviewService = {
|
|
7
|
+
/**
|
|
8
|
+
* Créer un nouvel avis
|
|
9
|
+
*/
|
|
10
|
+
async create(data) {
|
|
11
|
+
const response = await httpClient.post(API_ENDPOINTS.REVIEWS.BASE, data);
|
|
12
|
+
return response.data;
|
|
13
|
+
},
|
|
14
|
+
/**
|
|
15
|
+
* Récupérer les avis approuvés d'une propriété (public)
|
|
16
|
+
*/
|
|
17
|
+
async getApprovedByProperty(propertyId, params) {
|
|
18
|
+
const response = await httpClient.get(API_ENDPOINTS.REVIEWS.BY_PROPERTY(propertyId), { params });
|
|
19
|
+
return response.data;
|
|
20
|
+
},
|
|
21
|
+
/**
|
|
22
|
+
* Récupérer tous les avis d'une propriété (admin)
|
|
23
|
+
*/
|
|
24
|
+
async getAllByProperty(propertyId, params) {
|
|
25
|
+
const response = await httpClient.get(API_ENDPOINTS.REVIEWS.BY_PROPERTY_ALL(propertyId), { params });
|
|
26
|
+
return response.data;
|
|
27
|
+
},
|
|
28
|
+
/**
|
|
29
|
+
* Récupérer les statistiques des avis d'une propriété
|
|
30
|
+
*/
|
|
31
|
+
async getStatsByProperty(propertyId) {
|
|
32
|
+
const response = await httpClient.get(API_ENDPOINTS.REVIEWS.BY_PROPERTY_STATS(propertyId));
|
|
33
|
+
return response.data;
|
|
34
|
+
},
|
|
35
|
+
/**
|
|
36
|
+
* Récupérer un avis par ID
|
|
37
|
+
*/
|
|
38
|
+
async getById(id) {
|
|
39
|
+
const response = await httpClient.get(API_ENDPOINTS.REVIEWS.BY_ID(id));
|
|
40
|
+
return response.data;
|
|
41
|
+
},
|
|
42
|
+
/**
|
|
43
|
+
* Récupérer les avis d'un utilisateur
|
|
44
|
+
*/
|
|
45
|
+
async getByUser(userId, params) {
|
|
46
|
+
const response = await httpClient.get(API_ENDPOINTS.REVIEWS.BY_USER(userId), { params });
|
|
47
|
+
return response.data;
|
|
48
|
+
},
|
|
49
|
+
/**
|
|
50
|
+
* Récupérer les avis par statut (admin)
|
|
51
|
+
*/
|
|
52
|
+
async getByStatus(status, params) {
|
|
53
|
+
const response = await httpClient.get(API_ENDPOINTS.REVIEWS.BY_STATUS(status), { params });
|
|
54
|
+
return response.data;
|
|
55
|
+
},
|
|
56
|
+
/**
|
|
57
|
+
* Mettre à jour le statut d'un avis (admin)
|
|
58
|
+
*/
|
|
59
|
+
async updateStatus(id, status) {
|
|
60
|
+
const response = await httpClient.put(API_ENDPOINTS.REVIEWS.UPDATE_STATUS(id), null, { params: { status } });
|
|
61
|
+
return response.data;
|
|
62
|
+
},
|
|
63
|
+
/**
|
|
64
|
+
* Marquer un avis comme utile
|
|
65
|
+
*/
|
|
66
|
+
async markHelpful(id) {
|
|
67
|
+
const response = await httpClient.post(API_ENDPOINTS.REVIEWS.MARK_HELPFUL(id));
|
|
68
|
+
return response.data;
|
|
69
|
+
},
|
|
70
|
+
/**
|
|
71
|
+
* Supprimer un avis
|
|
72
|
+
*/
|
|
73
|
+
async delete(id) {
|
|
74
|
+
await httpClient.delete(API_ENDPOINTS.REVIEWS.BY_ID(id));
|
|
75
|
+
}
|
|
76
|
+
};
|
|
@@ -17,6 +17,9 @@ export declare const API_ENDPOINTS: {
|
|
|
17
17
|
readonly FEATURES: (id: number) => string;
|
|
18
18
|
readonly STATS: "/api/properties/stats/dashboard";
|
|
19
19
|
readonly UNREAD_MESSAGES_COUNT: "/api/properties/unread-messages-count";
|
|
20
|
+
readonly PRICE_HISTORY: (id: number) => string;
|
|
21
|
+
readonly PRICE_HISTORY_STATS: (id: number) => string;
|
|
22
|
+
readonly PRICE_HISTORY_DELETE: (id: number) => string;
|
|
20
23
|
};
|
|
21
24
|
readonly USERS: {
|
|
22
25
|
readonly BASE: "/api/identity/users";
|
|
@@ -113,6 +116,17 @@ export declare const API_ENDPOINTS: {
|
|
|
113
116
|
readonly ARCHIVE: (id: number) => string;
|
|
114
117
|
readonly NEW_COUNT: "/api/contact-messages/stats/new-count";
|
|
115
118
|
};
|
|
119
|
+
readonly REVIEWS: {
|
|
120
|
+
readonly BASE: "/api/reviews";
|
|
121
|
+
readonly BY_ID: (id: number) => string;
|
|
122
|
+
readonly BY_PROPERTY: (propertyId: number) => string;
|
|
123
|
+
readonly BY_PROPERTY_ALL: (propertyId: number) => string;
|
|
124
|
+
readonly BY_PROPERTY_STATS: (propertyId: number) => string;
|
|
125
|
+
readonly BY_USER: (userId: number) => string;
|
|
126
|
+
readonly BY_STATUS: (status: string) => string;
|
|
127
|
+
readonly UPDATE_STATUS: (id: number) => string;
|
|
128
|
+
readonly MARK_HELPFUL: (id: number) => string;
|
|
129
|
+
};
|
|
116
130
|
};
|
|
117
131
|
/**
|
|
118
132
|
* 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
|
|
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;;;;;;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"}
|
|
@@ -18,7 +18,10 @@ export const API_ENDPOINTS = {
|
|
|
18
18
|
BY_ID: (id) => `/api/properties/${id}`,
|
|
19
19
|
FEATURES: (id) => `/api/properties/${id}/features`,
|
|
20
20
|
STATS: '/api/properties/stats/dashboard',
|
|
21
|
-
UNREAD_MESSAGES_COUNT: '/api/properties/unread-messages-count'
|
|
21
|
+
UNREAD_MESSAGES_COUNT: '/api/properties/unread-messages-count',
|
|
22
|
+
PRICE_HISTORY: (id) => `/api/properties/${id}/price-history`,
|
|
23
|
+
PRICE_HISTORY_STATS: (id) => `/api/properties/${id}/price-history/stats`,
|
|
24
|
+
PRICE_HISTORY_DELETE: (id) => `/api/properties/price-history/${id}`
|
|
22
25
|
},
|
|
23
26
|
// Users
|
|
24
27
|
USERS: {
|
|
@@ -123,6 +126,18 @@ export const API_ENDPOINTS = {
|
|
|
123
126
|
UPDATE_NOTES: (id) => `/api/contact-messages/${id}/notes`,
|
|
124
127
|
ARCHIVE: (id) => `/api/contact-messages/${id}/archive`,
|
|
125
128
|
NEW_COUNT: '/api/contact-messages/stats/new-count'
|
|
129
|
+
},
|
|
130
|
+
// Reviews
|
|
131
|
+
REVIEWS: {
|
|
132
|
+
BASE: '/api/reviews',
|
|
133
|
+
BY_ID: (id) => `/api/reviews/${id}`,
|
|
134
|
+
BY_PROPERTY: (propertyId) => `/api/reviews/property/${propertyId}`,
|
|
135
|
+
BY_PROPERTY_ALL: (propertyId) => `/api/reviews/property/${propertyId}/all`,
|
|
136
|
+
BY_PROPERTY_STATS: (propertyId) => `/api/reviews/property/${propertyId}/stats`,
|
|
137
|
+
BY_USER: (userId) => `/api/reviews/user/${userId}`,
|
|
138
|
+
BY_STATUS: (status) => `/api/reviews/status/${status}`,
|
|
139
|
+
UPDATE_STATUS: (id) => `/api/reviews/${id}/status`,
|
|
140
|
+
MARK_HELPFUL: (id) => `/api/reviews/${id}/helpful`
|
|
126
141
|
}
|
|
127
142
|
};
|
|
128
143
|
/**
|
package/dist/index.d.ts
CHANGED
|
@@ -17,6 +17,8 @@ export { workflowService } from './api/workflow.service';
|
|
|
17
17
|
export { roleService } from './api/role.service';
|
|
18
18
|
export { contactService } from './api/contact.service';
|
|
19
19
|
export type { PaginatedResponse } from './api/contact.service';
|
|
20
|
+
export { reviewService } from './api/review.service';
|
|
21
|
+
export { priceHistoryService } from './api/price-history.service';
|
|
20
22
|
export { TaskStatusEnum } from './types/workflow.types';
|
|
21
23
|
export type { Workflow, WorkflowCreate, WorkflowUpdate, WorkflowSearchParams, Task, TaskCreate, TaskUpdate, TaskSearchParams, TaskApproveParams, TaskRejectParams, TaskStatus } from './types/workflow.types';
|
|
22
24
|
export type { Organization, OrganizationCreate, OrganizationUpdate, OrganizationSearchParams, OrganizationSettings, Team, TeamCreate, TeamUpdate, OrganizationUser } from './api/organization.service';
|
|
@@ -36,6 +38,8 @@ export type * from './types/notification.types';
|
|
|
36
38
|
export type * from './types/workflow.types';
|
|
37
39
|
export type * from './types/role.types';
|
|
38
40
|
export type * from './types/contact.types';
|
|
41
|
+
export type * from './types/review.types';
|
|
42
|
+
export type * from './types/price-history.types';
|
|
39
43
|
export { PropertyType, PropertyStatus } from './types/property.types';
|
|
40
44
|
export { tokenUtils } from './utils/token.utils';
|
|
41
45
|
export { API_ENDPOINTS, API_BASE_URL } from './constants/api.constants';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,YAAY,EAAE,QAAQ,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,YAAY,EACV,QAAQ,EACR,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,IAAI,EACJ,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACX,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,oBAAoB,EACpB,IAAI,EACJ,UAAU,EACV,UAAU,EACV,gBAAgB,EACjB,MAAM,4BAA4B,CAAA;AAGnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAG/C,mBAAmB,mBAAmB,CAAA;AACtC,mBAAmB,oBAAoB,CAAA;AACvC,mBAAmB,wBAAwB,CAAA;AAC3C,mBAAmB,gCAAgC,CAAA;AACnD,mBAAmB,oBAAoB,CAAA;AACvC,mBAAmB,wBAAwB,CAAA;AAC3C,mBAAmB,qBAAqB,CAAA;AACxC,mBAAmB,uBAAuB,CAAA;AAC1C,mBAAmB,4BAA4B,CAAA;AAC/C,mBAAmB,wBAAwB,CAAA;AAC3C,mBAAmB,oBAAoB,CAAA;AACvC,mBAAmB,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,YAAY,EAAE,QAAQ,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,YAAY,EACV,QAAQ,EACR,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,IAAI,EACJ,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACX,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,oBAAoB,EACpB,IAAI,EACJ,UAAU,EACV,UAAU,EACV,gBAAgB,EACjB,MAAM,4BAA4B,CAAA;AAGnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAG/C,mBAAmB,mBAAmB,CAAA;AACtC,mBAAmB,oBAAoB,CAAA;AACvC,mBAAmB,wBAAwB,CAAA;AAC3C,mBAAmB,gCAAgC,CAAA;AACnD,mBAAmB,oBAAoB,CAAA;AACvC,mBAAmB,wBAAwB,CAAA;AAC3C,mBAAmB,qBAAqB,CAAA;AACxC,mBAAmB,uBAAuB,CAAA;AAC1C,mBAAmB,4BAA4B,CAAA;AAC/C,mBAAmB,wBAAwB,CAAA;AAC3C,mBAAmB,oBAAoB,CAAA;AACvC,mBAAmB,uBAAuB,CAAA;AAC1C,mBAAmB,sBAAsB,CAAA;AACzC,mBAAmB,6BAA6B,CAAA;AAGhD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAGrE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAGhD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAGvE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -16,6 +16,8 @@ export { auditService } from './api/audit.service';
|
|
|
16
16
|
export { workflowService } from './api/workflow.service';
|
|
17
17
|
export { roleService } from './api/role.service';
|
|
18
18
|
export { contactService } from './api/contact.service';
|
|
19
|
+
export { reviewService } from './api/review.service';
|
|
20
|
+
export { priceHistoryService } from './api/price-history.service';
|
|
19
21
|
export { TaskStatusEnum } from './types/workflow.types';
|
|
20
22
|
// Stores
|
|
21
23
|
export { useAuthStore } from './stores/auth.store';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types pour l'historique des prix des propriétés
|
|
3
|
+
*/
|
|
4
|
+
export interface PriceHistory {
|
|
5
|
+
id: number;
|
|
6
|
+
propertyId: number;
|
|
7
|
+
price: number;
|
|
8
|
+
currency: string;
|
|
9
|
+
changeDate: string;
|
|
10
|
+
changeReason?: string;
|
|
11
|
+
createdBy?: number;
|
|
12
|
+
source?: string;
|
|
13
|
+
createdAt: string;
|
|
14
|
+
updatedAt?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface PriceHistoryCreate {
|
|
17
|
+
propertyId: number;
|
|
18
|
+
price: number;
|
|
19
|
+
currency?: string;
|
|
20
|
+
changeDate?: string;
|
|
21
|
+
changeReason?: string;
|
|
22
|
+
source?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface PriceHistoryStats {
|
|
25
|
+
currentPrice: number;
|
|
26
|
+
initialPrice: number;
|
|
27
|
+
minPrice: number;
|
|
28
|
+
maxPrice: number;
|
|
29
|
+
totalChange: number;
|
|
30
|
+
totalChangePercent: number;
|
|
31
|
+
totalChanges: number;
|
|
32
|
+
firstPriceDate?: string;
|
|
33
|
+
lastPriceDate?: string;
|
|
34
|
+
daysSinceFirstPrice?: number;
|
|
35
|
+
trend: 'UP' | 'DOWN' | 'STABLE';
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=price-history.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"price-history.types.d.ts","sourceRoot":"","sources":["../../types/price-history.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAA;CAChC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types pour les avis (reviews)
|
|
3
|
+
*/
|
|
4
|
+
export interface Review {
|
|
5
|
+
id: number;
|
|
6
|
+
propertyId: number;
|
|
7
|
+
propertyTitle?: string;
|
|
8
|
+
userId?: number;
|
|
9
|
+
authorName?: string;
|
|
10
|
+
authorEmail?: string;
|
|
11
|
+
rating: number;
|
|
12
|
+
comment: string;
|
|
13
|
+
status: ReviewStatus;
|
|
14
|
+
verifiedPurchase?: boolean;
|
|
15
|
+
helpfulCount?: number;
|
|
16
|
+
createdAt: string;
|
|
17
|
+
updatedAt?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface ReviewCreate {
|
|
20
|
+
propertyId: number;
|
|
21
|
+
userId?: number;
|
|
22
|
+
authorName?: string;
|
|
23
|
+
authorEmail?: string;
|
|
24
|
+
rating: number;
|
|
25
|
+
comment: string;
|
|
26
|
+
verifiedPurchase?: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface ReviewStats {
|
|
29
|
+
averageRating: number;
|
|
30
|
+
totalReviews: number;
|
|
31
|
+
ratingDistribution?: Record<number, number>;
|
|
32
|
+
ratingPercentages?: Record<number, number>;
|
|
33
|
+
}
|
|
34
|
+
export declare enum ReviewStatus {
|
|
35
|
+
PENDING = "PENDING",
|
|
36
|
+
APPROVED = "APPROVED",
|
|
37
|
+
REJECTED = "REJECTED"
|
|
38
|
+
}
|
|
39
|
+
export interface ReviewSearchParams {
|
|
40
|
+
propertyId?: number;
|
|
41
|
+
userId?: number;
|
|
42
|
+
status?: ReviewStatus;
|
|
43
|
+
page?: number;
|
|
44
|
+
size?: number;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=review.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.types.d.ts","sourceRoot":"","sources":["../../types/review.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,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,YAAY,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,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,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC3C;AAED,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd"}
|