@kohost/api-client 7.8.2 → 7.10.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.
- package/dist/lib/deliveryStatus.d.ts +3 -0
- package/dist/lib/deliveryStatus.js +31 -0
- package/dist/lib/deliveryStatus.js.map +1 -0
- package/dist/lib/emergencyContacts.d.ts +41 -0
- package/dist/lib/emergencyContacts.js +1 -0
- package/dist/lib/index.d.ts +6 -1
- package/dist/lib/index.js +15 -2
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/messageErrorCodes.d.ts +4 -0
- package/dist/lib/messageErrorCodes.js +24 -0
- package/dist/lib/messageErrorCodes.js.map +1 -0
- package/dist/lib/money.d.ts +7 -1
- package/dist/lib/money.js +11 -2
- package/dist/lib/money.js.map +1 -1
- package/dist/lib/sisDrivers.d.ts +3 -0
- package/dist/lib/sisDrivers.js +9 -0
- package/dist/lib/sisDrivers.js.map +1 -0
- package/dist/lib/sosAudiences.d.ts +2 -0
- package/dist/lib/sosAudiences.js +6 -0
- package/dist/lib/sosAudiences.js.map +1 -0
- package/dist/models/announcement.js +9 -3
- package/dist/models/announcement.js.map +1 -1
- package/dist/models/category.js +2 -0
- package/dist/models/category.js.map +1 -1
- package/dist/models/emailMessage.js +1 -0
- package/dist/models/emailMessage.js.map +1 -1
- package/dist/models/index.d.ts +2 -0
- package/dist/models/index.js +5 -1
- package/dist/models/index.js.map +1 -1
- package/dist/models/resource.d.ts +17 -0
- package/dist/models/resource.js +31 -0
- package/dist/models/resource.js.map +1 -0
- package/dist/models/smsMessage.js +1 -0
- package/dist/models/smsMessage.js.map +1 -1
- package/dist/models/sosEvent.d.ts +17 -0
- package/dist/models/sosEvent.js +31 -0
- package/dist/models/sosEvent.js.map +1 -0
- package/dist/models/systemUser.js +2 -0
- package/dist/models/systemUser.js.map +1 -1
- package/dist/schemas/announcement.d.ts +164 -4
- package/dist/schemas/announcement.js +171 -10
- package/dist/schemas/announcement.js.map +1 -1
- package/dist/schemas/category.d.ts +11 -1
- package/dist/schemas/category.js +12 -1
- package/dist/schemas/category.js.map +1 -1
- package/dist/schemas/definitions.d.ts +242 -0
- package/dist/schemas/definitions.js +142 -1
- package/dist/schemas/definitions.js.map +1 -1
- package/dist/schemas/emailMessage.d.ts +4 -0
- package/dist/schemas/emailMessage.js +4 -0
- package/dist/schemas/emailMessage.js.map +1 -1
- package/dist/schemas/index.d.ts +2 -0
- package/dist/schemas/index.js +3 -1
- package/dist/schemas/organization.d.ts +19 -0
- package/dist/schemas/organization.js +13 -0
- package/dist/schemas/organization.js.map +1 -1
- package/dist/schemas/property.d.ts +14 -0
- package/dist/schemas/property.js +12 -0
- package/dist/schemas/property.js.map +1 -1
- package/dist/schemas/resource.d.ts +137 -0
- package/dist/schemas/resource.js +112 -0
- package/dist/schemas/resource.js.map +1 -0
- package/dist/schemas/smsMessage.d.ts +4 -0
- package/dist/schemas/smsMessage.js +4 -0
- package/dist/schemas/smsMessage.js.map +1 -1
- package/dist/schemas/sosEvent.d.ts +413 -0
- package/dist/schemas/sosEvent.js +357 -0
- package/dist/schemas/sosEvent.js.map +1 -0
- package/dist/schemas/systemUser.d.ts +8 -0
- package/dist/schemas/systemUser.js +9 -1
- package/dist/schemas/systemUser.js.map +1 -1
- package/dist/schemas/ticket.d.ts +1 -1
- package/dist/schemas/ticket.js +1 -0
- package/dist/schemas/ticket.js.map +1 -1
- package/dist/useCases/addSOSEventNote.d.ts +36 -0
- package/dist/useCases/addSOSEventNote.js +47 -0
- package/dist/useCases/addSOSEventNote.js.map +1 -0
- package/dist/useCases/autoAssociateDiscoveredDevices.d.ts +3 -3
- package/dist/useCases/autoAssociateDiscoveredDevices.js.map +1 -1
- package/dist/useCases/bulkUpdateIssue.d.ts +3 -3
- package/dist/useCases/bulkUpdateIssue.js.map +1 -1
- package/dist/useCases/copyIssueRouting.d.ts +3 -3
- package/dist/useCases/copyIssueRouting.js.map +1 -1
- package/dist/useCases/createAnnouncementPreset.d.ts +27 -0
- package/dist/useCases/createAnnouncementPreset.js +47 -0
- package/dist/useCases/createAnnouncementPreset.js.map +1 -0
- package/dist/useCases/createAutomation.d.ts +3 -3
- package/dist/useCases/createAutomation.js.map +1 -1
- package/dist/useCases/createBill.d.ts +3 -3
- package/dist/useCases/createBill.js.map +1 -1
- package/dist/useCases/createBillingCategory.d.ts +3 -3
- package/dist/useCases/createBillingCategory.js.map +1 -1
- package/dist/useCases/createCategory.d.ts +3 -3
- package/dist/useCases/createCategory.js.map +1 -1
- package/dist/useCases/createDefaultAutomations.d.ts +3 -3
- package/dist/useCases/createDefaultAutomations.js.map +1 -1
- package/dist/useCases/createDepartment.d.ts +3 -3
- package/dist/useCases/createDepartment.js.map +1 -1
- package/dist/useCases/createDiscoveredDevice.d.ts +3 -3
- package/dist/useCases/createDiscoveredDevice.js.map +1 -1
- package/dist/useCases/createDiscoveredDeviceAssociationMap.d.ts +3 -3
- package/dist/useCases/createDiscoveredDeviceAssociationMap.js.map +1 -1
- package/dist/useCases/createIssue.d.ts +3 -3
- package/dist/useCases/createIssue.js.map +1 -1
- package/dist/useCases/createOrganization.d.ts +3 -3
- package/dist/useCases/createOrganization.js.map +1 -1
- package/dist/useCases/createPolicy.d.ts +3 -3
- package/dist/useCases/createPolicy.js.map +1 -1
- package/dist/useCases/createProperty.d.ts +3 -3
- package/dist/useCases/createProperty.js.map +1 -1
- package/dist/useCases/createPwaHandoffToken.d.ts +3 -3
- package/dist/useCases/createPwaHandoffToken.js.map +1 -1
- package/dist/useCases/createResource.d.ts +27 -0
- package/dist/useCases/createResource.js +47 -0
- package/dist/useCases/createResource.js.map +1 -0
- package/dist/useCases/createServer.d.ts +3 -3
- package/dist/useCases/createServer.js.map +1 -1
- package/dist/useCases/createSpace.d.ts +3 -3
- package/dist/useCases/createSpace.js.map +1 -1
- package/dist/useCases/createSystem.d.ts +3 -3
- package/dist/useCases/createSystem.js.map +1 -1
- package/dist/useCases/createTicket.d.ts +3 -3
- package/dist/useCases/createTicket.js.map +1 -1
- package/dist/useCases/createTimeSheet.d.ts +3 -3
- package/dist/useCases/createTimeSheet.js.map +1 -1
- package/dist/useCases/createUser.d.ts +3 -3
- package/dist/useCases/createUser.js.map +1 -1
- package/dist/useCases/createVendor.d.ts +3 -3
- package/dist/useCases/createVendor.js.map +1 -1
- package/dist/useCases/deleteAnnouncementPreset.d.ts +36 -0
- package/dist/useCases/deleteAnnouncementPreset.js +47 -0
- package/dist/useCases/deleteAnnouncementPreset.js.map +1 -0
- package/dist/useCases/deleteResource.d.ts +36 -0
- package/dist/useCases/deleteResource.js +47 -0
- package/dist/useCases/deleteResource.js.map +1 -0
- package/dist/useCases/describeAnnouncement.d.ts +36 -0
- package/dist/useCases/describeAnnouncement.js +47 -0
- package/dist/useCases/describeAnnouncement.js.map +1 -0
- package/dist/useCases/describeConciergeFacilitiesViewer.d.ts +3 -3
- package/dist/useCases/describeConciergeFacilitiesViewer.js.map +1 -1
- package/dist/useCases/describeConciergeStatsFilters.d.ts +3 -3
- package/dist/useCases/describeConciergeStatsFilters.js.map +1 -1
- package/dist/useCases/describeConciergeStatsHeatmap.d.ts +3 -3
- package/dist/useCases/describeConciergeStatsHeatmap.js.map +1 -1
- package/dist/useCases/describeConciergeStatsSummary.d.ts +3 -3
- package/dist/useCases/describeConciergeStatsSummary.js.map +1 -1
- package/dist/useCases/describeConciergeStatsTickets.d.ts +3 -3
- package/dist/useCases/describeConciergeStatsTickets.js.map +1 -1
- package/dist/useCases/describeConciergeWorkspaceFilters.d.ts +3 -3
- package/dist/useCases/describeConciergeWorkspaceFilters.js.map +1 -1
- package/dist/useCases/describeMyAuth.d.ts +3 -3
- package/dist/useCases/describeMyAuth.js.map +1 -1
- package/dist/useCases/describeMyOrganization.d.ts +3 -3
- package/dist/useCases/describeMyOrganization.js.map +1 -1
- package/dist/useCases/describeMyPasskeyRegistrations.d.ts +3 -3
- package/dist/useCases/describeMyPasskeyRegistrations.js.map +1 -1
- package/dist/useCases/describeOrgNotificationDefaults.d.ts +3 -3
- package/dist/useCases/describeOrgNotificationDefaults.js.map +1 -1
- package/dist/useCases/describePushVapidPublicKey.d.ts +3 -3
- package/dist/useCases/describePushVapidPublicKey.js.map +1 -1
- package/dist/useCases/describeResource.d.ts +36 -0
- package/dist/useCases/describeResource.js +47 -0
- package/dist/useCases/describeResource.js.map +1 -0
- package/dist/useCases/describeSOS.d.ts +3 -3
- package/dist/useCases/describeSOS.js.map +1 -1
- package/dist/useCases/describeSOSEvent.d.ts +36 -0
- package/dist/useCases/describeSOSEvent.js +47 -0
- package/dist/useCases/describeSOSEvent.js.map +1 -0
- package/dist/useCases/describeSelf.d.ts +3 -3
- package/dist/useCases/describeSelf.js.map +1 -1
- package/dist/useCases/describeSelfAccess.d.ts +3 -3
- package/dist/useCases/describeSelfAccess.js.map +1 -1
- package/dist/useCases/describeStaffFunctions.d.ts +3 -3
- package/dist/useCases/describeStaffFunctions.js.map +1 -1
- package/dist/useCases/describeTicketFilters.d.ts +3 -3
- package/dist/useCases/describeTicketFilters.js.map +1 -1
- package/dist/useCases/describeTicketStats.d.ts +3 -3
- package/dist/useCases/describeTicketStats.js.map +1 -1
- package/dist/useCases/describeTicketStatsFilters.d.ts +3 -3
- package/dist/useCases/describeTicketStatsFilters.js.map +1 -1
- package/dist/useCases/describeTicketStatsHeatmap.d.ts +3 -3
- package/dist/useCases/describeTicketStatsHeatmap.js.map +1 -1
- package/dist/useCases/describeTicketStatsSummary.d.ts +3 -3
- package/dist/useCases/describeTicketStatsSummary.js.map +1 -1
- package/dist/useCases/describeTicketStatsTickets.d.ts +3 -3
- package/dist/useCases/describeTicketStatsTickets.js.map +1 -1
- package/dist/useCases/describeTimeSheetStats.d.ts +3 -3
- package/dist/useCases/describeTimeSheetStats.js.map +1 -1
- package/dist/useCases/exportSOSEventReport.d.ts +36 -0
- package/dist/useCases/exportSOSEventReport.js +47 -0
- package/dist/useCases/exportSOSEventReport.js.map +1 -0
- package/dist/useCases/fetchEmergencyContactPeople.d.ts +27 -0
- package/dist/useCases/fetchEmergencyContactPeople.js +47 -0
- package/dist/useCases/fetchEmergencyContactPeople.js.map +1 -0
- package/dist/useCases/fetchEmergencyContacts.d.ts +27 -0
- package/dist/useCases/fetchEmergencyContacts.js +47 -0
- package/dist/useCases/fetchEmergencyContacts.js.map +1 -0
- package/dist/useCases/index.d.ts +20 -0
- package/dist/useCases/index.js +41 -1
- package/dist/useCases/index.js.map +1 -1
- package/dist/useCases/listAnnouncements.d.ts +27 -0
- package/dist/useCases/listAnnouncements.js +47 -0
- package/dist/useCases/listAnnouncements.js.map +1 -0
- package/dist/useCases/listAutomations.d.ts +3 -3
- package/dist/useCases/listAutomations.js.map +1 -1
- package/dist/useCases/listBillingCategories.d.ts +3 -3
- package/dist/useCases/listBillingCategories.js.map +1 -1
- package/dist/useCases/listBills.d.ts +3 -3
- package/dist/useCases/listBills.js.map +1 -1
- package/dist/useCases/listCategories.d.ts +3 -3
- package/dist/useCases/listCategories.js.map +1 -1
- package/dist/useCases/listConciergeUninvoicedCosts.d.ts +3 -3
- package/dist/useCases/listConciergeUninvoicedCosts.js.map +1 -1
- package/dist/useCases/listConciergeWorkspaceBills.d.ts +3 -3
- package/dist/useCases/listConciergeWorkspaceBills.js.map +1 -1
- package/dist/useCases/listConciergeWorkspaceTickets.d.ts +3 -3
- package/dist/useCases/listConciergeWorkspaceTickets.js.map +1 -1
- package/dist/useCases/listDepartments.d.ts +3 -3
- package/dist/useCases/listDepartments.js.map +1 -1
- package/dist/useCases/listDiscoveredDevices.d.ts +3 -3
- package/dist/useCases/listDiscoveredDevices.js.map +1 -1
- package/dist/useCases/listFacilitiesStaffIds.d.ts +3 -3
- package/dist/useCases/listFacilitiesStaffIds.js.map +1 -1
- package/dist/useCases/listIntegrations.d.ts +3 -3
- package/dist/useCases/listIntegrations.js.map +1 -1
- package/dist/useCases/listIssues.d.ts +3 -3
- package/dist/useCases/listIssues.js.map +1 -1
- package/dist/useCases/listKohostStaff.d.ts +3 -3
- package/dist/useCases/listKohostStaff.js.map +1 -1
- package/dist/useCases/listMyOrganizations.d.ts +3 -3
- package/dist/useCases/listMyOrganizations.js.map +1 -1
- package/dist/useCases/listMyProperties.d.ts +3 -3
- package/dist/useCases/listMyProperties.js.map +1 -1
- package/dist/useCases/listMyPushSubscriptions.d.ts +3 -3
- package/dist/useCases/listMyPushSubscriptions.js.map +1 -1
- package/dist/useCases/listMyTimeSheets.d.ts +3 -3
- package/dist/useCases/listMyTimeSheets.js.map +1 -1
- package/dist/useCases/listOrganizationBills.d.ts +3 -3
- package/dist/useCases/listOrganizationBills.js.map +1 -1
- package/dist/useCases/listOrganizations.d.ts +3 -3
- package/dist/useCases/listOrganizations.js.map +1 -1
- package/dist/useCases/listPolicies.d.ts +3 -3
- package/dist/useCases/listPolicies.js.map +1 -1
- package/dist/useCases/listProperties.d.ts +3 -3
- package/dist/useCases/listProperties.js.map +1 -1
- package/dist/useCases/listResources.d.ts +27 -0
- package/dist/useCases/listResources.js +47 -0
- package/dist/useCases/listResources.js.map +1 -0
- package/dist/useCases/listSOSEvents.d.ts +27 -0
- package/dist/useCases/listSOSEvents.js +47 -0
- package/dist/useCases/listSOSEvents.js.map +1 -0
- package/dist/useCases/listServers.d.ts +3 -3
- package/dist/useCases/listServers.js.map +1 -1
- package/dist/useCases/listSessions.d.ts +3 -3
- package/dist/useCases/listSessions.js.map +1 -1
- package/dist/useCases/listSpaces.d.ts +3 -3
- package/dist/useCases/listSpaces.js.map +1 -1
- package/dist/useCases/listSystems.d.ts +3 -3
- package/dist/useCases/listSystems.js.map +1 -1
- package/dist/useCases/listTicketLocations.d.ts +3 -3
- package/dist/useCases/listTicketLocations.js.map +1 -1
- package/dist/useCases/listTickets.d.ts +3 -3
- package/dist/useCases/listTickets.js.map +1 -1
- package/dist/useCases/listTimeSheets.d.ts +3 -3
- package/dist/useCases/listTimeSheets.js.map +1 -1
- package/dist/useCases/listUsers.d.ts +3 -3
- package/dist/useCases/listUsers.js.map +1 -1
- package/dist/useCases/listVendors.d.ts +3 -3
- package/dist/useCases/listVendors.js.map +1 -1
- package/dist/useCases/mergeIssue.d.ts +3 -3
- package/dist/useCases/mergeIssue.js.map +1 -1
- package/dist/useCases/previewSOSEventReport.d.ts +36 -0
- package/dist/useCases/previewSOSEventReport.js +47 -0
- package/dist/useCases/previewSOSEventReport.js.map +1 -0
- package/dist/useCases/replaceDevice.d.ts +39 -0
- package/dist/useCases/replaceDevice.js +47 -0
- package/dist/useCases/replaceDevice.js.map +1 -0
- package/dist/useCases/selectOrganization.d.ts +3 -3
- package/dist/useCases/selectOrganization.js.map +1 -1
- package/dist/useCases/sendAnnouncement.d.ts +27 -0
- package/dist/useCases/sendAnnouncement.js +47 -0
- package/dist/useCases/sendAnnouncement.js.map +1 -0
- package/dist/useCases/sendNotification.d.ts +3 -3
- package/dist/useCases/sendNotification.js.map +1 -1
- package/dist/useCases/sendSOSUpdate.d.ts +27 -0
- package/dist/useCases/sendSOSUpdate.js +47 -0
- package/dist/useCases/sendSOSUpdate.js.map +1 -0
- package/dist/useCases/setDevices.d.ts +3 -3
- package/dist/useCases/setDevices.js.map +1 -1
- package/dist/useCases/startSOS.d.ts +3 -3
- package/dist/useCases/startSOS.js.map +1 -1
- package/dist/useCases/stopSOS.d.ts +3 -3
- package/dist/useCases/stopSOS.js.map +1 -1
- package/dist/useCases/subscribePushDevice.d.ts +3 -3
- package/dist/useCases/subscribePushDevice.js.map +1 -1
- package/dist/useCases/updateAnnouncementPreset.d.ts +36 -0
- package/dist/useCases/updateAnnouncementPreset.js +47 -0
- package/dist/useCases/updateAnnouncementPreset.js.map +1 -0
- package/dist/useCases/updateOrgNotificationDefaults.d.ts +3 -3
- package/dist/useCases/updateOrgNotificationDefaults.js.map +1 -1
- package/dist/useCases/updateResource.d.ts +36 -0
- package/dist/useCases/updateResource.js +47 -0
- package/dist/useCases/updateResource.js.map +1 -0
- package/dist/useCases/updateSelf.d.ts +3 -3
- package/dist/useCases/updateSelf.js.map +1 -1
- package/dist/useCases/upsertDiscoveredDevice.d.ts +3 -3
- package/dist/useCases/upsertDiscoveredDevice.js.map +1 -1
- package/dist/useCases/validateAuth.d.ts +3 -3
- package/dist/useCases/validateAuth.js.map +1 -1
- package/dist/validate.d.ts +34 -3
- package/dist/validate.js +7 -1
- package/dist/validate.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Entity } from "./entity.js";
|
|
2
|
+
import { sosEventSchema } from "../schemas/sosEvent.js";
|
|
3
|
+
import { validateSOSEvent } from "../validate.js";
|
|
4
|
+
//#region .generated/models/sosEvent.ts
|
|
5
|
+
var SOSEvent = class extends Entity {
|
|
6
|
+
constructor(data) {
|
|
7
|
+
super(data);
|
|
8
|
+
this.id = data.id;
|
|
9
|
+
this.type = data.type;
|
|
10
|
+
if (data.propertyId !== void 0) this.propertyId = data.propertyId;
|
|
11
|
+
this.sosTypeIds = data.sosTypeIds;
|
|
12
|
+
this.activatedAt = data.activatedAt;
|
|
13
|
+
if (data.activatedBy !== void 0) this.activatedBy = data.activatedBy;
|
|
14
|
+
if (data.deactivatedAt !== void 0) this.deactivatedAt = data.deactivatedAt;
|
|
15
|
+
if (data.deactivatedBy !== void 0) this.deactivatedBy = data.deactivatedBy;
|
|
16
|
+
this.timeline = data.timeline;
|
|
17
|
+
if (data.notes !== void 0) this.notes = data.notes;
|
|
18
|
+
if (data.report !== void 0) this.report = data.report;
|
|
19
|
+
if (data.createdAt !== void 0) this.createdAt = data.createdAt;
|
|
20
|
+
if (data.updatedAt !== void 0) this.updatedAt = data.updatedAt;
|
|
21
|
+
if (data.deletedAt !== void 0) this.deletedAt = data.deletedAt;
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(SOSEvent.prototype, "schema", { value: sosEventSchema });
|
|
25
|
+
Object.defineProperty(SOSEvent.prototype, "validator", { get: function() {
|
|
26
|
+
return validateSOSEvent;
|
|
27
|
+
} });
|
|
28
|
+
//#endregion
|
|
29
|
+
export { SOSEvent };
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=sosEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sosEvent.js","names":["validate"],"sources":["../../.generated/models/sosEvent.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateSOSEvent as validate } from \"../validate.js\";\nimport { sosEventSchema, type SOSEventSchema } from \"../schemas/sosEvent.js\";\n\n/**\n * Data type for SOSEvent constructor - exported for backwards compatibility\n */\nexport type SOSEventData = SOSEventSchema;\n\n/**\n * A durable record of a single SOS activation on a Property, with an append-only timeline of updates. Persists as audit history after the SOS is cleared.\n */\nexport interface SOSEvent extends SOSEventSchema {}\nexport class SOSEvent extends Entity {\n declare schema: typeof sosEventSchema;\n declare validator: typeof validate;\n\n constructor(data: SOSEventSchema) {\n super(data);\n this.id = data.id;\n this.type = data.type;\n if (data.propertyId !== undefined) this.propertyId = data.propertyId;\n this.sosTypeIds = data.sosTypeIds;\n this.activatedAt = data.activatedAt;\n if (data.activatedBy !== undefined) this.activatedBy = data.activatedBy;\n if (data.deactivatedAt !== undefined) this.deactivatedAt = data.deactivatedAt;\n if (data.deactivatedBy !== undefined) this.deactivatedBy = data.deactivatedBy;\n this.timeline = data.timeline;\n if (data.notes !== undefined) this.notes = data.notes;\n if (data.report !== undefined) this.report = data.report;\n if (data.createdAt !== undefined) this.createdAt = data.createdAt;\n if (data.updatedAt !== undefined) this.updatedAt = data.updatedAt;\n if (data.deletedAt !== undefined) this.deletedAt = data.deletedAt;\n }\n\n\n\n\n\n\n\n\n}\n\nObject.defineProperty(SOSEvent.prototype, \"schema\", {\n value: sosEventSchema\n});\n\nObject.defineProperty(SOSEvent.prototype, \"validator\", {\n get: function() { return validate; }\n});\n"],"mappings":";;;;AAeA,IAAa,WAAb,cAA8B,OAAO;CAInC,YAAY,MAAsB;EAChC,MAAM,IAAI;EACV,KAAK,KAAK,KAAK;EACf,KAAK,OAAO,KAAK;EACjB,IAAI,KAAK,eAAe,KAAA,GAAW,KAAK,aAAa,KAAK;EAC1D,KAAK,aAAa,KAAK;EACvB,KAAK,cAAc,KAAK;EACxB,IAAI,KAAK,gBAAgB,KAAA,GAAW,KAAK,cAAc,KAAK;EAC5D,IAAI,KAAK,kBAAkB,KAAA,GAAW,KAAK,gBAAgB,KAAK;EAChE,IAAI,KAAK,kBAAkB,KAAA,GAAW,KAAK,gBAAgB,KAAK;EAChE,KAAK,WAAW,KAAK;EACrB,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;EACxD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;EACxD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;CAC1D;AASF;AAEA,OAAO,eAAe,SAAS,WAAW,UAAU,EAClD,OAAO,eACT,CAAC;AAED,OAAO,eAAe,SAAS,WAAW,aAAa,EACrD,KAAK,WAAW;CAAE,OAAOA;AAAU,EACrC,CAAC"}
|
|
@@ -27,6 +27,8 @@ var SystemUser = class extends Entity {
|
|
|
27
27
|
if (data.createdAt !== void 0) this.createdAt = data.createdAt;
|
|
28
28
|
if (data.updatedAt !== void 0) this.updatedAt = data.updatedAt;
|
|
29
29
|
if (data.systemId !== void 0) this.systemId = data.systemId;
|
|
30
|
+
if (data.propertyId !== void 0) this.propertyId = data.propertyId;
|
|
31
|
+
if (data.syncedAt !== void 0) this.syncedAt = data.syncedAt;
|
|
30
32
|
}
|
|
31
33
|
};
|
|
32
34
|
Object.defineProperty(SystemUser.prototype, "schema", { value: systemUserSchema });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemUser.js","names":["validate"],"sources":["../../.generated/models/systemUser.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateSystemUser as validate } from \"../validate.js\";\nimport { systemUserSchema, type SystemUserSchema } from \"../schemas/systemUser.js\";\n\n/**\n * Data type for SystemUser constructor - exported for backwards compatibility\n */\nexport type SystemUserData = SystemUserSchema;\n\n/**\n * A system user is a user that originated from an external 3rd party system.\n */\nexport interface SystemUser extends SystemUserSchema {}\nexport class SystemUser extends Entity {\n declare schema: typeof systemUserSchema;\n declare validator: typeof validate;\n\n constructor(data: SystemUserSchema) {\n super(data);\n this.id = data.id;\n if (data.type !== undefined) this.type = data.type;\n if (data.driver !== undefined) this.driver = data.driver;\n this.firstName = data.firstName;\n this.lastName = data.lastName;\n if (data.phone !== undefined) this.phone = data.phone;\n if (data.email !== undefined) this.email = data.email;\n if (data.address !== undefined) this.address = data.address;\n if (data.photo !== undefined) this.photo = data.photo;\n if (data.jobTitle !== undefined) this.jobTitle = data.jobTitle;\n if (data.dob !== undefined) this.dob = data.dob;\n if (data.gender !== undefined) this.gender = data.gender;\n if (data.roles !== undefined) this.roles = data.roles;\n if (data.nationality !== undefined) this.nationality = data.nationality;\n if (data.notes !== undefined) this.notes = data.notes;\n if (data.files !== undefined) this.files = data.files;\n if (data.identifications !== undefined) this.identifications = data.identifications;\n if (data.payments !== undefined) this.payments = data.payments;\n if (data.revenue !== undefined) this.revenue = data.revenue;\n if (data.createdAt !== undefined) this.createdAt = data.createdAt;\n if (data.updatedAt !== undefined) this.updatedAt = data.updatedAt;\n if (data.systemId !== undefined) this.systemId = data.systemId;\n }\n\n\n\n\n\n\n\n\n}\n\nObject.defineProperty(SystemUser.prototype, \"schema\", {\n value: systemUserSchema\n});\n\nObject.defineProperty(SystemUser.prototype, \"validator\", {\n get: function() { return validate; }\n});\n"],"mappings":";;;;AAeA,IAAa,aAAb,cAAgC,OAAO;CAIrC,YAAY,MAAwB;EAClC,MAAM,IAAI;EACV,KAAK,KAAK,KAAK;EACf,IAAI,KAAK,SAAS,KAAA,GAAW,KAAK,OAAO,KAAK;EAC9C,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,KAAK,YAAY,KAAK;EACtB,KAAK,WAAW,KAAK;EACrB,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,QAAQ,KAAA,GAAW,KAAK,MAAM,KAAK;EAC5C,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,gBAAgB,KAAA,GAAW,KAAK,cAAc,KAAK;EAC5D,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,oBAAoB,KAAA,GAAW,KAAK,kBAAkB,KAAK;EACpE,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;EACxD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;EACxD,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;CACxD;AASF;AAEA,OAAO,eAAe,WAAW,WAAW,UAAU,EACpD,OAAO,iBACT,CAAC;AAED,OAAO,eAAe,WAAW,WAAW,aAAa,EACvD,KAAK,WAAW;CAAE,OAAOA;AAAU,EACrC,CAAC"}
|
|
1
|
+
{"version":3,"file":"systemUser.js","names":["validate"],"sources":["../../.generated/models/systemUser.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateSystemUser as validate } from \"../validate.js\";\nimport { systemUserSchema, type SystemUserSchema } from \"../schemas/systemUser.js\";\n\n/**\n * Data type for SystemUser constructor - exported for backwards compatibility\n */\nexport type SystemUserData = SystemUserSchema;\n\n/**\n * A system user is a user that originated from an external 3rd party system.\n */\nexport interface SystemUser extends SystemUserSchema {}\nexport class SystemUser extends Entity {\n declare schema: typeof systemUserSchema;\n declare validator: typeof validate;\n\n constructor(data: SystemUserSchema) {\n super(data);\n this.id = data.id;\n if (data.type !== undefined) this.type = data.type;\n if (data.driver !== undefined) this.driver = data.driver;\n this.firstName = data.firstName;\n this.lastName = data.lastName;\n if (data.phone !== undefined) this.phone = data.phone;\n if (data.email !== undefined) this.email = data.email;\n if (data.address !== undefined) this.address = data.address;\n if (data.photo !== undefined) this.photo = data.photo;\n if (data.jobTitle !== undefined) this.jobTitle = data.jobTitle;\n if (data.dob !== undefined) this.dob = data.dob;\n if (data.gender !== undefined) this.gender = data.gender;\n if (data.roles !== undefined) this.roles = data.roles;\n if (data.nationality !== undefined) this.nationality = data.nationality;\n if (data.notes !== undefined) this.notes = data.notes;\n if (data.files !== undefined) this.files = data.files;\n if (data.identifications !== undefined) this.identifications = data.identifications;\n if (data.payments !== undefined) this.payments = data.payments;\n if (data.revenue !== undefined) this.revenue = data.revenue;\n if (data.createdAt !== undefined) this.createdAt = data.createdAt;\n if (data.updatedAt !== undefined) this.updatedAt = data.updatedAt;\n if (data.systemId !== undefined) this.systemId = data.systemId;\n if (data.propertyId !== undefined) this.propertyId = data.propertyId;\n if (data.syncedAt !== undefined) this.syncedAt = data.syncedAt;\n }\n\n\n\n\n\n\n\n\n}\n\nObject.defineProperty(SystemUser.prototype, \"schema\", {\n value: systemUserSchema\n});\n\nObject.defineProperty(SystemUser.prototype, \"validator\", {\n get: function() { return validate; }\n});\n"],"mappings":";;;;AAeA,IAAa,aAAb,cAAgC,OAAO;CAIrC,YAAY,MAAwB;EAClC,MAAM,IAAI;EACV,KAAK,KAAK,KAAK;EACf,IAAI,KAAK,SAAS,KAAA,GAAW,KAAK,OAAO,KAAK;EAC9C,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,KAAK,YAAY,KAAK;EACtB,KAAK,WAAW,KAAK;EACrB,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,QAAQ,KAAA,GAAW,KAAK,MAAM,KAAK;EAC5C,IAAI,KAAK,WAAW,KAAA,GAAW,KAAK,SAAS,KAAK;EAClD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,gBAAgB,KAAA,GAAW,KAAK,cAAc,KAAK;EAC5D,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,UAAU,KAAA,GAAW,KAAK,QAAQ,KAAK;EAChD,IAAI,KAAK,oBAAoB,KAAA,GAAW,KAAK,kBAAkB,KAAK;EACpE,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,YAAY,KAAA,GAAW,KAAK,UAAU,KAAK;EACpD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;EACxD,IAAI,KAAK,cAAc,KAAA,GAAW,KAAK,YAAY,KAAK;EACxD,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;EACtD,IAAI,KAAK,eAAe,KAAA,GAAW,KAAK,aAAa,KAAK;EAC1D,IAAI,KAAK,aAAa,KAAA,GAAW,KAAK,WAAW,KAAK;CACxD;AASF;AAEA,OAAO,eAAe,WAAW,WAAW,UAAU,EACpD,OAAO,iBACT,CAAC;AAED,OAAO,eAAe,WAAW,WAAW,aAAa,EACvD,KAAK,WAAW;CAAE,OAAOA;AAAU,EACrC,CAAC"}
|
|
@@ -6,7 +6,7 @@ export declare const announcementSchema: {
|
|
|
6
6
|
readonly title: "Announcement";
|
|
7
7
|
readonly description: "Announcement message sent to users";
|
|
8
8
|
readonly type: "object";
|
|
9
|
-
readonly required: readonly ["id", "type"
|
|
9
|
+
readonly required: readonly ["id", "type"];
|
|
10
10
|
readonly properties: {
|
|
11
11
|
readonly id: {
|
|
12
12
|
readonly $ref: "definitions.json#/definitions/id";
|
|
@@ -20,18 +20,81 @@ export declare const announcementSchema: {
|
|
|
20
20
|
readonly enum: readonly ["announcement"];
|
|
21
21
|
readonly default: "announcement";
|
|
22
22
|
};
|
|
23
|
-
readonly
|
|
23
|
+
readonly status: {
|
|
24
|
+
readonly type: "string";
|
|
25
|
+
readonly description: "`sent` is a real broadcast; `preset` is a named, reusable configuration a sender loads into the composer. Absent on records written before presets existed — read as `sent`.";
|
|
26
|
+
readonly enum: readonly ["sent", "preset"];
|
|
27
|
+
readonly default: "sent";
|
|
28
|
+
};
|
|
29
|
+
readonly name: {
|
|
30
|
+
readonly type: "string";
|
|
31
|
+
readonly description: "Display name of a preset. Sent announcements have none.";
|
|
32
|
+
};
|
|
33
|
+
readonly presetId: {
|
|
34
|
+
readonly type: "string";
|
|
35
|
+
readonly description: "The preset this sent announcement was loaded from, when it was.";
|
|
36
|
+
};
|
|
37
|
+
readonly audience: {
|
|
38
|
+
readonly $ref: "definitions.json#/definitions/audience";
|
|
39
|
+
readonly description: "Who this announcement was directed at on the people axis. PA surfaces are the other axis and never reach the emergency-contact roster.";
|
|
40
|
+
};
|
|
41
|
+
readonly channels: {
|
|
24
42
|
readonly type: "array";
|
|
43
|
+
readonly description: "Personal channels this announcement was sent over.";
|
|
25
44
|
readonly items: {
|
|
26
45
|
readonly type: "string";
|
|
46
|
+
readonly enum: readonly ["sms", "email"];
|
|
27
47
|
};
|
|
28
|
-
readonly minItems: 1;
|
|
29
48
|
};
|
|
30
|
-
readonly
|
|
49
|
+
readonly subject: {
|
|
31
50
|
readonly type: "string";
|
|
51
|
+
readonly description: "Email subject, and the title shown on a surface.";
|
|
52
|
+
};
|
|
53
|
+
readonly surfaces: {
|
|
54
|
+
readonly type: "array";
|
|
55
|
+
readonly description: "Surface channels the announcement was broadcast to, as the sender selected them. `discriminator` is the mediaSource `Device.discriminator` targeted, open for future surface types; only `paSystem` ships today.";
|
|
56
|
+
readonly items: {
|
|
57
|
+
readonly type: "object";
|
|
58
|
+
readonly required: readonly ["discriminator", "scope"];
|
|
59
|
+
readonly properties: {
|
|
60
|
+
readonly discriminator: {
|
|
61
|
+
readonly type: "string";
|
|
62
|
+
readonly enum: readonly ["paSystem"];
|
|
63
|
+
};
|
|
64
|
+
readonly scope: {
|
|
65
|
+
readonly type: "string";
|
|
66
|
+
readonly enum: readonly ["all", "spaces", "devices"];
|
|
67
|
+
};
|
|
68
|
+
readonly spaceIds: {
|
|
69
|
+
readonly type: "array";
|
|
70
|
+
readonly items: {
|
|
71
|
+
readonly type: "string";
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
readonly deviceIds: {
|
|
75
|
+
readonly type: "array";
|
|
76
|
+
readonly items: {
|
|
77
|
+
readonly type: "string";
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
readonly outputs: {
|
|
81
|
+
readonly type: "array";
|
|
82
|
+
readonly description: "PA output zones to page; all zones when omitted.";
|
|
83
|
+
readonly items: {
|
|
84
|
+
readonly type: "string";
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
readonly playlistId: {
|
|
88
|
+
readonly type: "string";
|
|
89
|
+
readonly description: "A PA playlist (driver recording) played in place of the spoken body; its zones are the playlist's own.";
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
readonly additionalProperties: false;
|
|
93
|
+
};
|
|
32
94
|
};
|
|
33
95
|
readonly body: {
|
|
34
96
|
readonly type: "string";
|
|
97
|
+
readonly description: "The spoken/written message. Optional only when every surface plays a preset and no channel is selected.";
|
|
35
98
|
};
|
|
36
99
|
readonly media: {
|
|
37
100
|
readonly $ref: "mediaFile.json";
|
|
@@ -39,6 +102,103 @@ export declare const announcementSchema: {
|
|
|
39
102
|
readonly sentBy: {
|
|
40
103
|
readonly type: "string";
|
|
41
104
|
};
|
|
105
|
+
readonly result: {
|
|
106
|
+
readonly type: "object";
|
|
107
|
+
readonly additionalProperties: false;
|
|
108
|
+
readonly required: readonly ["recipientsResolved", "perChannel", "skipped", "surfaces"];
|
|
109
|
+
readonly description: "What the send actually achieved, written once at send time and never recomputed. Absent on presets and on sends recorded before this was stored. The `audience.delivery` counts are the same send viewed per audience; this is the per-channel and per-device detail behind them.";
|
|
110
|
+
readonly properties: {
|
|
111
|
+
readonly recipientsResolved: {
|
|
112
|
+
readonly type: "integer";
|
|
113
|
+
readonly minimum: 0;
|
|
114
|
+
readonly description: "How many internal Users the audience selector resolved to. Zero when no personal channel was selected, however wide the selector — an announcement with no channel reaches no User.";
|
|
115
|
+
};
|
|
116
|
+
readonly external: {
|
|
117
|
+
readonly type: "object";
|
|
118
|
+
readonly additionalProperties: false;
|
|
119
|
+
readonly required: readonly ["recipients", "delivery"];
|
|
120
|
+
readonly description: "The external SIS roster this send reached. Absent when no external group was named.";
|
|
121
|
+
readonly properties: {
|
|
122
|
+
readonly recipients: {
|
|
123
|
+
readonly type: "integer";
|
|
124
|
+
readonly minimum: 0;
|
|
125
|
+
readonly description: "Size of the roster the named groups resolved to.";
|
|
126
|
+
};
|
|
127
|
+
readonly delivery: {
|
|
128
|
+
readonly type: "object";
|
|
129
|
+
readonly additionalProperties: false;
|
|
130
|
+
readonly description: "Per-channel counts, present only for the channels attempted.";
|
|
131
|
+
readonly properties: {
|
|
132
|
+
readonly sms: {
|
|
133
|
+
readonly $ref: "definitions.json#/definitions/deliveryCounts";
|
|
134
|
+
};
|
|
135
|
+
readonly email: {
|
|
136
|
+
readonly $ref: "definitions.json#/definitions/deliveryCounts";
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
};
|
|
141
|
+
};
|
|
142
|
+
readonly perChannel: {
|
|
143
|
+
readonly type: "object";
|
|
144
|
+
readonly additionalProperties: false;
|
|
145
|
+
readonly required: readonly ["sms", "email"];
|
|
146
|
+
readonly description: "Messages handed to each personal channel; zero for a channel the send did not select.";
|
|
147
|
+
readonly properties: {
|
|
148
|
+
readonly sms: {
|
|
149
|
+
readonly type: "integer";
|
|
150
|
+
};
|
|
151
|
+
readonly email: {
|
|
152
|
+
readonly type: "integer";
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
};
|
|
156
|
+
readonly skipped: {
|
|
157
|
+
readonly type: "array";
|
|
158
|
+
readonly description: "Recipients a selected channel could not carry the announcement to. A missing contact detail is a per-channel skip, not a failed send, so one recipient may appear once per channel.";
|
|
159
|
+
readonly items: {
|
|
160
|
+
readonly type: "object";
|
|
161
|
+
readonly required: readonly ["userId", "channel", "reason"];
|
|
162
|
+
readonly additionalProperties: false;
|
|
163
|
+
readonly properties: {
|
|
164
|
+
readonly userId: {
|
|
165
|
+
readonly type: "string";
|
|
166
|
+
};
|
|
167
|
+
readonly channel: {
|
|
168
|
+
readonly type: "string";
|
|
169
|
+
readonly enum: readonly ["sms", "email"];
|
|
170
|
+
};
|
|
171
|
+
readonly reason: {
|
|
172
|
+
readonly type: "string";
|
|
173
|
+
readonly enum: readonly ["no-phone", "no-email"];
|
|
174
|
+
};
|
|
175
|
+
};
|
|
176
|
+
};
|
|
177
|
+
};
|
|
178
|
+
readonly surfaces: {
|
|
179
|
+
readonly type: "array";
|
|
180
|
+
readonly description: "Per-device outcome of the surface page, one entry per device the selectors resolved to. Distinct from the top-level `surfaces`, which is the selector the sender expressed.";
|
|
181
|
+
readonly items: {
|
|
182
|
+
readonly type: "object";
|
|
183
|
+
readonly required: readonly ["deviceId", "status"];
|
|
184
|
+
readonly additionalProperties: false;
|
|
185
|
+
readonly properties: {
|
|
186
|
+
readonly deviceId: {
|
|
187
|
+
readonly type: "string";
|
|
188
|
+
};
|
|
189
|
+
readonly status: {
|
|
190
|
+
readonly type: "string";
|
|
191
|
+
readonly enum: readonly ["sent", "failed", "skipped"];
|
|
192
|
+
};
|
|
193
|
+
readonly reason: {
|
|
194
|
+
readonly type: "string";
|
|
195
|
+
readonly description: '`unsupported` when the driver advertises no content command; absent otherwise.';
|
|
196
|
+
};
|
|
197
|
+
};
|
|
198
|
+
};
|
|
199
|
+
};
|
|
200
|
+
};
|
|
201
|
+
};
|
|
42
202
|
readonly tags: {
|
|
43
203
|
readonly type: "array";
|
|
44
204
|
readonly items: {
|
|
@@ -5,11 +5,7 @@ const announcementSchema = {
|
|
|
5
5
|
title: "Announcement",
|
|
6
6
|
description: "Announcement message sent to users",
|
|
7
7
|
type: "object",
|
|
8
|
-
required: [
|
|
9
|
-
"id",
|
|
10
|
-
"type",
|
|
11
|
-
"body"
|
|
12
|
-
],
|
|
8
|
+
required: ["id", "type"],
|
|
13
9
|
properties: {
|
|
14
10
|
id: { $ref: "definitions.json#/definitions/id" },
|
|
15
11
|
propertyId: {
|
|
@@ -21,15 +17,180 @@ const announcementSchema = {
|
|
|
21
17
|
enum: ["announcement"],
|
|
22
18
|
default: "announcement"
|
|
23
19
|
},
|
|
24
|
-
|
|
20
|
+
status: {
|
|
21
|
+
type: "string",
|
|
22
|
+
description: "`sent` is a real broadcast; `preset` is a named, reusable configuration a sender loads into the composer. Absent on records written before presets existed — read as `sent`.",
|
|
23
|
+
enum: ["sent", "preset"],
|
|
24
|
+
default: "sent"
|
|
25
|
+
},
|
|
26
|
+
name: {
|
|
27
|
+
type: "string",
|
|
28
|
+
description: "Display name of a preset. Sent announcements have none."
|
|
29
|
+
},
|
|
30
|
+
presetId: {
|
|
31
|
+
type: "string",
|
|
32
|
+
description: "The preset this sent announcement was loaded from, when it was."
|
|
33
|
+
},
|
|
34
|
+
audience: {
|
|
35
|
+
$ref: "definitions.json#/definitions/audience",
|
|
36
|
+
description: "Who this announcement was directed at on the people axis. PA surfaces are the other axis and never reach the emergency-contact roster."
|
|
37
|
+
},
|
|
38
|
+
channels: {
|
|
25
39
|
type: "array",
|
|
26
|
-
|
|
27
|
-
|
|
40
|
+
description: "Personal channels this announcement was sent over.",
|
|
41
|
+
items: {
|
|
42
|
+
type: "string",
|
|
43
|
+
enum: ["sms", "email"]
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
subject: {
|
|
47
|
+
type: "string",
|
|
48
|
+
description: "Email subject, and the title shown on a surface."
|
|
49
|
+
},
|
|
50
|
+
surfaces: {
|
|
51
|
+
type: "array",
|
|
52
|
+
description: "Surface channels the announcement was broadcast to, as the sender selected them. `discriminator` is the mediaSource `Device.discriminator` targeted, open for future surface types; only `paSystem` ships today.",
|
|
53
|
+
items: {
|
|
54
|
+
type: "object",
|
|
55
|
+
required: ["discriminator", "scope"],
|
|
56
|
+
properties: {
|
|
57
|
+
discriminator: {
|
|
58
|
+
type: "string",
|
|
59
|
+
enum: ["paSystem"]
|
|
60
|
+
},
|
|
61
|
+
scope: {
|
|
62
|
+
type: "string",
|
|
63
|
+
enum: [
|
|
64
|
+
"all",
|
|
65
|
+
"spaces",
|
|
66
|
+
"devices"
|
|
67
|
+
]
|
|
68
|
+
},
|
|
69
|
+
spaceIds: {
|
|
70
|
+
type: "array",
|
|
71
|
+
items: { type: "string" }
|
|
72
|
+
},
|
|
73
|
+
deviceIds: {
|
|
74
|
+
type: "array",
|
|
75
|
+
items: { type: "string" }
|
|
76
|
+
},
|
|
77
|
+
outputs: {
|
|
78
|
+
type: "array",
|
|
79
|
+
description: "PA output zones to page; all zones when omitted.",
|
|
80
|
+
items: { type: "string" }
|
|
81
|
+
},
|
|
82
|
+
playlistId: {
|
|
83
|
+
type: "string",
|
|
84
|
+
description: "A PA playlist (driver recording) played in place of the spoken body; its zones are the playlist's own."
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
additionalProperties: false
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
body: {
|
|
91
|
+
type: "string",
|
|
92
|
+
description: "The spoken/written message. Optional only when every surface plays a preset and no channel is selected."
|
|
28
93
|
},
|
|
29
|
-
group: { type: "string" },
|
|
30
|
-
body: { type: "string" },
|
|
31
94
|
media: { $ref: "mediaFile.json" },
|
|
32
95
|
sentBy: { type: "string" },
|
|
96
|
+
result: {
|
|
97
|
+
type: "object",
|
|
98
|
+
additionalProperties: false,
|
|
99
|
+
required: [
|
|
100
|
+
"recipientsResolved",
|
|
101
|
+
"perChannel",
|
|
102
|
+
"skipped",
|
|
103
|
+
"surfaces"
|
|
104
|
+
],
|
|
105
|
+
description: "What the send actually achieved, written once at send time and never recomputed. Absent on presets and on sends recorded before this was stored. The `audience.delivery` counts are the same send viewed per audience; this is the per-channel and per-device detail behind them.",
|
|
106
|
+
properties: {
|
|
107
|
+
recipientsResolved: {
|
|
108
|
+
type: "integer",
|
|
109
|
+
minimum: 0,
|
|
110
|
+
description: "How many internal Users the audience selector resolved to. Zero when no personal channel was selected, however wide the selector — an announcement with no channel reaches no User."
|
|
111
|
+
},
|
|
112
|
+
external: {
|
|
113
|
+
type: "object",
|
|
114
|
+
additionalProperties: false,
|
|
115
|
+
required: ["recipients", "delivery"],
|
|
116
|
+
description: "The external SIS roster this send reached. Absent when no external group was named.",
|
|
117
|
+
properties: {
|
|
118
|
+
recipients: {
|
|
119
|
+
type: "integer",
|
|
120
|
+
minimum: 0,
|
|
121
|
+
description: "Size of the roster the named groups resolved to."
|
|
122
|
+
},
|
|
123
|
+
delivery: {
|
|
124
|
+
type: "object",
|
|
125
|
+
additionalProperties: false,
|
|
126
|
+
description: "Per-channel counts, present only for the channels attempted.",
|
|
127
|
+
properties: {
|
|
128
|
+
sms: { $ref: "definitions.json#/definitions/deliveryCounts" },
|
|
129
|
+
email: { $ref: "definitions.json#/definitions/deliveryCounts" }
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
perChannel: {
|
|
135
|
+
type: "object",
|
|
136
|
+
additionalProperties: false,
|
|
137
|
+
required: ["sms", "email"],
|
|
138
|
+
description: "Messages handed to each personal channel; zero for a channel the send did not select.",
|
|
139
|
+
properties: {
|
|
140
|
+
sms: { type: "integer" },
|
|
141
|
+
email: { type: "integer" }
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
skipped: {
|
|
145
|
+
type: "array",
|
|
146
|
+
description: "Recipients a selected channel could not carry the announcement to. A missing contact detail is a per-channel skip, not a failed send, so one recipient may appear once per channel.",
|
|
147
|
+
items: {
|
|
148
|
+
type: "object",
|
|
149
|
+
required: [
|
|
150
|
+
"userId",
|
|
151
|
+
"channel",
|
|
152
|
+
"reason"
|
|
153
|
+
],
|
|
154
|
+
additionalProperties: false,
|
|
155
|
+
properties: {
|
|
156
|
+
userId: { type: "string" },
|
|
157
|
+
channel: {
|
|
158
|
+
type: "string",
|
|
159
|
+
enum: ["sms", "email"]
|
|
160
|
+
},
|
|
161
|
+
reason: {
|
|
162
|
+
type: "string",
|
|
163
|
+
enum: ["no-phone", "no-email"]
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
surfaces: {
|
|
169
|
+
type: "array",
|
|
170
|
+
description: "Per-device outcome of the surface page, one entry per device the selectors resolved to. Distinct from the top-level `surfaces`, which is the selector the sender expressed.",
|
|
171
|
+
items: {
|
|
172
|
+
type: "object",
|
|
173
|
+
required: ["deviceId", "status"],
|
|
174
|
+
additionalProperties: false,
|
|
175
|
+
properties: {
|
|
176
|
+
deviceId: { type: "string" },
|
|
177
|
+
status: {
|
|
178
|
+
type: "string",
|
|
179
|
+
enum: [
|
|
180
|
+
"sent",
|
|
181
|
+
"failed",
|
|
182
|
+
"skipped"
|
|
183
|
+
]
|
|
184
|
+
},
|
|
185
|
+
reason: {
|
|
186
|
+
type: "string",
|
|
187
|
+
description: "`unsupported` when the driver advertises no content command; absent otherwise."
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
},
|
|
33
194
|
tags: {
|
|
34
195
|
type: "array",
|
|
35
196
|
items: { type: "string" }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"announcement.js","names":[],"sources":["../../.generated/schemas/announcement.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const announcementSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"announcement.json\",\n title: \"Announcement\",\n description: \"Announcement message sent to users\",\n type: \"object\",\n required: [\"id\", \"type\", \"body\"],\n properties: {\n id: { $ref: \"definitions.json#/definitions/id\" },\n propertyId: {\n type: \"string\",\n description: \"ID of the property this entity belongs to. Optional — used as a per-document filter inside the org-scoped database.\",\n },\n type: {\n type: \"string\",\n enum: [\"announcement\"],\n default: \"announcement\",\n },\n users: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n minItems: 1,\n },\n group: {\n type: \"string\",\n },\n body: {\n type: \"string\",\n },\n media: {\n $ref: \"mediaFile.json\",\n },\n sentBy: {\n type: \"string\",\n },\n tags: {\n type: \"array\",\n items: {\n 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 additionalProperties: false,\n} as const;\n\nexport type AnnouncementSchema = FromSchema<\n typeof announcementSchema,\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,aAAa;CACb,MAAM;CACN,UAAU;EAAC;EAAM;EAAQ;CAAM;CAC/B,YAAY;EACV,IAAI,EAAE,MAAM,mCAAmC;EAC/C,YAAY;GACV,MAAM;GACN,aAAa;EACf;EACA,MAAM;GACJ,MAAM;GACN,MAAM,CAAC,cAAc;GACrB,SAAS;EACX;EACA,OAAO;GACL,MAAM;GACN,OAAO,EACL,MAAM,SACR;GACA,UAAU;EACZ;EACA,OAAO,EACL,MAAM,SACR;EACA,MAAM,EACJ,MAAM,SACR;EACA,OAAO,EACL,MAAM,iBACR;EACA,QAAQ,EACN,MAAM,SACR;EACA,MAAM;GACJ,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;CACF;CACA,sBAAsB;AACxB"}
|
|
1
|
+
{"version":3,"file":"announcement.js","names":[],"sources":["../../.generated/schemas/announcement.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const announcementSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"announcement.json\",\n title: \"Announcement\",\n description: \"Announcement message sent to users\",\n type: \"object\",\n required: [\"id\", \"type\"],\n properties: {\n id: { $ref: \"definitions.json#/definitions/id\" },\n propertyId: {\n type: \"string\",\n description:\n \"ID of the property this entity belongs to. Optional — used as a per-document filter inside the org-scoped database.\",\n },\n type: {\n type: \"string\",\n enum: [\"announcement\"],\n default: \"announcement\",\n },\n status: {\n type: \"string\",\n description:\n \"`sent` is a real broadcast; `preset` is a named, reusable configuration a sender loads into the composer. Absent on records written before presets existed — read as `sent`.\",\n enum: [\"sent\", \"preset\"],\n default: \"sent\",\n },\n name: {\n type: \"string\",\n description: \"Display name of a preset. Sent announcements have none.\",\n },\n presetId: {\n type: \"string\",\n description:\n \"The preset this sent announcement was loaded from, when it was.\",\n },\n audience: {\n $ref: \"definitions.json#/definitions/audience\",\n description:\n \"Who this announcement was directed at on the people axis. PA surfaces are the other axis and never reach the emergency-contact roster.\",\n },\n channels: {\n type: \"array\",\n description: \"Personal channels this announcement was sent over.\",\n items: {\n type: \"string\",\n enum: [\"sms\", \"email\"],\n },\n },\n subject: {\n type: \"string\",\n description: \"Email subject, and the title shown on a surface.\",\n },\n surfaces: {\n type: \"array\",\n description:\n \"Surface channels the announcement was broadcast to, as the sender selected them. `discriminator` is the mediaSource `Device.discriminator` targeted, open for future surface types; only `paSystem` ships today.\",\n items: {\n type: \"object\",\n required: [\"discriminator\", \"scope\"],\n properties: {\n discriminator: {\n type: \"string\",\n enum: [\"paSystem\"],\n },\n scope: {\n type: \"string\",\n enum: [\"all\", \"spaces\", \"devices\"],\n },\n spaceIds: {\n type: \"array\",\n items: { type: \"string\" },\n },\n deviceIds: {\n type: \"array\",\n items: { type: \"string\" },\n },\n outputs: {\n type: \"array\",\n description: \"PA output zones to page; all zones when omitted.\",\n items: { type: \"string\" },\n },\n playlistId: {\n type: \"string\",\n description:\n \"A PA playlist (driver recording) played in place of the spoken body; its zones are the playlist's own.\",\n },\n },\n additionalProperties: false,\n },\n },\n body: {\n type: \"string\",\n description:\n \"The spoken/written message. Optional only when every surface plays a preset and no channel is selected.\",\n },\n media: {\n $ref: \"mediaFile.json\",\n },\n sentBy: {\n type: \"string\",\n },\n result: {\n type: \"object\",\n additionalProperties: false,\n required: [\"recipientsResolved\", \"perChannel\", \"skipped\", \"surfaces\"],\n description:\n \"What the send actually achieved, written once at send time and never recomputed. Absent on presets and on sends recorded before this was stored. The `audience.delivery` counts are the same send viewed per audience; this is the per-channel and per-device detail behind them.\",\n properties: {\n recipientsResolved: {\n type: \"integer\",\n minimum: 0,\n description:\n \"How many internal Users the audience selector resolved to. Zero when no personal channel was selected, however wide the selector — an announcement with no channel reaches no User.\",\n },\n external: {\n type: \"object\",\n additionalProperties: false,\n required: [\"recipients\", \"delivery\"],\n description:\n \"The external SIS roster this send reached. Absent when no external group was named.\",\n properties: {\n recipients: {\n type: \"integer\",\n minimum: 0,\n description: \"Size of the roster the named groups resolved to.\",\n },\n delivery: {\n type: \"object\",\n additionalProperties: false,\n description:\n \"Per-channel counts, present only for the channels attempted.\",\n properties: {\n sms: { $ref: \"definitions.json#/definitions/deliveryCounts\" },\n email: { $ref: \"definitions.json#/definitions/deliveryCounts\" },\n },\n },\n },\n },\n perChannel: {\n type: \"object\",\n additionalProperties: false,\n required: [\"sms\", \"email\"],\n description:\n \"Messages handed to each personal channel; zero for a channel the send did not select.\",\n properties: {\n sms: { type: \"integer\" },\n email: { type: \"integer\" },\n },\n },\n skipped: {\n type: \"array\",\n description:\n \"Recipients a selected channel could not carry the announcement to. A missing contact detail is a per-channel skip, not a failed send, so one recipient may appear once per channel.\",\n items: {\n type: \"object\",\n required: [\"userId\", \"channel\", \"reason\"],\n additionalProperties: false,\n properties: {\n userId: { type: \"string\" },\n channel: { type: \"string\", enum: [\"sms\", \"email\"] },\n reason: { type: \"string\", enum: [\"no-phone\", \"no-email\"] },\n },\n },\n },\n surfaces: {\n type: \"array\",\n description:\n \"Per-device outcome of the surface page, one entry per device the selectors resolved to. Distinct from the top-level `surfaces`, which is the selector the sender expressed.\",\n items: {\n type: \"object\",\n required: [\"deviceId\", \"status\"],\n additionalProperties: false,\n properties: {\n deviceId: { type: \"string\" },\n status: {\n type: \"string\",\n enum: [\"sent\", \"failed\", \"skipped\"],\n },\n reason: {\n type: \"string\",\n description:\n '`unsupported` when the driver advertises no content command; absent otherwise.',\n },\n },\n },\n },\n },\n },\n tags: {\n type: \"array\",\n items: {\n 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 additionalProperties: false,\n} as const;\n\nexport type AnnouncementSchema = FromSchema<\n typeof announcementSchema,\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,aAAa;CACb,MAAM;CACN,UAAU,CAAC,MAAM,MAAM;CACvB,YAAY;EACV,IAAI,EAAE,MAAM,mCAAmC;EAC/C,YAAY;GACV,MAAM;GACN,aACE;EACJ;EACA,MAAM;GACJ,MAAM;GACN,MAAM,CAAC,cAAc;GACrB,SAAS;EACX;EACA,QAAQ;GACN,MAAM;GACN,aACE;GACF,MAAM,CAAC,QAAQ,QAAQ;GACvB,SAAS;EACX;EACA,MAAM;GACJ,MAAM;GACN,aAAa;EACf;EACA,UAAU;GACR,MAAM;GACN,aACE;EACJ;EACA,UAAU;GACR,MAAM;GACN,aACE;EACJ;EACA,UAAU;GACR,MAAM;GACN,aAAa;GACb,OAAO;IACL,MAAM;IACN,MAAM,CAAC,OAAO,OAAO;GACvB;EACF;EACA,SAAS;GACP,MAAM;GACN,aAAa;EACf;EACA,UAAU;GACR,MAAM;GACN,aACE;GACF,OAAO;IACL,MAAM;IACN,UAAU,CAAC,iBAAiB,OAAO;IACnC,YAAY;KACV,eAAe;MACb,MAAM;MACN,MAAM,CAAC,UAAU;KACnB;KACA,OAAO;MACL,MAAM;MACN,MAAM;OAAC;OAAO;OAAU;MAAS;KACnC;KACA,UAAU;MACR,MAAM;MACN,OAAO,EAAE,MAAM,SAAS;KAC1B;KACA,WAAW;MACT,MAAM;MACN,OAAO,EAAE,MAAM,SAAS;KAC1B;KACA,SAAS;MACP,MAAM;MACN,aAAa;MACb,OAAO,EAAE,MAAM,SAAS;KAC1B;KACA,YAAY;MACV,MAAM;MACN,aACE;KACJ;IACF;IACA,sBAAsB;GACxB;EACF;EACA,MAAM;GACJ,MAAM;GACN,aACE;EACJ;EACA,OAAO,EACL,MAAM,iBACR;EACA,QAAQ,EACN,MAAM,SACR;EACA,QAAQ;GACN,MAAM;GACN,sBAAsB;GACtB,UAAU;IAAC;IAAsB;IAAc;IAAW;GAAU;GACpE,aACE;GACF,YAAY;IACV,oBAAoB;KAClB,MAAM;KACN,SAAS;KACT,aACE;IACJ;IACA,UAAU;KACR,MAAM;KACN,sBAAsB;KACtB,UAAU,CAAC,cAAc,UAAU;KACnC,aACE;KACF,YAAY;MACV,YAAY;OACV,MAAM;OACN,SAAS;OACT,aAAa;MACf;MACA,UAAU;OACR,MAAM;OACN,sBAAsB;OACtB,aACE;OACF,YAAY;QACV,KAAK,EAAE,MAAM,+CAA+C;QAC5D,OAAO,EAAE,MAAM,+CAA+C;OAChE;MACF;KACF;IACF;IACA,YAAY;KACV,MAAM;KACN,sBAAsB;KACtB,UAAU,CAAC,OAAO,OAAO;KACzB,aACE;KACF,YAAY;MACV,KAAK,EAAE,MAAM,UAAU;MACvB,OAAO,EAAE,MAAM,UAAU;KAC3B;IACF;IACA,SAAS;KACP,MAAM;KACN,aACE;KACF,OAAO;MACL,MAAM;MACN,UAAU;OAAC;OAAU;OAAW;MAAQ;MACxC,sBAAsB;MACtB,YAAY;OACV,QAAQ,EAAE,MAAM,SAAS;OACzB,SAAS;QAAE,MAAM;QAAU,MAAM,CAAC,OAAO,OAAO;OAAE;OAClD,QAAQ;QAAE,MAAM;QAAU,MAAM,CAAC,YAAY,UAAU;OAAE;MAC3D;KACF;IACF;IACA,UAAU;KACR,MAAM;KACN,aACE;KACF,OAAO;MACL,MAAM;MACN,UAAU,CAAC,YAAY,QAAQ;MAC/B,sBAAsB;MACtB,YAAY;OACV,UAAU,EAAE,MAAM,SAAS;OAC3B,QAAQ;QACN,MAAM;QACN,MAAM;SAAC;SAAQ;SAAU;QAAS;OACpC;OACA,QAAQ;QACN,MAAM;QACN,aACE;OACJ;MACF;KACF;IACF;GACF;EACF;EACA,MAAM;GACJ,MAAM;GACN,OAAO,EACL,MAAM,SACR;EACF;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;CACF;CACA,sBAAsB;AACxB"}
|
|
@@ -40,7 +40,17 @@ export declare const categorySchema: {
|
|
|
40
40
|
};
|
|
41
41
|
readonly discriminator: {
|
|
42
42
|
readonly type: "string";
|
|
43
|
-
readonly enum: readonly ["space", "product", "mediaFile", "property", "user"];
|
|
43
|
+
readonly enum: readonly ["space", "product", "mediaFile", "property", "user", "resource"];
|
|
44
|
+
};
|
|
45
|
+
readonly iconKey: {
|
|
46
|
+
readonly type: "string";
|
|
47
|
+
readonly minLength: 1;
|
|
48
|
+
readonly description: "Key into the app's curated icon gallery for this category's discriminator, selecting the glyph shown beside the name. Used by `resource` categories; the app falls back to a default glyph when unset or unrecognized.";
|
|
49
|
+
};
|
|
50
|
+
readonly color: {
|
|
51
|
+
readonly type: readonly ["string", "null"];
|
|
52
|
+
readonly pattern: "^#[0-9a-fA-F]{6}$";
|
|
53
|
+
readonly description: "Accent color for the category as a hex value, e.g. #3B93F0";
|
|
44
54
|
};
|
|
45
55
|
readonly systemId: {
|
|
46
56
|
readonly $ref: "definitions.json#/definitions/systemId";
|
package/dist/schemas/category.js
CHANGED
|
@@ -40,9 +40,20 @@ const categorySchema = {
|
|
|
40
40
|
"product",
|
|
41
41
|
"mediaFile",
|
|
42
42
|
"property",
|
|
43
|
-
"user"
|
|
43
|
+
"user",
|
|
44
|
+
"resource"
|
|
44
45
|
]
|
|
45
46
|
},
|
|
47
|
+
iconKey: {
|
|
48
|
+
type: "string",
|
|
49
|
+
minLength: 1,
|
|
50
|
+
description: "Key into the app's curated icon gallery for this category's discriminator, selecting the glyph shown beside the name. Used by `resource` categories; the app falls back to a default glyph when unset or unrecognized."
|
|
51
|
+
},
|
|
52
|
+
color: {
|
|
53
|
+
type: ["string", "null"],
|
|
54
|
+
pattern: "^#[0-9a-fA-F]{6}$",
|
|
55
|
+
description: "Accent color for the category as a hex value, e.g. #3B93F0"
|
|
56
|
+
},
|
|
46
57
|
systemId: { $ref: "definitions.json#/definitions/systemId" },
|
|
47
58
|
createdAt: { $ref: "definitions.json#/definitions/date" },
|
|
48
59
|
updatedAt: { $ref: "definitions.json#/definitions/date" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.js","names":[],"sources":["../../.generated/schemas/category.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const categorySchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"category.json\",\n title: \"Category\",\n type: \"object\",\n required: [\"id\", \"type\", \"discriminator\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n propertyId: {\n type: \"string\",\n description
|
|
1
|
+
{"version":3,"file":"category.js","names":[],"sources":["../../.generated/schemas/category.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const categorySchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"category.json\",\n title: \"Category\",\n type: \"object\",\n required: [\"id\", \"type\", \"discriminator\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n propertyId: {\n type: \"string\",\n description:\n \"ID of the property this entity belongs to. Optional — used as a per-document filter inside the org-scoped database.\",\n },\n type: {\n type: \"string\",\n enum: [\"category\"],\n default: \"category\",\n },\n name: {\n type: \"string\",\n minLength: 1,\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n description: {\n type: \"string\",\n },\n image: {\n $ref: \"mediaFile.json\",\n },\n rating: {\n type: \"number\",\n minimum: 0,\n maximum: 10,\n default: 9,\n },\n discriminator: {\n type: \"string\",\n enum: [\"space\", \"product\", \"mediaFile\", \"property\", \"user\", \"resource\"],\n },\n iconKey: {\n type: \"string\",\n minLength: 1,\n description:\n \"Key into the app's curated icon gallery for this category's discriminator, selecting the glyph shown beside the name. Used by `resource` categories; the app falls back to a default glyph when unset or unrecognized.\",\n },\n color: {\n type: [\"string\", \"null\"],\n pattern: \"^#[0-9a-fA-F]{6}$\",\n description:\n \"Accent color for the category as a hex value, e.g. #3B93F0\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\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 additionalProperties: false,\n} as const;\n\nexport type CategorySchema = FromSchema<\n typeof categorySchema,\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,UAAU;EAAC;EAAM;EAAQ;CAAe;CACxC,YAAY;EACV,IAAI,EACF,MAAM,mCACR;EACA,YAAY;GACV,MAAM;GACN,aACE;EACJ;EACA,MAAM;GACJ,MAAM;GACN,MAAM,CAAC,UAAU;GACjB,SAAS;EACX;EACA,MAAM;GACJ,MAAM;GACN,WAAW;EACb;EACA,QAAQ,EACN,MAAM,uCACR;EACA,aAAa,EACX,MAAM,SACR;EACA,OAAO,EACL,MAAM,iBACR;EACA,QAAQ;GACN,MAAM;GACN,SAAS;GACT,SAAS;GACT,SAAS;EACX;EACA,eAAe;GACb,MAAM;GACN,MAAM;IAAC;IAAS;IAAW;IAAa;IAAY;IAAQ;GAAU;EACxE;EACA,SAAS;GACP,MAAM;GACN,WAAW;GACX,aACE;EACJ;EACA,OAAO;GACL,MAAM,CAAC,UAAU,MAAM;GACvB,SAAS;GACT,aACE;EACJ;EACA,UAAU,EACR,MAAM,yCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;EACA,WAAW,EACT,MAAM,qCACR;CACF;CACA,sBAAsB;AACxB"}
|