@kohost/api-client 4.15.4 → 4.16.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 (37) hide show
  1. package/dist/cjs/models/issue.cjs +0 -1
  2. package/dist/cjs/models/issue.cjs.map +1 -1
  3. package/dist/cjs/models/property.cjs +0 -1
  4. package/dist/cjs/models/property.cjs.map +1 -1
  5. package/dist/cjs/models/ticket.cjs +0 -1
  6. package/dist/cjs/models/ticket.cjs.map +1 -1
  7. package/dist/cjs/schemas/issue.cjs +0 -3
  8. package/dist/cjs/schemas/issue.cjs.map +1 -1
  9. package/dist/cjs/schemas/issue.d.cts +0 -3
  10. package/dist/cjs/schemas/property.cjs +0 -6
  11. package/dist/cjs/schemas/property.cjs.map +1 -1
  12. package/dist/cjs/schemas/property.d.cts +0 -6
  13. package/dist/cjs/schemas/ticket.cjs +0 -3
  14. package/dist/cjs/schemas/ticket.cjs.map +1 -1
  15. package/dist/cjs/schemas/ticket.d.cts +0 -3
  16. package/dist/cjs/schemas/user.cjs +0 -4
  17. package/dist/cjs/schemas/user.cjs.map +1 -1
  18. package/dist/cjs/schemas/user.d.cts +0 -4
  19. package/dist/esm/models/issue.js +0 -1
  20. package/dist/esm/models/issue.js.map +1 -1
  21. package/dist/esm/models/property.js +0 -1
  22. package/dist/esm/models/property.js.map +1 -1
  23. package/dist/esm/models/ticket.js +0 -1
  24. package/dist/esm/models/ticket.js.map +1 -1
  25. package/dist/esm/schemas/issue.d.ts +0 -3
  26. package/dist/esm/schemas/issue.js +0 -3
  27. package/dist/esm/schemas/issue.js.map +1 -1
  28. package/dist/esm/schemas/property.d.ts +0 -6
  29. package/dist/esm/schemas/property.js +0 -6
  30. package/dist/esm/schemas/property.js.map +1 -1
  31. package/dist/esm/schemas/ticket.d.ts +0 -3
  32. package/dist/esm/schemas/ticket.js +0 -3
  33. package/dist/esm/schemas/ticket.js.map +1 -1
  34. package/dist/esm/schemas/user.d.ts +0 -4
  35. package/dist/esm/schemas/user.js +0 -4
  36. package/dist/esm/schemas/user.js.map +1 -1
  37. package/package.json +1 -1
@@ -34,7 +34,6 @@ class Issue extends import_entity.Entity {
34
34
  this.type = data.type;
35
35
  this.name = data.name;
36
36
  if (data.description !== void 0) this.description = data.description;
37
- if (data.department !== void 0) this.department = data.department;
38
37
  if (data.departmentId !== void 0) this.departmentId = data.departmentId;
39
38
  if (data.autoAssign !== void 0) this.autoAssign = data.autoAssign;
40
39
  if (data.notify !== void 0) this.notify = data.notify;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/models/issue.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateIssue as validate } from \"../validate.js\";\nimport { issueSchema, type IssueSchema } from \"../schemas/issue.js\";\n\n/**\n * Data type for Issue constructor - exported for backwards compatibility\n */\nexport type IssueData = IssueSchema;\n\n/**\n * An issue associated with ticketing and concierge.\n */\nexport interface Issue extends IssueSchema {}\nexport class Issue extends Entity {\n declare schema: typeof issueSchema;\n declare validator: typeof validate;\n\n constructor(data: IssueSchema) {\n super(data);\n this.id = data.id;\n this.type = data.type;\n this.name = data.name;\n if (data.description !== undefined) this.description = data.description;\n if (data.department !== undefined) this.department = data.department;\n if (data.departmentId !== undefined) this.departmentId = data.departmentId;\n if (data.autoAssign !== undefined) this.autoAssign = data.autoAssign;\n if (data.notify !== undefined) this.notify = data.notify;\n if (data.systemKey !== undefined) this.systemKey = data.systemKey;\n if (data.autoCreateTicket !== undefined)\n this.autoCreateTicket = data.autoCreateTicket;\n if (data.excludedResources !== undefined)\n this.excludedResources = data.excludedResources;\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\nObject.defineProperty(Issue.prototype, \"schema\", {\n value: issueSchema,\n});\n\nObject.defineProperty(Issue.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAuB;AACvB,sBAA0C;AAC1C,mBAA8C;AAWvC,MAAM,cAAc,qBAAO;AAAA,EAflC,OAekC;AAAA;AAAA;AAAA,EAIhC,YAAY,MAAmB;AAC7B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,qBAAqB;AAC5B,WAAK,mBAAmB,KAAK;AAC/B,QAAI,KAAK,sBAAsB;AAC7B,WAAK,oBAAoB,KAAK;AAChC,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,MAAM,WAAW,UAAU;AAAA,EAC/C,OAAO;AACT,CAAC;AAED,OAAO,eAAe,MAAM,WAAW,aAAa;AAAA,EAClD,KAAK,kCAAY;AACf,WAAO,gBAAAA;AAAA,EACT,GAFK;AAGP,CAAC;","names":["validate"]}
1
+ {"version":3,"sources":["../../../.generated/models/issue.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateIssue as validate } from \"../validate.js\";\nimport { issueSchema, type IssueSchema } from \"../schemas/issue.js\";\n\n/**\n * Data type for Issue constructor - exported for backwards compatibility\n */\nexport type IssueData = IssueSchema;\n\n/**\n * An issue associated with ticketing and concierge.\n */\nexport interface Issue extends IssueSchema {}\nexport class Issue extends Entity {\n declare schema: typeof issueSchema;\n declare validator: typeof validate;\n\n constructor(data: IssueSchema) {\n super(data);\n this.id = data.id;\n this.type = data.type;\n this.name = data.name;\n if (data.description !== undefined) this.description = data.description;\n if (data.departmentId !== undefined) this.departmentId = data.departmentId;\n if (data.autoAssign !== undefined) this.autoAssign = data.autoAssign;\n if (data.notify !== undefined) this.notify = data.notify;\n if (data.systemKey !== undefined) this.systemKey = data.systemKey;\n if (data.autoCreateTicket !== undefined)\n this.autoCreateTicket = data.autoCreateTicket;\n if (data.excludedResources !== undefined)\n this.excludedResources = data.excludedResources;\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\nObject.defineProperty(Issue.prototype, \"schema\", {\n value: issueSchema,\n});\n\nObject.defineProperty(Issue.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAuB;AACvB,sBAA0C;AAC1C,mBAA8C;AAWvC,MAAM,cAAc,qBAAO;AAAA,EAflC,OAekC;AAAA;AAAA;AAAA,EAIhC,YAAY,MAAmB;AAC7B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,qBAAqB;AAC5B,WAAK,mBAAmB,KAAK;AAC/B,QAAI,KAAK,sBAAsB;AAC7B,WAAK,oBAAoB,KAAK;AAChC,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,MAAM,WAAW,UAAU;AAAA,EAC/C,OAAO;AACT,CAAC;AAED,OAAO,eAAe,MAAM,WAAW,aAAa;AAAA,EAClD,KAAK,kCAAY;AACf,WAAO,gBAAAA;AAAA,EACT,GAFK;AAGP,CAAC;","names":["validate"]}
@@ -35,7 +35,6 @@ class Property extends import_entity.Entity {
35
35
  this.type = data.type;
36
36
  this.discriminator = data.discriminator;
37
37
  this.organization = data.organization;
38
- if (data.departments !== void 0) this.departments = data.departments;
39
38
  if (data.testModeEnabled !== void 0)
40
39
  this.testModeEnabled = data.testModeEnabled;
41
40
  if (data.testMode !== void 0) this.testMode = data.testMode;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/models/property.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateProperty as validate } from \"../validate.js\";\nimport { propertySchema, type PropertySchema } from \"../schemas/property.js\";\n\n/**\n * Data type for Property constructor - exported for backwards compatibility\n */\nexport type PropertyData = PropertySchema;\n\n/**\n * A property is a physical asset or building\n */\nexport interface Property extends PropertySchema {}\nexport class Property extends Entity {\n declare schema: typeof propertySchema;\n declare validator: typeof validate;\n\n constructor(data: PropertySchema) {\n super(data);\n this.id = data.id;\n this.name = data.name;\n this.type = data.type;\n this.discriminator = data.discriminator;\n this.organization = data.organization;\n if (data.departments !== undefined) this.departments = data.departments;\n if (data.testModeEnabled !== undefined)\n this.testModeEnabled = data.testModeEnabled;\n if (data.testMode !== undefined) this.testMode = data.testMode;\n this.timezone = data.timezone;\n if (data.smsNumber !== undefined) this.smsNumber = data.smsNumber;\n if (data.voiceNumber !== undefined) this.voiceNumber = data.voiceNumber;\n if (data.tags !== undefined) this.tags = data.tags;\n if (data.checkInTime !== undefined) this.checkInTime = data.checkInTime;\n if (data.checkOutTime !== undefined) this.checkOutTime = data.checkOutTime;\n if (data.address !== undefined) this.address = data.address;\n if (data.latitude !== undefined) this.latitude = data.latitude;\n if (data.longitude !== undefined) this.longitude = data.longitude;\n if (data.appFeatures !== undefined) this.appFeatures = data.appFeatures;\n if (data.notifications !== undefined)\n this.notifications = data.notifications;\n if (data.credentials !== undefined) this.credentials = data.credentials;\n }\n}\n\nObject.defineProperty(Property.prototype, \"schema\", {\n value: propertySchema,\n});\n\nObject.defineProperty(Property.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAuB;AACvB,sBAA6C;AAC7C,sBAAoD;AAW7C,MAAM,iBAAiB,qBAAO;AAAA,EAfrC,OAeqC;AAAA;AAAA;AAAA,EAInC,YAAY,MAAsB;AAChC,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,SAAK,gBAAgB,KAAK;AAC1B,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,oBAAoB;AAC3B,WAAK,kBAAkB,KAAK;AAC9B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,WAAW,KAAK;AACrB,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAAA,EAC9D;AACF;AAEA,OAAO,eAAe,SAAS,WAAW,UAAU;AAAA,EAClD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,SAAS,WAAW,aAAa;AAAA,EACrD,KAAK,kCAAY;AACf,WAAO,gBAAAA;AAAA,EACT,GAFK;AAGP,CAAC;","names":["validate"]}
