@kohost/api-client 7.4.0 → 7.6.0

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.
Files changed (48) hide show
  1. package/dist/httpClient.d.ts +2 -2
  2. package/dist/lib/systemCategories.d.ts +1 -1
  3. package/dist/lib/systemCategories.js +4 -2
  4. package/dist/lib/systemCategories.js.map +1 -1
  5. package/dist/models/ticket.js +0 -1
  6. package/dist/models/ticket.js.map +1 -1
  7. package/dist/schemas/definitions.d.ts +12 -0
  8. package/dist/schemas/definitions.js +25 -1
  9. package/dist/schemas/definitions.js.map +1 -1
  10. package/dist/schemas/issue.d.ts +1 -1
  11. package/dist/schemas/issue.js +2 -1
  12. package/dist/schemas/issue.js.map +1 -1
  13. package/dist/schemas/organization.d.ts +38 -0
  14. package/dist/schemas/organization.js +33 -4
  15. package/dist/schemas/organization.js.map +1 -1
  16. package/dist/schemas/property.d.ts +0 -6
  17. package/dist/schemas/property.js +0 -6
  18. package/dist/schemas/property.js.map +1 -1
  19. package/dist/schemas/ticket.d.ts +0 -3
  20. package/dist/schemas/ticket.js +0 -1
  21. package/dist/schemas/ticket.js.map +1 -1
  22. package/dist/schemas/user.d.ts +8 -6
  23. package/dist/schemas/user.js +7 -7
  24. package/dist/schemas/user.js.map +1 -1
  25. package/dist/useCases/describeOrgNotificationDefaults.d.ts +27 -0
  26. package/dist/useCases/describeOrgNotificationDefaults.js +47 -0
  27. package/dist/useCases/describeOrgNotificationDefaults.js.map +1 -0
  28. package/dist/useCases/describePushVapidPublicKey.d.ts +27 -0
  29. package/dist/useCases/describePushVapidPublicKey.js +47 -0
  30. package/dist/useCases/describePushVapidPublicKey.js.map +1 -0
  31. package/dist/useCases/index.d.ts +6 -1
  32. package/dist/useCases/index.js +13 -3
  33. package/dist/useCases/index.js.map +1 -1
  34. package/dist/useCases/listMyPushSubscriptions.d.ts +27 -0
  35. package/dist/useCases/listMyPushSubscriptions.js +47 -0
  36. package/dist/useCases/listMyPushSubscriptions.js.map +1 -0
  37. package/dist/useCases/{autoCloseTickets.d.ts → subscribePushDevice.d.ts} +5 -5
  38. package/dist/useCases/{autoCloseTickets.js → subscribePushDevice.js} +8 -8
  39. package/dist/useCases/subscribePushDevice.js.map +1 -0
  40. package/dist/useCases/unsubscribePushDevice.d.ts +36 -0
  41. package/dist/useCases/unsubscribePushDevice.js +47 -0
  42. package/dist/useCases/unsubscribePushDevice.js.map +1 -0
  43. package/dist/useCases/updateOrgNotificationDefaults.d.ts +27 -0
  44. package/dist/useCases/updateOrgNotificationDefaults.js +47 -0
  45. package/dist/useCases/updateOrgNotificationDefaults.js.map +1 -0
  46. package/dist/validate.d.ts +3 -3
  47. package/package.json +1 -1
  48. package/dist/useCases/autoCloseTickets.js.map +0 -1
