@viridial/shared 1.0.57 → 1.0.58

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.
@@ -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":"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"}
1
+ {"version":3,"file":"organization.service.d.ts","sourceRoot":"","sources":["../../api/organization.service.ts"],"names":[],"mappings":"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"}
@@ -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
+ };
@@ -113,6 +113,17 @@ export declare const API_ENDPOINTS: {
113
113
  readonly ARCHIVE: (id: number) => string;
114
114
  readonly NEW_COUNT: "/api/contact-messages/stats/new-count";
115
115
  };
116
+ readonly REVIEWS: {
117
+ readonly BASE: "/api/reviews";
118
+ readonly BY_ID: (id: number) => string;
119
+ readonly BY_PROPERTY: (propertyId: number) => string;
120
+ readonly BY_PROPERTY_ALL: (propertyId: number) => string;
121
+ readonly BY_PROPERTY_STATS: (propertyId: number) => string;
122
+ readonly BY_USER: (userId: number) => string;
123
+ readonly BY_STATUS: (status: string) => string;
124
+ readonly UPDATE_STATUS: (id: number) => string;
125
+ readonly MARK_HELPFUL: (id: number) => string;
126
+ };
116
127
  };
117
128
  /**
118
129
  * 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;;;;;;6BAOT,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;;;CAGd,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;;;;;;6BAOT,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"}
@@ -123,6 +123,18 @@ export const API_ENDPOINTS = {
123
123
  UPDATE_NOTES: (id) => `/api/contact-messages/${id}/notes`,
124
124
  ARCHIVE: (id) => `/api/contact-messages/${id}/archive`,
125
125
  NEW_COUNT: '/api/contact-messages/stats/new-count'
126
+ },
127
+ // Reviews
128
+ REVIEWS: {
129
+ BASE: '/api/reviews',
130
+ BY_ID: (id) => `/api/reviews/${id}`,
131
+ BY_PROPERTY: (propertyId) => `/api/reviews/property/${propertyId}`,
132
+ BY_PROPERTY_ALL: (propertyId) => `/api/reviews/property/${propertyId}/all`,
133
+ BY_PROPERTY_STATS: (propertyId) => `/api/reviews/property/${propertyId}/stats`,
134
+ BY_USER: (userId) => `/api/reviews/user/${userId}`,
135
+ BY_STATUS: (status) => `/api/reviews/status/${status}`,
136
+ UPDATE_STATUS: (id) => `/api/reviews/${id}/status`,
137
+ MARK_HELPFUL: (id) => `/api/reviews/${id}/helpful`
126
138
  }
127
139
  };
128
140
  /**
package/dist/index.d.ts CHANGED
@@ -17,6 +17,7 @@ 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';
20
21
  export { TaskStatusEnum } from './types/workflow.types';
21
22
  export type { Workflow, WorkflowCreate, WorkflowUpdate, WorkflowSearchParams, Task, TaskCreate, TaskUpdate, TaskSearchParams, TaskApproveParams, TaskRejectParams, TaskStatus } from './types/workflow.types';
22
23
  export type { Organization, OrganizationCreate, OrganizationUpdate, OrganizationSearchParams, OrganizationSettings, Team, TeamCreate, TeamUpdate, OrganizationUser } from './api/organization.service';
@@ -36,6 +37,7 @@ export type * from './types/notification.types';
36
37
  export type * from './types/workflow.types';
37
38
  export type * from './types/role.types';
38
39
  export type * from './types/contact.types';
40
+ export type * from './types/review.types';
39
41
  export { PropertyType, PropertyStatus } from './types/property.types';
40
42
  export { tokenUtils } from './utils/token.utils';
41
43
  export { API_ENDPOINTS, API_BASE_URL } from './constants/api.constants';
@@ -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;AAG1C,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"}
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,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;AAGzC,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,7 @@ 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';
19
20
  export { TaskStatusEnum } from './types/workflow.types';
20
21
  // Stores
21
22
  export { useAuthStore } from './stores/auth.store';
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Types pour les avis (reviews)
3
+ */
4
+ export interface Review {
5
+ id: number;
6
+ propertyId: number;
7
+ userId?: number;
8
+ authorName?: string;
9
+ authorEmail?: string;
10
+ rating: number;
11
+ comment: string;
12
+ status: ReviewStatus;
13
+ verifiedPurchase?: boolean;
14
+ helpfulCount?: number;
15
+ createdAt: string;
16
+ updatedAt?: string;
17
+ }
18
+ export interface ReviewCreate {
19
+ propertyId: number;
20
+ userId?: number;
21
+ authorName?: string;
22
+ authorEmail?: string;
23
+ rating: number;
24
+ comment: string;
25
+ verifiedPurchase?: boolean;
26
+ }
27
+ export interface ReviewStats {
28
+ averageRating: number;
29
+ totalReviews: number;
30
+ ratingDistribution?: Record<number, number>;
31
+ ratingPercentages?: Record<number, number>;
32
+ }
33
+ export declare enum ReviewStatus {
34
+ PENDING = "PENDING",
35
+ APPROVED = "APPROVED",
36
+ REJECTED = "REJECTED"
37
+ }
38
+ export interface ReviewSearchParams {
39
+ propertyId?: number;
40
+ userId?: number;
41
+ status?: ReviewStatus;
42
+ page?: number;
43
+ size?: number;
44
+ }
45
+ //# 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,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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Types pour les avis (reviews)
3
+ */
4
+ export var ReviewStatus;
5
+ (function (ReviewStatus) {
6
+ ReviewStatus["PENDING"] = "PENDING";
7
+ ReviewStatus["APPROVED"] = "APPROVED";
8
+ ReviewStatus["REJECTED"] = "REJECTED";
9
+ })(ReviewStatus || (ReviewStatus = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viridial/shared",
3
- "version": "1.0.57",
3
+ "version": "1.0.58",
4
4
  "type": "module",
5
5
  "description": "Shared modules for Real Estate frontend applications - Vue 3, TypeScript, Pinia, Axios",
6
6
  "main": "./dist/index.js",