@7365admin1/core 3.49.1-staging.214 → 3.49.1-staging.216

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/index.d.ts CHANGED
@@ -5348,6 +5348,14 @@ type TPatrolEmail = {
5348
5348
  */
5349
5349
  sourceUrl?: string;
5350
5350
  status?: "sent" | "failed" | "deleted";
5351
+ /**
5352
+ * Set when this record was created by resending an earlier one.
5353
+ *
5354
+ * Always points at the **original** email, never at another resend, so the
5355
+ * chain stays one level deep no matter how many attempts are made. A record
5356
+ * with this set never offers a resend button of its own.
5357
+ */
5358
+ sourceEmail?: string | ObjectId | null;
5351
5359
  createdBy: TPatrolEmailCreatedBy;
5352
5360
  createdAt?: string;
5353
5361
  updatedAt?: string;
@@ -5357,6 +5365,14 @@ declare const schemaPatrolEmailLogRef: Joi.ObjectSchema<any>;
5357
5365
  declare const schemaPatrolEmailCreatedBy: Joi.ObjectSchema<any>;
5358
5366
  declare const schemaPatrolEmail: Joi.ObjectSchema<any>;
5359
5367
  declare const schemaSendPatrolEmail: Joi.ObjectSchema<any>;
5368
+ /**
5369
+ * The request body for resending.
5370
+ *
5371
+ * Everything else — subject, recipients, logs, url — is taken from the stored
5372
+ * record rather than the request, so a resend is provably the same email the
5373
+ * original was.
5374
+ */
5375
+ declare const schemaResendPatrolEmail: Joi.ObjectSchema<any>;
5360
5376
  declare const schemaPatrolEmailQuery: Joi.ObjectSchema<any>;
5361
5377
  declare function MPatrolEmail(value: TPatrolEmail): {
5362
5378
  _id: ObjectId | undefined;
@@ -5380,6 +5396,7 @@ declare function MPatrolEmail(value: TPatrolEmail): {
5380
5396
  } | null;
5381
5397
  sourceUrl: string;
5382
5398
  status: "deleted" | "failed" | "sent";
5399
+ sourceEmail: string | ObjectId | null;
5383
5400
  createdBy: {
5384
5401
  _id: string | ObjectId;
5385
5402
  name: string;
@@ -5412,6 +5429,7 @@ declare function usePatrolEmailRepo(): {
5412
5429
  } | undefined;
5413
5430
  sourceUrl?: string | undefined;
5414
5431
  status?: "deleted" | "failed" | "sent" | undefined;
5432
+ sourceEmail?: string | ObjectId | null | undefined;
5415
5433
  createdBy: TPatrolEmailCreatedBy;
5416
5434
  createdAt?: string | undefined;
5417
5435
  updatedAt?: string | undefined;
@@ -5501,6 +5519,29 @@ declare function usePatrolEmailService(): {
5501
5519
  logs: TPatrolEmailLogRef[];
5502
5520
  logCount: number;
5503
5521
  sourceUrl?: string | undefined;
5522
+ sourceEmail?: string | ObjectId | null | undefined;
5523
+ createdBy: TPatrolEmailCreatedBy;
5524
+ createdAt?: string | undefined;
5525
+ updatedAt?: string | undefined;
5526
+ deletedAt?: string | undefined;
5527
+ }>;
5528
+ resend: ({ id, createdBy, cookieHeader, appKey, }: {
5529
+ id: string | ObjectId;
5530
+ createdBy: TPatrolEmailCreatedBy;
5531
+ cookieHeader?: string | undefined;
5532
+ appKey?: "PROPERTY" | "SECURITY" | "HYGIENE" | "MECHANICAL_ELECTRICAL" | "PEST_CONTROL" | "LANDSCAPING" | "POOL_MAINTENANCE" | undefined;
5533
+ }) => Promise<{
5534
+ _id: ObjectId | undefined;
5535
+ pdf: any;
5536
+ status: "sent";
5537
+ site: string | ObjectId;
5538
+ org?: string | ObjectId | undefined;
5539
+ subject: string;
5540
+ recipients: string[];
5541
+ logs: TPatrolEmailLogRef[];
5542
+ logCount: number;
5543
+ sourceUrl?: string | undefined;
5544
+ sourceEmail?: string | ObjectId | null | undefined;
5504
5545
  createdBy: TPatrolEmailCreatedBy;
5505
5546
  createdAt?: string | undefined;
5506
5547
  updatedAt?: string | undefined;
@@ -5524,6 +5565,7 @@ declare function usePatrolEmailService(): {
5524
5565
 
5525
5566
  declare function usePatrolEmailController(): {
5526
5567
  send: (req: Request, res: Response, next: NextFunction) => Promise<void>;
5568
+ resend: (req: Request, res: Response, next: NextFunction) => Promise<void>;
5527
5569
  getAll: (req: Request, res: Response, next: NextFunction) => Promise<void>;
5528
5570
  getById: (req: Request, res: Response, next: NextFunction) => Promise<void>;
5529
5571
  deleteById: (req: Request, res: Response, next: NextFunction) => Promise<void>;
@@ -12572,4 +12614,4 @@ declare function useNotificationPreferenceController(): {
12572
12614
  update: (req: Request, res: Response, next: NextFunction) => Promise<void>;
12573
12615
  };
12574
12616
 
12575
- export { ANPRMode, APP_BASE_URLS, AUDIT_VALUE_MAX_LENGTH, AccessTypeProps, AppKey, AppServiceType, AssignCardConfig, BidStatus, BidType, BuildingLevelStatus, BuildingStatus, BulkCardUpdate, BulletinOrder, BulletinRecipient, BulletinSort, BulletinStatus, BulletinVideoOrder, BulletinVideoSort, CAMERA_ANPR_PERMISSIONS, CAMERA_CAPABILITIES, CAMERA_CAPABILITY_REASONS, CAMERA_MANAGE_ANY_PERMISSIONS, CAMERA_NOT_PATROL_OR_CCTV, CAMERA_NO_SUB_STREAM_TTL_SECONDS, CAMERA_PTZ_PERMISSIONS, CAMERA_REQUEST_TIMEOUT_MS, CAMERA_RTSP_TIMEOUT_MS, CAMERA_SETUP_PERMISSIONS, CAMERA_SNAPSHOT_CACHE_SECONDS, CAMERA_SNAPSHOT_MAX_BYTES, CAMERA_TEST_MIN_INTERVAL_SECONDS, CAMERA_TEST_ROUND_LIMIT, CAMERA_TEST_ROUND_SECONDS, CAMERA_TYPE_ANPR, CAMERA_TYPE_IP, CAMERA_VIEW_PERMISSIONS, CLIENT_ACTIONS, CLOCK_DRIFT_WARN_SECONDS, CONSOLE_AUDIT_LABELS, CURRENT_TIME_ENDPOINT, Camera, CameraAddressInput, CameraCapability, CameraCapabilityContext, CameraCapabilityDescriptor, CameraCapabilityEntry, CameraCapabilityReason, CameraCapabilityState, CameraCapabilityTrace, CameraDevice, CameraFrame, CameraMembership, CameraStream, CameraTestStatus, CameraTransport, CameraType, ConsoleAuditAction, ConsoleAuditTarget, DEVICE_STATUS, DOBStatus, DUPLICATE_TERMS_VERSION_MESSAGE, DayOfWeek, DeviceHttpTarget, DeviceProbeResult, DynamicFormFields, EAccessCardTypes, EAccessCardUserTypes, EmailSender, EntryOrder, EntrySort, EventOrder, EventSort, EventStatus, EventType, FacilitySort, FacilityStatus, FormEntryStatus, GuestSort, GuestStatus, HID_CARD_VALUE_FACTOR, HID_PERMISSION_CATEGORIES, HID_UINT32_MAX, HID_UINT64_MAX, HidRawUint64, IAccessCard, IAccessCardTransaction, InviteActor, LIVE_ROLE, MAX_CAMERA_CHANNEL, MAccessCard, MAccessCardTransaction, MAddress, MAttendance, MAttendanceSettings, MBidPreloved, MBillingConfiguration, MBillingItem, MBuilding, MBuildingLevel, MBuildingUnit, MBulletinBoard, MBulletinVideo, MCategoryPreloved, MChannelPreloved, MChat, MChatPreloved, MConsoleAudit, MCustomer, MCustomerSite, MDocumentManagement, MEMBER_TYPES, MEntryPassSettings, MEventManagement, MFeedback, MFile, MFormEntry, MGuestManagement, MHidAmicoEvent, MHidAmicoIdentity, MHidAmicoReader, MHidSipAccount, MHidSitePermissions, MIncidentReport, MManpowerDesignations, MManpowerMonitoring, MManpowerRemarks, MManpowerSites, MMember, MNfcPatrolLog, MNfcPatrolRoute, MNfcPatrolSettings, MNfcPatrolSettingsUpdate, MNfcPatrolTag, MNotification, MNotificationPreference, MOccurrenceBook, MOccurrenceEntry, MOccurrenceSubject, MOnlineForm, MOrg, MOvernightParkingApprovalHours, MOvernightParkingRequest, MPatrolEmail, MPatrolLog, MPatrolQuestion, MPatrolRoute, MPerson, MPlatformTerms, MPost, MPostFavorite, MPromoCode, MRobot, MRole, MRoleV2, MServiceProvider, MServiceProviderBilling, MSession, MSite, MSiteCamera, MSiteFacility, MSiteFacilityBooking, MStatementOfAccount, MSubcategoryPreloved, MSubscription, MSubscriptionPlan, MUnitBilling, MUser, MVehicle, MVehicleTransaction, MVerification, MVerificationV2, MVisitorTransaction, MWorkOrder, NOTIFICATION_CATEGORIES, NOTIFICATION_CHANNELS, NOTIFICATION_CHANNEL_LABELS, NOTIFICATION_NAMESPACE, NotificationAppSlug, NotificationCategory, NotificationChannel, NotificationModule, NotificationPreferenceView, NotificationService, ORG_MARKETPLACE_VENDOR_FIELD, OrgNature, OvernightParkingRequestSort, OvernightParkingRequestStatus, PATROL_CCTV_CAMERA_FILTER, PATROL_EMAIL_MAX_LOGS, PATROL_EMAIL_MAX_PER_HOUR, PATROL_EMAIL_MAX_RECIPIENTS, PERSON_TYPES, PLATFORM_STAFF_MEMBER_TYPE, PLATFORM_STAFF_ROLE_TYPE, PROPERTY_MANAGEMENT_MEMBER_TYPES, PStatus, PTZ_ALLOWED_ACTIONS, PTZ_ALLOWED_CODES, Period, PersonStatus, PersonType, PersonTypes, PlatformTermsStatus, PostOrder, PostSort, PostStatus, QrTagProps, REALTIME_MAX_FANOUT, ResidentAppModuleKey, SELF_SIGNUP_PLATFORM, SELF_SIGNUP_STATUS, SELF_SIGNUP_TYPES, SERVICE_PROVIDER_INVITE_LABELS, SERVICE_PROVIDER_INVITE_TRANSITIONS, SERVICE_PROVIDER_SIGN_IN_SUBJECT, SERVICE_PROVIDER_SIGN_IN_TYPE, SERVICE_PROVIDER_SIGN_UP_SUBJECT, SERVICE_PROVIDER_SIGN_UP_TYPE, SOFTWARE_VERSION_ENDPOINT, ServiceProviderInviteAction, ServiceProviderInviteDecision, ServiceProviderInviteFacts, SiteAddress, SiteCategories, SiteStatus, SortFields, SortOrder, Status, SubjectOrder, SubjectSort, SubscriptionBillingMode, SubscriptionType, TAccessMngmntSettings, TActionStatus, TAddress, TAffectedEntities, TAffectedInjured, TAppServiceType, TApprovedBy, TApprover, TAttendance, TAttendanceCheckIn, TAttendanceCheckOut, TAttendanceCheckTime, TAttendanceLocation, TAttendanceSettings, TAttendanceSettingsGetBySite, TAuthorities, TAuthoritiesCalled, TBidPreloved, TBilling, TBillingConfiguration, TBillingItem, TBuilding, TBuildingLevel, TBuildingUnit, TBulletinBoard, TBulletinVideo, TCamera, TCameraHealthClaim, TCategoryPreloved, TChannelPreloved, TChat, TChatPreloved, TCheckPoint$1 as TCheckPoint, TComplaintInfo, TComplaintReceivedTo, TConsoleAudit, TConsoleAuditQuery, TCounter, TCreateNfcPatrolLog, TCustomer, TCustomerSite, TCustomerSitePropertyField, TDayNumber, TDaySchedule, TDefaultAccessCard, TDesignations, TDocs, TDocumentCreate, TDocumentManagement, TEntryPassSettings, TEventManagement, TFeedback, TFeedbackMetadata, TFeedbackUpdate, TFeedbackUpdateCategory, TFeedbackUpdateServiceProvider, TFeedbackUpdateStatus, TFeedbackUpdateToCompleted, TFile, TFiles, TFolderUpdate, TFormEntry, TGetAttendancesByUserQuery, TGetAttendancesQuery, TGuestManagement, THidAmicoEvent, THidAmicoGatewayJob, THidAmicoIdentity, THidAmicoPhysicalCard, THidAmicoReader, THidPermissionAssignment, THidPermissionCategory, THidPhysicalCardInput, THidPhysicalCardType$1 as THidPhysicalCardType, THidSipAccount, THidSitePermissions, TIncidentInformation, TIncidentReport, TIncidentTypeAndTime, TInvoice, TKeyRef, TManpowerDesignations, TManpowerDesignationsUpdate, TManpowerMonitoring, TManpowerMonitoringUpdate, TManpowerRemarks, TManpowerRemarksStatusUpdate, TManpowerRemarksUpdate, TManpowerSearchFilter, TManpowerSites, TMember, TMemberUpdateStatus, TMessagePreloved, TMiniRole, TNfcPatrolLog, TNfcPatrolRoute, TNfcPatrolRouteEdit, TNfcPatrolSettings, TNfcPatrolSettingsGetBySite, TNfcPatrolSettingsUpdate, TNfcPatrolTag, TNfcPatrolTagConfigureReset, TNfcPatrolTagEdit, TNfcPatrolTagUpdateData, TNotification, TNotificationPreference, TNotificationPreferenceOff, TOccurrenceBook, TOccurrenceEntry, TOccurrenceSubject, TOnlineForm, TOrg, TOvernightParkingApprovalHours, TOvernightParkingRequest, TPatrolEmail, TPatrolEmailCreatedBy, TPatrolEmailLogRef, TPatrolLog, TPatrolQuestion, TPatrolRoute, TPerson, TPlaceOfIncident, TPlates, TPlatformTerms, TPost, TPostFavorite, TPrice, TPriceType, TPromoCode, TPromoCurrencyInput, TPromoTier, TRANSPORT_DEVICE_HTTP, TRANSPORT_RELAY_PLAYER, TRANSPORT_RTSP_FRAME, TRecipientOfComplaint, TRemarks, TResident, TResidentAppModules, TRobot, TRobotMetadata, TRole, TRoleV2, TRoute, TSOABillingItem, TSOAStatus, TServiceProvider, TServiceProviderBilling, TSession, TSessionCreate, TShifts, TSignNfcPatrolLog, TSite, TSiteCamera, TSiteFacility, TSiteFacilityBooking, TSiteInfo, TSiteInformation, TSiteMetadata, TSiteUpdateBlock, TStatementOfAccount, TSubcategoryPreloved, TSubmissionForm, TSubscription, TSubscriptionPlan, TSubscriptionPlanApplication, TUnitBilling, TUnits, TUpdateFormEntry, TUpdateName, TUser, TUserCreate, TVehicle, TVehicleTransaction, TVehicleUpdate, TVerification, TVerificationEvent, TVerificationMetadata, TVerificationMetadataV2, TVerificationV2, TVisitorTransaction, TWorkOrder, TWorkOrderMetadata, TWorkOrderUpdate, TWorkOrderUpdateStatus, TWorkOrderUpdateToCompleted, TanyoneDamageToProperty, UseAccessManagementRepo, UserStatus, VERIFICATION_OPEN_STATUSES, VehicleCategory, VehicleOrder, VehicleSort, VehicleStatus, VehicleType, VerificationLinkType, VerificationStatus, VerificationSubjectType, VerificationType, VisitorSort, VisitorStatus, addressSchema, allowedFieldsSite, allowedNatures, allowedPlanApplications, attendanceSchema, attendanceSettingsSchema, building_level_namespace_collection, building_units_namespace_collection, buildings_namespace_collection, bulletin_boards_namespace_collection, cameraBaseUrl, cameraCapabilitiesFor, cameraDevices, cameraGrant, cameraHealthClaim, cameraHealthSummary, cameraManagePermissions, cameraProbeCacheKey, cameraTransports, canRevokeRefreshTokenFamily, categoriesForPermissions, categorySupportsChannel, chatPrelovedEvents, chatSchema, clampPtzSpeed, clockDriftSeconds, console_audit_namespace_collection, createManpowerRemarksDaily, customerSchema, customerSitePropertyFields, decideServiceProviderInvite, decodeHidPacsCard, deriveCameraHost, describeCameraCapabilities, designationsSchema, deviceControlEnabled, deviceHttpEnabled, deviceHttpTargets, deviceHttpTimeoutMs, deviceProbeTtlSeconds, emitNotificationCreated, encodeHidPacsCard, events_namespace_collection, facility_bookings_namespace_collection, feedbackSchema, feedbacks2_namespace_collection, feedbacks_namespace_collection, ffmpegFrameArgs, ffmpegPath, formatCapabilityTrace, formatDahuaDate, getIO, getSessionIdFromRequest, grabWithSubStreamFallback, guests_namespace_collection, hasAnyCapability, hasAnyPermission, hasOrgInvitation, hidRawUint64, incidentReport, incidentReportLog, incidents_namespace_collection, isCameraEntitled, isDuplicateVersionError, isPatrolCctvCamera, isPlatformOwner, isPromoCodeExpired, isRelayPlayerUrl, isSafeRelativePath, isSuperAdmin, isTermsCurrent, logCamera, manpowerDesignationsSchema, manpowerEvents, manpowerMonitoringSchema, manpowerRemarksSchema, manpowerSitesSchema, mapWithLimit, nfcPatrolSettingsSchema, nfcPatrolSettingsSchemaUpdate, normalizeAcceptedTerms, normalizeHidCardValue, notificationCategory, notificationCategoryLabel, notificationEvents, notificationRoom, occurrence_book_namespace_collection, online_forms_namespace_collection, orgSchema, overnight_parking_requests_namespace_collection, parseCameraChannel, parseCameraHost, parseDahuaFind, parseDeviceTime, parseHidJsonLossless, parsePromoExpiry, parseSoftwareVersion, pickAuditFields, pickCustomerSiteProperties, platform_terms_namespace_collection, promoCodeRefusal, promoCodeSchema, promoCodeStatusSchema, promoCodeUpdate, promoCodeUpdateSchema, ptzEndpoint, publicCameraFields, recordConsoleAction, refuseServiceProviderInviteAction, registerCameraTransport, relayForRecorder, remarksSchema, renderPagePdf, resetCameraTransports, residentAppModuleKeys, residentFormEntry, resolutionRefusalReason, resolveCamera, resolveDeviceHttp, resolveHidPhysicalCardValue, resolveInviteActor, robotSchema, rtspUrl, schema, schemaAppSlugNotification, schemaApprovedBy, schemaApprover, schemaBidPreloved, schemaBilling, schemaBillingConfiguration, schemaBillingItem, schemaBuilding, schemaBuildingLevel, schemaBuildingUnit, schemaBuildingUpdateOptions, schemaBulletinBoard, schemaBulletinVideo, schemaCategoryPreloved, schemaChannelPreloved, schemaChatPreloved, schemaConsoleAudit, schemaCreateHidAmicoIdentity, schemaCreateNfcPatrolLog, schemaCreateNotification, schemaCustomerSite, schemaDiscoverHidAmicoReader, schemaDocumentManagement, schemaEntryPassSettings, schemaEventManagement, schemaFiles, schemaFormEntry, schemaGuestManagement, schemaHidAmicoAccessLogQuery, schemaHidAmicoAssignUserCard, schemaHidAmicoConfiguration, schemaHidAmicoEnrollUserCard, schemaHidAmicoEvent, schemaHidAmicoExecuteActions, schemaHidAmicoIdentity, schemaHidAmicoIdentityIdParams, schemaHidAmicoIdentityQuery, schemaHidAmicoIntercomCall, schemaHidAmicoLogQuery, schemaHidAmicoMonitor, schemaHidAmicoNotificationParams, schemaHidAmicoObjectOperation, schemaHidAmicoOperatingMode, schemaHidAmicoReader, schemaHidAmicoReaderIdParams, schemaHidAmicoReaderListQuery, schemaHidAmicoReaderUserQuery, schemaHidAmicoSetConfiguration, schemaHidAmicoSiteIdParams, schemaHidAmicoSync, schemaHidAmicoUserCardIdParams, schemaHidAmicoUserCardParams, schemaHidAmicoUserImageParams, schemaHidAmicoUserImageUploadQuery, schemaHidAmicoUserPin, schemaHidAmicoUserPinParams, schemaHidAmicoVisitorImageParams, schemaHidAmicoVisitorImageUploadQuery, schemaHidAmicoVisitorQr, schemaHidPermissionCandidateQuery, schemaHidPermissionScopeQuery, schemaHidSipAccountRequest, schemaIncidentReport, schemaListNotification, schemaMultipleDocumentManagement, schemaNfcPatrolLog, schemaNfcPatrolRoute, schemaNfcPatrolTag, schemaNfcPatrolTagUpdateData, schemaNotification, schemaNotificationPreference, schemaNotificationPreferenceOff, schemaOccurrenceBook, schemaOccurrenceEntry, schemaOccurrenceSubject, schemaOnlineForm, schemaOvernightParkingApprovalHours, schemaOvernightParkingRequest, schemaPatrolEmail, schemaPatrolEmailCreatedBy, schemaPatrolEmailLogRef, schemaPatrolEmailQuery, schemaPatrolLog, schemaPatrolQuestion, schemaPatrolRoute, schemaPerson, schemaPlate, schemaPlatformTerms, schemaPost, schemaPostFavorite, schemaResidentSelfSignUp, schemaSelfServiceVisitor, schemaSendPatrolEmail, schemaServiceProvider, schemaServiceProviderBilling, schemaSignNfcPatrolLog, schemaSiteCamera, schemaSiteFacility, schemaSiteFacilityBooking, schemaStatementOfAccount, schemaSubcategoryPreloved, schemaUnitBilling, schemaUpdateBidPreloved, schemaUpdateBuildingLevel, schemaUpdateBulletinBoard, schemaUpdateBulletinVideo, schemaUpdateCategoryPreloved, schemaUpdateChatPreloved, schemaUpdateDocumentManagement, schemaUpdateEntryPassSettings, schemaUpdateEventManagement, schemaUpdateFolderManagement, schemaUpdateFormEntry, schemaUpdateGuestManagement, schemaUpdateHidAmicoIdentity, schemaUpdateHidAmicoReader, schemaUpdateHidSitePermissions, schemaUpdateIncidentReport, schemaUpdateNotification, schemaUpdateNotificationPreference, schemaUpdateOccurrenceBook, schemaUpdateOccurrenceEntry, schemaUpdateOccurrenceSubject, schemaUpdateOnlineForm, schemaUpdateOptions, schemaUpdateOvernightParkingRequest, schemaUpdatePatrolLog, schemaUpdatePatrolQuestion, schemaUpdatePatrolRoute, schemaUpdatePerson, schemaUpdatePost, schemaUpdatePostFavorite, schemaUpdateServiceProviderBilling, schemaUpdateSiteBillingConfiguration, schemaUpdateSiteBillingItem, schemaUpdateSiteCamera, schemaUpdateSiteFacility, schemaUpdateSiteFacilityBooking, schemaUpdateSiteUnitBilling, schemaUpdateStatementOfAccount, schemaUpdateSubcategoryPreloved, schemaUpdateVisTrans, schemaVehicleTransaction, schemaVisitorTransaction, schemeCamera, schemeLogCamera, serviceProviderInviteLabel, sessionSchema, setIO, shiftSchema, siteSchema, site_people_namespace_collection, snapshotEndpoint, snapshotRefusalReason, stringifyHidJson, subscriptionPlanSchema, updateRemarksStatusEod, updateRemarksisAcknowledged, updateSiteSchema, useAccessManagementController, useAddressRepo, useAttendanceController, useAttendanceRepository, useAttendanceSettingsController, useAttendanceSettingsRepository, useAttendanceSettingsService, useAuthController, useAuthControllerV2, useAuthService, useAuthServiceV2, useBidPrelovedController, useBidPrelovedRepo, useBidPrelovedService, useBuildingController, useBuildingLevelController, useBuildingLevelRepo, useBuildingLevelService, useBuildingRepo, useBuildingService, useBuildingUnitController, useBuildingUnitRepo, useBuildingUnitService, useBulletinBoardController, useBulletinBoardRepo, useBulletinBoardService, useBulletinVideoController, useBulletinVideoRepo, useBulletinVideoService, useCameraViewController, useCameraViewService, useCategoryPrelovedController, useCategoryPrelovedRepo, useChannelPrelovedController, useChannelPrelovedRepo, useChatController, useChatPrelovedController, useChatPrelovedRepo, useChatPrelovedService, useChatRepo, useConsoleAuditController, useConsoleAuditRepo, useCounterModel, useCounterRepo, useCustomerController, useCustomerRepo, useCustomerSiteController, useCustomerSiteRepo, useCustomerSiteService, useDahuaService, useDashboardController, useDashboardRepo, useDocumentManagementController, useDocumentManagementRepo, useDocumentManagementService, useEntryPassSettingsController, useEntryPassSettingsRepo, useEventManagementController, useEventManagementRepo, useEventManagementService, useFeedbackController, useFeedbackRepo, useFeedbackService, useFileController, useFileRepo, useFileService, useFormEntryController, useFormEntryRepo, useGuestManagementController, useGuestManagementRepo, useGuestManagementService, useHidAmicoController, useHidAmicoRepo, useHidAmicoService, useHrmLabsAttendanceCtrl, useHrmLabsAttendanceSrvc, useIncidentReportController, useIncidentReportRepo, useIncidentReportService, useInvoiceController, useInvoiceModel, useInvoiceRepo, useManpowerDesignationCtrl, useManpowerDesignationRepo, useManpowerMonitoringCtrl, useManpowerMonitoringRepo, useManpowerMonitoringSrvc, useManpowerRemarkCtrl, useManpowerRemarksRepo, useManpowerSitesCtrl, useManpowerSitesRepo, useManpowerSitesSrvc, useMemberController, useMemberRepo, useMemberService, useNewDashboardController, useNewDashboardRepo, useNfcPatrolLogController, useNfcPatrolLogRepo, useNfcPatrolLogService, useNfcPatrolRouteController, useNfcPatrolRouteRepo, useNfcPatrolRouteService, useNfcPatrolSettingsController, useNfcPatrolSettingsRepository, useNfcPatrolSettingsService, useNfcPatrolTagController, useNfcPatrolTagRepo, useNfcPatrolTagService, useNotificationController, useNotificationPreferenceController, useNotificationPreferenceRepo, useNotificationPreferenceService, useNotificationRepo, useOccurrenceBookController, useOccurrenceBookRepo, useOccurrenceBookService, useOccurrenceEntryController, useOccurrenceEntryRepo, useOccurrenceEntryService, useOccurrenceSubjectController, useOccurrenceSubjectRepo, useOccurrenceSubjectService, useOnlineFormController, useOnlineFormRepo, useOrgController, useOrgControllerV2, useOrgRepo, useOvernightParkingController, useOvernightParkingRepo, useOvernightParkingRequestController, useOvernightParkingRequestRepo, useOvernightParkingRequestService, usePatrolEmailController, usePatrolEmailRepo, usePatrolEmailService, usePatrolLogController, usePatrolLogRepo, usePatrolLogService, usePatrolQuestionController, usePatrolQuestionRepo, usePatrolRouteController, usePatrolRouteRepo, usePersonController, usePersonRepo, usePlatformTermsController, usePlatformTermsRepo, usePlatformTermsService, usePostFavoriteController, usePostFavoriteRepo, usePostFavoriteService, usePostPrelovedController, usePostPrelovedRepo, usePriceController, usePriceModel, usePriceRepo, usePromoCodeController, usePromoCodeRepo, useRedDotPaymentController, useRedDotPaymentRepo, useRedDotPaymentSvc, useRobotController, useRobotRepo, useRobotService, useRoleController, useRoleControllerV2, useRoleRepo, useRoleRepoV2, useRoleServiceV2, useServiceProviderBillingController, useServiceProviderBillingRepo, useServiceProviderBillingService, useServiceProviderController, useServiceProviderInviteController, useServiceProviderInviteService, useServiceProviderRepo, useSessionRepo, useSiteBillingConfigurationController, useSiteBillingConfigurationRepo, useSiteBillingItemController, useSiteBillingItemRepo, useSiteCameraController, useSiteCameraRepo, useSiteCameraService, useSiteController, useSiteFacilityBookingController, useSiteFacilityBookingRepo, useSiteFacilityBookingService, useSiteFacilityController, useSiteFacilityRepo, useSiteFacilityService, useSiteRepo, useSiteService, useSiteUnitBillingController, useSiteUnitBillingRepo, useSiteUnitBillingService, useStatementOfAccountController, useStatementOfAccountRepo, useSubcategoryPrelovedController, useSubcategoryPrelovedRepo, useSubscriptionController, useSubscriptionPlanController, useSubscriptionPlanRepo, useSubscriptionRepo, useSubscriptionService, useUserController, useUserControllerV2, useUserRepo, useUserRepoV2, useUserService, useUserServiceV2, useVehicleController, useVehicleRepo, useVehicleService, useVerificationController, useVerificationControllerV2, useVerificationRepo, useVerificationRepoV2, useVerificationService, useVerificationServiceV2, useVisitorTransactionController, useVisitorTransactionRepo, useVisitorTransactionService, useWorkOrderController, useWorkOrderRepo, useWorkOrderService, userSchema, vehicleSchema, vehicles_namespace_collection, visitorPersonRepo, visitorPersonService, visitorType, visitors_namespace_collection, wallConfig, workOrderSchema, work_orders2_namespace_collection, work_orders_namespace_collection };
12617
+ export { ANPRMode, APP_BASE_URLS, AUDIT_VALUE_MAX_LENGTH, AccessTypeProps, AppKey, AppServiceType, AssignCardConfig, BidStatus, BidType, BuildingLevelStatus, BuildingStatus, BulkCardUpdate, BulletinOrder, BulletinRecipient, BulletinSort, BulletinStatus, BulletinVideoOrder, BulletinVideoSort, CAMERA_ANPR_PERMISSIONS, CAMERA_CAPABILITIES, CAMERA_CAPABILITY_REASONS, CAMERA_MANAGE_ANY_PERMISSIONS, CAMERA_NOT_PATROL_OR_CCTV, CAMERA_NO_SUB_STREAM_TTL_SECONDS, CAMERA_PTZ_PERMISSIONS, CAMERA_REQUEST_TIMEOUT_MS, CAMERA_RTSP_TIMEOUT_MS, CAMERA_SETUP_PERMISSIONS, CAMERA_SNAPSHOT_CACHE_SECONDS, CAMERA_SNAPSHOT_MAX_BYTES, CAMERA_TEST_MIN_INTERVAL_SECONDS, CAMERA_TEST_ROUND_LIMIT, CAMERA_TEST_ROUND_SECONDS, CAMERA_TYPE_ANPR, CAMERA_TYPE_IP, CAMERA_VIEW_PERMISSIONS, CLIENT_ACTIONS, CLOCK_DRIFT_WARN_SECONDS, CONSOLE_AUDIT_LABELS, CURRENT_TIME_ENDPOINT, Camera, CameraAddressInput, CameraCapability, CameraCapabilityContext, CameraCapabilityDescriptor, CameraCapabilityEntry, CameraCapabilityReason, CameraCapabilityState, CameraCapabilityTrace, CameraDevice, CameraFrame, CameraMembership, CameraStream, CameraTestStatus, CameraTransport, CameraType, ConsoleAuditAction, ConsoleAuditTarget, DEVICE_STATUS, DOBStatus, DUPLICATE_TERMS_VERSION_MESSAGE, DayOfWeek, DeviceHttpTarget, DeviceProbeResult, DynamicFormFields, EAccessCardTypes, EAccessCardUserTypes, EmailSender, EntryOrder, EntrySort, EventOrder, EventSort, EventStatus, EventType, FacilitySort, FacilityStatus, FormEntryStatus, GuestSort, GuestStatus, HID_CARD_VALUE_FACTOR, HID_PERMISSION_CATEGORIES, HID_UINT32_MAX, HID_UINT64_MAX, HidRawUint64, IAccessCard, IAccessCardTransaction, InviteActor, LIVE_ROLE, MAX_CAMERA_CHANNEL, MAccessCard, MAccessCardTransaction, MAddress, MAttendance, MAttendanceSettings, MBidPreloved, MBillingConfiguration, MBillingItem, MBuilding, MBuildingLevel, MBuildingUnit, MBulletinBoard, MBulletinVideo, MCategoryPreloved, MChannelPreloved, MChat, MChatPreloved, MConsoleAudit, MCustomer, MCustomerSite, MDocumentManagement, MEMBER_TYPES, MEntryPassSettings, MEventManagement, MFeedback, MFile, MFormEntry, MGuestManagement, MHidAmicoEvent, MHidAmicoIdentity, MHidAmicoReader, MHidSipAccount, MHidSitePermissions, MIncidentReport, MManpowerDesignations, MManpowerMonitoring, MManpowerRemarks, MManpowerSites, MMember, MNfcPatrolLog, MNfcPatrolRoute, MNfcPatrolSettings, MNfcPatrolSettingsUpdate, MNfcPatrolTag, MNotification, MNotificationPreference, MOccurrenceBook, MOccurrenceEntry, MOccurrenceSubject, MOnlineForm, MOrg, MOvernightParkingApprovalHours, MOvernightParkingRequest, MPatrolEmail, MPatrolLog, MPatrolQuestion, MPatrolRoute, MPerson, MPlatformTerms, MPost, MPostFavorite, MPromoCode, MRobot, MRole, MRoleV2, MServiceProvider, MServiceProviderBilling, MSession, MSite, MSiteCamera, MSiteFacility, MSiteFacilityBooking, MStatementOfAccount, MSubcategoryPreloved, MSubscription, MSubscriptionPlan, MUnitBilling, MUser, MVehicle, MVehicleTransaction, MVerification, MVerificationV2, MVisitorTransaction, MWorkOrder, NOTIFICATION_CATEGORIES, NOTIFICATION_CHANNELS, NOTIFICATION_CHANNEL_LABELS, NOTIFICATION_NAMESPACE, NotificationAppSlug, NotificationCategory, NotificationChannel, NotificationModule, NotificationPreferenceView, NotificationService, ORG_MARKETPLACE_VENDOR_FIELD, OrgNature, OvernightParkingRequestSort, OvernightParkingRequestStatus, PATROL_CCTV_CAMERA_FILTER, PATROL_EMAIL_MAX_LOGS, PATROL_EMAIL_MAX_PER_HOUR, PATROL_EMAIL_MAX_RECIPIENTS, PERSON_TYPES, PLATFORM_STAFF_MEMBER_TYPE, PLATFORM_STAFF_ROLE_TYPE, PROPERTY_MANAGEMENT_MEMBER_TYPES, PStatus, PTZ_ALLOWED_ACTIONS, PTZ_ALLOWED_CODES, Period, PersonStatus, PersonType, PersonTypes, PlatformTermsStatus, PostOrder, PostSort, PostStatus, QrTagProps, REALTIME_MAX_FANOUT, ResidentAppModuleKey, SELF_SIGNUP_PLATFORM, SELF_SIGNUP_STATUS, SELF_SIGNUP_TYPES, SERVICE_PROVIDER_INVITE_LABELS, SERVICE_PROVIDER_INVITE_TRANSITIONS, SERVICE_PROVIDER_SIGN_IN_SUBJECT, SERVICE_PROVIDER_SIGN_IN_TYPE, SERVICE_PROVIDER_SIGN_UP_SUBJECT, SERVICE_PROVIDER_SIGN_UP_TYPE, SOFTWARE_VERSION_ENDPOINT, ServiceProviderInviteAction, ServiceProviderInviteDecision, ServiceProviderInviteFacts, SiteAddress, SiteCategories, SiteStatus, SortFields, SortOrder, Status, SubjectOrder, SubjectSort, SubscriptionBillingMode, SubscriptionType, TAccessMngmntSettings, TActionStatus, TAddress, TAffectedEntities, TAffectedInjured, TAppServiceType, TApprovedBy, TApprover, TAttendance, TAttendanceCheckIn, TAttendanceCheckOut, TAttendanceCheckTime, TAttendanceLocation, TAttendanceSettings, TAttendanceSettingsGetBySite, TAuthorities, TAuthoritiesCalled, TBidPreloved, TBilling, TBillingConfiguration, TBillingItem, TBuilding, TBuildingLevel, TBuildingUnit, TBulletinBoard, TBulletinVideo, TCamera, TCameraHealthClaim, TCategoryPreloved, TChannelPreloved, TChat, TChatPreloved, TCheckPoint$1 as TCheckPoint, TComplaintInfo, TComplaintReceivedTo, TConsoleAudit, TConsoleAuditQuery, TCounter, TCreateNfcPatrolLog, TCustomer, TCustomerSite, TCustomerSitePropertyField, TDayNumber, TDaySchedule, TDefaultAccessCard, TDesignations, TDocs, TDocumentCreate, TDocumentManagement, TEntryPassSettings, TEventManagement, TFeedback, TFeedbackMetadata, TFeedbackUpdate, TFeedbackUpdateCategory, TFeedbackUpdateServiceProvider, TFeedbackUpdateStatus, TFeedbackUpdateToCompleted, TFile, TFiles, TFolderUpdate, TFormEntry, TGetAttendancesByUserQuery, TGetAttendancesQuery, TGuestManagement, THidAmicoEvent, THidAmicoGatewayJob, THidAmicoIdentity, THidAmicoPhysicalCard, THidAmicoReader, THidPermissionAssignment, THidPermissionCategory, THidPhysicalCardInput, THidPhysicalCardType$1 as THidPhysicalCardType, THidSipAccount, THidSitePermissions, TIncidentInformation, TIncidentReport, TIncidentTypeAndTime, TInvoice, TKeyRef, TManpowerDesignations, TManpowerDesignationsUpdate, TManpowerMonitoring, TManpowerMonitoringUpdate, TManpowerRemarks, TManpowerRemarksStatusUpdate, TManpowerRemarksUpdate, TManpowerSearchFilter, TManpowerSites, TMember, TMemberUpdateStatus, TMessagePreloved, TMiniRole, TNfcPatrolLog, TNfcPatrolRoute, TNfcPatrolRouteEdit, TNfcPatrolSettings, TNfcPatrolSettingsGetBySite, TNfcPatrolSettingsUpdate, TNfcPatrolTag, TNfcPatrolTagConfigureReset, TNfcPatrolTagEdit, TNfcPatrolTagUpdateData, TNotification, TNotificationPreference, TNotificationPreferenceOff, TOccurrenceBook, TOccurrenceEntry, TOccurrenceSubject, TOnlineForm, TOrg, TOvernightParkingApprovalHours, TOvernightParkingRequest, TPatrolEmail, TPatrolEmailCreatedBy, TPatrolEmailLogRef, TPatrolLog, TPatrolQuestion, TPatrolRoute, TPerson, TPlaceOfIncident, TPlates, TPlatformTerms, TPost, TPostFavorite, TPrice, TPriceType, TPromoCode, TPromoCurrencyInput, TPromoTier, TRANSPORT_DEVICE_HTTP, TRANSPORT_RELAY_PLAYER, TRANSPORT_RTSP_FRAME, TRecipientOfComplaint, TRemarks, TResident, TResidentAppModules, TRobot, TRobotMetadata, TRole, TRoleV2, TRoute, TSOABillingItem, TSOAStatus, TServiceProvider, TServiceProviderBilling, TSession, TSessionCreate, TShifts, TSignNfcPatrolLog, TSite, TSiteCamera, TSiteFacility, TSiteFacilityBooking, TSiteInfo, TSiteInformation, TSiteMetadata, TSiteUpdateBlock, TStatementOfAccount, TSubcategoryPreloved, TSubmissionForm, TSubscription, TSubscriptionPlan, TSubscriptionPlanApplication, TUnitBilling, TUnits, TUpdateFormEntry, TUpdateName, TUser, TUserCreate, TVehicle, TVehicleTransaction, TVehicleUpdate, TVerification, TVerificationEvent, TVerificationMetadata, TVerificationMetadataV2, TVerificationV2, TVisitorTransaction, TWorkOrder, TWorkOrderMetadata, TWorkOrderUpdate, TWorkOrderUpdateStatus, TWorkOrderUpdateToCompleted, TanyoneDamageToProperty, UseAccessManagementRepo, UserStatus, VERIFICATION_OPEN_STATUSES, VehicleCategory, VehicleOrder, VehicleSort, VehicleStatus, VehicleType, VerificationLinkType, VerificationStatus, VerificationSubjectType, VerificationType, VisitorSort, VisitorStatus, addressSchema, allowedFieldsSite, allowedNatures, allowedPlanApplications, attendanceSchema, attendanceSettingsSchema, building_level_namespace_collection, building_units_namespace_collection, buildings_namespace_collection, bulletin_boards_namespace_collection, cameraBaseUrl, cameraCapabilitiesFor, cameraDevices, cameraGrant, cameraHealthClaim, cameraHealthSummary, cameraManagePermissions, cameraProbeCacheKey, cameraTransports, canRevokeRefreshTokenFamily, categoriesForPermissions, categorySupportsChannel, chatPrelovedEvents, chatSchema, clampPtzSpeed, clockDriftSeconds, console_audit_namespace_collection, createManpowerRemarksDaily, customerSchema, customerSitePropertyFields, decideServiceProviderInvite, decodeHidPacsCard, deriveCameraHost, describeCameraCapabilities, designationsSchema, deviceControlEnabled, deviceHttpEnabled, deviceHttpTargets, deviceHttpTimeoutMs, deviceProbeTtlSeconds, emitNotificationCreated, encodeHidPacsCard, events_namespace_collection, facility_bookings_namespace_collection, feedbackSchema, feedbacks2_namespace_collection, feedbacks_namespace_collection, ffmpegFrameArgs, ffmpegPath, formatCapabilityTrace, formatDahuaDate, getIO, getSessionIdFromRequest, grabWithSubStreamFallback, guests_namespace_collection, hasAnyCapability, hasAnyPermission, hasOrgInvitation, hidRawUint64, incidentReport, incidentReportLog, incidents_namespace_collection, isCameraEntitled, isDuplicateVersionError, isPatrolCctvCamera, isPlatformOwner, isPromoCodeExpired, isRelayPlayerUrl, isSafeRelativePath, isSuperAdmin, isTermsCurrent, logCamera, manpowerDesignationsSchema, manpowerEvents, manpowerMonitoringSchema, manpowerRemarksSchema, manpowerSitesSchema, mapWithLimit, nfcPatrolSettingsSchema, nfcPatrolSettingsSchemaUpdate, normalizeAcceptedTerms, normalizeHidCardValue, notificationCategory, notificationCategoryLabel, notificationEvents, notificationRoom, occurrence_book_namespace_collection, online_forms_namespace_collection, orgSchema, overnight_parking_requests_namespace_collection, parseCameraChannel, parseCameraHost, parseDahuaFind, parseDeviceTime, parseHidJsonLossless, parsePromoExpiry, parseSoftwareVersion, pickAuditFields, pickCustomerSiteProperties, platform_terms_namespace_collection, promoCodeRefusal, promoCodeSchema, promoCodeStatusSchema, promoCodeUpdate, promoCodeUpdateSchema, ptzEndpoint, publicCameraFields, recordConsoleAction, refuseServiceProviderInviteAction, registerCameraTransport, relayForRecorder, remarksSchema, renderPagePdf, resetCameraTransports, residentAppModuleKeys, residentFormEntry, resolutionRefusalReason, resolveCamera, resolveDeviceHttp, resolveHidPhysicalCardValue, resolveInviteActor, robotSchema, rtspUrl, schema, schemaAppSlugNotification, schemaApprovedBy, schemaApprover, schemaBidPreloved, schemaBilling, schemaBillingConfiguration, schemaBillingItem, schemaBuilding, schemaBuildingLevel, schemaBuildingUnit, schemaBuildingUpdateOptions, schemaBulletinBoard, schemaBulletinVideo, schemaCategoryPreloved, schemaChannelPreloved, schemaChatPreloved, schemaConsoleAudit, schemaCreateHidAmicoIdentity, schemaCreateNfcPatrolLog, schemaCreateNotification, schemaCustomerSite, schemaDiscoverHidAmicoReader, schemaDocumentManagement, schemaEntryPassSettings, schemaEventManagement, schemaFiles, schemaFormEntry, schemaGuestManagement, schemaHidAmicoAccessLogQuery, schemaHidAmicoAssignUserCard, schemaHidAmicoConfiguration, schemaHidAmicoEnrollUserCard, schemaHidAmicoEvent, schemaHidAmicoExecuteActions, schemaHidAmicoIdentity, schemaHidAmicoIdentityIdParams, schemaHidAmicoIdentityQuery, schemaHidAmicoIntercomCall, schemaHidAmicoLogQuery, schemaHidAmicoMonitor, schemaHidAmicoNotificationParams, schemaHidAmicoObjectOperation, schemaHidAmicoOperatingMode, schemaHidAmicoReader, schemaHidAmicoReaderIdParams, schemaHidAmicoReaderListQuery, schemaHidAmicoReaderUserQuery, schemaHidAmicoSetConfiguration, schemaHidAmicoSiteIdParams, schemaHidAmicoSync, schemaHidAmicoUserCardIdParams, schemaHidAmicoUserCardParams, schemaHidAmicoUserImageParams, schemaHidAmicoUserImageUploadQuery, schemaHidAmicoUserPin, schemaHidAmicoUserPinParams, schemaHidAmicoVisitorImageParams, schemaHidAmicoVisitorImageUploadQuery, schemaHidAmicoVisitorQr, schemaHidPermissionCandidateQuery, schemaHidPermissionScopeQuery, schemaHidSipAccountRequest, schemaIncidentReport, schemaListNotification, schemaMultipleDocumentManagement, schemaNfcPatrolLog, schemaNfcPatrolRoute, schemaNfcPatrolTag, schemaNfcPatrolTagUpdateData, schemaNotification, schemaNotificationPreference, schemaNotificationPreferenceOff, schemaOccurrenceBook, schemaOccurrenceEntry, schemaOccurrenceSubject, schemaOnlineForm, schemaOvernightParkingApprovalHours, schemaOvernightParkingRequest, schemaPatrolEmail, schemaPatrolEmailCreatedBy, schemaPatrolEmailLogRef, schemaPatrolEmailQuery, schemaPatrolLog, schemaPatrolQuestion, schemaPatrolRoute, schemaPerson, schemaPlate, schemaPlatformTerms, schemaPost, schemaPostFavorite, schemaResendPatrolEmail, schemaResidentSelfSignUp, schemaSelfServiceVisitor, schemaSendPatrolEmail, schemaServiceProvider, schemaServiceProviderBilling, schemaSignNfcPatrolLog, schemaSiteCamera, schemaSiteFacility, schemaSiteFacilityBooking, schemaStatementOfAccount, schemaSubcategoryPreloved, schemaUnitBilling, schemaUpdateBidPreloved, schemaUpdateBuildingLevel, schemaUpdateBulletinBoard, schemaUpdateBulletinVideo, schemaUpdateCategoryPreloved, schemaUpdateChatPreloved, schemaUpdateDocumentManagement, schemaUpdateEntryPassSettings, schemaUpdateEventManagement, schemaUpdateFolderManagement, schemaUpdateFormEntry, schemaUpdateGuestManagement, schemaUpdateHidAmicoIdentity, schemaUpdateHidAmicoReader, schemaUpdateHidSitePermissions, schemaUpdateIncidentReport, schemaUpdateNotification, schemaUpdateNotificationPreference, schemaUpdateOccurrenceBook, schemaUpdateOccurrenceEntry, schemaUpdateOccurrenceSubject, schemaUpdateOnlineForm, schemaUpdateOptions, schemaUpdateOvernightParkingRequest, schemaUpdatePatrolLog, schemaUpdatePatrolQuestion, schemaUpdatePatrolRoute, schemaUpdatePerson, schemaUpdatePost, schemaUpdatePostFavorite, schemaUpdateServiceProviderBilling, schemaUpdateSiteBillingConfiguration, schemaUpdateSiteBillingItem, schemaUpdateSiteCamera, schemaUpdateSiteFacility, schemaUpdateSiteFacilityBooking, schemaUpdateSiteUnitBilling, schemaUpdateStatementOfAccount, schemaUpdateSubcategoryPreloved, schemaUpdateVisTrans, schemaVehicleTransaction, schemaVisitorTransaction, schemeCamera, schemeLogCamera, serviceProviderInviteLabel, sessionSchema, setIO, shiftSchema, siteSchema, site_people_namespace_collection, snapshotEndpoint, snapshotRefusalReason, stringifyHidJson, subscriptionPlanSchema, updateRemarksStatusEod, updateRemarksisAcknowledged, updateSiteSchema, useAccessManagementController, useAddressRepo, useAttendanceController, useAttendanceRepository, useAttendanceSettingsController, useAttendanceSettingsRepository, useAttendanceSettingsService, useAuthController, useAuthControllerV2, useAuthService, useAuthServiceV2, useBidPrelovedController, useBidPrelovedRepo, useBidPrelovedService, useBuildingController, useBuildingLevelController, useBuildingLevelRepo, useBuildingLevelService, useBuildingRepo, useBuildingService, useBuildingUnitController, useBuildingUnitRepo, useBuildingUnitService, useBulletinBoardController, useBulletinBoardRepo, useBulletinBoardService, useBulletinVideoController, useBulletinVideoRepo, useBulletinVideoService, useCameraViewController, useCameraViewService, useCategoryPrelovedController, useCategoryPrelovedRepo, useChannelPrelovedController, useChannelPrelovedRepo, useChatController, useChatPrelovedController, useChatPrelovedRepo, useChatPrelovedService, useChatRepo, useConsoleAuditController, useConsoleAuditRepo, useCounterModel, useCounterRepo, useCustomerController, useCustomerRepo, useCustomerSiteController, useCustomerSiteRepo, useCustomerSiteService, useDahuaService, useDashboardController, useDashboardRepo, useDocumentManagementController, useDocumentManagementRepo, useDocumentManagementService, useEntryPassSettingsController, useEntryPassSettingsRepo, useEventManagementController, useEventManagementRepo, useEventManagementService, useFeedbackController, useFeedbackRepo, useFeedbackService, useFileController, useFileRepo, useFileService, useFormEntryController, useFormEntryRepo, useGuestManagementController, useGuestManagementRepo, useGuestManagementService, useHidAmicoController, useHidAmicoRepo, useHidAmicoService, useHrmLabsAttendanceCtrl, useHrmLabsAttendanceSrvc, useIncidentReportController, useIncidentReportRepo, useIncidentReportService, useInvoiceController, useInvoiceModel, useInvoiceRepo, useManpowerDesignationCtrl, useManpowerDesignationRepo, useManpowerMonitoringCtrl, useManpowerMonitoringRepo, useManpowerMonitoringSrvc, useManpowerRemarkCtrl, useManpowerRemarksRepo, useManpowerSitesCtrl, useManpowerSitesRepo, useManpowerSitesSrvc, useMemberController, useMemberRepo, useMemberService, useNewDashboardController, useNewDashboardRepo, useNfcPatrolLogController, useNfcPatrolLogRepo, useNfcPatrolLogService, useNfcPatrolRouteController, useNfcPatrolRouteRepo, useNfcPatrolRouteService, useNfcPatrolSettingsController, useNfcPatrolSettingsRepository, useNfcPatrolSettingsService, useNfcPatrolTagController, useNfcPatrolTagRepo, useNfcPatrolTagService, useNotificationController, useNotificationPreferenceController, useNotificationPreferenceRepo, useNotificationPreferenceService, useNotificationRepo, useOccurrenceBookController, useOccurrenceBookRepo, useOccurrenceBookService, useOccurrenceEntryController, useOccurrenceEntryRepo, useOccurrenceEntryService, useOccurrenceSubjectController, useOccurrenceSubjectRepo, useOccurrenceSubjectService, useOnlineFormController, useOnlineFormRepo, useOrgController, useOrgControllerV2, useOrgRepo, useOvernightParkingController, useOvernightParkingRepo, useOvernightParkingRequestController, useOvernightParkingRequestRepo, useOvernightParkingRequestService, usePatrolEmailController, usePatrolEmailRepo, usePatrolEmailService, usePatrolLogController, usePatrolLogRepo, usePatrolLogService, usePatrolQuestionController, usePatrolQuestionRepo, usePatrolRouteController, usePatrolRouteRepo, usePersonController, usePersonRepo, usePlatformTermsController, usePlatformTermsRepo, usePlatformTermsService, usePostFavoriteController, usePostFavoriteRepo, usePostFavoriteService, usePostPrelovedController, usePostPrelovedRepo, usePriceController, usePriceModel, usePriceRepo, usePromoCodeController, usePromoCodeRepo, useRedDotPaymentController, useRedDotPaymentRepo, useRedDotPaymentSvc, useRobotController, useRobotRepo, useRobotService, useRoleController, useRoleControllerV2, useRoleRepo, useRoleRepoV2, useRoleServiceV2, useServiceProviderBillingController, useServiceProviderBillingRepo, useServiceProviderBillingService, useServiceProviderController, useServiceProviderInviteController, useServiceProviderInviteService, useServiceProviderRepo, useSessionRepo, useSiteBillingConfigurationController, useSiteBillingConfigurationRepo, useSiteBillingItemController, useSiteBillingItemRepo, useSiteCameraController, useSiteCameraRepo, useSiteCameraService, useSiteController, useSiteFacilityBookingController, useSiteFacilityBookingRepo, useSiteFacilityBookingService, useSiteFacilityController, useSiteFacilityRepo, useSiteFacilityService, useSiteRepo, useSiteService, useSiteUnitBillingController, useSiteUnitBillingRepo, useSiteUnitBillingService, useStatementOfAccountController, useStatementOfAccountRepo, useSubcategoryPrelovedController, useSubcategoryPrelovedRepo, useSubscriptionController, useSubscriptionPlanController, useSubscriptionPlanRepo, useSubscriptionRepo, useSubscriptionService, useUserController, useUserControllerV2, useUserRepo, useUserRepoV2, useUserService, useUserServiceV2, useVehicleController, useVehicleRepo, useVehicleService, useVerificationController, useVerificationControllerV2, useVerificationRepo, useVerificationRepoV2, useVerificationService, useVerificationServiceV2, useVisitorTransactionController, useVisitorTransactionRepo, useVisitorTransactionService, useWorkOrderController, useWorkOrderRepo, useWorkOrderService, userSchema, vehicleSchema, vehicles_namespace_collection, visitorPersonRepo, visitorPersonService, visitorType, visitors_namespace_collection, wallConfig, workOrderSchema, work_orders2_namespace_collection, work_orders_namespace_collection };
package/dist/index.js CHANGED
@@ -6315,6 +6315,7 @@ __export(src_exports, {
6315
6315
  schemaPlatformTerms: () => schemaPlatformTerms,
6316
6316
  schemaPost: () => schemaPost,
6317
6317
  schemaPostFavorite: () => schemaPostFavorite,
6318
+ schemaResendPatrolEmail: () => schemaResendPatrolEmail,
6318
6319
  schemaResidentSelfSignUp: () => schemaResidentSelfSignUp,
6319
6320
  schemaSelfServiceVisitor: () => schemaSelfServiceVisitor,
6320
6321
  schemaSendPatrolEmail: () => schemaSendPatrolEmail,
@@ -50289,7 +50290,7 @@ function useVisitorTransactionService() {
50289
50290
  unitName: unit?.name,
50290
50291
  org: inviter?.org?.toString(),
50291
50292
  site: inviter?.site.toString(),
50292
- status: value?.type === "contractor" ? isAutoApprovedInvitation ? "approved" /* APPROVED */ : "Pending Approval" /* PENDING_APPROVAL */ : "Pending Approval" /* PENDING_APPROVAL */,
50293
+ status: value?.type === "contractor" ? isAutoApprovedInvitation ? "approved" /* APPROVED */ : "pending" /* PENDING */ : "pending" /* PENDING */,
50293
50294
  inviterId: userId
50294
50295
  };
50295
50296
  const leadId = new import_mongodb85.ObjectId();
@@ -50314,7 +50315,7 @@ function useVisitorTransactionService() {
50314
50315
  insertedIds.push(memberId);
50315
50316
  }
50316
50317
  }
50317
- const result = await _add({ ...payload, _id: leadId }, session);
50318
+ const result = await _add({ ...payload, _id: leadId.toString() }, session);
50318
50319
  insertedIds.push(result);
50319
50320
  await session?.commitTransaction();
50320
50321
  return insertedIds;
@@ -54716,8 +54717,12 @@ function useVisitorTransactionController() {
54716
54717
  numberOfPassengers: import_joi65.default.number().integer().optional().allow(null, ""),
54717
54718
  purpose: import_joi65.default.string().optional().allow(null, ""),
54718
54719
  inviterUserId: import_joi65.default.string().hex().length(24).required(),
54719
- type: import_joi65.default.string().valid("contractor", "guest").optional().allow(null, ""),
54720
- contractorType: import_joi65.default.string().valid("home-contractor", "house-mover").optional().allow(null, ""),
54720
+ type: import_joi65.default.string().valid("contractor", "guest").required(),
54721
+ contractorType: import_joi65.default.string().valid("home-contractor", "house-mover").when("type", {
54722
+ is: "contractor",
54723
+ then: import_joi65.default.required(),
54724
+ otherwise: import_joi65.default.optional().allow(null, "")
54725
+ }),
54721
54726
  members: import_joi65.default.array().items(
54722
54727
  import_joi65.default.object({
54723
54728
  name: import_joi65.default.string().optional().allow(null, ""),
@@ -57624,17 +57629,46 @@ function usePatrolLogRepo() {
57624
57629
  }
57625
57630
  },
57626
57631
  { $unwind: { path: "$routeData", preserveNullAndEmptyArrays: true } },
57632
+ {
57633
+ // The most recent email that included this log, for the sent/failed
57634
+ // indicator. Matches `logs.log` on the snapshot stored with the email,
57635
+ // so it still resolves after the log itself is soft-deleted, and is
57636
+ // served by the `{ "logs.log": 1 }` index on patrol.emails.
57637
+ $lookup: {
57638
+ from: "patrol.emails",
57639
+ localField: "_id",
57640
+ foreignField: "logs.log",
57641
+ pipeline: [
57642
+ // A deleted email record is not an attempt anyone should see.
57643
+ { $match: { status: { $ne: "deleted" } } },
57644
+ { $sort: { createdAt: -1 } },
57645
+ { $limit: 1 },
57646
+ { $project: { _id: 1, status: 1, createdAt: 1 } }
57647
+ ],
57648
+ as: "lastEmailData"
57649
+ }
57650
+ },
57651
+ {
57652
+ $unwind: { path: "$lastEmailData", preserveNullAndEmptyArrays: true }
57653
+ },
57627
57654
  {
57628
57655
  // Flattened to match the `approvedByName` shape used elsewhere.
57629
57656
  // `repeat` is read live rather than snapshotted on the log: it is the
57630
57657
  // route's current configuration, so editing a route must change what
57631
57658
  // the list shows.
57659
+ //
57660
+ // `lastEmailStatus` is three-state on purpose — "sent", "failed", or
57661
+ // null when the log has never been emailed. A boolean cannot separate
57662
+ // "the last send failed" from "there was no send", and those need
57663
+ // different treatment on screen.
57632
57664
  $addFields: {
57633
57665
  createdByName: "$createdByData.name",
57634
- repeat: "$routeData.repeat"
57666
+ repeat: "$routeData.repeat",
57667
+ lastEmailStatus: { $ifNull: ["$lastEmailData.status", null] },
57668
+ lastEmailAt: { $ifNull: ["$lastEmailData.createdAt", null] }
57635
57669
  }
57636
57670
  },
57637
- { $project: { createdByData: 0, routeData: 0 } }
57671
+ { $project: { createdByData: 0, routeData: 0, lastEmailData: 0 } }
57638
57672
  ];
57639
57673
  const countPipeline = [
57640
57674
  {
@@ -58057,6 +58091,7 @@ var schemaPatrolEmail = import_joi77.default.object({
58057
58091
  }).optional().allow(null),
58058
58092
  sourceUrl: import_joi77.default.string().optional().allow("", null),
58059
58093
  status: import_joi77.default.string().valid("sent", "failed", "deleted").optional(),
58094
+ sourceEmail: import_joi77.default.string().hex().length(24).optional().allow(null, ""),
58060
58095
  createdBy: schemaPatrolEmailCreatedBy.required(),
58061
58096
  createdAt: import_joi77.default.string().optional().allow("", null),
58062
58097
  updatedAt: import_joi77.default.string().optional().allow("", null),
@@ -58075,6 +58110,12 @@ var schemaSendPatrolEmail = import_joi77.default.object({
58075
58110
  name: import_joi77.default.string().trim().max(200).required()
58076
58111
  }).required()
58077
58112
  });
58113
+ var schemaResendPatrolEmail = import_joi77.default.object({
58114
+ createdBy: import_joi77.default.object({
58115
+ _id: import_joi77.default.string().hex().length(24).required(),
58116
+ name: import_joi77.default.string().trim().max(200).required()
58117
+ }).required()
58118
+ });
58078
58119
  var schemaPatrolEmailQuery = import_joi77.default.object({
58079
58120
  site: import_joi77.default.string().hex().length(24).required(),
58080
58121
  // Optional: present for one patrol log's email history, absent for the
@@ -58109,6 +58150,9 @@ function MPatrolEmail(value) {
58109
58150
  if (value.createdBy && typeof value.createdBy._id === "string") {
58110
58151
  value.createdBy._id = toObjectId15(value.createdBy._id, "created by id");
58111
58152
  }
58153
+ if (value.sourceEmail && typeof value.sourceEmail === "string") {
58154
+ value.sourceEmail = toObjectId15(value.sourceEmail, "source email id");
58155
+ }
58112
58156
  if (value.pdf?.file && typeof value.pdf.file === "string") {
58113
58157
  value.pdf.file = toObjectId15(value.pdf.file, "pdf file id");
58114
58158
  }
@@ -58143,6 +58187,7 @@ function MPatrolEmail(value) {
58143
58187
  pdf: value.pdf ?? null,
58144
58188
  sourceUrl: value.sourceUrl ?? "",
58145
58189
  status: value.status ?? "sent",
58190
+ sourceEmail: value.sourceEmail ?? null,
58146
58191
  createdBy: {
58147
58192
  _id: value.createdBy._id,
58148
58193
  name: value.createdBy.name ?? ""
@@ -58181,7 +58226,9 @@ function usePatrolEmailRepo() {
58181
58226
  // "What have I sent?", and the rate-limit count.
58182
58227
  { key: { "createdBy._id": 1, createdAt: -1 } },
58183
58228
  // Answers "was this log ever emailed, and to whom?" without a scan.
58184
- { key: { "logs.log": 1 } }
58229
+ { key: { "logs.log": 1 } },
58230
+ // Finds the resends spawned from an original, newest first.
58231
+ { key: { sourceEmail: 1, createdAt: -1 } }
58185
58232
  ]);
58186
58233
  return `Successfully created indexes for ${namespace_collection}.`;
58187
58234
  } catch (error) {
@@ -58258,6 +58305,34 @@ function usePatrolEmailRepo() {
58258
58305
  throw new import_node_server_utils159.InternalServerError("Failed to attach the patrol email PDF.");
58259
58306
  }
58260
58307
  }
58308
+ async function withResendState(items, session) {
58309
+ const originals = items.filter((item) => !item.sourceEmail).map((item) => item._id);
58310
+ const children = originals.length ? await collection.find(
58311
+ {
58312
+ sourceEmail: { $in: originals },
58313
+ status: { $ne: "deleted" }
58314
+ },
58315
+ { session }
58316
+ ).project({ _id: 1, sourceEmail: 1, status: 1, createdAt: 1 }).sort({ createdAt: -1 }).toArray() : [];
58317
+ const byOriginal = /* @__PURE__ */ new Map();
58318
+ for (const child of children) {
58319
+ const key = String(child.sourceEmail);
58320
+ if (!byOriginal.has(key))
58321
+ byOriginal.set(key, []);
58322
+ byOriginal.get(key).push(child);
58323
+ }
58324
+ return items.map((item) => {
58325
+ const resends = byOriginal.get(String(item._id)) ?? [];
58326
+ const last = resends[0];
58327
+ return {
58328
+ ...item,
58329
+ isResend: Boolean(item.sourceEmail),
58330
+ resendCount: resends.length,
58331
+ // Sorted newest first above, so [0] is the most recent attempt.
58332
+ lastResend: last ? { _id: last._id, status: last.status, createdAt: last.createdAt } : null
58333
+ };
58334
+ });
58335
+ }
58261
58336
  async function getAll({
58262
58337
  site,
58263
58338
  log,
@@ -58287,7 +58362,12 @@ function usePatrolEmailRepo() {
58287
58362
  collection.find(query2, { session }).sort({ createdAt: -1, _id: -1 }).skip(page * limit).limit(limit).toArray(),
58288
58363
  collection.countDocuments(query2, { session })
58289
58364
  ]);
58290
- return (0, import_node_server_utils159.paginate)(items, page, limit, totalCount);
58365
+ return (0, import_node_server_utils159.paginate)(
58366
+ await withResendState(items, session),
58367
+ page,
58368
+ limit,
58369
+ totalCount
58370
+ );
58291
58371
  } catch (error) {
58292
58372
  import_node_server_utils159.logger.log({ level: "error", message: error.message });
58293
58373
  throw new import_node_server_utils159.InternalServerError("Failed to retrieve patrol emails.");
@@ -58308,7 +58388,8 @@ function usePatrolEmailRepo() {
58308
58388
  if (!data) {
58309
58389
  throw new import_node_server_utils159.NotFoundError("Patrol email not found.");
58310
58390
  }
58311
- return data;
58391
+ const [decorated] = await withResendState([data], session);
58392
+ return decorated;
58312
58393
  }
58313
58394
  async function markDeleted(_id, session) {
58314
58395
  const id = toId2(_id);
@@ -58622,6 +58703,80 @@ function usePatrolEmailService() {
58622
58703
  throw error;
58623
58704
  }
58624
58705
  }
58706
+ async function resend({
58707
+ id,
58708
+ createdBy,
58709
+ cookieHeader,
58710
+ appKey = "SECURITY"
58711
+ }) {
58712
+ const original = await _getById(id);
58713
+ if (original.status !== "failed") {
58714
+ throw new import_node_server_utils161.BadRequestError("Only a failed patrol email can be resent.");
58715
+ }
58716
+ if (original.sourceEmail) {
58717
+ throw new import_node_server_utils161.BadRequestError(
58718
+ "Resend the original email rather than a previous resend."
58719
+ );
58720
+ }
58721
+ await assertWithinRateLimit(createdBy._id);
58722
+ const snapshot = (original.logs ?? []).map((entry) => ({
58723
+ log: String(entry.log),
58724
+ name: entry.name ?? "",
58725
+ ...entry.route ? { route: String(entry.route) } : {},
58726
+ start: entry.start ?? "",
58727
+ end: entry.end ?? "",
58728
+ status: Array.isArray(entry.status) ? entry.status : []
58729
+ }));
58730
+ const record = await _add({
58731
+ site: String(original.site),
58732
+ subject: original.subject,
58733
+ recipients: original.recipients,
58734
+ logs: snapshot,
58735
+ logCount: snapshot.length,
58736
+ sourceUrl: original.sourceUrl,
58737
+ sourceEmail: String(original._id),
58738
+ createdBy
58739
+ });
58740
+ const recordId = String(record._id);
58741
+ try {
58742
+ let pdf = original.pdf?.url ? original.pdf : null;
58743
+ if (!pdf) {
58744
+ const pdfBuffer = await renderPagePdf({
58745
+ url: original.sourceUrl,
58746
+ title: "Patrol Log",
58747
+ cookieHeader,
58748
+ appKey
58749
+ });
58750
+ pdf = await storePdf(
58751
+ Buffer.from(pdfBuffer),
58752
+ `patrol-log-${recordId}.pdf`
58753
+ );
58754
+ }
58755
+ await _setPdf(recordId, pdf);
58756
+ const html = (0, import_node_server_utils161.compileHandlebar)({
58757
+ context: {
58758
+ dateRange: describeDateRange(snapshot),
58759
+ pdfUrl: pdf.url,
58760
+ logoUrl: `${STORAGE_API}/seven-365.svg`
58761
+ },
58762
+ filePath: (0, import_node_server_utils161.getDirectory)(__dirname, "./public/handlebars/patrol-log-email")
58763
+ });
58764
+ await mailer.sendMail({
58765
+ to: original.recipients.join(","),
58766
+ subject: original.subject,
58767
+ html,
58768
+ sender: "iService365"
58769
+ });
58770
+ return { ...record, _id: record._id, pdf, status: "sent" };
58771
+ } catch (error) {
58772
+ import_node_server_utils161.logger.log({
58773
+ level: "error",
58774
+ message: `Failed to resend patrol email ${recordId}: ${error.message}`
58775
+ });
58776
+ await _markFailed(recordId, sanitizeError(error)).catch(() => void 0);
58777
+ throw error;
58778
+ }
58779
+ }
58625
58780
  async function getAll(value) {
58626
58781
  return _getAll(value);
58627
58782
  }
@@ -58632,7 +58787,7 @@ function usePatrolEmailService() {
58632
58787
  await _markDeleted(id);
58633
58788
  return "Successfully deleted patrol email.";
58634
58789
  }
58635
- return { send: send2, getAll, getById, deleteById };
58790
+ return { send: send2, resend, getAll, getById, deleteById };
58636
58791
  }
58637
58792
 
58638
58793
  // src/controllers/patrol-email.controller.ts
@@ -58641,6 +58796,7 @@ var import_joi78 = __toESM(require("joi"));
58641
58796
  function usePatrolEmailController() {
58642
58797
  const {
58643
58798
  send: _send,
58799
+ resend: _resend,
58644
58800
  getAll: _getAll,
58645
58801
  getById: _getById,
58646
58802
  deleteById: _deleteById
@@ -58676,6 +58832,41 @@ function usePatrolEmailController() {
58676
58832
  return;
58677
58833
  }
58678
58834
  }
58835
+ async function resend(req, res, next) {
58836
+ const params = import_joi78.default.object({
58837
+ id: import_joi78.default.string().hex().length(24).required()
58838
+ }).validate({ id: req.params.id });
58839
+ if (params.error) {
58840
+ import_node_server_utils162.logger.log({ level: "error", message: `${params.error.message}` });
58841
+ next(new import_node_server_utils162.BadRequestError(params.error.message));
58842
+ return;
58843
+ }
58844
+ const { error, value } = schemaResendPatrolEmail.validate(req.body, {
58845
+ abortEarly: false
58846
+ });
58847
+ if (error) {
58848
+ const messages = error.details.map((d) => d.message).join(", ");
58849
+ import_node_server_utils162.logger.log({ level: "error", message: messages });
58850
+ next(new import_node_server_utils162.BadRequestError(messages));
58851
+ return;
58852
+ }
58853
+ try {
58854
+ const data = await _resend({
58855
+ id: params.value.id,
58856
+ createdBy: value.createdBy,
58857
+ // Only used when the original has no PDF to reuse and one has to be
58858
+ // rendered again.
58859
+ cookieHeader: req.headers.cookie,
58860
+ appKey: req.query.appKey || "SECURITY"
58861
+ });
58862
+ res.status(201).json({ message: "success", data });
58863
+ return;
58864
+ } catch (err) {
58865
+ import_node_server_utils162.logger.log({ level: "error", message: `${err.message}` });
58866
+ next(err);
58867
+ return;
58868
+ }
58869
+ }
58679
58870
  async function getAll(req, res, next) {
58680
58871
  const { error, value } = schemaPatrolEmailQuery.validate(req.query, {
58681
58872
  abortEarly: false
@@ -58733,7 +58924,7 @@ function usePatrolEmailController() {
58733
58924
  return;
58734
58925
  }
58735
58926
  }
58736
- return { send: send2, getAll, getById, deleteById };
58927
+ return { send: send2, resend, getAll, getById, deleteById };
58737
58928
  }
58738
58929
 
58739
58930
  // src/models/site-facility.model.ts
@@ -89173,6 +89364,7 @@ function useNotificationPreferenceController() {
89173
89364
  schemaPlatformTerms,
89174
89365
  schemaPost,
89175
89366
  schemaPostFavorite,
89367
+ schemaResendPatrolEmail,
89176
89368
  schemaResidentSelfSignUp,
89177
89369
  schemaSelfServiceVisitor,
89178
89370
  schemaSendPatrolEmail,