@@ -66,11 +66,11 @@ export class KohostHTTPClient {
66
66
  *
67
67
  * @param {Command} command
68
68
  */
69
- send(command: typeof import("./useCases.js").CreatePwaHandoffTokenCommand | typeof import("./useCases.js").LogoutUserCommand | typeof import("./useCases.js").DescribeMyAuthCommand | typeof import("./useCases.js").ValidateAuthCommand | typeof import("./useCases.js").SelectOrganizationCommand | typeof import("./useCases.js").ListMyOrganizationsCommand | typeof import("./useCases.js").DescribeSelfCommand | typeof import("./useCases.js").DescribeUserCommand | typeof import("./useCases.js").CreateUserCommand | typeof import("./useCases.js").ListUsersCommand | typeof import("./useCases.js").UpdateSelfCommand | typeof import("./useCases.js").UpdateUserCommand | typeof import("./useCases.js").DeleteUserCommand | typeof import("./useCases.js").CreateApiKeyCommand | typeof import("./useCases.js").GetApiKeyCommand | typeof import("./useCases.js").RotateApiKeyCommand | typeof import("./useCases.js").RevokeApiKeyCommand | typeof import("./useCases.js").SendVerificationCodeCommand | typeof import("./useCases.js").CheckVerificationCodeCommand | typeof import("./useCases.js").ListUserSpacesCommand | typeof import("./useCases.js").DescribeMyPasskeyRegistrationsCommand | typeof import("./useCases.js").DeleteUserCredentialCommand | typeof import("./useCases.js").CreatePolicyCommand | typeof import("./useCases.js").ListPoliciesCommand | typeof import("./useCases.js").UpdatePolicyCommand | typeof import("./useCases.js").DeletePolicyCommand | typeof import("./useCases.js").DescribePolicyCommand | typeof import("./useCases.js").ListSpacesCommand | typeof import("./useCases.js").UpdateSpaceCommand | typeof import("./useCases.js").CreateSpaceCommand | typeof import("./useCases.js").DescribeSpaceCommand | typeof import("./useCases.js").DeleteSpaceCommand | typeof import("./useCases.js").CreateDeviceCommand | typeof import("./useCases.js").CreateDeviceCredentialCommand | typeof import("./useCases.js").ListDevicesCommand | typeof import("./useCases.js").ListDeviceCredentialsCommand | typeof import("./useCases.js").ListCameraStreamPreviewsCommand | typeof import("./useCases.js").DescribeDeviceCommand | typeof import("./useCases.js").UpdateDeviceCommand | typeof import("./useCases.js").UpdateDeviceCredentialCommand | typeof import("./useCases.js").SetDeviceCommand | typeof import("./useCases.js").DeleteDeviceCommand | typeof import("./useCases.js").DeleteDeviceCredentialCommand | typeof import("./useCases.js").MoveDeviceCommand | typeof import("./useCases.js").DescribeDeviceConfigCommand | typeof import("./useCases.js").CreateCategoryCommand | typeof import("./useCases.js").DeleteCategoryCommand | typeof import("./useCases.js").DescribeCategoryCommand | typeof import("./useCases.js").ListCategoriesCommand | typeof import("./useCases.js").UpdateCategoryCommand | typeof import("./useCases.js").DescribeDepartmentCommand | typeof import("./useCases.js").ListDepartmentsCommand | typeof import("./useCases.js").DeleteDepartmentCommand | typeof import("./useCases.js").CreateDepartmentCommand | typeof import("./useCases.js").UpdateDepartmentCommand | typeof import("./useCases.js").AutoCloseTicketsCommand | typeof import("./useCases.js").DescribeTicketStatsCommand | typeof import("./useCases.js").CreateTicketCommand | typeof import("./useCases.js").CreateTicketMessageCommand | typeof import("./useCases.js").DeleteTicketCommand | typeof import("./useCases.js").ListTicketLocationsCommand | typeof import("./useCases.js").DescribeTicketFiltersCommand | typeof import("./useCases.js").DescribeTicketCommand | typeof import("./useCases.js").ListTicketsCommand | typeof import("./useCases.js").UpdateMessageReadStatusCommand | typeof import("./useCases.js").UpdateTicketCommand | typeof import("./useCases.js").LeaveTicketCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationMapCommand | typeof import("./useCases.js").AutoAssociateDiscoveredDevicesCommand | typeof import("./useCases.js").CreateDiscoveredDeviceCommand | typeof import("./useCases.js").ListDiscoveredDevicesCommand | typeof import("./useCases.js").UpdateDiscoveredDeviceCommand | typeof import("./useCases.js").DeleteDiscoveredDeviceCommand | typeof import("./useCases.js").DescribeDiscoveredDeviceCommand | typeof import("./useCases.js").UpsertDiscoveredDeviceCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationCommand | typeof import("./useCases.js").ListIntegrationsCommand | typeof import("./useCases.js").DescribeMyOrganizationCommand | typeof import("./useCases.js").CreateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationFeaturesCommand | typeof import("./useCases.js").DeleteOrganizationCommand | typeof import("./useCases.js").DescribeOrganizationCommand | typeof import("./useCases.js").ListOrganizationsCommand | typeof import("./useCases.js").ListPropertiesCommand | typeof import("./useCases.js").ListPropertyCredentialsCommand | typeof import("./useCases.js").ListMyPropertiesCommand | typeof import("./useCases.js").CreatePropertyCommand | typeof import("./useCases.js").DeletePropertyCommand | typeof import("./useCases.js").UpdatePropertyCommand | typeof import("./useCases.js").DescribePropertyCommand | typeof import("./useCases.js").UpdatePropertyFeaturesCommand | typeof import("./useCases.js").EmailUserAccountSetupCommand | typeof import("./useCases.js").CreateImageUploadEndpointCommand | typeof import("./useCases.js").DeleteMediaFileCommand | typeof import("./useCases.js").UploadImageCommand | typeof import("./useCases.js").DescribeTimeSheetStatsCommand | typeof import("./useCases.js").ListMyTimeSheetsCommand | typeof import("./useCases.js").DescribeTimeSheetCommand | typeof import("./useCases.js").ListTimeSheetsCommand | typeof import("./useCases.js").CreateTimeSheetCommand | typeof import("./useCases.js").DeleteTimeSheetCommand | typeof import("./useCases.js").UpdateTimeSheetCommand | typeof import("./useCases.js").CreateTimeSheetTimeEntryCommand | typeof import("./useCases.js").DeleteTimeSheetTimeEntryCommand | typeof import("./useCases.js").UpdateTimeSheetTimeEntryCommand | typeof import("./useCases.js").StartSOSCommand | typeof import("./useCases.js").StopSOSCommand | typeof import("./useCases.js").DescribeSOSCommand | typeof import("./useCases.js").DescribeIssueCommand | typeof import("./useCases.js").ListIssuesCommand | typeof import("./useCases.js").DeleteIssueCommand | typeof import("./useCases.js").CreateIssueCommand | typeof import("./useCases.js").UpdateIssueCommand | typeof import("./useCases.js").MergeIssueCommand | typeof import("./useCases.js").CopyIssueRoutingCommand | typeof import("./useCases.js").BulkUpdateIssueCommand | typeof import("./useCases.js").DescribeVendorCommand | typeof import("./useCases.js").ListVendorsCommand | typeof import("./useCases.js").DeleteVendorCommand | typeof import("./useCases.js").CreateVendorCommand | typeof import("./useCases.js").UpdateVendorCommand | typeof import("./useCases.js").CreateAutomationCommand | typeof import("./useCases.js").ListAutomationsCommand | typeof import("./useCases.js").DescribeAutomationCommand | typeof import("./useCases.js").UpdateAutomationCommand | typeof import("./useCases.js").DeleteAutomationCommand | typeof import("./useCases.js").CreateDefaultAutomationsCommand | typeof import("./useCases.js").RunAutomationCommand | typeof import("./useCases.js").SendNotificationCommand | typeof import("./useCases.js").ListSessionsCommand | typeof import("./useCases.js").DescribeSessionCommand | typeof import("./useCases.js").DeleteSessionCommand | typeof import("./useCases.js").SetDevicesCommand | typeof import("./useCases.js").CreateSystemCommand | typeof import("./useCases.js").DeleteSystemCommand | typeof import("./useCases.js").DescribeSystemCommand | typeof import("./useCases.js").ListSystemsCommand | typeof import("./useCases.js").UpdateSystemCommand | typeof import("./useCases.js").CreateServerCommand | typeof import("./useCases.js").DeleteServerCommand | typeof import("./useCases.js").DescribeServerCommand | typeof import("./useCases.js").ListServersCommand | typeof import("./useCases.js").UpdateServerCommand): Promise<any>;
69
+ send(command: typeof import("./useCases.js").CreatePwaHandoffTokenCommand | typeof import("./useCases.js").LogoutUserCommand | typeof import("./useCases.js").DescribeMyAuthCommand | typeof import("./useCases.js").ValidateAuthCommand | typeof import("./useCases.js").SelectOrganizationCommand | typeof import("./useCases.js").ListMyOrganizationsCommand | typeof import("./useCases.js").DescribeSelfCommand | typeof import("./useCases.js").DescribeUserCommand | typeof import("./useCases.js").CreateUserCommand | typeof import("./useCases.js").ListUsersCommand | typeof import("./useCases.js").UpdateSelfCommand | typeof import("./useCases.js").UpdateUserCommand | typeof import("./useCases.js").DeleteUserCommand | typeof import("./useCases.js").CreateApiKeyCommand | typeof import("./useCases.js").GetApiKeyCommand | typeof import("./useCases.js").RotateApiKeyCommand | typeof import("./useCases.js").RevokeApiKeyCommand | typeof import("./useCases.js").SendVerificationCodeCommand | typeof import("./useCases.js").CheckVerificationCodeCommand | typeof import("./useCases.js").ListUserSpacesCommand | typeof import("./useCases.js").DescribeMyPasskeyRegistrationsCommand | typeof import("./useCases.js").DeleteUserCredentialCommand | typeof import("./useCases.js").CreatePolicyCommand | typeof import("./useCases.js").ListPoliciesCommand | typeof import("./useCases.js").UpdatePolicyCommand | typeof import("./useCases.js").DeletePolicyCommand | typeof import("./useCases.js").DescribePolicyCommand | typeof import("./useCases.js").ListSpacesCommand | typeof import("./useCases.js").UpdateSpaceCommand | typeof import("./useCases.js").CreateSpaceCommand | typeof import("./useCases.js").DescribeSpaceCommand | typeof import("./useCases.js").DeleteSpaceCommand | typeof import("./useCases.js").CreateDeviceCommand | typeof import("./useCases.js").CreateDeviceCredentialCommand | typeof import("./useCases.js").ListDevicesCommand | typeof import("./useCases.js").ListDeviceCredentialsCommand | typeof import("./useCases.js").ListCameraStreamPreviewsCommand | typeof import("./useCases.js").DescribeDeviceCommand | typeof import("./useCases.js").UpdateDeviceCommand | typeof import("./useCases.js").UpdateDeviceCredentialCommand | typeof import("./useCases.js").SetDeviceCommand | typeof import("./useCases.js").DeleteDeviceCommand | typeof import("./useCases.js").DeleteDeviceCredentialCommand | typeof import("./useCases.js").MoveDeviceCommand | typeof import("./useCases.js").DescribeDeviceConfigCommand | typeof import("./useCases.js").CreateCategoryCommand | typeof import("./useCases.js").DeleteCategoryCommand | typeof import("./useCases.js").DescribeCategoryCommand | typeof import("./useCases.js").ListCategoriesCommand | typeof import("./useCases.js").UpdateCategoryCommand | typeof import("./useCases.js").DescribeDepartmentCommand | typeof import("./useCases.js").ListDepartmentsCommand | typeof import("./useCases.js").DeleteDepartmentCommand | typeof import("./useCases.js").CreateDepartmentCommand | typeof import("./useCases.js").UpdateDepartmentCommand | typeof import("./useCases.js").DescribeTicketStatsCommand | typeof import("./useCases.js").CreateTicketCommand | typeof import("./useCases.js").CreateTicketMessageCommand | typeof import("./useCases.js").DeleteTicketCommand | typeof import("./useCases.js").ListTicketLocationsCommand | typeof import("./useCases.js").DescribeTicketFiltersCommand | typeof import("./useCases.js").DescribeTicketCommand | typeof import("./useCases.js").ListTicketsCommand | typeof import("./useCases.js").UpdateMessageReadStatusCommand | typeof import("./useCases.js").UpdateTicketCommand | typeof import("./useCases.js").LeaveTicketCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationMapCommand | typeof import("./useCases.js").AutoAssociateDiscoveredDevicesCommand | typeof import("./useCases.js").CreateDiscoveredDeviceCommand | typeof import("./useCases.js").ListDiscoveredDevicesCommand | typeof import("./useCases.js").UpdateDiscoveredDeviceCommand | typeof import("./useCases.js").DeleteDiscoveredDeviceCommand | typeof import("./useCases.js").DescribeDiscoveredDeviceCommand | typeof import("./useCases.js").UpsertDiscoveredDeviceCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationCommand | typeof import("./useCases.js").ListIntegrationsCommand | typeof import("./useCases.js").DescribeMyOrganizationCommand | typeof import("./useCases.js").CreateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationFeaturesCommand | typeof import("./useCases.js").DeleteOrganizationCommand | typeof import("./useCases.js").DescribeOrganizationCommand | typeof import("./useCases.js").ListOrganizationsCommand | typeof import("./useCases.js").ListPropertiesCommand | typeof import("./useCases.js").ListPropertyCredentialsCommand | typeof import("./useCases.js").ListMyPropertiesCommand | typeof import("./useCases.js").CreatePropertyCommand | typeof import("./useCases.js").DeletePropertyCommand | typeof import("./useCases.js").UpdatePropertyCommand | typeof import("./useCases.js").DescribePropertyCommand | typeof import("./useCases.js").UpdatePropertyFeaturesCommand | typeof import("./useCases.js").EmailUserAccountSetupCommand | typeof import("./useCases.js").CreateImageUploadEndpointCommand | typeof import("./useCases.js").DeleteMediaFileCommand | typeof import("./useCases.js").UploadImageCommand | typeof import("./useCases.js").DescribeTimeSheetStatsCommand | typeof import("./useCases.js").ListMyTimeSheetsCommand | typeof import("./useCases.js").DescribeTimeSheetCommand | typeof import("./useCases.js").ListTimeSheetsCommand | typeof import("./useCases.js").CreateTimeSheetCommand | typeof import("./useCases.js").DeleteTimeSheetCommand | typeof import("./useCases.js").UpdateTimeSheetCommand | typeof import("./useCases.js").CreateTimeSheetTimeEntryCommand | typeof import("./useCases.js").DeleteTimeSheetTimeEntryCommand | typeof import("./useCases.js").UpdateTimeSheetTimeEntryCommand | typeof import("./useCases.js").StartSOSCommand | typeof import("./useCases.js").StopSOSCommand | typeof import("./useCases.js").DescribeSOSCommand | typeof import("./useCases.js").DescribeIssueCommand | typeof import("./useCases.js").ListIssuesCommand | typeof import("./useCases.js").DeleteIssueCommand | typeof import("./useCases.js").CreateIssueCommand | typeof import("./useCases.js").UpdateIssueCommand | typeof import("./useCases.js").MergeIssueCommand | typeof import("./useCases.js").CopyIssueRoutingCommand | typeof import("./useCases.js").BulkUpdateIssueCommand | typeof import("./useCases.js").DescribeVendorCommand | typeof import("./useCases.js").ListVendorsCommand | typeof import("./useCases.js").DeleteVendorCommand | typeof import("./useCases.js").CreateVendorCommand | typeof import("./useCases.js").UpdateVendorCommand | typeof import("./useCases.js").CreateAutomationCommand | typeof import("./useCases.js").ListAutomationsCommand | typeof import("./useCases.js").DescribeAutomationCommand | typeof import("./useCases.js").UpdateAutomationCommand | typeof import("./useCases.js").DeleteAutomationCommand | typeof import("./useCases.js").CreateDefaultAutomationsCommand | typeof import("./useCases.js").RunAutomationCommand | typeof import("./useCases.js").SendNotificationCommand | typeof import("./useCases.js").DescribeOrgNotificationDefaultsCommand | typeof import("./useCases.js").UpdateOrgNotificationDefaultsCommand | typeof import("./useCases.js").ListMyPushSubscriptionsCommand | typeof import("./useCases.js").DescribePushVapidPublicKeyCommand | typeof import("./useCases.js").SubscribePushDeviceCommand | typeof import("./useCases.js").UnsubscribePushDeviceCommand | typeof import("./useCases.js").ListSessionsCommand | typeof import("./useCases.js").DescribeSessionCommand | typeof import("./useCases.js").DeleteSessionCommand | typeof import("./useCases.js").SetDevicesCommand | typeof import("./useCases.js").CreateSystemCommand | typeof import("./useCases.js").DeleteSystemCommand | typeof import("./useCases.js").DescribeSystemCommand | typeof import("./useCases.js").ListSystemsCommand | typeof import("./useCases.js").UpdateSystemCommand | typeof import("./useCases.js").CreateServerCommand | typeof import("./useCases.js").DeleteServerCommand | typeof import("./useCases.js").DescribeServerCommand | typeof import("./useCases.js").ListServersCommand | typeof import("./useCases.js").UpdateServerCommand): Promise<any>;
70
70
  /**
71
71
  * @param {Command} config
72
72
  * @returns {Request}
73
73
  */
74
- createRequest(config: typeof import("./useCases.js").CreatePwaHandoffTokenCommand | typeof import("./useCases.js").LogoutUserCommand | typeof import("./useCases.js").DescribeMyAuthCommand | typeof import("./useCases.js").ValidateAuthCommand | typeof import("./useCases.js").SelectOrganizationCommand | typeof import("./useCases.js").ListMyOrganizationsCommand | typeof import("./useCases.js").DescribeSelfCommand | typeof import("./useCases.js").DescribeUserCommand | typeof import("./useCases.js").CreateUserCommand | typeof import("./useCases.js").ListUsersCommand | typeof import("./useCases.js").UpdateSelfCommand | typeof import("./useCases.js").UpdateUserCommand | typeof import("./useCases.js").DeleteUserCommand | typeof import("./useCases.js").CreateApiKeyCommand | typeof import("./useCases.js").GetApiKeyCommand | typeof import("./useCases.js").RotateApiKeyCommand | typeof import("./useCases.js").RevokeApiKeyCommand | typeof import("./useCases.js").SendVerificationCodeCommand | typeof import("./useCases.js").CheckVerificationCodeCommand | typeof import("./useCases.js").ListUserSpacesCommand | typeof import("./useCases.js").DescribeMyPasskeyRegistrationsCommand | typeof import("./useCases.js").DeleteUserCredentialCommand | typeof import("./useCases.js").CreatePolicyCommand | typeof import("./useCases.js").ListPoliciesCommand | typeof import("./useCases.js").UpdatePolicyCommand | typeof import("./useCases.js").DeletePolicyCommand | typeof import("./useCases.js").DescribePolicyCommand | typeof import("./useCases.js").ListSpacesCommand | typeof import("./useCases.js").UpdateSpaceCommand | typeof import("./useCases.js").CreateSpaceCommand | typeof import("./useCases.js").DescribeSpaceCommand | typeof import("./useCases.js").DeleteSpaceCommand | typeof import("./useCases.js").CreateDeviceCommand | typeof import("./useCases.js").CreateDeviceCredentialCommand | typeof import("./useCases.js").ListDevicesCommand | typeof import("./useCases.js").ListDeviceCredentialsCommand | typeof import("./useCases.js").ListCameraStreamPreviewsCommand | typeof import("./useCases.js").DescribeDeviceCommand | typeof import("./useCases.js").UpdateDeviceCommand | typeof import("./useCases.js").UpdateDeviceCredentialCommand | typeof import("./useCases.js").SetDeviceCommand | typeof import("./useCases.js").DeleteDeviceCommand | typeof import("./useCases.js").DeleteDeviceCredentialCommand | typeof import("./useCases.js").MoveDeviceCommand | typeof import("./useCases.js").DescribeDeviceConfigCommand | typeof import("./useCases.js").CreateCategoryCommand | typeof import("./useCases.js").DeleteCategoryCommand | typeof import("./useCases.js").DescribeCategoryCommand | typeof import("./useCases.js").ListCategoriesCommand | typeof import("./useCases.js").UpdateCategoryCommand | typeof import("./useCases.js").DescribeDepartmentCommand | typeof import("./useCases.js").ListDepartmentsCommand | typeof import("./useCases.js").DeleteDepartmentCommand | typeof import("./useCases.js").CreateDepartmentCommand | typeof import("./useCases.js").UpdateDepartmentCommand | typeof import("./useCases.js").AutoCloseTicketsCommand | typeof import("./useCases.js").DescribeTicketStatsCommand | typeof import("./useCases.js").CreateTicketCommand | typeof import("./useCases.js").CreateTicketMessageCommand | typeof import("./useCases.js").DeleteTicketCommand | typeof import("./useCases.js").ListTicketLocationsCommand | typeof import("./useCases.js").DescribeTicketFiltersCommand | typeof import("./useCases.js").DescribeTicketCommand | typeof import("./useCases.js").ListTicketsCommand | typeof import("./useCases.js").UpdateMessageReadStatusCommand | typeof import("./useCases.js").UpdateTicketCommand | typeof import("./useCases.js").LeaveTicketCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationMapCommand | typeof import("./useCases.js").AutoAssociateDiscoveredDevicesCommand | typeof import("./useCases.js").CreateDiscoveredDeviceCommand | typeof import("./useCases.js").ListDiscoveredDevicesCommand | typeof import("./useCases.js").UpdateDiscoveredDeviceCommand | typeof import("./useCases.js").DeleteDiscoveredDeviceCommand | typeof import("./useCases.js").DescribeDiscoveredDeviceCommand | typeof import("./useCases.js").UpsertDiscoveredDeviceCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationCommand | typeof import("./useCases.js").ListIntegrationsCommand | typeof import("./useCases.js").DescribeMyOrganizationCommand | typeof import("./useCases.js").CreateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationFeaturesCommand | typeof import("./useCases.js").DeleteOrganizationCommand | typeof import("./useCases.js").DescribeOrganizationCommand | typeof import("./useCases.js").ListOrganizationsCommand | typeof import("./useCases.js").ListPropertiesCommand | typeof import("./useCases.js").ListPropertyCredentialsCommand | typeof import("./useCases.js").ListMyPropertiesCommand | typeof import("./useCases.js").CreatePropertyCommand | typeof import("./useCases.js").DeletePropertyCommand | typeof import("./useCases.js").UpdatePropertyCommand | typeof import("./useCases.js").DescribePropertyCommand | typeof import("./useCases.js").UpdatePropertyFeaturesCommand | typeof import("./useCases.js").EmailUserAccountSetupCommand | typeof import("./useCases.js").CreateImageUploadEndpointCommand | typeof import("./useCases.js").DeleteMediaFileCommand | typeof import("./useCases.js").UploadImageCommand | typeof import("./useCases.js").DescribeTimeSheetStatsCommand | typeof import("./useCases.js").ListMyTimeSheetsCommand | typeof import("./useCases.js").DescribeTimeSheetCommand | typeof import("./useCases.js").ListTimeSheetsCommand | typeof import("./useCases.js").CreateTimeSheetCommand | typeof import("./useCases.js").DeleteTimeSheetCommand | typeof import("./useCases.js").UpdateTimeSheetCommand | typeof import("./useCases.js").CreateTimeSheetTimeEntryCommand | typeof import("./useCases.js").DeleteTimeSheetTimeEntryCommand | typeof import("./useCases.js").UpdateTimeSheetTimeEntryCommand | typeof import("./useCases.js").StartSOSCommand | typeof import("./useCases.js").StopSOSCommand | typeof import("./useCases.js").DescribeSOSCommand | typeof import("./useCases.js").DescribeIssueCommand | typeof import("./useCases.js").ListIssuesCommand | typeof import("./useCases.js").DeleteIssueCommand | typeof import("./useCases.js").CreateIssueCommand | typeof import("./useCases.js").UpdateIssueCommand | typeof import("./useCases.js").MergeIssueCommand | typeof import("./useCases.js").CopyIssueRoutingCommand | typeof import("./useCases.js").BulkUpdateIssueCommand | typeof import("./useCases.js").DescribeVendorCommand | typeof import("./useCases.js").ListVendorsCommand | typeof import("./useCases.js").DeleteVendorCommand | typeof import("./useCases.js").CreateVendorCommand | typeof import("./useCases.js").UpdateVendorCommand | typeof import("./useCases.js").CreateAutomationCommand | typeof import("./useCases.js").ListAutomationsCommand | typeof import("./useCases.js").DescribeAutomationCommand | typeof import("./useCases.js").UpdateAutomationCommand | typeof import("./useCases.js").DeleteAutomationCommand | typeof import("./useCases.js").CreateDefaultAutomationsCommand | typeof import("./useCases.js").RunAutomationCommand | typeof import("./useCases.js").SendNotificationCommand | typeof import("./useCases.js").ListSessionsCommand | typeof import("./useCases.js").DescribeSessionCommand | typeof import("./useCases.js").DeleteSessionCommand | typeof import("./useCases.js").SetDevicesCommand | typeof import("./useCases.js").CreateSystemCommand | typeof import("./useCases.js").DeleteSystemCommand | typeof import("./useCases.js").DescribeSystemCommand | typeof import("./useCases.js").ListSystemsCommand | typeof import("./useCases.js").UpdateSystemCommand | typeof import("./useCases.js").CreateServerCommand | typeof import("./useCases.js").DeleteServerCommand | typeof import("./useCases.js").DescribeServerCommand | typeof import("./useCases.js").ListServersCommand | typeof import("./useCases.js").UpdateServerCommand): Request;
74
+ createRequest(config: typeof import("./useCases.js").CreatePwaHandoffTokenCommand | typeof import("./useCases.js").LogoutUserCommand | typeof import("./useCases.js").DescribeMyAuthCommand | typeof import("./useCases.js").ValidateAuthCommand | typeof import("./useCases.js").SelectOrganizationCommand | typeof import("./useCases.js").ListMyOrganizationsCommand | typeof import("./useCases.js").DescribeSelfCommand | typeof import("./useCases.js").DescribeUserCommand | typeof import("./useCases.js").CreateUserCommand | typeof import("./useCases.js").ListUsersCommand | typeof import("./useCases.js").UpdateSelfCommand | typeof import("./useCases.js").UpdateUserCommand | typeof import("./useCases.js").DeleteUserCommand | typeof import("./useCases.js").CreateApiKeyCommand | typeof import("./useCases.js").GetApiKeyCommand | typeof import("./useCases.js").RotateApiKeyCommand | typeof import("./useCases.js").RevokeApiKeyCommand | typeof import("./useCases.js").SendVerificationCodeCommand | typeof import("./useCases.js").CheckVerificationCodeCommand | typeof import("./useCases.js").ListUserSpacesCommand | typeof import("./useCases.js").DescribeMyPasskeyRegistrationsCommand | typeof import("./useCases.js").DeleteUserCredentialCommand | typeof import("./useCases.js").CreatePolicyCommand | typeof import("./useCases.js").ListPoliciesCommand | typeof import("./useCases.js").UpdatePolicyCommand | typeof import("./useCases.js").DeletePolicyCommand | typeof import("./useCases.js").DescribePolicyCommand | typeof import("./useCases.js").ListSpacesCommand | typeof import("./useCases.js").UpdateSpaceCommand | typeof import("./useCases.js").CreateSpaceCommand | typeof import("./useCases.js").DescribeSpaceCommand | typeof import("./useCases.js").DeleteSpaceCommand | typeof import("./useCases.js").CreateDeviceCommand | typeof import("./useCases.js").CreateDeviceCredentialCommand | typeof import("./useCases.js").ListDevicesCommand | typeof import("./useCases.js").ListDeviceCredentialsCommand | typeof import("./useCases.js").ListCameraStreamPreviewsCommand | typeof import("./useCases.js").DescribeDeviceCommand | typeof import("./useCases.js").UpdateDeviceCommand | typeof import("./useCases.js").UpdateDeviceCredentialCommand | typeof import("./useCases.js").SetDeviceCommand | typeof import("./useCases.js").DeleteDeviceCommand | typeof import("./useCases.js").DeleteDeviceCredentialCommand | typeof import("./useCases.js").MoveDeviceCommand | typeof import("./useCases.js").DescribeDeviceConfigCommand | typeof import("./useCases.js").CreateCategoryCommand | typeof import("./useCases.js").DeleteCategoryCommand | typeof import("./useCases.js").DescribeCategoryCommand | typeof import("./useCases.js").ListCategoriesCommand | typeof import("./useCases.js").UpdateCategoryCommand | typeof import("./useCases.js").DescribeDepartmentCommand | typeof import("./useCases.js").ListDepartmentsCommand | typeof import("./useCases.js").DeleteDepartmentCommand | typeof import("./useCases.js").CreateDepartmentCommand | typeof import("./useCases.js").UpdateDepartmentCommand | typeof import("./useCases.js").DescribeTicketStatsCommand | typeof import("./useCases.js").CreateTicketCommand | typeof import("./useCases.js").CreateTicketMessageCommand | typeof import("./useCases.js").DeleteTicketCommand | typeof import("./useCases.js").ListTicketLocationsCommand | typeof import("./useCases.js").DescribeTicketFiltersCommand | typeof import("./useCases.js").DescribeTicketCommand | typeof import("./useCases.js").ListTicketsCommand | typeof import("./useCases.js").UpdateMessageReadStatusCommand | typeof import("./useCases.js").UpdateTicketCommand | typeof import("./useCases.js").LeaveTicketCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationMapCommand | typeof import("./useCases.js").AutoAssociateDiscoveredDevicesCommand | typeof import("./useCases.js").CreateDiscoveredDeviceCommand | typeof import("./useCases.js").ListDiscoveredDevicesCommand | typeof import("./useCases.js").UpdateDiscoveredDeviceCommand | typeof import("./useCases.js").DeleteDiscoveredDeviceCommand | typeof import("./useCases.js").DescribeDiscoveredDeviceCommand | typeof import("./useCases.js").UpsertDiscoveredDeviceCommand | typeof import("./useCases.js").CreateDiscoveredDeviceAssociationCommand | typeof import("./useCases.js").ListIntegrationsCommand | typeof import("./useCases.js").DescribeMyOrganizationCommand | typeof import("./useCases.js").CreateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationCommand | typeof import("./useCases.js").UpdateOrganizationFeaturesCommand | typeof import("./useCases.js").DeleteOrganizationCommand | typeof import("./useCases.js").DescribeOrganizationCommand | typeof import("./useCases.js").ListOrganizationsCommand | typeof import("./useCases.js").ListPropertiesCommand | typeof import("./useCases.js").ListPropertyCredentialsCommand | typeof import("./useCases.js").ListMyPropertiesCommand | typeof import("./useCases.js").CreatePropertyCommand | typeof import("./useCases.js").DeletePropertyCommand | typeof import("./useCases.js").UpdatePropertyCommand | typeof import("./useCases.js").DescribePropertyCommand | typeof import("./useCases.js").UpdatePropertyFeaturesCommand | typeof import("./useCases.js").EmailUserAccountSetupCommand | typeof import("./useCases.js").CreateImageUploadEndpointCommand | typeof import("./useCases.js").DeleteMediaFileCommand | typeof import("./useCases.js").UploadImageCommand | typeof import("./useCases.js").DescribeTimeSheetStatsCommand | typeof import("./useCases.js").ListMyTimeSheetsCommand | typeof import("./useCases.js").DescribeTimeSheetCommand | typeof import("./useCases.js").ListTimeSheetsCommand | typeof import("./useCases.js").CreateTimeSheetCommand | typeof import("./useCases.js").DeleteTimeSheetCommand | typeof import("./useCases.js").UpdateTimeSheetCommand | typeof import("./useCases.js").CreateTimeSheetTimeEntryCommand | typeof import("./useCases.js").DeleteTimeSheetTimeEntryCommand | typeof import("./useCases.js").UpdateTimeSheetTimeEntryCommand | typeof import("./useCases.js").StartSOSCommand | typeof import("./useCases.js").StopSOSCommand | typeof import("./useCases.js").DescribeSOSCommand | typeof import("./useCases.js").DescribeIssueCommand | typeof import("./useCases.js").ListIssuesCommand | typeof import("./useCases.js").DeleteIssueCommand | typeof import("./useCases.js").CreateIssueCommand | typeof import("./useCases.js").UpdateIssueCommand | typeof import("./useCases.js").MergeIssueCommand | typeof import("./useCases.js").CopyIssueRoutingCommand | typeof import("./useCases.js").BulkUpdateIssueCommand | typeof import("./useCases.js").DescribeVendorCommand | typeof import("./useCases.js").ListVendorsCommand | typeof import("./useCases.js").DeleteVendorCommand | typeof import("./useCases.js").CreateVendorCommand | typeof import("./useCases.js").UpdateVendorCommand | typeof import("./useCases.js").CreateAutomationCommand | typeof import("./useCases.js").ListAutomationsCommand | typeof import("./useCases.js").DescribeAutomationCommand | typeof import("./useCases.js").UpdateAutomationCommand | typeof import("./useCases.js").DeleteAutomationCommand | typeof import("./useCases.js").CreateDefaultAutomationsCommand | typeof import("./useCases.js").RunAutomationCommand | typeof import("./useCases.js").SendNotificationCommand | typeof import("./useCases.js").DescribeOrgNotificationDefaultsCommand | typeof import("./useCases.js").UpdateOrgNotificationDefaultsCommand | typeof import("./useCases.js").ListMyPushSubscriptionsCommand | typeof import("./useCases.js").DescribePushVapidPublicKeyCommand | typeof import("./useCases.js").SubscribePushDeviceCommand | typeof import("./useCases.js").UnsubscribePushDeviceCommand | typeof import("./useCases.js").ListSessionsCommand | typeof import("./useCases.js").DescribeSessionCommand | typeof import("./useCases.js").DeleteSessionCommand | typeof import("./useCases.js").SetDevicesCommand | typeof import("./useCases.js").CreateSystemCommand | typeof import("./useCases.js").DeleteSystemCommand | typeof import("./useCases.js").DescribeSystemCommand | typeof import("./useCases.js").ListSystemsCommand | typeof import("./useCases.js").UpdateSystemCommand | typeof import("./useCases.js").CreateServerCommand | typeof import("./useCases.js").DeleteServerCommand | typeof import("./useCases.js").DescribeServerCommand | typeof import("./useCases.js").ListServersCommand | typeof import("./useCases.js").UpdateServerCommand): Request;
75
75
  #private;
76
76
  }
