From aea24b915606bbba12fe80a9c99ee141b01f3eb2 Mon Sep 17 00:00:00 2001 From: menonsamir Date: Tue, 14 Mar 2023 02:03:56 -0700 Subject: [PATCH] Fix local server example (#13) * update npmignore * 0.1.7-alpha.1 * Update local example --- .npmignore | 4 +- examples/node-local/package-lock.json | 208 ++++++++++++++++++++++++++ examples/node-local/package.json | 2 +- js/bucket/bucket.ts.rej | 69 --------- package-lock.json | 4 +- package.json | 2 +- 6 files changed, 215 insertions(+), 74 deletions(-) create mode 100644 examples/node-local/package-lock.json delete mode 100644 js/bucket/bucket.ts.rej diff --git a/.npmignore b/.npmignore index 48569e2..6628e1f 100644 --- a/.npmignore +++ b/.npmignore @@ -8,10 +8,12 @@ js/tests/ js/bridge/ lib/ docs/ +e2e-tests/ .eslintrc.json .prettierrc.json .prettierignore jest.config.js tsconfig.json -webpack.config.js \ No newline at end of file +webpack.config.js +cjs-package.json \ No newline at end of file diff --git a/examples/node-local/package-lock.json b/examples/node-local/package-lock.json new file mode 100644 index 0000000..2e5b3ef --- /dev/null +++ b/examples/node-local/package-lock.json @@ -0,0 +1,208 @@ +{ + "name": "node-local", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@blyss/sdk": "0.1.7-alpha.1" + }, + "devDependencies": { + "ts-node": "^10.9.1", + "typescript": "^4.9.4" + } + }, + "node_modules/@blyss/sdk": { + "version": "0.1.7-alpha.1", + "resolved": "https://registry.npmjs.org/@blyss/sdk/-/sdk-0.1.7-alpha.1.tgz", + "integrity": "sha512-0oPQsNaOUHCXV+1N65YgBcU6R8Fd1M2vIlZI6lgIXO9eO4cIK/fz8aSmJJXPWV3xPLPZoqzMCyrZjlMOBri+ew==" + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "18.15.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.3.tgz", + "integrity": "sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==", + "dev": true, + "peer": true + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + } + } +} diff --git a/examples/node-local/package.json b/examples/node-local/package.json index 0a0809a..cd2d216 100644 --- a/examples/node-local/package.json +++ b/examples/node-local/package.json @@ -1,6 +1,6 @@ { "dependencies": { - "@blyss/sdk": "latest" + "@blyss/sdk": "0.1.7-alpha.1" }, "devDependencies": { "ts-node": "^10.9.1", diff --git a/js/bucket/bucket.ts.rej b/js/bucket/bucket.ts.rej deleted file mode 100644 index 7baacfc..0000000 --- a/js/bucket/bucket.ts.rej +++ /dev/null @@ -1,69 +0,0 @@ -diff a/js/bucket/bucket.ts b/js/bucket/bucket.ts (rejected hunks) -@@ -140,6 +147,32 @@ export class Bucket { - return (await this.performPrivateReads([key]))[0]; - } - -+ private async getHint(): Promise { -+ return this.api.hint(this.name); -+ } -+ -+ private async performDoublePIRRead(key: string): Promise { -+ const idx = this.dpLib.get_row(key); -+ const hintPromise = this.getHint(); -+ const query = this.dpLib.generate_query(idx); -+ this.dpLib.load_hint(await hintPromise); -+ -+ const queryResult = await this.getRawResponse(query); -+ const decryptedResult = this.dpLib.decode_response(queryResult); -+ const extractedResult = this.dpLib.extract_result(decryptedResult); -+ return extractedResult; -+ } -+ -+ private ensureSpiral() { -+ if (this.scheme !== 'spiral') -+ throw 'Cannot perform this action on this bucket'; -+ } -+ -+ private ensureDoublePIR() { -+ if (this.scheme !== 'doublepir') -+ throw 'Cannot perform this action on this bucket'; -+ } -+ - /** - * Initialize a client for a single, existing Blyss bucket. - * -@@ -172,6 +212,7 @@ export class Bucket { - * reuse, to avoid generating and uploading larger amounts of data. - */ - async setup(uuid?: string) { -+ this.ensureSpiral(); - if (uuid && this.check(uuid)) { - this.lib.generateKeys(false); - this.uuid = uuid; -@@ -234,6 +278,8 @@ export class Bucket { - * @param key - The key to delete. - */ - async deleteKey(key: string) { -+ this.ensureSpiral(); -+ - await this.api.deleteKey(this.name, key); - } - -@@ -255,6 +301,8 @@ export class Bucket { - * @param key - The key to _privately_ retrieve the value of. - */ - async privateRead(key: string): Promise { -+ this.ensureSpiral(); -+ - return (await this.performPrivateRead(key)).data; - } - -@@ -268,6 +316,8 @@ export class Bucket { - * @param key - The key to _privately_ retrieve the value of. - */ - async privateReadWithMetadata(key: string): Promise { -+ this.ensureSpiral(); -+ - return await this.performPrivateRead(key); - } - diff --git a/package-lock.json b/package-lock.json index 5373a9e..ba8ea63 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@blyss/sdk", - "version": "0.1.6", + "version": "0.1.7-alpha.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@blyss/sdk", - "version": "0.1.6", + "version": "0.1.7-alpha.1", "license": "MIT", "devDependencies": { "@jest/globals": "^29.2.2", diff --git a/package.json b/package.json index 1ed9888..e5e5c96 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "author": "Samir Menon ", "name": "@blyss/sdk", - "version": "0.1.6", + "version": "0.1.7-alpha.1", "description": "Blyss SDK, enabling private retrievals from Blyss buckets", "type": "module", "main": "./dist/index.js",