@kohost/api-client 4.6.1 → 4.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/amqpClient.cjs.map +1 -1
- package/dist/amqpClient.js +1 -1
- package/dist/chunk-2P5LASH2.js +1 -0
- package/dist/chunk-2P5LASH2.js.map +1 -0
- package/dist/{chunk-JXC7U43R.js → chunk-364IZMI7.js} +1 -1
- package/dist/{chunk-JXC7U43R.js.map → chunk-364IZMI7.js.map} +1 -1
- package/dist/{chunk-V3FMR5EY.js → chunk-3H74J6YV.js} +1 -1
- package/dist/{chunk-OZVUUXCY.js → chunk-3OHHAVGM.js} +1 -1
- package/dist/{chunk-FVGUQSBE.js → chunk-3XNNT6GS.js} +1 -1
- package/dist/{chunk-2XIV4YMH.js → chunk-45WLVARH.js} +1 -1
- package/dist/{chunk-NP425FPQ.js → chunk-4SSME4Y4.js} +1 -1
- package/dist/{chunk-MNBLY7PN.js → chunk-6BAPG7KI.js} +1 -1
- package/dist/{chunk-NC2BYDVY.js → chunk-6HFMALKH.js} +1 -1
- package/dist/{chunk-H7W7JISA.js → chunk-6LO4AAZU.js} +1 -1
- package/dist/{chunk-6XYBDVQR.js → chunk-7BI266GZ.js} +1 -1
- package/dist/{chunk-IWREA7GX.js → chunk-7SDGK3FY.js} +1 -1
- package/dist/{chunk-AQVJ22JN.js → chunk-BWKM6FHE.js} +1 -1
- package/dist/chunk-BWKM6FHE.js.map +1 -0
- package/dist/{chunk-A7IGURNI.js → chunk-CWTMCUZZ.js} +1 -1
- package/dist/{chunk-A7IGURNI.js.map → chunk-CWTMCUZZ.js.map} +1 -1
- package/dist/{chunk-PD3REBE5.js → chunk-D5TZNOHT.js} +1 -1
- package/dist/{chunk-EKRMZRQX.js → chunk-DJZRIWGL.js} +1 -1
- package/dist/{chunk-BWFQBRD7.js → chunk-DNAXIHEO.js} +1 -1
- package/dist/{chunk-7S2IXTOL.js → chunk-FM7UL4RE.js} +1 -1
- package/dist/{chunk-OPGNIHD5.js → chunk-FW7D3GH3.js} +1 -1
- package/dist/{chunk-44HN4CAG.js → chunk-GXMHA263.js} +1 -1
- package/dist/chunk-HCLU4KYE.js +1 -0
- package/dist/{chunk-IAHV2WZF.js.map → chunk-HCLU4KYE.js.map} +1 -1
- package/dist/{chunk-BHEDQJ73.js → chunk-IAIKQXNR.js} +1 -1
- package/dist/chunk-IL3ICDGN.js +1 -0
- package/dist/chunk-IL3ICDGN.js.map +1 -0
- package/dist/{chunk-L5CAQC4N.js → chunk-IWGDMVNC.js} +1 -1
- package/dist/{chunk-ZKS2PBLV.js → chunk-IWIPSTOH.js} +1 -1
- package/dist/{chunk-BOPAKB7V.js → chunk-KI6XJTAQ.js} +1 -1
- package/dist/{chunk-OAHGCLLW.js → chunk-LBHE6WMJ.js} +1 -1
- package/dist/{chunk-TTXKVCGS.js → chunk-LJVWC3E4.js} +1 -1
- package/dist/{chunk-KHZD7Q63.js → chunk-LM3DGQWT.js} +1 -1
- package/dist/{chunk-3UPMF7BZ.js → chunk-MOGXYZHC.js} +1 -1
- package/dist/{chunk-AR4C3GX4.js → chunk-NL7OPBZY.js} +1 -1
- package/dist/{chunk-GL266VE3.js → chunk-NWH5F523.js} +1 -1
- package/dist/{chunk-W5QQVLMP.js → chunk-POWSQ6EB.js} +1 -1
- package/dist/{chunk-UFA3AFXN.js → chunk-PRDI3KRE.js} +1 -1
- package/dist/{chunk-B3HWH7JU.js → chunk-PYZPYTS3.js} +1 -1
- package/dist/{chunk-GCQLITIX.js → chunk-Q33FW2UC.js} +1 -1
- package/dist/{chunk-GCQLITIX.js.map → chunk-Q33FW2UC.js.map} +1 -1
- package/dist/{chunk-6RSQSXTR.js → chunk-RE2TLPXP.js} +1 -1
- package/dist/{chunk-25QQVYLG.js → chunk-RPCMFJ32.js} +1 -1
- package/dist/{chunk-EWHB7GOW.js → chunk-TM3PSLKD.js} +1 -1
- package/dist/{chunk-7ENPTBN2.js → chunk-UDBCX6ZP.js} +1 -1
- package/dist/{chunk-KRTY3ZLU.js → chunk-UIFA6TUW.js} +1 -1
- package/dist/chunk-UNLKDI2P.js +1 -0
- package/dist/{chunk-TJXL2VVQ.js.map → chunk-UNLKDI2P.js.map} +1 -1
- package/dist/{chunk-Z4ZCAH23.js → chunk-VL5FTU46.js} +1 -1
- package/dist/{chunk-VHG3NBMX.js → chunk-X7VZCU32.js} +1 -1
- package/dist/{chunk-LXRFHEUW.js → chunk-XGYTUUO7.js} +1 -1
- package/dist/chunk-XQ5CWKNA.js +1 -0
- package/dist/chunk-XQ5CWKNA.js.map +1 -0
- package/dist/{chunk-PFGA67BD.js → chunk-XRZGL3GO.js} +1 -1
- package/dist/{chunk-OJXJIK7E.js → chunk-XVJVSQGH.js} +1 -1
- package/dist/{chunk-BI2ZTBIW.js → chunk-XYV2ZMBZ.js} +1 -1
- package/dist/{chunk-AQHDAE6B.js → chunk-Y5J5SCRG.js} +1 -1
- package/dist/commands/index.cjs.map +1 -1
- package/dist/commands/index.js +1 -1
- package/dist/errors/index.cjs.map +1 -1
- package/dist/errors/index.js +1 -1
- package/dist/events/index.cjs.map +1 -1
- package/dist/events/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -1
- package/dist/models/alarm.cjs +1 -1
- package/dist/models/alarm.cjs.map +1 -1
- package/dist/models/alarm.js +1 -1
- package/dist/models/announcement.cjs +1 -1
- package/dist/models/announcement.cjs.map +1 -1
- package/dist/models/announcement.js +1 -1
- package/dist/models/automation.cjs +1 -1
- package/dist/models/automation.cjs.map +1 -1
- package/dist/models/automation.js +1 -1
- package/dist/models/camera.cjs +1 -1
- package/dist/models/camera.cjs.map +1 -1
- package/dist/models/camera.js +1 -1
- package/dist/models/category.cjs +1 -1
- package/dist/models/category.cjs.map +1 -1
- package/dist/models/category.js +1 -1
- package/dist/models/courtesy.cjs +1 -1
- package/dist/models/courtesy.cjs.map +1 -1
- package/dist/models/courtesy.js +1 -1
- package/dist/models/credential.cjs +1 -1
- package/dist/models/credential.cjs.map +1 -1
- package/dist/models/credential.js +1 -1
- package/dist/models/deviceRouter.cjs +1 -1
- package/dist/models/deviceRouter.cjs.map +1 -1
- package/dist/models/deviceRouter.js +1 -1
- package/dist/models/dimmer.cjs +1 -1
- package/dist/models/dimmer.cjs.map +1 -1
- package/dist/models/dimmer.js +1 -1
- package/dist/models/discoveredDevice.cjs +1 -1
- package/dist/models/discoveredDevice.cjs.map +1 -1
- package/dist/models/discoveredDevice.js +1 -1
- package/dist/models/emailMessage.cjs +1 -1
- package/dist/models/emailMessage.cjs.map +1 -1
- package/dist/models/emailMessage.js +1 -1
- package/dist/models/energyReport.cjs +1 -1
- package/dist/models/energyReport.cjs.map +1 -1
- package/dist/models/energyReport.js +1 -1
- package/dist/models/energyReportShard.cjs +1 -1
- package/dist/models/energyReportShard.cjs.map +1 -1
- package/dist/models/energyReportShard.js +1 -1
- package/dist/models/gateway.cjs +1 -1
- package/dist/models/gateway.cjs.map +1 -1
- package/dist/models/gateway.js +1 -1
- package/dist/models/identification.cjs +1 -1
- package/dist/models/identification.cjs.map +1 -1
- package/dist/models/identification.js +1 -1
- package/dist/models/index.cjs +1 -1
- package/dist/models/index.cjs.map +1 -1
- package/dist/models/index.js +1 -1
- package/dist/models/issue.cjs +1 -1
- package/dist/models/issue.cjs.map +1 -1
- package/dist/models/issue.js +1 -1
- package/dist/models/lock.cjs +1 -1
- package/dist/models/lock.cjs.map +1 -1
- package/dist/models/lock.js +1 -1
- package/dist/models/log.cjs +1 -1
- package/dist/models/log.cjs.map +1 -1
- package/dist/models/log.js +1 -1
- package/dist/models/mediaFile.cjs +1 -1
- package/dist/models/mediaFile.cjs.map +1 -1
- package/dist/models/mediaFile.js +1 -1
- package/dist/models/mediaSource.cjs +1 -1
- package/dist/models/mediaSource.cjs.map +1 -1
- package/dist/models/mediaSource.d.cts +3 -3
- package/dist/models/mediaSource.d.ts +3 -3
- package/dist/models/mediaSource.js +1 -1
- package/dist/models/motionSensor.cjs +1 -1
- package/dist/models/motionSensor.cjs.map +1 -1
- package/dist/models/motionSensor.js +1 -1
- package/dist/models/notification.cjs +1 -1
- package/dist/models/notification.cjs.map +1 -1
- package/dist/models/notification.d.cts +6 -0
- package/dist/models/notification.d.ts +6 -0
- package/dist/models/notification.js +1 -1
- package/dist/models/order.cjs +1 -1
- package/dist/models/order.cjs.map +1 -1
- package/dist/models/order.js +1 -1
- package/dist/models/organization.cjs +1 -1
- package/dist/models/organization.cjs.map +1 -1
- package/dist/models/organization.js +1 -1
- package/dist/models/payment.cjs +1 -1
- package/dist/models/payment.cjs.map +1 -1
- package/dist/models/payment.js +1 -1
- package/dist/models/policy.cjs +1 -1
- package/dist/models/policy.cjs.map +1 -1
- package/dist/models/policy.js +1 -1
- package/dist/models/product.cjs +1 -1
- package/dist/models/product.cjs.map +1 -1
- package/dist/models/product.js +1 -1
- package/dist/models/property.cjs +1 -1
- package/dist/models/property.cjs.map +1 -1
- package/dist/models/property.js +1 -1
- package/dist/models/reservation.cjs +1 -1
- package/dist/models/reservation.cjs.map +1 -1
- package/dist/models/reservation.js +1 -1
- package/dist/models/room.cjs +1 -1
- package/dist/models/room.cjs.map +1 -1
- package/dist/models/room.d.cts +3 -3
- package/dist/models/room.d.ts +3 -3
- package/dist/models/room.js +1 -1
- package/dist/models/scene.cjs +1 -1
- package/dist/models/scene.cjs.map +1 -1
- package/dist/models/scene.js +1 -1
- package/dist/models/shortLink.cjs +1 -1
- package/dist/models/shortLink.cjs.map +1 -1
- package/dist/models/shortLink.js +1 -1
- package/dist/models/smsMessage.cjs +1 -1
- package/dist/models/smsMessage.cjs.map +1 -1
- package/dist/models/smsMessage.js +1 -1
- package/dist/models/space.cjs +1 -1
- package/dist/models/space.cjs.map +1 -1
- package/dist/models/space.js +1 -1
- package/dist/models/switch.cjs +1 -1
- package/dist/models/switch.cjs.map +1 -1
- package/dist/models/switch.js +1 -1
- package/dist/models/systemUser.cjs +1 -1
- package/dist/models/systemUser.cjs.map +1 -1
- package/dist/models/systemUser.js +1 -1
- package/dist/models/thermostat.cjs +1 -1
- package/dist/models/thermostat.cjs.map +1 -1
- package/dist/models/thermostat.js +1 -1
- package/dist/models/ticket.cjs +1 -1
- package/dist/models/ticket.cjs.map +1 -1
- package/dist/models/ticket.js +1 -1
- package/dist/models/timeSheet.cjs +1 -1
- package/dist/models/timeSheet.cjs.map +1 -1
- package/dist/models/timeSheet.js +1 -1
- package/dist/models/user.cjs +1 -1
- package/dist/models/user.cjs.map +1 -1
- package/dist/models/user.js +1 -1
- package/dist/models/vendor.cjs +1 -1
- package/dist/models/vendor.cjs.map +1 -1
- package/dist/models/vendor.js +1 -1
- package/dist/models/windowCovering.cjs +1 -1
- package/dist/models/windowCovering.cjs.map +1 -1
- package/dist/models/windowCovering.js +1 -1
- package/dist/useCases/index.cjs.map +1 -1
- package/dist/useCases/index.js +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-7MVUPWI7.js +0 -1
- package/dist/chunk-7MVUPWI7.js.map +0 -1
- package/dist/chunk-7SZ5FDPG.js +0 -1
- package/dist/chunk-7SZ5FDPG.js.map +0 -1
- package/dist/chunk-AQVJ22JN.js.map +0 -1
- package/dist/chunk-IAHV2WZF.js +0 -1
- package/dist/chunk-QYGIUT66.js +0 -1
- package/dist/chunk-QYGIUT66.js.map +0 -1
- package/dist/chunk-TJXL2VVQ.js +0 -1
- /package/dist/{chunk-V3FMR5EY.js.map → chunk-3H74J6YV.js.map} +0 -0
- /package/dist/{chunk-OZVUUXCY.js.map → chunk-3OHHAVGM.js.map} +0 -0
- /package/dist/{chunk-FVGUQSBE.js.map → chunk-3XNNT6GS.js.map} +0 -0
- /package/dist/{chunk-2XIV4YMH.js.map → chunk-45WLVARH.js.map} +0 -0
- /package/dist/{chunk-NP425FPQ.js.map → chunk-4SSME4Y4.js.map} +0 -0
- /package/dist/{chunk-MNBLY7PN.js.map → chunk-6BAPG7KI.js.map} +0 -0
- /package/dist/{chunk-NC2BYDVY.js.map → chunk-6HFMALKH.js.map} +0 -0
- /package/dist/{chunk-H7W7JISA.js.map → chunk-6LO4AAZU.js.map} +0 -0
- /package/dist/{chunk-6XYBDVQR.js.map → chunk-7BI266GZ.js.map} +0 -0
- /package/dist/{chunk-IWREA7GX.js.map → chunk-7SDGK3FY.js.map} +0 -0
- /package/dist/{chunk-PD3REBE5.js.map → chunk-D5TZNOHT.js.map} +0 -0
- /package/dist/{chunk-EKRMZRQX.js.map → chunk-DJZRIWGL.js.map} +0 -0
- /package/dist/{chunk-BWFQBRD7.js.map → chunk-DNAXIHEO.js.map} +0 -0
- /package/dist/{chunk-7S2IXTOL.js.map → chunk-FM7UL4RE.js.map} +0 -0
- /package/dist/{chunk-OPGNIHD5.js.map → chunk-FW7D3GH3.js.map} +0 -0
- /package/dist/{chunk-44HN4CAG.js.map → chunk-GXMHA263.js.map} +0 -0
- /package/dist/{chunk-BHEDQJ73.js.map → chunk-IAIKQXNR.js.map} +0 -0
- /package/dist/{chunk-L5CAQC4N.js.map → chunk-IWGDMVNC.js.map} +0 -0
- /package/dist/{chunk-ZKS2PBLV.js.map → chunk-IWIPSTOH.js.map} +0 -0
- /package/dist/{chunk-BOPAKB7V.js.map → chunk-KI6XJTAQ.js.map} +0 -0
- /package/dist/{chunk-OAHGCLLW.js.map → chunk-LBHE6WMJ.js.map} +0 -0
- /package/dist/{chunk-TTXKVCGS.js.map → chunk-LJVWC3E4.js.map} +0 -0
- /package/dist/{chunk-KHZD7Q63.js.map → chunk-LM3DGQWT.js.map} +0 -0
- /package/dist/{chunk-3UPMF7BZ.js.map → chunk-MOGXYZHC.js.map} +0 -0
- /package/dist/{chunk-AR4C3GX4.js.map → chunk-NL7OPBZY.js.map} +0 -0
- /package/dist/{chunk-GL266VE3.js.map → chunk-NWH5F523.js.map} +0 -0
- /package/dist/{chunk-W5QQVLMP.js.map → chunk-POWSQ6EB.js.map} +0 -0
- /package/dist/{chunk-UFA3AFXN.js.map → chunk-PRDI3KRE.js.map} +0 -0
- /package/dist/{chunk-B3HWH7JU.js.map → chunk-PYZPYTS3.js.map} +0 -0
- /package/dist/{chunk-6RSQSXTR.js.map → chunk-RE2TLPXP.js.map} +0 -0
- /package/dist/{chunk-25QQVYLG.js.map → chunk-RPCMFJ32.js.map} +0 -0
- /package/dist/{chunk-EWHB7GOW.js.map → chunk-TM3PSLKD.js.map} +0 -0
- /package/dist/{chunk-7ENPTBN2.js.map → chunk-UDBCX6ZP.js.map} +0 -0
- /package/dist/{chunk-KRTY3ZLU.js.map → chunk-UIFA6TUW.js.map} +0 -0
- /package/dist/{chunk-Z4ZCAH23.js.map → chunk-VL5FTU46.js.map} +0 -0
- /package/dist/{chunk-VHG3NBMX.js.map → chunk-X7VZCU32.js.map} +0 -0
- /package/dist/{chunk-LXRFHEUW.js.map → chunk-XGYTUUO7.js.map} +0 -0
- /package/dist/{chunk-PFGA67BD.js.map → chunk-XRZGL3GO.js.map} +0 -0
- /package/dist/{chunk-OJXJIK7E.js.map → chunk-XVJVSQGH.js.map} +0 -0
- /package/dist/{chunk-BI2ZTBIW.js.map → chunk-XYV2ZMBZ.js.map} +0 -0
- /package/dist/{chunk-AQHDAE6B.js.map → chunk-Y5J5SCRG.js.map} +0 -0
package/dist/amqpClient.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/amqpClient.js","../src/defs.js","../src/errors/index.js","../src/errors/appError.js","../src/errors/authenticationError.js","../src/errors/authorizationError.js","../src/errors/conflictError.js","../src/errors/deviceCommError.js","../src/errors/loginError.js","../src/errors/notFoundError.js","../src/errors/requestError.js","../src/errors/systemCommError.js","../src/errors/tokenExpiredError.js","../src/errors/unprocessableRequestError.js","../src/errors/validationError.js"],"sourcesContent":["import { connect } from \"amqplib\";\nimport { isFatalError } from \"amqplib/lib/connection\";\nimport dbg from \"debug\";\nimport { Buffer } from \"node:buffer\";\nimport * as crypto from \"node:crypto\";\nimport { amqpExchanges as exchanges } from \"./defs\";\nimport * as Errors from \"./errors\";\n\nconst randomUUID = crypto.randomUUID;\n\nconst debug = dbg(\"kohost:amqp-client\");\n\nconst HEADER_KEY_ORGANIZATION_ID = \"X-Organization-Id\";\nconst HEADER_KEY_PROPERTY_ID = \"X-Property-Id\";\nconst HEADER_KEY_DRIVER = \"X-Driver\";\nconst HEADER_KEY_COMMAND_NAME = \"X-Command-Name\";\nconst HEADER_KEY_EVENT_NAME = \"X-Event-Name\";\n\nexport class KohostAMQPClient {\n static get Message() {\n return Message;\n }\n\n static get exchanges() {\n return exchanges;\n }\n static generateCorrelationId() {\n return randomUUID();\n }\n\n static validateMessage(message) {\n if (!message) throw new Error(\"Message is required\");\n }\n\n static parseError(err) {\n let type;\n let message;\n let options = {};\n if (err.message && err.type) {\n const { message: errMessage, type: errType, ...rest } = err;\n type = errType;\n message = errMessage;\n options = rest;\n } else {\n message = err.message || \"Unknown Error\";\n }\n\n debug(\"parseError\", type, message, options);\n\n if (type && Errors[type]) {\n return new Errors[type](message, options);\n }\n\n return new Error(message, options);\n }\n\n static parseMessage(message) {\n let error = null;\n let data = {};\n let query = {};\n let context = {};\n let headers = {};\n\n const isCommand = message?.properties?.type === \"Command\";\n const isEvent = message?.properties?.type === \"Event\";\n\n const messageHeaders = message?.properties?.headers || {};\n\n const commandName = messageHeaders[HEADER_KEY_COMMAND_NAME] || null;\n const eventName = messageHeaders[HEADER_KEY_EVENT_NAME] || null;\n\n if (message.content) {\n try {\n const payload =\n message.properties?.contentType === \"application/json\"\n ? JSON.parse(message.content.toString())\n : message.content.toString();\n data = payload?.data || {};\n error = payload?.error;\n query = payload?.query || {};\n context = payload?.context || {};\n } catch (error) {\n debug(\"error parsing content\", error);\n data = message.content.toString();\n }\n }\n\n if (message?.properties?.headers) {\n const orgHeader = message.properties.headers[HEADER_KEY_ORGANIZATION_ID];\n const propertyHeader = message.properties.headers[HEADER_KEY_PROPERTY_ID];\n const driverHeader = message.properties.headers[HEADER_KEY_DRIVER];\n\n if (orgHeader) {\n context.organizationId = orgHeader;\n headers[HEADER_KEY_ORGANIZATION_ID] = orgHeader;\n }\n\n if (propertyHeader) {\n context.propertyId = propertyHeader;\n headers[HEADER_KEY_PROPERTY_ID] = propertyHeader;\n }\n\n if (driverHeader) {\n context.driver = driverHeader;\n headers[HEADER_KEY_DRIVER] = driverHeader;\n }\n }\n\n const parsed = {};\n\n if (error) parsed.error = this.parseError(error);\n\n parsed.data = data;\n parsed.query = query;\n parsed.context = context;\n parsed.headers = headers;\n\n if (isEvent && eventName) parsed.event = eventName;\n else if (isCommand && commandName) parsed.command = commandName;\n\n debug(\"amqp parsed %o\", parsed);\n\n return parsed;\n }\n\n static getMessage(message) {\n if (!message?.content) return null;\n const payload = JSON.parse(message.content.toString());\n const data = payload?.data;\n return data;\n }\n\n static isFatalError(err) {\n return isFatalError(err);\n }\n\n async createConnection(connection, options = {}) {\n return await connect(connection, options);\n }\n\n static createMessage(content) {\n return new Message(content);\n }\n\n async createChannel(connection) {\n const channel = await connection.createChannel();\n return channel;\n }\n\n async assertExchange(channel, { exchange, type, options }) {\n return await channel.assertExchange(exchange, type, options);\n }\n\n async assertQueue(channel, { queue, options }) {\n return await channel.assertQueue(queue, options);\n }\n\n async bindQueue(channel, { queue, exchange, routingKey, args }) {\n return await channel.bindQueue(queue, exchange, routingKey, args);\n }\n\n async bindExchange(channel, { source, destination, routingKey, args }) {\n return await channel.bindExchange(destination, source, routingKey, args);\n }\n\n async subscribeToQueue(channel, { queue, cb, options }) {\n return await channel.consume(queue, cb, options);\n }\n\n publishToExchange(channel, { exchange, routingKey, content, options }) {\n return channel.publish(exchange, routingKey, content, options);\n }\n}\n\nclass Message {\n constructor(content) {\n this.toExchange = null;\n this.content = content;\n this.options = {\n contentType: \"application/json\",\n timestamp: Date.now(),\n };\n this.routingKey = \"\";\n }\n\n get correlationId() {\n return this.options.correlationId || null;\n }\n\n to({ exchange }) {\n if (typeof exchange === \"undefined\")\n throw new Error(\"Exchange is required\");\n this.toExchange = exchange;\n return this;\n }\n\n withType(type) {\n this.options.type = type;\n return this;\n }\n\n withRoutingKey(routingKey) {\n this.routingKey = routingKey;\n return this;\n }\n\n withHeaders(headers) {\n if (!this.options.headers) this.options.headers = {};\n this.options.headers = { ...this.options.headers, ...headers };\n return this;\n }\n\n withContext(context) {\n for (let key in context) {\n this.withHeaders({ [key]: context[key] });\n }\n return this;\n }\n\n withCorrelationId(correlationId) {\n this.options.correlationId = correlationId;\n return this;\n }\n\n withReplyTo(queue) {\n this.options.replyTo = queue;\n return this;\n }\n\n build() {\n let content = this.content;\n if (content.build && typeof content.build === \"function\")\n content = content.build();\n\n return {\n exchange: this.toExchange,\n content: Buffer.from(JSON.stringify(content)),\n options: this.options,\n routingKey: this.routingKey,\n };\n }\n}\n","export const amqpExchanges = {\n // routes commands based on `command-name` header and in many cases `property-id` header\n Commands: {\n name: \"kohost.commands\",\n type: \"headers\",\n options: {\n durable: true,\n },\n },\n CommandResponses: {\n name: \"kohost.commandResponses\",\n type: \"topic\",\n options: {\n durable: true,\n },\n },\n // routes events based on routing keys\n DriverEvents: {\n name: \"kohost.events.drivers\",\n type: \"topic\",\n options: {\n durable: true,\n },\n },\n AppEvents: {\n name: \"kohost.events.app\",\n type: \"topic\",\n options: {\n durable: true,\n },\n },\n Direct: {\n name: \"kohost.direct\",\n type: \"direct\",\n options: {\n durable: true,\n },\n },\n // dead letter exchange\n dlx: {\n name: \"kohost.dlx\",\n type: \"direct\",\n },\n};\n\nexport const deviceTypes = [\n \"dimmer\",\n \"switch\",\n \"thermostat\",\n \"lock\",\n \"windowCovering\",\n \"courtesy\",\n \"alarm\",\n \"camera\",\n \"mediaSource\",\n \"motionSensor\",\n \"gateway\",\n];\n","// This file is auto-generated. Do not edit this file manually.\n// Generated on: 2025-04-25T14:49:16.178Z\n\nexport * from \"./appError\";\nexport * from \"./authenticationError\";\nexport * from \"./authorizationError\";\nexport * from \"./conflictError\";\nexport * from \"./deviceCommError\";\nexport * from \"./loginError\";\nexport * from \"./notFoundError\";\nexport * from \"./requestError\";\nexport * from \"./systemCommError\";\nexport * from \"./tokenExpiredError\";\nexport * from \"./unprocessableRequestError\";\nexport * from \"./validationError\";","export class AppError extends Error {\n constructor(message = \"Internal Server Error\", options) {\n super(message, options);\n this.type = this.constructor.name;\n this.statusCode = 500;\n this.name = \"AppError\";\n Object.setPrototypeOf(this, AppError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class AuthenticationError extends AppError {\n constructor(message = \"Authentication Error\", options = {}) {\n super(message, options);\n this.statusCode = 401;\n this.name = \"AuthenticationError\";\n Object.setPrototypeOf(this, AuthenticationError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class AuthorizationError extends AppError {\n constructor(message = \"Authorization Error\", options = {}) {\n super(message, options);\n this.statusCode = 403;\n this.name = \"AuthorizationError\";\n Object.setPrototypeOf(this, AuthorizationError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class ConflictError extends AppError {\n constructor(message = \"Bad Request\", options = {}) {\n super(message, options);\n this.statusCode = 409;\n this.name = \"ConflictError\";\n Object.setPrototypeOf(this, ConflictError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class DeviceCommError extends AppError {\n constructor(message = \"Device Communication Error\", options = {}) {\n super(message, options);\n this.statusCode = 503;\n this.name = \"DeviceCommError\";\n Object.setPrototypeOf(this, DeviceCommError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class LoginError extends AppError {\n constructor(message = \"Invalid Login information provided\", options = {}) {\n super(message, options);\n this.statusCode = 401;\n this.name = \"LoginError\";\n Object.setPrototypeOf(this, LoginError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class NotFoundError extends AppError {\n constructor(message = \"Resource Not Found\", options = {}) {\n super(message, options);\n this.statusCode = 404;\n this.name = \"NotFoundError\";\n Object.setPrototypeOf(this, NotFoundError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class RequestError extends AppError {\n constructor(message = \"Bad Request\", options = {}) {\n super(message, options);\n this.statusCode = 400;\n this.name = \"RequestError\";\n Object.setPrototypeOf(this, RequestError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class SystemCommError extends AppError {\n constructor(message = \"System Communication Error\", options = {}) {\n super(message, options);\n this.statusCode = 503;\n this.name = \"SystemCommError\";\n Object.setPrototypeOf(this, SystemCommError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class TokenExpiredError extends AppError {\n constructor(message = \"Token Expired\", options = {}) {\n super(message, options);\n this.statusCode = 401;\n this.name = \"TokenExpiredError\";\n Object.setPrototypeOf(this, TokenExpiredError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class UnprocessableRequestError extends AppError {\n constructor(message = \"Unprocessable Request Error\", options = {}) {\n super(message, options);\n this.statusCode = 422;\n this.name = \"UnprocessableRequestError\";\n Object.setPrototypeOf(this, UnprocessableRequestError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class ValidationError extends AppError {\n constructor(message = \"Validation Error\", options = {}) {\n super(message, options);\n this.statusCode = 400;\n this.name = \"ValidationError\";\n Object.setPrototypeOf(this, ValidationError.prototype);\n }\n}\n"],"mappings":"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","names":["randomUUID","dbg","error"]}
|
|
1
|
+
{"version":3,"sources":["../src/amqpClient.js","../src/defs.js","../src/errors/index.js","../src/errors/appError.js","../src/errors/authenticationError.js","../src/errors/authorizationError.js","../src/errors/conflictError.js","../src/errors/deviceCommError.js","../src/errors/loginError.js","../src/errors/notFoundError.js","../src/errors/requestError.js","../src/errors/systemCommError.js","../src/errors/tokenExpiredError.js","../src/errors/unprocessableRequestError.js","../src/errors/validationError.js"],"sourcesContent":["import { connect } from \"amqplib\";\nimport { isFatalError } from \"amqplib/lib/connection\";\nimport dbg from \"debug\";\nimport { Buffer } from \"node:buffer\";\nimport * as crypto from \"node:crypto\";\nimport { amqpExchanges as exchanges } from \"./defs\";\nimport * as Errors from \"./errors\";\n\nconst randomUUID = crypto.randomUUID;\n\nconst debug = dbg(\"kohost:amqp-client\");\n\nconst HEADER_KEY_ORGANIZATION_ID = \"X-Organization-Id\";\nconst HEADER_KEY_PROPERTY_ID = \"X-Property-Id\";\nconst HEADER_KEY_DRIVER = \"X-Driver\";\nconst HEADER_KEY_COMMAND_NAME = \"X-Command-Name\";\nconst HEADER_KEY_EVENT_NAME = \"X-Event-Name\";\n\nexport class KohostAMQPClient {\n static get Message() {\n return Message;\n }\n\n static get exchanges() {\n return exchanges;\n }\n static generateCorrelationId() {\n return randomUUID();\n }\n\n static validateMessage(message) {\n if (!message) throw new Error(\"Message is required\");\n }\n\n static parseError(err) {\n let type;\n let message;\n let options = {};\n if (err.message && err.type) {\n const { message: errMessage, type: errType, ...rest } = err;\n type = errType;\n message = errMessage;\n options = rest;\n } else {\n message = err.message || \"Unknown Error\";\n }\n\n debug(\"parseError\", type, message, options);\n\n if (type && Errors[type]) {\n return new Errors[type](message, options);\n }\n\n return new Error(message, options);\n }\n\n static parseMessage(message) {\n let error = null;\n let data = {};\n let query = {};\n let context = {};\n let headers = {};\n\n const isCommand = message?.properties?.type === \"Command\";\n const isEvent = message?.properties?.type === \"Event\";\n\n const messageHeaders = message?.properties?.headers || {};\n\n const commandName = messageHeaders[HEADER_KEY_COMMAND_NAME] || null;\n const eventName = messageHeaders[HEADER_KEY_EVENT_NAME] || null;\n\n if (message.content) {\n try {\n const payload =\n message.properties?.contentType === \"application/json\"\n ? JSON.parse(message.content.toString())\n : message.content.toString();\n data = payload?.data || {};\n error = payload?.error;\n query = payload?.query || {};\n context = payload?.context || {};\n } catch (error) {\n debug(\"error parsing content\", error);\n data = message.content.toString();\n }\n }\n\n if (message?.properties?.headers) {\n const orgHeader = message.properties.headers[HEADER_KEY_ORGANIZATION_ID];\n const propertyHeader = message.properties.headers[HEADER_KEY_PROPERTY_ID];\n const driverHeader = message.properties.headers[HEADER_KEY_DRIVER];\n\n if (orgHeader) {\n context.organizationId = orgHeader;\n headers[HEADER_KEY_ORGANIZATION_ID] = orgHeader;\n }\n\n if (propertyHeader) {\n context.propertyId = propertyHeader;\n headers[HEADER_KEY_PROPERTY_ID] = propertyHeader;\n }\n\n if (driverHeader) {\n context.driver = driverHeader;\n headers[HEADER_KEY_DRIVER] = driverHeader;\n }\n }\n\n const parsed = {};\n\n if (error) parsed.error = this.parseError(error);\n\n parsed.data = data;\n parsed.query = query;\n parsed.context = context;\n parsed.headers = headers;\n\n if (isEvent && eventName) parsed.event = eventName;\n else if (isCommand && commandName) parsed.command = commandName;\n\n debug(\"amqp parsed %o\", parsed);\n\n return parsed;\n }\n\n static getMessage(message) {\n if (!message?.content) return null;\n const payload = JSON.parse(message.content.toString());\n const data = payload?.data;\n return data;\n }\n\n static isFatalError(err) {\n return isFatalError(err);\n }\n\n async createConnection(connection, options = {}) {\n return await connect(connection, options);\n }\n\n static createMessage(content) {\n return new Message(content);\n }\n\n async createChannel(connection) {\n const channel = await connection.createChannel();\n return channel;\n }\n\n async assertExchange(channel, { exchange, type, options }) {\n return await channel.assertExchange(exchange, type, options);\n }\n\n async assertQueue(channel, { queue, options }) {\n return await channel.assertQueue(queue, options);\n }\n\n async bindQueue(channel, { queue, exchange, routingKey, args }) {\n return await channel.bindQueue(queue, exchange, routingKey, args);\n }\n\n async bindExchange(channel, { source, destination, routingKey, args }) {\n return await channel.bindExchange(destination, source, routingKey, args);\n }\n\n async subscribeToQueue(channel, { queue, cb, options }) {\n return await channel.consume(queue, cb, options);\n }\n\n publishToExchange(channel, { exchange, routingKey, content, options }) {\n return channel.publish(exchange, routingKey, content, options);\n }\n}\n\nclass Message {\n constructor(content) {\n this.toExchange = null;\n this.content = content;\n this.options = {\n contentType: \"application/json\",\n timestamp: Date.now(),\n };\n this.routingKey = \"\";\n }\n\n get correlationId() {\n return this.options.correlationId || null;\n }\n\n to({ exchange }) {\n if (typeof exchange === \"undefined\")\n throw new Error(\"Exchange is required\");\n this.toExchange = exchange;\n return this;\n }\n\n withType(type) {\n this.options.type = type;\n return this;\n }\n\n withRoutingKey(routingKey) {\n this.routingKey = routingKey;\n return this;\n }\n\n withHeaders(headers) {\n if (!this.options.headers) this.options.headers = {};\n this.options.headers = { ...this.options.headers, ...headers };\n return this;\n }\n\n withContext(context) {\n for (let key in context) {\n this.withHeaders({ [key]: context[key] });\n }\n return this;\n }\n\n withCorrelationId(correlationId) {\n this.options.correlationId = correlationId;\n return this;\n }\n\n withReplyTo(queue) {\n this.options.replyTo = queue;\n return this;\n }\n\n build() {\n let content = this.content;\n if (content.build && typeof content.build === \"function\")\n content = content.build();\n\n return {\n exchange: this.toExchange,\n content: Buffer.from(JSON.stringify(content)),\n options: this.options,\n routingKey: this.routingKey,\n };\n }\n}\n","export const amqpExchanges = {\n // routes commands based on `command-name` header and in many cases `property-id` header\n Commands: {\n name: \"kohost.commands\",\n type: \"headers\",\n options: {\n durable: true,\n },\n },\n CommandResponses: {\n name: \"kohost.commandResponses\",\n type: \"topic\",\n options: {\n durable: true,\n },\n },\n // routes events based on routing keys\n DriverEvents: {\n name: \"kohost.events.drivers\",\n type: \"topic\",\n options: {\n durable: true,\n },\n },\n AppEvents: {\n name: \"kohost.events.app\",\n type: \"topic\",\n options: {\n durable: true,\n },\n },\n Direct: {\n name: \"kohost.direct\",\n type: \"direct\",\n options: {\n durable: true,\n },\n },\n // dead letter exchange\n dlx: {\n name: \"kohost.dlx\",\n type: \"direct\",\n },\n};\n\nexport const deviceTypes = [\n \"dimmer\",\n \"switch\",\n \"thermostat\",\n \"lock\",\n \"windowCovering\",\n \"courtesy\",\n \"alarm\",\n \"camera\",\n \"mediaSource\",\n \"motionSensor\",\n \"gateway\",\n];\n","// This file is auto-generated. Do not edit this file manually.\n// Generated on: 2025-05-10T15:07:59.162Z\n\nexport * from \"./appError\";\nexport * from \"./authenticationError\";\nexport * from \"./authorizationError\";\nexport * from \"./conflictError\";\nexport * from \"./deviceCommError\";\nexport * from \"./loginError\";\nexport * from \"./notFoundError\";\nexport * from \"./requestError\";\nexport * from \"./systemCommError\";\nexport * from \"./tokenExpiredError\";\nexport * from \"./unprocessableRequestError\";\nexport * from \"./validationError\";","export class AppError extends Error {\n constructor(message = \"Internal Server Error\", options) {\n super(message, options);\n this.type = this.constructor.name;\n this.statusCode = 500;\n this.name = \"AppError\";\n Object.setPrototypeOf(this, AppError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class AuthenticationError extends AppError {\n constructor(message = \"Authentication Error\", options = {}) {\n super(message, options);\n this.statusCode = 401;\n this.name = \"AuthenticationError\";\n Object.setPrototypeOf(this, AuthenticationError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class AuthorizationError extends AppError {\n constructor(message = \"Authorization Error\", options = {}) {\n super(message, options);\n this.statusCode = 403;\n this.name = \"AuthorizationError\";\n Object.setPrototypeOf(this, AuthorizationError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class ConflictError extends AppError {\n constructor(message = \"Bad Request\", options = {}) {\n super(message, options);\n this.statusCode = 409;\n this.name = \"ConflictError\";\n Object.setPrototypeOf(this, ConflictError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class DeviceCommError extends AppError {\n constructor(message = \"Device Communication Error\", options = {}) {\n super(message, options);\n this.statusCode = 503;\n this.name = \"DeviceCommError\";\n Object.setPrototypeOf(this, DeviceCommError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class LoginError extends AppError {\n constructor(message = \"Invalid Login information provided\", options = {}) {\n super(message, options);\n this.statusCode = 401;\n this.name = \"LoginError\";\n Object.setPrototypeOf(this, LoginError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class NotFoundError extends AppError {\n constructor(message = \"Resource Not Found\", options = {}) {\n super(message, options);\n this.statusCode = 404;\n this.name = \"NotFoundError\";\n Object.setPrototypeOf(this, NotFoundError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class RequestError extends AppError {\n constructor(message = \"Bad Request\", options = {}) {\n super(message, options);\n this.statusCode = 400;\n this.name = \"RequestError\";\n Object.setPrototypeOf(this, RequestError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class SystemCommError extends AppError {\n constructor(message = \"System Communication Error\", options = {}) {\n super(message, options);\n this.statusCode = 503;\n this.name = \"SystemCommError\";\n Object.setPrototypeOf(this, SystemCommError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class TokenExpiredError extends AppError {\n constructor(message = \"Token Expired\", options = {}) {\n super(message, options);\n this.statusCode = 401;\n this.name = \"TokenExpiredError\";\n Object.setPrototypeOf(this, TokenExpiredError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class UnprocessableRequestError extends AppError {\n constructor(message = \"Unprocessable Request Error\", options = {}) {\n super(message, options);\n this.statusCode = 422;\n this.name = \"UnprocessableRequestError\";\n Object.setPrototypeOf(this, UnprocessableRequestError.prototype);\n }\n}\n","import { AppError } from \"./appError\";\n\nexport class ValidationError extends AppError {\n constructor(message = \"Validation Error\", options = {}) {\n super(message, options);\n this.statusCode = 400;\n this.name = \"ValidationError\";\n Object.setPrototypeOf(this, ValidationError.prototype);\n }\n}\n"],"mappings":"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","names":["randomUUID","dbg","error"]}
|
package/dist/amqpClient.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{KohostAMQPClient}from"./chunk-
|
|
1
|
+
import{KohostAMQPClient}from"./chunk-KI6XJTAQ.js";import"./chunk-364IZMI7.js";import"./chunk-FU3MLFEZ.js";import"./chunk-S3LGXCUW.js";import"./chunk-R36FVWOK.js";import"./chunk-J3IXW2RX.js";import"./chunk-ELAUVDF4.js";import"./chunk-ZXW3Q5ZK.js";import"./chunk-5FSWHSBF.js";import"./chunk-FWQABD55.js";import"./chunk-WN4Z5JJD.js";import"./chunk-7GGLCJ6I.js";import"./chunk-3AE3KSKI.js";import"./chunk-P3ZPJTJ2.js";import"./chunk-THXOWLL3.js";import"./chunk-XE4OXN2W.js";export{KohostAMQPClient};//# sourceMappingURL=amqpClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{validateMediaSource}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var MediaSource=class extends Entity{static{__name(this,"MediaSource")}constructor(data){super(data),this.id=data.id,this.type=data.type,this.discriminator=data.discriminator,void 0!==data.playlists&&(this.playlists=data.playlists),void 0!==data.remote&&(this.remote=data.remote),void 0!==data.name&&(this.name=data.name),this.driver=data.driver,void 0!==data.offline&&(this.offline=data.offline),this.audio=data.audio,this.video=data.video,void 0!==data.powerFeedback&&(this.powerFeedback=data.powerFeedback),void 0!==data.volumeFeedback&&(this.volumeFeedback=data.volumeFeedback),void 0!==data.muted&&(this.muted=data.muted),void 0!==data.volume&&(this.volume=data.volume),void 0!==data.brightness&&(this.brightness=data.brightness),void 0!==data.contrast&&(this.contrast=data.contrast),void 0!==data.power&&(this.power=data.power),void 0!==data.input&&(this.input=data.input),void 0!==data.supportedInputs&&(this.supportedInputs=data.supportedInputs),void 0!==data.supportedOutputs&&(this.supportedOutputs=data.supportedOutputs),void 0!==data.command&&(this.command=data.command),void 0!==data.supportedNotifications&&(this.supportedNotifications=data.supportedNotifications),void 0!==data.notification&&(this.notification=data.notification),void 0!==data.systemId&&(this.systemId=data.systemId),void 0!==data.watts&&(this.watts=data.watts),void 0!==data.icon&&(this.icon=data.icon),void 0!==data.modelNumber&&(this.modelNumber=data.modelNumber),void 0!==data.serialNumber&&(this.serialNumber=data.serialNumber),void 0!==data.firmwareVersion&&(this.firmwareVersion=data.firmwareVersion)}};Object.defineProperty(MediaSource.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"mediaSource.json",title:"Media Source",description:"Any media source",type:"object",required:["id","type","discriminator","audio","video","driver"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",default:"mediaSource",enum:["mediaSource"]},discriminator:{type:"string",enum:["tv","dvr","appleTv","discPlayer","mediaPlayer","paSystem","uncontrolledDevice"]},playlists:{type:"array",items:{type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},name:{$ref:"definitions.json#/definitions/name"}}}},remote:{type:"string",enum:["MR22GA","XRT260","XRT270","HOF-16K 1.2","219863500","SONIFI","AKB76039803","BN59-01388A","TRY01","1035792"]},name:{$ref:"definitions.json#/definitions/name"},driver:{$ref:"definitions.json#/definitions/driver"},offline:{type:"boolean"},audio:{type:"boolean"},video:{type:"boolean"},powerFeedback:{type:"boolean"},volumeFeedback:{type:"boolean"},muted:{type:"boolean"},volume:{type:"number",minimum:0,maximum:100},brightness:{type:"number",minimum:0,maximum:100},contrast:{type:"number",minimum:0,maximum:100},power:{type:"string",enum:["on","off"]},input:{type:"string"},supportedInputs:{type:"array",items:{type:"string"}},supportedOutputs:{type:"array",items:{type:"string"}},command:{type:["string","null"],enum:["mute","volumeUp","volumeDown","brightnessUp","brightnessDown","channelUp","channelDown","number0","number1","number2","number3","number4","number5","number6","number7","number8","number9","lastChannel","display","favoriteChannel","play","playing","stop","stopped","pause","paused","fastForward","fastForwarding","rewind","rewinding","instantReplay","record","ac3","pvrMenu","guide","menu","menuUp","menuDown","menuLeft","menuRight","pageUp","pageDown","select","exit","input","power","enterChannel","enterVolume","enterBrightness","enterContrast","number10","number11","number12","number13","number14","number15","number16","number10Plus","number20Plus","number100","dash","threeChan","threeD","sixChan","a","add","alarm","am","analog","angle","antenna","antennaEast","antennaWest","aspect","audio1","audio2","audio3","audioDumming","audioLevelDown","audioLevelUp","b","back","c","component1","component2","component3","d","home","list","liveTv","discreteInputCable","powerOff","powerOn","setupMenu","skipForward","skipReverse","video1","video2","video3","video4","video5","details","hdmi1","hdmi2","hdmi3","cecDeviceList","mtsSap","red","green","yellow","blue","alert","order"]},supportedNotifications:{$ref:"definitions.json#/definitions/supportedNotifications"},notification:{$ref:"definitions.json#/definitions/notification"},systemId:{$ref:"definitions.json#/definitions/systemId"},watts:{$ref:"definitions.json#/definitions/watts"},icon:{type:"string"},modelNumber:{type:"string"},serialNumber:{type:"string"},firmwareVersion:{type:"string"}},additionalProperties:!1}}),Object.defineProperty(MediaSource.prototype,"validator",{get:__name((function(){return validateMediaSource}),"get")});export{MediaSource};//# sourceMappingURL=chunk-2P5LASH2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/models/mediaSource.js"],"sourcesContent":["/* @ts-nocheck */\n/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity\";\nimport { validateMediaSource as validate } from \"../validate\";\n\n/**\n * @typedef {Object} MediaSourceData Any media source\n * @property {string} id - Identifier of the object.\n * @property {\"mediaSource\"} type - Default: \"mediaSource\"\n * @property {(\"tv\"|\"dvr\"|\"appleTv\"|\"discPlayer\"|\"mediaPlayer\"|\"paSystem\"|\"uncontrolledDevice\")} discriminator\n * @property {{id?: string, name?: string}[]} [playlists]\n * @property {(\"MR22GA\"|\"XRT260\"|\"XRT270\"|\"HOF-16K 1.2\"|\"219863500\"|\"SONIFI\"|\"AKB76039803\"|\"BN59-01388A\"|\"TRY01\"|\"1035792\")} [remote]\n * @property {string} [name]\n * @property {(\"adlink\"|\"aws-kinesis\"|\"bacnet\"|\"benq\"|\"butler\"|\"comelit\"|\"crestron\"|\"dell\"|\"digital-watchdog\"|\"distech\"|\"dmp\"|\"doorbird\"|\"dormakaba\"|\"dsc\"|\"ecobee\"|\"epson\"|\"geovision-rs\"|\"geovision-as-manager\"|\"honeywell-vista\"|\"igor\"|\"inncom\"|\"isapi\"|\"kohost-k7\"|\"kohost\"|\"lg\"|\"lg-webos\"|\"lapi\"|\"lirc\"|\"mews\"|\"mht\"|\"paxton\"|\"pelican-wireless\"|\"power-shades\"|\"rachio\"|\"rebrandly\"|\"relay\"|\"rtsp\"|\"salto\"|\"salto-irn\"|\"samsung\"|\"se\"|\"sendgrid\"|\"smartboard\"|\"sonifi\"|\"stay-n-touch\"|\"storable\"|\"twilio\"|\"unifi\"|\"valcom\"|\"vivotek\"|\"vizio\"|\"wisenet\"|\"cloudflare-images\"|\"cloudflare-stream\"|\"insperia-privacy\")} driver - Driver used to communicate with the object.\n * @property {boolean} [offline]\n * @property {boolean} audio\n * @property {boolean} video\n * @property {boolean} [powerFeedback]\n * @property {boolean} [volumeFeedback]\n * @property {boolean} [muted]\n * @property {number} [volume]\n * @property {number} [brightness]\n * @property {number} [contrast]\n * @property {(\"on\"|\"off\")} [power]\n * @property {string} [input]\n * @property {string[]} [supportedInputs]\n * @property {string[]} [supportedOutputs]\n * @property {(\"mute\"|\"volumeUp\"|\"volumeDown\"|\"brightnessUp\"|\"brightnessDown\"|\"channelUp\"|\"channelDown\"|\"number0\"|\"number1\"|\"number2\"|\"number3\"|\"number4\"|\"number5\"|\"number6\"|\"number7\"|\"number8\"|\"number9\"|\"lastChannel\"|\"display\"|\"favoriteChannel\"|\"play\"|\"playing\"|\"stop\"|\"stopped\"|\"pause\"|\"paused\"|\"fastForward\"|\"fastForwarding\"|\"rewind\"|\"rewinding\"|\"instantReplay\"|\"record\"|\"ac3\"|\"pvrMenu\"|\"guide\"|\"menu\"|\"menuUp\"|\"menuDown\"|\"menuLeft\"|\"menuRight\"|\"pageUp\"|\"pageDown\"|\"select\"|\"exit\"|\"input\"|\"power\"|\"enterChannel\"|\"enterVolume\"|\"enterBrightness\"|\"enterContrast\"|\"number10\"|\"number11\"|\"number12\"|\"number13\"|\"number14\"|\"number15\"|\"number16\"|\"number10Plus\"|\"number20Plus\"|\"number100\"|\"dash\"|\"threeChan\"|\"threeD\"|\"sixChan\"|\"a\"|\"add\"|\"alarm\"|\"am\"|\"analog\"|\"angle\"|\"antenna\"|\"antennaEast\"|\"antennaWest\"|\"aspect\"|\"audio1\"|\"audio2\"|\"audio3\"|\"audioDumming\"|\"audioLevelDown\"|\"audioLevelUp\"|\"b\"|\"back\"|\"c\"|\"component1\"|\"component2\"|\"component3\"|\"d\"|\"home\"|\"list\"|\"liveTv\"|\"discreteInputCable\"|\"powerOff\"|\"powerOn\"|\"setupMenu\"|\"skipForward\"|\"skipReverse\"|\"video1\"|\"video2\"|\"video3\"|\"video4\"|\"video5\"|\"details\"|\"hdmi1\"|\"hdmi2\"|\"hdmi3\"|\"cecDeviceList\"|\"mtsSap\"|\"red\"|\"green\"|\"yellow\"|\"blue\"|\"alert\"|\"order\")} [command]\n * @property {(\"button 1\"|\"button 2\"|\"button 3\"|\"button 4\"|\"button 5\"|\"idle\"|\"powerHasBeedApplied\"|\"acMainsDisconnected\"|\"acMainsReconnected\"|\"replaceBatterySoon\"|\"replaceBatteryNow\"|\"batteryOk\"|\"hardwareFailure\"|\"softwareFailure\"|\"hardwareFailureWithCode\"|\"softwareFailureWithCode\"|\"motionDetection\"|\"airFilterNeedsCleaned\"|\"airFilterNeedsReplaced\"|\"smokeDetected\"|\"outsideSafeTemperatureRange\"|\"outsideSafeHumidityRange\"|\"scheduleMaintenance\"|\"doorAjar\"|\"communicationFailure\"|\"communicationOk\"|\"burglarAlarm\"|\"fireAlarm\")[]} [supportedNotifications]\n * @property {{name?: string, timestamp?: number, description?: string}} [notification]\n * @property {string} [systemId] - Identifier of the object, directly related to the system.\n * @property {number} [watts]\n * @property {string} [icon]\n * @property {string} [modelNumber]\n * @property {string} [serialNumber]\n * @property {string} [firmwareVersion]\n */\n\n/**\n * Any media source\n * @class MediaSource\n * @extends {Entity}\n */\nexport class MediaSource extends Entity {\n /**\n * @constructor\n * @param {MediaSourceData} data - The data to initialize the MediaSource with\n */\n constructor(data) {\n super(data);\n this.id = data.id;\n this.type = data.type;\n this.discriminator = data.discriminator;\n if (data.playlists !== undefined) this.playlists = data.playlists;\n if (data.remote !== undefined) this.remote = data.remote;\n if (data.name !== undefined) this.name = data.name;\n this.driver = data.driver;\n if (data.offline !== undefined) this.offline = data.offline;\n this.audio = data.audio;\n this.video = data.video;\n if (data.powerFeedback !== undefined)\n this.powerFeedback = data.powerFeedback;\n if (data.volumeFeedback !== undefined)\n this.volumeFeedback = data.volumeFeedback;\n if (data.muted !== undefined) this.muted = data.muted;\n if (data.volume !== undefined) this.volume = data.volume;\n if (data.brightness !== undefined) this.brightness = data.brightness;\n if (data.contrast !== undefined) this.contrast = data.contrast;\n if (data.power !== undefined) this.power = data.power;\n if (data.input !== undefined) this.input = data.input;\n if (data.supportedInputs !== undefined)\n this.supportedInputs = data.supportedInputs;\n if (data.supportedOutputs !== undefined)\n this.supportedOutputs = data.supportedOutputs;\n if (data.command !== undefined) this.command = data.command;\n if (data.supportedNotifications !== undefined)\n this.supportedNotifications = data.supportedNotifications;\n if (data.notification !== undefined) this.notification = data.notification;\n if (data.systemId !== undefined) this.systemId = data.systemId;\n if (data.watts !== undefined) this.watts = data.watts;\n if (data.icon !== undefined) this.icon = data.icon;\n if (data.modelNumber !== undefined) this.modelNumber = data.modelNumber;\n if (data.serialNumber !== undefined) this.serialNumber = data.serialNumber;\n if (data.firmwareVersion !== undefined)\n this.firmwareVersion = data.firmwareVersion;\n }\n}\n\nObject.defineProperty(MediaSource.prototype, \"schema\", {\n value: {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"mediaSource.json\",\n title: \"Media Source\",\n description: \"Any media source\",\n type: \"object\",\n required: [\"id\", \"type\", \"discriminator\", \"audio\", \"video\", \"driver\"],\n properties: {\n id: { $ref: \"definitions.json#/definitions/id\" },\n type: { type: \"string\", default: \"mediaSource\", enum: [\"mediaSource\"] },\n discriminator: {\n type: \"string\",\n enum: [\n \"tv\",\n \"dvr\",\n \"appleTv\",\n \"discPlayer\",\n \"mediaPlayer\",\n \"paSystem\",\n \"uncontrolledDevice\",\n ],\n },\n playlists: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: { $ref: \"definitions.json#/definitions/id\" },\n name: { $ref: \"definitions.json#/definitions/name\" },\n },\n },\n },\n remote: {\n type: \"string\",\n enum: [\n \"MR22GA\",\n \"XRT260\",\n \"XRT270\",\n \"HOF-16K 1.2\",\n \"219863500\",\n \"SONIFI\",\n \"AKB76039803\",\n \"BN59-01388A\",\n \"TRY01\",\n \"1035792\",\n ],\n },\n name: { $ref: \"definitions.json#/definitions/name\" },\n driver: { $ref: \"definitions.json#/definitions/driver\" },\n offline: { type: \"boolean\" },\n audio: { type: \"boolean\" },\n video: { type: \"boolean\" },\n powerFeedback: { type: \"boolean\" },\n volumeFeedback: { type: \"boolean\" },\n muted: { type: \"boolean\" },\n volume: { type: \"number\", minimum: 0, maximum: 100 },\n brightness: { type: \"number\", minimum: 0, maximum: 100 },\n contrast: { type: \"number\", minimum: 0, maximum: 100 },\n power: { type: \"string\", enum: [\"on\", \"off\"] },\n input: { type: \"string\" },\n supportedInputs: { type: \"array\", items: { type: \"string\" } },\n supportedOutputs: { type: \"array\", items: { type: \"string\" } },\n command: {\n type: [\"string\", \"null\"],\n enum: [\n \"mute\",\n \"volumeUp\",\n \"volumeDown\",\n \"brightnessUp\",\n \"brightnessDown\",\n \"channelUp\",\n \"channelDown\",\n \"number0\",\n \"number1\",\n \"number2\",\n \"number3\",\n \"number4\",\n \"number5\",\n \"number6\",\n \"number7\",\n \"number8\",\n \"number9\",\n \"lastChannel\",\n \"display\",\n \"favoriteChannel\",\n \"play\",\n \"playing\",\n \"stop\",\n \"stopped\",\n \"pause\",\n \"paused\",\n \"fastForward\",\n \"fastForwarding\",\n \"rewind\",\n \"rewinding\",\n \"instantReplay\",\n \"record\",\n \"ac3\",\n \"pvrMenu\",\n \"guide\",\n \"menu\",\n \"menuUp\",\n \"menuDown\",\n \"menuLeft\",\n \"menuRight\",\n \"pageUp\",\n \"pageDown\",\n \"select\",\n \"exit\",\n \"input\",\n \"power\",\n \"enterChannel\",\n \"enterVolume\",\n \"enterBrightness\",\n \"enterContrast\",\n \"number10\",\n \"number11\",\n \"number12\",\n \"number13\",\n \"number14\",\n \"number15\",\n \"number16\",\n \"number10Plus\",\n \"number20Plus\",\n \"number100\",\n \"dash\",\n \"threeChan\",\n \"threeD\",\n \"sixChan\",\n \"a\",\n \"add\",\n \"alarm\",\n \"am\",\n \"analog\",\n \"angle\",\n \"antenna\",\n \"antennaEast\",\n \"antennaWest\",\n \"aspect\",\n \"audio1\",\n \"audio2\",\n \"audio3\",\n \"audioDumming\",\n \"audioLevelDown\",\n \"audioLevelUp\",\n \"b\",\n \"back\",\n \"c\",\n \"component1\",\n \"component2\",\n \"component3\",\n \"d\",\n \"home\",\n \"list\",\n \"liveTv\",\n \"discreteInputCable\",\n \"powerOff\",\n \"powerOn\",\n \"setupMenu\",\n \"skipForward\",\n \"skipReverse\",\n \"video1\",\n \"video2\",\n \"video3\",\n \"video4\",\n \"video5\",\n \"details\",\n \"hdmi1\",\n \"hdmi2\",\n \"hdmi3\",\n \"cecDeviceList\",\n \"mtsSap\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"alert\",\n \"order\",\n ],\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: { $ref: \"definitions.json#/definitions/notification\" },\n systemId: { $ref: \"definitions.json#/definitions/systemId\" },\n watts: { $ref: \"definitions.json#/definitions/watts\" },\n icon: { type: \"string\" },\n modelNumber: { type: \"string\" },\n serialNumber: { type: \"string\" },\n firmwareVersion: { type: \"string\" },\n },\n additionalProperties: false,\n },\n});\n\nObject.defineProperty(MediaSource.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":"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","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{LoginError}from"./chunk-FU3MLFEZ.js";import{NotFoundError}from"./chunk-S3LGXCUW.js";import{RequestError}from"./chunk-R36FVWOK.js";import{SystemCommError}from"./chunk-J3IXW2RX.js";import{TokenExpiredError}from"./chunk-ELAUVDF4.js";import{UnprocessableRequestError}from"./chunk-ZXW3Q5ZK.js";import{ValidationError}from"./chunk-5FSWHSBF.js";import{AuthenticationError}from"./chunk-FWQABD55.js";import{AuthorizationError}from"./chunk-WN4Z5JJD.js";import{ConflictError}from"./chunk-7GGLCJ6I.js";import{DeviceCommError}from"./chunk-3AE3KSKI.js";import{AppError}from"./chunk-P3ZPJTJ2.js";import{__export}from"./chunk-XE4OXN2W.js";var errors_exports={};__export(errors_exports,{AppError:()=>AppError,AuthenticationError:()=>AuthenticationError,AuthorizationError:()=>AuthorizationError,ConflictError:()=>ConflictError,DeviceCommError:()=>DeviceCommError,LoginError:()=>LoginError,NotFoundError:()=>NotFoundError,RequestError:()=>RequestError,SystemCommError:()=>SystemCommError,TokenExpiredError:()=>TokenExpiredError,UnprocessableRequestError:()=>UnprocessableRequestError,ValidationError:()=>ValidationError});export{errors_exports};//# sourceMappingURL=chunk-
|
|
1
|
+
import{LoginError}from"./chunk-FU3MLFEZ.js";import{NotFoundError}from"./chunk-S3LGXCUW.js";import{RequestError}from"./chunk-R36FVWOK.js";import{SystemCommError}from"./chunk-J3IXW2RX.js";import{TokenExpiredError}from"./chunk-ELAUVDF4.js";import{UnprocessableRequestError}from"./chunk-ZXW3Q5ZK.js";import{ValidationError}from"./chunk-5FSWHSBF.js";import{AuthenticationError}from"./chunk-FWQABD55.js";import{AuthorizationError}from"./chunk-WN4Z5JJD.js";import{ConflictError}from"./chunk-7GGLCJ6I.js";import{DeviceCommError}from"./chunk-3AE3KSKI.js";import{AppError}from"./chunk-P3ZPJTJ2.js";import{__export}from"./chunk-XE4OXN2W.js";var errors_exports={};__export(errors_exports,{AppError:()=>AppError,AuthenticationError:()=>AuthenticationError,AuthorizationError:()=>AuthorizationError,ConflictError:()=>ConflictError,DeviceCommError:()=>DeviceCommError,LoginError:()=>LoginError,NotFoundError:()=>NotFoundError,RequestError:()=>RequestError,SystemCommError:()=>SystemCommError,TokenExpiredError:()=>TokenExpiredError,UnprocessableRequestError:()=>UnprocessableRequestError,ValidationError:()=>ValidationError});export{errors_exports};//# sourceMappingURL=chunk-364IZMI7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/errors/index.js"],"sourcesContent":["// This file is auto-generated. Do not edit this file manually.\n// Generated on: 2025-
|
|
1
|
+
{"version":3,"sources":["../src/errors/index.js"],"sourcesContent":["// This file is auto-generated. Do not edit this file manually.\n// Generated on: 2025-05-10T15:07:59.162Z\n\nexport * from \"./appError\";\nexport * from \"./authenticationError\";\nexport * from \"./authorizationError\";\nexport * from \"./conflictError\";\nexport * from \"./deviceCommError\";\nexport * from \"./loginError\";\nexport * from \"./notFoundError\";\nexport * from \"./requestError\";\nexport * from \"./systemCommError\";\nexport * from \"./tokenExpiredError\";\nexport * from \"./unprocessableRequestError\";\nexport * from \"./validationError\";"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateIdentification}from"./chunk-
|
|
1
|
+
import{validateIdentification}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Identification=class extends Entity{static{__name(this,"Identification")}constructor(data){super(data),void 0!==data.id&&(this.id=data.id),this.type=data.type,void 0!==data.number&&(this.number=data.number),void 0!==data.maskedNumber&&(this.maskedNumber=data.maskedNumber),void 0!==data.encryptedNumber&&(this.encryptedNumber=data.encryptedNumber),void 0!==data.issued&&(this.issued=data.issued),void 0!==data.expires&&(this.expires=data.expires),void 0!==data.verified&&(this.verified=data.verified),void 0!==data.matched&&(this.matched=data.matched),void 0!==data.firstName&&(this.firstName=data.firstName),void 0!==data.lastName&&(this.lastName=data.lastName),void 0!==data.issuingCountry&&(this.issuingCountry=data.issuingCountry),void 0!==data.issuingState&&(this.issuingState=data.issuingState),void 0!==data.systemId&&(this.systemId=data.systemId)}};Object.defineProperty(Identification.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"identification.json",title:"Identification",type:"object",required:["type"],additionalProperties:!1,oneOf:[{required:["number"]},{required:["encryptedNumber"]}],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",enum:["driversLicense","passport","identityCard","visa"]},number:{type:"string"},maskedNumber:{type:"string"},encryptedNumber:{type:"string"},issued:{type:["string","object"],format:"date-time"},expires:{type:["string","object","null"],format:"date-time"},verified:{type:"boolean"},matched:{type:"boolean"},firstName:{type:"string"},lastName:{type:"string"},issuingCountry:{type:"string",minLength:2,maxLength:2},issuingState:{type:"string",minLength:2,maxLength:2},systemId:{$ref:"definitions.json#/definitions/systemId"}}}}),Object.defineProperty(Identification.prototype,"validator",{get:__name((function(){return validateIdentification}),"get")});export{Identification};//# sourceMappingURL=chunk-3H74J6YV.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateScene}from"./chunk-
|
|
1
|
+
import{validateScene}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Scene=class extends Entity{static{__name(this,"Scene")}constructor(data){super(data),this.id=data.id,this.name=data.name,void 0!==data.description&&(this.description=data.description),this.type=data.type,void 0!==data.devices&&(this.devices=data.devices),void 0!==data.isDefault&&(this.isDefault=data.isDefault),void 0!==data.showOnUi&&(this.showOnUi=data.showOnUi)}};Object.defineProperty(Scene.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"scene.json",title:"Scene",description:"A room represents a physical space of controllable IoT devices",type:"object",required:["id","name","type"],additionalProperties:!1,properties:{id:{$ref:"definitions.json#/definitions/id"},name:{type:"string"},description:{type:"string"},type:{type:"string",enum:["scene"],default:"scene"},devices:{type:"object",properties:{switches:{type:"array",items:{type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},state:{$ref:"switch.json#/properties/state"}},default:[]}},dimmers:{type:"array",items:{type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},level:{$ref:"dimmer.json#/properties/level"}}},default:[]},windowCoverings:{type:"array",items:{type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},position:{$ref:"windowCovering.json#/properties/position"}}},default:[]},thermostats:{type:"array",items:{type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},hvacMode:{$ref:"thermostat.json#/properties/hvacMode"},setpoints:{$ref:"thermostat.json#/properties/setpoints"},fanMode:{$ref:"thermostat.json#/properties/fanMode"},setpointDelta:{type:"number"}}},default:[]},mediaSources:{type:"array",items:{type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},volume:{type:"number",minimum:0,maximum:100},commands:{type:"array",items:{type:"string"}}}}},locks:{type:"array",items:{type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},state:{$ref:"lock.json#/properties/state"},mode:{$ref:"lock.json#/properties/mode"}}}}},additionalProperties:!1},isDefault:{type:"boolean",default:!1},showOnUi:{type:"boolean",default:!0}}}}),Object.defineProperty(Scene.prototype,"validator",{get:__name((function(){return validateScene}),"get")});export{Scene};//# sourceMappingURL=chunk-3OHHAVGM.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateLog}from"./chunk-
|
|
1
|
+
import{validateLog}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Log=class extends Entity{static{__name(this,"Log")}constructor(data){super(data),this.type=data.type,this.timestamp=data.timestamp,this.id=data.id,this.driver=data.driver,this.name=data.name,void 0!==data.field1&&(this.field1=data.field1),void 0!==data.field2&&(this.field2=data.field2),void 0!==data.field3&&(this.field3=data.field3),void 0!==data.field4&&(this.field4=data.field4),void 0!==data.field5&&(this.field5=data.field5),void 0!==data.field6&&(this.field6=data.field6)}};Object.defineProperty(Log.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"log.json",title:"Log",type:"object",required:["type","timestamp","id","driver","name"],properties:{type:{type:"string",default:"log",enum:["log"]},timestamp:{type:"number",minimum:1655907956593},id:{$ref:"definitions.json#/definitions/id"},driver:{$ref:"definitions.json#/definitions/driver"},name:{type:"string",description:"Event name"},field1:{type:"object",required:["name","value"],properties:{name:{type:"string"},value:{type:"string"}}},field2:{type:"object",required:["name","value"],properties:{name:{type:"string"},value:{type:"string"}}},field3:{type:"object",required:["name","value"],properties:{name:{type:"string"},value:{type:"string"}}},field4:{type:"object",required:["name","value"],properties:{name:{type:"string"},value:{type:"string"}}},field5:{type:"object",required:["name","value"],properties:{name:{type:"string"},value:{type:"string"}}},field6:{type:"object",required:["name","value"],properties:{name:{type:"string"},value:{type:"string"}}}}}}),Object.defineProperty(Log.prototype,"validator",{get:__name((function(){return validateLog}),"get")});export{Log};//# sourceMappingURL=chunk-3XNNT6GS.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateDimmer}from"./chunk-
|
|
1
|
+
import{validateDimmer}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Dimmer=class extends Entity{static{__name(this,"Dimmer")}constructor(data){super(data),this.id=data.id,void 0!==data.name&&(this.name=data.name),this.type=data.type,void 0!==data.supportedNotifications&&(this.supportedNotifications=data.supportedNotifications),void 0!==data.notification&&(this.notification=data.notification),this.driver=data.driver,void 0!==data.offline&&(this.offline=data.offline),this.level=data.level,void 0!==data.systemId&&(this.systemId=data.systemId),void 0!==data.watts&&(this.watts=data.watts),void 0!==data.icon&&(this.icon=data.icon),void 0!==data.modelNumber&&(this.modelNumber=data.modelNumber),void 0!==data.serialNumber&&(this.serialNumber=data.serialNumber),void 0!==data.firmwareVersion&&(this.firmwareVersion=data.firmwareVersion)}};Object.defineProperty(Dimmer.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"dimmer.json",title:"Dimmer",description:"Any smart dimmer",type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},name:{type:"string"},type:{$ref:"definitions.json#/definitions/type"},supportedNotifications:{$ref:"definitions.json#/definitions/supportedNotifications"},notification:{$ref:"definitions.json#/definitions/notification"},driver:{$ref:"definitions.json#/definitions/driver"},offline:{type:"boolean"},level:{type:["number","null"],minimum:0,maximum:100},systemId:{$ref:"definitions.json#/definitions/systemId"},watts:{$ref:"definitions.json#/definitions/watts"},icon:{type:"string"},modelNumber:{type:"string"},serialNumber:{type:"string"},firmwareVersion:{type:"string"}},required:["id","type","level","driver"]}}),Object.defineProperty(Dimmer.prototype,"validator",{get:__name((function(){return validateDimmer}),"get")});export{Dimmer};//# sourceMappingURL=chunk-45WLVARH.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateCredential}from"./chunk-
|
|
1
|
+
import{validateCredential}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Credential=class extends Entity{static{__name(this,"Credential")}constructor(data){super(data),void 0!==data.id&&(this.id=data.id),this.type=data.type,void 0!==data.driver&&(this.driver=data.driver),void 0!==data.discriminator&&(this.discriminator=data.discriminator),this.credential=data.credential,void 0!==data.userId&&(this.userId=data.userId),void 0!==data.organizationId&&(this.organizationId=data.organizationId),void 0!==data.propertyId&&(this.propertyId=data.propertyId),void 0!==data.deviceId&&(this.deviceId=data.deviceId),void 0!==data.userAgent&&(this.userAgent=data.userAgent),this.expires=data.expires,void 0!==data.systemId&&(this.systemId=data.systemId)}};Object.defineProperty(Credential.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"credential.json",title:"Credential",type:"object",required:["type","credential","expires"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",default:"credential"},driver:{$ref:"definitions.json#/definitions/driver"},discriminator:{type:"string",enum:["verificationCode","token","mobileKey","pin","publicKey","passkeyChallenge"]},credential:{type:"string"},userId:{type:"string"},organizationId:{type:"string"},propertyId:{type:"string"},deviceId:{type:"string"},userAgent:{type:"string"},expires:{type:["string","object","null"]},systemId:{$ref:"definitions.json#/definitions/systemId"}}}}),Object.defineProperty(Credential.prototype,"validator",{get:__name((function(){return validateCredential}),"get")});export{Credential};//# sourceMappingURL=chunk-4SSME4Y4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateMotionSensor}from"./chunk-
|
|
1
|
+
import{validateMotionSensor}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var MotionSensor=class extends Entity{static{__name(this,"MotionSensor")}constructor(data){super(data),this.id=data.id,void 0!==data.name&&(this.name=data.name),this.type=data.type,void 0!==data.offline&&(this.offline=data.offline),this.driver=data.driver,void 0!==data.systemId&&(this.systemId=data.systemId),void 0!==data.supportedNotifications&&(this.supportedNotifications=data.supportedNotifications),void 0!==data.notification&&(this.notification=data.notification),void 0!==data.watts&&(this.watts=data.watts),void 0!==data.icon&&(this.icon=data.icon),void 0!==data.modelNumber&&(this.modelNumber=data.modelNumber),void 0!==data.serialNumber&&(this.serialNumber=data.serialNumber),void 0!==data.firmwareVersion&&(this.firmwareVersion=data.firmwareVersion)}};Object.defineProperty(MotionSensor.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"motionSensor.json",title:"Motion Sensor",description:"Any smart motion sensor",type:"object",required:["id","type","driver"],additionalProperties:!1,properties:{id:{$ref:"definitions.json#/definitions/id"},name:{type:"string"},type:{$ref:"definitions.json#/definitions/type"},offline:{type:"boolean"},driver:{$ref:"definitions.json#/definitions/driver"},systemId:{$ref:"definitions.json#/definitions/systemId"},supportedNotifications:{$ref:"definitions.json#/definitions/supportedNotifications"},notification:{$ref:"definitions.json#/definitions/notification"},watts:{$ref:"definitions.json#/definitions/watts"},icon:{type:"string"},modelNumber:{type:"string"},serialNumber:{type:"string"},firmwareVersion:{type:"string"}}}}),Object.defineProperty(MotionSensor.prototype,"validator",{get:__name((function(){return validateMotionSensor}),"get")});export{MotionSensor};//# sourceMappingURL=chunk-6BAPG7KI.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateCourtesy}from"./chunk-
|
|
1
|
+
import{validateCourtesy}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Courtesy=class extends Entity{static{__name(this,"Courtesy")}constructor(data){super(data),this.id=data.id,void 0!==data.name&&(this.name=data.name),this.type=data.type,void 0!==data.supportedNotifications&&(this.supportedNotifications=data.supportedNotifications),void 0!==data.notification&&(this.notification=data.notification),this.driver=data.driver,void 0!==data.offline&&(this.offline=data.offline),this.supportedStates=data.supportedStates,this.state=data.state,void 0!==data.systemId&&(this.systemId=data.systemId),void 0!==data.watts&&(this.watts=data.watts),void 0!==data.icon&&(this.icon=data.icon),void 0!==data.modelNumber&&(this.modelNumber=data.modelNumber),void 0!==data.serialNumber&&(this.serialNumber=data.serialNumber),void 0!==data.firmwareVersion&&(this.firmwareVersion=data.firmwareVersion)}};Object.defineProperty(Courtesy.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"courtesy.json",title:"Courtesy",description:"Any smart courtesy system",type:"object",required:["id","type","driver","supportedStates","state"],additionalProperties:!1,properties:{id:{$ref:"definitions.json#/definitions/id"},name:{type:"string"},type:{$ref:"definitions.json#/definitions/type"},supportedNotifications:{$ref:"definitions.json#/definitions/supportedNotifications"},notification:{$ref:"definitions.json#/definitions/notification"},driver:{$ref:"definitions.json#/definitions/driver"},offline:{type:"boolean"},supportedStates:{type:"array",uniqueItems:!0,items:{enum:["privacy","service","none"]}},state:{type:"string",$ref:"#/properties/supportedStates/items"},systemId:{$ref:"definitions.json#/definitions/systemId"},watts:{$ref:"definitions.json#/definitions/watts"},icon:{type:"string"},modelNumber:{type:"string"},serialNumber:{type:"string"},firmwareVersion:{type:"string"}}}}),Object.defineProperty(Courtesy.prototype,"validator",{get:__name((function(){return validateCourtesy}),"get")});export{Courtesy};//# sourceMappingURL=chunk-6HFMALKH.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateProduct}from"./chunk-
|
|
1
|
+
import{validateProduct}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Product=class extends Entity{static{__name(this,"Product")}constructor(data){super(data),void 0!==data.id&&(this.id=data.id),void 0!==data.type&&(this.type=data.type),this.name=data.name,this.driver=data.driver,void 0!==data.description&&(this.description=data.description),this.price=data.price,void 0!==data.tax&&(this.tax=data.tax),void 0!==data.image&&(this.image=data.image),void 0!==data.category&&(this.category=data.category),void 0!==data.imageUrl&&(this.imageUrl=data.imageUrl),void 0!==data.systemId&&(this.systemId=data.systemId)}};Object.defineProperty(Product.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"product.json",title:"Product",type:"object",required:["name","price","driver"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",default:"product",enum:["product"]},name:{type:"string"},driver:{$ref:"definitions.json#/definitions/driver"},description:{type:"string"},price:{type:"number"},tax:{type:["number","null"]},image:{$ref:"mediaFile.json"},category:{type:"string"},imageUrl:{type:"string",format:"uri",pattern:"^https?://"},systemId:{$ref:"definitions.json#/definitions/systemId"}}}}),Object.defineProperty(Product.prototype,"validator",{get:__name((function(){return validateProduct}),"get")});export{Product};//# sourceMappingURL=chunk-6LO4AAZU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateCategory}from"./chunk-
|
|
1
|
+
import{validateCategory}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Category=class extends Entity{static{__name(this,"Category")}constructor(data){super(data),this.id=data.id,this.type=data.type,void 0!==data.name&&(this.name=data.name),void 0!==data.driver&&(this.driver=data.driver),void 0!==data.description&&(this.description=data.description),void 0!==data.image&&(this.image=data.image),void 0!==data.rating&&(this.rating=data.rating),this.discriminator=data.discriminator,void 0!==data.systemId&&(this.systemId=data.systemId)}};Object.defineProperty(Category.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"category.json",title:"Category",type:"object",required:["id","type","discriminator"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",enum:["category"],default:"category"},name:{type:"string",minLength:1},driver:{$ref:"definitions.json#/definitions/driver"},description:{type:"string"},image:{$ref:"mediaFile.json"},rating:{type:"number",minimum:0,maximum:10,default:9},discriminator:{type:"string",enum:["space","product","mediaFile","property","user"]},systemId:{$ref:"definitions.json#/definitions/systemId"}}}}),Object.defineProperty(Category.prototype,"validator",{get:__name((function(){return validateCategory}),"get")});export{Category};//# sourceMappingURL=chunk-7BI266GZ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateMediaFile}from"./chunk-
|
|
1
|
+
import{validateMediaFile}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var MediaFile=class extends Entity{static{__name(this,"MediaFile")}constructor(data){super(data),void 0!==data.id&&(this.id=data.id),this.type=data.type,void 0!==data.name&&(this.name=data.name),void 0!==data.fileHash&&(this.fileHash=data.fileHash),void 0!==data.category&&(this.category=data.category),void 0!==data.mimeType&&(this.mimeType=data.mimeType),void 0!==data.data&&(this.data=data.data),void 0!==data.url&&(this.url=data.url),void 0!==data.width&&(this.width=data.width),void 0!==data.height&&(this.height=data.height),void 0!==data.size&&(this.size=data.size),void 0!==data.uploadUrl&&(this.uploadUrl=data.uploadUrl),void 0!==data.uploadUrlExpires&&(this.uploadUrlExpires=data.uploadUrlExpires),void 0!==data.createdBy&&(this.createdBy=data.createdBy),void 0!==data.systemId&&(this.systemId=data.systemId)}createImageVariant(params){if("image/*"!=this.mimeType)throw new Error("Only dynamic images can have variants");if(!this.url)throw new Error("MediaFile has no url");const query=Object.keys(params).map((key=>`${key}=${params[key]}`)).join(",");return this.url.replace(/\/public$/,`/${query}`)}};Object.defineProperty(MediaFile.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"mediaFile.json",title:"Media File",description:"Any media file",type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",default:"mediaFile",enum:["mediaFile"]},name:{type:"string"},fileHash:{type:"string"},category:{type:"string",description:"This is the category id"},mimeType:{type:"string",enum:["image/*","image/jpeg","image/png","image/gif","image/webp","image/avif","image/svg+xml","application/pdf"]},data:{type:"string"},url:{type:"string",format:"uri"},width:{type:"integer",minimum:0},height:{type:"integer",minimum:0},size:{type:"integer",minimum:0,description:"Size in bytes"},uploadUrl:{type:"string",format:"uri"},uploadUrlExpires:{$ref:"definitions.json#/definitions/date"},createdBy:{type:"string"},systemId:{$ref:"definitions.json#/definitions/systemId"}},additionalProperties:!1,required:["type"]}}),Object.defineProperty(MediaFile.prototype,"validator",{get:__name((function(){return validateMediaFile}),"get")});export{MediaFile};//# sourceMappingURL=chunk-7SDGK3FY.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateRoom}from"./chunk-
|
|
1
|
+
import{validateRoom}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Room=class extends Entity{static{__name(this,"Room")}constructor(data){super(data),this.id=data.id,void 0!==data.type&&(this.type=data.type),this.name=data.name,void 0!==data.floor&&(this.floor=data.floor),void 0!==data.dimmers&&(this.dimmers=data.dimmers),void 0!==data.switches&&(this.switches=data.switches),void 0!==data.thermostats&&(this.thermostats=data.thermostats),void 0!==data.locks&&(this.locks=data.locks),void 0!==data.windowCoverings&&(this.windowCoverings=data.windowCoverings),void 0!==data.courtesy&&(this.courtesy=data.courtesy),void 0!==data.cameras&&(this.cameras=data.cameras),void 0!==data.mediaSources&&(this.mediaSources=data.mediaSources),void 0!==data.motionSensors&&(this.motionSensors=data.motionSensors),void 0!==data.alarms&&(this.alarms=data.alarms),void 0!==data.occupiedAt&&(this.occupiedAt=data.occupiedAt),void 0!==data.createdAt&&(this.createdAt=data.createdAt),void 0!==data.updatedAt&&(this.updatedAt=data.updatedAt)}static getDevicePath(type){switch(type){case"tv":case"dvr":case"appleTv":case"discPlayer":case"mediaPlayer":case"uncontrolledDevice":case"mediaSource":return"mediaSources";case"courtesy":return"courtesy";case"switch":return"switches";case"dimmer":return"dimmers";case"thermostat":return"thermostats";case"lock":return"locks";case"windowCovering":return"windowCoverings";case"camera":return"cameras";case"motionSensor":return"motionSensors";case"alarm":return"alarms";default:throw new Error("Invalid device type:"+type)}}static getDeviceTypeFromPath(path){if(!["dimmers","switches","thermostats","locks","windowCoverings","courtesy","cameras","mediaSources","motionSensors","alarms"].includes(path))throw new Error("Invalid device path:"+path);switch(path){case"courtesy":return path;case"switches":return"switch";default:return path.slice(0,-1)}}get hasDimmer(){return this.dimmers?.length>0}get hasSwitch(){return this.switches?.length>0}get hasWindowCovering(){return this.windowCoverings?.length>0}get hasShade(){return this.hasWindowCovering}get hasThermostat(){return this.thermostats?.length>0}get hasClimate(){return this.hasThermostat}get hasLock(){return this.locks?.length>0}get hasCourtesy(){return this.courtesy?.length>0}get hasCamera(){return this.cameras?.length>0}get hasMedia(){return this.mediaSources?.length>0}get hasLight(){const hasDiscriminatorLight=this.switches?.some((sw=>"light"===sw.discriminator||"fan"===sw.discriminator));return this.hasDimmer||hasDiscriminatorLight}get hasAlarm(){return this.alarms?.length>0}get occupied(){const now=new Date,lastOccupied=new Date(this.occupiedAt);return now.getTime()-lastOccupied.getTime()<36e5}};Object.defineProperty(Room.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"room.json",title:"Room",description:"A room represents a physical space of controllable IoT devices",type:"object",required:["id","name"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",enum:["room"],default:"room"},name:{type:"string"},floor:{type:"string"},dimmers:{type:"array",default:[],items:{$ref:"dimmer.json"}},switches:{type:"array",default:[],items:{$ref:"switch.json"}},thermostats:{type:"array",default:[],items:{$ref:"thermostat.json"}},locks:{type:"array",default:[],items:{$ref:"lock.json"}},windowCoverings:{type:"array",default:[],items:{$ref:"windowCovering.json"}},courtesy:{type:"array",default:[],items:{$ref:"courtesy.json"}},cameras:{type:"array",default:[],items:{$ref:"camera.json"}},mediaSources:{type:"array",default:[],items:{$ref:"mediaSource.json"}},motionSensors:{type:"array",default:[],items:{$ref:"motionSensor.json"}},alarms:{type:"array",default:[],items:{$ref:"alarm.json"}},occupiedAt:{$ref:"definitions.json#/definitions/createdAt"},createdAt:{$ref:"definitions.json#/definitions/createdAt"},updatedAt:{$ref:"definitions.json#/definitions/updatedAt"}},additionalProperties:!1}}),Object.defineProperty(Room.prototype,"validator",{get:__name((function(){return validateRoom}),"get")});export{Room};//# sourceMappingURL=chunk-BWKM6FHE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/models/room.js"],"sourcesContent":["/* @ts-nocheck */\n/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity\";\nimport { validateRoom as validate } from \"../validate\";\n\n/**\n * @typedef {Object} RoomData A room represents a physical space of controllable IoT devices\n * @property {string} id - Identifier of the object.\n * @property {\"room\"} [type] - Default: \"room\"\n * @property {string} name\n * @property {string} [floor]\n * @property {{id: any, name?: string, type: any, supportedNotifications?: any, notification?: any, driver: any, offline?: boolean, level: number, systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [dimmers] - Default: []\n * @property {{id: any, name?: string, type: any, discriminator?: (\"light\"|\"fan\"|\"irrigation\"), supportedNotifications?: any, notification?: any, driver: any, offline?: boolean, state: (\"on\"|\"off\"), systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string, restoresAt?: string}[]} [switches] - Default: []\n * @property {{id: any, name?: any, type: any, driver: any, offline?: boolean, supportedNotifications?: any, notification?: any, currentTemperature?: number, currentHumidity?: number, hvacMode: string, hvacState: (\"cooling\"|\"heating\"|\"off\"), fanMode: string, fanState: (\"off\"|\"low\"|\"medium\"|\"high\"|\"on\"), temperatureScale: (\"celsius\"|\"fahrenheit\"), humidityScale?: (\"absolute\"|\"relative\"), supportedHvacModes: (\"cool\"|\"heat\"|\"auto\"|\"off\")[], supportedFanModes: (\"auto\"|\"low\"|\"medium\"|\"high\"|\"off\"|\"on\")[], setpoints: {cool?: any, heat?: any, auto?: any}, minAutoDelta?: number, cycleRate?: number, batteryLevel?: any, systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [thermostats] - Default: []\n * @property {{id: any, name?: string, type: any, offline?: boolean, supportedNotifications?: any, notification?: any, driver: any, state: (\"locked\"|\"unlocked\"), mode?: (\"normal\"|\"autoLock\"|\"emergencyOpen\"|\"emergencyClose\"|\"holdOpen\"|\"lockdown\"), supportedModes?: (\"normal\"|\"autoLock\"|\"emergencyOpen\"|\"emergencyClose\"|\"holdOpen\"|\"lockdown\")[], batteryLevel?: any, systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [locks] - Default: []\n * @property {{id: any, name?: string, type: any, discriminator?: (\"basic\"|\"variable\"), supportedNotifications?: any, notification?: any, driver: any, offline?: boolean, position: number, systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [windowCoverings] - Default: []\n * @property {{id: any, name?: string, type: any, supportedNotifications?: any, notification?: any, driver: any, offline?: boolean, supportedStates: (\"privacy\"|\"service\"|\"none\")[], state: string, systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [courtesy] - Default: []\n * @property {{id: any, name?: string, discriminator?: \"doorStation\", type: \"camera\", offline?: boolean, supportedNotifications?: any, notification?: any, driver: any, liveStreams?: {iframe?: string, hls?: string, webRTC?: string, rtsp?: string}, liveStream?: {id?: string, driver?: (\"aws-kinesis\"|\"cloudflare-stream\"|\"doorbird\"|\"digital-watchdog\"|\"mediamtx\"), allowedOrigins?: string[], authRequired?: boolean, iframe?: string, hls?: string, webRTC?: string, rtsp?: string, previewImage?: string}, systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [cameras] - Default: []\n * @property {{id: any, type: \"mediaSource\", discriminator: (\"tv\"|\"dvr\"|\"appleTv\"|\"discPlayer\"|\"mediaPlayer\"|\"paSystem\"|\"uncontrolledDevice\"), playlists?: {id?: string, name?: string}[], remote?: (\"MR22GA\"|\"XRT260\"|\"XRT270\"|\"HOF-16K 1.2\"|\"219863500\"|\"SONIFI\"|\"AKB76039803\"|\"BN59-01388A\"|\"TRY01\"|\"1035792\"), name?: any, driver: any, offline?: boolean, audio: boolean, video: boolean, powerFeedback?: boolean, volumeFeedback?: boolean, muted?: boolean, volume?: number, brightness?: number, contrast?: number, power?: (\"on\"|\"off\"), input?: string, supportedInputs?: string[], supportedOutputs?: string[], command?: (\"mute\"|\"volumeUp\"|\"volumeDown\"|\"brightnessUp\"|\"brightnessDown\"|\"channelUp\"|\"channelDown\"|\"number0\"|\"number1\"|\"number2\"|\"number3\"|\"number4\"|\"number5\"|\"number6\"|\"number7\"|\"number8\"|\"number9\"|\"lastChannel\"|\"display\"|\"favoriteChannel\"|\"play\"|\"playing\"|\"stop\"|\"stopped\"|\"pause\"|\"paused\"|\"fastForward\"|\"fastForwarding\"|\"rewind\"|\"rewinding\"|\"instantReplay\"|\"record\"|\"ac3\"|\"pvrMenu\"|\"guide\"|\"menu\"|\"menuUp\"|\"menuDown\"|\"menuLeft\"|\"menuRight\"|\"pageUp\"|\"pageDown\"|\"select\"|\"exit\"|\"input\"|\"power\"|\"enterChannel\"|\"enterVolume\"|\"enterBrightness\"|\"enterContrast\"|\"number10\"|\"number11\"|\"number12\"|\"number13\"|\"number14\"|\"number15\"|\"number16\"|\"number10Plus\"|\"number20Plus\"|\"number100\"|\"dash\"|\"threeChan\"|\"threeD\"|\"sixChan\"|\"a\"|\"add\"|\"alarm\"|\"am\"|\"analog\"|\"angle\"|\"antenna\"|\"antennaEast\"|\"antennaWest\"|\"aspect\"|\"audio1\"|\"audio2\"|\"audio3\"|\"audioDumming\"|\"audioLevelDown\"|\"audioLevelUp\"|\"b\"|\"back\"|\"c\"|\"component1\"|\"component2\"|\"component3\"|\"d\"|\"home\"|\"list\"|\"liveTv\"|\"discreteInputCable\"|\"powerOff\"|\"powerOn\"|\"setupMenu\"|\"skipForward\"|\"skipReverse\"|\"video1\"|\"video2\"|\"video3\"|\"video4\"|\"video5\"|\"details\"|\"hdmi1\"|\"hdmi2\"|\"hdmi3\"|\"cecDeviceList\"|\"mtsSap\"|\"red\"|\"green\"|\"yellow\"|\"blue\"|\"alert\"|\"order\"), supportedNotifications?: any, notification?: any, systemId?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [mediaSources] - Default: []\n * @property {{id: any, name?: string, type: any, offline?: boolean, driver: any, systemId?: any, supportedNotifications?: any, notification?: any, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string}[]} [motionSensors] - Default: []\n * @property {{id: any, name?: string, offline?: boolean, type: \"alarm\", systemId?: any, supportedNotifications?: any, notification?: any, driver: any, areas: {number?: number, name?: string, securityMode?: (\"arming\"|\"disarming\"|\"armed\"|\"disarmed\"|\"alarm\")}[], zones: {number?: number, name?: string, secure?: boolean, bypassed?: boolean}[], chime?: boolean, watts?: any, icon?: string, modelNumber?: string, serialNumber?: string, firmwareVersion?: string, address?: any}[]} [alarms] - Default: []\n * @property {(string|object)} [occupiedAt]\n * @property {(string|object)} [createdAt]\n * @property {(string|object)} [updatedAt]\n */\n\n/**\n * A room represents a physical space of controllable IoT devices\n * @class Room\n * @extends {Entity}\n */\nexport class Room extends Entity {\n /**\n * @constructor\n * @param {RoomData} data - The data to initialize the Room with\n */\n constructor(data) {\n super(data);\n this.id = data.id;\n if (data.type !== undefined) this.type = data.type;\n this.name = data.name;\n if (data.floor !== undefined) this.floor = data.floor;\n if (data.dimmers !== undefined) this.dimmers = data.dimmers;\n if (data.switches !== undefined) this.switches = data.switches;\n if (data.thermostats !== undefined) this.thermostats = data.thermostats;\n if (data.locks !== undefined) this.locks = data.locks;\n if (data.windowCoverings !== undefined)\n this.windowCoverings = data.windowCoverings;\n if (data.courtesy !== undefined) this.courtesy = data.courtesy;\n if (data.cameras !== undefined) this.cameras = data.cameras;\n if (data.mediaSources !== undefined) this.mediaSources = data.mediaSources;\n if (data.motionSensors !== undefined)\n this.motionSensors = data.motionSensors;\n if (data.alarms !== undefined) this.alarms = data.alarms;\n if (data.occupiedAt !== undefined) this.occupiedAt = data.occupiedAt;\n if (data.createdAt !== undefined) this.createdAt = data.createdAt;\n if (data.updatedAt !== undefined) this.updatedAt = data.updatedAt;\n }\n\n static getDevicePath(type) {\n switch (type) {\n case \"tv\":\n case \"dvr\":\n case \"appleTv\":\n case \"discPlayer\":\n case \"mediaPlayer\":\n case \"uncontrolledDevice\":\n case \"mediaSource\":\n return \"mediaSources\";\n case \"courtesy\":\n return \"courtesy\";\n case \"switch\":\n return \"switches\";\n case \"dimmer\":\n return \"dimmers\";\n case \"thermostat\":\n return \"thermostats\";\n case \"lock\":\n return \"locks\";\n case \"windowCovering\":\n return \"windowCoverings\";\n case \"camera\":\n return \"cameras\";\n case \"motionSensor\":\n return \"motionSensors\";\n case \"alarm\":\n return \"alarms\";\n\n default:\n throw new Error(\"Invalid device type:\" + type);\n }\n }\n static getDeviceTypeFromPath(path) {\n const validPaths = [\n \"dimmers\",\n \"switches\",\n \"thermostats\",\n \"locks\",\n \"windowCoverings\",\n \"courtesy\",\n \"cameras\",\n \"mediaSources\",\n \"motionSensors\",\n \"alarms\",\n ];\n if (!validPaths.includes(path))\n throw new Error(\"Invalid device path:\" + path);\n switch (path) {\n case \"courtesy\":\n return path;\n case \"switches\":\n return \"switch\";\n default:\n return path.slice(0, -1);\n }\n }\n\n get hasDimmer() {\n return this.dimmers?.length > 0;\n }\n get hasSwitch() {\n return this.switches?.length > 0;\n }\n get hasWindowCovering() {\n return this.windowCoverings?.length > 0;\n }\n get hasShade() {\n return this.hasWindowCovering;\n }\n get hasThermostat() {\n return this.thermostats?.length > 0;\n }\n get hasClimate() {\n return this.hasThermostat;\n }\n get hasLock() {\n return this.locks?.length > 0;\n }\n get hasCourtesy() {\n return this.courtesy?.length > 0;\n }\n get hasCamera() {\n return this.cameras?.length > 0;\n }\n get hasMedia() {\n return this.mediaSources?.length > 0;\n }\n get hasLight() {\n const hasDiscriminatorLight = this.switches?.some((sw) => {\n return sw.discriminator === \"light\" || sw.discriminator === \"fan\";\n });\n return this.hasDimmer || hasDiscriminatorLight;\n }\n get hasAlarm() {\n return this.alarms?.length > 0;\n }\n get occupied() {\n const now = new Date();\n const lastOccupied = new Date(this.occupiedAt);\n const diff = now.getTime() - lastOccupied.getTime();\n return diff < 60 * 60 * 1000;\n }\n}\n\nObject.defineProperty(Room.prototype, \"schema\", {\n value: {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"room.json\",\n title: \"Room\",\n description:\n \"A room represents a physical space of controllable IoT devices\",\n type: \"object\",\n required: [\"id\", \"name\"],\n properties: {\n id: { $ref: \"definitions.json#/definitions/id\" },\n type: { type: \"string\", enum: [\"room\"], default: \"room\" },\n name: { type: \"string\" },\n floor: { type: \"string\" },\n dimmers: { type: \"array\", default: [], items: { $ref: \"dimmer.json\" } },\n switches: { type: \"array\", default: [], items: { $ref: \"switch.json\" } },\n thermostats: {\n type: \"array\",\n default: [],\n items: { $ref: \"thermostat.json\" },\n },\n locks: { type: \"array\", default: [], items: { $ref: \"lock.json\" } },\n windowCoverings: {\n type: \"array\",\n default: [],\n items: { $ref: \"windowCovering.json\" },\n },\n courtesy: {\n type: \"array\",\n default: [],\n items: { $ref: \"courtesy.json\" },\n },\n cameras: { type: \"array\", default: [], items: { $ref: \"camera.json\" } },\n mediaSources: {\n type: \"array\",\n default: [],\n items: { $ref: \"mediaSource.json\" },\n },\n motionSensors: {\n type: \"array\",\n default: [],\n items: { $ref: \"motionSensor.json\" },\n },\n alarms: { type: \"array\", default: [], items: { $ref: \"alarm.json\" } },\n occupiedAt: { $ref: \"definitions.json#/definitions/createdAt\" },\n createdAt: { $ref: \"definitions.json#/definitions/createdAt\" },\n updatedAt: { $ref: \"definitions.json#/definitions/updatedAt\" },\n },\n additionalProperties: false,\n },\n});\n\nObject.defineProperty(Room.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":"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","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{UpdateReservation}from"./chunk-FTCH2YVK.js";import{UpdateUser}from"./chunk-25TS7WQK.js";import{UploadImage}from"./chunk-BHG5VJNQ.js";import{SetCourtesy}from"./chunk-JKB4GVXZ.js";import{SetDimmer}from"./chunk-PVVJAJ2U.js";import{SetLock}from"./chunk-ANEFCLND.js";import{SetMedia}from"./chunk-F7RJAXJ3.js";import{SetScene}from"./chunk-HQAVS73L.js";import{SetSwitch}from"./chunk-AXJW3S5W.js";import{SetThermostat}from"./chunk-4PPJAXMZ.js";import{SetWindowCovering}from"./chunk-XYE4QWAL.js";import{GetRooms}from"./chunk-QGACPW7L.js";import{GetUsers}from"./chunk-RP66PVLU.js";import{OCRDocument}from"./chunk-2YCWOIUR.js";import{SellProducts}from"./chunk-DOX5ZOSZ.js";import{SendEmail}from"./chunk-RBVPAANY.js";import{SendSMS}from"./chunk-RMDNQAV4.js";import{SetAlarm}from"./chunk-XURK32UQ.js";import{CreateImageUploadEndpoint}from"./chunk-K3ERMR2X.js";import{CreateShortLink}from"./chunk-2C6SKQY6.js";import{GetCategories}from"./chunk-XFXENMXN.js";import{GetMobileKey}from"./chunk-J3KAHJ7Z.js";import{GetProducts}from"./chunk-5Z3DQU4I.js";import{GetReservationSpaceCategoryAvailabilities}from"./chunk-VE45ITDQ.js";import{GetReservations}from"./chunk-6D6FRQCU.js";import{CheckInReservation}from"./chunk-RIWQUPNT.js";import{CheckOutReservation}from"./chunk-HF3F4KLM.js";import{Command}from"./chunk-4FR6LYG3.js";import{__export}from"./chunk-XE4OXN2W.js";var commands_exports={};__export(commands_exports,{CheckInReservation:()=>CheckInReservation,CheckOutReservation:()=>CheckOutReservation,Command:()=>Command,CreateImageUploadEndpoint:()=>CreateImageUploadEndpoint,CreateShortLink:()=>CreateShortLink,GetCategories:()=>GetCategories,GetMobileKey:()=>GetMobileKey,GetProducts:()=>GetProducts,GetReservationSpaceCategoryAvailabilities:()=>GetReservationSpaceCategoryAvailabilities,GetReservations:()=>GetReservations,GetRooms:()=>GetRooms,GetUsers:()=>GetUsers,OCRDocument:()=>OCRDocument,SellProducts:()=>SellProducts,SendEmail:()=>SendEmail,SendSMS:()=>SendSMS,SetAlarm:()=>SetAlarm,SetCourtesy:()=>SetCourtesy,SetDimmer:()=>SetDimmer,SetLock:()=>SetLock,SetMedia:()=>SetMedia,SetScene:()=>SetScene,SetSwitch:()=>SetSwitch,SetThermostat:()=>SetThermostat,SetWindowCovering:()=>SetWindowCovering,UpdateReservation:()=>UpdateReservation,UpdateUser:()=>UpdateUser,UploadImage:()=>UploadImage});export{commands_exports};//# sourceMappingURL=chunk-
|
|
1
|
+
import{UpdateReservation}from"./chunk-FTCH2YVK.js";import{UpdateUser}from"./chunk-25TS7WQK.js";import{UploadImage}from"./chunk-BHG5VJNQ.js";import{SetCourtesy}from"./chunk-JKB4GVXZ.js";import{SetDimmer}from"./chunk-PVVJAJ2U.js";import{SetLock}from"./chunk-ANEFCLND.js";import{SetMedia}from"./chunk-F7RJAXJ3.js";import{SetScene}from"./chunk-HQAVS73L.js";import{SetSwitch}from"./chunk-AXJW3S5W.js";import{SetThermostat}from"./chunk-4PPJAXMZ.js";import{SetWindowCovering}from"./chunk-XYE4QWAL.js";import{GetRooms}from"./chunk-QGACPW7L.js";import{GetUsers}from"./chunk-RP66PVLU.js";import{OCRDocument}from"./chunk-2YCWOIUR.js";import{SellProducts}from"./chunk-DOX5ZOSZ.js";import{SendEmail}from"./chunk-RBVPAANY.js";import{SendSMS}from"./chunk-RMDNQAV4.js";import{SetAlarm}from"./chunk-XURK32UQ.js";import{CreateImageUploadEndpoint}from"./chunk-K3ERMR2X.js";import{CreateShortLink}from"./chunk-2C6SKQY6.js";import{GetCategories}from"./chunk-XFXENMXN.js";import{GetMobileKey}from"./chunk-J3KAHJ7Z.js";import{GetProducts}from"./chunk-5Z3DQU4I.js";import{GetReservationSpaceCategoryAvailabilities}from"./chunk-VE45ITDQ.js";import{GetReservations}from"./chunk-6D6FRQCU.js";import{CheckInReservation}from"./chunk-RIWQUPNT.js";import{CheckOutReservation}from"./chunk-HF3F4KLM.js";import{Command}from"./chunk-4FR6LYG3.js";import{__export}from"./chunk-XE4OXN2W.js";var commands_exports={};__export(commands_exports,{CheckInReservation:()=>CheckInReservation,CheckOutReservation:()=>CheckOutReservation,Command:()=>Command,CreateImageUploadEndpoint:()=>CreateImageUploadEndpoint,CreateShortLink:()=>CreateShortLink,GetCategories:()=>GetCategories,GetMobileKey:()=>GetMobileKey,GetProducts:()=>GetProducts,GetReservationSpaceCategoryAvailabilities:()=>GetReservationSpaceCategoryAvailabilities,GetReservations:()=>GetReservations,GetRooms:()=>GetRooms,GetUsers:()=>GetUsers,OCRDocument:()=>OCRDocument,SellProducts:()=>SellProducts,SendEmail:()=>SendEmail,SendSMS:()=>SendSMS,SetAlarm:()=>SetAlarm,SetCourtesy:()=>SetCourtesy,SetDimmer:()=>SetDimmer,SetLock:()=>SetLock,SetMedia:()=>SetMedia,SetScene:()=>SetScene,SetSwitch:()=>SetSwitch,SetThermostat:()=>SetThermostat,SetWindowCovering:()=>SetWindowCovering,UpdateReservation:()=>UpdateReservation,UpdateUser:()=>UpdateUser,UploadImage:()=>UploadImage});export{commands_exports};//# sourceMappingURL=chunk-CWTMCUZZ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/index.js"],"sourcesContent":["// This file is auto-generated. Do not edit this file manually.\n// Generated on: 2025-
|
|
1
|
+
{"version":3,"sources":["../src/commands/index.js"],"sourcesContent":["// This file is auto-generated. Do not edit this file manually.\n// Generated on: 2025-05-10T15:07:59.163Z\n\nexport * from \"./checkInReservation\";\nexport * from \"./checkOutReservation\";\nexport * from \"./command\";\nexport * from \"./createImageUploadEndpoint\";\nexport * from \"./createShortLink\";\nexport * from \"./getCategories\";\nexport * from \"./getMobileKey\";\nexport * from \"./getProducts\";\nexport * from \"./getReservationSpaceCategoryAvailabilities\";\nexport * from \"./getReservations\";\nexport * from \"./getRooms\";\nexport * from \"./getUsers\";\nexport * from \"./ocrDocument\";\nexport * from \"./sellProducts\";\nexport * from \"./sendEmail\";\nexport * from \"./sendSMS\";\nexport * from \"./setAlarm\";\nexport * from \"./setCourtesy\";\nexport * from \"./setDimmer\";\nexport * from \"./setLock\";\nexport * from \"./setMedia\";\nexport * from \"./setScene\";\nexport * from \"./setSwitch\";\nexport * from \"./setThermostat\";\nexport * from \"./setWindowCovering\";\nexport * from \"./updateReservation\";\nexport * from \"./updateUser\";\nexport * from \"./uploadImage\";"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateEnergyReport}from"./chunk-
|
|
1
|
+
import{validateEnergyReport}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var EnergyReport=class extends Entity{static{__name(this,"EnergyReport")}constructor(data){super(data),this.id=data.id,this.type=data.type,void 0!==data.reportTime&&(this.reportTime=data.reportTime),this.roomId=data.roomId,this.first=data.first,this.last=data.last,this.consumption=data.consumption,this.totals=data.totals,this.costPerKw=data.costPerKw}};Object.defineProperty(EnergyReport.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"energyReport.json",title:"Energy Report",description:"Hourly Report for Energy based on energy report shards",type:"object",required:["id","type","roomId","first","last","consumption","totals","costPerKw"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",enum:["energyReport"],default:"energyReport"},reportTime:{type:"string",enum:["hourly","daily","monthly"]},roomId:{$ref:"definitions.json#/definitions/id"},first:{type:["string","object"],format:"date-time"},last:{type:["string","object"],format:"date-time"},consumption:{type:"array",items:{type:"object",required:["id","type","kwh"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{$ref:"definitions.json#/definitions/type"},kwh:{type:"number",minimum:0}}}},totals:{type:"array",items:{type:"object",required:["lights","climate","media"],properties:{lights:{type:"number",minimum:0},climate:{type:"number",minimum:0},media:{type:"number",minimum:0}}}},costPerKw:{type:"number",minimum:0}}}}),Object.defineProperty(EnergyReport.prototype,"validator",{get:__name((function(){return validateEnergyReport}),"get")});export{EnergyReport};//# sourceMappingURL=chunk-D5TZNOHT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validatePolicy}from"./chunk-
|
|
1
|
+
import{validatePolicy}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Policy=class extends Entity{static{__name(this,"Policy")}constructor(data){super(data),void 0!==data.id&&(this.id=data.id),this.type=data.type,this.discriminator=data.discriminator,this.name=data.name,void 0!==data.description&&(this.description=data.description),this.organizationId=data.organizationId,this.propertyId=data.propertyId,this.permissions=data.permissions}};Object.defineProperty(Policy.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"policy.json",title:"Policy",description:"A policy is a set of permissions that can be applied to a user to limit their access to resources.",type:"object",required:["name","type","organizationId","propertyId","permissions","discriminator"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",default:"policy",enum:["policy"]},discriminator:{type:"string",enum:["user"]},name:{type:"string",minLength:1},description:{type:"string"},organizationId:{type:"string"},propertyId:{type:"string"},permissions:{type:"array",items:{type:"object",required:["entities","effect"],properties:{entities:{type:"array",items:{type:"string",pattern:"^[^:]+(:.+)+$"}},effect:{type:"string",enum:["Allow","Deny"]}}}}}}}),Object.defineProperty(Policy.prototype,"validator",{get:__name((function(){return validatePolicy}),"get")});export{Policy};//# sourceMappingURL=chunk-DJZRIWGL.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateEnergyReportShard}from"./chunk-
|
|
1
|
+
import{validateEnergyReportShard}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var EnergyReportShard=class extends Entity{static{__name(this,"EnergyReportShard")}constructor(data){super(data),this.id=data.id,this.type=data.type,this.roomId=data.roomId,this.first=data.first,this.last=data.last,this.data=data.data,this.ndata=data.ndata,this.expires=data.expires}};Object.defineProperty(EnergyReportShard.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"energyReportShard.json",title:"Energy Report Shard",description:"Shard used for Energy Reports",type:"object",required:["id","type","roomId","first","last","data","ndata","expires"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",enum:["energyReportShard"],default:"energyReportShard"},roomId:{$ref:"definitions.json#/definitions/id"},first:{type:["string","object"],format:"date-time"},last:{type:["string","object"],format:"date-time"},data:{type:"array",items:{type:"object",required:["time","watts","id","type","value"],properties:{time:{type:["string","object"],format:"date-time"},watts:{$ref:"definitions.json#/definitions/watts"},id:{$ref:"definitions.json#/definitions/id"},type:{$ref:"definitions.json#/definitions/type"},value:{type:"number",minimum:0,maximum:1}}}},ndata:{type:"integer",minimum:0,maximum:1e5,default:0},expires:{type:["string","object"],format:"date-time"}}}}),Object.defineProperty(EnergyReportShard.prototype,"validator",{get:__name((function(){return validateEnergyReportShard}),"get")});export{EnergyReportShard};//# sourceMappingURL=chunk-DNAXIHEO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateIssue}from"./chunk-
|
|
1
|
+
import{validateIssue}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Issue=class extends Entity{static{__name(this,"Issue")}constructor(data){super(data),this.id=data.id,this.type=data.type,this.name=data.name,void 0!==data.description&&(this.description=data.description),this.department=data.department,void 0!==data.autoAssign&&(this.autoAssign=data.autoAssign),void 0!==data.notify&&(this.notify=data.notify),void 0!==data.systemKey&&(this.systemKey=data.systemKey),void 0!==data.autoCreateTicket&&(this.autoCreateTicket=data.autoCreateTicket),void 0!==data.excludedResources&&(this.excludedResources=data.excludedResources)}};Object.defineProperty(Issue.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"issue.json",title:"Issue",description:"An issue associated with ticketing and concierge.",type:"object",required:["id","type","name","department"],additionalProperties:!1,properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",enum:["issue"],default:"issue"},name:{type:"string"},description:{type:"string"},department:{type:"string"},autoAssign:{type:"object",properties:{userId:{type:"string",description:"The user ID to assign tickets with this issue to."},vendorId:{type:"string",description:"The vendor ID to assign tickets with this issue to."},priority:{$ref:"ticket.json#/properties/priority",description:"The priority to assign tickets with this issue to."},tags:{type:"array",items:{type:"string"}}}},notify:{type:"array",description:"A list of entities to notify when this issue is triggered.",default:[],items:{type:"object",required:["id","discriminator"],properties:{id:{type:"string",description:"The ID of the entity to notify."},discriminator:{type:"string",enum:["user"]}}}},systemKey:{type:"string"},autoCreateTicket:{type:"boolean",default:!0},excludedResources:{type:"array",description:"A list of resources that should not trigger notifications of this issue",items:{type:"string"},default:[]}}}}),Object.defineProperty(Issue.prototype,"validator",{get:__name((function(){return validateIssue}),"get")});export{Issue};//# sourceMappingURL=chunk-FM7UL4RE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateUser}from"./chunk-
|
|
1
|
+
import{validateUser}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var User=class extends Entity{static{__name(this,"User")}constructor(data){super(data),this.id=data.id,void 0!==data.type&&(this.type=data.type),this.firstName=data.firstName,this.lastName=data.lastName,void 0!==data.phone&&(this.phone=data.phone),void 0!==data.phoneVerified&&(this.phoneVerified=data.phoneVerified),void 0!==data.email&&(this.email=data.email),void 0!==data.emailVerified&&(this.emailVerified=data.emailVerified),void 0!==data.whatsapp&&(this.whatsapp=data.whatsapp),void 0!==data.whatsappVerified&&(this.whatsappVerified=data.whatsappVerified),void 0!==data.address&&(this.address=data.address),void 0!==data.secretKey&&(this.secretKey=data.secretKey),void 0!==data.photo&&(this.photo=data.photo),void 0!==data.jobTitle&&(this.jobTitle=data.jobTitle),void 0!==data.dob&&(this.dob=data.dob),void 0!==data.gender&&(this.gender=data.gender),void 0!==data.nationality&&(this.nationality=data.nationality),void 0!==data.permissions&&(this.permissions=data.permissions),void 0!==data.preferences&&(this.preferences=data.preferences),void 0!==data.notes&&(this.notes=data.notes),void 0!==data.files&&(this.files=data.files),void 0!==data.identifications&&(this.identifications=data.identifications),void 0!==data.payments&&(this.payments=data.payments),void 0!==data.location&&(this.location=data.location),void 0!==data.reservations&&(this.reservations=data.reservations),void 0!==data.spaceName&&(this.spaceName=data.spaceName),void 0!==data.revenue&&(this.revenue=data.revenue),void 0!==data.createdAt&&(this.createdAt=data.createdAt),void 0!==data.updatedAt&&(this.updatedAt=data.updatedAt),void 0!==data.systems&&(this.systems=data.systems)}get fullName(){return`${this.firstName} ${this.lastName}`}get roles(){const roles=new Set;if(this.permissions)for(const permission of this.permissions)roles.add(permission.role);return Array.from(roles)}get isSuperAdmin(){return this.roles.includes("SuperAdmin")}get isAdmin(){return this.roles.includes("Admin")||this.roles.includes("Administrator")}get isManager(){return this.roles.includes("Manager")}get isUser(){return this.roles.includes("User")}};Object.defineProperty(User.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"user.json",title:"User",type:"object",required:["id","firstName","lastName"],properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",default:"user"},firstName:{type:"string"},lastName:{type:"string"},phone:{type:["string","null"],pattern:"^\\+[0-9]{1,14}$"},phoneVerified:{type:"boolean"},email:{type:["string","null"],format:"email"},emailVerified:{type:"boolean"},whatsapp:{type:["string","null"],pattern:"^\\+[0-9]{1,14}$"},whatsappVerified:{type:"boolean"},address:{$ref:"definitions.json#/definitions/address"},secretKey:{type:"string"},photo:{$ref:"mediaFile.json#"},jobTitle:{type:"string"},dob:{type:"string"},gender:{type:"string",enum:["male","female"]},nationality:{type:"string",minLength:2,maxLength:2},permissions:{type:"array",default:[],items:{type:"object",required:["organizationId","propertyId","role"],properties:{organizationId:{type:"string",description:"The ID of the organization the permission is applies to."},propertyId:{type:"string",description:"The ID of the property the permission is applies to."},role:{type:"string",enum:["Guest","User","Agent","Manager","Maintenance","Administrator","SuperAdmin"]},timeTrackingEnabled:{type:"boolean",description:"Whether time tracking is enabled for this role."},department:{type:"string",description:"The department the user belongs to."},policyIds:{type:"array",items:{type:"string",description:"ID of a policy that is applied to this role."}},policies:{type:"array",items:{description:"A policy object populated from the policyIds array.",$ref:"policy.json"}}},additionalProperties:!1}},preferences:{type:"array",items:{type:"object",additionalProperties:!1,required:["organizationId","propertyId"],properties:{organizationId:{type:"string"},propertyId:{type:"string"},notifications:{type:"array",items:{type:"object",additionalProperties:!1,required:["discriminator","enabled"],properties:{discriminator:{type:"string",enum:["observerTicketCreated","observerTicketResolved"]},enabled:{type:"boolean"}}}}}}},notes:{type:"array",items:{type:"string"}},files:{type:"array",items:{$ref:"mediaFile.json#"}},identifications:{type:"array",items:{$ref:"identification.json#"}},payments:{type:"array",items:{$ref:"payment.json#"}},location:{type:"object",required:["accuracy","latitude","longitude","timestamp"],additionalProperties:!1,properties:{accuracy:{type:["number","null"]},latitude:{type:["number","null"]},longitude:{type:["number","null"]},timestamp:{type:["number","null"]}}},reservations:{type:"array",items:{$ref:"reservation.json"}},spaceName:{type:"string"},revenue:{$ref:"definitions.json#/definitions/revenue"},createdAt:{$ref:"definitions.json#/definitions/createdAt"},updatedAt:{$ref:"definitions.json#/definitions/updatedAt"},systems:{type:"array",default:[],items:{type:"object",properties:{systemId:{type:"string"},propertyId:{type:"string"},driver:{type:"string"}},required:["systemId","propertyId","driver"],additionalProperties:!1}}}}}),Object.defineProperty(User.prototype,"validator",{get:__name((function(){return validateUser}),"get")});export{User};//# sourceMappingURL=chunk-FW7D3GH3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validateAnnouncement}from"./chunk-
|
|
1
|
+
import{validateAnnouncement}from"./chunk-IL3ICDGN.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__name}from"./chunk-XE4OXN2W.js";var Announcement=class extends Entity{static{__name(this,"Announcement")}constructor(data){super(data),void 0!==data.id&&(this.id=data.id),void 0!==data.type&&(this.type=data.type),void 0!==data.users&&(this.users=data.users),void 0!==data.group&&(this.group=data.group),void 0!==data.body&&(this.body=data.body),void 0!==data.media&&(this.media=data.media),void 0!==data.sentBy&&(this.sentBy=data.sentBy),void 0!==data.tags&&(this.tags=data.tags),void 0!==data.createdAt&&(this.createdAt=data.createdAt),void 0!==data.updatedAt&&(this.updatedAt=data.updatedAt)}};Object.defineProperty(Announcement.prototype,"schema",{value:{$schema:"http://json-schema.org/draft-07/schema",$id:"announcement.json",title:"Announcement",description:"Announcement message sent to users",type:"object",properties:{id:{$ref:"definitions.json#/definitions/id"},type:{type:"string",enum:["announcement"],default:"announcement"},users:{type:"array",items:{type:"string"},minItems:1},group:{type:"string"},body:{type:"string"},media:{$ref:"mediaFile.json"},sentBy:{type:"string"},tags:{type:"array",items:{type:"string"}},createdAt:{$ref:"definitions.json#/definitions/date"},updatedAt:{$ref:"definitions.json#/definitions/date"}},additionalProperties:!1}}),Object.defineProperty(Announcement.prototype,"validator",{get:__name((function(){return validateAnnouncement}),"get")});export{Announcement};//# sourceMappingURL=chunk-GXMHA263.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{User}from"./chunk-FW7D3GH3.js";import{Vendor}from"./chunk-LBHE6WMJ.js";import{WindowCovering}from"./chunk-NL7OPBZY.js";import{ShortLink}from"./chunk-X7VZCU32.js";import{SmsMessage}from"./chunk-LM3DGQWT.js";import{Space}from"./chunk-RPCMFJ32.js";import{Switch}from"./chunk-POWSQ6EB.js";import{SystemUser}from"./chunk-LJVWC3E4.js";import{Thermostat}from"./chunk-IWGDMVNC.js";import{Ticket}from"./chunk-TM3PSLKD.js";import{TimeSheet}from"./chunk-PRDI3KRE.js";import{Organization}from"./chunk-PYZPYTS3.js";import{Payment}from"./chunk-UDBCX6ZP.js";import{Policy}from"./chunk-DJZRIWGL.js";import{Product}from"./chunk-6LO4AAZU.js";import{Property}from"./chunk-XYV2ZMBZ.js";import{Reservation}from"./chunk-XVJVSQGH.js";import{Room}from"./chunk-BWKM6FHE.js";import{Scene}from"./chunk-3OHHAVGM.js";import{Issue}from"./chunk-FM7UL4RE.js";import{Lock}from"./chunk-Y5J5SCRG.js";import{Log}from"./chunk-3XNNT6GS.js";import{MediaFile}from"./chunk-7SDGK3FY.js";import{MediaSource}from"./chunk-2P5LASH2.js";import{MotionSensor}from"./chunk-6BAPG7KI.js";import{Notification}from"./chunk-XQ5CWKNA.js";import{Order}from"./chunk-RE2TLPXP.js";import{DiscoveredDevice}from"./chunk-IAIKQXNR.js";import{EmailMessage}from"./chunk-VL5FTU46.js";import{EnergyReport}from"./chunk-D5TZNOHT.js";import{EnergyReportShard}from"./chunk-DNAXIHEO.js";import{Gateway}from"./chunk-UIFA6TUW.js";import{Identification}from"./chunk-3H74J6YV.js";import{Announcement}from"./chunk-GXMHA263.js";import{Automation}from"./chunk-MOGXYZHC.js";import{Camera}from"./chunk-XGYTUUO7.js";import{Category}from"./chunk-7BI266GZ.js";import{Courtesy}from"./chunk-6HFMALKH.js";import{Credential}from"./chunk-4SSME4Y4.js";import{DeviceRouter}from"./chunk-NWH5F523.js";import{Dimmer}from"./chunk-45WLVARH.js";import{Alarm}from"./chunk-IWIPSTOH.js";import{Entity}from"./chunk-YPJMXYGL.js";import{__export}from"./chunk-XE4OXN2W.js";var models_exports={};__export(models_exports,{Alarm:()=>Alarm,Announcement:()=>Announcement,Automation:()=>Automation,Camera:()=>Camera,Category:()=>Category,Courtesy:()=>Courtesy,Credential:()=>Credential,DeviceRouter:()=>DeviceRouter,Dimmer:()=>Dimmer,DiscoveredDevice:()=>DiscoveredDevice,EmailMessage:()=>EmailMessage,EnergyReport:()=>EnergyReport,EnergyReportShard:()=>EnergyReportShard,Entity:()=>Entity,Gateway:()=>Gateway,Identification:()=>Identification,Issue:()=>Issue,Lock:()=>Lock,Log:()=>Log,MediaFile:()=>MediaFile,MediaSource:()=>MediaSource,MotionSensor:()=>MotionSensor,Notification:()=>Notification,Order:()=>Order,Organization:()=>Organization,Payment:()=>Payment,Policy:()=>Policy,Product:()=>Product,Property:()=>Property,Reservation:()=>Reservation,Room:()=>Room,Scene:()=>Scene,ShortLink:()=>ShortLink,SmsMessage:()=>SmsMessage,Space:()=>Space,Switch:()=>Switch,SystemUser:()=>SystemUser,Thermostat:()=>Thermostat,Ticket:()=>Ticket,TimeSheet:()=>TimeSheet,User:()=>User,Vendor:()=>Vendor,WindowCovering:()=>WindowCovering});export{models_exports};//# sourceMappingURL=chunk-HCLU4KYE.js.map
|