@@ -1,4 +1,4 @@
1
- export declare const SYSTEM_CATEGORIES: readonly ["hvac", "access-control", "lighting", "shades", "irrigation", "cameras", "alarms", "pa", "media"];
1
+ export declare const SYSTEM_CATEGORIES: readonly ["hvac", "access-control", "lighting", "shades", "irrigation", "cameras", "alarms", "pa", "media", "other"];
2
2
  export type SystemCategory = (typeof SYSTEM_CATEGORIES)[number];
3
3
  export declare const SYSTEM_CATEGORY_LABELS: Record<SystemCategory, string>;
4
4
  export interface CategoryForDeviceInput {
@@ -8,7 +8,8 @@ const SYSTEM_CATEGORIES = [
8
8
  "cameras",
9
9
  "alarms",
10
10
  "pa",
11
- "media"
11
+ "media",
12
+ "other"
12
13
  ];
13
14
  const SYSTEM_CATEGORY_LABELS = {
14
15
  hvac: "HVAC",
@@ -19,7 +20,8 @@ const SYSTEM_CATEGORY_LABELS = {
19
20
  cameras: "Cameras",
20
21
  alarms: "Alarms",
21
22
  pa: "PA",
22
- media: "Media"
23
+ media: "Media",
24
+ other: "System"
23
25
  };
24
26
  function categoryForDevice(device) {
25
27
  if (!device || !device.type) return null;
@@ -1 +1 @@
1
- {"version":3,"file":"systemCategories.js","names":[],"sources":["../../.generated/lib/systemCategories.ts"],"sourcesContent":["export const SYSTEM_CATEGORIES = [\n \"hvac\",\n \"access-control\",\n \"lighting\",\n \"shades\",\n \"irrigation\",\n \"cameras\",\n \"alarms\",\n \"pa\",\n \"media\",\n] as const;\n\nexport type SystemCategory = (typeof SYSTEM_CATEGORIES)[number];\n\nexport const SYSTEM_CATEGORY_LABELS: Record<SystemCategory, string> = {\n hvac: \"HVAC\",\n \"access-control\": \"Access Control\",\n lighting: \"Lighting\",\n shades: \"Shades\",\n irrigation: \"Irrigation\",\n cameras: \"Cameras\",\n alarms: \"Alarms\",\n pa: \"PA\",\n media: \"Media\",\n};\n\nexport interface CategoryForDeviceInput {\n type?: string;\n discriminator?: string;\n}\n\nexport function categoryForDevice(\n device: CategoryForDeviceInput | null | undefined,\n): SystemCategory | null {\n if (!device || !device.type) return null;\n\n switch (device.type) {\n case \"thermostat\":\n return \"hvac\";\n case \"lock\":\n return \"access-control\";\n case \"alarm\":\n return \"alarms\";\n case \"camera\":\n case \"motionSensor\":\n return \"cameras\";\n case \"windowCovering\":\n return \"shades\";\n case \"dimmer\":\n return \"lighting\";\n case \"switch\":\n if (device.discriminator === \"irrigation\") return \"irrigation\";\n return \"lighting\";\n case \"mediaSource\":\n if (device.discriminator === \"paSystem\") return \"pa\";\n return \"media\";\n default:\n console.warn(\"UnknownSystemCategory\", {\n deviceType: device.type,\n discriminator: device.discriminator,\n });\n return null;\n }\n}\n"],"mappings":";AAAA,MAAa,oBAAoB;CAC/B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,MAAa,yBAAyD;CACpE,MAAM;CACN,kBAAkB;CAClB,UAAU;CACV,QAAQ;CACR,YAAY;CACZ,SAAS;CACT,QAAQ;CACR,IAAI;CACJ,OAAO;AACT;AAOA,SAAgB,kBACd,QACuB;CACvB,IAAI,CAAC,UAAU,CAAC,OAAO,MAAM,OAAO;CAEpC,QAAQ,OAAO,MAAf;EACE,KAAK,cACH,OAAO;EACT,KAAK,QACH,OAAO;EACT,KAAK,SACH,OAAO;EACT,KAAK;EACL,KAAK,gBACH,OAAO;EACT,KAAK,kBACH,OAAO;EACT,KAAK,UACH,OAAO;EACT,KAAK;GACH,IAAI,OAAO,kBAAkB,cAAc,OAAO;GAClD,OAAO;EACT,KAAK;GACH,IAAI,OAAO,kBAAkB,YAAY,OAAO;GAChD,OAAO;EACT;GACE,QAAQ,KAAK,yBAAyB;IACpC,YAAY,OAAO;IACnB,eAAe,OAAO;GACxB,CAAC;GACD,OAAO;CACX;AACF"}
1
+ {"version":3,"file":"systemCategories.js","names":[],"sources":["../../.generated/lib/systemCategories.ts"],"sourcesContent":["export const SYSTEM_CATEGORIES = [\n \"hvac\",\n \"access-control\",\n \"lighting\",\n \"shades\",\n \"irrigation\",\n \"cameras\",\n \"alarms\",\n \"pa\",\n \"media\",\n \"other\",\n] as const;\n\nexport type SystemCategory = (typeof SYSTEM_CATEGORIES)[number];\n\nexport const SYSTEM_CATEGORY_LABELS: Record<SystemCategory, string> = {\n hvac: \"HVAC\",\n \"access-control\": \"Access Control\",\n lighting: \"Lighting\",\n shades: \"Shades\",\n irrigation: \"Irrigation\",\n cameras: \"Cameras\",\n alarms: \"Alarms\",\n pa: \"PA\",\n media: \"Media\",\n other: \"System\",\n};\n\nexport interface CategoryForDeviceInput {\n type?: string;\n discriminator?: string;\n}\n\nexport function categoryForDevice(\n device: CategoryForDeviceInput | null | undefined,\n): SystemCategory | null {\n if (!device || !device.type) return null;\n\n switch (device.type) {\n case \"thermostat\":\n return \"hvac\";\n case \"lock\":\n return \"access-control\";\n case \"alarm\":\n return \"alarms\";\n case \"camera\":\n case \"motionSensor\":\n return \"cameras\";\n case \"windowCovering\":\n return \"shades\";\n case \"dimmer\":\n return \"lighting\";\n case \"switch\":\n if (device.discriminator === \"irrigation\") return \"irrigation\";\n return \"lighting\";\n case \"mediaSource\":\n if (device.discriminator === \"paSystem\") return \"pa\";\n return \"media\";\n default:\n console.warn(\"UnknownSystemCategory\", {\n deviceType: device.type,\n discriminator: device.discriminator,\n });\n return null;\n }\n}\n"],"mappings":";AAAA,MAAa,oBAAoB;CAC/B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,MAAa,yBAAyD;CACpE,MAAM;CACN,kBAAkB;CAClB,UAAU;CACV,QAAQ;CACR,YAAY;CACZ,SAAS;CACT,QAAQ;CACR,IAAI;CACJ,OAAO;CACP,OAAO;AACT;AAOA,SAAgB,kBACd,QACuB;CACvB,IAAI,CAAC,UAAU,CAAC,OAAO,MAAM,OAAO;CAEpC,QAAQ,OAAO,MAAf;EACE,KAAK,cACH,OAAO;EACT,KAAK,QACH,OAAO;EACT,KAAK,SACH,OAAO;EACT,KAAK;EACL,KAAK,gBACH,OAAO;EACT,KAAK,kBACH,OAAO;EACT,KAAK,UACH,OAAO;EACT,KAAK;GACH,IAAI,OAAO,kBAAkB,cAAc,OAAO;GAClD,OAAO;EACT,KAAK;GACH,IAAI,OAAO,kBAAkB,YAAY,OAAO;GAChD,OAAO;EACT;GACE,QAAQ,KAAK,yBAAyB;IACpC,YAAY,OAAO;IACnB,eAAe,OAAO;GACxB,CAAC;GACD,OAAO;CACX;AACF"}
@@ -26,7 +26,6 @@ var Ticket = class extends Entity {
26
26
  this.tags = data.tags;
27
27
  if (data.rating !== void 0) this.rating = data.rating;
28
28
  if (data.ratingComment !== void 0) this.ratingComment = data.ratingComment;
29
- if (data.autoCloseAt !== void 0) this.autoCloseAt = data.autoCloseAt;
30
29
  if (data.scheduleDate !== void 0) this.scheduleDate = data.scheduleDate;
31
30
  this.createdAt = data.createdAt;
32
31
  this.updatedAt = data.updatedAt;
@@ -1 +1 @@
1
- {"version":3,"file":"ticket.js","names":["validate"],"sources":["../../.generated/models/ticket.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateTicket as validate } from \"../validate.js\";\nimport { ticketSchema, type TicketSchema } from \"../schemas/ticket.js\";\n\n/**\n * Data type for Ticket constructor - exported for backwards compatibility\n */\nexport type TicketData = TicketSchema;\n\n/**\n * A ticket is a request from a user.\n */\nexport interface Ticket extends TicketSchema {}\nexport class Ticket extends Entity {\n declare schema: typeof ticketSchema;\n declare validator: typeof validate;\n\n constructor(data: TicketSchema) {\n super(data);\n this.id = data.id;\n if (data.propertyId !== undefined) this.propertyId = data.propertyId;\n if (data.type !== undefined) this.type = data.type;\n if (data.number !== undefined) this.number = data.number;\n if (data.issueId !== undefined) this.issueId = data.issueId;\n if (data.parentAutomationId !== undefined)\n this.parentAutomationId = data.parentAutomationId;\n this.conversation = data.conversation;\n if (data.subject !== undefined) this.subject = data.subject;\n this.openedBy = data.openedBy;\n this.requester = data.requester;\n this.assignedTo = data.assignedTo;\n if (data.notify !== undefined) this.notify = data.notify;\n if (data.collaborators !== undefined)\n this.collaborators = data.collaborators;\n if (data.location !== undefined) this.location = data.location;\n this.status = data.status;\n this.priority = data.priority;\n if (data.priorityRank !== undefined) this.priorityRank = data.priorityRank;\n if (data.reopenCount !== undefined) this.reopenCount = data.reopenCount;\n this.tags = data.tags;\n if (data.rating !== undefined) this.rating = data.rating;\n if (data.ratingComment !== undefined)\n this.ratingComment = data.ratingComment;\n if (data.autoCloseAt !== undefined) this.autoCloseAt = data.autoCloseAt;\n if (data.scheduleDate !== undefined) this.scheduleDate = data.scheduleDate;\n this.createdAt = data.createdAt;\n this.updatedAt = data.updatedAt;\n if (data.solvedAt !== undefined) this.solvedAt = data.solvedAt;\n if (data.lastMessageAt !== undefined)\n this.lastMessageAt = data.lastMessageAt;\n if (data.closedAt !== undefined) this.closedAt = data.closedAt;\n if (data.deletedAt !== undefined) this.deletedAt = data.deletedAt;\n }\n}\n\nObject.defineProperty(Ticket.prototype, \"schema\", {\n value: ticketSchema,\n});\n\nObject.defineProperty(Ticket.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;;;AAeA,IAAa,SAAb,cAA4B,OAAO;CAIjC,YAAY,MAAoB;EAC9B,MAAM,IAAI;EACV,KAAK,KAAK,KAAK;EACf,IAAI,KAAK,eAAe,KAAA,GAAW,KAAK,aAAa,KAAK;EAC1D,IAAI,KAAK,SAAS,KAAA,GAAW,KAAK,OAAO,KAAK;EAC9C,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,IAAI,KAAK,uBAAuB,KAAA,GAC9B,KAAK,qBAAqB,KAAK;EACjC,KAAK,eAAe,KAAK;EACzB,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,KAAK,WAAW,KAAK;EACrB,KAAK,YAAY,KAAK;EACtB,KAAK,aAAa,KAAK;EACvB,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,kBAAkB,KAAA,GACzB,KAAK,gBAAgB,KAAK;EAC5B,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,KAAK,SAAS,KAAK;EACnB,KAAK,WAAW,KAAK;EACrB,IAAI,KAAK,iBAAiB,KAAA,GAAW,KAAK,eAAe,KAAK;EAC9D,IAAI,KAAK,gBAAgB,KAAA,GAAW,KAAK,cAAc,KAAK;EAC5D,KAAK,OAAO,KAAK;EACjB,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,kBAAkB,KAAA,GACzB,KAAK,gBAAgB,KAAK;EAC5B,IAAI,KAAK,gBAAgB,KAAA,GAAW,KAAK,cAAc,KAAK;EAC5D,IAAI,KAAK,iBAAiB,KAAA,GAAW,KAAK,eAAe,KAAK;EAC9D,KAAK,YAAY,KAAK;EACtB,KAAK,YAAY,KAAK;EACtB,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,kBAAkB,KAAA,GACzB,KAAK,gBAAgB,KAAK;EAC5B,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;CAC1D;AACF;AAEA,OAAO,eAAe,OAAO,WAAW,UAAU,EAChD,OAAO,aACT,CAAC;AAED,OAAO,eAAe,OAAO,WAAW,aAAa,EACnD,KAAK,WAAY;CACf,OAAOA;AACT,EACF,CAAC"}
1
+ {"version":3,"file":"ticket.js","names":["validate"],"sources":["../../.generated/models/ticket.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateTicket as validate } from \"../validate.js\";\nimport { ticketSchema, type TicketSchema } from \"../schemas/ticket.js\";\n\n/**\n * Data type for Ticket constructor - exported for backwards compatibility\n */\nexport type TicketData = TicketSchema;\n\n/**\n * A ticket is a request from a user.\n */\nexport interface Ticket extends TicketSchema {}\nexport class Ticket extends Entity {\n declare schema: typeof ticketSchema;\n declare validator: typeof validate;\n\n constructor(data: TicketSchema) {\n super(data);\n this.id = data.id;\n if (data.propertyId !== undefined) this.propertyId = data.propertyId;\n if (data.type !== undefined) this.type = data.type;\n if (data.number !== undefined) this.number = data.number;\n if (data.issueId !== undefined) this.issueId = data.issueId;\n if (data.parentAutomationId !== undefined)\n this.parentAutomationId = data.parentAutomationId;\n this.conversation = data.conversation;\n if (data.subject !== undefined) this.subject = data.subject;\n this.openedBy = data.openedBy;\n this.requester = data.requester;\n this.assignedTo = data.assignedTo;\n if (data.notify !== undefined) this.notify = data.notify;\n if (data.collaborators !== undefined)\n this.collaborators = data.collaborators;\n if (data.location !== undefined) this.location = data.location;\n this.status = data.status;\n this.priority = data.priority;\n if (data.priorityRank !== undefined) this.priorityRank = data.priorityRank;\n if (data.reopenCount !== undefined) this.reopenCount = data.reopenCount;\n this.tags = data.tags;\n if (data.rating !== undefined) this.rating = data.rating;\n if (data.ratingComment !== undefined)\n this.ratingComment = data.ratingComment;\n if (data.scheduleDate !== undefined) this.scheduleDate = data.scheduleDate;\n this.createdAt = data.createdAt;\n this.updatedAt = data.updatedAt;\n if (data.solvedAt !== undefined) this.solvedAt = data.solvedAt;\n if (data.lastMessageAt !== undefined)\n this.lastMessageAt = data.lastMessageAt;\n if (data.closedAt !== undefined) this.closedAt = data.closedAt;\n if (data.deletedAt !== undefined) this.deletedAt = data.deletedAt;\n }\n}\n\nObject.defineProperty(Ticket.prototype, \"schema\", {\n value: ticketSchema,\n});\n\nObject.defineProperty(Ticket.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;;;AAeA,IAAa,SAAb,cAA4B,OAAO;CAIjC,YAAY,MAAoB;EAC9B,MAAM,IAAI;EACV,KAAK,KAAK,KAAK;EACf,IAAI,KAAK,eAAe,KAAA,GAAW,KAAK,aAAa,KAAK;EAC1D,IAAI,KAAK,SAAS,KAAA,GAAW,KAAK,OAAO,KAAK;EAC9C,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,IAAI,KAAK,uBAAuB,KAAA,GAC9B,KAAK,qBAAqB,KAAK;EACjC,KAAK,eAAe,KAAK;EACzB,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,KAAK,WAAW,KAAK;EACrB,KAAK,YAAY,KAAK;EACtB,KAAK,aAAa,KAAK;EACvB,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,kBAAkB,KAAA,GACzB,KAAK,gBAAgB,KAAK;EAC5B,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,KAAK,SAAS,KAAK;EACnB,KAAK,WAAW,KAAK;EACrB,IAAI,KAAK,iBAAiB,KAAA,GAAW,KAAK,eAAe,KAAK;EAC9D,IAAI,KAAK,gBAAgB,KAAA,GAAW,KAAK,cAAc,KAAK;EAC5D,KAAK,OAAO,KAAK;EACjB,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,kBAAkB,KAAA,GACzB,KAAK,gBAAgB,KAAK;EAC5B,IAAI,KAAK,iBAAiB,KAAA,GAAW,KAAK,eAAe,KAAK;EAC9D,KAAK,YAAY,KAAK;EACtB,KAAK,YAAY,KAAK;EACtB,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,kBAAkB,KAAA,GACzB,KAAK,gBAAgB,KAAK;EAC5B,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;CAC1D;AACF;AAEA,OAAO,eAAe,OAAO,WAAW,UAAU,EAChD,OAAO,aACT,CAAC;AAED,OAAO,eAAe,OAAO,WAAW,aAAa,EACnD,KAAK,WAAY;CACf,OAAOA;AACT,EACF,CAAC"}
@@ -1,3 +1,7 @@
1
+ export declare const TICKET_NOTIFICATION_EVENTS: readonly ["ticketCreated", "ticketAssignedToMe", "addedAsCollaborator", "mentionedInTicket", "messageOnMyTicket", "ticketResolved", "ticketCreatedAsObserver", "messageAsObserver", "ticketResolvedAsObserver"];
2
+ export type TicketNotificationEvent = (typeof TICKET_NOTIFICATION_EVENTS)[number];
3
+ export declare const NOTIFICATION_CHANNELS: readonly ["email", "sms", "push"];
4
+ export type NotificationChannel = (typeof NOTIFICATION_CHANNELS)[number];
1
5
  declare const defs: {
2
6
  readonly $schema: "http://json-schema.org/draft-07/schema";
3
7
  readonly $id: "definitions.json";
@@ -165,6 +169,14 @@ declare const defs: {
165
169
  };
166
170
  };
167
171
  };
172
+ readonly ticketNotificationEvent: {
173
+ readonly type: "string";
174
+ readonly enum: readonly ["ticketCreated", "ticketAssignedToMe", "addedAsCollaborator", "mentionedInTicket", "messageOnMyTicket", "ticketResolved", "ticketCreatedAsObserver", "messageAsObserver", "ticketResolvedAsObserver"];
175
+ };
176
+ readonly notificationChannel: {
177
+ readonly type: "string";
178
+ readonly enum: readonly ["email", "sms", "push"];
179
+ };
168
180
  };
169
181
  };
170
182
  export type ISODateString = ReturnType<Date["toISOString"]>;
@@ -1,4 +1,20 @@
1
1
  //#region .generated/schemas/definitions.ts
2
+ const TICKET_NOTIFICATION_EVENTS = [
3
+ "ticketCreated",
4
+ "ticketAssignedToMe",
5
+ "addedAsCollaborator",
6
+ "mentionedInTicket",
7
+ "messageOnMyTicket",
8
+ "ticketResolved",
9
+ "ticketCreatedAsObserver",
10
+ "messageAsObserver",
11
+ "ticketResolvedAsObserver"
12
+ ];
13
+ const NOTIFICATION_CHANNELS = [
14
+ "email",
15
+ "sms",
16
+ "push"
17
+ ];
2
18
  const defs = {
3
19
  $schema: "http://json-schema.org/draft-07/schema",
4
20
  $id: "definitions.json",
@@ -274,10 +290,18 @@ const defs = {
274
290
  tax: { type: ["number", "null"] }
275
291
  }
276
292
  }
293
+ },
294
+ ticketNotificationEvent: {
295
+ type: "string",
296
+ enum: TICKET_NOTIFICATION_EVENTS
297
+ },
298
+ notificationChannel: {
299
+ type: "string",
300
+ enum: NOTIFICATION_CHANNELS
277
301
  }
278
302
  }
279
303
  };
