@viridial/shared 1.0.72 → 1.0.74

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.
@@ -0,0 +1,70 @@
1
+ import type { Advertisement, AdvertisementCreate, AdvertisementUpdate, AdvertisementStats, AdvertisementSearchParams, AdvertisementAnalytics } from '../types/advertisement.types';
2
+ /**
3
+ * Service de gestion des annonces publicitaires
4
+ */
5
+ export declare const advertisementService: {
6
+ /**
7
+ * Récupérer toutes les annonces
8
+ */
9
+ getAll(params?: AdvertisementSearchParams): Promise<Advertisement[]>;
10
+ /**
11
+ * Récupérer une annonce par ID
12
+ */
13
+ getById(id: number): Promise<Advertisement>;
14
+ /**
15
+ * Créer une annonce
16
+ */
17
+ create(data: AdvertisementCreate): Promise<Advertisement>;
18
+ /**
19
+ * Mettre à jour une annonce
20
+ */
21
+ update(id: number, data: AdvertisementUpdate): Promise<Advertisement>;
22
+ /**
23
+ * Supprimer une annonce
24
+ */
25
+ delete(id: number): Promise<void>;
26
+ /**
27
+ * Mettre à jour le statut d'une annonce
28
+ */
29
+ updateStatus(id: number, status: string): Promise<Advertisement>;
30
+ /**
31
+ * Récupérer les statistiques d'une annonce
32
+ */
33
+ getStats(id: number): Promise<AdvertisementStats>;
34
+ /**
35
+ * Récupérer les annonces actives (endpoint public)
36
+ */
37
+ getActive(params?: {
38
+ adType?: string;
39
+ position?: string;
40
+ city?: string;
41
+ postalCode?: string;
42
+ propertyType?: string;
43
+ }): Promise<Advertisement[]>;
44
+ /**
45
+ * Enregistrer une impression (endpoint public)
46
+ */
47
+ recordImpression(id: number, params?: {
48
+ propertyId?: number;
49
+ pageType?: string;
50
+ city?: string;
51
+ postalCode?: string;
52
+ }): Promise<void>;
53
+ /**
54
+ * Enregistrer un clic (endpoint public)
55
+ */
56
+ recordClick(id: number, params?: {
57
+ propertyId?: number;
58
+ city?: string;
59
+ postalCode?: string;
60
+ }): Promise<void>;
61
+ /**
62
+ * Récupérer les analytics complètes
63
+ */
64
+ getAnalytics(params?: {
65
+ organizationId?: number;
66
+ startDate?: string;
67
+ endDate?: string;
68
+ }): Promise<AdvertisementAnalytics>;
69
+ };
70
+ //# sourceMappingURL=advertisement.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advertisement.service.d.ts","sourceRoot":"","sources":["../../api/advertisement.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAElL;;GAEG;AACH,eAAO,MAAM,oBAAoB;IAC/B;;OAEG;oBACmB,yBAAyB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAgB1E;;OAEG;gBACe,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAKjD;;OAEG;iBACgB,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAK/D;;OAEG;eACc,MAAM,QAAQ,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAK3E;;OAEG;eACc,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC;;OAEG;qBACoB,MAAM,UAAU,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAStE;;OAEG;iBACgB,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKvD;;OAEG;uBACsB;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAe5B;;OAEG;yBAEG,MAAM,WACD;QACP,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,GACA,OAAO,CAAC,IAAI,CAAC;IAchB;;OAEG;oBAEG,MAAM,WACD;QACP,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,GACA,OAAO,CAAC,IAAI,CAAC;IAahB;;OAEG;0BACyB;QAC1B,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAkBpC,CAAA"}
@@ -0,0 +1,125 @@
1
+ import { httpClient } from './http.client';
2
+ import { API_ENDPOINTS } from '../constants/api.constants';
3
+ /**
4
+ * Service de gestion des annonces publicitaires
5
+ */
6
+ export const advertisementService = {
7
+ /**
8
+ * Récupérer toutes les annonces
9
+ */
10
+ async getAll(params) {
11
+ const queryParams = {};
12
+ if (params?.organizationId) {
13
+ queryParams.organizationId = params.organizationId;
14
+ }
15
+ if (params?.status) {
16
+ queryParams.status = params.status;
17
+ }
18
+ const response = await httpClient.get(API_ENDPOINTS.ADVERTISEMENTS.BASE, { params: queryParams });
19
+ return response.data || [];
20
+ },
21
+ /**
22
+ * Récupérer une annonce par ID
23
+ */
24
+ async getById(id) {
25
+ const response = await httpClient.get(API_ENDPOINTS.ADVERTISEMENTS.BY_ID(id));
26
+ return response.data;
27
+ },
28
+ /**
29
+ * Créer une annonce
30
+ */
31
+ async create(data) {
32
+ const response = await httpClient.post(API_ENDPOINTS.ADVERTISEMENTS.BASE, data);
33
+ return response.data;
34
+ },
35
+ /**
36
+ * Mettre à jour une annonce
37
+ */
38
+ async update(id, data) {
39
+ const response = await httpClient.put(API_ENDPOINTS.ADVERTISEMENTS.BY_ID(id), data);
40
+ return response.data;
41
+ },
42
+ /**
43
+ * Supprimer une annonce
44
+ */
45
+ async delete(id) {
46
+ await httpClient.delete(API_ENDPOINTS.ADVERTISEMENTS.BY_ID(id));
47
+ },
48
+ /**
49
+ * Mettre à jour le statut d'une annonce
50
+ */
51
+ async updateStatus(id, status) {
52
+ const response = await httpClient.put(API_ENDPOINTS.ADVERTISEMENTS.STATUS(id), null, { params: { status } });
53
+ return response.data;
54
+ },
55
+ /**
56
+ * Récupérer les statistiques d'une annonce
57
+ */
58
+ async getStats(id) {
59
+ const response = await httpClient.get(API_ENDPOINTS.ADVERTISEMENTS.STATS(id));
60
+ return response.data;
61
+ },
62
+ /**
63
+ * Récupérer les annonces actives (endpoint public)
64
+ */
65
+ async getActive(params) {
66
+ const queryParams = {};
67
+ if (params?.adType)
68
+ queryParams.adType = params.adType;
69
+ if (params?.position)
70
+ queryParams.position = params.position;
71
+ if (params?.city)
72
+ queryParams.city = params.city;
73
+ if (params?.postalCode)
74
+ queryParams.postalCode = params.postalCode;
75
+ if (params?.propertyType)
76
+ queryParams.propertyType = params.propertyType;
77
+ const response = await httpClient.get(API_ENDPOINTS.ADVERTISEMENTS.PUBLIC.ACTIVE, { params: queryParams });
78
+ return response.data || [];
79
+ },
80
+ /**
81
+ * Enregistrer une impression (endpoint public)
82
+ */
83
+ async recordImpression(id, params) {
84
+ const queryParams = {};
85
+ if (params?.propertyId)
86
+ queryParams.propertyId = params.propertyId;
87
+ if (params?.pageType)
88
+ queryParams.pageType = params.pageType;
89
+ if (params?.city)
90
+ queryParams.city = params.city;
91
+ if (params?.postalCode)
92
+ queryParams.postalCode = params.postalCode;
93
+ await httpClient.post(API_ENDPOINTS.ADVERTISEMENTS.PUBLIC.IMPRESSION(id), null, { params: queryParams });
94
+ },
95
+ /**
96
+ * Enregistrer un clic (endpoint public)
97
+ */
98
+ async recordClick(id, params) {
99
+ const queryParams = {};
100
+ if (params?.propertyId)
101
+ queryParams.propertyId = params.propertyId;
102
+ if (params?.city)
103
+ queryParams.city = params.city;
104
+ if (params?.postalCode)
105
+ queryParams.postalCode = params.postalCode;
106
+ await httpClient.post(API_ENDPOINTS.ADVERTISEMENTS.PUBLIC.CLICK(id), null, { params: queryParams });
107
+ },
108
+ /**
109
+ * Récupérer les analytics complètes
110
+ */
111
+ async getAnalytics(params) {
112
+ const queryParams = {};
113
+ if (params?.organizationId) {
114
+ queryParams.organizationId = params.organizationId;
115
+ }
116
+ if (params?.startDate) {
117
+ queryParams.startDate = params.startDate;
118
+ }
119
+ if (params?.endDate) {
120
+ queryParams.endDate = params.endDate;
121
+ }
122
+ const response = await httpClient.get(API_ENDPOINTS.ADVERTISEMENTS.ANALYTICS, { params: queryParams });
123
+ return response.data;
124
+ }
125
+ };
@@ -1,4 +1,4 @@
1
- import type { LoginRequest, LoginResponse, SignupRequest, SignupResponse, ForgotPasswordRequest, ResetPasswordRequest } from '../types/auth.types';
1
+ import type { LoginRequest, LoginResponse, SignupRequest, SignupResponse, ForgotPasswordRequest, ResetPasswordRequest, SubscribeRequest, SubscribeResponse } from '../types/auth.types';
2
2
  /**
3
3
  * Service d'authentification
4
4
  */
