@rolatech/angular-services 20.2.8-beta.10 → 20.2.8-beta.12

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,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolatech/angular-services",
3
- "version": "20.2.8-beta.10",
3
+ "version": "20.2.8-beta.12",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^20.0.0",
@@ -12,7 +12,7 @@
12
12
  "rxjs": "^6.5.3 || ^7.4.0"
13
13
  },
14
14
  "dependencies": {
15
- "@rolatech/angular-common": "20.2.8-beta.10",
15
+ "@rolatech/angular-common": "20.2.8-beta.12",
16
16
  "tslib": "^2.3.0"
17
17
  },
18
18
  "repository": {
@@ -4,6 +4,7 @@ import { MatDialogRef, MatDialog } from '@angular/material/dialog';
4
4
  import * as rxjs from 'rxjs';
5
5
  import { Observable, BehaviorSubject, Subject } from 'rxjs';
6
6
  import { HttpClient, HttpRequest, HttpHandler, HttpEvent, HttpInterceptorFn } from '@angular/common/http';
7
+ import { AppConfig, ApiResponse } from '@rolatech/angular-common';
7
8
  import { Location } from '@angular/common';
8
9
  import { Router, ActivatedRoute } from '@angular/router';
9
10
  import { BreakpointObserver, MediaMatcher } from '@angular/cdk/layout';
@@ -11,7 +12,6 @@ import { MatSnackBar } from '@angular/material/snack-bar';
11
12
  import * as _angular_material_sidenav from '@angular/material/sidenav';
12
13
  import { MatSidenav } from '@angular/material/sidenav';
13
14
  import { Title } from '@angular/platform-browser';
14
- import { ApiResponse } from '@rolatech/angular-common';
15
15
 
16
16
  interface DialogData {
17
17
  title: string;
@@ -47,8 +47,8 @@ declare class DialogComponent implements OnInit, OnDestroy {
47
47
  }
48
48
 
49
49
  declare class BaseService {
50
- protected http: HttpClient;
51
- protected environment: any;
50
+ protected readonly http: HttpClient;
51
+ protected readonly environment: AppConfig;
52
52
  protected actionUrl: string;
53
53
  endpoint: string;
54
54
  constructor();
@@ -183,6 +183,8 @@ type OfferInvoiceOption = 'COMBINED' | 'SEPARATE';
183
183
  type GuarantorRelationshipType = 'FAMILY' | 'FRIEND' | 'GUARANTOR_SERVICE' | 'OTHER';
184
184
  declare enum PropertyOfferStatus {
185
185
  SUBMITTED = "Submitted",
186
+ COUNTERED_BY_AGENT = "Countered by agent",
187
+ COUNTERED_BY_TENANT = "Countered by tenant",
186
188
  ACCEPTED = "Accepted",
187
189
  COUNTERED = "Countered",
188
190
  REJECTED = "Rejected",
@@ -221,6 +223,7 @@ interface RentalOfferTerms {
221
223
  smoker: boolean | null;
222
224
  furnitureRequirement: FurnitureRequirement | null;
223
225
  additionalRequests: string | null;
226
+ internalNote?: string | null;
224
227
  }
225
228
  interface PersonAddress {
226
229
  line1: string | null;
@@ -331,6 +334,110 @@ interface CopyTextResponse {
331
334
  redactContact: boolean;
332
335
  text: string;
333
336
  }
337
+ interface UpdatePropertyOfferInternalNoteRequest {
338
+ internalNote: string;
339
+ }
340
+ interface PropertyOfferInternalNoteResponse {
341
+ offerId: string;
342
+ internalNote: string;
343
+ }
344
+
345
+ type PropertyOfferActor = 'AGENT' | 'TENANT' | 'SYSTEM';
346
+ interface PropertyOfferCounterRequest {
347
+ amount: number | null;
348
+ moveInDate: string | null;
349
+ paymentFrequency: PaymentFrequency | null;
350
+ tenancyLengthMonths: number | null;
351
+ breakClauseMonths: number | null;
352
+ pets: string[] | [];
353
+ smoker: boolean | null;
354
+ furnitureRequirement: FurnitureRequirement | null;
355
+ additionalRequests: string | null;
356
+ }
357
+ interface PropertyOfferVersion {
358
+ id: string;
359
+ version: number;
360
+ actor: PropertyOfferActor;
361
+ amount: number | null;
362
+ moveInDate: string | null;
363
+ paymentFrequency: string | null;
364
+ tenancyLengthMonths: number | null;
365
+ breakClauseMonths: number | null;
366
+ pets: string[] | [];
367
+ smoker: boolean | null;
368
+ furniture: string | null;
369
+ additionalRequests: string | null;
370
+ }
371
+ interface PropertyOfferHistory {
372
+ id: string;
373
+ timestamp: string;
374
+ actor: PropertyOfferActor;
375
+ action: string;
376
+ changes: string | null;
377
+ reason: string | null;
378
+ internalNote: string | null;
379
+ }
380
+ interface EditLockResponse {
381
+ locked: boolean;
382
+ lockedById: string | null;
383
+ lockedByName: string | null;
384
+ lockedByActor: string | null;
385
+ expiresAt: string | null;
386
+ }
387
+ interface PropertyOfferNegotiationView {
388
+ offer: OfferDto;
389
+ latestVersion: VersionDto | null;
390
+ previousVersion: VersionDto | null;
391
+ latestHistory: HistoryDto | null;
392
+ history: HistoryDto[];
393
+ editLock: EditLockDto | null;
394
+ permissions: PermissionsDto;
395
+ }
396
+ interface OfferDto {
397
+ id: string;
398
+ status: PropertyOfferStatus;
399
+ counterCount: number;
400
+ lastActionAt: string | null;
401
+ acceptedVersionId: string | null;
402
+ }
403
+ interface VersionDto {
404
+ id: string;
405
+ version: number;
406
+ actor: PropertyOfferActor;
407
+ amount: number | null;
408
+ moveInDate: string | null;
409
+ paymentFrequency: string | null;
410
+ tenancyLengthMonths: number | null;
411
+ breakClauseMonths: number | null;
412
+ pets: string[] | [];
413
+ smoker: boolean | null;
414
+ furniture: string | null;
415
+ additionalRequests: string | null;
416
+ createdAt: string | null;
417
+ }
418
+ interface HistoryDto {
419
+ id: string;
420
+ timestamp: string;
421
+ actor: PropertyOfferActor;
422
+ action: string;
423
+ changes: Record<string, any>;
424
+ reason: string | null;
425
+ internalNote: string | null;
426
+ }
427
+ interface EditLockDto {
428
+ locked: boolean;
429
+ lockedById: string | null;
430
+ lockedByName: string | null;
431
+ lockedByActor: string | null;
432
+ expiresAt: string | null;
433
+ }
434
+ interface PermissionsDto {
435
+ canCounter: boolean;
436
+ canAccept: boolean;
437
+ canReject: boolean;
438
+ canWithdraw: boolean;
439
+ canEdit: boolean;
440
+ }
334
441
 
335
442
  declare class DialogService {
336
443
  dialog: MatDialog;
@@ -1202,6 +1309,8 @@ declare class PropertyOfferService extends BaseService {
1202
1309
  createRental(payload: CreateRentalOfferPayload): Observable<ApiResponse<PropertyOfferResponse>>;
1203
1310
  createSale(payload: CreateSaleOfferPayload): Observable<ApiResponse<PropertyOfferResponse>>;
1204
1311
  getCopyText(id: string, redactContact?: boolean): Observable<ApiResponse<CopyTextResponse>>;
1312
+ updateOfferInternalNote(offerId: string, data: UpdatePropertyOfferInternalNoteRequest): Observable<ApiResponse<PropertyOfferInternalNoteResponse>>;
1313
+ getOfferInternalNote(offerId: string): Observable<ApiResponse<PropertyOfferInternalNoteResponse>>;
1205
1314
  stripUndefined<T extends Record<string, any>>(obj: T): Partial<T>;
1206
1315
  isEmptyFilter(params: Record<string, any>, ignoreKeys?: string[]): boolean;
1207
1316
  static ɵfac: i0.ɵɵFactoryDeclaration<PropertyOfferService, never>;
@@ -1285,6 +1394,28 @@ declare class InvoiceLineService extends BaseService {
1285
1394
  static ɵprov: i0.ɵɵInjectableDeclaration<InvoiceLineService>;
1286
1395
  }
1287
1396
 
1397
+ declare class PropertyOfferCounterService extends BaseService {
1398
+ init(): void;
1399
+ getNegotiationViewByAgent(id: string): Observable<ApiResponse<PropertyOfferNegotiationView>>;
1400
+ getNegotiationViewByTenant(id: string): Observable<ApiResponse<PropertyOfferNegotiationView>>;
1401
+ getVersions(id: string): Observable<ApiResponse<PropertyOfferVersion[]>>;
1402
+ getHistory(id: string): Observable<ApiResponse<PropertyOfferHistory[]>>;
1403
+ counterByAgent(id: string, payload: any): Observable<ApiResponse<PropertyOfferVersion>>;
1404
+ counterByTenant(id: string, payload: any): Observable<ApiResponse<PropertyOfferVersion>>;
1405
+ acceptByAgent(id: string): Observable<void>;
1406
+ acceptByTenant(id: string): Observable<void>;
1407
+ rejectByAgent(id: string, reason: string): Observable<void>;
1408
+ rejectByTenant(id: string, reason: string): Observable<void>;
1409
+ withdrawByAgent(id: string, clientId?: string): Observable<void>;
1410
+ withdrawByTenant(id: string, clientId?: string): Observable<void>;
1411
+ getEditLock(id: string): Observable<ApiResponse<EditLockResponse>>;
1412
+ acquireLock(id: string, clientId: string): Observable<ApiResponse<EditLockResponse>>;
1413
+ heartbeat(id: string): Observable<ApiResponse<EditLockResponse>>;
1414
+ release(id: string): Observable<void>;
1415
+ static ɵfac: i0.ɵɵFactoryDeclaration<PropertyOfferCounterService, never>;
1416
+ static ɵprov: i0.ɵɵInjectableDeclaration<PropertyOfferCounterService>;
1417
+ }
1418
+
1288
1419
  declare class LoadingInterceptor {
1289
1420
  loadingService: LoadingService;
1290
1421
  activeRequests: number;
@@ -1315,5 +1446,5 @@ declare const SERVICE_DIRECTIVES: Provider[];
1315
1446
 
1316
1447
  declare function provideAngularServices(): EnvironmentProviders;
1317
1448
 
1318
- export { AmenityService, AutomationService, BackButtonDirective, BaseService, BillingService, BookingService, BreadcrumbService, CartEventType, CartService, CategoryService, ConversationInitService, ConversationService, DialogComponent, DialogService, EnumApiClient, EnumCacheService, FacilityService, FeatureService, FloorplanService, FulfillmentService, HideFooterDirective, InventoryService, InvoiceLineService, InvoiceService, InvoiceStatsService, LayoutService, LoadingInterceptor, LoadingService, MediaService, MembershipService, NavigationService, NotificationService, NotificationStore, NotificationTemplateService, OfferingService, OrderPayoutService, OrderService, PaymentService, PostService, ProductCategoryService, ProductService, PropertyHighlightsService, PropertyOfferService, PropertyOfferStatus, PropertySearchService, PropertyService, PropertyStatsService, PropertyViewingService, ResourceCategoryService, ResourceService, SCHEDULE_CRON_META, SERVICE_DIRECTIVES, SidenavService, SnackBarService, SupportService, ThemeService, TimeZoneService, TitleService, acceptLanguageInterceptor, provideAngularServices };
1319
- export type { AdverseCreditStatus, ApiRequestOptions, ApplicantType, AutomationDefinition, AutomationDefinitionDto, AutomationExecution, AutomationExecutionDto, AutomationExecutionLog, AutomationExecutionStatus, AutomationLogLevel, AutomationSchedule, AutomationScheduleDto, AutomationSummaryResponse, BaseEntity, CancelStateResponse, ChatMessage, ConversationInitResponse, CopyTextResponse, CreateDefinitionRequest, CreateRentalOfferPayload, CreateSaleOfferPayload, CreateScheduleRequest, DialogData, EmploymentStatus, EnqueueExecutionRequest, EnumOption, ExecutionLogDto, FurnitureRequirement, Gender, GroupedViewingsByDate, Guarantor, GuarantorRelationshipType, GuarantorType, IDynamicDialogConfig, InvoiceStats, OfferInvoiceOption, OfferReferencingPatchPayload, OfferReferencingView, OfferSummary, OfferType, PaymentFrequency, PendingInvoice, PersonAddress, PropertyOfferItem, PropertyOfferItemMedia, PropertyOfferResponse, PropertyStats, ReferenceProvider, RentalOfferTerms, SaleOfferDetails, SalePaymentMethod, ScheduleCron, ScheduleCronMeta, ScheduleOptionResponse, Tenant, UpcomingViewing, UpdateDefinitionRequest, UpdateScheduleRequest, VisaShareCodeStatus, VisaStatus };
1449
+ export { AmenityService, AutomationService, BackButtonDirective, BaseService, BillingService, BookingService, BreadcrumbService, CartEventType, CartService, CategoryService, ConversationInitService, ConversationService, DialogComponent, DialogService, EnumApiClient, EnumCacheService, FacilityService, FeatureService, FloorplanService, FulfillmentService, HideFooterDirective, InventoryService, InvoiceLineService, InvoiceService, InvoiceStatsService, LayoutService, LoadingInterceptor, LoadingService, MediaService, MembershipService, NavigationService, NotificationService, NotificationStore, NotificationTemplateService, OfferingService, OrderPayoutService, OrderService, PaymentService, PostService, ProductCategoryService, ProductService, PropertyHighlightsService, PropertyOfferCounterService, PropertyOfferService, PropertyOfferStatus, PropertySearchService, PropertyService, PropertyStatsService, PropertyViewingService, ResourceCategoryService, ResourceService, SCHEDULE_CRON_META, SERVICE_DIRECTIVES, SidenavService, SnackBarService, SupportService, ThemeService, TimeZoneService, TitleService, acceptLanguageInterceptor, provideAngularServices };
1450
+ export type { AdverseCreditStatus, ApiRequestOptions, ApplicantType, AutomationDefinition, AutomationDefinitionDto, AutomationExecution, AutomationExecutionDto, AutomationExecutionLog, AutomationExecutionStatus, AutomationLogLevel, AutomationSchedule, AutomationScheduleDto, AutomationSummaryResponse, BaseEntity, CancelStateResponse, ChatMessage, ConversationInitResponse, CopyTextResponse, CreateDefinitionRequest, CreateRentalOfferPayload, CreateSaleOfferPayload, CreateScheduleRequest, DialogData, EditLockDto, EditLockResponse, EmploymentStatus, EnqueueExecutionRequest, EnumOption, ExecutionLogDto, FurnitureRequirement, Gender, GroupedViewingsByDate, Guarantor, GuarantorRelationshipType, GuarantorType, HistoryDto, IDynamicDialogConfig, InvoiceStats, OfferDto, OfferInvoiceOption, OfferReferencingPatchPayload, OfferReferencingView, OfferSummary, OfferType, PaymentFrequency, PendingInvoice, PermissionsDto, PersonAddress, PropertyOfferActor, PropertyOfferCounterRequest, PropertyOfferHistory, PropertyOfferInternalNoteResponse, PropertyOfferItem, PropertyOfferItemMedia, PropertyOfferNegotiationView, PropertyOfferResponse, PropertyOfferVersion, PropertyStats, ReferenceProvider, RentalOfferTerms, SaleOfferDetails, SalePaymentMethod, ScheduleCron, ScheduleCronMeta, ScheduleOptionResponse, Tenant, UpcomingViewing, UpdateDefinitionRequest, UpdatePropertyOfferInternalNoteRequest, UpdateScheduleRequest, VersionDto, VisaShareCodeStatus, VisaStatus };