diff --git a/package-lock.json b/package-lock.json index 25638d3a..343b1a74 100644 --- a/package-lock.json +++ b/package-lock.json @@ -105,7 +105,7 @@ } }, "examples/data-exchange": { - "name": "www", + "name": "exchange", "version": "0.1.0", "dependencies": { "@tabler/icons-react": "^2.17.0", @@ -4594,6 +4594,7 @@ "version": "8.4.1", "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-8.4.1.tgz", "integrity": "sha512-XQ3cU+Q8Uqmrbf2e0cIC/QN43sTBSC8KF12u29Mb47tWrt2hAgBXSgpZMj4Ao8Uk0iJcU99QsOCaIL8934obCg==", + "dev": true, "funding": [ { "type": "opencollective", @@ -10409,18 +10410,6 @@ "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", "dev": true }, - "node_modules/@sindresorhus/is": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-6.2.0.tgz", - "integrity": "sha512-yM/IGPkVnYGblhDosFBwq0ZGdnVSBkNV4onUtipGMOjZd4kB6GAu3ys91aftSbyMHh6A2GPdt+KDI5NoWP63MQ==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, "node_modules/@storybook/addon-actions": { "version": "7.6.17", "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-7.6.17.tgz", @@ -12981,18 +12970,6 @@ "tslib": "^2.4.0" } }, - "node_modules/@szmarczak/http-timer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz", - "integrity": "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==", - "dev": true, - "dependencies": { - "defer-to-connect": "^2.0.1" - }, - "engines": { - "node": ">=14.16" - } - }, "node_modules/@tabler/icons": { "version": "2.47.0", "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-2.47.0.tgz", @@ -13495,7 +13472,8 @@ "node_modules/@types/geojson": { "version": "7946.0.14", "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.14.tgz", - "integrity": "sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==" + "integrity": "sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==", + "dev": true }, "node_modules/@types/glob": { "version": "7.2.0", @@ -13533,12 +13511,6 @@ "@types/unist": "^2" } }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", - "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", - "dev": true - }, "node_modules/@types/http-errors": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", @@ -13642,6 +13614,7 @@ "version": "1.9.8", "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.9.8.tgz", "integrity": "sha512-EXdsL4EhoUtGm2GC2ZYtXn+Fzc6pluVgagvo2VC1RHWToLGlTRwVYoDpqS/7QXa01rmDyBjJk3Catpf60VMkwg==", + "dev": true, "dependencies": { "@types/geojson": "*" } @@ -15796,45 +15769,6 @@ "node": ">=8" } }, - "node_modules/cacheable-lookup": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz", - "integrity": "sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==", - "dev": true, - "engines": { - "node": ">=14.16" - } - }, - "node_modules/cacheable-request": { - "version": "10.2.14", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.14.tgz", - "integrity": "sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==", - "dev": true, - "dependencies": { - "@types/http-cache-semantics": "^4.0.2", - "get-stream": "^6.0.1", - "http-cache-semantics": "^4.1.1", - "keyv": "^4.5.3", - "mimic-response": "^4.0.0", - "normalize-url": "^8.0.0", - "responselike": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - } - }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/call-bind": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", @@ -17854,33 +17788,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dev": true, - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/deep-eql": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", @@ -17967,15 +17874,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -19592,6 +19490,10 @@ "node": ">=0.8.x" } }, + "node_modules/exchange": { + "resolved": "examples/data-exchange", + "link": true + }, "node_modules/execa": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", @@ -20317,15 +20219,6 @@ "node": ">= 6" } }, - "node_modules/form-data-encoder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-4.0.2.tgz", - "integrity": "sha512-KQVhvhK8ZkWzxKxOr56CPulAhH3dobtuQ4+hNQ+HekH/Wp5gSOafqRAeTphQUJAIk0GBvHZgJ2ZGRWd5kphMuw==", - "dev": true, - "engines": { - "node": ">= 18" - } - }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -20773,31 +20666,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/got/-/got-14.2.0.tgz", - "integrity": "sha512-dBq2KkHcQl3AwPoIWsLsQScCPpUgRulz1qZVthjPYKYOPmYfBnekR3vxecjZbm91Vc3JUGnV9mqFX7B+Fe2quw==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^6.1.0", - "@szmarczak/http-timer": "^5.0.1", - "cacheable-lookup": "^7.0.0", - "cacheable-request": "^10.2.14", - "decompress-response": "^6.0.0", - "form-data-encoder": "^4.0.2", - "get-stream": "^8.0.1", - "http2-wrapper": "^2.2.1", - "lowercase-keys": "^3.0.0", - "p-cancelable": "^4.0.1", - "responselike": "^3.0.0" - }, - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -21624,12 +21492,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -21659,19 +21521,6 @@ "node": ">= 14" } }, - "node_modules/http2-wrapper": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz", - "integrity": "sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==", - "dev": true, - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.2.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, "node_modules/https-proxy-agent": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-6.2.1.tgz", @@ -23281,6 +23130,18 @@ "node": ">=6" } }, + "node_modules/ky": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/ky/-/ky-1.2.2.tgz", + "integrity": "sha512-gYA2QOI3uIaImJPJjaBbLCdvKHzwxsuB03s7PjrXmoO6tcn6k53rwYoSRgqrmVsEV6wFFegOXDVjABxFZ0aRSg==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sindresorhus/ky?sponsor=1" + } + }, "node_modules/language-subtag-registry": { "version": "0.3.22", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", @@ -24027,18 +23888,6 @@ "tslib": "^2.0.3" } }, - "node_modules/lowercase-keys": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", - "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -25706,18 +25555,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mimic-response": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz", - "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -26549,18 +26386,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-url": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.0.tgz", - "integrity": "sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm-run-all": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", @@ -27119,15 +26944,6 @@ "integrity": "sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==", "dev": true }, - "node_modules/p-cancelable": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-4.0.1.tgz", - "integrity": "sha512-wBowNApzd45EIKdO1LaU+LrMBwAcjfPaYtVzV3lmfM3gf8Z4CHZsiIqlM8TZZ8okYvh5A1cP6gTfCRQtwUpaUg==", - "dev": true, - "engines": { - "node": ">=14.16" - } - }, "node_modules/p-filter": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz", @@ -28818,18 +28634,6 @@ } ] }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/ramda": { "version": "0.29.0", "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.29.0.tgz", @@ -30157,12 +29961,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-alpn": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", - "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", - "dev": true - }, "node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", @@ -30180,21 +29978,6 @@ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } }, - "node_modules/responselike": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz", - "integrity": "sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==", - "dev": true, - "dependencies": { - "lowercase-keys": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -30701,17 +30484,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/screenfull": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-6.0.2.tgz", - "integrity": "sha512-AQdy8s4WhNvUZ6P8F6PB21tSPIYKniic+Ogx0AacBMjKP1GUHN2E9URxQHtCusiwxudnCKkdy4GrHXPPJSkCCw==", - "engines": { - "node": "^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/scroll-into-view-if-needed": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz", @@ -32687,11 +32459,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/tilelayer-canvas": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tilelayer-canvas/-/tilelayer-canvas-1.1.3.tgz", - "integrity": "sha512-jMQbMipLT66bNyVSsJ7+O9igiXuNDXwovYqeijMtx6+7vrvI6Eg4+dgYj5uDBOWk4EmrIY/gMEQ6gMKl6LiZVQ==" - }, "node_modules/tiny-inflate": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", @@ -35832,10 +35599,6 @@ } } }, - "node_modules/www": { - "resolved": "examples/data-exchange", - "link": true - }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -36023,8 +35786,8 @@ "@vercel/ncc": "^0.38.0", "async-retry": "^1.3.3", "commander": "^11.0.0", - "got": "^14.1.0", "gradient-string": "^2.0.2", + "ky": "^1.2.2", "picocolors": "^1.0.0", "tar": "^6.2.0", "validate-npm-package-name": "^5.0.0" @@ -36350,7 +36113,6 @@ "license": "MIT", "dependencies": { "@ariakit/react": "^0.3.14", - "@faker-js/faker": "^8.0.1", "@hookform/resolvers": "^3.3.4", "@internationalized/date": "^3.2.0", "@radix-ui/react-alert-dialog": "^1.0.3", @@ -36373,7 +36135,6 @@ "@react-types/shared": "^3.18.0", "@tabler/icons-react": "^2.17.0", "@tanstack/react-table": "^8.9.1", - "@types/leaflet": "^1.9.8", "clsx": "^2.1.0", "cmdk": "^0.2.0", "echarts": "^5.4.3", @@ -36390,14 +36151,13 @@ "react-medium-image-zoom": "^5.1.10", "react-stately": "^3.21.0", "satori": "^0.10.11", - "screenfull": "^6.0.2", "sonner": "^1.3.1", "tailwind-merge": "^1.12.0", - "tilelayer-canvas": "^1.1.3", "usehooks-ts": "^2.13.0", "vaul": "^0.9.0" }, "devDependencies": { + "@faker-js/faker": "^8.4.1", "@rollup/plugin-commonjs": "^25.0.1", "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-terser": "^0.4.1", @@ -36417,6 +36177,7 @@ "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@types/figlet": "^1.5.8", + "@types/leaflet": "^1.9.8", "@types/react": "^18.2.0", "@types/react-dom": "^18.2.0", "@types/react-portal": "^4.0.4", diff --git a/packages/create-opub-app/package.json b/packages/create-opub-app/package.json index 1a43bdf0..12759143 100644 --- a/packages/create-opub-app/package.json +++ b/packages/create-opub-app/package.json @@ -1,6 +1,6 @@ { "name": "create-opub-app", - "version": "0.1.4", + "version": "0.1.5", "publishConfig": { "access": "public" }, @@ -43,8 +43,8 @@ "@vercel/ncc": "^0.38.0", "async-retry": "^1.3.3", "commander": "^11.0.0", - "got": "^14.1.0", "gradient-string": "^2.0.2", + "ky": "^1.2.2", "picocolors": "^1.0.0", "tar": "^6.2.0", "validate-npm-package-name": "^5.0.0" diff --git a/packages/create-opub-app/utils/repo.ts b/packages/create-opub-app/utils/repo.ts index e0c2da00..8e76b38b 100644 --- a/packages/create-opub-app/utils/repo.ts +++ b/packages/create-opub-app/utils/repo.ts @@ -1,9 +1,9 @@ -import { createWriteStream, promises as fs } from 'fs'; +import { promises as fs } from 'fs'; +import { createWriteStream } from 'node:fs'; +import { pipeline } from 'node:stream/promises'; import { tmpdir } from 'os'; import { join } from 'path'; -import { Stream } from 'stream'; -import { promisify } from 'util'; -import got from 'got'; +import ky from 'ky'; import tar from 'tar'; import { colors } from './logger'; @@ -15,14 +15,7 @@ export type RepoInfo = { filePath: string; }; -const pipeline = promisify(Stream.pipeline); - -export async function isUrlOk(url: string): Promise { - const res = await got.head(url).catch((e) => e); - return res.statusCode === 200; -} - -export async function getRepoInfo(url: URL): Promise { +async function getRepoInfo(url: URL): Promise { const [, username, name, t, _branch, ...file] = url.pathname.split('/'); const filePath = file.join('/'); @@ -35,9 +28,10 @@ export async function getRepoInfo(url: URL): Promise { // In this case "t" will be an empty string while the next part "_branch" will be undefined (t === '' && _branch === undefined) ) { - const infoResponse = await got( + const infoResponse = await ky( `https://api.github.com/repos/${username}/${name}` ).catch((e) => e); + if (infoResponse.statusCode !== 200) { return; } @@ -52,21 +46,11 @@ export async function getRepoInfo(url: URL): Promise { } } -export function hasRepo({ - username, - name, - branch, - filePath, -}: RepoInfo): Promise { - const contentsUrl = `https://api.github.com/repos/${username}/${name}/contents`; - const packagePath = `${filePath ? `/${filePath}` : ''}/package.json`; - - return isUrlOk(contentsUrl + packagePath + `?ref=${branch}`); -} - async function downloadTar(url: string) { const tempFile = join(tmpdir(), `next.js-cna-example.temp-${Date.now()}`); - await pipeline(got.stream(url), createWriteStream(tempFile)); + const response: any = await fetch(url); + + await pipeline(response.body, createWriteStream(tempFile)); return tempFile; } @@ -126,17 +110,6 @@ export async function verifyURL(example: string) { ); process.exit(1); } - - const found = await hasRepo(repoInfo); - - if (!found) { - console.error( - `Could not locate the repository for ${colors.error( - `"${example}"` - )}. Please check that the repository exists and try again.` - ); - process.exit(1); - } } return repoInfo; diff --git a/packages/opub-ui/package.json b/packages/opub-ui/package.json index 0f7c0377..39a7fbd7 100644 --- a/packages/opub-ui/package.json +++ b/packages/opub-ui/package.json @@ -66,7 +66,6 @@ }, "dependencies": { "@ariakit/react": "^0.3.14", - "@faker-js/faker": "^8.0.1", "@hookform/resolvers": "^3.3.4", "@internationalized/date": "^3.2.0", "@radix-ui/react-alert-dialog": "^1.0.3", @@ -89,7 +88,6 @@ "@react-types/shared": "^3.18.0", "@tabler/icons-react": "^2.17.0", "@tanstack/react-table": "^8.9.1", - "@types/leaflet": "^1.9.8", "clsx": "^2.1.0", "cmdk": "^0.2.0", "echarts": "^5.4.3", @@ -106,14 +104,13 @@ "react-medium-image-zoom": "^5.1.10", "react-stately": "^3.21.0", "satori": "^0.10.11", - "screenfull": "^6.0.2", "sonner": "^1.3.1", "tailwind-merge": "^1.12.0", - "tilelayer-canvas": "^1.1.3", "usehooks-ts": "^2.13.0", "vaul": "^0.9.0" }, "devDependencies": { + "@faker-js/faker": "^8.4.1", "@rollup/plugin-commonjs": "^25.0.1", "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-terser": "^0.4.1", @@ -133,6 +130,7 @@ "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@types/figlet": "^1.5.8", + "@types/leaflet": "^1.9.8", "@types/react": "^18.2.0", "@types/react-dom": "^18.2.0", "@types/react-portal": "^4.0.4",