{"_id":"@polywrap/uri-resolver-extensions-js","_rev":"30-b4bd03a58ca18528e64a5143a4603e3b","name":"@polywrap/uri-resolver-extensions-js","dist-tags":{"latest":"0.12.2","pre":"0.12.0-pre.1"},"versions":{"0.8.0":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.8.0","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.8.0","@polywrap/result":"0.8.0","@polywrap/uri-resolvers-js":"0.8.0","@polywrap/wasm-js":"0.8.0","@polywrap/wrap-manifest-types-js":"0.8.0"},"devDependencies":{"@polywrap/os-js":"0.8.0","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.0.7"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.8.0","dist":{"shasum":"64851f0ab0c1234d324c879c6a762e5bb5b2548a","integrity":"sha512-FCwAX8caB9hreDVOzHWm3/ZRjteiXuFxW4rd4VgD4IVMuD9x3PYZ+C7BdA3kDz/JORn/w2ctaBA7EOcBGSNUoA==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.8.0.tgz","fileCount":19,"unpackedSize":31442,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA24/CnVNNRVyeFipSuBS/CO5wMlW6GuSLiKMzglvKKrAiAG4hb+1NENxoExywFlNZ0cYGCUKQPE62HB6Ym0xklgNw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjL0zyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrInQ//fSWLUhaRdJnS5EAB2sKM5yOOYxk0iXWq/XFaN46vmltRiYaw\r\nedVo1WIM6WzNh/z/gRqIb6g4QQP5qc3P8TqmAh5/+76OC3P0JitRGHo3pMqG\r\nhy0TfQCzjNnG+Zzu2TQ4zzmCzBaVyGHQLX+KC/zDoj50c6ro9oNz/ji7wbmB\r\nErj1Kx4Fwp9FAlsGlTQLwsMem/nvufmXfPRfPYSQFJi/8/XGHnGsem/PljEH\r\n7/Zpu/GklYSQuEm79Vz4+N7F43LIw3CF7mCIJDh+sFQ7j436nC15ASNa5exA\r\nade2s1j9Qfu8pFydXQEF1GQGOSEB4/YOCYyN4wzgYki4ZsdgKgpj4dlSo7Py\r\nuMje/nAPhSKVQr8mZql/rR+eS2KYG2ZIg9Ep+Kn4hsSyTxumS+UrI5w8BQgG\r\nUsrdgSxbpYXx7Hv3K2CTKvXyfUkaTlWSfvBbpkkJ5V5cYXNgkcx677uliZyP\r\niuKJURT0IKD7JhzRTc0Qj8O97T1YtTzgNhuB9KAowlS49dYRm3LTWPWxZTvi\r\nT4nJfsjmkSHjci1OyC016msusTtBOGPgXOgM1QwZapQroa7qat59MRuhyz72\r\n+R/L5lqCqsZhyHLvFiorH791qftouzXB2G9NngC0lh7jMOB40K/IEw9TkvZV\r\nGtiLw5phgImZdi88Z+mDREgWgJTybCoHWv0=\r\n=Stvu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.8.0_1664044274004_0.9310066005640367"},"_hasShrinkwrap":false},"0.9.0":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.0","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.0","@polywrap/result":"0.9.0","@polywrap/uri-resolvers-js":"0.9.0","@polywrap/wasm-js":"0.9.0","@polywrap/wrap-manifest-types-js":"0.9.0"},"devDependencies":{"@polywrap/os-js":"0.9.0","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.0.7"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.0","dist":{"shasum":"41bcd22c7cb96b58a29d9e6423f2e1ce7c1feab3","integrity":"sha512-hakYXUQPjUUwnXOxwsGTQGLBJskJ+ytKNZTUpGxoKgpGUzO20hrEI18O9wGf+I9iPUV4abXTbX2bpupIin3ycg==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.0.tgz","fileCount":19,"unpackedSize":31653,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEIZDz3y8KC1Y2vTkHyaDSVS+ZdAIoBO0hDw3rvMZcBnAiAZudIwOPY513LN1yADZKKnnfWNZ0KtUAl243lOFStfVA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQ+mDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmraPhAAj8lI8D/W8HMq5l4DDztV5gqgB2mG1IqAO50q31zWyfNe8mQr\r\nSEsUW4O4D//1358kERIGw8u621OVYt7cfhbypyfdk4s8ijXeAM3HRr8jzCpw\r\nHnVyffbqZ3n9OSxDSQ+jXsGQl3j+IzcyE9uTL+QAcHRr4ZkxhDaz++TfD0jO\r\n8dnQNQeIxB+/Hs5uF05eGts/Hh2oB8xs0IDrQeZWl6uNeHhsgFHHW9yettil\r\n7GpZvTt3FdbyWmvxU4XcXCpyLL5CtcU/ZKUUWvfR1CT/nTsyFvvt8U3uH4m4\r\nGWDnW+wJ7rznoqhoELxAJz8y7eu48QmLhuOensJJjlxrLanqodutfiBHvGyL\r\nCjIqDH3d26as82UOt5FxyrdtjmVkdsBNCkPRBxL5DTVuJA9GuITRiFZAPDdw\r\nM4OJz5t28m3ncgrNNsZypXlCtgBbCSY9N/9OGLq1ipdbYqnFQhUsOk000aAS\r\ngafewWlgLKAKrTLhA0en+AL3VB0YHhTNCfL5hZSfOWir40Lt+YW/b4Y7RA4c\r\nwggBBvyTSYFivVZHIl44bNykarOTDLIyaV02d/J2i3+sGxycZ/J4xgzYRYEi\r\nN74Iduxp6TEFuutQw1la8MneTsY/elDisScY+ULuT2trOwnW9kzYn9Hq52v5\r\na89DxSgwiq9qTlUUzl1XiPgcy/UafWu2Cnc=\r\n=+nIW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.0_1665395075590_0.45267863412581444"},"_hasShrinkwrap":false},"0.9.1":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.1","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.1","@polywrap/result":"0.9.1","@polywrap/uri-resolvers-js":"0.9.1","@polywrap/wasm-js":"0.9.1","@polywrap/wrap-manifest-types-js":"0.9.1"},"devDependencies":{"@polywrap/os-js":"0.9.1","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.1","dist":{"shasum":"91259a29b59f0ab95bcc893c3dbb1dffaf9875a7","integrity":"sha512-2CrzRuNJXXxr6y1kRjUXWTRgFI3XvjawYLSzrvQO6L3JXFTznGfjLqoE7AWdDiNI0reMaCBUX3nIN5y+Bn0RuA==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.1.tgz","fileCount":19,"unpackedSize":32657,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCb9IgN5Rz/iF4jX0SjzIGjuqZ+WkIHXUqAP3y4O37GGgIhAMQsZmyxNICCdouqTiWIxHGQBqWXUjlxs3N3c9oxtOvs"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjR0EKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqQmw//VbxKqNSsi1MipYMlkSM7jE7isZMhiVM0gm2e1e960HsDmvME\r\nSkI+YCSLNFrcCnK6U6xvDYnr8T3rXV4nV5aq7QYLliqBhmwXsTIFdZExj6Ud\r\ngkIUqaULGLzy+VlyBJWVLM1Wx67/9NNCSzA8xw2x5Q+U0j/NQNVw3lpOanwD\r\nTg/KQ5/melZMkPna9+R6cu9hBS3S2Xrun8b5Jbkf3Z+5a6MVRqRguS/nR0Np\r\n9uyT+80/aZ1aEUnx3HeM0PBz75FtSl4GPJ6O4ZFBGtf7HrrrY6pctJETKfzM\r\n7dAdC7qo6tH2oTxlkWYf7BXe5ICRFh+oFLmKG5/npZvHY65nckF0FSlJ6ZNz\r\nJbVpBsluG1FMAY83aOoPVDtvLaSqeGy9mE365ZIccbx0tLpC3VbjXSRXcaWb\r\nphXKItV2vVJPh1am6/teYYbylnUVbIYDc3ycIwYVeGwg35aLRdl4ndVledxM\r\nZaCLOHdUnpZna4Is8YoaoxNSGAxsjz4FjB+PmKL2Kgnncxd5F/RwiKhysUVE\r\nKZ7tqZKeHDI5OSFrWqFsoR7WRxGO3wzDiI/HkxWN2EhrveXo7uxCLcOLvIxo\r\nJifgYLpf1phkFaNfmxkGVptEtXiAHAJRmhNg3umrNvONNcCFZUs/UDFaUw0R\r\n8AASirsnCndYU9upR5AVdkATHVFnocTusok=\r\n=gBl7\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.1_1665614090511_0.3591464533155646"},"_hasShrinkwrap":false},"0.9.2":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.2","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.2","@polywrap/result":"0.9.2","@polywrap/uri-resolvers-js":"0.9.2","@polywrap/wasm-js":"0.9.2","@polywrap/wrap-manifest-types-js":"0.9.2"},"devDependencies":{"@polywrap/os-js":"0.9.2","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.2","dist":{"shasum":"da75cddbf9f2d934361ffc1d28612d6867501555","integrity":"sha512-tK+QaAPGneiMTL6kk49UM0Ep/CROZNUPPjwB91VXligD4NpcJfXLU9HKWY1EJgq6jvfZ05OhY8S1xP0l3OkpeQ==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.2.tgz","fileCount":19,"unpackedSize":32657,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNljNrI0XczIZTpteGuZXvYnRwQ3nEsbkvVdDvgfIcxwIgTWySp1t7E/b/tV8CdGaOcNUGjdH86ZpWWbhvGHbpN80="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjSJOoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpjLg/+OiWdJaFDf7evD0Alc8nYqhnPLvsGOFZiC6e+BaNwRgw2mxFt\r\nJ+9IKjzyO4tEiIw6Q1z9XGwYszy9bXbKd8ra7Ts9FuNjOzGHnQAmCd3Et1V0\r\nDGAfeXhRs5+SAD/YVKElccaSjdeDFC3l1TjB27DZAE6aXoghrleFOdfeL+jt\r\n5Yr0pM5MY1kJnnuGCEwv5N3MWLYrZoCYsfNTMZVvpkBd4kWBRxVjEVUp+xTs\r\nHW5U/r7x6/d6Bc4WXMaJZ/FKmiBsYULfJ/5kmN5IQGY7VvRfEGxEvTOkAiB0\r\nPEpnlDWx9MwGppaIp0hpWSKbt7b87I1WnqRQyYcx/5dZ9x7r9+jiKLFt7qcu\r\nGG0drzDkTSK1Jc5SkwNPjc+3J0TR75GY9spuIC5CuZz1ncvadR+/65x1mr6z\r\nK+Rdg9NWJJaGkf6Y7NcEdD+1YGA+SFCj33RoIwD20vv81eBphaSsfQOLWF4Y\r\n2/cVvFzunnUbAH2Pir5ZI4hkk5jYaApVzxBR7PsVRALZTF49X/Bc3v/MyjGH\r\nkmWmPMWCJOzUjnbyx7Q7W30AGBMAGAwVo4bWbGv5p/5Rn2PsnI5WU7TtCfXz\r\nHqdjNdAkecbqL6fBXVi9QjrEVORJKZuHJqWHus8veMphYsfPuzVCh4Dty9dZ\r\nDbpCw7aCvGXiYL1XLZe1hMJU5mxCBuYSyXs=\r\n=ilPJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.2_1665700776627_0.7459548739118145"},"_hasShrinkwrap":false},"0.9.3":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.3","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.3","@polywrap/result":"0.9.3","@polywrap/uri-resolvers-js":"0.9.3","@polywrap/wasm-js":"0.9.3","@polywrap/wrap-manifest-types-js":"0.9.3"},"devDependencies":{"@polywrap/os-js":"0.9.3","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.3","dist":{"shasum":"65c3cf7126fe813aa23b81de2abcfefd63101126","integrity":"sha512-WPT7nHi7AjwIRGpmdWefR0pxCkSt+p3fWdHuNvhol63+LrZoM+tfTPFYVQZpj9I8Cw+rVf0ZDWBbvSIHkFugpA==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.3.tgz","fileCount":19,"unpackedSize":32657,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDimr9vBqewKSsYJz/RP2hkgtuHJcNX/SeFu62ARXplEwIhAK1i73+nMM9lDlI69/qTzbkT5yiM8HsmO3VN0tsXcggJ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUSPrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmralRAAnCogcLJ8V3WgBHB4LuUDdvRBsYl8WqB8NqkENkDX6lj7LTua\r\n85sAsaJp2uNHfKR5+Vd9h5BrMOpcbtqECPOgXOeR86sbahZe4sl8CJp+8cPm\r\nZz+iJqyEci9OyaAsNLdZX9LueFG9+FkZ1Yu+rs3Pfhb9MnEh33a6lVUrdaTF\r\nLyGIumHHp6M6PyHMaaYUXsYzzzMDM+5DPVZfbOXqK+Oa+6DrGL58bQZJI+/t\r\nFuOI05z9/yAO28cKRPU59vrubg4mdNZnS/p0iSyLxg2nbJOIkBsWg7rmBHsj\r\nKmaa+VgEsCdQ0x49XcQe0yX/U0s7bqir32PMRYvULNL5h9cSyAOJ5RqUBCL0\r\nQESS32HNIkheJzAwxRxFkMddqUFt9Nj9vHwuB7H75HVoGn28x4lxO9M7Wb97\r\nZpM02E0bG7JYYPIE7BnHQocUw7i0BC3m1kJaKwYrkMS7tbS2owEllepJNQXd\r\nt+Xi0X4N8dIlysxDTwxGeTuVzYHbkrB0JVFxC7EPbq87X/z9RqDqsy5NbWEu\r\nny3nqz3ayP0F+wf6H3cUakXhj3ANDN3enYCg4e66TznM1RxuZsLKMyQHif27\r\nfeqdHBKc67DxBC+Ol2PFiTdPLqwJNvEmT6YG3wJ56gji7P5s2fe8sWPVVyot\r\nKdopsN9G3X1oiUfLvRPymnZr14gUhUWXlE0=\r\n=gX8r\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.3_1666261995232_0.11575034736081546"},"_hasShrinkwrap":false},"0.9.4":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.4","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.4","@polywrap/result":"0.9.4","@polywrap/uri-resolvers-js":"0.9.4","@polywrap/wasm-js":"0.9.4","@polywrap/wrap-manifest-types-js":"0.9.4"},"devDependencies":{"@polywrap/os-js":"0.9.4","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.4","dist":{"shasum":"5e3e7ad0d10b2918d3c65620167c18ebf888a230","integrity":"sha512-pEQwAFfqyzCMdupUwVi1piaG1AspB+ONPE9OSDzz5wft5W+PIyy8EG0DlOartphsxsuQHFrRn2gfElON3hklIg==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.4.tgz","fileCount":19,"unpackedSize":32657,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlPjLTdKu4y4udDy+MXO2ix4zzkMzoY9zYxiB8LRV1NwIgM1s32Vyp33OAlhEJS33fh/lWADQDG8RpTnUrSppv+jc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZG9SACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoUYw//QHTpBVOWTAax10o3boIeNFxwpvSRfYPb+ERCkLnSi9TaXtvN\r\nnB/j6ErH4Elv2GZLvYPUTil6dcxYyaAvhxAiWrHXKIpKuTSALul4FCSww2lD\r\n/dPbqKYln5Y2gWH1I4mQ9CvyRZ3yPNtJawSaK969/ja6fL+xUftwvhhYDoDn\r\neJu1bWHs4daobPbqd2qLUTG0YCrrpzHyTiEP3cZ0ZJcAYV/COLRzhsK4Qkcr\r\ntkuS/TZe+fy6tgiB07UFy/wN7abgPD0Z5nL7RIx5fyH9SUSf1AOLcKUiL267\r\nhmQByDHYqgpYFHUEcY2W13QCauL+YGBPrevxnPzNAJbMipUUZ6pB2GCXNtRc\r\n35Fr/epVlA5TiTNX2En2/dsaaRdthJMGbCaKAZwHf5xPy7522EbpVMu5vcgS\r\nxKhcjRurT1iHVhD6PuMPjQz9L2et38Ui5tSjghXWZVfvy+/kPN5ULeTpy222\r\nSLcYVu4p8uo7MopPDIkPM9hPbZTHJ0JmaCzAAcF4roSeg+3ck1MIuOmn6uDs\r\nUJMtmLf5sCYewq9+A7onQ7BLhLWurajSo+YWqynk8ASc3Tb+8aafFUrUYJB4\r\nGSZgBnip1O70HXHyXXroNsaGLAyjGM9bLzqOgXR5af4786zMXikYO51JzUvs\r\nsJTawbXzI9kQf9YePpryu/XGMyPks+rPmEo=\r\n=GjwR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.4_1667526482399_0.6381696018112586"},"_hasShrinkwrap":false},"0.10.0-pre.0":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.0","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.0","@polywrap/result":"0.10.0-pre.0","@polywrap/uri-resolvers-js":"0.10.0-pre.0","@polywrap/wasm-js":"0.10.0-pre.0","@polywrap/wrap-manifest-types-js":"0.10.0-pre.0"},"devDependencies":{"@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.0","dist":{"shasum":"41b99e4ee96c9f197bd22cd2fd46f6008c1a6f1e","integrity":"sha512-K1E8v9vB6zddZ4sfLOmRigQ2vkJa5iWTRDW0JrMdz12AxcRBHDW15gCsYpRY0mOZ563r0bCcvStZhGHEjUag6Q==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.0.tgz","fileCount":19,"unpackedSize":32898,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC4fKbebJwqTd4ENubBnrU3uC4e7KCqNex5YkJOfj5yFgIhALpcjXAXGXhFuFY3ubicttxjkM1PcLQCXNH5TAX8YOKZ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZg+aACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmouQQ/5APGdFxKHnP+jhhFD2eeMQx2kRfWKCjT3aT7z5cLQ3NDQuV+J\r\naPPgcs9gvrn8cUIQ64Gf+bDs2IwnNMM6+mi/wzs9uNbmjvbKwUtK8Jf/mFD5\r\ncPahnmU84MAP2kPK8GFySnVvWxtyAA+ZMWT6IVJNHWqxXZquAvAlTnxw3EPM\r\nyqQLBXon6IfE3GqMU2wTyDnDo9BD+8epfbfnpofdpEsdENH6mfAVp6gY8OZC\r\n2lyEr0hgJnNTlP+tuOerNKKutK/v4KYaZ8l1Bpbci8EkekyXwGF7NP13qaA0\r\n3DpRqexr8D8b5xxMlSYhljz0XZwiA2JcxdOuSGN0piGNvd63SqmOhOe7alKr\r\nJ7zofR91YtPSW7vpbbj/xeG2y5QNxTLzuTu92z6DLO0Ae/Ecpt/cKNUUh+J3\r\nqfHmuvqjhHRG6QDvx0Jmt8zolPFcNsZXQc4gq/c8LNAKAXsjGNO00Sw9cP9I\r\nULS6bOVLPUetihCV3dMUJrzW5/QN5kV3zjoZgiQfLxNHf9FMFTmLP+5gmISJ\r\nwI7/Kf79O5Tf1h75/AES3K2q68dIBJjDOFF6zYjH79qVTHYaQpux1c4kW1q0\r\nMTb8M/wPACRg+xrzgxKiBnLirszqA1+Eyqk9zCrxRo/d39SaRAyvOkBIjxpX\r\nbEO131VdYI3yg6Fsz012d39ICMHXZWtAy+0=\r\n=W9gp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.0_1667633050389_0.2422956226408317"},"_hasShrinkwrap":false},"0.10.0-pre.1":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.1","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.1","@polywrap/result":"0.10.0-pre.1","@polywrap/uri-resolvers-js":"0.10.0-pre.1","@polywrap/wasm-js":"0.10.0-pre.1","@polywrap/wrap-manifest-types-js":"0.10.0-pre.1"},"devDependencies":{"@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.1","dist":{"shasum":"499a76e7b08ed976f10985a5679241faf3f8dc5d","integrity":"sha512-O5DZdOq0S/J902DoMblwXxvVlSiLdckI8MWODhM8ZG7L+WHmAzPlwhmxdgsvFVZTqX0mlez2V7eGxrsbEWUzKw==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.1.tgz","fileCount":19,"unpackedSize":32898,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGjWj4nW+30YIa1zlExMuBGPoHUbjauvooF2DxWGLmTkAiBj7kmESYK/6iy4ZYfCasy/J3evuOIdRGB0Wx+OtNtH3w=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjb992ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo57w/+IrBG0VETp7nEGNudd5iE01m6umsS5wNinWKjcDSbZ0PyjWoO\r\nui42C+QFjpGqmBHzkUn0PW/QgW8R/Va72EdaLNtKaIkhmv92oUnsPoOKneX3\r\nMDN2jaP/W0SuvpNLOQHZWxnu3ab+jEb2oGssoUhM1FH5KrFGN9ulgupivO3F\r\nUBtya1zmTMievnPOgQ3xrW7F+tqVkwhiEK+6GC3k60eCT8aR6codBRTePfbW\r\nKkiUNhLfNrXdIeSJ5B3pRfJW7v92xt5+12aGxGICu0Avw7imrMf1StQTfzcS\r\nM6yhfGsw3VTwzoFUAxr0A8Hetsg6arT2TEJ6RJWbHpSZjxHw5igFTjmlBx+x\r\nrluKnWpAlFcOzz0ievq6uMoOoXlbWo2tCZh8Xdje+9V9wRQApwHV/i4TqD/d\r\nmlxluBIZUqy/um8TNS/PQh99WIIwjr0WdH63/+N3iaaLmPs8SD8OQYBsZtsn\r\nZMyL2F+FRPPPR/fqBsPXfQAGx5erKwiYu9X3Pr72T9kz/2WxPXJVAId9HeEt\r\n4ONzvVOuvg34PXds/1BlrINYfoUyWS9wWYl6F5dbdfSPempClAiEaR20ukls\r\nKc9B+BBmEpfAz0wqdoyXZhdv4sRu4Q93aYRUT0zlUCPG2E4JxADZt4+ezN+R\r\n0wa+pY7I5bh+VYGLVWUksoUP/CJiPqIviC8=\r\n=JA5I\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.1_1668276086530_0.9367622044814563"},"_hasShrinkwrap":false},"0.10.0-pre.3":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.3","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.3","@polywrap/result":"0.10.0-pre.3","@polywrap/uri-resolvers-js":"0.10.0-pre.3","@polywrap/wasm-js":"0.10.0-pre.3","@polywrap/wrap-manifest-types-js":"0.10.0-pre.3"},"devDependencies":{"@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolvers-extensions-js\n\n## Description \n\nPolywrap URI resolver extensions to customize resolution inside of the Polywrap Client.\n","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.3","dist":{"shasum":"96817cc186e67bc3176e1ac905c40befee672114","integrity":"sha512-w+Q7b679D5+yAbN1/kR/twwBYZmQlzR7LmqeZ/8MvZ1kPh3rpENorbLI3SgKI8cWw9LrfuHNLTvk/AS+3NvwCQ==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.3.tgz","fileCount":19,"unpackedSize":32898,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFBO9gyLhmU1cTfXCv78VUTqrVkdwUPz7/+EBs02/M/jAiEAtHl7YIRzWojUzwcaC3DwUEaDAF9lyp8EmcvPZYRz4aQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjcDyIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpDHA//RlvPitxsNqjfNt6wUT1XXKbt5yEarPddGLGS6aCuyGqp0l5p\r\n6aa3JNknW8FK4GhdmI+8Mcnxpj+zpblmT3FXB21eGC1EIVkae3A0GoiEybYi\r\nAzGlORvo3gEDKPd3Hm/b1f+xr816xd/xP+mBkSMUXQHCyKe0daBLlpx490xP\r\nzhx7H3zGMS7mSSAb8WmdM/EoOipjjvoUCxkICDOlpKBp5OTYuE8NEejLmAKQ\r\nE6799uQkXHyuGHxJoP3KA0krICmGJSVnmXH4ZGCIoiZC1/07xtKwhcXAIDCp\r\naKTMsRDxx+SSTNWnadH+RrJ+Dkbl3Qc9Lt0HZzxuVuG1U508fFVeqfbX3rsF\r\nWYJsdbx985fvv6NBIm8NOs95CDdLPbAOsylJoFEELAyKH6E2w12C/xGPeS6a\r\nDNYbZ3+jteIJ3IRQsQfE9IFu64tO8tcVKo7NWIJfLBLJupVfafjf46ZEvK7r\r\nYuIoWoQbSdMHJ4CAcSeAxS8sYCBvfADgcMaOA/xp/P3GNKOysrKm/3CiTtpm\r\nKyVTbIx57mi9b3VdSfQjHwwDifJu9VNG6RjviCBcGGEDnhdct2DcgPFz3HA1\r\nTYX5z6HiI/Z65YgnLrAsOjZKU40omQBNlOcl644X+KPJypGOkGBVNaKvfpnO\r\nbF8PB4kqwXFyrrmHJm5GcsXhDZNRWfUkWhk=\r\n=SmnH\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.3_1668299912072_0.1525425951891788"},"_hasShrinkwrap":false},"0.10.0-pre.4":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.4","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.4","@polywrap/result":"0.10.0-pre.4","@polywrap/uri-resolvers-js":"0.10.0-pre.4","@polywrap/wasm-js":"0.10.0-pre.4","@polywrap/wrap-manifest-types-js":"0.10.0-pre.4"},"devDependencies":{"@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolvers-extensions-js\n\n## Description \n\nPolywrap URI resolver extensions to customize resolution inside of the Polywrap Client.\n","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.4","dist":{"shasum":"57ec6365b4b0bf5ec3cc33bd7670f96781e1452f","integrity":"sha512-ptMre+C5vqx9FSrbRXwpOg2vYQuQUhBAL2cDuVdLfXWM03vowJD/v4XVPrip+8ygqxm9IYf/Wu+bSJLf+Tv0UQ==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.4.tgz","fileCount":19,"unpackedSize":33132,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2n4afPT6NDylVPPCBB0ejoL/dmfEX55m72CBJfOkKxAIhANGVVs+OQoEaWjj7KBgFYKZZNwc/4ixgy4S/C2Cfy52A"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdSrAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmobFw/8CPTyR0GCQuZtcf3AkxQz5At+Iv91CXSGPFtAYjW1FKH5BbHT\r\nYREFTZuqwkkx5LrNinMA/gaJhgB5XLj7wBMv8zeRYZL3MliDBT2SHY9ApsnW\r\nFjc7adbXCc7FZBWBlFieByUkN/ADPHmRKcyZwBGCZ3v5x9zCjZrU1yc+DkCc\r\nZxJzMskUYhjihvnL8rZzwQA4q+DqImnCWtNuc0wCT2D90C6yXbJB2Bmjj9V8\r\nmPabSnTeRQ32hzAlfVnKCuELnu0IuJZo4oNI4INqIgRm5dCKzeoR55Tr7Vux\r\nKemr1ogUeVk1cnBWhQXnrXITv6QS7xnFoz4JgXj3i+sO+SZAELkVKrGly9LF\r\nMQ4Uj0BueiuudnSz4B1iRtIPMsm36Ca6/MV95A/q6mYDjQUlRyLJEHxdbUgF\r\nONuIB2C4qaPiYQQ5BLhH9+d46R0Dgw56f343KoNEjp2gUTUunTVOu6i/nkeM\r\noeJyEi01BtdFuroWFKLnVEwNI5coZddWhqSFbhcZH+orUfkP/SoMOiqkiuBg\r\nQZwMmnYUR3foWxkf2CwcR/V8ARaqozdRD02pdNlLND9nQpeUnhGtlBSUWQiJ\r\n4mtQrEbdl00hmIRI4LzCofOxe2b8ycuVtBj+Ye4sHvGkKCIi9w2dtqZQvK3e\r\nzLAMfWzehpeVZUXUdKkrRJhLsCCuxkN1sA8=\r\n=j1pg\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.4_1668623040302_0.6761711539130699"},"_hasShrinkwrap":false},"0.10.0-pre.5":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.5","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.5","@polywrap/result":"0.10.0-pre.5","@polywrap/uri-resolvers-js":"0.10.0-pre.5","@polywrap/wasm-js":"0.10.0-pre.5","@polywrap/wrap-manifest-types-js":"0.10.0-pre.5"},"devDependencies":{"@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolvers-extensions-js\n\n## Description \n\nPolywrap URI resolver extensions to customize resolution inside of the Polywrap Client.\n","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.5","dist":{"shasum":"e7a8d445f4406407f62b88788631dd95ec5461cb","integrity":"sha512-dMGYdsuzVAqwEWxpuRjYtTx+00IFwwZlTClqI7RyFZLIO0TFyhcJXRgu25dVS0/VZ2B2h0EVg0Fm8EncLmjeuw==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.5.tgz","fileCount":19,"unpackedSize":33132,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5V4mX8DddDYIbty/Y0S13Al+em+Cr3OwWbwyGd/dOzQIgKHHPpCnGjzXZNLGi0uSaF8Xf8Nwtp+HN1RmHbd7o4pw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfFScACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpKBxAAmkmG5UBwWrXfbZ8AuGsIn47gJNDtG2cgjaM0amD32RFpsJ07\r\nXPQcdX2LRIyVEtN26YQKigi1uS6+g+56B02MGwzYLfn6/HzGC38YimYoHPJf\r\nJ2lAUKtdQQn1FnBzLX7zqZEQK9kWxfybJ6O9xIht6OGlYYhH5T+3y91RqTeU\r\nZ2GM61EczJg95aDuzBaALktLm0zxcaEEZxBZMLd6X/7xJuDooYtxDDNWRBKw\r\n+QsAHBM/osj/x223Loqs1g7iLQWd4tFMGqS/C1fYwLfA/jVryp4yRUny1D4H\r\nnkCR38gN6weWBBdll0N7WbVQM/JvVvM8JlYkGlarQ8jC7yp9l4WeVPAmNIck\r\nSSxflwRXRm6SofkiLvqyVcFIoOWF5nwXXmYQEzmp07/T7tUDBjLcI5Bi/JfC\r\nhCiMGkK6V/eL+lRFDL6dM7O1wRjmZXkR3EWpWVzlTH7MY2MKhNNBxDEpKTMi\r\nQ+IDzclTgU5EZUVYdsH3BWs0fViy9GbV93OqPjRH6mjRlIKKmFc0PajyMDVd\r\nB3SZ2XCBpjeCL1/iS1itIqZhHCoFklqSHxtz8rvczATV0jrYswj/oRs5nKQa\r\nrNWmJUveIymAY+dA2tZCpd1ZgRcIbpbQ2r4IroO8VIxUiGy/Rf0RlJMroX4m\r\nmKE0Og4afEqM9Mj84w3jYKVyPNucbp4O+1Y=\r\n=YAvX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.5_1669092508547_0.6690001770246472"},"_hasShrinkwrap":false},"0.10.0-pre.6":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.6","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.6","@polywrap/result":"0.10.0-pre.6","@polywrap/uri-resolvers-js":"0.10.0-pre.6","@polywrap/wasm-js":"0.10.0-pre.6","@polywrap/wrap-manifest-types-js":"0.10.0-pre.6"},"devDependencies":{"@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolvers-extensions-js\n\n## Description \n\nPolywrap URI resolver extensions to customize resolution inside of the Polywrap Client.\n","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.6","dist":{"shasum":"45ab587ed00c47bea8ffa5ea227d654694dc66ef","integrity":"sha512-pS0PeF3SVDFn5DWSSeAiK5G+pfIzxrlu8EXk8F4xXdLXCQV93rTufLNUbh9XudvTmqcqgRC8CefvrnWI4sK7bg==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.6.tgz","fileCount":19,"unpackedSize":33612,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCX34Hd12YA5BUd0dtLlWH07f1Pb/bqX7ezpNslfBN52gIhAPWzgRKi+66pIKYZ6fMoXMfEN4hQPmr52hRL//N4Xa3I"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjoT09ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoP4hAAhvoIH/jMx9SmjSYmj0AAIvVC57oXnGjNQ4EgqFge4K9S4PMv\r\nMXgOhESs08/bLEERtlwDrnjwPiK53kaEUzAHTNSncdHUqRjeb22AohU5XONK\r\nQ/T/zvWaxQuvRZAbFZh12NQEqtsOZTE93xBnzYynHOKHvJg63MOWiIqf+N0H\r\n2xNOywtSLRva8lZLhQIN003JDINC5R5nUPWivpp/i0+jbFleopdsMvm4dLb4\r\nXq6ItWtzOApbccIVbyZnbbURGekdJTabpd2O/Ymf7osHzQmXo6+PZxtcY4ak\r\nqFio//q1ne06L8Pu5RpO3P4UC0gTW57HVEN1frOyVxND/wSwEqSasIWdJJ/p\r\nlRAMRwMFdGlw2bIbsPqNKRQrvjrL4hu06QMnJQo7dScH4KTNQPEmESUemD7A\r\nfOIwyzwDgSWmHWaBj3RL/bHAvqLuwaQ1TDkgWWpRfa5PsUo/SB1kZNymSGeq\r\n/UQeH+JxDLKz7GxNZXN8kVw2J8+UZ3sGEoh1o+g+8mAFtoK42r1dtQDVp5su\r\nAYcjUw4AiOWGgEwVaxI6irAWNf/CRoDG9AWBuiK0xFOcdz+a5y9/jAavtbyx\r\nnbZdYS3bVu+wOOHZLcHiWPNJ+zW2ElxbcwQXVtd1tf8WHemJuvrGZOltT1cu\r\n5+DIB6RwDmCkTEM+uaF75JIRHIGcRI0FG+4=\r\n=+IoS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.6_1671511357110_0.3574924180209349"},"_hasShrinkwrap":false},"0.10.0-pre.7":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.7","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.7","@polywrap/result":"0.10.0-pre.7","@polywrap/uri-resolvers-js":"0.10.0-pre.7","@polywrap/wasm-js":"0.10.0-pre.7","@polywrap/wrap-manifest-types-js":"0.10.0-pre.7"},"devDependencies":{"@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolvers-extensions-js\n\n## Description \n\nPolywrap URI resolver extensions to customize resolution inside of the Polywrap Client.\n","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.7","dist":{"shasum":"e648ea74f94953ccc56e4fe04311d5335fb333a2","integrity":"sha512-B0yxYizkCwHWM3N6Qa2CCCCNQdNbhUSx+yBCbdt0bSGSkjj+zunY6vcHIaNDs75mgMpxUhziX2hS5eLNsyWQTg==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.7.tgz","fileCount":19,"unpackedSize":33612,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVkDQCt5qz7pNCb6bfdsQn3zNtiwwOhnf6n/X2uUEHuAIgdd/xCJom9PnkyrnTIOOvU6/6VTz/IMBDhfvwfoc9NT8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvhvpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrkTRAAn5RCPJdPjLZm/RcFa6M5rocTMlFbm+6rQhRUjyYdHMaPziwu\r\nsRQ4VIoUwpRaDttP2cQ0GC9aR9CbotZOmvT7d6+hgf73iHH2ky64kIDZJ/p7\r\nQak6wsjhPzSFsevlrJ4ry5HUnvySwUPDjdRf0mNvIijRuca9qaPts5+WrjV5\r\n/hXnJCtVCw44wS4nFgeDM0KVNQFrKH+2as4hHReqVr/X5X0muvJgeNPLjtdL\r\nk9nZQzKRLfu/X1zmUegL2jlRv1CRPfQ6MWeEUcc4QyxwN03u5viIuyPvBgmj\r\nKErXvpQN5Vb4F/4WuFCW/4iWOAsQseIhThpwo2wA8ShkqfvKuFSnk+wDza63\r\n6iMF0+tOJok8HVlurvxRLz9fZVEmu5S4CADiZuFOj4qqI8xHRDYDwZQAMbr7\r\nZOFH8BVGtki8TcnYZon/wTw7+4RBwd8IL0VZsZwp4TguCAhZfb5pvkTqbqVW\r\nWv0rVrCgfuriBhNUVib81QjawTo4gCSmZZYEEawQEkIwiceIfoshSIp5CfKM\r\n8stXYmZ1NdfuM1CglJaE2T+UkJb2o8vochtaeaa+ieoN1c76MD32jEtmHzB6\r\n/QbFmv9xBXu0dov6EapwgZGdyWEjnAiQ4+TcUpRCZwQ9rcAIx9E4tKn49DZE\r\noaPA7qiXpSMyLINk+n7h+rPUjtUY5ULyAWM=\r\n=AGN4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.7_1673403368930_0.11426380009339931"},"_hasShrinkwrap":false},"0.9.5":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.5","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.5","@polywrap/result":"0.9.5","@polywrap/uri-resolvers-js":"0.9.5","@polywrap/wasm-js":"0.9.5","@polywrap/wrap-manifest-types-js":"0.9.5"},"devDependencies":{"@polywrap/os-js":"0.9.5","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.5","dist":{"shasum":"b2d2b2f83eaee0cbee5faa243665d6888d8c3fa5","integrity":"sha512-FuyXDUwtKStwXyfOeraVJDA8jNTZeIdW65LxvA9tOe2Ihdihej/mM+0H4W1ZhYLTrkm7s2UT4ZPVWP4F4WlhiA==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.5.tgz","fileCount":19,"unpackedSize":32639,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDq6nwWwd9sCjE7eMgWfcMV0pp4WbeM8UJnPrf2F210qwIhAP8KaQCYkhTV4wuuWb7paZVDh4ssyoqUVQk7/DX9hTI9"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj5tIvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrrVg//RjiXrpzT7eZ4BMEmsk3zi93w4i7uYduEBWlHAEO9ntY3FzMZ\r\nJKwQB23NnFHccXsIkgo5Au7Zj0gy27eaL4+pwrGJ/SKiQn54QiMk6LIdIZW8\r\nlmqMNjOYakcZ5ggHkiXFDgozW+Hwk6SALT9VcgWQmr5QvTa1AxpSngHRNZub\r\nXScukLHpyU2Xu06RUozoPsx9IIMa2FZh5A23to8jStTiyNyjbwTymxa+akU2\r\nkFuvc8XH50ysoY+wNWD3QVw4EXIKQ53iZkgW/T6FFdBVOTomDuRsekvyaf17\r\nOG4T+DJh8QJ4ILVB8+f/OMD4BAfsmgxR7/wvI4Iv7egVfal3Hxr7VYTacFS/\r\nBaBLVbYudO5dtiXxsGL7gnYZ20EC1Dqd7xuppiSSANxb9Aet3qsctXNeNtaX\r\nAWlROx7wxhuEhzGLySs2YFfeJfQMG9esog45W3tvfUfryfOCbgnaLD2bpHOV\r\n9LsJBpC2GlIm3u0bf+iEo50jvgsGgQkP6Hupjtp08OEOGLlNC+3NaDWKxYuD\r\niJryiL9/c/vLAz5Rgc8D3FHw2bLr1506lXNQA0GwkNUJ80If727EsNwnSFr2\r\naOhsXbPcr9bshBJ/joscsr3sky9RwniRe0G1NkJfwcBrJaOE6X9HkbuMcUos\r\n8UwX2imps13kE2zhv2w1rXpppGahaWa7OVY=\r\n=e/Oq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.5_1676071471061_0.13536332689111163"},"_hasShrinkwrap":false},"0.10.0-pre.8":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.8","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast && yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.8","@polywrap/result":"0.10.0-pre.8","@polywrap/uri-resolvers-js":"0.10.0-pre.8","@polywrap/wasm-js":"0.10.0-pre.8","@polywrap/wrap-manifest-types-js":"0.10.0-pre.8"},"devDependencies":{"@types/jest":"26.0.8","doc-snippets":"~1.0.0","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolver-extensions-js\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `ClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: [\n      {\n        interface: Uri.from(\"wrap://ens/uri-resolver.core.polywrap.eth\"),\n        implementations: [\n          Uri.from(\"wrap://ens/fs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ipfs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ens-resolver.polywrap.eth\")\n        ]\n      }\n    ],\n    resolver: RecursiveResolver.from(\n      PackageToWrapperCacheResolver.from(\n        [\n          StaticResolver.from([\n            ...redirects,\n            ...wrappers,\n            ...packages,\n          ]),\n          new ExtendableUriResolver(),\n        ],\n        new WrapperCache()\n      )\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n```ts\n  /** The default interface uri to which implementations should be registered */\n  public static extInterfaceUri: Uri = new Uri(\n    \"wrap://ens/uri-resolver.core.polywrap.eth\"\n  );\n```\n\n#### extInterfaceUri\n```ts\n  /** The active interface uri to which implementations should be registered */\n  public readonly extInterfaceUri: Uri;\n```\n\n### constructor\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUri - URI Resolver Interface URI\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUri: Uri = ExtendableUriResolver.extInterfaceUri,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper extends ResolverWithHistory<unknown> \n```\n\n### constructor\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### getStepDescription\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n#### tryResolveUriWithImplementation\n```ts\n/**\n * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper\n *\n * @param uri - the URI to resolve\n * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n * @param client - a CoreClient instance that will be used to invoke the URI Resolver Extension wrapper\n * @param resolutionContext - the current URI resolution context\n * @returns A Promise with a Result containing either URI or a manifest if successful\n */\nconst tryResolveUriWithImplementation = async (\n  uri: Uri,\n  implementationUri: Uri,\n  client: CoreClient,\n  resolutionContext: IUriResolutionContext\n): Promise<\n  Result<UriResolverInterface.MaybeUriOrManifest | undefined, unknown>\n> \n```\n\n#### _tryResolverUri (protected)\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  protected async _tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap toolchain monorepo](https://github.com/polywrap/toolchain/tree/origin/packages/js/uri-resolver-extensions). Contributions from the community are welcomed!\n\n### Build\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n```bash\nyarn test\n``","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.8","dist":{"shasum":"7a3567b53b5256133a905bd4e2286a2abffb2e91","integrity":"sha512-11sl6zKgyQRTgQLxOOENhMnQtidOgxV32wLmt+BWBVEOUQ0xuVAl5Mujj5tJtR9/Trqobb0KZaG9fDLZcJnP9A==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.8.tgz","fileCount":24,"unpackedSize":55110,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDT3+w+BZICL9nCqdvMX1RPPQnHcrFe8zYrWOEH6tZk2AIhAJjef0RFvpWjrBZkEhVZpxF27DAp/RAQteqeBE/oSYg7"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7bUhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmolyw/+MTWctJC+VtKI8Uymli7ss6jI7iL+bfl4zN0pYcVEWAKCK4bE\r\nzOTnj/MUz61bShz1YOlhX2BLAU2+lvKuN4G6jS/2Amn3XhcIv/selDV2u4KV\r\neR5r1RDGTJdmVeywjy4hD5Z07LQeA4gQO2XIjrnkM7L/Mg7galUSVt9viUH8\r\nJ2D4AC1vXiq9dC+QKFAUp5DY46hnP24KMCWggblgq03JQj4t1EnIa1tOzzq8\r\nyTuRXF/EFlWvSlcQ5++bF8uR11tVjsgmnreugpB8Quk070/I+7e72zWsWaVp\r\nttGV42r9uii63fejqkIa+ouxa+eVmCA1aWnWz6jJ/fYYGCA6bqaC1cPg46gc\r\n5Z3nFJsnx3Vgy8sele33C5TxZTfdb489KEWa9WddrsUN3AE7hKM22KpbaEYT\r\nU6/sDfBPOP3VMSoFnGlwRPxDvO0/qftDn5NjlQ+tgDf1DDSwp8PvYI02xKZB\r\nWT6Vw5CGwXBtTmSXOkzc5LxtEIMD1/cG/Dz4jnwQjcfgo4ivJSHjJPrdOfBu\r\nJRtkhGFIz15uGzDtnwB+f+vBFfphgCNKPUADbi98z9G7ZiqoIHOGCWcuVIsT\r\n/LRZUSgajWEol39Rw0+9evkop0IdxsaAgQ2V/0oka0uu/5aGjPvJXvvQdCNv\r\nB3QsDEPn75ZqtVAWd8/U6zCrqbMRBU24DLk=\r\n=KO7B\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.8_1676522785735_0.7450497632385957"},"_hasShrinkwrap":false},"0.9.6":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.6","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.6","@polywrap/result":"0.9.6","@polywrap/uri-resolvers-js":"0.9.6","@polywrap/wasm-js":"0.9.6","@polywrap/wrap-manifest-types-js":"0.9.6"},"devDependencies":{"@polywrap/os-js":"0.9.6","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.6","dist":{"shasum":"2385a402b0aa4a592c4d1dbe5a5b8d2c741a4749","integrity":"sha512-PA4WFkydeAt5Lv2Fg97gVYRzqqr//jRV4gv8OT3iCVq4dcNtxyS8t8ZIK8zaTo1eryvkHRCzxsJI79uX7eL0yg==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.6.tgz","fileCount":19,"unpackedSize":32639,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGXMQOoGqxrKdH/0/6yV4noSZTukqTuIds5Mj/pfZBpvAiBKJtXW8swd9DurMJp+C5fPDvktqAKJ5f1qMVZbt3IKfA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj8dNpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoWIg//WydXbL6hPHh01A+Cc0NPrxbkOxtBnHn/q1bidZiBkYIeQUuD\r\nX0PrUl/QpYxqLNthD4PhhJMnMi6kSoFfov9hCtPLG+Xh2/W/9PPTsP/xKOhx\r\n2joOEQqg5C/rAsc+MNPJKcSD4I/6SEL+aJJ7hvzVheTIBOLXtsV4euMFEh9t\r\nDhNwceUQczbwE4AfpvZX4LBVJSRs+F+KJHFxrbbj531xjzxFcm5zxXNnvhFk\r\n4UYJBypDsaI/IIVMkzMrt/8KksuD95Go4Vjm1x+hCKiKa7UiIjED5fkmHj3k\r\nIKUOTc73aSbwDfQXkZOPa07PuJx2e9FGYP8bbBUc727MVH3Rj5hjk2WZF5to\r\nMNldZyYXzNuweteRJntlrGQX8i7u+/sg3skuhBuqsZ0F3ZeWwuM/q88I17+A\r\nOQHWZ5YAPp7ndqmsbnncVKqtmVGSk8GQPhmnjYSFxCrWk5YWzTxAYpKAZKtN\r\n/ACe2+Vxqn5v//Ou8XuFA+jrtXEm4rtD0/RFdoRDujM4LEPtYhKt1mgQtowN\r\nyPf5tjAbM23on81iICml8CgnSatdZkR/HjWFCRLQJMq3RkMsqv22jGUbzMSu\r\nO7LV8MZxeoovsPiUX/nteGBJkPoTXE3QSD/1rCgfSRgmB0o6pK7wiFxNDSW0\r\nQFuwOEDfKwMdjacvSw4BTRHUSB5ACjdiJLw=\r\n=wYN6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.6_1676792681432_0.477267759497519"},"_hasShrinkwrap":false},"0.10.0-pre.10":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.10","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast && yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.10","@polywrap/result":"0.10.0-pre.10","@polywrap/uri-resolvers-js":"0.10.0-pre.10","@polywrap/wasm-js":"0.10.0-pre.10","@polywrap/wrap-manifest-types-js":"0.10.0-pre.10"},"devDependencies":{"@types/jest":"26.0.8","doc-snippets":"~1.0.0","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolver-extensions-js\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `ClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: [\n      {\n        interface: Uri.from(\"wrap://ens/uri-resolver.core.polywrap.eth\"),\n        implementations: [\n          Uri.from(\"wrap://ens/fs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ipfs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ens-resolver.polywrap.eth\")\n        ]\n      }\n    ],\n    resolver: RecursiveResolver.from(\n      PackageToWrapperCacheResolver.from(\n        [\n          StaticResolver.from([\n            ...redirects,\n            ...wrappers,\n            ...packages,\n          ]),\n          new ExtendableUriResolver(),\n        ],\n        new WrapperCache()\n      )\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n```ts\n  /** The default interface uri to which implementations should be registered */\n  public static extInterfaceUri: Uri = new Uri(\n    \"wrap://ens/uri-resolver.core.polywrap.eth\"\n  );\n```\n\n#### extInterfaceUri\n```ts\n  /** The active interface uri to which implementations should be registered */\n  public readonly extInterfaceUri: Uri;\n```\n\n### constructor\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUri - URI Resolver Interface URI\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUri: Uri = ExtendableUriResolver.extInterfaceUri,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper extends ResolverWithHistory<unknown> \n```\n\n### constructor\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### getStepDescription\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n#### tryResolveUriWithImplementation\n```ts\n/**\n * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper\n *\n * @param uri - the URI to resolve\n * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n * @param client - a CoreClient instance that will be used to invoke the URI Resolver Extension wrapper\n * @param resolutionContext - the current URI resolution context\n * @returns A Promise with a Result containing either URI or a manifest if successful\n */\nconst tryResolveUriWithImplementation = async (\n  uri: Uri,\n  implementationUri: Uri,\n  client: CoreClient,\n  resolutionContext: IUriResolutionContext\n): Promise<\n  Result<UriResolverInterface.MaybeUriOrManifest | undefined, unknown>\n> \n```\n\n#### _tryResolverUri (protected)\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  protected async _tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap toolchain monorepo](https://github.com/polywrap/toolchain/tree/origin/packages/js/uri-resolver-extensions). Contributions from the community are welcomed!\n\n### Build\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n```bash\nyarn test\n``","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.10","dist":{"shasum":"650041d7ceb72375aa132fb4e2f9a3bdebcdb450","integrity":"sha512-vQU1BnPJ/E/QJrzKJbfdAYsNHkSNJ6jPrQ6ax033PtfBHef9RCKpj5trIS2VxJzpPC5KFgBCrhVb0LwDhEGp8A==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.10.tgz","fileCount":24,"unpackedSize":56181,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFT27orOFGbVEGAV3LOKojiDjGCJfsXWWXYkkrHucBTAIgPGYfk9Jd95Os9kFVeVDAJLoljXUGJjQr2pNJBLaW1ls="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/sdJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo7xw/+LvinGFh2HsvqiXvvNCTEf781QydSPMuY4QObuzOXn5qVat17\r\nmqpRkdG6BRGBXazvOkOIXDbTHA+A3ODz0CxULn6KDe8Ejra9zE8eJbGbP/uq\r\nW2ykmiRFFE9ErSn2keMLXd4MDVYgjRygNMrAceEt0gkC/fMfy+mFAxGf+Kdg\r\nVXp33Hcbq71CaJ2jLdrZtiQAGVtLcPMDtKlXRL7uSmTcoL/FnASwvOeHQpqP\r\nq9i15K8z2L5x05f0dlOyG3nHwZyLCc+PP+R3bVSe83NjdH/m1dSmwNHxJyol\r\nZW4KmCcUR9aJr/Az4M0xL6nrXwNXynSj9TAMSKoC/A5wjDmsotrUIPfZNlbF\r\n7SAN4VmJDvPQ3jUwbMpwXMF/wwOXueU5a8l8sRvylm2NYVjQ163d+0jNQFgT\r\nJukRfiUTwz18Lsosz39iobc/DULeD6jEyGQRmrWwSEN+hFgFDJw3h2dZYXVa\r\nfC+JbJTN3bskbVOoh4f3u48ptxDP9tkZF5x0OwFK65IXMxvbTPHZpEl0UsQ9\r\nI1IlXbbOgHKso3ZX7BwhgRvWTWt+1hQqWuF7CnDI2+n10naw/9bUt/P0mul3\r\n9MdeBC5SJ/TbqD781O5rscJOPzKOLY7fDPaePFVJPha6CERBP5jBCabw2o07\r\n2ohuLBp6vWln7Kk56Y89o/qE9hHqLp5BZBk=\r\n=XDV5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.10_1677641544870_0.1367451718171575"},"_hasShrinkwrap":false},"0.10.0-pre.11":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.11","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast && yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.11","@polywrap/result":"0.10.0-pre.11","@polywrap/uri-resolvers-js":"0.10.0-pre.11","@polywrap/wasm-js":"0.10.0-pre.11","@polywrap/wrap-manifest-types-js":"0.10.0-pre.11"},"devDependencies":{"@types/jest":"26.0.8","doc-snippets":"~1.0.0","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolver-extensions-js\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `ClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: [\n      {\n        interface: Uri.from(\"wrap://ens/uri-resolver.core.polywrap.eth\"),\n        implementations: [\n          Uri.from(\"wrap://ens/fs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ipfs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ens-resolver.polywrap.eth\")\n        ]\n      }\n    ],\n    resolver: RecursiveResolver.from(\n      PackageToWrapperCacheResolver.from(\n        [\n          StaticResolver.from([\n            ...redirects,\n            ...wrappers,\n            ...packages,\n          ]),\n          new ExtendableUriResolver(),\n        ],\n        new WrapperCache()\n      )\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n```ts\n  /** The supported interface URIs to which resolver-ext implementations should be registered */\n  public static defaultExtInterfaceUris: Uri[] = [\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.1.0\"),\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.0.0\"),\n  ];\n```\n\n#### extInterfaceUri\n```ts\n  /** The active interface URIs to which implementations should be registered */\n  public readonly extInterfaceUris: Uri[];\n```\n\n### constructor\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUris - URI Resolver Interface URIs\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUris: Uri[] = ExtendableUriResolver.defaultExtInterfaceUris,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper extends ResolverWithHistory<unknown> \n```\n\n### constructor\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### getStepDescription\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n#### tryResolveUriWithImplementation\n```ts\n/**\n * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper\n *\n * @param uri - the URI to resolve\n * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n * @param client - a CoreClient instance that will be used to invoke the URI Resolver Extension wrapper\n * @param resolutionContext - the current URI resolution context\n * @returns A Promise with a Result containing either URI or a manifest if successful\n */\nconst tryResolveUriWithImplementation = async (\n  uri: Uri,\n  implementationUri: Uri,\n  client: CoreClient,\n  resolutionContext: IUriResolutionContext\n): Promise<\n  Result<UriResolverInterface.MaybeUriOrManifest | undefined, unknown>\n> \n```\n\n#### _tryResolverUri (protected)\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  protected async _tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap toolchain monorepo](https://github.com/polywrap/toolchain/tree/origin/packages/js/uri-resolver-extensions). Contributions from the community are welcomed!\n\n### Build\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n```bash\nyarn test\n``","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.11","dist":{"shasum":"904ccbfc6112c82da5725128c9e22df9e560589a","integrity":"sha512-5iIfinqSIeqcMfdHEqYwQZgZvfatVp1hIC/OCgxlqDt5sDhdpq+AMu4uxTZiRw666M5ySNIC6tgb4xgDoug2Zw==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.11.tgz","fileCount":24,"unpackedSize":59258,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzB8kvpwOPxAyrdwJSZc8elnsz4Xhoa6qWs9EqTZ6nNgIgCmwGVrPnEuy7G4QgSA7+3H+XvoVtFfAvBX5Z8v85u1U="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBmgzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrAXg//aMotOiYaz2mvY/7w6rm4ktl/18EX0TcOMuuv/FAE1wf4szGL\r\neI+0DytVXeGRiTzIGKerHRPeEr4rmpRnjRhhiJZsYptoI9taFFO/Dl6WbyqK\r\nXt7N7P8/7SvzqSU0vWyya/3vm1VwNdD9mx5TVp+b0WrVqK0DePJE5MWXKHhG\r\nY90ZVM7V0y1YSPLAieb67TQ4KEETm/29HpGKHUmkumGHciXRE5vwvDHYrNwJ\r\nYM4p39NiqTKPG0q7hchNdHzWvtsc/v2TydeULIRRIBizVwwl4/myviEi7HjU\r\nM0Z7fg6aB7yJycwc9Wf482RSKF75CBqpmcgB2+d2XUNzRTEMW5j6u0a3FZjJ\r\ngBoPlQnzeMH95TXNw486Tzq/bUkcnx5+6SfFbsij2PFRksAfQiJlYtGj96Qo\r\nPGXFxguBxhvTH2RFQZBc7jPzHe1CYEIpz9ui1sVaseBqmTrZ0NFpDF/SB6T8\r\n09WuCwoaZBt/qH4fKwbuA2EGOBn/vReXuFBtj4/Y/LOFAvgfevsVreESjoi9\r\nwSZMnBy2SuEpED/8CBLSKZ1pLlTa1PZJasnNw2P48r8FkvNpFA3IeCe2D+3N\r\nWRTzgklJ0nW7gZPOrWWT6QMQ8PZmxyUwE+uCkvd6GrQ18wV/ow+obIakBD7H\r\nRptL59ucbxwO/tHv6bZHirlWK7hFbYG3EZo=\r\n=V79N\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.11_1678141491546_0.8783503537960642"},"_hasShrinkwrap":false},"0.10.0-pre.12":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.12","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast && yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.12","@polywrap/result":"0.10.0-pre.12","@polywrap/uri-resolvers-js":"0.10.0-pre.12","@polywrap/wasm-js":"0.10.0-pre.12","@polywrap/wrap-manifest-types-js":"0.10.0-pre.12"},"devDependencies":{"@types/jest":"26.0.8","doc-snippets":"~1.0.0","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolver-extensions-js\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `ClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: [\n      {\n        interface: Uri.from(\"wrap://ens/uri-resolver.core.polywrap.eth\"),\n        implementations: [\n          Uri.from(\"wrap://ens/fs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ipfs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ens-resolver.polywrap.eth\")\n        ]\n      }\n    ],\n    resolver: RecursiveResolver.from(\n      PackageToWrapperCacheResolver.from(\n        [\n          StaticResolver.from([\n            ...redirects,\n            ...wrappers,\n            ...packages,\n          ]),\n          new ExtendableUriResolver(),\n        ],\n        new WrapperCache()\n      )\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n```ts\n  /** The supported interface URIs to which resolver-ext implementations should be registered */\n  public static defaultExtInterfaceUris: Uri[] = [\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.1.0\"),\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.0.0\"),\n  ];\n```\n\n#### extInterfaceUri\n```ts\n  /** The active interface URIs to which implementations should be registered */\n  public readonly extInterfaceUris: Uri[];\n```\n\n### constructor\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUris - URI Resolver Interface URIs\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUris: Uri[] = ExtendableUriResolver.defaultExtInterfaceUris,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper extends ResolverWithHistory<unknown> \n```\n\n### constructor\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### getStepDescription\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n#### tryResolveUriWithImplementation\n```ts\n/**\n * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper\n *\n * @param uri - the URI to resolve\n * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n * @param client - a CoreClient instance that will be used to invoke the URI Resolver Extension wrapper\n * @param resolutionContext - the current URI resolution context\n * @returns A Promise with a Result containing either URI or a manifest if successful\n */\nconst tryResolveUriWithImplementation = async (\n  uri: Uri,\n  implementationUri: Uri,\n  client: CoreClient,\n  resolutionContext: IUriResolutionContext\n): Promise<\n  Result<UriResolverInterface.MaybeUriOrManifest | undefined, unknown>\n> \n```\n\n#### _tryResolverUri (protected)\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  protected async _tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap toolchain monorepo](https://github.com/polywrap/toolchain/tree/origin/packages/js/uri-resolver-extensions). Contributions from the community are welcomed!\n\n### Build\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n```bash\nyarn test\n``","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.12","dist":{"shasum":"a96764685ba9323f715839353bc66c1b9f2f406c","integrity":"sha512-CywvCeNj7eVW6JV9YiWxkwl7hMLpXkdfMF7/MKeYFHJ/RK1ALHJAAGuHGJTwBiN6FuRVBXD2LA4YW7U/oS5wiQ==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.12.tgz","fileCount":24,"unpackedSize":59258,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSI1OH+XxFqOjqo2d2GWGYvtj4Nh37tpBG73+9LaExGQIgWKPsNJyrb1V4zRlzXMHVK5YIIkpdGe5gjURmRZkJwEo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEAEbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVww//RHvaXP3ibKwQm5c9bD1MKf6h82VHNyp9Jgi51ewF9LrWfxuS\r\nzKRxAEJ2rEzfn4PxC+E6hVY+T/C7OiycjUi+iqaXFdrJJRDQgPZBU20bRbTx\r\n/bIBpeQeaxmcLRWiiY0mrDoYEORmwn6i0Wym+Pb719VxbwlIiX/4jwbglVPO\r\nHdf+weLvZCmJgpS88enEduuXnV9uiGaxjLPSxqN1HNdTx/ldpQWwog6ApYlI\r\n7IyXJq3D8Unk+EdflME5KRAtRe3Y9I5zbmagfAF9pHhKj4MTTjm4IIC6R6qc\r\nsr4LJgi5Z6iMV+BsZqBxtTln4vzRMK8+TIaEQG8dyw11t+EO1v6tP6o0slXF\r\ncRZGFKJu1x0IKXueWnoO2lEmM/O1yFPWJFrtzSLUxtMEgzXbtyTFkYbWlATc\r\nYt5L3ymTWwuDWaIGRAurKvNuZkbcy/7QUSD7ZcIpIxTAhYy+IjyvVCyUNerU\r\n3rjFr3HSvPPjXbMWCtQmMIBhYCpjdPyGkrg9mlI18s5UcJToflYUk1N//XMY\r\nkw3jAWVQUr45mw6NjxN9YYNBVEo8vCJcVuTGhbq3GqmxS9AeXdeZMlE+uoqu\r\nB7/2rapWZhQ/6ozcm5Opu0eJHi5RGKxOmjE55MjMtB9IhCKZu+RMkfgOm8Ih\r\nhwhWxxKTzmmCgzx079EeRvHPafPl2Q+cT8o=\r\n=gQK2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.12_1678770459053_0.9210878448727866"},"_hasShrinkwrap":false},"0.10.0-pre.13":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.13","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast && yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.13","@polywrap/result":"0.10.0-pre.13","@polywrap/uri-resolvers-js":"0.10.0-pre.13","@polywrap/wasm-js":"0.10.0-pre.13","@polywrap/wrap-manifest-types-js":"0.10.0-pre.13"},"devDependencies":{"@polywrap/core-client-js":"0.10.0-pre.13","@polywrap/file-system-plugin-js":"~0.10.0-pre","@polywrap/plugin-js":"0.10.0-pre.13","@polywrap/test-cases":"0.10.0-pre.13","@types/jest":"26.0.8","doc-snippets":"~1.0.0","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolver-extensions-js\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `ClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: new UriMap<Uri[]>([\n      [\n        Uri.from(\"wrap://ens/uri-resolver.core.polywrap.eth\"),\n        [\n          Uri.from(\"wrap://ens/fs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ipfs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ens-resolver.polywrap.eth\"),\n        ],\n      ],\n    ]),\n    resolver: RecursiveResolver.from(\n      [\n        StaticResolver.from([\n          ...redirects,\n          ...wrappers,\n          ...packages,\n        ]),\n        new ExtendableUriResolver(),\n      ]\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n```ts\n  /** The supported interface URIs to which resolver-ext implementations should be registered */\n  public static defaultExtInterfaceUris: Uri[] = [\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.1.0\"),\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.0.0\"),\n  ];\n```\n\n#### extInterfaceUri\n```ts\n  /** The active interface URIs to which implementations should be registered */\n  public readonly extInterfaceUris: Uri[];\n```\n\n### constructor\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUris - URI Resolver Interface URIs\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUris: Uri[] = ExtendableUriResolver.defaultExtInterfaceUris,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper extends ResolverWithHistory<unknown> \n```\n\n### constructor\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### getStepDescription\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n#### tryResolveUriWithImplementation\n```ts\n/**\n * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper\n *\n * @param uri - the URI to resolve\n * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n * @param client - a CoreClient instance that will be used to invoke the URI Resolver Extension wrapper\n * @param resolutionContext - the current URI resolution context\n * @returns A Promise with a Result containing either URI or a manifest if successful\n */\nconst tryResolveUriWithImplementation = async (\n  uri: Uri,\n  implementationUri: Uri,\n  client: CoreClient,\n  resolutionContext: IUriResolutionContext\n): Promise<\n  Result<UriResolverInterface.MaybeUriOrManifest | undefined, unknown>\n> \n```\n\n#### _tryResolverUri (protected)\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  protected async _tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap toolchain monorepo](https://github.com/polywrap/toolchain/tree/origin/packages/js/uri-resolver-extensions). Contributions from the community are welcomed!\n\n### Build\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n```bash\nyarn test\n``","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.13","dist":{"shasum":"fb7944a613292f6a309c61d7730403df2c044ae1","integrity":"sha512-bJzQ6BkqQxXXA9L9A/2rKyk6mhy45a0GwHpaw4maHUH71PAVbq6UvZLMka+E0sqpB1hAG3WqceHxJNMOn/y9Zw==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.13.tgz","fileCount":24,"unpackedSize":59221,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDccap2IQtsYy8wy8EJ/XHtzIIaYazAMnN+u4f9AXMQ9AIhANmo87qhHCXNQcNfeyF9Rr+8TR4DFK5/wlsCmqHTK9le"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkFRIdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpn6RAAlSiy1KaVDxtLmXCqMEr0SfCyVc06l0ttf9TE8hDDddV0E76J\r\nzSI37AJ5+8sgbkk1jr7uQGt7Ud5PfJYhELUiEbGkkBjdVg/ZvoiJkclLBnp3\r\nSeEcS02pvZyyGh8Dj2BsOQNDvF4brXpZO8t1jEK/mw7v2PzX7IRfa8BDljqo\r\nJtPU4dCcdltP7sBPbTzS6zb7VAZEXVfWtlxHPEmh042Y7XO290SNfDDjd7YG\r\np9wpEX01Sv8umc8x1U0Sm5Hj0Vqrf+9+LZLbLRn+/5RcPg4irpb/W7rPQuSH\r\nzPLp2xMSRAeRFrKF9F0O5ut/lEU5IaHe7wiJqlru7Kf9QZu1UTdGtfI1zUzz\r\n/4ZTLS7hlAomGqGM2McbvDY2glqmoQ9BgQk9xqPPy4N/cux9hoTVGw/DFgZ6\r\nNjLvK1blCAu+ryrG9ac1Zl3mfTMZEwafH35CWT43Cp3nmiPpMfetsLZuAd+H\r\npaZOAatiK8ShOGckmNqXh0NBFIrz0YN5qcca85q2g87AqdU/3PGZ8SSQ3RQJ\r\n801CumrD3QVb+9IvqTHyX//XFbbh68Rm6lVSH0ITkmgngkMK+U5xJxlEhU6f\r\nZtPNV7kw7ONSv/o5F/zYwSQcoOle5Wx54yguwWU+blnAEFO5X0mKRo1RcQCs\r\nMsRxT5M+wFtBFvjlfWqZn7FAh0hvw5nX2KQ=\r\n=hdvx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.13_1679102493335_0.11364496955737424"},"_hasShrinkwrap":false},"0.9.7":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.9.7","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:ci":"jest --passWithNoTests --runInBand --verbose","test:watch":"jest --watch --passWithNoTests --verbose"},"dependencies":{"@polywrap/core-js":"0.9.7","@polywrap/result":"0.9.7","@polywrap/uri-resolvers-js":"0.9.7","@polywrap/wasm-js":"0.9.7","@polywrap/wrap-manifest-types-js":"0.9.7"},"devDependencies":{"@polywrap/os-js":"0.9.7","@types/jest":"26.0.8","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"8.10.2","typescript":"4.1.6"},"publishConfig":{"access":"public"},"_id":"@polywrap/uri-resolver-extensions-js@0.9.7","dist":{"shasum":"6f0f4f474c3d680ba626afd1f7125013b95b1170","integrity":"sha512-MO3O/wpATTbvBLNztqjpeGKHzhFVczhB+MNj4cSb16puTvLh/9bqucVMBtTPY+Mtm34piLV6RSWeAKAiG7liIw==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.9.7.tgz","fileCount":19,"unpackedSize":32639,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB4FzLxNDqRoh8aoy5TePS6bhEao1OKGFTjo0c86SsIcAiEAklmrRGSEG9Rs95YrVZAm5CLiestOr5RWIwKx6dlOTT8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkI2PAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpe/Q//Vj+KAbcBIkqw/KOI+o1N8T+WXA/BM+tI6YffJ4aGd7TygIK2\r\n3A/Fwm5UJD/Oi0RClaJnirqfgafj0D2hmcweKPFaG0Mc4wCUHsVlIr30AavU\r\nz+1KwyfIu0DMQQFFZHmvYvQnbCQPgquLYTMJAVTJe/QtzYYO/b+MyKTh7aco\r\nuPH0ukYsqQwOuof4ZZgs9rG91IRZ6nRsd+H4JiNGTwnyLSojra6Sbn0NdYsx\r\nig1N7lIuzbYs/pTL8raEHTTB8nNDzYBy9Lyt3U/MktguOfDLxtTnD+FI9M0R\r\nwOAQEvJIcItQvYZZ06k05K6JrE32KQJRqffO1y3Ul3+svgTGwhm+gvnXXTdz\r\nJTKSr14fx6EAwlaga3c9+Oz7RgmQKBqhboS3x2lnhajJlGoxZYG4lgLrzMzp\r\nBTcSUDIbzJMTGPQrE1N5Mh2pzVWeazPFaq0cf5eJiE45eldu9oCj1o3GLAeh\r\n038GLa+rgzxEczjfoEMF7QAlHzBEpqHRDd4s+LQoG0fPiEB6c9ITLG2g9Gmk\r\nmakEpao68TCll6OXzFHPgLS+qhGDjSqeOCoquNU0MCLssrqtKEEmzqtxkf2r\r\nlzg49d36Pkodol6owcC7Kv83e673c613F34d1ACzXKqm9ArsEE4hmzqoQBzQ\r\nC4zmeiBFLPQ7yG8Rpg6mztOV6f5aWInBtuI=\r\n=yBqL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.9.7_1680040896232_0.8061715617481189"},"_hasShrinkwrap":false},"0.10.0-pre.14":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0-pre.14","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.0-pre.14","@polywrap/result":"0.10.0-pre.14","@polywrap/uri-resolvers-js":"0.10.0-pre.14","@polywrap/wasm-js":"0.10.0-pre.14","@polywrap/wrap-manifest-types-js":"0.10.0-pre.14"},"devDependencies":{"@polywrap/cli-js":"0.10.0-pre.14","@polywrap/core-client-js":"0.10.0-pre.14","@polywrap/plugin-js":"0.10.0-pre.14","@polywrap/test-cases":"0.10.0-pre.14","@types/jest":"26.0.8","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolver-extensions-js\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `ClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: new UriMap<Uri[]>([\n      [\n        Uri.from(\"wrap://ens/uri-resolver.core.polywrap.eth\"),\n        [\n          Uri.from(\"wrap://ens/fs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ipfs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ens-resolver.polywrap.eth\"),\n        ],\n      ],\n    ]),\n    resolver: RecursiveResolver.from(\n      [\n        StaticResolver.from([\n          ...redirects,\n          ...wrappers,\n          ...packages,\n        ]),\n        new ExtendableUriResolver(),\n      ]\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n```ts\n  /** The supported interface URIs to which resolver-ext implementations should be registered */\n  public static defaultExtInterfaceUris: Uri[] = [\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.1.0\"),\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.0.0\"),\n  ];\n```\n\n#### extInterfaceUri\n```ts\n  /** The active interface URIs to which implementations should be registered */\n  public readonly extInterfaceUris: Uri[];\n```\n\n### constructor\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUris - URI Resolver Interface URIs\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUris: Uri[] = ExtendableUriResolver.defaultExtInterfaceUris,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper extends ResolverWithHistory<unknown> \n```\n\n### constructor\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### getStepDescription\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n#### tryResolveUriWithImplementation\n```ts\n/**\n * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper\n *\n * @param uri - the URI to resolve\n * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n * @param client - a CoreClient instance that will be used to invoke the URI Resolver Extension wrapper\n * @param resolutionContext - the current URI resolution context\n * @returns A Promise with a Result containing either URI or a manifest if successful\n */\nconst tryResolveUriWithImplementation = async (\n  uri: Uri,\n  implementationUri: Uri,\n  client: CoreClient,\n  resolutionContext: IUriResolutionContext\n): Promise<\n  Result<UriResolverInterface.MaybeUriOrManifest | undefined, unknown>\n> \n```\n\n#### _tryResolverUri (protected)\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  protected async _tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap toolchain monorepo](https://github.com/polywrap/toolchain/tree/origin/packages/js/uri-resolver-extensions). Contributions from the community are welcomed!\n\n### Build\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n```bash\nyarn test\n``","_id":"@polywrap/uri-resolver-extensions-js@0.10.0-pre.14","dist":{"shasum":"4242e18787a10b54ca57eb01403f8b17c87b2007","integrity":"sha512-iAeZOUJLavCv72hD5nHLsWimu9Aeygd3LbYgL1eCJXbdoRdcrYcniyQdhXJO28i6qXyxSg0Br08n5F+IgtZ/Ww==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0-pre.14.tgz","fileCount":21,"unpackedSize":56116,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFoM8E0bJSJwDxb9oDb8Wme7uGnCtEqSZJaBDM25RSdaAiB4uAHNw/D0Mjqa12KF7EZs88knwZOVuOfZLzmpOkAXQQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkN37xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqo2Q/8CvM4KXiCL3hUafcFcGLR5qbuf8ynw45I1EMxgPmS/KNv3tVX\r\n9DYNV8Msx/6QZOZQGXGn+J47bGb3xRHIxVQMaRo60j5yQjaQ7gaOi+fVCfD2\r\nmQCZV17bvTAT56tDan6sFOMg4FJq29HwmK0/d3SttYdwXxy2Ceh5RiVsfRRw\r\nM/Qkh8XVMb+3VI6C6P8ZlwCq1lWR4PfsqacosX9fsOaZ1NtYPjDNuqGPj2dT\r\nmifOodGJQeujo/jTRk1G/jdUadnw2R5knuZrMy9/x53cRs6OjTiFCRU9Cm+d\r\n0fMay0IsAlbKUuXREmBiTVCYyLMzfnEKaqVkfgOC3oc9EUMqN16dj+xXILcZ\r\nem84BAOUUAYL8jU5gNxjio1DVkt1APjVwdGfAupxfdcAGhDgTgELW4VV+Dyw\r\nkiDvSzYnyxj7J3w8zVuhZeuU6v/9/LI3SU9T8sX2/+cI2BqUXhbBZaoRZlME\r\nkqplPf125ymgDO+YpJYMBlyM59YqiLigmKrNAO4om4eVi4HQsUfv7veHWz1o\r\nXNrmdECOZMFQXB60bLY7JpPsxpkYNempX3F934597ZoumdNbAz01HIAtxV6h\r\nRSgStsVKDniPf2DpB97KeEu1x3p6PWkQjMaEb6adUPMsv1vN0cmBKBkyiCT+\r\nB0Rm7CUH0/Wmm960boM+AICw/rKpqkpSEGE=\r\n=CJka\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0-pre.14_1681358577042_0.44780968835446733"},"_hasShrinkwrap":false},"0.10.0":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.0","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/monorepo.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.0","@polywrap/result":"0.10.0","@polywrap/uri-resolvers-js":"0.10.0","@polywrap/wasm-js":"0.10.0","@polywrap/wrap-manifest-types-js":"0.10.0"},"devDependencies":{"@polywrap/cli-js":"0.10.0","@polywrap/core-client-js":"0.10.0","@polywrap/plugin-js":"0.10.0","@polywrap/test-cases":"0.10.0","@types/jest":"26.0.8","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"26.6.3","rimraf":"3.0.2","ts-jest":"26.5.4","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"_id":"@polywrap/uri-resolver-extensions-js@0.10.0","dist":{"shasum":"ef0012e9b2231be44b0739f57b023a1c009c1b2b","integrity":"sha512-mP8nLESuQFImhxeEV646m4qzJ1rc3d2LLgly9vPFUffXM7YMfJriL0nYNTzbyvZbhvH7PHfeEQ/m5DZFADMc7w==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.0.tgz","fileCount":21,"unpackedSize":56046,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGAty6FbyPxIFu5Dqfa+4QGM73iBC4Nx/62nQLH1d9QKAiB+ZhaBfHjP/dI9xIzPJraqmiLmhP0nV+bJkQb5Z45t2g=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOOGUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoN2w/+KiZ93xDI3OZUopMtqbxveDgs/zgZLE0pEdiLndI9k59ayrks\r\n5PygH5QqlHmBbmTVPro8gcTYmRDzP6fHNPIbIkAj16pWyPlaFKd6UuhFnFdL\r\nGrFiw1zpqNhsYzUcErWozYQkk5nnaxUlkeBN65LpaaG9WvQzMOWl93DSEUAP\r\nH7ldjGpSVoSUWQz4Ha80OQQ26SHGN2GFuAgRdA3ch3aPmPG409XiHqUyaLt8\r\nGscWRp35q14yaAJkHJcpvq8uQDsJ/QMuLCZ9ZeNdC/jFGzNn/u9xg7IbA9Wy\r\niYCpNARdORZT6XQMMMXIw+J+4dHxHRVQ4fi/lEQnXN5F1CAqJxcoYAGNl13u\r\ncnB8MGJLJaigNaAtAdYA6d3gxCLhRj+A1uyBqttq9J1yQua5hd71T1lUwD6O\r\nNHXkAauWnBa4ODJyUmialE9Cxor1XqM9AGpc1+lHA65Bo88wXUNmb4mZvJwq\r\nxcM933UPzrCuojR+7JMN5o4OeZmyq+hdl0LRBUdFj9shn+c5+aEzZojyG209\r\n/SyVlePaQukAxs1qQD7/5mL+nAg8wWEbt010mjaEq92abdhzc4vGJiBFJw6t\r\n1n1GxLc8Bna5IASkGpdVp20YCOre9MELBvdRoW5DFXYJM7JS6WdY3DR2QGZD\r\nrMw7cOa9CTy+9/z12TbQ90WhVZNx6O6wJl0=\r\n=0HMi\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.0_1681449363742_0.4315523626725535"},"_hasShrinkwrap":false},"0.10.1":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.10.1","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/javascript-client.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose --config ../../jest.config.js --rootDir .","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.10.1","@polywrap/result":"0.10.1","@polywrap/uri-resolvers-js":"0.10.1","@polywrap/wasm-js":"0.10.1","@polywrap/wrap-manifest-types-js":"0.10.1"},"devDependencies":{"@polywrap/cli-js":"~0.10.0","@polywrap/core-client-js":"0.10.1","@polywrap/plugin-js":"0.10.1","@polywrap/test-cases":"0.10.1","@types/jest":"29.5.0","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"29.5.0","rimraf":"3.0.2","ts-jest":"29.1.0","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"_id":"@polywrap/uri-resolver-extensions-js@0.10.1","dist":{"shasum":"6385ec63de3d53a8eddedeba10c59f0c8b2de36e","integrity":"sha512-dsihLqgC3o76xnhWMH+o0Nol58BBy2KljxSoRGdi1XbEEkdHHKx2qwxfWAjOA83ljGJXToh0IsaxbCUuPEMIZQ==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.10.1.tgz","fileCount":18,"unpackedSize":47769,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxsZNeg9JYDAyobq2405AlvXR6p/ruxnwsyBzKLN3PJwIgfgo7aD9WYq9jjIbmh9WlUK/xHnoEMbhCWhocTM87T+w="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTKTTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqXjRAAi11Dibox6lgTn38rlzanXiZ5rjQBykB3kANwORoxKPXgePyu\r\nIOUC6HHcr96NXkMsYP4zFETueI8T5eOHI4a2iiGP8WjwybTQIyXAg0fysp48\r\nBnJXBmGw13Z2VwXR4WaKkDiFtp1KzyKmSjoaLz5p0cw/0lhE5XP9vde5ryZH\r\nczGeLfIIzTaVALo9wB+nkgrx5EE+Gmio0qPue8ZVGETtzsYBkvANRZnk0HR8\r\nxIM/468xYzvroyKu+XAndza5PtPk9S5QfrfyNS7ZbBsra6eGnOIPNLF4n6eT\r\nKuI4OT4kutLH3EX8GPSEWiZ7L7ZBHTke1ChAhRvposmbsf9nUYaH8u/ijL66\r\nQo3punpi0KUdULIFjSKckFiiZ1LkFw4yvdCuLU3z9QWAwJ3UGzUXf6VDwtPA\r\n4/DOlzwW6uf5ozSMIuyUADAQr92100/USDHSNgoAUky0dhkuarpsMCJX7v4e\r\nfCZ34nxpvMX2Z5Md0d3CbI4YGcA3/NWGC3Hz/zwpvaS7B+60QTi0X3VadIRT\r\nVTW821D3tfnoOoigIMktn0khmMM067IoVACKWR9jXVV7CYQFIIsuq61oqXxD\r\ne748tC0479LMgw1J+2SnTIHsGUUsDoWpUskZx6kaubeqONBdVukyLq2WmtFL\r\n7FqCe5sBrPMQNd4R5AybmphI+W7MSsnG8yg=\r\n=bTbG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.10.1_1682744530965_0.9815111704509643"},"_hasShrinkwrap":false},"0.11.0":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.11.0","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/javascript-client.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose --config ../../jest.config.js --rootDir .","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.11.0","@polywrap/result":"0.11.0","@polywrap/uri-resolvers-js":"0.11.0","@polywrap/wasm-js":"0.11.0","@polywrap/wrap-manifest-types-js":"0.11.0"},"devDependencies":{"@polywrap/cli-js":"~0.10.0","@polywrap/core-client-js":"0.11.0","@polywrap/plugin-js":"0.11.0","@polywrap/test-cases":"0.11.0","@types/jest":"29.5.0","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"29.5.0","rimraf":"3.0.2","ts-jest":"29.1.0","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"_id":"@polywrap/uri-resolver-extensions-js@0.11.0","dist":{"shasum":"ff2b04b733e9f1404d85e61575dc149590c856d3","integrity":"sha512-iMYDuRJ3bxUrU1EPl8KSKG5YCc8xoeNEOW05uY2iPHo7Aa/5nUhP+v81YdHhBHsjZQgndCoFtvS8NzNUa+bx2w==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.11.0.tgz","fileCount":18,"unpackedSize":47785,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGlXqFSDGAiWjEYmqzxPyhVJYNOf+VRAX4SG0jVgidtgIhAIw/2XAzNRmt8JjpbbWdbp15kbNFV3rE7ELxA1gx//b6"}]},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.11.0_1687831259076_0.1416348482158869"},"_hasShrinkwrap":false},"0.12.0-pre.1":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.12.0-pre.1","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/javascript-client.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose --config ../../jest.config.js --rootDir .","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.12.0-pre.1","@polywrap/result":"0.12.0-pre.1","@polywrap/uri-resolvers-js":"0.12.0-pre.1","@polywrap/wasm-js":"0.12.0-pre.1","@polywrap/wrap-manifest-types-js":"0.12.0-pre.1"},"devDependencies":{"@polywrap/cli-js":"~0.10.0","@polywrap/core-client-js":"0.12.0-pre.1","@polywrap/plugin-js":"0.12.0-pre.1","@polywrap/test-cases":"0.12.0-pre.1","@types/jest":"29.5.0","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"29.5.0","rimraf":"3.0.2","ts-jest":"29.1.0","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"readmeFilename":"README.md","readme":"# @polywrap/uri-resolver-extensions-js\n\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `PolywrapClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: new UriMap<Uri[]>([\n      [\n        Uri.from(\"wrap://ens/uri-resolver.core.polywrap.eth\"),\n        [\n          Uri.from(\"wrap://ens/fs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ipfs-resolver.polywrap.eth\"),\n          Uri.from(\"wrap://ens/ens-resolver.polywrap.eth\"),\n        ],\n      ],\n    ]),\n    resolver: RecursiveResolver.from(\n      [\n        StaticResolver.from([\n          ...redirects,\n          ...wrappers,\n          ...packages,\n        ]),\n        new ExtendableUriResolver(),\n      ]\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n\n```ts\n  /** The supported interface URIs to which resolver-ext implementations should be registered */\n  public static defaultExtInterfaceUris: Uri[] = [\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.1.0\"),\n    Uri.from(\"wrap://ens/wraps.eth:uri-resolver-ext@1.0.0\"),\n    Uri.from(\"wrap://wrapscan/polywrap/uri-resolver@1.0\"),\n  ];\n```\n\n#### extInterfaceUri\n\n```ts\n  /** The active interface URIs to which implementations should be registered */\n  public readonly extInterfaceUris: Uri[];\n```\n\n### constructor\n\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUris - URI Resolver Interface URIs\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUris: Uri[] = ExtendableUriResolver.defaultExtInterfaceUris,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper implements IUriResolver<unknown> \n```\n\n### constructor\n\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### tryResolverUri\n\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap JavaScript Client repository](https://github.com/polywrap/javascript-client). Contributions from the community are welcomed!\n\n### Build\n\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n\n```bash\nyarn test\n```\n","_id":"@polywrap/uri-resolver-extensions-js@0.12.0-pre.1","dist":{"shasum":"d62ab34b859a74924a139e94a22b30a6b09759af","integrity":"sha512-sRT7I7RYkijQpuD+0+gDsUTJsVSL9M9caowfFOPkDhHuTcoIct/Fte/hAD5ncDChSUc84MZgHZPWcQxOz12zzg==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.0-pre.1.tgz","fileCount":18,"unpackedSize":48010,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCL3mRewltvpvBwxkoKXME8p5CqZy+jJPV03LMJKqH+ogIhAJ7X46BALQT0SQmcTkzEfojNCU8aMmV6DTtfp04/TwAs"}]},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.12.0-pre.1_1689178283563_0.315662016847295"},"_hasShrinkwrap":false},"0.12.0":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.12.0","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/javascript-client.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose --config ../../jest.config.js --rootDir .","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.12.0","@polywrap/result":"0.12.0","@polywrap/uri-resolvers-js":"0.12.0","@polywrap/wasm-js":"0.12.0","@polywrap/wrap-manifest-types-js":"0.12.0"},"devDependencies":{"@polywrap/cli-js":"~0.10.0","@polywrap/core-client-js":"0.12.0","@polywrap/plugin-js":"0.12.0","@polywrap/test-cases":"0.12.0","@types/jest":"29.5.0","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"29.5.0","rimraf":"3.0.2","ts-jest":"29.1.0","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"_id":"@polywrap/uri-resolver-extensions-js@0.12.0","dist":{"shasum":"5819a447ae780e4f1092e613bc709741ef9c25e4","integrity":"sha512-EE/JaVAH5Zt521kuCMGMRgdrHUlFqTk6f85e0UJo+DX6PcerJVj/KrfHQUKt/rM9SVD4mQaQA53k7/3DJhFnaw==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.0.tgz","fileCount":18,"unpackedSize":47704,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGfQIJEQH8+LOtTrJ4a9QoJGAYMgpQ2I8RWDc2khWpNxAiBtGHkNgsTY9duqemKp9anLhb3AMUN2dr08DvzL3bXePA=="}]},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.12.0_1690401211295_0.06729302080477151"},"_hasShrinkwrap":false},"0.12.1":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.12.1","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/javascript-client.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose --config ../../jest.config.js --rootDir .","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.12.1","@polywrap/result":"0.12.1","@polywrap/uri-resolvers-js":"0.12.1","@polywrap/wasm-js":"0.12.1","@polywrap/wrap-manifest-types-js":"0.12.1"},"devDependencies":{"@polywrap/cli-js":"~0.11.0","@polywrap/core-client-js":"0.12.1","@polywrap/plugin-js":"0.12.1","@polywrap/test-cases":"0.12.1","@types/jest":"29.5.0","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"29.5.0","rimraf":"3.0.2","ts-jest":"29.1.0","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"_id":"@polywrap/uri-resolver-extensions-js@0.12.1","dist":{"shasum":"f164ef4492fa4fab81353dff2139120161e4eefc","integrity":"sha512-hsW/3Q64JBTrWVJJYONiYX1Co5dgKdZCkTkOYTEQHXCL/+jSPE9o1PAl5w1JkHtL0JmXaN7YMpWVKIbNGhwb3A==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.1.tgz","fileCount":18,"unpackedSize":47704,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC4qyS11zUt+1/cEGb5tCR1uSXt7/Gy3OEnRRKl3SyTLgIhAJgwCeqSmHUBucCNhmJXcmry3ldbK5e5Ye4ewG20GhbF"}]},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.12.1_1692569173810_0.5002692415112915"},"_hasShrinkwrap":false},"0.12.2":{"name":"@polywrap/uri-resolver-extensions-js","description":"Polywrap URI resolver extensions","version":"0.12.2","license":"MIT","repository":{"type":"git","url":"https://github.com/polywrap/javascript-client.git"},"main":"build/index.js","scripts":{"build":"yarn build:fast","build:docs":"yarn build:snippets && yarn build:readme","build:fast":"rimraf ./build && tsc --project tsconfig.build.json","lint":"eslint --color -c ../../.eslintrc.js src/","test":"jest --passWithNoTests --runInBand --verbose --config ../../jest.config.js --rootDir .","test:watch":"yarn test -- --watch","build:snippets":"tsc --project ./examples/tsconfig.examples.json","build:readme":"yarn doc-snippets combine"},"dependencies":{"@polywrap/core-js":"0.12.2","@polywrap/result":"0.12.2","@polywrap/uri-resolvers-js":"0.12.2","@polywrap/wasm-js":"0.12.2","@polywrap/wrap-manifest-types-js":"0.12.2"},"devDependencies":{"@polywrap/cli-js":"~0.11.0","@polywrap/core-client-js":"0.12.2","@polywrap/plugin-js":"0.12.2","@polywrap/test-cases":"0.12.2","@types/jest":"29.5.0","base64-to-uint8array":"1.0.0","copyfiles":"2.4.1","doc-snippets":"~1.0.0","jest":"29.5.0","rimraf":"3.0.2","ts-jest":"29.1.0","ts-node":"10.9.1","typescript":"4.9.5"},"publishConfig":{"access":"public"},"doc-snippets":{"extract":{"include":["./src/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}","./examples/**/*.{ts,tsx,json,yaml,txt,md,graphql,cue}"],"ignore":["./**/node_modules/**","./**/.polywrap/**","./**/__tests__/**"],"dir":"./"},"inject":{"dir":"./readme","include":"./README.md"},"startTokens":[{"pattern":"$start: ","inline":false},{"pattern":"/* $: {SNIPPET_NAME} */","inline":true}],"endTokens":[{"pattern":"$end","inline":false},{"pattern":"/* $ */","inline":true}],"outputDir":"./"},"_id":"@polywrap/uri-resolver-extensions-js@0.12.2","dist":{"shasum":"b8b2a3714f8bf36da3cd8d560b0f77af1e54b2ea","integrity":"sha512-WA1ythVxqviaQWPHmWVegeeXEstq/+WDWF3Xdkm1Hbrlb10rPSzL7iq4IH8Mz2jFfjtA5YTQoK+xtw55koWH5w==","tarball":"https://registry.npmjs.org/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.2.tgz","fileCount":57,"unpackedSize":113143,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIECYvyRSqMCpnJg8kI/2P3VWl25JWoK3pr4pqxlIrlC3AiAMwAIGulfqjWZ7Tj2i2RA5uuIbhGQUursRnzfJ0AnG4g=="}]},"_npmUser":{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},"directories":{},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/uri-resolver-extensions-js_0.12.2_1692576945877_0.6821211170563659"},"_hasShrinkwrap":false}},"time":{"created":"2022-09-24T18:31:13.959Z","0.8.0":"2022-09-24T18:31:14.137Z","modified":"2023-08-21T00:15:46.233Z","0.9.0":"2022-10-10T09:44:35.768Z","0.9.1":"2022-10-12T22:34:50.741Z","0.9.2":"2022-10-13T22:39:36.876Z","0.9.3":"2022-10-20T10:33:15.388Z","0.9.4":"2022-11-04T01:48:02.562Z","0.10.0-pre.0":"2022-11-05T07:24:10.557Z","0.10.0-pre.1":"2022-11-12T18:01:26.698Z","0.10.0-pre.3":"2022-11-13T00:38:32.284Z","0.10.0-pre.4":"2022-11-16T18:24:00.449Z","0.10.0-pre.5":"2022-11-22T04:48:28.678Z","0.10.0-pre.6":"2022-12-20T04:42:37.261Z","0.10.0-pre.7":"2023-01-11T02:16:09.108Z","0.9.5":"2023-02-10T23:24:31.205Z","0.10.0-pre.8":"2023-02-16T04:46:25.899Z","0.9.6":"2023-02-19T07:44:41.615Z","0.10.0-pre.10":"2023-03-01T03:32:25.031Z","0.10.0-pre.11":"2023-03-06T22:24:51.743Z","0.10.0-pre.12":"2023-03-14T05:07:39.228Z","0.10.0-pre.13":"2023-03-18T01:21:33.507Z","0.9.7":"2023-03-28T22:01:36.496Z","0.10.0-pre.14":"2023-04-13T04:02:57.350Z","0.10.0":"2023-04-14T05:16:03.960Z","0.10.1":"2023-04-29T05:02:11.099Z","0.11.0":"2023-06-27T02:00:59.231Z","0.12.0-pre.1":"2023-07-12T16:11:23.724Z","0.12.0":"2023-07-26T19:53:31.494Z","0.12.1":"2023-08-20T22:06:13.989Z","0.12.2":"2023-08-21T00:15:46.043Z"},"maintainers":[{"name":"polywrap-build-bot","email":"build-bot@polywrap.io"},{"name":"dorgjelli","email":"jelli@dorg.tech"}],"description":"Polywrap URI resolver extensions","repository":{"type":"git","url":"https://github.com/polywrap/javascript-client.git"},"license":"MIT","readme":"# @polywrap/uri-resolver-extensions-js\n\n<a href=\"https://www.npmjs.com/package/@polywrap/uri-resolver-extensions-js\" target=\"_blank\" rel=\"noopener noreferrer\">\n<img src=\"https://img.shields.io/npm/v/@polywrap/uri-resolver-extensions-js.svg\" alt=\"npm\"/>\n</a>\n\n<br/>\n<br/>\nPolywrap URI resolver extensions to customize resolution in the Polywrap Client.\n\n## Installation\n\n```bash\nnpm install --save @polywrap/uri-resolver-extensions-js\n```\n\n## Usage\n\nIf you build a configuration for the Polywrap client using the `PolywrapClientConfigBuilder` in the `@polywrap/client-config-builder-js` package, the `ExtendableUriResovler` is included by default. In that case you only need to register implementations of the URI Resolver Extension interface.\n\nOtherwise, you must also add the `ExtendableUriResolver` to your resolver.\n\n```ts\n  const clientConfig: CoreClientConfig = {\n    interfaces: new UriMap<Uri[]>([\n      [\n        Uri.from(\"wrapscan.io/polywrap/uri-resolver@1.0\"),\n        [\n          Uri.from(\"wrapscan.io/polywrap/file-system-uri-resolver@1.0.0\"),\n          Uri.from(\"wrapscan.io/polywrap/http-uri-resolver@1.0.0\"),\n          Uri.from(\"wrapscan.io/polywrap/ipfs-uri-resolver-async@1.0.0\"),\n          Uri.from(\"wrapscan.io/polywrap/wrapscan-uri-resolver@1.0.0\"),\n        ],\n      ],\n    ]),\n    resolver: RecursiveResolver.from(\n      [\n        StaticResolver.from([\n          ...redirects,\n          ...wrappers,\n          ...packages,\n        ]),\n        new ExtendableUriResolver(),\n      ]\n    )\n  };\n```\n\n# Reference\n\n## ExtendableUriResolver\n\n```ts\n/**\n * A Uri Resolver that delegates resolution to wrappers implementing the\n * URI Resolver Extension Interface.\n * */\nexport class ExtendableUriResolver extends UriResolverAggregatorBase<\n  Error,\n  Error\n> \n```\n\n### Properties\n\n#### extInterfaceUri (static)\n\n```ts\n  /** The supported interface URIs to which resolver-ext implementations should be registered */\n  public static defaultExtInterfaceUris: Uri[] = [\n    Uri.from(\"wrapscan.io/polywrap/uri-resolver@1.0\"),\n  ];\n```\n\n#### extInterfaceUri\n\n```ts\n  /** The active interface URIs to which implementations should be registered */\n  public readonly extInterfaceUris: Uri[];\n```\n\n### constructor\n\n```ts\n  /**\n   * Create an ExtendableUriResolver\n   *\n   * @param extInterfaceUris - URI Resolver Interface URIs\n   * @param resolverName - Name to use in resolution history output\n   * */\n  constructor(\n    extInterfaceUris: Uri[] = ExtendableUriResolver.defaultExtInterfaceUris,\n    resolverName = \"ExtendableUriResolver\"\n  ) \n```\n\n### Methods\n\n#### getUriResolvers\n\n```ts\n  /**\n   * Get a list of URI Resolvers\n   *\n   * @param uri - the URI to query for resolvers\n   * @param client - a CoreClient instance that can be used to make an invocation\n   * @param resolutionContext - the current URI resolution context\n   *\n   * @returns a list of IUriResolver or an error\n   * */\n  async getUriResolvers(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<IUriResolver<unknown>[], Error>> \n```\n\n#### tryResolverUri\n\n```ts\n  /**\n   * Resolve a URI to a wrap package, a wrapper, or a URI.\n   * Attempts resolution with each the URI Resolver Extension wrappers sequentially.\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, Error>> \n```\n\n#### getStepDescription (protected)\n\n```ts\n  /**\n   * A utility function for generating step descriptions to facilitate resolution context updates\n   *\n   * @returns text describing the URI resolution step\n   * */\n  protected getStepDescription = (): string \n```\n\n## UriResolverExtensionFileReader\n\n```ts\n/** An IFileReader that reads files by invoking URI Resolver Extension wrappers */\nexport class UriResolverExtensionFileReader implements IFileReader \n```\n\n### constructor\n\n```ts\n  /**\n   * Construct a UriResolverExtensionFileReader\n   *\n   * @param _resolverExtensionUri - URI of the URI Resolver Extension wrapper\n   * @param _wrapperUri - URI of the wrap package to read from\n   * @param _client - A CoreClient instance\n   * */\n  constructor(\n    private readonly _resolverExtensionUri: Uri,\n    private readonly _wrapperUri: Uri,\n    private readonly _client: CoreClient\n  ) \n```\n\n### Methods\n\n#### readFile\n\n```ts\n  /**\n   * Read a file\n   *\n   * @param filePath - the file's path from the wrap package root\n   *\n   * @returns a Result containing a buffer if successful, or an error\n   * */\n  async readFile(filePath: string): Promise<Result<Uint8Array, Error>> \n```\n\n## UriResolverWrapper\n\n```ts\n/**\n * An IUriResolver that delegates resolution to a wrapper that implements\n * the URI Resolver Extension Interface\n * */\nexport class UriResolverWrapper implements IUriResolver<unknown> \n```\n\n### constructor\n\n```ts\n  /**\n   * construct a UriResolverWrapper\n   *\n   * @param implementationUri - URI that resolves to a URI Resolver Extension implementation\n   * */\n  constructor(public readonly implementationUri: Uri) \n```\n\n### Methods\n\n#### tryResolverUri\n\n```ts\n  /**\n   * Attempt to resolve a URI by invoking a URI Resolver Extension wrapper, then\n   * parse the result to a wrap package, a wrapper, or a URI\n   *\n   * @param uri - the URI to resolve\n   * @param client - a CoreClient instance that may be used to invoke a wrapper that implements the UriResolver interface\n   * @param resolutionContext - the current URI resolution context\n   * @returns A Promise with a Result containing either a wrap package, a wrapper, or a URI if successful\n   */\n  async tryResolveUri(\n    uri: Uri,\n    client: CoreClient,\n    resolutionContext: IUriResolutionContext\n  ): Promise<Result<UriPackageOrWrapper, unknown>> \n```\n\n## Development\n\nThis package is open-source. It lives within the [Polywrap JavaScript Client repository](https://github.com/polywrap/javascript-client). Contributions from the community are welcomed!\n\n### Build\n\n```bash\nnvm use && yarn install && yarn build\n```\n\n### Test\n\n```bash\nyarn test\n```\n","readmeFilename":"README.md"}