@yongdall/api-device 0.7.17 → 0.7.18
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yongdall/api-device",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.18",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./index.mjs",
|
|
6
6
|
"exports": {
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"@yongdall/common": "^0.7.17",
|
|
19
19
|
"@yongdall/configuration": "^0.7.13",
|
|
20
20
|
"@yongdall/context": "^0.7.13",
|
|
21
|
-
"@yongdall/device": "^0.7.
|
|
21
|
+
"@yongdall/device": "^0.7.18",
|
|
22
22
|
"@yongdall/core": "^0.7.13",
|
|
23
23
|
"@yongdall/http": "^0.7.17",
|
|
24
24
|
"@yongdall/plugins": "^0.7.13",
|
package/yongdall/route@api.mjs
CHANGED
|
@@ -76,6 +76,7 @@ channelCapability.post`libraries/${libraryParam}/items`(() => getBody().then((va
|
|
|
76
76
|
channelCapability.get`libraries/${libraryParam}/items/${libraryItemParam}`(() => useDevice().getLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem()));
|
|
77
77
|
channelCapability.put`libraries/${libraryParam}/items/${libraryItemParam}`(() => getBody().then((value) => useDevice().setLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem(), value)).then(() => ({})));
|
|
78
78
|
channelCapability.delete`libraries/${libraryParam}/items/${libraryItemParam}`(() => useDevice().deleteLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem()).then(() => ({})));
|
|
79
|
+
channelCapability.delete`libraries/${libraryParam}/items`(() => useDevice().clearLibraryItems(useChannel(), useCapability(), useLibrary()).then(() => ({})));
|
|
79
80
|
//#endregion
|
|
80
81
|
export { device };
|
|
81
82
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route@api.mjs","names":[],"sources":["../../../device/api-device/yongdall/route@api.mts"],"sourcesContent":["import type { AuthResult } from '#lib';\nimport { ServerError } from '@yongdall/core';\nimport { ApiRouter, apiRoute, authenticate, k99Context, useBody } from '@yongdall/http';\nimport { DeviceError, getDevice } from '@yongdall/device';\nimport { getFilenameFromContentDisposition, toJsonlTransformStream } from '@yongdall/common';\nimport {\n\tsetDevice,\n\tcapabilityParam, channelParam, eventParam, libraryItemParam, libraryParam, methodParam, propertyParam, triggerParam, \n\tuseCapability, useChannel, useDevice, useEvent, useLibrary, useLibraryItem, useMethod, useProperty, useTrigger,\n} from '#lib';\n\nexport const device = new ApiRouter();\n\ndevice.route(apiRoute('device'));\n\ndevice.guard(async (ctx) => {\n\tconst { requestHeaders } = ctx;\n\tconst targetUri = requestHeaders.get('Yongdall-Device-Uri');\n\tconst WWWAuthenticate = await authenticate<AuthResult>('device', {\n\t\ttarget: targetUri,\n\t}, requestHeaders.get('Authorization'));\n\tif (typeof WWWAuthenticate === 'string') {\n\t\tctx.responseHeaders.set('WWW-Authenticate', WWWAuthenticate);\n\t\tthrow new ServerError('Unauthorized', 401);\n\t}\n\tsetDevice(getDevice(targetUri || ''));\n});\nconst fileMimes = new Set([\n\t'image/jpeg',\n\t'image/png',\n\t'image/gif',\n])\nasync function getBody() {\n\tlet data = await useBody();\n\tif (data instanceof FormData) {\n\t\tconst obj: Record<string, string | File | (string | File)[]> = {};\n\t\tfor (const [key, val] of data) {\n\t\t\tobj[key] = Object.hasOwn(obj, key) ? [obj[key], val].flat() : val;\n\t\t}\n\t\treturn obj;\n\t}\n\tif (data != null) { return data; }\n\tconst request = k99Context()?.request;\n\tif (!request) { return null; }\n\tif (request.bodyUsed) { return null; }\n\tconst headers = request.headers;\n\tconst mime = headers.get('Content-Type')?.replace(/\\s/g, '').split(';')[0] || '';\n\tif (!fileMimes.has(mime)) { return null; }\n\tconst filename = getFilenameFromContentDisposition(headers.get('Content-Disposition'));\n\tif (!filename) { return request.blob(); }\n\treturn new File([await request.blob()], filename, { type: mime });\n}\n\ndevice.get`channels`(() => useDevice().channels());\ndevice.get`info`(() => useDevice().getInfo());\ndevice.get`net/address`(() => useDevice().getNetAddress());\ndevice.post`ping`(() => useDevice().ping());\ndevice.post`reboot`(() => useDevice().reboot().then(() => ({})));\n\n\nfunction toTemporal(value: any) {\n\ttry { return Temporal.ZonedDateTime.from(value); } catch { }\n\tthrow new ServerError('Invalid value', 400);\n}\ndevice.post`methods/${methodParam}`(() => getBody()\n\t.then(options => useDevice().callMethod(useMethod(), options))\n);\n\ndevice.get`time`(() => useDevice().getTime().then(time => time.toString()));\ndevice.post`time`(() => getBody().then(toTemporal).then(time => useDevice().setTime(time)).then(() => ({})));\ndevice.get`ntp/status`(() => useDevice().getNTPStatus());\ndevice.post`ntp/status`(() => useDevice().setNTPStatus(true).then(() => ({})));\ndevice.put`ntp/status`(async ctx => useBody().then(enabled => useDevice().setNTPStatus(Boolean(enabled))).then(() => ({})));\ndevice.delete`ntp/status`(() => useDevice().setNTPStatus(false).then(() => ({})));\ndevice.get`ntp/server`(() => useDevice().getNTP())\ndevice.put`ntp/server`(async ctx => useBody().then(ntp => useDevice().setNTP([ntp].flat())).then(() => ({})));\n\nconst channel = device.route`channels/${channelParam}`();\nconst channelCapability = new ApiRouter();\nchannel.route`capabilities/${capabilityParam}`(new ApiRouter);\n\n\n\nchannelCapability.post`triggers/${triggerParam}`(() => getBody()\n\t.then(options => useDevice().trigger(useChannel(), useCapability(), useTrigger(), options))\n\t.then(() => ({}))\n);\n\n\n\nchannelCapability.post`methods/${methodParam}`(() => getBody()\n\t.then(options => useDevice().execMethod(useChannel(), useCapability(), useMethod(), options))\n);\n\n\nchannelCapability.get`events/${eventParam}`(ctx =>\n\tuseDevice().listenEvent(useChannel(), useCapability(), useEvent())\n\t.then(stream => {\n\t\tctx.responseType = 'application/jsonl';\n\t\treturn stream.pipeThrough(toJsonlTransformStream());\n\t})\n);\nchannelCapability.query`events/${eventParam}`(() => getBody()\n\t.then(options => useDevice().queryEvents(useChannel(), useCapability(), useEvent(), options))\n);\n\n\n\nchannelCapability.get`properties/${propertyParam}`(() => useDevice()\n\t.getProperty(useChannel(), useCapability(), useProperty())\n);\nchannelCapability.put`properties/${propertyParam}`(() => getBody()\n\t.then(value => useDevice().setProperty(useChannel(), useCapability(), useProperty(), value))\n\t.then(() => ({}))\n);\n\n\n\nchannelCapability.query`libraries/${libraryParam}/items`(() => getBody()\n\t.then(options => useDevice().queryLibraryItem(useChannel(), useCapability(), useLibrary(), options))\n);\nchannelCapability.post`libraries/${libraryParam}/items`(() => getBody()\n\t.then(value => useDevice().addLibraryItem(useChannel(), useCapability(), useLibrary(), value))\n\t.then(() => ({}))\n);\n\nchannelCapability.get`libraries/${libraryParam}/items/${libraryItemParam}`(() => useDevice()\n\t.getLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem())\n);\nchannelCapability.put`libraries/${libraryParam}/items/${libraryItemParam}`(() => getBody()\n\t.then(value => useDevice().setLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem(), value))\n\t.then(() => ({}))\n);\nchannelCapability.delete`libraries/${libraryParam}/items/${libraryItemParam}`(() => useDevice()\n\t.deleteLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem())\n\t.then(() => ({}))\n);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"route@api.mjs","names":[],"sources":["../../../device/api-device/yongdall/route@api.mts"],"sourcesContent":["import type { AuthResult } from '#lib';\nimport { ServerError } from '@yongdall/core';\nimport { ApiRouter, apiRoute, authenticate, k99Context, useBody } from '@yongdall/http';\nimport { DeviceError, getDevice } from '@yongdall/device';\nimport { getFilenameFromContentDisposition, toJsonlTransformStream } from '@yongdall/common';\nimport {\n\tsetDevice,\n\tcapabilityParam, channelParam, eventParam, libraryItemParam, libraryParam, methodParam, propertyParam, triggerParam, \n\tuseCapability, useChannel, useDevice, useEvent, useLibrary, useLibraryItem, useMethod, useProperty, useTrigger,\n} from '#lib';\n\nexport const device = new ApiRouter();\n\ndevice.route(apiRoute('device'));\n\ndevice.guard(async (ctx) => {\n\tconst { requestHeaders } = ctx;\n\tconst targetUri = requestHeaders.get('Yongdall-Device-Uri');\n\tconst WWWAuthenticate = await authenticate<AuthResult>('device', {\n\t\ttarget: targetUri,\n\t}, requestHeaders.get('Authorization'));\n\tif (typeof WWWAuthenticate === 'string') {\n\t\tctx.responseHeaders.set('WWW-Authenticate', WWWAuthenticate);\n\t\tthrow new ServerError('Unauthorized', 401);\n\t}\n\tsetDevice(getDevice(targetUri || ''));\n});\nconst fileMimes = new Set([\n\t'image/jpeg',\n\t'image/png',\n\t'image/gif',\n])\nasync function getBody() {\n\tlet data = await useBody();\n\tif (data instanceof FormData) {\n\t\tconst obj: Record<string, string | File | (string | File)[]> = {};\n\t\tfor (const [key, val] of data) {\n\t\t\tobj[key] = Object.hasOwn(obj, key) ? [obj[key], val].flat() : val;\n\t\t}\n\t\treturn obj;\n\t}\n\tif (data != null) { return data; }\n\tconst request = k99Context()?.request;\n\tif (!request) { return null; }\n\tif (request.bodyUsed) { return null; }\n\tconst headers = request.headers;\n\tconst mime = headers.get('Content-Type')?.replace(/\\s/g, '').split(';')[0] || '';\n\tif (!fileMimes.has(mime)) { return null; }\n\tconst filename = getFilenameFromContentDisposition(headers.get('Content-Disposition'));\n\tif (!filename) { return request.blob(); }\n\treturn new File([await request.blob()], filename, { type: mime });\n}\n\ndevice.get`channels`(() => useDevice().channels());\ndevice.get`info`(() => useDevice().getInfo());\ndevice.get`net/address`(() => useDevice().getNetAddress());\ndevice.post`ping`(() => useDevice().ping());\ndevice.post`reboot`(() => useDevice().reboot().then(() => ({})));\n\n\nfunction toTemporal(value: any) {\n\ttry { return Temporal.ZonedDateTime.from(value); } catch { }\n\tthrow new ServerError('Invalid value', 400);\n}\ndevice.post`methods/${methodParam}`(() => getBody()\n\t.then(options => useDevice().callMethod(useMethod(), options))\n);\n\ndevice.get`time`(() => useDevice().getTime().then(time => time.toString()));\ndevice.post`time`(() => getBody().then(toTemporal).then(time => useDevice().setTime(time)).then(() => ({})));\ndevice.get`ntp/status`(() => useDevice().getNTPStatus());\ndevice.post`ntp/status`(() => useDevice().setNTPStatus(true).then(() => ({})));\ndevice.put`ntp/status`(async ctx => useBody().then(enabled => useDevice().setNTPStatus(Boolean(enabled))).then(() => ({})));\ndevice.delete`ntp/status`(() => useDevice().setNTPStatus(false).then(() => ({})));\ndevice.get`ntp/server`(() => useDevice().getNTP())\ndevice.put`ntp/server`(async ctx => useBody().then(ntp => useDevice().setNTP([ntp].flat())).then(() => ({})));\n\nconst channel = device.route`channels/${channelParam}`();\nconst channelCapability = new ApiRouter();\nchannel.route`capabilities/${capabilityParam}`(new ApiRouter);\n\n\n\nchannelCapability.post`triggers/${triggerParam}`(() => getBody()\n\t.then(options => useDevice().trigger(useChannel(), useCapability(), useTrigger(), options))\n\t.then(() => ({}))\n);\n\n\n\nchannelCapability.post`methods/${methodParam}`(() => getBody()\n\t.then(options => useDevice().execMethod(useChannel(), useCapability(), useMethod(), options))\n);\n\n\nchannelCapability.get`events/${eventParam}`(ctx =>\n\tuseDevice().listenEvent(useChannel(), useCapability(), useEvent())\n\t.then(stream => {\n\t\tctx.responseType = 'application/jsonl';\n\t\treturn stream.pipeThrough(toJsonlTransformStream());\n\t})\n);\nchannelCapability.query`events/${eventParam}`(() => getBody()\n\t.then(options => useDevice().queryEvents(useChannel(), useCapability(), useEvent(), options))\n);\n\n\n\nchannelCapability.get`properties/${propertyParam}`(() => useDevice()\n\t.getProperty(useChannel(), useCapability(), useProperty())\n);\nchannelCapability.put`properties/${propertyParam}`(() => getBody()\n\t.then(value => useDevice().setProperty(useChannel(), useCapability(), useProperty(), value))\n\t.then(() => ({}))\n);\n\n\n\nchannelCapability.query`libraries/${libraryParam}/items`(() => getBody()\n\t.then(options => useDevice().queryLibraryItem(useChannel(), useCapability(), useLibrary(), options))\n);\nchannelCapability.post`libraries/${libraryParam}/items`(() => getBody()\n\t.then(value => useDevice().addLibraryItem(useChannel(), useCapability(), useLibrary(), value))\n\t.then(() => ({}))\n);\n\nchannelCapability.get`libraries/${libraryParam}/items/${libraryItemParam}`(() => useDevice()\n\t.getLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem())\n);\nchannelCapability.put`libraries/${libraryParam}/items/${libraryItemParam}`(() => getBody()\n\t.then(value => useDevice().setLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem(), value))\n\t.then(() => ({}))\n);\nchannelCapability.delete`libraries/${libraryParam}/items/${libraryItemParam}`(() => useDevice()\n\t.deleteLibraryItem(useChannel(), useCapability(), useLibrary(), useLibraryItem())\n\t.then(() => ({}))\n);\n\nchannelCapability.delete`libraries/${libraryParam}/items`(() => useDevice()\n\t.clearLibraryItems(useChannel(), useCapability(), useLibrary())\n\t.then(() => ({}))\n);\n"],"mappings":"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"}
|