diff --git a/.gitmodules b/.gitmodules index 76a402a..77f9f25 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,9 @@ [submodule "corium"] path = corium url = https://github.com/CoolElectronics/corium +[submodule "bare-client-custom"] + path = bare-client-custom + url = https://github.com/MercuryWorkshop/bare-client-custom +[submodule "Ultraviolet"] + path = Ultraviolet + url = https://github.com/titaniumnetwork-dev/Ultraviolet diff --git a/Ultraviolet b/Ultraviolet new file mode 160000 index 0000000..47dd8a4 --- /dev/null +++ b/Ultraviolet @@ -0,0 +1 @@ +Subproject commit 47dd8a4f7a21d963e6888064452d0e92d59272f0 diff --git a/bare-client-custom b/bare-client-custom new file mode 160000 index 0000000..d61a2fe --- /dev/null +++ b/bare-client-custom @@ -0,0 +1 @@ +Subproject commit d61a2fedf0a10c9eaf80cc0f4a6ea35d71156254 diff --git a/client/App.tsx b/client/App.tsx index 5703a81..74c6779 100644 --- a/client/App.tsx +++ b/client/App.tsx @@ -3,7 +3,21 @@ import { h, render, Component, Fragment } from 'preact'; import { RTCConnection } from "./rtc"; -import { setOffer, setCallback } from "./firebase"; +// import { setOffer, setCallback } from "./firebase"; +import { BareClient as BareClientCustom, registerRemoteListener, setBareClientImplementation, Client, GetRequestHeadersCallback, MetaCallback, ReadyStateCallback, WebSocketImpl, BareHeaders, BareResponse } from "bare-client-custom"; + +import { createBareClient } from "@tomphttp/bare-client"; + + +class AdriftClient extends Client { + + async request(method: string, requestHeaders: BareHeaders, body: BodyInit | null, remote: URL, cache: string | undefined, duplex: string | undefined, signal: AbortSignal | undefined): Promise { + return new Response("test") as BareResponse; + } + async connect(remote: URL, protocols: string[], getRequestHeaders: GetRequestHeadersCallback, onMeta: MetaCallback, onReadyState: ReadyStateCallback, webSocketImpl: WebSocketImpl): WebSocket { + + } +} export default class App extends Component { @@ -11,6 +25,11 @@ export default class App extends Component { onmessage: console.log, onopen: () => { this.rtc.dataChannel.send("test message"); + + let client = new AdriftClient; + setBareClientImplementation(client); + + } }); @@ -25,17 +44,19 @@ export default class App extends Component { } render(props, state) { - setCallback(this.rtc.answer.bind(this.rtc)); + + + + // setCallback(this.rtc.answer.bind(this.rtc)); return <>
-

Ultraviolet v

