@xyo-network/archivist-express 5.6.4 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -57,4 +57,4 @@ var archivistRestMiddleware = (options) => {
57
57
  export {
58
58
  archivistRestMiddleware
59
59
  };
60
- //# sourceMappingURL=index.mjs.map
60
+ //# sourceMappingURL=index.mjs.map
@@ -1 +1,7 @@
1
- {"version":3,"sources":["../../src/archivistRestMiddleware.ts"],"sourcesContent":["import { setRawResponseFormat } from '@xylabs/express'\nimport {\n asHash, isDefined, isHash,\n} from '@xylabs/sdk-js'\nimport type {\n ArchivistInstance,\n ArchivistNextOptions, NextOptions,\n} from '@xyo-network/archivist-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { isAnyPayload, isSequence } from '@xyo-network/payload-model'\nimport type { Request, Router } from 'express'\nimport express from 'express'\n\ninterface ArchivistMiddlewareOptions {\n archivist: ArchivistInstance\n}\n\nexport const archivistRestMiddleware = (options: ArchivistMiddlewareOptions): Router => {\n const { archivist } = options\n const router = express.Router({ mergeParams: true })\n\n router.post('/insert', async (req, res) => {\n setRawResponseFormat(res)\n const body = Array.isArray(req.body) ? req.body : [req.body]\n const payloads = (await PayloadBuilder.hashPairs<Payload>(body)).map(p => p[0])\n const result = await archivist.insert(payloads)\n res.status(200).json(result)\n })\n\n router.get('/next', async (req: Request<Partial<NextOptions>>, res) => {\n setRawResponseFormat(res)\n const cursor = isSequence(req.query.cursor) ? req.query.cursor : undefined\n const limit = isDefined(req.query.limit) ? Number(req.query.limit) : undefined\n const open = isDefined(req.query.open) ? Boolean(req.query.open) : undefined\n const order = req.query.order === 'asc' ? 'asc' : 'desc'\n const options: ArchivistNextOptions = {\n limit, open, order, cursor,\n }\n const result = await archivist.next(options)\n res.status(200).json(result)\n })\n router.post('/next', async (req: Request<{}, {}, ArchivistNextOptions | undefined>, res) => {\n setRawResponseFormat(res)\n const options = req.body\n const result = await (isDefined(options) ? archivist.next(options) : archivist.next())\n res.status(200).json(result)\n })\n\n router.get('/get/:hash', async (req, res) => {\n setRawResponseFormat(res)\n const { hash: rawHash } = req.params\n const hash = asHash(rawHash)\n if (isHash(hash)) {\n const [payload] = await archivist.get([hash])\n if (isAnyPayload(payload)) {\n res.json(payload)\n return\n }\n }\n res.status(400).send()\n })\n\n return router\n}\n"],"mappings":";AAAA,SAAS,4BAA4B;AACrC;AAAA,EACE;AAAA,EAAQ;AAAA,EAAW;AAAA,OACd;AAKP,SAAS,sBAAsB;AAE/B,SAAS,cAAc,kBAAkB;AAEzC,OAAO,aAAa;AAMb,IAAM,0BAA0B,CAAC,YAAgD;AACtF,QAAM,EAAE,UAAU,IAAI;AACtB,QAAM,SAAS,QAAQ,OAAO,EAAE,aAAa,KAAK,CAAC;AAEnD,SAAO,KAAK,WAAW,OAAO,KAAK,QAAQ;AACzC,yBAAqB,GAAG;AACxB,UAAM,OAAO,MAAM,QAAQ,IAAI,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI;AAC3D,UAAM,YAAY,MAAM,eAAe,UAAmB,IAAI,GAAG,IAAI,OAAK,EAAE,CAAC,CAAC;AAC9E,UAAM,SAAS,MAAM,UAAU,OAAO,QAAQ;AAC9C,QAAI,OAAO,GAAG,EAAE,KAAK,MAAM;AAAA,EAC7B,CAAC;AAED,SAAO,IAAI,SAAS,OAAO,KAAoC,QAAQ;AACrE,yBAAqB,GAAG;AACxB,UAAM,SAAS,WAAW,IAAI,MAAM,MAAM,IAAI,IAAI,MAAM,SAAS;AACjE,UAAM,QAAQ,UAAU,IAAI,MAAM,KAAK,IAAI,OAAO,IAAI,MAAM,KAAK,IAAI;AACrE,UAAM,OAAO,UAAU,IAAI,MAAM,IAAI,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;AACnE,UAAM,QAAQ,IAAI,MAAM,UAAU,QAAQ,QAAQ;AAClD,UAAMA,WAAgC;AAAA,MACpC;AAAA,MAAO;AAAA,MAAM;AAAA,MAAO;AAAA,IACtB;AACA,UAAM,SAAS,MAAM,UAAU,KAAKA,QAAO;AAC3C,QAAI,OAAO,GAAG,EAAE,KAAK,MAAM;AAAA,EAC7B,CAAC;AACD,SAAO,KAAK,SAAS,OAAO,KAAwD,QAAQ;AAC1F,yBAAqB,GAAG;AACxB,UAAMA,WAAU,IAAI;AACpB,UAAM,SAAS,OAAO,UAAUA,QAAO,IAAI,UAAU,KAAKA,QAAO,IAAI,UAAU,KAAK;AACpF,QAAI,OAAO,GAAG,EAAE,KAAK,MAAM;AAAA,EAC7B,CAAC;AAED,SAAO,IAAI,cAAc,OAAO,KAAK,QAAQ;AAC3C,yBAAqB,GAAG;AACxB,UAAM,EAAE,MAAM,QAAQ,IAAI,IAAI;AAC9B,UAAM,OAAO,OAAO,OAAO;AAC3B,QAAI,OAAO,IAAI,GAAG;AAChB,YAAM,CAAC,OAAO,IAAI,MAAM,UAAU,IAAI,CAAC,IAAI,CAAC;AAC5C,UAAI,aAAa,OAAO,GAAG;AACzB,YAAI,KAAK,OAAO;AAChB;AAAA,MACF;AAAA,IACF;AACA,QAAI,OAAO,GAAG,EAAE,KAAK;AAAA,EACvB,CAAC;AAED,SAAO;AACT;","names":["options"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/archivistRestMiddleware.ts"],
4
+ "sourcesContent": ["import { setRawResponseFormat } from '@xylabs/express'\nimport {\n asHash, isDefined, isHash,\n} from '@xylabs/sdk-js'\nimport type {\n ArchivistInstance,\n ArchivistNextOptions, NextOptions,\n} from '@xyo-network/archivist-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { isAnyPayload, isSequence } from '@xyo-network/payload-model'\nimport type { Request, Router } from 'express'\nimport express from 'express'\n\ninterface ArchivistMiddlewareOptions {\n archivist: ArchivistInstance\n}\n\nexport const archivistRestMiddleware = (options: ArchivistMiddlewareOptions): Router => {\n const { archivist } = options\n const router = express.Router({ mergeParams: true })\n\n router.post('/insert', async (req, res) => {\n setRawResponseFormat(res)\n const body = Array.isArray(req.body) ? req.body : [req.body]\n const payloads = (await PayloadBuilder.hashPairs<Payload>(body)).map(p => p[0])\n const result = await archivist.insert(payloads)\n res.status(200).json(result)\n })\n\n router.get('/next', async (req: Request<Partial<NextOptions>>, res) => {\n setRawResponseFormat(res)\n const cursor = isSequence(req.query.cursor) ? req.query.cursor : undefined\n const limit = isDefined(req.query.limit) ? Number(req.query.limit) : undefined\n const open = isDefined(req.query.open) ? Boolean(req.query.open) : undefined\n const order = req.query.order === 'asc' ? 'asc' : 'desc'\n const options: ArchivistNextOptions = {\n limit, open, order, cursor,\n }\n const result = await archivist.next(options)\n res.status(200).json(result)\n })\n router.post('/next', async (req: Request<{}, {}, ArchivistNextOptions | undefined>, res) => {\n setRawResponseFormat(res)\n const options = req.body\n const result = await (isDefined(options) ? archivist.next(options) : archivist.next())\n res.status(200).json(result)\n })\n\n router.get('/get/:hash', async (req, res) => {\n setRawResponseFormat(res)\n const { hash: rawHash } = req.params\n const hash = asHash(rawHash)\n if (isHash(hash)) {\n const [payload] = await archivist.get([hash])\n if (isAnyPayload(payload)) {\n res.json(payload)\n return\n }\n }\n res.status(400).send()\n })\n\n return router\n}\n"],
5
+ "mappings": ";AAAA,SAAS,4BAA4B;AACrC;AAAA,EACE;AAAA,EAAQ;AAAA,EAAW;AAAA,OACd;AAKP,SAAS,sBAAsB;AAE/B,SAAS,cAAc,kBAAkB;AAEzC,OAAO,aAAa;AAMb,IAAM,0BAA0B,CAAC,YAAgD;AACtF,QAAM,EAAE,UAAU,IAAI;AACtB,QAAM,SAAS,QAAQ,OAAO,EAAE,aAAa,KAAK,CAAC;AAEnD,SAAO,KAAK,WAAW,OAAO,KAAK,QAAQ;AACzC,yBAAqB,GAAG;AACxB,UAAM,OAAO,MAAM,QAAQ,IAAI,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI;AAC3D,UAAM,YAAY,MAAM,eAAe,UAAmB,IAAI,GAAG,IAAI,OAAK,EAAE,CAAC,CAAC;AAC9E,UAAM,SAAS,MAAM,UAAU,OAAO,QAAQ;AAC9C,QAAI,OAAO,GAAG,EAAE,KAAK,MAAM;AAAA,EAC7B,CAAC;AAED,SAAO,IAAI,SAAS,OAAO,KAAoC,QAAQ;AACrE,yBAAqB,GAAG;AACxB,UAAM,SAAS,WAAW,IAAI,MAAM,MAAM,IAAI,IAAI,MAAM,SAAS;AACjE,UAAM,QAAQ,UAAU,IAAI,MAAM,KAAK,IAAI,OAAO,IAAI,MAAM,KAAK,IAAI;AACrE,UAAM,OAAO,UAAU,IAAI,MAAM,IAAI,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;AACnE,UAAM,QAAQ,IAAI,MAAM,UAAU,QAAQ,QAAQ;AAClD,UAAMA,WAAgC;AAAA,MACpC;AAAA,MAAO;AAAA,MAAM;AAAA,MAAO;AAAA,IACtB;AACA,UAAM,SAAS,MAAM,UAAU,KAAKA,QAAO;AAC3C,QAAI,OAAO,GAAG,EAAE,KAAK,MAAM;AAAA,EAC7B,CAAC;AACD,SAAO,KAAK,SAAS,OAAO,KAAwD,QAAQ;AAC1F,yBAAqB,GAAG;AACxB,UAAMA,WAAU,IAAI;AACpB,UAAM,SAAS,OAAO,UAAUA,QAAO,IAAI,UAAU,KAAKA,QAAO,IAAI,UAAU,KAAK;AACpF,QAAI,OAAO,GAAG,EAAE,KAAK,MAAM;AAAA,EAC7B,CAAC;AAED,SAAO,IAAI,cAAc,OAAO,KAAK,QAAQ;AAC3C,yBAAqB,GAAG;AACxB,UAAM,EAAE,MAAM,QAAQ,IAAI,IAAI;AAC9B,UAAM,OAAO,OAAO,OAAO;AAC3B,QAAI,OAAO,IAAI,GAAG;AAChB,YAAM,CAAC,OAAO,IAAI,MAAM,UAAU,IAAI,CAAC,IAAI,CAAC;AAC5C,UAAI,aAAa,OAAO,GAAG;AACzB,YAAI,KAAK,OAAO;AAChB;AAAA,MACF;AAAA,IACF;AACA,QAAI,OAAO,GAAG,EAAE,KAAK;AAAA,EACvB,CAAC;AAED,SAAO;AACT;",
6
+ "names": ["options"]
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/archivist-express",
3
- "version": "5.6.4",
3
+ "version": "6.0.0",
4
4
  "description": "Primary SDK for using XYO Protocol 2.0",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -34,23 +34,23 @@
34
34
  "README.md"
35
35
  ],
36
36
  "dependencies": {
37
- "@xyo-network/archivist-model": "~5.6.4"
37
+ "@xyo-network/archivist-model": "~6.0.0"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@opentelemetry/api": "^1.9.1",
41
41
  "@opentelemetry/sdk-trace-base": "^2.7.1",
42
42
  "@scure/base": "~2.2.0",
43
43
  "@types/express": "^5.0.6",
44
- "@xylabs/express": "^5.1.2",
45
- "@xylabs/sdk-js": "^5.1.2",
46
- "@xylabs/threads": "~5.1.2",
47
- "@xylabs/toolchain": "~7.13.15",
48
- "@xylabs/tsconfig": "~7.13.15",
49
- "@xyo-network/account-model": "~5.6.3",
50
- "@xyo-network/boundwitness-model": "~5.6.3",
51
- "@xyo-network/manifest-model": "~5.6.3",
52
- "@xyo-network/payload-builder": "~5.6.2",
53
- "@xyo-network/payload-model": "~5.6.3",
44
+ "@xylabs/express": "^6.0.0",
45
+ "@xylabs/sdk-js": "^6.0.0",
46
+ "@xylabs/threads": "~6.0.0",
47
+ "@xylabs/toolchain": "~8.0.17",
48
+ "@xylabs/tsconfig": "~8.0.17",
49
+ "@xyo-network/account-model": "~6.0",
50
+ "@xyo-network/boundwitness-model": "~6.0",
51
+ "@xyo-network/manifest-model": "~6.0",
52
+ "@xyo-network/payload-builder": "~6.0.0",
53
+ "@xyo-network/payload-model": "~6.0.0",
54
54
  "async-mutex": "^0.5.0",
55
55
  "bn.js": "^5.2.3",
56
56
  "body-parser": "~2.2.2",
@@ -58,7 +58,7 @@
58
58
  "chalk": "^5.6.2",
59
59
  "connect": "^3.7.0",
60
60
  "debug": "~4.4.3",
61
- "eslint": "^10.3.0",
61
+ "eslint": "^10.4.0",
62
62
  "ethers": "^6.16.0",
63
63
  "express": "^5.2.1",
64
64
  "express-mung": "~0.5.1",
@@ -67,7 +67,7 @@
67
67
  "observable-fns": "~0.6.1",
68
68
  "pako": "~2.1.0",
69
69
  "rollbar": "~3.1.0",
70
- "typescript": "~5.9.3",
70
+ "typescript": "~6.0.3",
71
71
  "wasm-feature-detect": "~1.8.0",
72
72
  "winston": "~3.19.0",
73
73
  "winston-transport": "~4.9.0",
@@ -77,14 +77,14 @@
77
77
  "@opentelemetry/api": "^1.9",
78
78
  "@opentelemetry/sdk-trace-base": "^2.7",
79
79
  "@scure/base": "~2.2",
80
- "@xylabs/express": "^5.1",
81
- "@xylabs/sdk-js": "^5.1",
82
- "@xylabs/threads": "~5.1",
83
- "@xyo-network/account-model": "~5.6",
84
- "@xyo-network/boundwitness-model": "~5.6",
85
- "@xyo-network/manifest-model": "~5.6",
86
- "@xyo-network/payload-builder": "~5.6",
87
- "@xyo-network/payload-model": "~5.6",
80
+ "@xylabs/express": "^6.0",
81
+ "@xylabs/sdk-js": "^6.0",
82
+ "@xylabs/threads": "~6.0",
83
+ "@xyo-network/account-model": "~6.0",
84
+ "@xyo-network/boundwitness-model": "~6.0",
85
+ "@xyo-network/manifest-model": "~6.0",
86
+ "@xyo-network/payload-builder": "~6.0",
87
+ "@xyo-network/payload-model": "~6.0",
88
88
  "async-mutex": "^0.5",
89
89
  "bn.js": "^5.2",
90
90
  "body-parser": "~2.2",