1
+ {"version":3,"sources":["../../../.generated/models/property.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateProperty as validate } from \"../validate.js\";\nimport { propertySchema, type PropertySchema } from \"../schemas/property.js\";\n\n/**\n * Data type for Property constructor - exported for backwards compatibility\n */\nexport type PropertyData = PropertySchema;\n\n/**\n * A property is a physical asset or building\n */\nexport interface Property extends PropertySchema {}\nexport class Property extends Entity {\n declare schema: typeof propertySchema;\n declare validator: typeof validate;\n\n constructor(data: PropertySchema) {\n super(data);\n this.id = data.id;\n this.name = data.name;\n this.type = data.type;\n this.discriminator = data.discriminator;\n this.organization = data.organization;\n if (data.testModeEnabled !== undefined)\n this.testModeEnabled = data.testModeEnabled;\n if (data.testMode !== undefined) this.testMode = data.testMode;\n this.timezone = data.timezone;\n if (data.smsNumber !== undefined) this.smsNumber = data.smsNumber;\n if (data.voiceNumber !== undefined) this.voiceNumber = data.voiceNumber;\n if (data.tags !== undefined) this.tags = data.tags;\n if (data.checkInTime !== undefined) this.checkInTime = data.checkInTime;\n if (data.checkOutTime !== undefined) this.checkOutTime = data.checkOutTime;\n if (data.address !== undefined) this.address = data.address;\n if (data.latitude !== undefined) this.latitude = data.latitude;\n if (data.longitude !== undefined) this.longitude = data.longitude;\n if (data.appFeatures !== undefined) this.appFeatures = data.appFeatures;\n if (data.notifications !== undefined)\n this.notifications = data.notifications;\n if (data.credentials !== undefined) this.credentials = data.credentials;\n }\n}\n\nObject.defineProperty(Property.prototype, \"schema\", {\n value: propertySchema,\n});\n\nObject.defineProperty(Property.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAuB;AACvB,sBAA6C;AAC7C,sBAAoD;AAW7C,MAAM,iBAAiB,qBAAO;AAAA,EAfrC,OAeqC;AAAA;AAAA;AAAA,EAInC,YAAY,MAAsB;AAChC,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,SAAK,gBAAgB,KAAK;AAC1B,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,oBAAoB;AAC3B,WAAK,kBAAkB,KAAK;AAC9B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,WAAW,KAAK;AACrB,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAAA,EAC9D;AACF;AAEA,OAAO,eAAe,SAAS,WAAW,UAAU;AAAA,EAClD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,SAAS,WAAW,aAAa;AAAA,EACrD,KAAK,kCAAY;AACf,WAAO,gBAAAA;AAAA,EACT,GAFK;AAGP,CAAC;","names":["validate"]}
@@ -46,7 +46,6 @@ class Ticket extends import_entity.Entity {
46
46
  this.status = data.status;
47
47
  if (data.priority !== void 0) this.priority = data.priority;
48
48
  this.tags = data.tags;
49
- if (data.department !== void 0) this.department = data.department;
50
49
  if (data.rating !== void 0) this.rating = data.rating;
51
50
  if (data.ratingComment !== void 0)
52
51
  this.ratingComment = data.ratingComment;
@@ -1 +1 @@
1
- {"version":3,"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.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 this.conversation = data.conversation;\n if (data.subject !== undefined) this.subject = data.subject;\n if (data.openedBy !== undefined) this.openedBy = data.openedBy;\n this.requester = data.requester;\n if (data.assignedTo !== undefined) 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 if (data.priority !== undefined) this.priority = data.priority;\n this.tags = data.tags;\n if (data.department !== undefined) this.department = data.department;\n if (data.rating !== undefined) this.rating = data.rating;\n if (data.ratingComment !== undefined)\n this.ratingComment = data.ratingComment;\n if (data.tipAmount !== undefined) this.tipAmount = data.tipAmount;\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.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":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAuB;AACvB,sBAA2C;AAC3C,oBAAgD;AAWzC,MAAM,eAAe,qBAAO;AAAA,EAfnC,OAemC;AAAA;AAAA;AAAA,EAIjC,YAAY,MAAoB;AAC9B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,SAAS,KAAK;AACnB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,SAAK,YAAY,KAAK;AACtB,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,OAAO,WAAW,UAAU;AAAA,EAChD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,OAAO,WAAW,aAAa;AAAA,EACnD,KAAK,kCAAY;AACf,WAAO,gBAAAA;AAAA,EACT,GAFK;AAGP,CAAC;","names":["validate"]}
1
+ {"version":3,"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.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 this.conversation = data.conversation;\n if (data.subject !== undefined) this.subject = data.subject;\n if (data.openedBy !== undefined) this.openedBy = data.openedBy;\n this.requester = data.requester;\n if (data.assignedTo !== undefined) 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 if (data.priority !== undefined) this.priority = data.priority;\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.tipAmount !== undefined) this.tipAmount = data.tipAmount;\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.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":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAuB;AACvB,sBAA2C;AAC3C,oBAAgD;AAWzC,MAAM,eAAe,qBAAO;AAAA,EAfnC,OAemC;AAAA;AAAA;AAAA,EAIjC,YAAY,MAAoB;AAC9B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,SAAS,KAAK;AACnB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,SAAK,YAAY,KAAK;AACtB,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,OAAO,WAAW,UAAU;AAAA,EAChD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,OAAO,WAAW,aAAa;AAAA,EACnD,KAAK,kCAAY;AACf,WAAO,gBAAAA;AAAA,EACT,GAFK;AAGP,CAAC;","names":["validate"]}
@@ -43,9 +43,6 @@ const issueSchema = {
43
43
  description: {
44
44
  type: "string"
45
45
  },
46
- department: {
47
- type: "string"
48
- },
49
46
  departmentId: {
50
47
  type: "string",
51
48
  description: "The ID of the department that this issue is associated with."
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/issue.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { ticketSchema } from \"./ticket\";\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 department: {\n type: \"string\",\n },\n departmentId: {\n type: \"string\",\n description:\n \"The ID of the department that this issue is associated with.\",\n },\n autoAssign: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n userId: {\n type: \"string\",\n description: \"The user ID to assign tickets with this issue to.\",\n },\n vendorId: {\n type: \"string\",\n description: \"The vendor ID to assign tickets with this issue to.\",\n },\n priority: {\n $ref: \"ticket.json#/properties/priority\",\n description: \"The priority to assign tickets with this issue to.\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n notify: {\n type: \"array\",\n description: \"A list of entities to notify when this issue is triggered.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n systemKey: {\n type: \"string\",\n },\n autoCreateTicket: {\n type: \"boolean\",\n default: true,\n },\n excludedResources: {\n type: \"array\",\n description:\n \"A list of resources that should not trigger notifications of this issue\",\n items: {\n type: \"string\",\n },\n default: [],\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":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIO,MAAM,cAAc;AAAA,EACzB,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,MAAM;AAAA,EAC/B,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,aACE;AAAA,IACJ;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,MACN,sBAAsB;AAAA,MACtB,YAAY;AAAA,QACV,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,OAAO;AAAA,YACL,MAAM;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS,CAAC;AAAA,MACV,OAAO;AAAA,QACL,MAAM;AAAA,QACN,UAAU,CAAC,MAAM,eAAe;AAAA,QAChC,sBAAsB;AAAA,QACtB,YAAY;AAAA,UACV,IAAI;AAAA,YACF,MAAM;AAAA,YACN,aAAa;AAAA,UACf;AAAA,UACA,eAAe;AAAA,YACb,MAAM;AAAA,YACN,MAAM,CAAC,MAAM;AAAA,UACf;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,aACE;AAAA,MACF,OAAO;AAAA,QACL,MAAM;AAAA,MACR;AAAA,MACA,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/issue.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { ticketSchema } from \"./ticket\";\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.\",\n },\n autoAssign: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n userId: {\n type: \"string\",\n description: \"The user ID to assign tickets with this issue to.\",\n },\n vendorId: {\n type: \"string\",\n description: \"The vendor ID to assign tickets with this issue to.\",\n },\n priority: {\n $ref: \"ticket.json#/properties/priority\",\n description: \"The priority to assign tickets with this issue to.\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n notify: {\n type: \"array\",\n description: \"A list of entities to notify when this issue is triggered.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n systemKey: {\n type: \"string\",\n },\n autoCreateTicket: {\n type: \"boolean\",\n default: true,\n },\n excludedResources: {\n type: \"array\",\n description:\n \"A list of resources that should not trigger notifications of this issue\",\n items: {\n type: \"string\",\n },\n default: [],\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":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIO,MAAM,cAAc;AAAA,EACzB,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,MAAM;AAAA,EAC/B,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,aACE;AAAA,IACJ;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,MACN,sBAAsB;AAAA,MACtB,YAAY;AAAA,QACV,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,OAAO;AAAA,YACL,MAAM;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS,CAAC;AAAA,MACV,OAAO;AAAA,QACL,MAAM;AAAA,QACN,UAAU,CAAC,MAAM,eAAe;AAAA,QAChC,sBAAsB;AAAA,QACtB,YAAY;AAAA,UACV,IAAI;AAAA,YACF,MAAM;AAAA,YACN,aAAa;AAAA,UACf;AAAA,UACA,eAAe;AAAA,YACb,MAAM;AAAA,YACN,MAAM,CAAC,MAAM;AAAA,UACf;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,aACE;AAAA,MACF,OAAO;AAAA,QACL,MAAM;AAAA,MACR;AAAA,MACA,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
@@ -26,9 +26,6 @@ declare const issueSchema: {
26
26
  readonly description: {
27
27
  readonly type: "string";
28
28
  };
29
- readonly department: {
30
- readonly type: "string";
31
- };
32
29
  readonly departmentId: {
33
30
  readonly type: "string";
34
31
  readonly description: "The ID of the department that this issue is associated with.";
@@ -47,12 +47,6 @@ const propertySchema = {
47
47
  type: "string",
48
48
  description: "Reference (id) to the organization that owns this property"
49
49
  },
50
- departments: {
51
- type: "array",
52
- items: {
53
- type: "string"
54
- }
55
- },
56
50
  testModeEnabled: {
57
51
  type: "boolean"
58
52
  },
@@ -1 +1 @@
1
- {"version":3,"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: [\"hospitality\", \"education\", \"commercial\", \"storage\"],\n },\n organization: {\n type: \"string\",\n description: \"Reference (id) to the organization that owns this property\",\n },\n departments: {\n type: \"array\",\n items: {\n type: \"string\",\n },\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 checkInTime: {\n type: \"string\",\n },\n checkOutTime: {\n type: \"string\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n latitude: {\n type: \"number\",\n },\n longitude: {\n type: \"number\",\n },\n appFeatures: {\n type: \"object\",\n properties: {\n RoomControl: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n disabledSystems: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\"climate\", \"lights\", \"shades\", \"tv\", \"doors\"],\n },\n },\n excludedDeviceIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\n },\n commonAreas: {\n type: \"object\",\n properties: {\n spaces: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\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 newTicketCCs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\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 issues: {\n type: \"object\",\n properties: {\n syncWithPropertyId: {\n type: \"string\",\n },\n },\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 activeEmergencies: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\n \"medical\",\n \"fire\",\n \"suspiciousPerson\",\n \"other\",\n \"conflict\",\n \"shooter\",\n ],\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 },\n additionalProperties: false,\n default: {\n RoomControl: {},\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 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":"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","names":[]}
1
+ {"version":3,"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: [\"hospitality\", \"education\", \"commercial\", \"storage\"],\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 checkInTime: {\n type: \"string\",\n },\n checkOutTime: {\n type: \"string\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n latitude: {\n type: \"number\",\n },\n longitude: {\n type: \"number\",\n },\n appFeatures: {\n type: \"object\",\n properties: {\n RoomControl: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n disabledSystems: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\"climate\", \"lights\", \"shades\", \"tv\", \"doors\"],\n },\n },\n excludedDeviceIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\n },\n commonAreas: {\n type: \"object\",\n properties: {\n spaces: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\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 newTicketCCs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\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 issues: {\n type: \"object\",\n properties: {\n syncWithPropertyId: {\n type: \"string\",\n },\n },\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 activeEmergencies: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\n \"medical\",\n \"fire\",\n \"suspiciousPerson\",\n \"other\",\n \"conflict\",\n \"shooter\",\n ],\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 },\n additionalProperties: false,\n default: {\n RoomControl: {},\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 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":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,MAAM,iBAAiB;AAAA,EAC5B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa;AAAA,EACb,UAAU,CAAC,MAAM,QAAQ,QAAQ,gBAAgB,YAAY,eAAe;AAAA,EAC5E,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,MAAM,CAAC,UAAU;AAAA,IACnB;AAAA,IACA,eAAe;AAAA,MACb,MAAM;AAAA,MACN,MAAM,CAAC,eAAe,aAAa,cAAc,SAAS;AAAA,IAC5D;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,aAAa;AAAA,IACf;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,YAAY;AAAA,QACV,oBAAoB;AAAA,UAClB,MAAM;AAAA,UACN,OAAO;AAAA,YACL,MAAM;AAAA,UACR;AAAA,UACA,aACE;AAAA,QACJ;AAAA,QACA,0BAA0B;AAAA,UACxB,MAAM;AAAA,UACN,OAAO;AAAA,YACL,MAAM;AAAA,UACR;AAAA,UACA,aACE;AAAA,QACJ;AAAA,MACF;AAAA,IACF;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS;AAAA,MACT,UAAU,CAAC,oBAAoB,qBAAqB;AAAA,IACtD;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,OAAO;AAAA,QACL,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,aAAa;AAAA,UACX,MAAM;AAAA,UACN,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,cACN,SAAS;AAAA,YACX;AAAA,YACA,iBAAiB;AAAA,cACf,MAAM;AAAA,cACN,OAAO;AAAA,gBACL,MAAM;AAAA,gBACN,MAAM,CAAC,WAAW,UAAU,UAAU,MAAM,OAAO;AAAA,cACrD;AAAA,YACF;AAAA,YACA,mBAAmB;AAAA,cACjB,MAAM;AAAA,cACN,OAAO;AAAA,gBACL,MAAM;AAAA,cACR;AAAA,cACA,SAAS,CAAC;AAAA,YACZ;AAAA,YACA,aAAa;AAAA,cACX,MAAM;AAAA,cACN,YAAY;AAAA,gBACV,QAAQ;AAAA,kBACN,MAAM;AAAA,kBACN,OAAO;AAAA,oBACL,MAAM;AAAA,kBACR;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,YACA,aAAa;AAAA,cACX,MAAM;AAAA,cACN,mBAAmB;AAAA,gBACjB,kBAAkB;AAAA,kBAChB,MAAM;AAAA,kBACN,YAAY;AAAA,oBACV,aAAa;AAAA,sBACX,MAAM;AAAA,sBACN,aAAa;AAAA,sBACb,sBAAsB,EAAE,MAAM,SAAS;AAAA,oBACzC;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAU;AAAA,gBACR;AAAA,kBACE,UAAU;AAAA,oBACR,aAAa;AAAA,sBACX,GAAG;AAAA,sBACH,GAAG;AAAA,sBACH,GAAG;AAAA,oBACL;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,YACA,cAAc;AAAA,cACZ,MAAM;AAAA,cACN,mBAAmB;AAAA,gBACjB,MAAM;AAAA,gBACN,mBAAmB;AAAA,kBACjB,kBAAkB;AAAA,oBAChB,MAAM;AAAA,oBACN,YAAY;AAAA,sBACV,SAAS;AAAA,wBACP,MAAM;AAAA,wBACN,OAAO;AAAA,0BACL,MAAM;AAAA,wBACR;AAAA,wBACA,SAAS,CAAC;AAAA,wBACV,aACE;AAAA,sBACJ;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAU;AAAA,gBACR;AAAA,kBACE,UAAU;AAAA,oBACR,SAAS,CAAC,YAAY,UAAU;AAAA,kBAClC;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAAA,UACA,sBAAsB;AAAA,QACxB;AAAA,QACA,WAAW;AAAA,UACT,MAAM;AAAA,UACN,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,cACN,SAAS;AAAA,YACX;AAAA,YACA,cAAc;AAAA,cACZ,MAAM;AAAA,cACN,SAAS;AAAA,YACX;AAAA,YACA,UAAU;AAAA,cACR,MAAM;AAAA,cACN,SAAS;AAAA,YACX;AAAA,YACA,SAAS;AAAA,cACP,MAAM;AAAA,cACN,SAAS;AAAA,YACX;AAAA,YACA,cAAc;AAAA,cACZ,MAAM;AAAA,cACN,OAAO;AAAA,gBACL,MAAM;AAAA,cACR;AAAA,cACA,SAAS,CAAC;AAAA,YACZ;AAAA,YACA,mBAAmB;AAAA,cACjB,MAAM,CAAC,UAAU,MAAM;AAAA,cACvB,MAAM,CAAC,OAAO,OAAO;AAAA,cACrB,SAAS;AAAA,cACT,aACE;AAAA,YACJ;AAAA,YACA,QAAQ;AAAA,cACN,MAAM;AAAA,cACN,YAAY;AAAA,gBACV,oBAAoB;AAAA,kBAClB,MAAM;AAAA,gBACR;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,QACA,KAAK;AAAA,UACH,MAAM;AAAA,UACN,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,cACN,SAAS;AAAA,YACX;AAAA,YACA,QAAQ;AAAA,cACN,MAAM;AAAA,YACR;AAAA,YACA,aAAa;AAAA,cACX,MAAM,CAAC,UAAU,MAAM;AAAA,cACvB,QAAQ;AAAA,YACV;AAAA,YACA,aAAa;AAAA,cACX,MAAM,CAAC,UAAU,MAAM;AAAA,cACvB,YAAY;AAAA,gBACV,IAAI;AAAA,kBACF,MAAM;AAAA,gBACR;AAAA,gBACA,eAAe;AAAA,kBACb,MAAM,CAAC,QAAQ,UAAU,YAAY;AAAA,gBACvC;AAAA,cACF;AAAA,YACF;AAAA,YACA,kBAAkB;AAAA,cAChB,MAAM,CAAC,UAAU,MAAM;AAAA,YACzB;AAAA,YACA,mBAAmB;AAAA,cACjB,MAAM;AAAA,cACN,OAAO;AAAA,gBACL,MAAM;AAAA,gBACN,MAAM;AAAA,kBACJ;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,YACA,eAAe;AAAA,cACb,MAAM,CAAC,UAAU,MAAM;AAAA,cACvB,QAAQ;AAAA,YACV;AAAA,YACA,eAAe;AAAA,cACb,MAAM,CAAC,UAAU,MAAM;AAAA,cACvB,YAAY;AAAA,gBACV,IAAI;AAAA,kBACF,MAAM;AAAA,gBACR;AAAA,gBACA,eAAe;AAAA,kBACb,MAAM,CAAC,QAAQ,UAAU,YAAY;AAAA,gBACvC;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,QACA,aAAa;AAAA,UACX,MAAM;AAAA,UACN,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,YACR;AAAA,UACF;AAAA,UACA,sBAAsB;AAAA,QACxB;AAAA,MACF;AAAA,MACA,sBAAsB;AAAA,MACtB,SAAS;AAAA,QACP,aAAa,CAAC;AAAA,MAChB;AAAA,IACF;AAAA,IACA,eAAe;AAAA,MACb,MAAM;AAAA,MACN,YAAY;AAAA,QACV,OAAO;AAAA,UACL,MAAM;AAAA,UACN,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,YACR;AAAA,UACF;AAAA,UACA,sBAAsB;AAAA,QACxB;AAAA,QACA,KAAK;AAAA,UACH,MAAM;AAAA,UACN,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,YACR;AAAA,UACF;AAAA,UACA,sBAAsB;AAAA,QACxB;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,YACR;AAAA,UACF;AAAA,UACA,sBAAsB;AAAA,QACxB;AAAA,MACF;AAAA,MACA,sBAAsB;AAAA,MACtB,SAAS;AAAA,QACP,OAAO;AAAA,UACL,SAAS;AAAA,QACX;AAAA,QACA,KAAK;AAAA,UACH,SAAS;AAAA,QACX;AAAA,QACA,MAAM;AAAA,UACJ,SAAS;AAAA,QACX;AAAA,MACF;AAAA,IACF;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,sBAAsB;AAAA,IACxB;AAAA,EACF;AACF;","names":[]}
@@ -28,12 +28,6 @@ declare const propertySchema: {
28
28
  readonly type: "string";
29
29
  readonly description: "Reference (id) to the organization that owns this property";
30
30
  };
31
- readonly departments: {
32
- readonly type: "array";
33
- readonly items: {
34
- readonly type: "string";
35
- };
36
- };
37
31
  readonly testModeEnabled: {
38
32
  readonly type: "boolean";
39
33
  };
@@ -520,9 +520,6 @@ const ticketSchema = {
520
520
  type: "string"
521
521
  }
522
522
  },
523
- department: {
524
- type: "string"
525
- },
526
523
  rating: {
527
524
  type: "number",
528
525
  minimum: 0,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/ticket.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport type { mediaFileSchema } from \"./mediaFile\";\n\nexport const ticketSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"ticket.json\",\n title: \"Ticket\",\n description: \"A ticket is a request from a user.\",\n type: \"object\",\n required: [\n \"id\",\n \"conversation\",\n \"requester\",\n \"status\",\n \"tags\",\n \"createdAt\",\n \"updatedAt\",\n ],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n enum: [\"ticket\"],\n default: \"ticket\",\n },\n number: {\n type: \"string\",\n description: \"The number of the ticket.\",\n },\n issueId: {\n type: \"string\",\n description: \"The ID of the issue that this ticket is associated with.\",\n },\n conversation: {\n type: \"array\",\n default: [],\n description: \"The conversation history of the ticket.\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"id\", \"discriminator\", \"timestamp\", \"body\"],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the message.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\n \"message\",\n \"opened\",\n \"assigned\",\n \"rated\",\n \"tipped\",\n \"scheduled\",\n \"collaboratorAdded\",\n \"collaboratorRemoved\",\n \"statusChanged\",\n \"priorityChanged\",\n \"scheduleDateChanged\",\n \"locationChanged\",\n ],\n default: \"message\",\n description: \"The discriminator of the message.\",\n },\n authorId: {\n type: \"string\",\n description: \"The ID of the author of the message.\",\n },\n authorName: {\n type: \"string\",\n description: \"The name of the author of the message.\",\n },\n authorDiscriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description: \"The discriminator of the author of the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the system who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the system who sent the message.\",\n },\n timestamp: {\n $ref: \"definitions.json#/definitions/date\",\n description: \"The ISO 8601 timestamp of the message.\",\n },\n body: {\n type: \"string\",\n description: \"The body of the message.\",\n },\n parsedBody: {\n type: \"object\",\n additionalProperties: false,\n description:\n \"An object containing the parsed body of the message for mentions.\",\n properties: {\n text: {\n type: \"string\",\n description: \"The mention text.\",\n },\n mentions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\n \"discriminator\",\n \"id\",\n \"index\",\n \"length\",\n \"originalText\",\n ],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the mention.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description:\n \"The discriminator of entity that was mentioned.\",\n },\n index: {\n type: \"integer\",\n description: \"The index of the mention in the message.\",\n },\n length: {\n type: \"integer\",\n description: \"The length of the mention in the message.\",\n },\n originalText: {\n type: \"string\",\n description: \"The original text of the mention.\",\n },\n },\n },\n },\n },\n },\n\n readBy: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n description: \"The IDs of the users who have read the message.\",\n },\n media: {\n anyOf: [{ $ref: \"mediaFile.json\" }, { type: \"null\" }],\n description: \"The media file associated with the message.\",\n },\n },\n },\n },\n subject: {\n type: \"string\",\n description: \"The subject of the ticket.\",\n },\n openedBy: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"system\"],\n },\n name: {\n type: \"string\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who opened the ticket.\",\n },\n\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who opened the ticket.\",\n },\n },\n },\n requester: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the requester.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\", \"device\"],\n description: \"The discriminator of the requester.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the requester.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the requester.\",\n },\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n systemPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n deviceId: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n roomId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the room who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n reservationId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the reservation who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the space who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceName: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The name of the space who requested the ticket.\",\n },\n },\n },\n assignedTo: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the assigned to.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n description: \"The discriminator of the assigned to.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the assigned to.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the assigned to.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n },\n /**\n * @deprecated - use id instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n vendorPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the vendor who assigned the ticket.\",\n },\n },\n },\n notify: {\n type: \"array\",\n description:\n \"A list of entities to notify when this ticket is created or resolved.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n collaborators: {\n type: \"array\",\n default: [],\n description: \"A list of entities who will collaborate on this ticket.\",\n items: {\n type: \"object\",\n required: [\"id\", \"name\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n name: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n },\n },\n },\n },\n location: {\n type: \"object\",\n required: [\"discriminator\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"space\", \"room\", \"property\", \"customText\"],\n },\n name: {\n type: \"string\",\n },\n },\n },\n status: {\n type: \"string\",\n enum: [\"open\", \"pending\", \"solved\", \"closed\"],\n default: \"open\",\n },\n priority: {\n type: \"string\",\n enum: [\"low\", \"normal\", \"high\"],\n default: \"normal\",\n },\n tags: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n },\n department: {\n type: \"string\",\n },\n rating: {\n type: \"number\",\n minimum: 0,\n maximum: 5,\n },\n ratingComment: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n tipAmount: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The amount of the tip.\",\n },\n autoCloseAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n scheduleDate: {\n $ref: \"definitions.json#/definitions/date\",\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n solvedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n closedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type TicketSchema = FromSchema<\n typeof ticketSchema,\n {\n references: [typeof defs, typeof mediaFileSchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/ticket.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport type { mediaFileSchema } from \"./mediaFile\";\n\nexport const ticketSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"ticket.json\",\n title: \"Ticket\",\n description: \"A ticket is a request from a user.\",\n type: \"object\",\n required: [\n \"id\",\n \"conversation\",\n \"requester\",\n \"status\",\n \"tags\",\n \"createdAt\",\n \"updatedAt\",\n ],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n enum: [\"ticket\"],\n default: \"ticket\",\n },\n number: {\n type: \"string\",\n description: \"The number of the ticket.\",\n },\n issueId: {\n type: \"string\",\n description: \"The ID of the issue that this ticket is associated with.\",\n },\n conversation: {\n type: \"array\",\n default: [],\n description: \"The conversation history of the ticket.\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"id\", \"discriminator\", \"timestamp\", \"body\"],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the message.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\n \"message\",\n \"opened\",\n \"assigned\",\n \"rated\",\n \"tipped\",\n \"scheduled\",\n \"collaboratorAdded\",\n \"collaboratorRemoved\",\n \"statusChanged\",\n \"priorityChanged\",\n \"scheduleDateChanged\",\n \"locationChanged\",\n ],\n default: \"message\",\n description: \"The discriminator of the message.\",\n },\n authorId: {\n type: \"string\",\n description: \"The ID of the author of the message.\",\n },\n authorName: {\n type: \"string\",\n description: \"The name of the author of the message.\",\n },\n authorDiscriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description: \"The discriminator of the author of the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the system who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the system who sent the message.\",\n },\n timestamp: {\n $ref: \"definitions.json#/definitions/date\",\n description: \"The ISO 8601 timestamp of the message.\",\n },\n body: {\n type: \"string\",\n description: \"The body of the message.\",\n },\n parsedBody: {\n type: \"object\",\n additionalProperties: false,\n description:\n \"An object containing the parsed body of the message for mentions.\",\n properties: {\n text: {\n type: \"string\",\n description: \"The mention text.\",\n },\n mentions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\n \"discriminator\",\n \"id\",\n \"index\",\n \"length\",\n \"originalText\",\n ],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the mention.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description:\n \"The discriminator of entity that was mentioned.\",\n },\n index: {\n type: \"integer\",\n description: \"The index of the mention in the message.\",\n },\n length: {\n type: \"integer\",\n description: \"The length of the mention in the message.\",\n },\n originalText: {\n type: \"string\",\n description: \"The original text of the mention.\",\n },\n },\n },\n },\n },\n },\n\n readBy: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n description: \"The IDs of the users who have read the message.\",\n },\n media: {\n anyOf: [{ $ref: \"mediaFile.json\" }, { type: \"null\" }],\n description: \"The media file associated with the message.\",\n },\n },\n },\n },\n subject: {\n type: \"string\",\n description: \"The subject of the ticket.\",\n },\n openedBy: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"system\"],\n },\n name: {\n type: \"string\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who opened the ticket.\",\n },\n\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who opened the ticket.\",\n },\n },\n },\n requester: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the requester.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\", \"device\"],\n description: \"The discriminator of the requester.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the requester.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the requester.\",\n },\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n systemPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n deviceId: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n roomId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the room who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n reservationId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the reservation who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the space who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceName: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The name of the space who requested the ticket.\",\n },\n },\n },\n assignedTo: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the assigned to.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n description: \"The discriminator of the assigned to.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the assigned to.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the assigned to.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n },\n /**\n * @deprecated - use id instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n vendorPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the vendor who assigned the ticket.\",\n },\n },\n },\n notify: {\n type: \"array\",\n description:\n \"A list of entities to notify when this ticket is created or resolved.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n collaborators: {\n type: \"array\",\n default: [],\n description: \"A list of entities who will collaborate on this ticket.\",\n items: {\n type: \"object\",\n required: [\"id\", \"name\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n name: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n },\n },\n },\n },\n location: {\n type: \"object\",\n required: [\"discriminator\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"space\", \"room\", \"property\", \"customText\"],\n },\n name: {\n type: \"string\",\n },\n },\n },\n status: {\n type: \"string\",\n enum: [\"open\", \"pending\", \"solved\", \"closed\"],\n default: \"open\",\n },\n priority: {\n type: \"string\",\n enum: [\"low\", \"normal\", \"high\"],\n default: \"normal\",\n },\n tags: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n },\n rating: {\n type: \"number\",\n minimum: 0,\n maximum: 5,\n },\n ratingComment: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n tipAmount: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The amount of the tip.\",\n },\n autoCloseAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n scheduleDate: {\n $ref: \"definitions.json#/definitions/date\",\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n solvedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n closedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type TicketSchema = FromSchema<\n typeof ticketSchema,\n {\n references: [typeof defs, typeof mediaFileSchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
@@ -491,9 +491,6 @@ declare const ticketSchema: {
491
491
  readonly type: "string";
492
492
  };
493
493
  };
494
- readonly department: {
495
- readonly type: "string";
496
- };
497
494
  readonly rating: {
498
495
  readonly type: "number";
499
496
  readonly minimum: 0;
@@ -118,10 +118,6 @@ const userSchema = {
118
118
  type: "boolean",
119
119
  description: "Whether time tracking is enabled for this role."
120
120
  },
121
- department: {
122
- type: "string",
123
- description: "The department the user belongs to."
124
- },
125
121
  departmentIds: {
126
122
  type: "array",
127
123
  items: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/user.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { mediaFileSchema } from \"./mediaFile\";\nimport { policySchema } from \"./policy\";\n\nexport const userSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"user.json\",\n title: \"User\",\n type: \"object\",\n required: [\"id\", \"firstName\", \"lastName\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"user\",\n },\n firstName: {\n type: \"string\",\n },\n lastName: {\n type: \"string\",\n },\n phone: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n phoneVerified: {\n type: \"boolean\",\n },\n email: {\n type: \"string\",\n format: \"email\",\n },\n emailVerified: {\n type: \"boolean\",\n },\n whatsapp: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n whatsappVerified: {\n type: \"boolean\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n secretKey: {\n type: \"string\",\n },\n photo: {\n $ref: \"mediaFile.json#\",\n },\n jobTitle: {\n type: \"string\",\n },\n dob: {\n type: \"string\",\n },\n gender: {\n type: \"string\",\n enum: [\"male\", \"female\"],\n },\n nationality: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n permissions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n required: [\"organizationId\", \"propertyId\", \"role\"],\n properties: {\n organizationId: {\n type: \"string\",\n description:\n \"The ID of the organization the permission is applies to.\",\n },\n propertyId: {\n type: \"string\",\n description: \"The ID of the property the permission is applies to.\",\n },\n role: {\n type: \"string\",\n enum: [\n \"Guest\",\n \"User\",\n \"Agent\",\n \"Manager\",\n \"Maintenance\",\n \"Administrator\",\n \"SuperAdmin\",\n ],\n },\n timeTrackingEnabled: {\n type: \"boolean\",\n description: \"Whether time tracking is enabled for this role.\",\n },\n department: {\n type: \"string\",\n description: \"The department the user belongs to.\",\n },\n departmentIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description: \"The ID of the department the user belongs to.\",\n },\n policyIds: {\n type: \"array\",\n items: {\n type: \"string\",\n description: \"ID of a policy that is applied to this role.\",\n },\n },\n policies: {\n type: \"array\",\n items: {\n description:\n \"A policy object populated from the policyIds array.\",\n $ref: \"policy.json\",\n },\n },\n },\n additionalProperties: false,\n },\n },\n preferences: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"organizationId\", \"propertyId\"],\n properties: {\n organizationId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n notifications: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"discriminator\", \"enabled\"],\n properties: {\n discriminator: {\n type: \"string\",\n enum: [\"observerTicketCreated\", \"observerTicketResolved\"],\n },\n enabled: {\n type: \"boolean\",\n },\n },\n },\n },\n },\n },\n },\n notes: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n files: {\n type: \"array\",\n items: {\n $ref: \"mediaFile.json#\",\n },\n },\n location: {\n type: \"object\",\n required: [\"accuracy\", \"latitude\", \"longitude\", \"timestamp\"],\n additionalProperties: false,\n properties: {\n accuracy: {\n type: [\"number\", \"null\"],\n },\n latitude: {\n type: [\"number\", \"null\"],\n },\n longitude: {\n type: [\"number\", \"null\"],\n },\n timestamp: {\n type: [\"number\", \"null\"],\n },\n },\n },\n\n spaceName: {\n type: \"string\",\n },\n\n systems: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n properties: {\n systemId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n driver: {\n type: \"string\",\n },\n },\n required: [\"systemId\", \"propertyId\", \"driver\"],\n additionalProperties: false,\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 UserSchema = FromSchema<\n typeof userSchema,\n {\n references: [typeof defs, typeof mediaFileSchema, typeof policySchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n\nexport const getters = {\n fullName() {\n return `${this.firstName} ${this.lastName}`;\n },\n roles() {\n const roles = new Set();\n if (this.permissions) {\n for (const permission of this.permissions) {\n roles.add(permission.role);\n }\n }\n return Array.from(roles);\n },\n isSuperAdmin() {\n return this.roles.includes(\"SuperAdmin\");\n },\n isAdmin() {\n return this.roles.includes(\"Admin\") || this.roles.includes(\"Administrator\");\n },\n isManager() {\n return this.roles.includes(\"Manager\");\n },\n isUser() {\n return this.roles.includes(\"User\");\n },\n};\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/user.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { mediaFileSchema } from \"./mediaFile\";\nimport { policySchema } from \"./policy\";\n\nexport const userSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"user.json\",\n title: \"User\",\n type: \"object\",\n required: [\"id\", \"firstName\", \"lastName\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"user\",\n },\n firstName: {\n type: \"string\",\n },\n lastName: {\n type: \"string\",\n },\n phone: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n phoneVerified: {\n type: \"boolean\",\n },\n email: {\n type: \"string\",\n format: \"email\",\n },\n emailVerified: {\n type: \"boolean\",\n },\n whatsapp: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n whatsappVerified: {\n type: \"boolean\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n secretKey: {\n type: \"string\",\n },\n photo: {\n $ref: \"mediaFile.json#\",\n },\n jobTitle: {\n type: \"string\",\n },\n dob: {\n type: \"string\",\n },\n gender: {\n type: \"string\",\n enum: [\"male\", \"female\"],\n },\n nationality: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n permissions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n required: [\"organizationId\", \"propertyId\", \"role\"],\n properties: {\n organizationId: {\n type: \"string\",\n description:\n \"The ID of the organization the permission is applies to.\",\n },\n propertyId: {\n type: \"string\",\n description: \"The ID of the property the permission is applies to.\",\n },\n role: {\n type: \"string\",\n enum: [\n \"Guest\",\n \"User\",\n \"Agent\",\n \"Manager\",\n \"Maintenance\",\n \"Administrator\",\n \"SuperAdmin\",\n ],\n },\n timeTrackingEnabled: {\n type: \"boolean\",\n description: \"Whether time tracking is enabled for this role.\",\n },\n departmentIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description: \"The ID of the department the user belongs to.\",\n },\n policyIds: {\n type: \"array\",\n items: {\n type: \"string\",\n description: \"ID of a policy that is applied to this role.\",\n },\n },\n policies: {\n type: \"array\",\n items: {\n description:\n \"A policy object populated from the policyIds array.\",\n $ref: \"policy.json\",\n },\n },\n },\n additionalProperties: false,\n },\n },\n preferences: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"organizationId\", \"propertyId\"],\n properties: {\n organizationId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n notifications: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"discriminator\", \"enabled\"],\n properties: {\n discriminator: {\n type: \"string\",\n enum: [\"observerTicketCreated\", \"observerTicketResolved\"],\n },\n enabled: {\n type: \"boolean\",\n },\n },\n },\n },\n },\n },\n },\n notes: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n files: {\n type: \"array\",\n items: {\n $ref: \"mediaFile.json#\",\n },\n },\n location: {\n type: \"object\",\n required: [\"accuracy\", \"latitude\", \"longitude\", \"timestamp\"],\n additionalProperties: false,\n properties: {\n accuracy: {\n type: [\"number\", \"null\"],\n },\n latitude: {\n type: [\"number\", \"null\"],\n },\n longitude: {\n type: [\"number\", \"null\"],\n },\n timestamp: {\n type: [\"number\", \"null\"],\n },\n },\n },\n\n spaceName: {\n type: \"string\",\n },\n\n systems: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n properties: {\n systemId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n driver: {\n type: \"string\",\n },\n },\n required: [\"systemId\", \"propertyId\", \"driver\"],\n additionalProperties: false,\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 UserSchema = FromSchema<\n typeof userSchema,\n {\n references: [typeof defs, typeof mediaFileSchema, typeof policySchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n\nexport const getters = {\n fullName() {\n return `${this.firstName} ${this.lastName}`;\n },\n roles() {\n const roles = new Set();\n if (this.permissions) {\n for (const permission of this.permissions) {\n roles.add(permission.role);\n }\n }\n return Array.from(roles);\n },\n isSuperAdmin() {\n return this.roles.includes(\"SuperAdmin\");\n },\n isAdmin() {\n return this.roles.includes(\"Admin\") || this.roles.includes(\"Administrator\");\n },\n isManager() {\n return this.roles.includes(\"Manager\");\n },\n isUser() {\n return this.roles.includes(\"User\");\n },\n};\n"],"mappings":"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","names":[]}
@@ -92,10 +92,6 @@ declare const userSchema: {
92
92
  readonly type: "boolean";
93
93
  readonly description: "Whether time tracking is enabled for this role.";
94
94
  };
95
- readonly department: {
96
- readonly type: "string";
97
- readonly description: "The department the user belongs to.";
98
- };
99
95
  readonly departmentIds: {
100
96
  readonly type: "array";
101
97
  readonly items: {
@@ -13,7 +13,6 @@ class Issue extends Entity {
13
13
  this.type = data.type;
14
14
  this.name = data.name;
15
15
  if (data.description !== void 0) this.description = data.description;
16
- if (data.department !== void 0) this.department = data.department;
17
16
  if (data.departmentId !== void 0) this.departmentId = data.departmentId;
18
17
  if (data.autoAssign !== void 0) this.autoAssign = data.autoAssign;
19
18
  if (data.notify !== void 0) this.notify = data.notify;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/models/issue.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateIssue as validate } from \"../validate.js\";\nimport { issueSchema, type IssueSchema } from \"../schemas/issue.js\";\n\n/**\n * Data type for Issue constructor - exported for backwards compatibility\n */\nexport type IssueData = IssueSchema;\n\n/**\n * An issue associated with ticketing and concierge.\n */\nexport interface Issue extends IssueSchema {}\nexport class Issue extends Entity {\n declare schema: typeof issueSchema;\n declare validator: typeof validate;\n\n constructor(data: IssueSchema) {\n super(data);\n this.id = data.id;\n this.type = data.type;\n this.name = data.name;\n if (data.description !== undefined) this.description = data.description;\n if (data.department !== undefined) this.department = data.department;\n if (data.departmentId !== undefined) this.departmentId = data.departmentId;\n if (data.autoAssign !== undefined) this.autoAssign = data.autoAssign;\n if (data.notify !== undefined) this.notify = data.notify;\n if (data.systemKey !== undefined) this.systemKey = data.systemKey;\n if (data.autoCreateTicket !== undefined)\n this.autoCreateTicket = data.autoCreateTicket;\n if (data.excludedResources !== undefined)\n this.excludedResources = data.excludedResources;\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\nObject.defineProperty(Issue.prototype, \"schema\", {\n value: issueSchema,\n});\n\nObject.defineProperty(Issue.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;AAEA,SAAS,cAAc;AACvB,SAAS,iBAAiB,gBAAgB;AAC1C,SAAS,mBAAqC;AAWvC,MAAM,cAAc,OAAO;AAAA,EAflC,OAekC;AAAA;AAAA;AAAA,EAIhC,YAAY,MAAmB;AAC7B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,qBAAqB;AAC5B,WAAK,mBAAmB,KAAK;AAC/B,QAAI,KAAK,sBAAsB;AAC7B,WAAK,oBAAoB,KAAK;AAChC,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,MAAM,WAAW,UAAU;AAAA,EAC/C,OAAO;AACT,CAAC;AAED,OAAO,eAAe,MAAM,WAAW,aAAa;AAAA,EAClD,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/models/issue.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateIssue as validate } from \"../validate.js\";\nimport { issueSchema, type IssueSchema } from \"../schemas/issue.js\";\n\n/**\n * Data type for Issue constructor - exported for backwards compatibility\n */\nexport type IssueData = IssueSchema;\n\n/**\n * An issue associated with ticketing and concierge.\n */\nexport interface Issue extends IssueSchema {}\nexport class Issue extends Entity {\n declare schema: typeof issueSchema;\n declare validator: typeof validate;\n\n constructor(data: IssueSchema) {\n super(data);\n this.id = data.id;\n this.type = data.type;\n this.name = data.name;\n if (data.description !== undefined) this.description = data.description;\n if (data.departmentId !== undefined) this.departmentId = data.departmentId;\n if (data.autoAssign !== undefined) this.autoAssign = data.autoAssign;\n if (data.notify !== undefined) this.notify = data.notify;\n if (data.systemKey !== undefined) this.systemKey = data.systemKey;\n if (data.autoCreateTicket !== undefined)\n this.autoCreateTicket = data.autoCreateTicket;\n if (data.excludedResources !== undefined)\n this.excludedResources = data.excludedResources;\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\nObject.defineProperty(Issue.prototype, \"schema\", {\n value: issueSchema,\n});\n\nObject.defineProperty(Issue.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;AAEA,SAAS,cAAc;AACvB,SAAS,iBAAiB,gBAAgB;AAC1C,SAAS,mBAAqC;AAWvC,MAAM,cAAc,OAAO;AAAA,EAflC,OAekC;AAAA;AAAA;AAAA,EAIhC,YAAY,MAAmB;AAC7B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,qBAAqB;AAC5B,WAAK,mBAAmB,KAAK;AAC/B,QAAI,KAAK,sBAAsB;AAC7B,WAAK,oBAAoB,KAAK;AAChC,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,MAAM,WAAW,UAAU;AAAA,EAC/C,OAAO;AACT,CAAC;AAED,OAAO,eAAe,MAAM,WAAW,aAAa;AAAA,EAClD,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
@@ -14,7 +14,6 @@ class Property extends Entity {
14
14
  this.type = data.type;
15
15
  this.discriminator = data.discriminator;
16
16
  this.organization = data.organization;
17
- if (data.departments !== void 0) this.departments = data.departments;
18
17
  if (data.testModeEnabled !== void 0)
19
18
  this.testModeEnabled = data.testModeEnabled;
20
19
  if (data.testMode !== void 0) this.testMode = data.testMode;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/models/property.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateProperty as validate } from \"../validate.js\";\nimport { propertySchema, type PropertySchema } from \"../schemas/property.js\";\n\n/**\n * Data type for Property constructor - exported for backwards compatibility\n */\nexport type PropertyData = PropertySchema;\n\n/**\n * A property is a physical asset or building\n */\nexport interface Property extends PropertySchema {}\nexport class Property extends Entity {\n declare schema: typeof propertySchema;\n declare validator: typeof validate;\n\n constructor(data: PropertySchema) {\n super(data);\n this.id = data.id;\n this.name = data.name;\n this.type = data.type;\n this.discriminator = data.discriminator;\n this.organization = data.organization;\n if (data.departments !== undefined) this.departments = data.departments;\n if (data.testModeEnabled !== undefined)\n this.testModeEnabled = data.testModeEnabled;\n if (data.testMode !== undefined) this.testMode = data.testMode;\n this.timezone = data.timezone;\n if (data.smsNumber !== undefined) this.smsNumber = data.smsNumber;\n if (data.voiceNumber !== undefined) this.voiceNumber = data.voiceNumber;\n if (data.tags !== undefined) this.tags = data.tags;\n if (data.checkInTime !== undefined) this.checkInTime = data.checkInTime;\n if (data.checkOutTime !== undefined) this.checkOutTime = data.checkOutTime;\n if (data.address !== undefined) this.address = data.address;\n if (data.latitude !== undefined) this.latitude = data.latitude;\n if (data.longitude !== undefined) this.longitude = data.longitude;\n if (data.appFeatures !== undefined) this.appFeatures = data.appFeatures;\n if (data.notifications !== undefined)\n this.notifications = data.notifications;\n if (data.credentials !== undefined) this.credentials = data.credentials;\n }\n}\n\nObject.defineProperty(Property.prototype, \"schema\", {\n value: propertySchema,\n});\n\nObject.defineProperty(Property.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;AAEA,SAAS,cAAc;AACvB,SAAS,oBAAoB,gBAAgB;AAC7C,SAAS,sBAA2C;AAW7C,MAAM,iBAAiB,OAAO;AAAA,EAfrC,OAeqC;AAAA;AAAA;AAAA,EAInC,YAAY,MAAsB;AAChC,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,SAAK,gBAAgB,KAAK;AAC1B,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,oBAAoB;AAC3B,WAAK,kBAAkB,KAAK;AAC9B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,WAAW,KAAK;AACrB,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAAA,EAC9D;AACF;AAEA,OAAO,eAAe,SAAS,WAAW,UAAU;AAAA,EAClD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,SAAS,WAAW,aAAa;AAAA,EACrD,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/models/property.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateProperty as validate } from \"../validate.js\";\nimport { propertySchema, type PropertySchema } from \"../schemas/property.js\";\n\n/**\n * Data type for Property constructor - exported for backwards compatibility\n */\nexport type PropertyData = PropertySchema;\n\n/**\n * A property is a physical asset or building\n */\nexport interface Property extends PropertySchema {}\nexport class Property extends Entity {\n declare schema: typeof propertySchema;\n declare validator: typeof validate;\n\n constructor(data: PropertySchema) {\n super(data);\n this.id = data.id;\n this.name = data.name;\n this.type = data.type;\n this.discriminator = data.discriminator;\n this.organization = data.organization;\n if (data.testModeEnabled !== undefined)\n this.testModeEnabled = data.testModeEnabled;\n if (data.testMode !== undefined) this.testMode = data.testMode;\n this.timezone = data.timezone;\n if (data.smsNumber !== undefined) this.smsNumber = data.smsNumber;\n if (data.voiceNumber !== undefined) this.voiceNumber = data.voiceNumber;\n if (data.tags !== undefined) this.tags = data.tags;\n if (data.checkInTime !== undefined) this.checkInTime = data.checkInTime;\n if (data.checkOutTime !== undefined) this.checkOutTime = data.checkOutTime;\n if (data.address !== undefined) this.address = data.address;\n if (data.latitude !== undefined) this.latitude = data.latitude;\n if (data.longitude !== undefined) this.longitude = data.longitude;\n if (data.appFeatures !== undefined) this.appFeatures = data.appFeatures;\n if (data.notifications !== undefined)\n this.notifications = data.notifications;\n if (data.credentials !== undefined) this.credentials = data.credentials;\n }\n}\n\nObject.defineProperty(Property.prototype, \"schema\", {\n value: propertySchema,\n});\n\nObject.defineProperty(Property.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;AAEA,SAAS,cAAc;AACvB,SAAS,oBAAoB,gBAAgB;AAC7C,SAAS,sBAA2C;AAW7C,MAAM,iBAAiB,OAAO;AAAA,EAfrC,OAeqC;AAAA;AAAA;AAAA,EAInC,YAAY,MAAsB;AAChC,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,SAAK,OAAO,KAAK;AACjB,SAAK,OAAO,KAAK;AACjB,SAAK,gBAAgB,KAAK;AAC1B,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,oBAAoB;AAC3B,WAAK,kBAAkB,KAAK;AAC9B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,WAAW,KAAK;AACrB,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAAA,EAC9D;AACF;AAEA,OAAO,eAAe,SAAS,WAAW,UAAU;AAAA,EAClD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,SAAS,WAAW,aAAa;AAAA,EACrD,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
@@ -25,7 +25,6 @@ class Ticket extends Entity {
25
25
  this.status = data.status;
26
26
  if (data.priority !== void 0) this.priority = data.priority;
27
27
  this.tags = data.tags;
28
- if (data.department !== void 0) this.department = data.department;
29
28
  if (data.rating !== void 0) this.rating = data.rating;
30
29
  if (data.ratingComment !== void 0)
31
30
  this.ratingComment = data.ratingComment;
@@ -1 +1 @@
1
- {"version":3,"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.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 this.conversation = data.conversation;\n if (data.subject !== undefined) this.subject = data.subject;\n if (data.openedBy !== undefined) this.openedBy = data.openedBy;\n this.requester = data.requester;\n if (data.assignedTo !== undefined) 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 if (data.priority !== undefined) this.priority = data.priority;\n this.tags = data.tags;\n if (data.department !== undefined) this.department = data.department;\n if (data.rating !== undefined) this.rating = data.rating;\n if (data.ratingComment !== undefined)\n this.ratingComment = data.ratingComment;\n if (data.tipAmount !== undefined) this.tipAmount = data.tipAmount;\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.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,SAAS,cAAc;AACvB,SAAS,kBAAkB,gBAAgB;AAC3C,SAAS,oBAAuC;AAWzC,MAAM,eAAe,OAAO;AAAA,EAfnC,OAemC;AAAA;AAAA;AAAA,EAIjC,YAAY,MAAoB;AAC9B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,SAAS,KAAK;AACnB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,SAAK,YAAY,KAAK;AACtB,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,OAAO,WAAW,UAAU;AAAA,EAChD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,OAAO,WAAW,aAAa;AAAA,EACnD,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
1
+ {"version":3,"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.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 this.conversation = data.conversation;\n if (data.subject !== undefined) this.subject = data.subject;\n if (data.openedBy !== undefined) this.openedBy = data.openedBy;\n this.requester = data.requester;\n if (data.assignedTo !== undefined) 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 if (data.priority !== undefined) this.priority = data.priority;\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.tipAmount !== undefined) this.tipAmount = data.tipAmount;\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.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,SAAS,cAAc;AACvB,SAAS,kBAAkB,gBAAgB;AAC3C,SAAS,oBAAuC;AAWzC,MAAM,eAAe,OAAO;AAAA,EAfnC,OAemC;AAAA;AAAA;AAAA,EAIjC,YAAY,MAAoB;AAC9B,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,SAAK,eAAe,KAAK;AACzB,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,eAAe,OAAW,MAAK,aAAa,KAAK;AAC1D,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,SAAS,KAAK;AACnB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AACxD,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,SAAK,YAAY,KAAK;AACtB,SAAK,YAAY,KAAK;AACtB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,cAAc,OAAW,MAAK,YAAY,KAAK;AAAA,EAC1D;AACF;AAEA,OAAO,eAAe,OAAO,WAAW,UAAU;AAAA,EAChD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,OAAO,WAAW,aAAa;AAAA,EACnD,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
@@ -26,9 +26,6 @@ declare const issueSchema: {
26
26
  readonly description: {
27
27
  readonly type: "string";
28
28
  };
29
- readonly department: {
30
- readonly type: "string";
31
- };
32
29
  readonly departmentId: {
33
30
  readonly type: "string";
34
31
  readonly description: "The ID of the department that this issue is associated with.";
@@ -21,9 +21,6 @@ const issueSchema = {
21
21
  description: {
22
22
  type: "string"
23
23
  },
24
- department: {
25
- type: "string"
26
- },
27
24
  departmentId: {
28
25
  type: "string",
29
26
  description: "The ID of the department that this issue is associated with."
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/issue.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { ticketSchema } from \"./ticket\";\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 department: {\n type: \"string\",\n },\n departmentId: {\n type: \"string\",\n description:\n \"The ID of the department that this issue is associated with.\",\n },\n autoAssign: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n userId: {\n type: \"string\",\n description: \"The user ID to assign tickets with this issue to.\",\n },\n vendorId: {\n type: \"string\",\n description: \"The vendor ID to assign tickets with this issue to.\",\n },\n priority: {\n $ref: \"ticket.json#/properties/priority\",\n description: \"The priority to assign tickets with this issue to.\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n notify: {\n type: \"array\",\n description: \"A list of entities to notify when this issue is triggered.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n systemKey: {\n type: \"string\",\n },\n autoCreateTicket: {\n type: \"boolean\",\n default: true,\n },\n excludedResources: {\n type: \"array\",\n description:\n \"A list of resources that should not trigger notifications of this issue\",\n items: {\n type: \"string\",\n },\n default: [],\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":"AAIO,MAAM,cAAc;AAAA,EACzB,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,MAAM;AAAA,EAC/B,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,aACE;AAAA,IACJ;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,MACN,sBAAsB;AAAA,MACtB,YAAY;AAAA,QACV,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,OAAO;AAAA,YACL,MAAM;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS,CAAC;AAAA,MACV,OAAO;AAAA,QACL,MAAM;AAAA,QACN,UAAU,CAAC,MAAM,eAAe;AAAA,QAChC,sBAAsB;AAAA,QACtB,YAAY;AAAA,UACV,IAAI;AAAA,YACF,MAAM;AAAA,YACN,aAAa;AAAA,UACf;AAAA,UACA,eAAe;AAAA,YACb,MAAM;AAAA,YACN,MAAM,CAAC,MAAM;AAAA,UACf;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,aACE;AAAA,MACF,OAAO;AAAA,QACL,MAAM;AAAA,MACR;AAAA,MACA,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/issue.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { ticketSchema } from \"./ticket\";\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.\",\n },\n autoAssign: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n userId: {\n type: \"string\",\n description: \"The user ID to assign tickets with this issue to.\",\n },\n vendorId: {\n type: \"string\",\n description: \"The vendor ID to assign tickets with this issue to.\",\n },\n priority: {\n $ref: \"ticket.json#/properties/priority\",\n description: \"The priority to assign tickets with this issue to.\",\n },\n tags: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\n },\n notify: {\n type: \"array\",\n description: \"A list of entities to notify when this issue is triggered.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n systemKey: {\n type: \"string\",\n },\n autoCreateTicket: {\n type: \"boolean\",\n default: true,\n },\n excludedResources: {\n type: \"array\",\n description:\n \"A list of resources that should not trigger notifications of this issue\",\n items: {\n type: \"string\",\n },\n default: [],\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":"AAIO,MAAM,cAAc;AAAA,EACzB,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,MAAM;AAAA,EAC/B,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,aACE;AAAA,IACJ;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,MACN,sBAAsB;AAAA,MACtB,YAAY;AAAA,QACV,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,OAAO;AAAA,YACL,MAAM;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,MACb,SAAS,CAAC;AAAA,MACV,OAAO;AAAA,QACL,MAAM;AAAA,QACN,UAAU,CAAC,MAAM,eAAe;AAAA,QAChC,sBAAsB;AAAA,QACtB,YAAY;AAAA,UACV,IAAI;AAAA,YACF,MAAM;AAAA,YACN,aAAa;AAAA,UACf;AAAA,UACA,eAAe;AAAA,YACb,MAAM;AAAA,YACN,MAAM,CAAC,MAAM;AAAA,UACf;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,aACE;AAAA,MACF,OAAO;AAAA,QACL,MAAM;AAAA,MACR;AAAA,MACA,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
@@ -28,12 +28,6 @@ declare const propertySchema: {
28
28
  readonly type: "string";
29
29
  readonly description: "Reference (id) to the organization that owns this property";
30
30
  };
31
- readonly departments: {
32
- readonly type: "array";
33
- readonly items: {
34
- readonly type: "string";
35
- };
36
- };
37
31
  readonly testModeEnabled: {
38
32
  readonly type: "boolean";
39
33
  };
@@ -25,12 +25,6 @@ const propertySchema = {
25
25
  type: "string",
26
26
  description: "Reference (id) to the organization that owns this property"
27
27
  },
28
- departments: {
29
- type: "array",
30
- items: {
31
- type: "string"
32
- }
33
- },
34
28
  testModeEnabled: {
35
29
  type: "boolean"
36
30
  },
@@ -1 +1 @@
1
- {"version":3,"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: [\"hospitality\", \"education\", \"commercial\", \"storage\"],\n },\n organization: {\n type: \"string\",\n description: \"Reference (id) to the organization that owns this property\",\n },\n departments: {\n type: \"array\",\n items: {\n type: \"string\",\n },\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 checkInTime: {\n type: \"string\",\n },\n checkOutTime: {\n type: \"string\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n latitude: {\n type: \"number\",\n },\n longitude: {\n type: \"number\",\n },\n appFeatures: {\n type: \"object\",\n properties: {\n RoomControl: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n disabledSystems: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\"climate\", \"lights\", \"shades\", \"tv\", \"doors\"],\n },\n },\n excludedDeviceIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\n },\n commonAreas: {\n type: \"object\",\n properties: {\n spaces: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\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 newTicketCCs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\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 issues: {\n type: \"object\",\n properties: {\n syncWithPropertyId: {\n type: \"string\",\n },\n },\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 activeEmergencies: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\n \"medical\",\n \"fire\",\n \"suspiciousPerson\",\n \"other\",\n \"conflict\",\n \"shooter\",\n ],\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 },\n additionalProperties: false,\n default: {\n RoomControl: {},\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 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":"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","names":[]}
1
+ {"version":3,"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: [\"hospitality\", \"education\", \"commercial\", \"storage\"],\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 checkInTime: {\n type: \"string\",\n },\n checkOutTime: {\n type: \"string\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n latitude: {\n type: \"number\",\n },\n longitude: {\n type: \"number\",\n },\n appFeatures: {\n type: \"object\",\n properties: {\n RoomControl: {\n type: \"object\",\n properties: {\n enabled: {\n type: \"boolean\",\n default: true,\n },\n disabledSystems: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\"climate\", \"lights\", \"shades\", \"tv\", \"doors\"],\n },\n },\n excludedDeviceIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\n },\n commonAreas: {\n type: \"object\",\n properties: {\n spaces: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n },\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 newTicketCCs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n default: [],\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 issues: {\n type: \"object\",\n properties: {\n syncWithPropertyId: {\n type: \"string\",\n },\n },\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 activeEmergencies: {\n type: \"array\",\n items: {\n type: \"string\",\n enum: [\n \"medical\",\n \"fire\",\n \"suspiciousPerson\",\n \"other\",\n \"conflict\",\n \"shooter\",\n ],\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 },\n additionalProperties: false,\n default: {\n RoomControl: {},\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 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":"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","names":[]}
@@ -491,9 +491,6 @@ declare const ticketSchema: {
491
491
  readonly type: "string";
492
492
  };
493
493
  };
494
- readonly department: {
495
- readonly type: "string";
496
- };
497
494
  readonly rating: {
498
495
  readonly type: "number";
499
496
  readonly minimum: 0;
@@ -498,9 +498,6 @@ const ticketSchema = {
498
498
  type: "string"
499
499
  }
500
500
  },
501
- department: {
502
- type: "string"
503
- },
504
501
  rating: {
505
502
  type: "number",
506
503
  minimum: 0,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/ticket.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport type { mediaFileSchema } from \"./mediaFile\";\n\nexport const ticketSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"ticket.json\",\n title: \"Ticket\",\n description: \"A ticket is a request from a user.\",\n type: \"object\",\n required: [\n \"id\",\n \"conversation\",\n \"requester\",\n \"status\",\n \"tags\",\n \"createdAt\",\n \"updatedAt\",\n ],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n enum: [\"ticket\"],\n default: \"ticket\",\n },\n number: {\n type: \"string\",\n description: \"The number of the ticket.\",\n },\n issueId: {\n type: \"string\",\n description: \"The ID of the issue that this ticket is associated with.\",\n },\n conversation: {\n type: \"array\",\n default: [],\n description: \"The conversation history of the ticket.\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"id\", \"discriminator\", \"timestamp\", \"body\"],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the message.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\n \"message\",\n \"opened\",\n \"assigned\",\n \"rated\",\n \"tipped\",\n \"scheduled\",\n \"collaboratorAdded\",\n \"collaboratorRemoved\",\n \"statusChanged\",\n \"priorityChanged\",\n \"scheduleDateChanged\",\n \"locationChanged\",\n ],\n default: \"message\",\n description: \"The discriminator of the message.\",\n },\n authorId: {\n type: \"string\",\n description: \"The ID of the author of the message.\",\n },\n authorName: {\n type: \"string\",\n description: \"The name of the author of the message.\",\n },\n authorDiscriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description: \"The discriminator of the author of the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the system who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the system who sent the message.\",\n },\n timestamp: {\n $ref: \"definitions.json#/definitions/date\",\n description: \"The ISO 8601 timestamp of the message.\",\n },\n body: {\n type: \"string\",\n description: \"The body of the message.\",\n },\n parsedBody: {\n type: \"object\",\n additionalProperties: false,\n description:\n \"An object containing the parsed body of the message for mentions.\",\n properties: {\n text: {\n type: \"string\",\n description: \"The mention text.\",\n },\n mentions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\n \"discriminator\",\n \"id\",\n \"index\",\n \"length\",\n \"originalText\",\n ],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the mention.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description:\n \"The discriminator of entity that was mentioned.\",\n },\n index: {\n type: \"integer\",\n description: \"The index of the mention in the message.\",\n },\n length: {\n type: \"integer\",\n description: \"The length of the mention in the message.\",\n },\n originalText: {\n type: \"string\",\n description: \"The original text of the mention.\",\n },\n },\n },\n },\n },\n },\n\n readBy: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n description: \"The IDs of the users who have read the message.\",\n },\n media: {\n anyOf: [{ $ref: \"mediaFile.json\" }, { type: \"null\" }],\n description: \"The media file associated with the message.\",\n },\n },\n },\n },\n subject: {\n type: \"string\",\n description: \"The subject of the ticket.\",\n },\n openedBy: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"system\"],\n },\n name: {\n type: \"string\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who opened the ticket.\",\n },\n\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who opened the ticket.\",\n },\n },\n },\n requester: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the requester.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\", \"device\"],\n description: \"The discriminator of the requester.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the requester.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the requester.\",\n },\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n systemPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n deviceId: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n roomId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the room who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n reservationId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the reservation who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the space who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceName: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The name of the space who requested the ticket.\",\n },\n },\n },\n assignedTo: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the assigned to.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n description: \"The discriminator of the assigned to.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the assigned to.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the assigned to.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n },\n /**\n * @deprecated - use id instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n vendorPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the vendor who assigned the ticket.\",\n },\n },\n },\n notify: {\n type: \"array\",\n description:\n \"A list of entities to notify when this ticket is created or resolved.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n collaborators: {\n type: \"array\",\n default: [],\n description: \"A list of entities who will collaborate on this ticket.\",\n items: {\n type: \"object\",\n required: [\"id\", \"name\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n name: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n },\n },\n },\n },\n location: {\n type: \"object\",\n required: [\"discriminator\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"space\", \"room\", \"property\", \"customText\"],\n },\n name: {\n type: \"string\",\n },\n },\n },\n status: {\n type: \"string\",\n enum: [\"open\", \"pending\", \"solved\", \"closed\"],\n default: \"open\",\n },\n priority: {\n type: \"string\",\n enum: [\"low\", \"normal\", \"high\"],\n default: \"normal\",\n },\n tags: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n },\n department: {\n type: \"string\",\n },\n rating: {\n type: \"number\",\n minimum: 0,\n maximum: 5,\n },\n ratingComment: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n tipAmount: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The amount of the tip.\",\n },\n autoCloseAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n scheduleDate: {\n $ref: \"definitions.json#/definitions/date\",\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n solvedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n closedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type TicketSchema = FromSchema<\n typeof ticketSchema,\n {\n references: [typeof defs, typeof mediaFileSchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/ticket.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport type { mediaFileSchema } from \"./mediaFile\";\n\nexport const ticketSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"ticket.json\",\n title: \"Ticket\",\n description: \"A ticket is a request from a user.\",\n type: \"object\",\n required: [\n \"id\",\n \"conversation\",\n \"requester\",\n \"status\",\n \"tags\",\n \"createdAt\",\n \"updatedAt\",\n ],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n enum: [\"ticket\"],\n default: \"ticket\",\n },\n number: {\n type: \"string\",\n description: \"The number of the ticket.\",\n },\n issueId: {\n type: \"string\",\n description: \"The ID of the issue that this ticket is associated with.\",\n },\n conversation: {\n type: \"array\",\n default: [],\n description: \"The conversation history of the ticket.\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"id\", \"discriminator\", \"timestamp\", \"body\"],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the message.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\n \"message\",\n \"opened\",\n \"assigned\",\n \"rated\",\n \"tipped\",\n \"scheduled\",\n \"collaboratorAdded\",\n \"collaboratorRemoved\",\n \"statusChanged\",\n \"priorityChanged\",\n \"scheduleDateChanged\",\n \"locationChanged\",\n ],\n default: \"message\",\n description: \"The discriminator of the message.\",\n },\n authorId: {\n type: \"string\",\n description: \"The ID of the author of the message.\",\n },\n authorName: {\n type: \"string\",\n description: \"The name of the author of the message.\",\n },\n authorDiscriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description: \"The discriminator of the author of the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the user who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the vendor who sent the message.\",\n },\n /**\n * @deprecated - use authorId instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use authorId instead. The ID of the system who sent the message.\",\n },\n /**\n * @deprecated - use authorName instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use authorName instead. The name of the system who sent the message.\",\n },\n timestamp: {\n $ref: \"definitions.json#/definitions/date\",\n description: \"The ISO 8601 timestamp of the message.\",\n },\n body: {\n type: \"string\",\n description: \"The body of the message.\",\n },\n parsedBody: {\n type: \"object\",\n additionalProperties: false,\n description:\n \"An object containing the parsed body of the message for mentions.\",\n properties: {\n text: {\n type: \"string\",\n description: \"The mention text.\",\n },\n mentions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\n \"discriminator\",\n \"id\",\n \"index\",\n \"length\",\n \"originalText\",\n ],\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the mention.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\"],\n description:\n \"The discriminator of entity that was mentioned.\",\n },\n index: {\n type: \"integer\",\n description: \"The index of the mention in the message.\",\n },\n length: {\n type: \"integer\",\n description: \"The length of the mention in the message.\",\n },\n originalText: {\n type: \"string\",\n description: \"The original text of the mention.\",\n },\n },\n },\n },\n },\n },\n\n readBy: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n description: \"The IDs of the users who have read the message.\",\n },\n media: {\n anyOf: [{ $ref: \"mediaFile.json\" }, { type: \"null\" }],\n description: \"The media file associated with the message.\",\n },\n },\n },\n },\n subject: {\n type: \"string\",\n description: \"The subject of the ticket.\",\n },\n openedBy: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"system\"],\n },\n name: {\n type: \"string\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who opened the ticket.\",\n },\n\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who opened the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who opened the ticket.\",\n },\n },\n },\n requester: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the requester.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\", \"system\", \"device\"],\n description: \"The discriminator of the requester.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the requester.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the requester.\",\n },\n /**\n * @deprecated - use id instead.\n */\n systemId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n systemName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n systemPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the system who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the user who requested the ticket.\",\n },\n /**\n * @deprecated - use id instead.\n */\n deviceId: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n roomId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the room who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n reservationId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the reservation who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceId: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The ID of the space who requested the ticket.\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n spaceName: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The name of the space who requested the ticket.\",\n },\n },\n },\n assignedTo: {\n type: \"object\",\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the assigned to.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n description: \"The discriminator of the assigned to.\",\n },\n name: {\n type: \"string\",\n description: \"The name of the assigned to.\",\n },\n photo: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description: \"The photo of the assigned to.\",\n },\n /**\n * @deprecated - use id instead.\n */\n userId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n userName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the user who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n userPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n },\n /**\n * @deprecated - use id instead.\n */\n vendorId: {\n type: \"string\",\n description:\n \"@deprecated - use id instead. The ID of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use name instead.\n */\n vendorName: {\n type: \"string\",\n description:\n \"@deprecated - use name instead. The name of the vendor who assigned the ticket.\",\n },\n /**\n * @deprecated - use photo instead.\n */\n vendorPhoto: {\n anyOf: [\n { $ref: \"mediaFile.json\" },\n { type: \"null\" },\n { type: \"string\" },\n ],\n description:\n \"@deprecated - use photo instead. The photo of the vendor who assigned the ticket.\",\n },\n },\n },\n notify: {\n type: \"array\",\n description:\n \"A list of entities to notify when this ticket is created or resolved.\",\n default: [],\n items: {\n type: \"object\",\n required: [\"id\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n description: \"The ID of the entity to notify.\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\"],\n },\n },\n },\n },\n collaborators: {\n type: \"array\",\n default: [],\n description: \"A list of entities who will collaborate on this ticket.\",\n items: {\n type: \"object\",\n required: [\"id\", \"name\", \"discriminator\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n name: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"user\", \"vendor\"],\n },\n },\n },\n },\n location: {\n type: \"object\",\n required: [\"discriminator\", \"name\"],\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"space\", \"room\", \"property\", \"customText\"],\n },\n name: {\n type: \"string\",\n },\n },\n },\n status: {\n type: \"string\",\n enum: [\"open\", \"pending\", \"solved\", \"closed\"],\n default: \"open\",\n },\n priority: {\n type: \"string\",\n enum: [\"low\", \"normal\", \"high\"],\n default: \"normal\",\n },\n tags: {\n type: \"array\",\n default: [],\n items: {\n type: \"string\",\n },\n },\n rating: {\n type: \"number\",\n minimum: 0,\n maximum: 5,\n },\n ratingComment: {\n type: \"string\",\n },\n /**\n * @deprecated - This will be removed in a future version.\n */\n tipAmount: {\n type: \"string\",\n description:\n \"@deprecated - This will be removed in a future version. The amount of the tip.\",\n },\n autoCloseAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n scheduleDate: {\n $ref: \"definitions.json#/definitions/date\",\n },\n createdAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n updatedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n solvedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n closedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n deletedAt: {\n $ref: \"definitions.json#/definitions/date\",\n },\n },\n} as const;\n\nexport type TicketSchema = FromSchema<\n typeof ticketSchema,\n {\n references: [typeof defs, typeof mediaFileSchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
@@ -92,10 +92,6 @@ declare const userSchema: {
92
92
  readonly type: "boolean";
93
93
  readonly description: "Whether time tracking is enabled for this role.";
94
94
  };
95
- readonly department: {
96
- readonly type: "string";
97
- readonly description: "The department the user belongs to.";
98
- };
99
95
  readonly departmentIds: {
100
96
  readonly type: "array";
101
97
  readonly items: {
@@ -95,10 +95,6 @@ const userSchema = {
95
95
  type: "boolean",
96
96
  description: "Whether time tracking is enabled for this role."
97
97
  },
98
- department: {
99
- type: "string",
100
- description: "The department the user belongs to."
101
- },
102
98
  departmentIds: {
103
99
  type: "array",
104
100
  items: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/user.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { mediaFileSchema } from \"./mediaFile\";\nimport { policySchema } from \"./policy\";\n\nexport const userSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"user.json\",\n title: \"User\",\n type: \"object\",\n required: [\"id\", \"firstName\", \"lastName\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"user\",\n },\n firstName: {\n type: \"string\",\n },\n lastName: {\n type: \"string\",\n },\n phone: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n phoneVerified: {\n type: \"boolean\",\n },\n email: {\n type: \"string\",\n format: \"email\",\n },\n emailVerified: {\n type: \"boolean\",\n },\n whatsapp: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n whatsappVerified: {\n type: \"boolean\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n secretKey: {\n type: \"string\",\n },\n photo: {\n $ref: \"mediaFile.json#\",\n },\n jobTitle: {\n type: \"string\",\n },\n dob: {\n type: \"string\",\n },\n gender: {\n type: \"string\",\n enum: [\"male\", \"female\"],\n },\n nationality: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n permissions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n required: [\"organizationId\", \"propertyId\", \"role\"],\n properties: {\n organizationId: {\n type: \"string\",\n description:\n \"The ID of the organization the permission is applies to.\",\n },\n propertyId: {\n type: \"string\",\n description: \"The ID of the property the permission is applies to.\",\n },\n role: {\n type: \"string\",\n enum: [\n \"Guest\",\n \"User\",\n \"Agent\",\n \"Manager\",\n \"Maintenance\",\n \"Administrator\",\n \"SuperAdmin\",\n ],\n },\n timeTrackingEnabled: {\n type: \"boolean\",\n description: \"Whether time tracking is enabled for this role.\",\n },\n department: {\n type: \"string\",\n description: \"The department the user belongs to.\",\n },\n departmentIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description: \"The ID of the department the user belongs to.\",\n },\n policyIds: {\n type: \"array\",\n items: {\n type: \"string\",\n description: \"ID of a policy that is applied to this role.\",\n },\n },\n policies: {\n type: \"array\",\n items: {\n description:\n \"A policy object populated from the policyIds array.\",\n $ref: \"policy.json\",\n },\n },\n },\n additionalProperties: false,\n },\n },\n preferences: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"organizationId\", \"propertyId\"],\n properties: {\n organizationId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n notifications: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"discriminator\", \"enabled\"],\n properties: {\n discriminator: {\n type: \"string\",\n enum: [\"observerTicketCreated\", \"observerTicketResolved\"],\n },\n enabled: {\n type: \"boolean\",\n },\n },\n },\n },\n },\n },\n },\n notes: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n files: {\n type: \"array\",\n items: {\n $ref: \"mediaFile.json#\",\n },\n },\n location: {\n type: \"object\",\n required: [\"accuracy\", \"latitude\", \"longitude\", \"timestamp\"],\n additionalProperties: false,\n properties: {\n accuracy: {\n type: [\"number\", \"null\"],\n },\n latitude: {\n type: [\"number\", \"null\"],\n },\n longitude: {\n type: [\"number\", \"null\"],\n },\n timestamp: {\n type: [\"number\", \"null\"],\n },\n },\n },\n\n spaceName: {\n type: \"string\",\n },\n\n systems: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n properties: {\n systemId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n driver: {\n type: \"string\",\n },\n },\n required: [\"systemId\", \"propertyId\", \"driver\"],\n additionalProperties: false,\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 UserSchema = FromSchema<\n typeof userSchema,\n {\n references: [typeof defs, typeof mediaFileSchema, typeof policySchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n\nexport const getters = {\n fullName() {\n return `${this.firstName} ${this.lastName}`;\n },\n roles() {\n const roles = new Set();\n if (this.permissions) {\n for (const permission of this.permissions) {\n roles.add(permission.role);\n }\n }\n return Array.from(roles);\n },\n isSuperAdmin() {\n return this.roles.includes(\"SuperAdmin\");\n },\n isAdmin() {\n return this.roles.includes(\"Admin\") || this.roles.includes(\"Administrator\");\n },\n isManager() {\n return this.roles.includes(\"Manager\");\n },\n isUser() {\n return this.roles.includes(\"User\");\n },\n};\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/user.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\nimport { mediaFileSchema } from \"./mediaFile\";\nimport { policySchema } from \"./policy\";\n\nexport const userSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"user.json\",\n title: \"User\",\n type: \"object\",\n required: [\"id\", \"firstName\", \"lastName\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"user\",\n },\n firstName: {\n type: \"string\",\n },\n lastName: {\n type: \"string\",\n },\n phone: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n phoneVerified: {\n type: \"boolean\",\n },\n email: {\n type: \"string\",\n format: \"email\",\n },\n emailVerified: {\n type: \"boolean\",\n },\n whatsapp: {\n type: \"string\",\n pattern: \"^\\\\+[0-9]{1,14}$\",\n },\n whatsappVerified: {\n type: \"boolean\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n secretKey: {\n type: \"string\",\n },\n photo: {\n $ref: \"mediaFile.json#\",\n },\n jobTitle: {\n type: \"string\",\n },\n dob: {\n type: \"string\",\n },\n gender: {\n type: \"string\",\n enum: [\"male\", \"female\"],\n },\n nationality: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n permissions: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n required: [\"organizationId\", \"propertyId\", \"role\"],\n properties: {\n organizationId: {\n type: \"string\",\n description:\n \"The ID of the organization the permission is applies to.\",\n },\n propertyId: {\n type: \"string\",\n description: \"The ID of the property the permission is applies to.\",\n },\n role: {\n type: \"string\",\n enum: [\n \"Guest\",\n \"User\",\n \"Agent\",\n \"Manager\",\n \"Maintenance\",\n \"Administrator\",\n \"SuperAdmin\",\n ],\n },\n timeTrackingEnabled: {\n type: \"boolean\",\n description: \"Whether time tracking is enabled for this role.\",\n },\n departmentIds: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description: \"The ID of the department the user belongs to.\",\n },\n policyIds: {\n type: \"array\",\n items: {\n type: \"string\",\n description: \"ID of a policy that is applied to this role.\",\n },\n },\n policies: {\n type: \"array\",\n items: {\n description:\n \"A policy object populated from the policyIds array.\",\n $ref: \"policy.json\",\n },\n },\n },\n additionalProperties: false,\n },\n },\n preferences: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"organizationId\", \"propertyId\"],\n properties: {\n organizationId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n notifications: {\n type: \"array\",\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"discriminator\", \"enabled\"],\n properties: {\n discriminator: {\n type: \"string\",\n enum: [\"observerTicketCreated\", \"observerTicketResolved\"],\n },\n enabled: {\n type: \"boolean\",\n },\n },\n },\n },\n },\n },\n },\n notes: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n files: {\n type: \"array\",\n items: {\n $ref: \"mediaFile.json#\",\n },\n },\n location: {\n type: \"object\",\n required: [\"accuracy\", \"latitude\", \"longitude\", \"timestamp\"],\n additionalProperties: false,\n properties: {\n accuracy: {\n type: [\"number\", \"null\"],\n },\n latitude: {\n type: [\"number\", \"null\"],\n },\n longitude: {\n type: [\"number\", \"null\"],\n },\n timestamp: {\n type: [\"number\", \"null\"],\n },\n },\n },\n\n spaceName: {\n type: \"string\",\n },\n\n systems: {\n type: \"array\",\n default: [],\n items: {\n type: \"object\",\n properties: {\n systemId: {\n type: \"string\",\n },\n propertyId: {\n type: \"string\",\n },\n driver: {\n type: \"string\",\n },\n },\n required: [\"systemId\", \"propertyId\", \"driver\"],\n additionalProperties: false,\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 UserSchema = FromSchema<\n typeof userSchema,\n {\n references: [typeof defs, typeof mediaFileSchema, typeof policySchema];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n\nexport const getters = {\n fullName() {\n return `${this.firstName} ${this.lastName}`;\n },\n roles() {\n const roles = new Set();\n if (this.permissions) {\n for (const permission of this.permissions) {\n roles.add(permission.role);\n }\n }\n return Array.from(roles);\n },\n isSuperAdmin() {\n return this.roles.includes(\"SuperAdmin\");\n },\n isAdmin() {\n return this.roles.includes(\"Admin\") || this.roles.includes(\"Administrator\");\n },\n isManager() {\n return this.roles.includes(\"Manager\");\n },\n isUser() {\n return this.roles.includes(\"User\");\n },\n};\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kohost/api-client",
3
- "version": "4.15.4",
3
+ "version": "4.16.0",
4
4
  "description": "API client, models, schemas, commands, and events for Kohost applications",
5
5
  "author": "Ian Rogers",
6
6
  "readme": "README.md",