280
304
  //#endregion
281
- export { defs as default, defs as definitionsSchema };
305
+ export { NOTIFICATION_CHANNELS, TICKET_NOTIFICATION_EVENTS, defs as default, defs as definitionsSchema };
282
306
 
283
307
  //# sourceMappingURL=definitions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","names":[],"sources":["../../.generated/schemas/definitions.ts"],"sourcesContent":["const defs = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"definitions.json\",\n title: \"Definitions\",\n definitions: {\n id: {\n type: \"string\",\n description: \"Identifier of the object.\",\n },\n systemId: {\n type: \"string\",\n description: \"Identifier of the object, directly related to the system.\",\n },\n systemData: {\n type: \"object\",\n },\n metadata: {\n type: \"object\",\n default: {},\n },\n date: {\n type: [\"string\", \"object\"],\n format: \"date-time\",\n },\n file: {\n type: \"object\",\n required: [\"name\", \"type\", \"data\"],\n properties: {\n name: {\n type: \"string\",\n description: \"Name of the file.\",\n },\n type: {\n type: \"string\",\n description: \"MIME type of the file (e.g. application/pdf).\",\n },\n data: {\n type: \"string\",\n description: \"Base64-encoded data of the file.\",\n },\n },\n },\n address: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n line1: {\n type: \"string\",\n },\n line2: {\n type: \"string\",\n },\n line3: {\n type: \"string\",\n },\n city: {\n type: \"string\",\n },\n state: {\n type: \"string\",\n },\n postalCode: {\n type: \"string\",\n },\n countryCode: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n },\n },\n driver: {\n type: \"string\",\n description: \"Driver used to communicate with the object.\",\n enum: [\n \"adlink\",\n \"avigilon-alta\",\n \"aws-kinesis\",\n \"bacnet\",\n \"benq\",\n \"butler\",\n \"comelit\",\n \"cool-automation\",\n \"crestron\",\n \"dell\",\n \"digital-watchdog\",\n \"distech\",\n \"dmp\",\n \"doorbird\",\n \"dormakaba\",\n \"dsc\",\n \"dsc-itv2\",\n \"earbridge\",\n \"ecobee\",\n \"epson\",\n \"geovision-rs\",\n \"geovision-as-manager\",\n \"honeywell-vista\",\n \"honeywell-resideo\",\n \"igor\",\n \"inncom\",\n \"isapi\",\n \"kohost-k7\",\n \"kohost\",\n \"lapi\",\n \"lg\",\n \"lg-webos\",\n \"linortek\",\n \"lirc\",\n \"mews\",\n \"mht\",\n \"mobile-mule\",\n \"mock\",\n \"modbus\",\n \"napco\",\n \"newline\",\n \"obix\",\n \"one-roster\",\n \"onvif\",\n \"orchid-fusion\",\n \"paxton\",\n \"pdk\",\n \"pelican-wireless\",\n \"power-shades\",\n \"rachio\",\n \"rebrandly\",\n \"relay\",\n \"reolink\",\n \"rtsp\",\n \"salto\",\n \"salto-irn\",\n \"samsung\",\n \"se\",\n \"sendgrid\",\n \"singlewire\",\n \"smartboard\",\n \"sonifi\",\n \"stay-n-touch\",\n \"storable\",\n \"twilio\",\n \"unifi\",\n \"valcom\",\n \"veracross\",\n \"verkada\",\n \"vivotek\",\n \"vizio\",\n \"wisenet\",\n \"zkteco\",\n \"cloudflare-images\",\n \"cloudflare-stream\",\n \"insperia-privacy\",\n ],\n },\n type: {\n type: \"string\",\n enum: [\n \"alarm\",\n \"camera\",\n \"courtesy\",\n \"dimmer\",\n \"gateway\",\n \"lock\",\n \"mediaSource\",\n \"motionSensor\",\n \"switch\",\n \"thermostat\",\n \"windowCovering\",\n ],\n },\n name: {\n type: \"string\",\n },\n alerts: {\n type: \"array\",\n uniqueItems: true,\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"type\", \"status\", \"message\"],\n properties: {\n id: {\n type: \"string\"\n },\n type: {\n type: \"string\",\n enum: [\n \"Battery\",\n \"Button\",\n \"Communication\",\n \"Config\",\n \"Cost\",\n \"Door Ajar\",\n \"Equipment\",\n \"Maintenance\",\n \"Motion\",\n \"Registration\",\n \"Temperature\",\n ],\n },\n status: {\n type: \"string\",\n enum: [\"Active\", \"Resolved\"],\n },\n message: {\n type: \"string\",\n },\n },\n },\n },\n supportedNotifications: {\n type: \"array\",\n uniqueItems: true,\n items: {\n enum: [\n \"button 1\",\n \"button 2\",\n \"button 3\",\n \"button 4\",\n \"button 5\",\n \"idle\",\n \"powerHasBeedApplied\",\n \"acMainsDisconnected\",\n \"acMainsReconnected\",\n \"replaceBattery\",\n \"replaceBatterySoon\",\n \"replaceBatteryNow\",\n \"batteryOk\",\n \"hardwareFailure\",\n \"softwareFailure\",\n \"hardwareFailureWithCode\",\n \"softwareFailureWithCode\",\n \"motionDetection\",\n \"airFilterNeedsCleaned\",\n \"airFilterNeedsReplaced\",\n \"smokeDetected\",\n \"outsideSafeTemperatureRange\",\n \"outsideSafeHumidityRange\",\n \"scheduleMaintenance\",\n \"doorAjar\",\n \"communicationFailure\",\n \"communicationOk\",\n \"burglarAlarm\",\n \"fireAlarm\",\n \"powerTrouble\",\n \"monitoringTrouble\",\n \"bellTrouble\",\n \"configIssue\",\n ],\n },\n },\n notification: {\n type: [\"object\", \"null\"],\n properties: {\n name: {\n type: \"string\",\n $ref: \"#/definitions/supportedNotifications/items\",\n },\n timestamp: {\n type: \"number\",\n minimum: 1655907956593,\n },\n description: {\n type: \"string\",\n },\n },\n },\n batteryLevel: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n watts: {\n type: \"number\",\n minimum: 0,\n },\n revenue: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n date: {\n type: \"string\",\n format: \"date-time\",\n },\n price: {\n type: \"number\",\n },\n tax: {\n type: [\"number\", \"null\"],\n },\n },\n },\n },\n },\n} as const;\n\nexport type ISODateString = ReturnType<Date[\"toISOString\"]>;\n\nexport { defs as definitionsSchema };\nexport default defs;\n"],"mappings":";AAAA,MAAM,OAAO;CACX,SAAS;CACT,KAAK;CACL,OAAO;CACP,aAAa;EACX,IAAI;GACF,MAAM;GACN,aAAa;EACf;EACA,UAAU;GACR,MAAM;GACN,aAAa;EACf;EACA,YAAY,EACV,MAAM,SACR;EACA,UAAU;GACR,MAAM;GACN,SAAS,CAAC;EACZ;EACA,MAAM;GACJ,MAAM,CAAC,UAAU,QAAQ;GACzB,QAAQ;EACV;EACA,MAAM;GACJ,MAAM;GACN,UAAU;IAAC;IAAQ;IAAQ;GAAM;GACjC,YAAY;IACV,MAAM;KACJ,MAAM;KACN,aAAa;IACf;IACA,MAAM;KACJ,MAAM;KACN,aAAa;IACf;IACA,MAAM;KACJ,MAAM;KACN,aAAa;IACf;GACF;EACF;EACA,SAAS;GACP,MAAM;GACN,sBAAsB;GACtB,YAAY;IACV,IAAI,EACF,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,MAAM,EACJ,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,YAAY,EACV,MAAM,SACR;IACA,aAAa;KACX,MAAM;KACN,WAAW;KACX,WAAW;IACb;GACF;EACF;EACA,QAAQ;GACN,MAAM;GACN,aAAa;GACb,MAAM;IACJ;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF;EACF;EACA,MAAM;GACJ,MAAM;GACN,MAAM;IACJ;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF;EACF;EACA,MAAM,EACJ,MAAM,SACR;EACA,QAAQ;GACN,MAAM;GACN,aAAa;GACb,OAAO;IACL,MAAM;IACN,sBAAsB;IACtB,UAAU;KAAC;KAAQ;KAAU;IAAS;IACtC,YAAY;KACV,IAAI,EACF,MAAM,SACR;KACA,MAAM;MACJ,MAAM;MACN,MAAM;OACJ;OACA;OACA;OACA;OACA;OACA;OACA;OACA;OACA;OACA;OACA;MACF;KACF;KACA,QAAQ;MACN,MAAM;MACN,MAAM,CAAC,UAAU,UAAU;KAC7B;KACA,SAAS,EACP,MAAM,SACR;IACF;GACF;EACF;EACA,wBAAwB;GACtB,MAAM;GACN,aAAa;GACb,OAAO,EACL,MAAM;IACJ;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF,EACF;EACF;EACA,cAAc;GACZ,MAAM,CAAC,UAAU,MAAM;GACvB,YAAY;IACV,MAAM;KACJ,MAAM;KACN,MAAM;IACR;IACA,WAAW;KACT,MAAM;KACN,SAAS;IACX;IACA,aAAa,EACX,MAAM,SACR;GACF;EACF;EACA,cAAc;GACZ,MAAM;GACN,SAAS;GACT,SAAS;EACX;EACA,OAAO;GACL,MAAM;GACN,SAAS;EACX;EACA,SAAS;GACP,MAAM;GACN,OAAO;IACL,MAAM;IACN,YAAY;KACV,IAAI,EACF,MAAM,mCACR;KACA,MAAM,EACJ,MAAM,SACR;KACA,MAAM;MACJ,MAAM;MACN,QAAQ;KACV;KACA,OAAO,EACL,MAAM,SACR;KACA,KAAK,EACH,MAAM,CAAC,UAAU,MAAM,EACzB;IACF;GACF;EACF;CACF;AACF"}