@@ -27,6 +27,10 @@ export declare const authService: {
27
27
  * Rafraîchir le token
28
28
  */
29
29
  refreshToken(): Promise<LoginResponse>;
30
+ /**
31
+ * Inscription avec abonnement (création utilisateur + organisation + abonnement)
32
+ */
33
+ subscribe(data: SubscribeRequest): Promise<SubscribeResponse>;
30
34
  /**
31
35
  * Vérifier si l'utilisateur est authentifié
32
36
  */
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../api/auth.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAGlJ;;GAEG;AACH,eAAO,MAAM,WAAW;IACtB;;OAEG;uBACsB,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IAkB9D;;OAEG;iBACgB,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAK1D;;OAEG;cACa,OAAO,CAAC,IAAI,CAAC;IAQ7B;;OAEG;yBACwB,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhE;;OAEG;wBACuB,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9D;;OAEG;oBACmB,OAAO,CAAC,aAAa,CAAC;IAQ5C;;OAEG;uBACgB,OAAO;CAG3B,CAAA"}
1
+ {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../api/auth.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAGvL;;GAEG;AACH,eAAO,MAAM,WAAW;IACtB;;OAEG;uBACsB,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IAkB9D;;OAEG;iBACgB,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAK1D;;OAEG;cACa,OAAO,CAAC,IAAI,CAAC;IAQ7B;;OAEG;yBACwB,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhE;;OAEG;wBACuB,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9D;;OAEG;oBACmB,OAAO,CAAC,aAAa,CAAC;IAQ5C;;OAEG;oBACmB,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAanE;;OAEG;uBACgB,OAAO;CAG3B,CAAA"}
@@ -65,6 +65,21 @@ export const authService = {
65
65
  }
66
66
  return response.data;
67
67
  },
68
+ /**
69
+ * Inscription avec abonnement (création utilisateur + organisation + abonnement)
70
+ */
71
+ async subscribe(data) {
72
+ const response = await httpClient.post(API_ENDPOINTS.AUTH.SUBSCRIBE, data);
73
+ // Stocker les tokens d'authentification
74
+ const token = response.data?.auth?.accessToken || response.data?.auth?.token;
75
+ if (token) {
76
+ tokenUtils.setToken(token);
77
+ }
78
+ if (response.data?.auth?.refreshToken) {
79
+ tokenUtils.setRefreshToken(response.data.auth.refreshToken);
80
+ }
81
+ return response.data;
82
+ },
68
83
  /**
69
84
  * Vérifier si l'utilisateur est authentifié
70
85
  */
@@ -5,6 +5,7 @@ export declare const API_ENDPOINTS: {
5
5
  readonly AUTH: {
6
6
  readonly LOGIN: "/api/identity/auth/login";
7
7
  readonly REGISTER: "/api/identity/auth/register";
8
+ readonly SUBSCRIBE: "/api/identity/auth/subscribe";
8
9
  readonly LOGOUT: "/api/identity/auth/logout";
9
10
  readonly REFRESH: "/api/identity/auth/refresh";
10
11
  readonly FORGOT_PASSWORD: "/api/identity/auth/forgot-password";
@@ -132,6 +133,18 @@ export declare const API_ENDPOINTS: {
132
133
  readonly REJECT: (id: number) => string;
133
134
  };
134
135
  };
136
+ readonly ADVERTISEMENTS: {
137
+ readonly BASE: "/api/advertisements";
138
+ readonly BY_ID: (id: number) => string;
139
+ readonly STATUS: (id: number) => string;
140
+ readonly STATS: (id: number) => string;
141
+ readonly ANALYTICS: "/api/advertisements/analytics";
142
+ readonly PUBLIC: {
143
+ readonly ACTIVE: "/api/advertisements/public/active";
144
+ readonly IMPRESSION: (id: number) => string;
145
+ readonly CLICK: (id: number) => string;
146
+ };
147
+ };
135
148
  readonly CONTACT_MESSAGES: {
136
149
  readonly BASE: "/api/contact-messages";
137
150
  readonly BY_ID: (id: number) => string;
@@ -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;;;;uCAKH,MAAM;6BAChB,MAAM;8BACL,MAAM;oCACA,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;;;;;;;;;;;;;6BAeV,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;8BACL,MAAM;6BACP,MAAM;;;;sCAIC,MAAM;iCACX,MAAM;;;;;6BAMR,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"}
@@ -6,6 +6,7 @@ export const API_ENDPOINTS = {
6
6
  AUTH: {
7
7
  LOGIN: '/api/identity/auth/login',
8
8
  REGISTER: '/api/identity/auth/register',
9
+ SUBSCRIBE: '/api/identity/auth/subscribe',
9
10
  LOGOUT: '/api/identity/auth/logout',
10
11
  REFRESH: '/api/identity/auth/refresh',
11
12
  FORGOT_PASSWORD: '/api/identity/auth/forgot-password',
@@ -145,6 +146,19 @@ export const API_ENDPOINTS = {
145
146
  REJECT: (id) => `/api/workflows/tasks/${id}/reject`
146
147
  }
147
148
  },
149
+ // Advertisements
150
+ ADVERTISEMENTS: {
151
+ BASE: '/api/advertisements',
152
+ BY_ID: (id) => `/api/advertisements/${id}`,
153
+ STATUS: (id) => `/api/advertisements/${id}/status`,
154
+ STATS: (id) => `/api/advertisements/${id}/stats`,
155
+ ANALYTICS: '/api/advertisements/analytics',
156
+ PUBLIC: {
157
+ ACTIVE: '/api/advertisements/public/active',
158
+ IMPRESSION: (id) => `/api/advertisements/public/${id}/impression`,
159
+ CLICK: (id) => `/api/advertisements/public/${id}/click`
160
+ }
161
+ },
148
162
  // Contact Messages
149
163
  CONTACT_MESSAGES: {
150
164
  BASE: '/api/contact-messages',
package/dist/index.d.ts CHANGED
@@ -55,4 +55,6 @@ export type { OrganizationReview, OrganizationReviewCreate, OrganizationReviewSt
55
55
  export { organizationReviewService } from './api/organization-review.service';
56
56
  export type { OrganizationContactMessage, OrganizationContactMessageCreate } from './types/organization-contact.types';
57
57
  export { organizationContactService } from './api/organization-contact.service';
58
+ export type { Advertisement, AdvertisementCreate, AdvertisementUpdate, AdvertisementStats, AdvertisementSearchParams, AdvertisementAnalytics, DailyStats, WeeklyStats, MonthlyStats, TypeStats, PositionStats, TopAdvertisement } from './types/advertisement.types';
59
+ export { advertisementService } from './api/advertisement.service';
58
60
  //# sourceMappingURL=index.d.ts.map
@@ -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
@@ -38,3 +38,4 @@ export { API_ENDPOINTS, API_BASE_URL } from './constants/api.constants';
38
38
  export { UserStatus, UserRole } from './types/user.types';
39
39
  export { organizationReviewService } from './api/organization-review.service';
40
40
  export { organizationContactService } from './api/organization-contact.service';
41
+ export { advertisementService } from './api/advertisement.service';
@@ -0,0 +1,182 @@
1
+ /**
2
+ * Types pour le système d'annonces publicitaires
3
+ */
4
+ export interface Advertisement {
5
+ id: number;
6
+ organizationId: number;
7
+ organizationName?: string;
8
+ title: string;
9
+ description?: string;
10
+ imageUrl?: string;
11
+ linkUrl?: string;
12
+ adType: 'BANNER' | 'SIDEBAR' | 'INLINE' | 'POPUP' | 'SPONSORED_PROPERTY';
13
+ position: 'TOP' | 'BOTTOM' | 'SIDEBAR_LEFT' | 'SIDEBAR_RIGHT' | 'INLINE' | 'HEADER' | 'FOOTER';
14
+ status: 'DRAFT' | 'ACTIVE' | 'PAUSED' | 'EXPIRED' | 'ARCHIVED';
15
+ startDate: string;
16
+ endDate?: string;
17
+ budget?: number;
18
+ dailyBudget?: number;
19
+ costPerClick?: number;
20
+ costPerImpression?: number;
21
+ targetLocations?: string;
22
+ targetPropertyTypes?: string;
23
+ targetTransactionTypes?: string;
24
+ impressions: number;
25
+ clicks: number;
26
+ conversions: number;
27
+ totalSpent: number;
28
+ maxImpressionsPerDay?: number;
29
+ priority: number;
30
+ active: boolean;
31
+ createdAt: string;
32
+ updatedAt: string;
33
+ createdBy?: number;
34
+ clickThroughRate?: number;
35
+ conversionRate?: number;
36
+ costPerConversion?: number;
37
+ }
38
+ export interface AdvertisementCreate {
39
+ organizationId: number;
40
+ title: string;
41
+ description?: string;
42
+ imageUrl?: string;
43
+ linkUrl?: string;
44
+ adType: 'BANNER' | 'SIDEBAR' | 'INLINE' | 'POPUP' | 'SPONSORED_PROPERTY';
45
+ position: 'TOP' | 'BOTTOM' | 'SIDEBAR_LEFT' | 'SIDEBAR_RIGHT' | 'INLINE' | 'HEADER' | 'FOOTER';
46
+ status?: 'DRAFT' | 'ACTIVE' | 'PAUSED' | 'EXPIRED' | 'ARCHIVED';
47
+ startDate: string;
48
+ endDate?: string;
49
+ budget?: number;
50
+ dailyBudget?: number;
51
+ costPerClick?: number;
52
+ costPerImpression?: number;
53
+ targetLocations?: string;
54
+ targetPropertyTypes?: string;
55
+ targetTransactionTypes?: string;
56
+ maxImpressionsPerDay?: number;
57
+ priority?: number;
58
+ active?: boolean;
59
+ createdBy?: number;
60
+ }
61
+ export interface AdvertisementUpdate {
62
+ title?: string;
63
+ description?: string;
64
+ imageUrl?: string;
65
+ linkUrl?: string;
66
+ adType?: 'BANNER' | 'SIDEBAR' | 'INLINE' | 'POPUP' | 'SPONSORED_PROPERTY';
67
+ position?: 'TOP' | 'BOTTOM' | 'SIDEBAR_LEFT' | 'SIDEBAR_RIGHT' | 'INLINE' | 'HEADER' | 'FOOTER';
68
+ status?: 'DRAFT' | 'ACTIVE' | 'PAUSED' | 'EXPIRED' | 'ARCHIVED';
69
+ startDate?: string;
70
+ endDate?: string;
71
+ budget?: number;
72
+ dailyBudget?: number;
73
+ costPerClick?: number;
74
+ costPerImpression?: number;
75
+ targetLocations?: string;
76
+ targetPropertyTypes?: string;
77
+ targetTransactionTypes?: string;
78
+ maxImpressionsPerDay?: number;
79
+ priority?: number;
80
+ active?: boolean;
81
+ }
82
+ export interface AdvertisementStats {
83
+ advertisementId: number;
84
+ title: string;
85
+ impressions: number;
86
+ clicks: number;
87
+ conversions: number;
88
+ totalSpent: number;
89
+ clickThroughRate?: number;
90
+ conversionRate?: number;
91
+ costPerClick?: number;
92
+ costPerConversion?: number;
93
+ startDate: string;
94
+ endDate?: string;
95
+ status: string;
96
+ }
97
+ export interface AdvertisementSearchParams {
98
+ organizationId?: number;
99
+ status?: 'DRAFT' | 'ACTIVE' | 'PAUSED' | 'EXPIRED' | 'ARCHIVED';
100
+ adType?: 'BANNER' | 'SIDEBAR' | 'INLINE' | 'POPUP' | 'SPONSORED_PROPERTY';
101
+ position?: 'TOP' | 'BOTTOM' | 'SIDEBAR_LEFT' | 'SIDEBAR_RIGHT' | 'INLINE' | 'HEADER' | 'FOOTER';
102
+ }
103
+ export interface AdvertisementAnalytics {
104
+ totalAdvertisements: number;
105
+ activeAdvertisements: number;
106
+ totalImpressions: number;
107
+ totalClicks: number;
108
+ totalConversions: number;
109
+ totalSpent: number;
110
+ averageCTR?: number;
111
+ averageCVR?: number;
112
+ averageCPC?: number;
113
+ averageCPA?: number;
114
+ dailyStats: DailyStats[];
115
+ weeklyStats: WeeklyStats[];
116
+ monthlyStats: MonthlyStats[];
117
+ statsByType: Record<string, TypeStats>;
118
+ statsByPosition: Record<string, PositionStats>;
119
+ topByImpressions: TopAdvertisement[];
120
+ topByClicks: TopAdvertisement[];
121
+ topByConversions: TopAdvertisement[];
122
+ }
123
+ export interface DailyStats {
124
+ date: string;
125
+ impressions: number;
126
+ clicks: number;
127
+ conversions: number;
128
+ spent: number;
129
+ ctr?: number;
130
+ cvr?: number;
131
+ }
132
+ export interface WeeklyStats {
133
+ weekStart: string;
134
+ weekEnd: string;
135
+ impressions: number;
136
+ clicks: number;
137
+ conversions: number;
138
+ spent: number;
139
+ ctr?: number;
140
+ cvr?: number;
141
+ }
142
+ export interface MonthlyStats {
143
+ year: number;
144
+ month: number;
145
+ impressions: number;
146
+ clicks: number;
147
+ conversions: number;
148
+ spent: number;
149
+ ctr?: number;
150
+ cvr?: number;
151
+ }
152
+ export interface TypeStats {
153
+ type: string;
154
+ count: number;
155
+ impressions: number;
156
+ clicks: number;
157
+ conversions: number;
158
+ spent: number;
159
+ ctr?: number;
160
+ cvr?: number;
161
+ }
162
+ export interface PositionStats {
163
+ position: string;
164
+ count: number;
165
+ impressions: number;
166
+ clicks: number;
167
+ conversions: number;
168
+ spent: number;
169
+ ctr?: number;
170
+ cvr?: number;
171
+ }
172
+ export interface TopAdvertisement {
173
+ id: number;
174
+ title: string;
175
+ impressions: number;
176
+ clicks: number;
177
+ conversions: number;
178
+ spent: number;
179
+ ctr?: number;
180
+ cvr?: number;
181
+ }
182
+ //# sourceMappingURL=advertisement.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advertisement.types.d.ts","sourceRoot":"","sources":["../../types/advertisement.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Types pour le système d'annonces publicitaires
3
+ */
4
+ export {};
@@ -31,6 +31,22 @@ export interface ResetPasswordRequest {
31
31
  password: string;
32
32
  confirmPassword: string;
33
33
  }
34
+ export interface SubscribeRequest {
35
+ firstName: string;
36
+ lastName: string;
37
+ email: string;
38
+ password: string;
39
+ organizationName: string;
40
+ planId: number;
41
+ phone?: string;
42
+ }
43
+ export interface SubscribeResponse {
44
+ auth: LoginResponse;
45
+ organizationId: number;
46
+ subscriptionId: number;
47
+ organizationName: string;
48
+ planName: string;
49
+ }
34
50
  export interface UserInfo {
35
51
  id: number;
36
52
  email: string;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.types.d.ts","sourceRoot":"","sources":["../../types/auth.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B"}
1
+ {"version":3,"file":"auth.types.d.ts","sourceRoot":"","sources":["../../types/auth.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viridial/shared",
3
- "version": "1.0.72",
3
+ "version": "1.0.74",
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",