` +\n '' +\n ''\n );\n}\n\n/**\n *\n * @param {string} title\n * @param {string} code\n * @param {string} id\n * @param {string} message\n * @param {string} trace\n * @param {string} fetchedURL\n * @param {string} bareServer\n * @returns\n */\nfunction errorTemplate(\n title,\n code,\n id,\n message,\n trace,\n fetchedURL,\n bareServer\n) {\n // produced by bare-server-node\n if (message === 'The specified host could not be resolved.')\n return hostnameErrorTemplate(fetchedURL, bareServer);\n\n // turn script into a data URI so we don't have to escape any HTML values\n const script =\n `errorTitle.textContent = ${JSON.stringify(title)};` +\n `errorCode.textContent = ${JSON.stringify(code)};` +\n (id ? `errorId.textContent = ${JSON.stringify(id)};` : '') +\n `errorMessage.textContent = ${JSON.stringify(message)};` +\n `errorTrace.value = ${JSON.stringify(trace)};` +\n `fetchedURL.textContent = ${JSON.stringify(fetchedURL)};` +\n `bareServer.href = ${JSON.stringify(bareServer)};` +\n `for (const node of document.querySelectorAll(\"#uvHostname\")) node.textContent = ${JSON.stringify(\n location.hostname\n )};` +\n `reload.addEventListener(\"click\", () => location.reload());` +\n `uvVersion.textContent = ${JSON.stringify(\n process.env.ULTRAVIOLET_VERSION\n )};`;\n\n return (\n '' +\n '' +\n '' +\n \"\" +\n 'Error' +\n '' +\n '' +\n \"

\" +\n '
' +\n '

Failed to load

' +\n '

' +\n '' +\n '' +\n (id ? '' : '') +\n '
Code:
ID:
' +\n '' +\n '

Try:

' +\n '' +\n '

If you\\'re the administrator of , try:

' +\n '' +\n '' +\n '
' +\n '

Ultraviolet v

' +\n `` +\n '' +\n ''\n );\n}\n\n/**\n * @typedef {import(\"@tomphttp/bare-client\").BareError} BareError\n */\n\n/**\n *\n * @param {unknown} err\n * @returns {err is BareError}\n */\nfunction isBareError(err) {\n return err instanceof Error && typeof err.body === 'object';\n}\n\n/**\n *\n * @param {unknown} err\n * @param {string} fetchedURL\n * @param {string} bareServer\n */\nfunction renderError(err, fetchedURL, bareServer) {\n /**\n * @type {number}\n */\n let status;\n /**\n * @type {string}\n */\n let title;\n /**\n * @type {string}\n */\n let code;\n let id = '';\n /**\n * @type {string}\n */\n let message;\n\n if (isBareError(err)) {\n status = err.status;\n title = 'Error communicating with the Bare server';\n message = err.body.message;\n code = err.body.code;\n id = err.body.id;\n } else {\n status = 500;\n title = 'Error processing your request';\n message = 'Internal Server Error';\n code = err instanceof Error ? err.name : 'UNKNOWN';\n }\n\n return new Response(\n errorTemplate(\n title,\n code,\n id,\n message,\n String(err),\n fetchedURL,\n bareServer\n ),\n {\n status,\n headers: {\n 'content-type': 'text/html',\n },\n }\n );\n}\n"], + "mappings": "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", + "names": ["Ultraviolet", "cspHeaders", "emptyMethods", "UVServiceWorker", "config", "addresses", "str", "request", "fetchedURL", "ultraviolet", "db", "requestCtx", "RequestContext", "referer", "cookies", "cookieStr", "reqEvent", "HookEvent", "response", "responseCtx", "ResponseContext", "resEvent", "name", "header", "type", "filename", "clients", "client", "scripts", "script", "isHtml", "err", "renderError", "key", "val", "worker", "body", "url", "contentType", "#intercepted", "#returnValue", "data", "target", "that", "input", "hostnameErrorTemplate", "bareServer", "parsedFetchedURL", "errorTemplate", "title", "code", "id", "message", "trace", "isBareError", "status"] +} diff --git a/package-lock.json b/package-lock.json index b330a29..bf541ea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,8 @@ "version": "1.0.0", "license": "ISC", "dependencies": { + "@tomphttp/bare-client": "^2.2.0-alpha", + "bare-client-custom": "file:bare-client-custom", "corium": "file:corium", "dotenv": "^16.3.1", "esbuild": "0.19.0", @@ -17,6 +19,26 @@ "wrtc": "^0.4.7" } }, + "bare-client-custom": { + "name": "@tomphttp/bare-client", + "version": "2.2.0-alpha", + "license": "LGPL-3.0", + "dependencies": { + "@types/uuid": "^9.0.2", + "comlink": "^4.4.1", + "uuid": "^9.0.0" + }, + "devDependencies": { + "@ianvs/prettier-plugin-sort-imports": "^3.7.2", + "@rollup/plugin-inject": "^5.0.3", + "@typescript-eslint/eslint-plugin": "^5.59.7", + "@typescript-eslint/parser": "^5.59.7", + "eslint": "^8.41.0", + "prettier": "^2.8.8", + "rollup": "^3.23.0", + "rollup-plugin-typescript2": "^0.34.1" + } + }, "corium": { "version": "1.0.0-alpha.2", "license": "ISC", @@ -61,6 +83,11 @@ "tslib": "^2.4.0" } }, + "corium/node_modules/@tomphttp/bare-client": { + "version": "1.1.2-beta.3", + "resolved": "https://registry.npmjs.org/@tomphttp/bare-client/-/bare-client-1.1.2-beta.3.tgz", + "integrity": "sha512-WyIVnSAqzfrLejmOhh/l/LtDOeK+SHnBGi/z+QyliVP1T1JxoNE5eecwxlV+osM9J6FTAYVGNHr8/5bubaIj6Q==" + }, "node_modules/.pnpm/wrtc@0.4.7/node_modules/wrtc": { "version": "0.4.7", "bundleDependencies": [ @@ -3398,6 +3425,31 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "node_modules/@ianvs/prettier-plugin-sort-imports": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/@ianvs/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-3.7.2.tgz", + "integrity": "sha512-bVckKToJM8XV2wTOG1VpeXrSmfAG49esVrikbxeFbY51RJdNke9AdMANJtGuACB59uo+pGlz0wBdWFrRzWyO1A==", + "dev": true, + "dependencies": { + "@babel/core": "^7.17.7", + "@babel/generator": "^7.17.7", + "@babel/parser": "^7.17.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0", + "javascript-natural-sort": "0.7.1", + "lodash.clone": "^4.5.0", + "lodash.isequal": "^4.5.0" + }, + "peerDependencies": { + "@vue/compiler-sfc": ">=3.0.0", + "prettier": "2.x" + }, + "peerDependenciesMeta": { + "@vue/compiler-sfc": { + "optional": true + } + } + }, "node_modules/@jest/create-cache-key-function": { "version": "29.6.2", "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.6.2.tgz", @@ -4132,6 +4184,50 @@ "resolved": "https://registry.npmjs.org/@rollup/browser/-/browser-3.28.0.tgz", "integrity": "sha512-7U9WFjEArYZF0GVz/durys8tzBePwu4HkI5yxDmaRFn0B0qH1yabvworYZiGZYhevlZ+jDFAU4gKgF0gNsANDg==" }, + "node_modules/@rollup/plugin-inject": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.3.tgz", + "integrity": "sha512-411QlbL+z2yXpRWFXSmw/teQRMkXcAAC8aYTemc15gwJRpvEVDQwoe+N/HTFD8RFG8+88Bme9DK2V9CVm7hJdA==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "estree-walker": "^2.0.2", + "magic-string": "^0.27.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz", + "integrity": "sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, "node_modules/@sideway/address": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", @@ -4394,9 +4490,9 @@ } }, "node_modules/@tomphttp/bare-client": { - "version": "1.1.2-beta.3", - "resolved": "https://registry.npmjs.org/@tomphttp/bare-client/-/bare-client-1.1.2-beta.3.tgz", - "integrity": "sha512-WyIVnSAqzfrLejmOhh/l/LtDOeK+SHnBGi/z+QyliVP1T1JxoNE5eecwxlV+osM9J6FTAYVGNHr8/5bubaIj6Q==" + "version": "2.2.0-alpha", + "resolved": "https://registry.npmjs.org/@tomphttp/bare-client/-/bare-client-2.2.0-alpha.tgz", + "integrity": "sha512-xhcflOpwr92tkpp8SoDhB3nK3LHMBIjx+vgow37XobQew2k0/mXSxmaU7BsDFpOIa1CcLCEsR8gWn0v7Cy9+7Q==" }, "node_modules/@tsconfig/node14": { "version": "1.0.3", @@ -4505,6 +4601,11 @@ "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==", "dev": true }, + "node_modules/@types/uuid": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.2.tgz", + "integrity": "sha512-kNnC1GFBLuhImSnV7w4njQkUiJi0ZXUycu1rUaouPqiKlXkh77JKgdRnTAp1x5eBwcIwbtI+3otwzuIDEuDoxQ==" + }, "node_modules/@types/yargs": { "version": "17.0.24", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", @@ -5438,6 +5539,10 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/bare-client-custom": { + "resolved": "bare-client-custom", + "link": true + }, "node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -5818,6 +5923,11 @@ "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", "dev": true }, + "node_modules/comlink": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/comlink/-/comlink-4.4.1.tgz", + "integrity": "sha512-+1dlx0aY5Jo1vHy/tSsIGpSkN4tS9rZSW8FIhG0JH/crs9wwweswIo/POr451r7bZww3hFbPAKnTpimzL/mm4Q==" + }, "node_modules/command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", @@ -5832,8 +5942,7 @@ "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "peer": true + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" }, "node_modules/compressible": { "version": "2.0.18", @@ -6771,6 +6880,12 @@ "node": ">=4.0" } }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -8124,6 +8239,12 @@ "node": ">=0.10.0" } }, + "node_modules/javascript-natural-sort": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz", + "integrity": "sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==", + "dev": true + }, "node_modules/jest-environment-node": { "version": "29.6.2", "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.6.2.tgz", @@ -8541,12 +8662,24 @@ "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" }, + "node_modules/lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha512-GhrVeweiTD6uTmmn5hV/lzgCQhccwReIVRLHp7LT4SopOjqEZ5BbX8b5WWEtAKasjmy8hR7ZPwsYlxRCku5odg==", + "dev": true + }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "peer": true }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", + "dev": true + }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -8746,6 +8879,18 @@ "yallist": "^3.0.2" } }, + "node_modules/magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -10882,6 +11027,77 @@ "fsevents": "~2.3.2" } }, + "node_modules/rollup-plugin-typescript2": { + "version": "0.34.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.34.1.tgz", + "integrity": "sha512-P4cHLtGikESmqi1CA+tdMDUv8WbQV48mzPYt77TSTOPJpERyZ9TXdDgjSDix8Fkqce6soYz3+fa4lrC93IEkcw==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^4.1.2", + "find-cache-dir": "^3.3.2", + "fs-extra": "^10.0.0", + "semver": "^7.3.7", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "rollup": ">=1.26.3", + "typescript": ">=2.4.0" + } + }, + "node_modules/rollup-plugin-typescript2/node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dev": true, + "dependencies": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/rollup-plugin-typescript2/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/rollup-plugin-typescript2/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rollup-plugin-typescript2/node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -12138,6 +12354,14 @@ "node": ">= 0.4.0" } }, + "node_modules/uuid": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", + "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", diff --git a/package.json b/package.json index 4c4a5d0..61eb9fb 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,8 @@ "author": "", "license": "ISC", "dependencies": { + "@tomphttp/bare-client": "^2.2.0-alpha", + "bare-client-custom": "file:bare-client-custom", "corium": "file:corium", "dotenv": "^16.3.1", "esbuild": "0.19.0",