1
+ {"version":3,"file":"definitions.js","names":[],"sources":["../../.generated/schemas/definitions.ts"],"sourcesContent":["export const TICKET_NOTIFICATION_EVENTS = [\n \"ticketCreated\",\n \"ticketAssignedToMe\",\n \"addedAsCollaborator\",\n \"mentionedInTicket\",\n \"messageOnMyTicket\",\n \"ticketResolved\",\n \"ticketCreatedAsObserver\",\n \"messageAsObserver\",\n \"ticketResolvedAsObserver\",\n] as const;\n\nexport type TicketNotificationEvent =\n (typeof TICKET_NOTIFICATION_EVENTS)[number];\n\nexport const NOTIFICATION_CHANNELS = [\"email\", \"sms\", \"push\"] as const;\n\nexport type NotificationChannel = (typeof NOTIFICATION_CHANNELS)[number];\n\nconst defs = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"definitions.json\",\n title: \"Definitions\",\n definitions: {\n id: {\n type: \"string\",\n description: \"Identifier of the object.\",\n },\n systemId: {\n type: \"string\",\n description: \"Identifier of the object, directly related to the system.\",\n },\n systemData: {\n type: \"object\",\n },\n metadata: {\n type: \"object\",\n default: {},\n },\n date: {\n type: [\"string\", \"object\"],\n format: \"date-time\",\n },\n file: {\n type: \"object\",\n required: [\"name\", \"type\", \"data\"],\n properties: {\n name: {\n type: \"string\",\n description: \"Name of the file.\",\n },\n type: {\n type: \"string\",\n description: \"MIME type of the file (e.g. application/pdf).\",\n },\n data: {\n type: \"string\",\n description: \"Base64-encoded data of the file.\",\n },\n },\n },\n address: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n line1: {\n type: \"string\",\n },\n line2: {\n type: \"string\",\n },\n line3: {\n type: \"string\",\n },\n city: {\n type: \"string\",\n },\n state: {\n type: \"string\",\n },\n postalCode: {\n type: \"string\",\n },\n countryCode: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n },\n },\n driver: {\n type: \"string\",\n description: \"Driver used to communicate with the object.\",\n enum: [\n \"adlink\",\n \"avigilon-alta\",\n \"aws-kinesis\",\n \"bacnet\",\n \"benq\",\n \"butler\",\n \"comelit\",\n \"cool-automation\",\n \"crestron\",\n \"dell\",\n \"digital-watchdog\",\n \"distech\",\n \"dmp\",\n \"doorbird\",\n \"dormakaba\",\n \"dsc\",\n \"dsc-itv2\",\n \"earbridge\",\n \"ecobee\",\n \"epson\",\n \"geovision-rs\",\n \"geovision-as-manager\",\n \"honeywell-vista\",\n \"honeywell-resideo\",\n \"igor\",\n \"inncom\",\n \"isapi\",\n \"kohost-k7\",\n \"kohost\",\n \"lapi\",\n \"lg\",\n \"lg-webos\",\n \"linortek\",\n \"lirc\",\n \"mews\",\n \"mht\",\n \"mobile-mule\",\n \"mock\",\n \"modbus\",\n \"napco\",\n \"newline\",\n \"obix\",\n \"one-roster\",\n \"onvif\",\n \"orchid-fusion\",\n \"paxton\",\n \"pdk\",\n \"pelican-wireless\",\n \"power-shades\",\n \"rachio\",\n \"rebrandly\",\n \"relay\",\n \"reolink\",\n \"rtsp\",\n \"salto\",\n \"salto-irn\",\n \"samsung\",\n \"se\",\n \"sendgrid\",\n \"singlewire\",\n \"smartboard\",\n \"sonifi\",\n \"stay-n-touch\",\n \"storable\",\n \"twilio\",\n \"unifi\",\n \"valcom\",\n \"veracross\",\n \"verkada\",\n \"vivotek\",\n \"vizio\",\n \"wisenet\",\n \"zkteco\",\n \"cloudflare-images\",\n \"cloudflare-stream\",\n \"insperia-privacy\",\n ],\n },\n type: {\n type: \"string\",\n enum: [\n \"alarm\",\n \"camera\",\n \"courtesy\",\n \"dimmer\",\n \"gateway\",\n \"lock\",\n \"mediaSource\",\n \"motionSensor\",\n \"switch\",\n \"thermostat\",\n \"windowCovering\",\n ],\n },\n name: {\n type: \"string\",\n },\n alerts: {\n type: \"array\",\n uniqueItems: true,\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"type\", \"status\", \"message\"],\n properties: {\n id: {\n type: \"string\"\n },\n type: {\n type: \"string\",\n enum: [\n \"Battery\",\n \"Button\",\n \"Communication\",\n \"Config\",\n \"Cost\",\n \"Door Ajar\",\n \"Equipment\",\n \"Maintenance\",\n \"Motion\",\n \"Registration\",\n \"Temperature\",\n ],\n },\n status: {\n type: \"string\",\n enum: [\"Active\", \"Resolved\"],\n },\n message: {\n type: \"string\",\n },\n },\n },\n },\n supportedNotifications: {\n type: \"array\",\n uniqueItems: true,\n items: {\n enum: [\n \"button 1\",\n \"button 2\",\n \"button 3\",\n \"button 4\",\n \"button 5\",\n \"idle\",\n \"powerHasBeedApplied\",\n \"acMainsDisconnected\",\n \"acMainsReconnected\",\n \"replaceBattery\",\n \"replaceBatterySoon\",\n \"replaceBatteryNow\",\n \"batteryOk\",\n \"hardwareFailure\",\n \"softwareFailure\",\n \"hardwareFailureWithCode\",\n \"softwareFailureWithCode\",\n \"motionDetection\",\n \"airFilterNeedsCleaned\",\n \"airFilterNeedsReplaced\",\n \"smokeDetected\",\n \"outsideSafeTemperatureRange\",\n \"outsideSafeHumidityRange\",\n \"scheduleMaintenance\",\n \"doorAjar\",\n \"communicationFailure\",\n \"communicationOk\",\n \"burglarAlarm\",\n \"fireAlarm\",\n \"powerTrouble\",\n \"monitoringTrouble\",\n \"bellTrouble\",\n \"configIssue\",\n ],\n },\n },\n notification: {\n type: [\"object\", \"null\"],\n properties: {\n name: {\n type: \"string\",\n $ref: \"#/definitions/supportedNotifications/items\",\n },\n timestamp: {\n type: \"number\",\n minimum: 1655907956593,\n },\n description: {\n type: \"string\",\n },\n },\n },\n batteryLevel: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n watts: {\n type: \"number\",\n minimum: 0,\n },\n revenue: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n date: {\n type: \"string\",\n format: \"date-time\",\n },\n price: {\n type: \"number\",\n },\n tax: {\n type: [\"number\", \"null\"],\n },\n },\n },\n },\n ticketNotificationEvent: {\n type: \"string\",\n enum: TICKET_NOTIFICATION_EVENTS,\n },\n notificationChannel: {\n type: \"string\",\n enum: NOTIFICATION_CHANNELS,\n },\n },\n} as const;\n\nexport type ISODateString = ReturnType<Date[\"toISOString\"]>;\n\nexport { defs as definitionsSchema };\nexport default defs;\n"],"mappings":";AAAA,MAAa,6BAA6B;CACxC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAKA,MAAa,wBAAwB;CAAC;CAAS;CAAO;AAAM;AAI5D,MAAM,OAAO;CACX,SAAS;CACT,KAAK;CACL,OAAO;CACP,aAAa;EACX,IAAI;GACF,MAAM;GACN,aAAa;EACf;EACA,UAAU;GACR,MAAM;GACN,aAAa;EACf;EACA,YAAY,EACV,MAAM,SACR;EACA,UAAU;GACR,MAAM;GACN,SAAS,CAAC;EACZ;EACA,MAAM;GACJ,MAAM,CAAC,UAAU,QAAQ;GACzB,QAAQ;EACV;EACA,MAAM;GACJ,MAAM;GACN,UAAU;IAAC;IAAQ;IAAQ;GAAM;GACjC,YAAY;IACV,MAAM;KACJ,MAAM;KACN,aAAa;IACf;IACA,MAAM;KACJ,MAAM;KACN,aAAa;IACf;IACA,MAAM;KACJ,MAAM;KACN,aAAa;IACf;GACF;EACF;EACA,SAAS;GACP,MAAM;GACN,sBAAsB;GACtB,YAAY;IACV,IAAI,EACF,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,MAAM,EACJ,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,YAAY,EACV,MAAM,SACR;IACA,aAAa;KACX,MAAM;KACN,WAAW;KACX,WAAW;IACb;GACF;EACF;EACA,QAAQ;GACN,MAAM;GACN,aAAa;GACb,MAAM;IACJ;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF;EACF;EACA,MAAM;GACJ,MAAM;GACN,MAAM;IACJ;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF;EACF;EACA,MAAM,EACJ,MAAM,SACR;EACA,QAAQ;GACN,MAAM;GACN,aAAa;GACb,OAAO;IACL,MAAM;IACN,sBAAsB;IACtB,UAAU;KAAC;KAAQ;KAAU;IAAS;IACtC,YAAY;KACV,IAAI,EACF,MAAM,SACR;KACA,MAAM;MACJ,MAAM;MACN,MAAM;OACJ;OACA;OACA;OACA;OACA;OACA;OACA;OACA;OACA;OACA;OACA;MACF;KACF;KACA,QAAQ;MACN,MAAM;MACN,MAAM,CAAC,UAAU,UAAU;KAC7B;KACA,SAAS,EACP,MAAM,SACR;IACF;GACF;EACF;EACA,wBAAwB;GACtB,MAAM;GACN,aAAa;GACb,OAAO,EACL,MAAM;IACJ;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF,EACF;EACF;EACA,cAAc;GACZ,MAAM,CAAC,UAAU,MAAM;GACvB,YAAY;IACV,MAAM;KACJ,MAAM;KACN,MAAM;IACR;IACA,WAAW;KACT,MAAM;KACN,SAAS;IACX;IACA,aAAa,EACX,MAAM,SACR;GACF;EACF;EACA,cAAc;GACZ,MAAM;GACN,SAAS;GACT,SAAS;EACX;EACA,OAAO;GACL,MAAM;GACN,SAAS;EACX;EACA,SAAS;GACP,MAAM;GACN,OAAO;IACL,MAAM;IACN,YAAY;KACV,IAAI,EACF,MAAM,mCACR;KACA,MAAM,EACJ,MAAM,SACR;KACA,MAAM;MACJ,MAAM;MACN,QAAQ;KACV;KACA,OAAO,EACL,MAAM,SACR;KACA,KAAK,EACH,MAAM,CAAC,UAAU,MAAM,EACzB;IACF;GACF;EACF;EACA,yBAAyB;GACvB,MAAM;GACN,MAAM;EACR;EACA,qBAAqB;GACnB,MAAM;GACN,MAAM;EACR;CACF;AACF"}
@@ -36,7 +36,7 @@ export declare const issueSchema: {
36
36
  readonly properties: {
37
37
  readonly category: {
38
38
  readonly type: "string";
39
- readonly enum: readonly ["hvac", "access-control", "lighting", "shades", "irrigation", "cameras", "alarms", "pa", "media"];
39
+ readonly enum: readonly ["hvac", "access-control", "lighting", "shades", "irrigation", "cameras", "alarms", "pa", "media", "other"];
40
40
  readonly description: "Canonical System Category slug. Derived from (device.type, device.discriminator) at notification time.";
41
41
  };
42
42
  readonly notification: {
@@ -8,7 +8,8 @@ const SYSTEM_CATEGORIES = [
8
8
  "cameras",
9
9
  "alarms",
10
10
  "pa",
11
- "media"
11
+ "media",
12
+ "other"
12
13
  ];
13
14
  const nullableRoutingOverrideSchema = { oneOf: [{
14
15
  type: "object",
@@ -1 +1 @@
1
- {"version":3,"file":"issue.js","names":[],"sources":["../../.generated/schemas/issue.ts"],"sourcesContent":["import type { FromSchema } from \"json-schema-to-ts\";\nimport defs, { ISODateString } from \"./definitions\";\nimport { ticketSchema } from \"./ticket\";\n\nconst SYSTEM_CATEGORIES = [\n \"hvac\",\n \"access-control\",\n \"lighting\",\n \"shades\",\n \"irrigation\",\n \"cameras\",\n \"alarms\",\n \"pa\",\n \"media\",\n] as const;\n\nconst routingOverrideSchema = {\n type: \"object\",\n additionalProperties: false,\n properties: {\n assignedTo: {\n type: [\"object\", \"null\"],\n additionalProperties: false,\n required: [\"id\", \"discriminator\"],\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n },\n },\n },\n priority: {\n $ref: \"ticket.json#/properties/priority\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n notify: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n },\n} as const;\n\nconst nullableRoutingOverrideSchema = {\n oneOf: [routingOverrideSchema, { type: \"null\" }],\n} as const;\n\nexport const issueSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"issue.json\",\n title: \"Issue\",\n description: \"An issue associated with ticketing and concierge.\",\n type: \"object\",\n required: [\"id\", \"type\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n enum: [\"issue\"],\n default: \"issue\",\n },\n name: {\n type: \"string\",\n },\n description: {\n type: \"string\",\n },\n departmentId: {\n type: \"string\",\n description:\n \"The ID of the department that this issue is associated with. Departments are org-level entities, so this is one value per issue (no per-property override).\",\n },\n system: {\n type: \"object\",\n description:\n \"Present if this is a System Issue (driven by a device notification). Absence means User Issue.\",\n additionalProperties: false,\n required: [\"category\", \"notification\"],\n properties: {\n category: {\n type: \"string\",\n enum: SYSTEM_CATEGORIES,\n description:\n \"Canonical System Category slug. Derived from (device.type, device.discriminator) at notification time.\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/supportedNotifications/items\",\n description:\n \"The device notification name this issue corresponds to.\",\n },\n excludedEntities: {\n type: \"array\",\n description:\n \"Device IDs muted for this issue. Devices in this list never trigger ticket creation.\",\n items: {\n type: \"string\",\n },\n default: [],\n },\n },\n },\n routing: {\n type: \"object\",\n additionalProperties: false,\n description:\n \"Per-property routing overrides on top of a single org-level default. null at any level means suppressed.\",\n default: { default: {}, properties: {} },\n properties: {\n default: {\n ...nullableRoutingOverrideSchema,\n description:\n \"Org-level default routing applied to every property unless overridden. null means suppressed org-wide.\",\n },\n properties: {\n type: \"object\",\n description:\n \"Sparse per-property overrides keyed by propertyId. Fields omitted from an entry fall back to the org-level default. null entry means suppressed at that property.\",\n additionalProperties: nullableRoutingOverrideSchema,\n default: {},\n },\n },\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type IssueSchema = FromSchema<\n typeof issueSchema,\n {\n references: [typeof defs, typeof ticketSchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":";AAIA,MAAM,oBAAoB;CACxB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAiDA,MAAM,gCAAgC,EACpC,OAAO,CAAC;CA/CR,MAAM;CACN,sBAAsB;CACtB,YAAY;EACV,YAAY;GACV,MAAM,CAAC,UAAU,MAAM;GACvB,sBAAsB;GACtB,UAAU,CAAC,MAAM,eAAe;GAChC,YAAY;IACV,IAAI,EACF,MAAM,SACR;IACA,eAAe;KACb,MAAM;KACN,MAAM,CAAC,QAAQ,QAAQ;IACzB;GACF;EACF;EACA,UAAU,EACR,MAAM,mCACR;EACA,MAAM;GACJ,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,QAAQ;GACN,MAAM;GACN,OAAO;IACL,MAAM;IACN,UAAU,CAAC,MAAM,eAAe;IAChC,sBAAsB;IACtB,YAAY;KACV,IAAI,EACF,MAAM,SACR;KACA,eAAe;MACb,MAAM;MACN,MAAM,CAAC,MAAM;KACf;IACF;GACF;EACF;CACF;AAI4B,GAAG,EAAE,MAAM,OAAO,CAAC,EACjD;AAEA,MAAa,cAAc;CACzB,SAAS;CACT,KAAK;CACL,OAAO;CACP,aAAa;CACb,MAAM;CACN,UAAU;EAAC;EAAM;EAAQ;CAAM;CAC/B,sBAAsB;CACtB,YAAY;EACV,IAAI,EACF,MAAM,mCACR;EACA,MAAM;GACJ,MAAM;GACN,MAAM,CAAC,OAAO;GACd,SAAS;EACX;EACA,MAAM,EACJ,MAAM,SACR;EACA,aAAa,EACX,MAAM,SACR;EACA,cAAc;GACZ,MAAM;GACN,aACE;EACJ;EACA,QAAQ;GACN,MAAM;GACN,aACE;GACF,sBAAsB;GACtB,UAAU,CAAC,YAAY,cAAc;GACrC,YAAY;IACV,UAAU;KACR,MAAM;KACN,MAAM;KACN,aACE;IACJ;IACA,cAAc;KACZ,MAAM;KACN,aACE;IACJ;IACA,kBAAkB;KAChB,MAAM;KACN,aACE;KACF,OAAO,EACL,MAAM,SACR;KACA,SAAS,CAAC;IACZ;GACF;EACF;EACA,SAAS;GACP,MAAM;GACN,sBAAsB;GACtB,aACE;GACF,SAAS;IAAE,SAAS,CAAC;IAAG,YAAY,CAAC;GAAE;GACvC,YAAY;IACV,SAAS;KACP,GAAG;KACH,aACE;IACJ;IACA,YAAY;KACV,MAAM;KACN,aACE;KACF,sBAAsB;KACtB,SAAS,CAAC;IACZ;GACF;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;CACF;AACF"}
1
+ {"version":3,"file":"issue.js","names":[],"sources":["../../.generated/schemas/issue.ts"],"sourcesContent":["import type { FromSchema } from \"json-schema-to-ts\";\nimport defs, { ISODateString } from \"./definitions\";\nimport { ticketSchema } from \"./ticket\";\n\nconst SYSTEM_CATEGORIES = [\n \"hvac\",\n \"access-control\",\n \"lighting\",\n \"shades\",\n \"irrigation\",\n \"cameras\",\n \"alarms\",\n \"pa\",\n \"media\",\n \"other\",\n] as const;\n\nconst routingOverrideSchema = {\n type: \"object\",\n additionalProperties: false,\n properties: {\n assignedTo: {\n type: [\"object\", \"null\"],\n additionalProperties: false,\n required: [\"id\", \"discriminator\"],\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n },\n },\n },\n priority: {\n $ref: \"ticket.json#/properties/priority\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n notify: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n },\n} as const;\n\nconst nullableRoutingOverrideSchema = {\n oneOf: [routingOverrideSchema, { type: \"null\" }],\n} as const;\n\nexport const issueSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"issue.json\",\n title: \"Issue\",\n description: \"An issue associated with ticketing and concierge.\",\n type: \"object\",\n required: [\"id\", \"type\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n enum: [\"issue\"],\n default: \"issue\",\n },\n name: {\n type: \"string\",\n },\n description: {\n type: \"string\",\n },\n departmentId: {\n type: \"string\",\n description:\n \"The ID of the department that this issue is associated with. Departments are org-level entities, so this is one value per issue (no per-property override).\",\n },\n system: {\n type: \"object\",\n description:\n \"Present if this is a System Issue (driven by a device notification). Absence means User Issue.\",\n additionalProperties: false,\n required: [\"category\", \"notification\"],\n properties: {\n category: {\n type: \"string\",\n enum: SYSTEM_CATEGORIES,\n description:\n \"Canonical System Category slug. Derived from (device.type, device.discriminator) at notification time.\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/supportedNotifications/items\",\n description:\n \"The device notification name this issue corresponds to.\",\n },\n excludedEntities: {\n type: \"array\",\n description:\n \"Device IDs muted for this issue. Devices in this list never trigger ticket creation.\",\n items: {\n type: \"string\",\n },\n default: [],\n },\n },\n },\n routing: {\n type: \"object\",\n additionalProperties: false,\n description:\n \"Per-property routing overrides on top of a single org-level default. null at any level means suppressed.\",\n default: { default: {}, properties: {} },\n properties: {\n default: {\n ...nullableRoutingOverrideSchema,\n description:\n \"Org-level default routing applied to every property unless overridden. null means suppressed org-wide.\",\n },\n properties: {\n type: \"object\",\n description:\n \"Sparse per-property overrides keyed by propertyId. Fields omitted from an entry fall back to the org-level default. null entry means suppressed at that property.\",\n additionalProperties: nullableRoutingOverrideSchema,\n default: {},\n },\n },\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type IssueSchema = FromSchema<\n typeof issueSchema,\n {\n references: [typeof defs, typeof ticketSchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":";AAIA,MAAM,oBAAoB;CACxB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAiDA,MAAM,gCAAgC,EACpC,OAAO,CAAC;CA/CR,MAAM;CACN,sBAAsB;CACtB,YAAY;EACV,YAAY;GACV,MAAM,CAAC,UAAU,MAAM;GACvB,sBAAsB;GACtB,UAAU,CAAC,MAAM,eAAe;GAChC,YAAY;IACV,IAAI,EACF,MAAM,SACR;IACA,eAAe;KACb,MAAM;KACN,MAAM,CAAC,QAAQ,QAAQ;IACzB;GACF;EACF;EACA,UAAU,EACR,MAAM,mCACR;EACA,MAAM;GACJ,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,QAAQ;GACN,MAAM;GACN,OAAO;IACL,MAAM;IACN,UAAU,CAAC,MAAM,eAAe;IAChC,sBAAsB;IACtB,YAAY;KACV,IAAI,EACF,MAAM,SACR;KACA,eAAe;MACb,MAAM;MACN,MAAM,CAAC,MAAM;KACf;IACF;GACF;EACF;CACF;AAI4B,GAAG,EAAE,MAAM,OAAO,CAAC,EACjD;AAEA,MAAa,cAAc;CACzB,SAAS;CACT,KAAK;CACL,OAAO;CACP,aAAa;CACb,MAAM;CACN,UAAU;EAAC;EAAM;EAAQ;CAAM;CAC/B,sBAAsB;CACtB,YAAY;EACV,IAAI,EACF,MAAM,mCACR;EACA,MAAM;GACJ,MAAM;GACN,MAAM,CAAC,OAAO;GACd,SAAS;EACX;EACA,MAAM,EACJ,MAAM,SACR;EACA,aAAa,EACX,MAAM,SACR;EACA,cAAc;GACZ,MAAM;GACN,aACE;EACJ;EACA,QAAQ;GACN,MAAM;GACN,aACE;GACF,sBAAsB;GACtB,UAAU,CAAC,YAAY,cAAc;GACrC,YAAY;IACV,UAAU;KACR,MAAM;KACN,MAAM;KACN,aACE;IACJ;IACA,cAAc;KACZ,MAAM;KACN,aACE;IACJ;IACA,kBAAkB;KAChB,MAAM;KACN,aACE;KACF,OAAO,EACL,MAAM,SACR;KACA,SAAS,CAAC;IACZ;GACF;EACF;EACA,SAAS;GACP,MAAM;GACN,sBAAsB;GACtB,aACE;GACF,SAAS;IAAE,SAAS,CAAC;IAAG,YAAY,CAAC;GAAE;GACvC,YAAY;IACV,SAAS;KACP,GAAG;KACH,aACE;IACJ;IACA,YAAY;KACV,MAAM;KACN,aACE;KACF,sBAAsB;KACtB,SAAS,CAAC;IACZ;GACF;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;CACF;AACF"}
@@ -150,6 +150,35 @@ export declare const organizationSchema: {
150
150
  readonly type: readonly ["string", "integer"];
151
151
  readonly default: 1;
152
152
  };
153
+ readonly autoCloseAfterMinutes: {
154
+ readonly type: "integer";
155
+ readonly description: "Minutes a solved Ticket waits before it is automatically closed. Always on; read when the close job is scheduled.";
156
+ readonly default: 10080;
157
+ readonly minimum: 5;
158
+ };
159
+ readonly notifications: {
160
+ readonly type: "array";
161
+ readonly description: "Org-wide ticket notification defaults: the starting channel set per event, and whether members may turn an event off. Read when resolving a member's effective channels.";
162
+ readonly items: {
163
+ readonly type: "object";
164
+ readonly additionalProperties: false;
165
+ readonly required: readonly ["discriminator", "channels", "locked"];
166
+ readonly properties: {
167
+ readonly discriminator: {
168
+ readonly $ref: "definitions.json#/definitions/ticketNotificationEvent";
169
+ };
170
+ readonly channels: {
171
+ readonly type: "array";
172
+ readonly items: {
173
+ readonly $ref: "definitions.json#/definitions/notificationChannel";
174
+ };
175
+ };
176
+ readonly locked: {
177
+ readonly type: "boolean";
178
+ };
179
+ };
180
+ };
181
+ };
153
182
  };
154
183
  };
155
184
  readonly departments: {
@@ -235,3 +264,12 @@ export type OrganizationSchema = FromSchema<typeof organizationSchema, {
235
264
  }
236
265
  ];
237
266
  }>;
267
+ type ConciergeTickets = NonNullable<NonNullable<NonNullable<OrganizationSchema["features"]>["Concierge"]>["tickets"]>;
268
+ /** One org-wide ticket notification default: channels + lock for a single event. */
269
+ export type OrgNotificationDefaultEntry = NonNullable<ConciergeTickets["notifications"]>[number];
270
+ /** Response envelope for the org notification defaults endpoints. */
271
+ export interface OrgNotificationDefaults {
272
+ organizationId: string;
273
+ notifications: OrgNotificationDefaultEntry[];
274
+ }
275
+ export {};
@@ -114,10 +114,39 @@ const organizationSchema = {
114
114
  properties: {
115
115
  tickets: {
116
116
  type: "object",
117
- properties: { nextTicketNumber: {
118
- type: ["string", "integer"],
119
- default: 1
120
- } }
117
+ properties: {
118
+ nextTicketNumber: {
119
+ type: ["string", "integer"],
120
+ default: 1
121
+ },
122
+ autoCloseAfterMinutes: {
123
+ type: "integer",
124
+ description: "Minutes a solved Ticket waits before it is automatically closed. Always on; read when the close job is scheduled.",
125
+ default: 10080,
126
+ minimum: 5
127
+ },
128
+ notifications: {
129
+ type: "array",
130
+ description: "Org-wide ticket notification defaults: the starting channel set per event, and whether members may turn an event off. Read when resolving a member's effective channels.",
131
+ items: {
132
+ type: "object",
133
+ additionalProperties: false,
134
+ required: [
135
+ "discriminator",
136
+ "channels",
137
+ "locked"
138
+ ],
139
+ properties: {
140
+ discriminator: { $ref: "definitions.json#/definitions/ticketNotificationEvent" },
141
+ channels: {
142
+ type: "array",
143
+ items: { $ref: "definitions.json#/definitions/notificationChannel" }
144
+ },
145
+ locked: { type: "boolean" }
146
+ }
147
+ }
148
+ }
149
+ }
121
150
  },
122
151
  departments: {
123
152
  type: "object",
@@ -1 +1 @@
1
- {"version":3,"file":"organization.js","names":[],"sources":["../../.generated/schemas/organization.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const organizationSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"organization.json\",\n title: \"Organization\",\n type: \"object\",\n description:\n \"An organization is a group or entity that subscribes to Kohost software.\",\n required: [\"id\", \"type\", \"accountNumber\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"organization\",\n enum: [\"organization\"],\n },\n accountNumber: {\n type: [\"number\", \"null\"],\n },\n name: {\n type: \"string\",\n },\n smsNumber: {\n type: \"string\",\n },\n properties: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n appManifest: {\n type: \"object\",\n\n properties: {\n name: {\n type: \"string\",\n },\n short_name: {\n type: \"string\",\n },\n scope: {\n type: \"string\",\n },\n start_url: {\n type: \"string\",\n },\n themeColor: {\n type: \"string\",\n },\n backgroundColor: {\n type: \"string\",\n },\n display: {\n type: \"string\",\n enum: [\"fullscreen\", \"standalone\", \"minimal-ui\", \"browser\"],\n default: \"fullscreen\",\n },\n orientation: {\n type: \"string\",\n enum: [\"portrait\", \"landscape\"],\n default: \"portrait\",\n },\n splash: {\n type: \"object\",\n properties: {\n src: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n },\n sizes: {\n type: \"string\",\n },\n },\n },\n icons: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n src: {\n type: \"string\",\n },\n sizes: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n },\n },\n },\n },\n logo: {\n type: \"object\",\n properties: {\n src: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n },\n sizes: {\n type: \"string\",\n },\n },\n },\n },\n default: {\n name: \"Kohost\",\n short_name: \"Kohost\",\n start_url: \"/\",\n scope: \"/\",\n display: \"fullscreen\",\n orientation: \"portrait\",\n theme_color: \"#1d1f22\",\n background_color: \"#1d1f22\",\n icons: [\n {\n src: \"https://images.kohost.io/cdn-cgi/imagedelivery/vcVX2aBwdFSYr66spcFKaA/9c85047f-ccba-4b1c-3070-5463fbe93b00/w=512\",\n sizes: \"512x512\",\n type: \"image/png\",\n },\n ],\n splash: {\n src: \"https://images.kohost.io/cdn-cgi/imagedelivery/vcVX2aBwdFSYr66spcFKaA/034fb112-5326-4d37-373e-d1cc2a4d0400/w=1500\",\n sizes: \"1500x800\",\n type: \"image/jpg\",\n },\n logo: {\n src: \"https://images.kohost.io/cdn-cgi/imagedelivery/vcVX2aBwdFSYr66spcFKaA/1e54c54d-3bac-4745-f46f-c2f98036af00/h=75\",\n sizes: \"300x75\",\n type: \"image/png\",\n },\n },\n },\n features: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n Concierge: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n tickets: {\n type: \"object\",\n properties: {\n nextTicketNumber: {\n type: [\"string\", \"integer\"],\n default: 1,\n },\n },\n },\n departments: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n order: {\n type: \"array\",\n description:\n \"Org-wide curated Department ID order for the Concierge settings UI. The `Unassigned` and `System` pseudo-groups are pinned at the bottom by the UI and have no entries here.\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n issues: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n order: {\n type: \"object\",\n description:\n \"Org-wide curated Issue ordering for the Concierge settings UI, mapping each Department ID to its ordered Issue IDs.\",\n additionalProperties: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n },\n },\n },\n SOS: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n types: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n order: {\n type: \"array\",\n description:\n \"Org-wide curated SOS Type ID order. Each Property renders its subset of \" +\n \"SOS Types in this order; org-wide and per-property-selected types share one \" +\n \"order. IDs for deleted SOS Types are ignored on read; SOS Types not yet listed \" +\n \"sort to the end alphabetically.\",\n items: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n credentials: {\n type: \"object\",\n additionalProperties: true,\n properties: {\n webhookToken: { type: \"string\" },\n },\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type OrganizationSchema = FromSchema<\n typeof organizationSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":";AAGA,MAAa,qBAAqB;CAChC,SAAS;CACT,KAAK;CACL,OAAO;CACP,MAAM;CACN,aACE;CACF,UAAU;EAAC;EAAM;EAAQ;EAAiB;CAAM;CAChD,sBAAsB;CACtB,YAAY;EACV,IAAI,EACF,MAAM,mCACR;EACA,MAAM;GACJ,MAAM;GACN,SAAS;GACT,MAAM,CAAC,cAAc;EACvB;EACA,eAAe,EACb,MAAM,CAAC,UAAU,MAAM,EACzB;EACA,MAAM,EACJ,MAAM,SACR;EACA,WAAW,EACT,MAAM,SACR;EACA,YAAY;GACV,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,aAAa;GACX,MAAM;GAEN,YAAY;IACV,MAAM,EACJ,MAAM,SACR;IACA,YAAY,EACV,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,WAAW,EACT,MAAM,SACR;IACA,YAAY,EACV,MAAM,SACR;IACA,iBAAiB,EACf,MAAM,SACR;IACA,SAAS;KACP,MAAM;KACN,MAAM;MAAC;MAAc;MAAc;MAAc;KAAS;KAC1D,SAAS;IACX;IACA,aAAa;KACX,MAAM;KACN,MAAM,CAAC,YAAY,WAAW;KAC9B,SAAS;IACX;IACA,QAAQ;KACN,MAAM;KACN,YAAY;MACV,KAAK,EACH,MAAM,SACR;MACA,MAAM,EACJ,MAAM,SACR;MACA,OAAO,EACL,MAAM,SACR;KACF;IACF;IACA,OAAO;KACL,MAAM;KACN,OAAO;MACL,MAAM;MACN,YAAY;OACV,KAAK,EACH,MAAM,SACR;OACA,OAAO,EACL,MAAM,SACR;OACA,MAAM,EACJ,MAAM,SACR;MACF;KACF;IACF;IACA,MAAM;KACJ,MAAM;KACN,YAAY;MACV,KAAK,EACH,MAAM,SACR;MACA,MAAM,EACJ,MAAM,SACR;MACA,OAAO,EACL,MAAM,SACR;KACF;IACF;GACF;GACA,SAAS;IACP,MAAM;IACN,YAAY;IACZ,WAAW;IACX,OAAO;IACP,SAAS;IACT,aAAa;IACb,aAAa;IACb,kBAAkB;IAClB,OAAO,CACL;KACE,KAAK;KACL,OAAO;KACP,MAAM;IACR,CACF;IACA,QAAQ;KACN,KAAK;KACL,OAAO;KACP,MAAM;IACR;IACA,MAAM;KACJ,KAAK;KACL,OAAO;KACP,MAAM;IACR;GACF;EACF;EACA,UAAU;GACR,MAAM;GACN,sBAAsB;GACtB,YAAY;IACV,WAAW;KACT,MAAM;KACN,sBAAsB;KACtB,YAAY;MACV,SAAS;OACP,MAAM;OACN,YAAY,EACV,kBAAkB;QAChB,MAAM,CAAC,UAAU,SAAS;QAC1B,SAAS;OACX,EACF;MACF;MACA,aAAa;OACX,MAAM;OACN,sBAAsB;OACtB,YAAY,EACV,OAAO;QACL,MAAM;QACN,aACE;QACF,OAAO,EACL,MAAM,SACR;OACF,EACF;MACF;MACA,QAAQ;OACN,MAAM;OACN,sBAAsB;OACtB,YAAY,EACV,OAAO;QACL,MAAM;QACN,aACE;QACF,sBAAsB;SACpB,MAAM;SACN,OAAO,EACL,MAAM,SACR;QACF;OACF,EACF;MACF;KACF;IACF;IACA,KAAK;KACH,MAAM;KACN,sBAAsB;KACtB,YAAY,EACV,OAAO;MACL,MAAM;MACN,sBAAsB;MACtB,YAAY,EACV,OAAO;OACL,MAAM;OACN,aACE;OAIF,OAAO,EAAE,MAAM,SAAS;MAC1B,EACF;KACF,EACF;IACF;GACF;EACF;EACA,aAAa;GACX,MAAM;GACN,sBAAsB;GACtB,YAAY,EACV,cAAc,EAAE,MAAM,SAAS,EACjC;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;CACF;AACF"}
1
+ {"version":3,"file":"organization.js","names":[],"sources":["../../.generated/schemas/organization.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const organizationSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"organization.json\",\n title: \"Organization\",\n type: \"object\",\n description:\n \"An organization is a group or entity that subscribes to Kohost software.\",\n required: [\"id\", \"type\", \"accountNumber\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"organization\",\n enum: [\"organization\"],\n },\n accountNumber: {\n type: [\"number\", \"null\"],\n },\n name: {\n type: \"string\",\n },\n smsNumber: {\n type: \"string\",\n },\n properties: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n appManifest: {\n type: \"object\",\n\n properties: {\n name: {\n type: \"string\",\n },\n short_name: {\n type: \"string\",\n },\n scope: {\n type: \"string\",\n },\n start_url: {\n type: \"string\",\n },\n themeColor: {\n type: \"string\",\n },\n backgroundColor: {\n type: \"string\",\n },\n display: {\n type: \"string\",\n enum: [\"fullscreen\", \"standalone\", \"minimal-ui\", \"browser\"],\n default: \"fullscreen\",\n },\n orientation: {\n type: \"string\",\n enum: [\"portrait\", \"landscape\"],\n default: \"portrait\",\n },\n splash: {\n type: \"object\",\n properties: {\n src: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n },\n sizes: {\n type: \"string\",\n },\n },\n },\n icons: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n src: {\n type: \"string\",\n },\n sizes: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n },\n },\n },\n },\n logo: {\n type: \"object\",\n properties: {\n src: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n },\n sizes: {\n type: \"string\",\n },\n },\n },\n },\n default: {\n name: \"Kohost\",\n short_name: \"Kohost\",\n start_url: \"/\",\n scope: \"/\",\n display: \"fullscreen\",\n orientation: \"portrait\",\n theme_color: \"#1d1f22\",\n background_color: \"#1d1f22\",\n icons: [\n {\n src: \"https://images.kohost.io/cdn-cgi/imagedelivery/vcVX2aBwdFSYr66spcFKaA/9c85047f-ccba-4b1c-3070-5463fbe93b00/w=512\",\n sizes: \"512x512\",\n type: \"image/png\",\n },\n ],\n splash: {\n src: \"https://images.kohost.io/cdn-cgi/imagedelivery/vcVX2aBwdFSYr66spcFKaA/034fb112-5326-4d37-373e-d1cc2a4d0400/w=1500\",\n sizes: \"1500x800\",\n type: \"image/jpg\",\n },\n logo: {\n src: \"https://images.kohost.io/cdn-cgi/imagedelivery/vcVX2aBwdFSYr66spcFKaA/1e54c54d-3bac-4745-f46f-c2f98036af00/h=75\",\n sizes: \"300x75\",\n type: \"image/png\",\n },\n },\n },\n features: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n Concierge: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n tickets: {\n type: \"object\",\n properties: {\n nextTicketNumber: {\n type: [\"string\", \"integer\"],\n default: 1,\n },\n autoCloseAfterMinutes: {\n type: \"integer\",\n description:\n \"Minutes a solved Ticket waits before it is automatically closed. Always on; read when the close job is scheduled.\",\n default: 10080,\n minimum: 5,\n },\n notifications: {\n type: \"array\",\n description:\n \"Org-wide ticket notification defaults: the starting channel set per event, and whether members may turn an event off. Read when resolving a member's effective channels.\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"discriminator\", \"channels\", \"locked\"],\n properties: {\n discriminator: {\n $ref: \"definitions.json#/definitions/ticketNotificationEvent\",\n },\n channels: {\n type: \"array\",\n items: {\n $ref: \"definitions.json#/definitions/notificationChannel\",\n },\n },\n locked: {\n type: \"boolean\",\n },\n },\n },\n },\n },\n },\n departments: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n order: {\n type: \"array\",\n description:\n \"Org-wide curated Department ID order for the Concierge settings UI. The `Unassigned` and `System` pseudo-groups are pinned at the bottom by the UI and have no entries here.\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n issues: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n order: {\n type: \"object\",\n description:\n \"Org-wide curated Issue ordering for the Concierge settings UI, mapping each Department ID to its ordered Issue IDs.\",\n additionalProperties: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n },\n },\n },\n SOS: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n types: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n order: {\n type: \"array\",\n description:\n \"Org-wide curated SOS Type ID order. Each Property renders its subset of \" +\n \"SOS Types in this order; org-wide and per-property-selected types share one \" +\n \"order. IDs for deleted SOS Types are ignored on read; SOS Types not yet listed \" +\n \"sort to the end alphabetically.\",\n items: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n credentials: {\n type: \"object\",\n additionalProperties: true,\n properties: {\n webhookToken: { type: \"string\" },\n },\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type OrganizationSchema = FromSchema<\n typeof organizationSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n\ntype ConciergeTickets = NonNullable<\n NonNullable<NonNullable<OrganizationSchema[\"features\"]>[\"Concierge\"]>[\"tickets\"]\n>;\n\n/** One org-wide ticket notification default: channels + lock for a single event. */\nexport type OrgNotificationDefaultEntry = NonNullable<\n ConciergeTickets[\"notifications\"]\n>[number];\n\n/** Response envelope for the org notification defaults endpoints. */\nexport interface OrgNotificationDefaults {\n organizationId: string;\n notifications: OrgNotificationDefaultEntry[];\n}\n"],"mappings":";AAGA,MAAa,qBAAqB;CAChC,SAAS;CACT,KAAK;CACL,OAAO;CACP,MAAM;CACN,aACE;CACF,UAAU;EAAC;EAAM;EAAQ;EAAiB;CAAM;CAChD,sBAAsB;CACtB,YAAY;EACV,IAAI,EACF,MAAM,mCACR;EACA,MAAM;GACJ,MAAM;GACN,SAAS;GACT,MAAM,CAAC,cAAc;EACvB;EACA,eAAe,EACb,MAAM,CAAC,UAAU,MAAM,EACzB;EACA,MAAM,EACJ,MAAM,SACR;EACA,WAAW,EACT,MAAM,SACR;EACA,YAAY;GACV,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,aAAa;GACX,MAAM;GAEN,YAAY;IACV,MAAM,EACJ,MAAM,SACR;IACA,YAAY,EACV,MAAM,SACR;IACA,OAAO,EACL,MAAM,SACR;IACA,WAAW,EACT,MAAM,SACR;IACA,YAAY,EACV,MAAM,SACR;IACA,iBAAiB,EACf,MAAM,SACR;IACA,SAAS;KACP,MAAM;KACN,MAAM;MAAC;MAAc;MAAc;MAAc;KAAS;KAC1D,SAAS;IACX;IACA,aAAa;KACX,MAAM;KACN,MAAM,CAAC,YAAY,WAAW;KAC9B,SAAS;IACX;IACA,QAAQ;KACN,MAAM;KACN,YAAY;MACV,KAAK,EACH,MAAM,SACR;MACA,MAAM,EACJ,MAAM,SACR;MACA,OAAO,EACL,MAAM,SACR;KACF;IACF;IACA,OAAO;KACL,MAAM;KACN,OAAO;MACL,MAAM;MACN,YAAY;OACV,KAAK,EACH,MAAM,SACR;OACA,OAAO,EACL,MAAM,SACR;OACA,MAAM,EACJ,MAAM,SACR;MACF;KACF;IACF;IACA,MAAM;KACJ,MAAM;KACN,YAAY;MACV,KAAK,EACH,MAAM,SACR;MACA,MAAM,EACJ,MAAM,SACR;MACA,OAAO,EACL,MAAM,SACR;KACF;IACF;GACF;GACA,SAAS;IACP,MAAM;IACN,YAAY;IACZ,WAAW;IACX,OAAO;IACP,SAAS;IACT,aAAa;IACb,aAAa;IACb,kBAAkB;IAClB,OAAO,CACL;KACE,KAAK;KACL,OAAO;KACP,MAAM;IACR,CACF;IACA,QAAQ;KACN,KAAK;KACL,OAAO;KACP,MAAM;IACR;IACA,MAAM;KACJ,KAAK;KACL,OAAO;KACP,MAAM;IACR;GACF;EACF;EACA,UAAU;GACR,MAAM;GACN,sBAAsB;GACtB,YAAY;IACV,WAAW;KACT,MAAM;KACN,sBAAsB;KACtB,YAAY;MACV,SAAS;OACP,MAAM;OACN,YAAY;QACV,kBAAkB;SAChB,MAAM,CAAC,UAAU,SAAS;SAC1B,SAAS;QACX;QACA,uBAAuB;SACrB,MAAM;SACN,aACE;SACF,SAAS;SACT,SAAS;QACX;QACA,eAAe;SACb,MAAM;SACN,aACE;SACF,OAAO;UACL,MAAM;UACN,sBAAsB;UACtB,UAAU;WAAC;WAAiB;WAAY;UAAQ;UAChD,YAAY;WACV,eAAe,EACb,MAAM,wDACR;WACA,UAAU;YACR,MAAM;YACN,OAAO,EACL,MAAM,oDACR;WACF;WACA,QAAQ,EACN,MAAM,UACR;UACF;SACF;QACF;OACF;MACF;MACA,aAAa;OACX,MAAM;OACN,sBAAsB;OACtB,YAAY,EACV,OAAO;QACL,MAAM;QACN,aACE;QACF,OAAO,EACL,MAAM,SACR;OACF,EACF;MACF;MACA,QAAQ;OACN,MAAM;OACN,sBAAsB;OACtB,YAAY,EACV,OAAO;QACL,MAAM;QACN,aACE;QACF,sBAAsB;SACpB,MAAM;SACN,OAAO,EACL,MAAM,SACR;QACF;OACF,EACF;MACF;KACF;IACF;IACA,KAAK;KACH,MAAM;KACN,sBAAsB;KACtB,YAAY,EACV,OAAO;MACL,MAAM;MACN,sBAAsB;MACtB,YAAY,EACV,OAAO;OACL,MAAM;OACN,aACE;OAIF,OAAO,EAAE,MAAM,SAAS;MAC1B,EACF;KACF,EACF;IACF;GACF;EACF;EACA,aAAa;GACX,MAAM;GACN,sBAAsB;GACtB,YAAY,EACV,cAAc,EAAE,MAAM,SAAS,EACjC;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;CACF;AACF"}
@@ -160,12 +160,6 @@ export declare const propertySchema: {
160
160
  readonly type: "boolean";
161
161
  readonly default: true;
162
162
  };
163
- readonly newMessageChannel: {
164
- readonly type: readonly ["string", "null"];
165
- readonly enum: readonly ["sms", "email"];
166
- readonly default: "sms";
167
- readonly description: "Determines how users should be notified of new messages in the concierge system";
168
- };
169
163
  };
170
164
  };
171
165
  readonly SOS: {
@@ -123,12 +123,6 @@ const propertySchema = {
123
123
  ratings: {
124
124
  type: "boolean",
125
125
  default: true
126
- },
127
- newMessageChannel: {
128
- type: ["string", "null"],
129
- enum: ["sms", "email"],
130
- default: "sms",
131
- description: "Determines how users should be notified of new messages in the concierge system"
132
126
  }
133
127
  }
134
128
  },
@@ -1 +1 @@
1
- {"version":3,"file":"property.js","names":[],"sources":["../../.generated/schemas/property.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const propertySchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"property.json\",\n title: \"Property\",\n type: \"object\",\n description: \"A property is a physical asset or building\",\n required: [\"id\", \"name\", \"type\", \"organization\", \"timezone\", \"discriminator\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n default: \"property\",\n enum: [\"property\"],\n },\n discriminator: {\n type: \"string\",\n enum: [\"education\", \"commercial\"],\n },\n organization: {\n type: \"string\",\n description: \"Reference (id) to the organization that owns this property\",\n },\n testModeEnabled: {\n type: \"boolean\",\n },\n testMode: {\n type: \"object\",\n properties: {\n notificationEmails: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description:\n \"Only users with these email addresses will receive notifications in test mode, including sms, email, or push.\",\n },\n notificationEmailDomains: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description:\n \"Only users with email addreses ending in these domains will receive notifications in test mode, including sms, email, or push.\",\n },\n },\n },\n timezone: {\n type: \"string\",\n description: \"IANA timezone string\",\n pattern: \"^([a-zA-Z]+/[a-zA-Z_]+)$\",\n examples: [\"America/New_York\", \"America/Los_Angeles\"],\n },\n smsNumber: {\n type: \"string\",\n },\n voiceNumber: {\n type: \"string\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n latitude: {\n type: \"number\",\n },\n longitude: {\n type: \"number\",\n },\n features: {\n type: \"object\",\n properties: {\n SmartBuilding: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n alarmConfig: {\n type: \"object\",\n patternProperties: {\n \"^[a-zA-Z0-9]+$\": {\n type: \"object\",\n properties: {\n zoneLockMap: {\n type: \"object\",\n description: \"Maps zone numbers to lock ids\",\n additionalProperties: { type: \"string\" },\n },\n },\n },\n },\n examples: [\n {\n wZz7hucY: {\n zoneLockMap: {\n 1: \"wc87hucc\",\n 2: \"bc86hzxc\",\n 3: \"zv5ah5jv\",\n },\n },\n },\n ],\n },\n cameraConfig: {\n type: \"object\",\n doorStationConfig: {\n type: \"object\",\n patternProperties: {\n \"^[a-zA-Z0-9]+$\": {\n type: \"object\",\n properties: {\n lockIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\n description:\n \"List of lock ids that will be available for control from this door station\",\n },\n },\n },\n },\n },\n examples: [\n {\n wZz7hucY: {\n lockIds: [\"wc87hucb\", \"wc87hucd\"],\n },\n },\n ],\n },\n },\n additionalProperties: false,\n },\n Concierge: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n timeTracking: {\n type: \"boolean\",\n default: false,\n },\n feedback: {\n type: \"boolean\",\n default: true,\n },\n ratings: {\n type: \"boolean\",\n default: true,\n },\n newMessageChannel: {\n type: [\"string\", \"null\"],\n enum: [\"sms\", \"email\"],\n default: \"sms\",\n description:\n \"Determines how users should be notified of new messages in the concierge system\",\n },\n },\n },\n SOS: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n active: {\n type: \"boolean\",\n },\n activatedAt: {\n type: [\"string\", \"null\"],\n format: \"date-time\",\n },\n activatedBy: {\n type: [\"object\", \"null\"],\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n enum: [\"user\", \"device\", \"automation\"],\n },\n },\n },\n activatedMessage: {\n type: [\"string\", \"null\"],\n },\n activeSOSTypeIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n deactivatedAt: {\n type: [\"string\", \"null\"],\n format: \"date-time\",\n },\n deactivatedBy: {\n type: [\"object\", \"null\"],\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n enum: [\"user\", \"device\", \"automation\"],\n },\n },\n },\n },\n },\n Automations: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n Resources: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n },\n additionalProperties: false,\n },\n },\n additionalProperties: false,\n default: {\n SmartBuilding: {},\n },\n },\n notifications: {\n type: \"object\",\n properties: {\n email: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n sms: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n push: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n },\n additionalProperties: false,\n default: {\n email: {\n enabled: false,\n },\n sms: {\n enabled: false,\n },\n push: {\n enabled: false,\n },\n },\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n credentials: {\n type: \"object\",\n additionalProperties: true,\n },\n },\n} as const;\n\nexport type PropertySchema = FromSchema<\n typeof propertySchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":";AAGA,MAAa,iBAAiB;CAC5B,SAAS;CACT,KAAK;CACL,OAAO;CACP,MAAM;CACN,aAAa;CACb,UAAU;EAAC;EAAM;EAAQ;EAAQ;EAAgB;EAAY;CAAe;CAC5E,YAAY;EACV,IAAI,EACF,MAAM,mCACR;EACA,MAAM,EACJ,MAAM,SACR;EACA,MAAM;GACJ,MAAM;GACN,SAAS;GACT,MAAM,CAAC,UAAU;EACnB;EACA,eAAe;GACb,MAAM;GACN,MAAM,CAAC,aAAa,YAAY;EAClC;EACA,cAAc;GACZ,MAAM;GACN,aAAa;EACf;EACA,iBAAiB,EACf,MAAM,UACR;EACA,UAAU;GACR,MAAM;GACN,YAAY;IACV,oBAAoB;KAClB,MAAM;KACN,OAAO,EACL,MAAM,SACR;KACA,aACE;IACJ;IACA,0BAA0B;KACxB,MAAM;KACN,OAAO,EACL,MAAM,SACR;KACA,aACE;IACJ;GACF;EACF;EACA,UAAU;GACR,MAAM;GACN,aAAa;GACb,SAAS;GACT,UAAU,CAAC,oBAAoB,qBAAqB;EACtD;EACA,WAAW,EACT,MAAM,SACR;EACA,aAAa,EACX,MAAM,SACR;EACA,MAAM;GACJ,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,SAAS,EACP,MAAM,wCACR;EACA,UAAU,EACR,MAAM,SACR;EACA,WAAW,EACT,MAAM,SACR;EACA,UAAU;GACR,MAAM;GACN,YAAY;IACV,eAAe;KACb,MAAM;KACN,YAAY;MACV,SAAS;OACP,MAAM;OACN,SAAS;MACX;MACA,aAAa;OACX,MAAM;OACN,mBAAmB,EACjB,kBAAkB;QAChB,MAAM;QACN,YAAY,EACV,aAAa;SACX,MAAM;SACN,aAAa;SACb,sBAAsB,EAAE,MAAM,SAAS;QACzC,EACF;OACF,EACF;OACA,UAAU,CACR,EACE,UAAU,EACR,aAAa;QACX,GAAG;QACH,GAAG;QACH,GAAG;OACL,EACF,EACF,CACF;MACF;MACA,cAAc;OACZ,MAAM;OACN,mBAAmB;QACjB,MAAM;QACN,mBAAmB,EACjB,kBAAkB;SAChB,MAAM;SACN,YAAY,EACV,SAAS;UACP,MAAM;UACN,OAAO,EACL,MAAM,SACR;UACA,SAAS,CAAC;UACV,aACE;SACJ,EACF;QACF,EACF;OACF;OACA,UAAU,CACR,EACE,UAAU,EACR,SAAS,CAAC,YAAY,UAAU,EAClC,EACF,CACF;MACF;KACF;KACA,sBAAsB;IACxB;IACA,WAAW;KACT,MAAM;KACN,YAAY;MACV,SAAS;OACP,MAAM;OACN,SAAS;MACX;MACA,cAAc;OACZ,MAAM;OACN,SAAS;MACX;MACA,UAAU;OACR,MAAM;OACN,SAAS;MACX;MACA,SAAS;OACP,MAAM;OACN,SAAS;MACX;MACA,mBAAmB;OACjB,MAAM,CAAC,UAAU,MAAM;OACvB,MAAM,CAAC,OAAO,OAAO;OACrB,SAAS;OACT,aACE;MACJ;KACF;IACF;IACA,KAAK;KACH,MAAM;KACN,YAAY;MACV,SAAS;OACP,MAAM;OACN,SAAS;MACX;MACA,QAAQ,EACN,MAAM,UACR;MACA,aAAa;OACX,MAAM,CAAC,UAAU,MAAM;OACvB,QAAQ;MACV;MACA,aAAa;OACX,MAAM,CAAC,UAAU,MAAM;OACvB,YAAY;QACV,IAAI,EACF,MAAM,SACR;QACA,eAAe,EACb,MAAM;SAAC;SAAQ;SAAU;QAAY,EACvC;OACF;MACF;MACA,kBAAkB,EAChB,MAAM,CAAC,UAAU,MAAM,EACzB;MACA,kBAAkB;OAChB,MAAM;OACN,OAAO,EACL,MAAM,SACR;MACF;MACA,eAAe;OACb,MAAM,CAAC,UAAU,MAAM;OACvB,QAAQ;MACV;MACA,eAAe;OACb,MAAM,CAAC,UAAU,MAAM;OACvB,YAAY;QACV,IAAI,EACF,MAAM,SACR;QACA,eAAe,EACb,MAAM;SAAC;SAAQ;SAAU;QAAY,EACvC;OACF;MACF;KACF;IACF;IACA,aAAa;KACX,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;IACA,WAAW;KACT,MAAM;KACN,YAAY,EACV,SAAS;MACP,MAAM;MACN,SAAS;KACX,EACF;KACA,sBAAsB;IACxB;GACF;GACA,sBAAsB;GACtB,SAAS,EACP,eAAe,CAAC,EAClB;EACF;EACA,eAAe;GACb,MAAM;GACN,YAAY;IACV,OAAO;KACL,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;IACA,KAAK;KACH,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;IACA,MAAM;KACJ,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;GACF;GACA,sBAAsB;GACtB,SAAS;IACP,OAAO,EACL,SAAS,MACX;IACA,KAAK,EACH,SAAS,MACX;IACA,MAAM,EACJ,SAAS,MACX;GACF;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,aAAa;GACX,MAAM;GACN,sBAAsB;EACxB;CACF;AACF"}
1
+ {"version":3,"file":"property.js","names":[],"sources":["../../.generated/schemas/property.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const propertySchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"property.json\",\n title: \"Property\",\n type: \"object\",\n description: \"A property is a physical asset or building\",\n required: [\"id\", \"name\", \"type\", \"organization\", \"timezone\", \"discriminator\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n default: \"property\",\n enum: [\"property\"],\n },\n discriminator: {\n type: \"string\",\n enum: [\"education\", \"commercial\"],\n },\n organization: {\n type: \"string\",\n description: \"Reference (id) to the organization that owns this property\",\n },\n testModeEnabled: {\n type: \"boolean\",\n },\n testMode: {\n type: \"object\",\n properties: {\n notificationEmails: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description:\n \"Only users with these email addresses will receive notifications in test mode, including sms, email, or push.\",\n },\n notificationEmailDomains: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description:\n \"Only users with email addreses ending in these domains will receive notifications in test mode, including sms, email, or push.\",\n },\n },\n },\n timezone: {\n type: \"string\",\n description: \"IANA timezone string\",\n pattern: \"^([a-zA-Z]+/[a-zA-Z_]+)$\",\n examples: [\"America/New_York\", \"America/Los_Angeles\"],\n },\n smsNumber: {\n type: \"string\",\n },\n voiceNumber: {\n type: \"string\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n latitude: {\n type: \"number\",\n },\n longitude: {\n type: \"number\",\n },\n features: {\n type: \"object\",\n properties: {\n SmartBuilding: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n alarmConfig: {\n type: \"object\",\n patternProperties: {\n \"^[a-zA-Z0-9]+$\": {\n type: \"object\",\n properties: {\n zoneLockMap: {\n type: \"object\",\n description: \"Maps zone numbers to lock ids\",\n additionalProperties: { type: \"string\" },\n },\n },\n },\n },\n examples: [\n {\n wZz7hucY: {\n zoneLockMap: {\n 1: \"wc87hucc\",\n 2: \"bc86hzxc\",\n 3: \"zv5ah5jv\",\n },\n },\n },\n ],\n },\n cameraConfig: {\n type: \"object\",\n doorStationConfig: {\n type: \"object\",\n patternProperties: {\n \"^[a-zA-Z0-9]+$\": {\n type: \"object\",\n properties: {\n lockIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\n description:\n \"List of lock ids that will be available for control from this door station\",\n },\n },\n },\n },\n },\n examples: [\n {\n wZz7hucY: {\n lockIds: [\"wc87hucb\", \"wc87hucd\"],\n },\n },\n ],\n },\n },\n additionalProperties: false,\n },\n Concierge: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n timeTracking: {\n type: \"boolean\",\n default: false,\n },\n feedback: {\n type: \"boolean\",\n default: true,\n },\n ratings: {\n type: \"boolean\",\n default: true,\n },\n },\n },\n SOS: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n active: {\n type: \"boolean\",\n },\n activatedAt: {\n type: [\"string\", \"null\"],\n format: \"date-time\",\n },\n activatedBy: {\n type: [\"object\", \"null\"],\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n enum: [\"user\", \"device\", \"automation\"],\n },\n },\n },\n activatedMessage: {\n type: [\"string\", \"null\"],\n },\n activeSOSTypeIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n deactivatedAt: {\n type: [\"string\", \"null\"],\n format: \"date-time\",\n },\n deactivatedBy: {\n type: [\"object\", \"null\"],\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n enum: [\"user\", \"device\", \"automation\"],\n },\n },\n },\n },\n },\n Automations: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n Resources: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n },\n additionalProperties: false,\n },\n },\n additionalProperties: false,\n default: {\n SmartBuilding: {},\n },\n },\n notifications: {\n type: \"object\",\n properties: {\n email: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n sms: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n push: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n },\n },\n additionalProperties: false,\n },\n },\n additionalProperties: false,\n default: {\n email: {\n enabled: false,\n },\n sms: {\n enabled: false,\n },\n push: {\n enabled: false,\n },\n },\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n credentials: {\n type: \"object\",\n additionalProperties: true,\n },\n },\n} as const;\n\nexport type PropertySchema = FromSchema<\n typeof propertySchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":";AAGA,MAAa,iBAAiB;CAC5B,SAAS;CACT,KAAK;CACL,OAAO;CACP,MAAM;CACN,aAAa;CACb,UAAU;EAAC;EAAM;EAAQ;EAAQ;EAAgB;EAAY;CAAe;CAC5E,YAAY;EACV,IAAI,EACF,MAAM,mCACR;EACA,MAAM,EACJ,MAAM,SACR;EACA,MAAM;GACJ,MAAM;GACN,SAAS;GACT,MAAM,CAAC,UAAU;EACnB;EACA,eAAe;GACb,MAAM;GACN,MAAM,CAAC,aAAa,YAAY;EAClC;EACA,cAAc;GACZ,MAAM;GACN,aAAa;EACf;EACA,iBAAiB,EACf,MAAM,UACR;EACA,UAAU;GACR,MAAM;GACN,YAAY;IACV,oBAAoB;KAClB,MAAM;KACN,OAAO,EACL,MAAM,SACR;KACA,aACE;IACJ;IACA,0BAA0B;KACxB,MAAM;KACN,OAAO,EACL,MAAM,SACR;KACA,aACE;IACJ;GACF;EACF;EACA,UAAU;GACR,MAAM;GACN,aAAa;GACb,SAAS;GACT,UAAU,CAAC,oBAAoB,qBAAqB;EACtD;EACA,WAAW,EACT,MAAM,SACR;EACA,aAAa,EACX,MAAM,SACR;EACA,MAAM;GACJ,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,SAAS,EACP,MAAM,wCACR;EACA,UAAU,EACR,MAAM,SACR;EACA,WAAW,EACT,MAAM,SACR;EACA,UAAU;GACR,MAAM;GACN,YAAY;IACV,eAAe;KACb,MAAM;KACN,YAAY;MACV,SAAS;OACP,MAAM;OACN,SAAS;MACX;MACA,aAAa;OACX,MAAM;OACN,mBAAmB,EACjB,kBAAkB;QAChB,MAAM;QACN,YAAY,EACV,aAAa;SACX,MAAM;SACN,aAAa;SACb,sBAAsB,EAAE,MAAM,SAAS;QACzC,EACF;OACF,EACF;OACA,UAAU,CACR,EACE,UAAU,EACR,aAAa;QACX,GAAG;QACH,GAAG;QACH,GAAG;OACL,EACF,EACF,CACF;MACF;MACA,cAAc;OACZ,MAAM;OACN,mBAAmB;QACjB,MAAM;QACN,mBAAmB,EACjB,kBAAkB;SAChB,MAAM;SACN,YAAY,EACV,SAAS;UACP,MAAM;UACN,OAAO,EACL,MAAM,SACR;UACA,SAAS,CAAC;UACV,aACE;SACJ,EACF;QACF,EACF;OACF;OACA,UAAU,CACR,EACE,UAAU,EACR,SAAS,CAAC,YAAY,UAAU,EAClC,EACF,CACF;MACF;KACF;KACA,sBAAsB;IACxB;IACA,WAAW;KACT,MAAM;KACN,YAAY;MACV,SAAS;OACP,MAAM;OACN,SAAS;MACX;MACA,cAAc;OACZ,MAAM;OACN,SAAS;MACX;MACA,UAAU;OACR,MAAM;OACN,SAAS;MACX;MACA,SAAS;OACP,MAAM;OACN,SAAS;MACX;KACF;IACF;IACA,KAAK;KACH,MAAM;KACN,YAAY;MACV,SAAS;OACP,MAAM;OACN,SAAS;MACX;MACA,QAAQ,EACN,MAAM,UACR;MACA,aAAa;OACX,MAAM,CAAC,UAAU,MAAM;OACvB,QAAQ;MACV;MACA,aAAa;OACX,MAAM,CAAC,UAAU,MAAM;OACvB,YAAY;QACV,IAAI,EACF,MAAM,SACR;QACA,eAAe,EACb,MAAM;SAAC;SAAQ;SAAU;QAAY,EACvC;OACF;MACF;MACA,kBAAkB,EAChB,MAAM,CAAC,UAAU,MAAM,EACzB;MACA,kBAAkB;OAChB,MAAM;OACN,OAAO,EACL,MAAM,SACR;MACF;MACA,eAAe;OACb,MAAM,CAAC,UAAU,MAAM;OACvB,QAAQ;MACV;MACA,eAAe;OACb,MAAM,CAAC,UAAU,MAAM;OACvB,YAAY;QACV,IAAI,EACF,MAAM,SACR;QACA,eAAe,EACb,MAAM;SAAC;SAAQ;SAAU;QAAY,EACvC;OACF;MACF;KACF;IACF;IACA,aAAa;KACX,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;IACA,WAAW;KACT,MAAM;KACN,YAAY,EACV,SAAS;MACP,MAAM;MACN,SAAS;KACX,EACF;KACA,sBAAsB;IACxB;GACF;GACA,sBAAsB;GACtB,SAAS,EACP,eAAe,CAAC,EAClB;EACF;EACA,eAAe;GACb,MAAM;GACN,YAAY;IACV,OAAO;KACL,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;IACA,KAAK;KACH,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;IACA,MAAM;KACJ,MAAM;KACN,YAAY,EACV,SAAS,EACP,MAAM,UACR,EACF;KACA,sBAAsB;IACxB;GACF;GACA,sBAAsB;GACtB,SAAS;IACP,OAAO,EACL,SAAS,MACX;IACA,KAAK,EACH,SAAS,MACX;IACA,MAAM,EACJ,SAAS,MACX;GACF;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,aAAa;GACX,MAAM;GACN,sBAAsB;EACxB;CACF;AACF"}