diff --git a/.gitignore b/.gitignore index 29fe3d7..68969f0 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,6 @@ schema.graphql # Local .local + +# Pnpm +.pnpm-store diff --git a/.scripts/generateCID.ts b/.scripts/generateCID.ts new file mode 100644 index 0000000..df83eaf --- /dev/null +++ b/.scripts/generateCID.ts @@ -0,0 +1,27 @@ +import { CID } from 'multiformats/cid'; +import { sha256 } from 'multiformats/hashes/sha2'; + +async function textToCidV0(text: string): Promise { + const textEncoder = new TextEncoder(); + const bytes = textEncoder.encode(text); + + const hash = await sha256.digest(bytes); + + const cid = CID.createV0(hash); + + return cid.toString(); +} + +const text = process.argv[2]; + +if (!text) { + console.error('👹 Oops! Please provide some text/content'); + process.exit(1); +} + +textToCidV0(text).then(cidString => { + console.log('✅ CIDv0:', cidString); +}).catch(error => { + console.error('👹 Oops! found error:', error); + process.exit(1); +}); diff --git a/package.json b/package.json index 437cd25..10dc6fc 100644 --- a/package.json +++ b/package.json @@ -53,8 +53,7 @@ "@biomejs/biome": "^1.8.3", "@changesets/cli": "^2.27.6", "@fleek-platform/errors": "^2.7.0", - "@fleek-platform/tester": "^2.11.0", - "@fleek-platform/utils-genql-client": "^0.1.1", + "@fleek-platform/utils-genql-client": "^0.2.1", "@fleek-platform/utils-token": "^0.2.0", "@jspm/core": "^2.0.1", "@tsconfig/node16": "^16.1.3", @@ -71,8 +70,10 @@ "esbuild": "^0.21.4", "esbuild-plugin-polyfill-node": "^0.3.0", "esbuild-plugins-node-modules-polyfill": "^1.6.4", + "graphql": "^16.9.0", "import-meta-resolve": "^4.1.0", "ipfs-http-client": "56.0.3", + "msw": "^2.5.0", "multiformats": "^12.1.3", "native-fetch": "^4.0.2", "typescript": "5.6.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4a2d3f2..925b356 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,12 +48,9 @@ importers: '@fleek-platform/errors': specifier: ^2.7.0 version: 2.7.0 - '@fleek-platform/tester': - specifier: ^2.11.0 - version: 2.11.0(encoding@0.1.13)(graphql@15.9.0) '@fleek-platform/utils-genql-client': - specifier: ^0.1.1 - version: 0.1.1 + specifier: ^0.2.1 + version: 0.2.1 '@fleek-platform/utils-token': specifier: ^0.2.0 version: 0.2.0 @@ -80,7 +77,7 @@ importers: version: 0.0.33 '@vitest/coverage-v8': specifier: 1.3.1 - version: 1.3.1(vitest@2.1.1(@types/node@22.6.1)) + version: 1.3.1(vitest@2.1.1(@types/node@22.6.1)(msw@2.5.0(typescript@5.6.2))) '@web3-storage/upload-client': specifier: ^17.0.1 version: 17.0.1(encoding@0.1.13) @@ -102,12 +99,18 @@ importers: esbuild-plugins-node-modules-polyfill: specifier: ^1.6.4 version: 1.6.6(esbuild@0.21.5) + graphql: + specifier: ^16.9.0 + version: 16.9.0 import-meta-resolve: specifier: ^4.1.0 version: 4.1.0 ipfs-http-client: specifier: 56.0.3 version: 56.0.3(encoding@0.1.13)(node-fetch@2.7.0(encoding@0.1.13)) + msw: + specifier: ^2.5.0 + version: 2.5.0(typescript@5.6.2) multiformats: specifier: ^12.1.3 version: 12.1.3 @@ -119,7 +122,7 @@ importers: version: 5.6.2 vitest: specifier: 2.1.1 - version: 2.1.1(@types/node@22.6.1) + version: 2.1.1(@types/node@22.6.1)(msw@2.5.0(typescript@5.6.2)) Examples: dependencies: @@ -213,6 +216,15 @@ packages: cpu: [x64] os: [win32] + '@bundled-es-modules/cookie@2.0.0': + resolution: {integrity: sha512-Or6YHg/kamKHpxULAdSqhGqnWFneIXu1NKvvfBBzKGwpVsYuFIQ5aBPHDnnoR3ghW1nvSkALd+EF9iMtY7Vjxw==} + + '@bundled-es-modules/statuses@1.0.1': + resolution: {integrity: sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg==} + + '@bundled-es-modules/tough-cookie@0.1.6': + resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==} + '@changesets/apply-release-plan@7.0.5': resolution: {integrity: sha512-1cWCk+ZshEkSVEZrm2fSj1Gz8sYvxgUL4Q78+1ZZqeqfuevPTPk033/yUZ3df8BKMohkqqHfzj0HOOrG0KtXTw==} @@ -268,14 +280,6 @@ packages: '@changesets/write@0.3.2': resolution: {integrity: sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==} - '@envelop/core@5.0.2': - resolution: {integrity: sha512-tVL6OrMe6UjqLosiE+EH9uxh2TQC0469GwF4tE014ugRaDDKKVWwFwZe0TBMlcyHKh5MD4ZxktWo/1hqUxIuhw==} - engines: {node: '>=18.0.0'} - - '@envelop/types@5.0.0': - resolution: {integrity: sha512-IPjmgSc4KpQRlO4qbEDnBEixvtb06WDmjKfi/7fkZaryh5HuOmTtixe1EupQI5XfXO8joc3d27uUZ0QdC++euA==} - engines: {node: '>=18.0.0'} - '@esbuild/aix-ppc64@0.21.5': resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} engines: {node: '>=12'} @@ -424,88 +428,28 @@ packages: '@fleek-platform/errors@2.7.0': resolution: {integrity: sha512-56moPR+V6bW6l+8KopmK4vfx0XU3i2s9UHNgAXXgGn/tBvgFN5bjHe4uT/K6i9Q/S3f5kAOgul6KseV1sucDKQ==} - '@fleek-platform/tester@2.11.0': - resolution: {integrity: sha512-qJO5PfyxrguQkwdvPGLDYRIAilPVxiRXeIf0NY4TvIp0rPYZJHaBmig+jJKB6R4iivhZjpBw/v0E9aXXhvIvOw==} - - '@fleek-platform/utils-genql-client@0.1.1': - resolution: {integrity: sha512-0xXiTYmYl0sTSZgXX0xDMtTssFTJF83PzVmQ8izjEHe0lCx2VkaziDFiohAd4+87NNeoYsTP+5408vhHgi3vdA==} + '@fleek-platform/utils-genql-client@0.2.1': + resolution: {integrity: sha512-q2MtlgH4QkMnHh+1OBuBi0klZIn5UpBnM9VNO3n25EAh/91ppWxdjCV3kNALi/hNV2B+lOeoQDjeiE922lMiBA==} '@fleek-platform/utils-token@0.2.0': resolution: {integrity: sha512-vEFonU2lMMgxIA4qcyPppZc3PxgFde3KA2UJKPhIsL0lu5UT8v7LsNsWbc/ovJJ7klV+iQBlkREM2Mwx5qd3Dw==} engines: {node: '>=18.18.2'} - '@graphql-tools/executor@1.3.1': - resolution: {integrity: sha512-tgJDdGf9SCAm64ofEMZdv925u6/J+eTmv36TGNLxgP2DpCJsZ6gnJ4A+0D28EazDXqJIvMiPd+3d+o3cCRCAnQ==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/merge@8.3.1': - resolution: {integrity: sha512-BMm99mqdNZbEYeTPK3it9r9S6rsZsQKtlqJsSBknAclXq2pGEfOxjcIZi+kBSkHZKPKCRrYDd5vY0+rUmIHVLg==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/merge@9.0.7': - resolution: {integrity: sha512-lbTrIuXIbUSmSumHkPRY1QX0Z8JEtmRhnIrkH7vkfeEmf0kNn/nCWvJwqokm5U7L+a+DA1wlRM4slIlbfXjJBA==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/schema@10.0.6': - resolution: {integrity: sha512-EIJgPRGzpvDFEjVp+RF1zNNYIC36BYuIeZ514jFoJnI6IdxyVyIRDLx/ykgMdaa1pKQerpfdqDnsF4JnZoDHSQ==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/schema@8.5.1': - resolution: {integrity: sha512-0Esilsh0P/qYcB5DKQpiKeQs/jevzIadNTaT0jeWklPMwNbT7yMX4EqZany7mbeRRlSRwMzNzL5olyFdffHBZg==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/utils@10.5.4': - resolution: {integrity: sha512-XHnyCWSlg1ccsD8s0y6ugo5GZ5TpkTiFVNPSYms5G0s6Z/xTuSmiLBfeqgkfaCwLmLaQnRCmNDL2JRnqc2R5bQ==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/utils@8.13.1': - resolution: {integrity: sha512-qIh9yYpdUFmctVqovwMdheVNJqFh+DQNWIhX87FJStfXYnmweBUDATok9fWPleKeFwxnW8IapKmY8m8toJEkAw==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/utils@8.9.0': - resolution: {integrity: sha512-pjJIWH0XOVnYGXCqej8g/u/tsfV4LvLlj0eATKQu5zwnxd/TiTHq7Cg313qUPTFFHZ3PP5wJ15chYVtLDwaymg==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-typed-document-node/core@3.2.0': - resolution: {integrity: sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==} - peerDependencies: - graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-yoga/logger@2.0.0': - resolution: {integrity: sha512-Mg8psdkAp+YTG1OGmvU+xa6xpsAmSir0hhr3yFYPyLNwzUj95DdIwsMpKadDj9xDpYgJcH3Hp/4JMal9DhQimA==} - engines: {node: '>=18.0.0'} - - '@graphql-yoga/subscription@5.0.1': - resolution: {integrity: sha512-1wCB1DfAnaLzS+IdoOzELGGnx1ODEg9nzQXFh4u2j02vAnne6d+v4A7HIH9EqzVdPLoAaMKXCZUUdKs+j3z1fg==} - engines: {node: '>=18.0.0'} - - '@graphql-yoga/typed-event-target@3.0.0': - resolution: {integrity: sha512-w+liuBySifrstuHbFrHoHAEyVnDFVib+073q8AeAJ/qqJfvFvAwUPLLtNohR/WDVRgSasfXtl3dcNuVJWN+rjg==} - engines: {node: '>=18.0.0'} + '@inquirer/confirm@4.0.1': + resolution: {integrity: sha512-46yL28o2NJ9doViqOy0VDcoTzng7rAb6yPQKU7VDLqkmbCaH4JqK4yk4XqlzNWy9PVC5pG1ZUXPBQv+VqnYs2w==} + engines: {node: '>=18'} - '@httptoolkit/httpolyglot@2.2.1': - resolution: {integrity: sha512-HOS/0zWc3yn7NM0RQFgBeepeTE8eAKtyOkcGL/TV6if5MAfr+3bH9rwCyAhbXbjlLVR3afeBRt8JYKEerDcygA==} - engines: {node: '>=12.0.0'} + '@inquirer/core@9.2.1': + resolution: {integrity: sha512-F2VBt7W/mwqEU4bL0RnHNZmC/OxzNx9cOYxHqnXX3MP6ruYvZUZAW9imgN9+h/uBT/oP8Gh888J2OZSbjSeWcg==} + engines: {node: '>=18'} - '@httptoolkit/subscriptions-transport-ws@0.11.2': - resolution: {integrity: sha512-YB+gYYVjgYUeJrGkfS91ABeNWCFU7EVcn9Cflf2UXjsIiPJEI6yPxujPcjKv9wIJpM+33KQW/qVEmc+BdIDK2w==} - peerDependencies: - graphql: ^15.7.2 || ^16.0.0 + '@inquirer/figures@1.0.7': + resolution: {integrity: sha512-m+Trk77mp54Zma6xLkLuY+mvanPxlE4A7yNKs2HBiyZ4UkVs28Mv5c/pgWrHeInx+USHeX/WEPzjrWrcJiQgjw==} + engines: {node: '>=18'} - '@httptoolkit/websocket-stream@6.0.1': - resolution: {integrity: sha512-A0NOZI+Glp3Xgcz6Na7i7o09+/+xm2m0UCU8gdtM2nIv6/cjLmhMZMqehSpTlgbx9omtLmV8LVqOskPEyWnmZQ==} + '@inquirer/type@2.0.0': + resolution: {integrity: sha512-XvJRx+2KR3YXyYtPUUy+qd9i7p+GO9Ko6VIIpWlBrpWwXDv8WLFeHTxz35CfQFUiBMLXlGHhGzys7lqit9gWag==} + engines: {node: '>=18'} '@ipld/car@5.3.2': resolution: {integrity: sha512-Bb4XrCFlnsCb9tTzZ1I8zo9O61D9qm7HfvuYrQ9gzdE8YhjyVIjrjmHmnoSWV/uCmyc2/bcqiDPIg+9WljXNzg==} @@ -566,15 +510,16 @@ packages: '@jspm/core@2.0.1': resolution: {integrity: sha512-Lg3PnLp0QXpxwLIAuuJboLeRaIhrgJjeuh797QADg3xz8wGLugQOS5DpsE8A6i6Adgzf+bacllkKZG3J0tGfDw==} - '@kamilkisiela/fast-url-parser@1.1.4': - resolution: {integrity: sha512-gbkePEBupNydxCelHCESvFSFM8XPh1Zs/OAVRW/rKpEqPAl5PbOM90Si8mv9bvnR53uPD2s/FiRxdvSejpRJew==} - '@manypkg/find-root@1.1.0': resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} '@manypkg/get-packages@1.1.3': resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} + '@mswjs/interceptors@0.36.5': + resolution: {integrity: sha512-aQ8WF5zQwOdcxLsxSEk9Jd01GgGb80xxqCaiDDlewhtwqpSm8MOvUHslwPydVirasdW09++NxDNNftm1vLY8yA==} + engines: {node: '>=18'} + '@multiformats/murmur3@2.1.8': resolution: {integrity: sha512-6vId1C46ra3R1sbJUOFCZnsUIveR9oF20yhPmAFxPm0JfrX3/ZRCgP3YDrBzlGoEppOXnA9czHeYc0T9mB6hbA==} engines: {node: '>=16.0.0', npm: '>=7.0.0'} @@ -602,6 +547,15 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@open-draft/deferred-promise@2.2.0': + resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==} + + '@open-draft/logger@0.3.0': + resolution: {integrity: sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==} + + '@open-draft/until@2.1.0': + resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==} + '@oven/bun-darwin-aarch64@1.1.29': resolution: {integrity: sha512-Z8WnrXoAXg6ENU6z+Mil94oipMBMliJIj4XWWqjNC33/ZGPqMdPT5MbFQjbdHjxe5bRBW/aHaMU3G35fGx9Seg==} cpu: [arm64] @@ -675,9 +629,6 @@ packages: '@protobufjs/utf8@1.1.0': resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} - '@repeaterjs/repeater@3.0.6': - resolution: {integrity: sha512-Javneu5lsuhwNCryN+pXH93VPQ8g0dBX7wItHFgYiwQmzE1sVdg5tWHiOgHywzL2W21XQopa7IwIEnNbmeUJYA==} - '@rollup/rollup-android-arm-eabi@4.22.5': resolution: {integrity: sha512-SU5cvamg0Eyu/F+kLeMXS7GoahL+OoizlclVFX3l5Ql6yNlywJJ0OuqTzUx0v+aHhPHEB/56CT06GQrRrGNYww==} cpu: [arm] @@ -761,14 +712,11 @@ packages: '@storacha/one-webcrypto@1.0.1': resolution: {integrity: sha512-bD+vWmcgsEBqU0Dz04BR43SA03bBoLTAY29vaKasY9Oe8cb6XIP0/vkm0OS2UwKC13c8uRgFW4rjJUgDCNLejQ==} - '@tootallnate/quickjs-emscripten@0.23.0': - resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} - '@tsconfig/node16@16.1.3': resolution: {integrity: sha512-9nTOUBn+EMKO6rtSZJk+DcqsfgtlERGT9XPJ5PRj/HNENPCBY1yu/JEj5wT6GLtbCLBO2k46SeXDaY0pjMqypw==} - '@types/cors@2.8.17': - resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==} + '@types/cookie@0.6.0': + resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} '@types/detect-node@2.0.2': resolution: {integrity: sha512-2r16DIvQ3dLcRHBPzbdlPsqUWvNaIE7g3fPlGcoA5IF0Nvv7gaONWleB2rhEmggvj/P5VvxseWchR2noncrgGg==} @@ -791,6 +739,9 @@ packages: '@types/minimatch@3.0.5': resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==} + '@types/mute-stream@0.0.4': + resolution: {integrity: sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==} + '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} @@ -803,6 +754,12 @@ packages: '@types/semver@7.5.8': resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + '@types/statuses@2.0.5': + resolution: {integrity: sha512-jmIUGWrAiwu3dZpxntxieC+1n/5c3mjrImkmOSQ2NC5uP6cYO4aAZDdSmRcI5C1oiTmqlZGHC+/NmJrKogbP5A==} + + '@types/tough-cookie@4.0.5': + resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} + '@types/whatwg-fetch@0.0.33': resolution: {integrity: sha512-XSWTlUwpjUyLiDu50HhtpUyhvt7QND1ANfyFfiw/TH63GC1ngZMl2rgxuH5SQKfPjMoKRXv94r7crWnJ3mg5tA==} deprecated: fetch types are now provided by '--lib dom' @@ -811,8 +768,8 @@ packages: resolution: {integrity: sha512-Syv05sRL25b8cC8tqgXSQgLZZmqGq2GO+NafrtHbjPJccP6gWBXmHvo2Trw3AWXQ4QLIkVuOB7uStCuhzswyiw==} deprecated: This is a stub types definition. whatwg-streams provides its own type definitions, so you do not need this installed. - '@types/ws@8.5.12': - resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==} + '@types/wrap-ansi@3.0.0': + resolution: {integrity: sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==} '@ucanto/client@9.0.1': resolution: {integrity: sha512-cV8w3AnaZaYCdUmyFFICj8YhFckDoy2DvWgAzGDMkPz0WbUW4lw9Tjm4hEE8x5kiP47wYej/pHKWCcoELiU0qw==} @@ -895,29 +852,9 @@ packages: '@web3-storage/upload-client@17.0.1': resolution: {integrity: sha512-+ELz3y32YmiMvuPD/fZgCEqn/KvvoUKcZ2ao+9wosfs6GJ8/j6lhxkEkwnICiwU2tLEB+FUsOuCDFquOSW1rKg==} - '@whatwg-node/events@0.1.2': - resolution: {integrity: sha512-ApcWxkrs1WmEMS2CaLLFUEem/49erT3sxIVjpzU5f6zmVcnijtDSrhoK2zVobOIikZJdH63jdAXOrvjf6eOUNQ==} - engines: {node: '>=18.0.0'} - - '@whatwg-node/fetch@0.9.21': - resolution: {integrity: sha512-Wt0jPb+04JjobK0pAAN7mEHxVHcGA9HoP3OyCsZtyAecNQeADXCZ1MihFwVwjsgaRYuGVmNlsCmLxlG6mor8Gw==} - engines: {node: '>=18.0.0'} - - '@whatwg-node/node-fetch@0.5.26': - resolution: {integrity: sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==} - engines: {node: '>=18.0.0'} - - '@whatwg-node/server@0.9.49': - resolution: {integrity: sha512-3KzLXw80gWnTsQ746G/LFdCThTPfDodjQs4PnmoNuPa6XUOl4HWq8TlJpxtmnEEB+y+UYLal+3VQ68dtYlbUDQ==} - engines: {node: '>=18.0.0'} - '@zxing/text-encoding@0.9.0': resolution: {integrity: sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==} - accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - acorn@8.12.1: resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} engines: {node: '>=0.4.0'} @@ -926,18 +863,14 @@ packages: actor@2.3.1: resolution: {integrity: sha512-ST/3wnvcP2tKDXnum7nLCLXm+/rsf8vPocXH2Fre6D8FQwNkGDd4JEitBlXj007VQJfiGYRQvXqwOBZVi+JtRg==} - agent-base@6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - - agent-base@7.1.1: - resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} - engines: {node: '>= 14'} - ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -952,33 +885,14 @@ packages: argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} - array-flatten@1.1.1: - resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - asn1.js@4.10.1: - resolution: {integrity: sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==} - - assert@2.1.0: - resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==} - assertion-error@2.0.1: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} engines: {node: '>=12'} - ast-types@0.13.4: - resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} - engines: {node: '>=4'} - - async-mutex@0.5.0: - resolution: {integrity: sha512-1A94B18jkJ3DYq284ohPxoXbfTA5HsQ7/Mf4DEhcyLx3Bz27Rh59iScbB6EPiP+B+joue6YCxcMXSbFC1tZKwA==} - - async@2.6.4: - resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} - asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} @@ -986,30 +900,15 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - aws-ssl-profiles@1.1.2: - resolution: {integrity: sha512-NZKeq9AfyQvEeNlN0zSYAaWrmBffJh3IELMZfRpJVWgrpEbtEpnjvzqBPf+mxoI287JohRDoa+/nsfqqiZmF6g==} - engines: {node: '>= 6.0.0'} - axios@1.7.7: resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==} - backo2@1.0.2: - resolution: {integrity: sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==} - balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - base64-arraybuffer@0.1.5: - resolution: {integrity: sha512-437oANT9tP582zZMwSvZGy2nmSeAb8DW2me3y+Uv1Wp2Rulr8Mqlyrv3E7MLxmsiaPSMMDmiDVzgE+e8zlMx9g==} - engines: {node: '>= 0.6.0'} - base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - basic-ftp@5.0.5: - resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==} - engines: {node: '>=10.0.0'} - better-path-resolve@1.0.0: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} @@ -1020,16 +919,6 @@ packages: bluebird@1.0.8: resolution: {integrity: sha512-e8rlJcByuxPdMiiwU3lGtENflMtUncAblzSlN7rBAZ9ygb75D/rng3Xt5FbZpYqVCzK+sFHVIMht4G6fbfUfbA==} - bn.js@4.12.0: - resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} - - bn.js@5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - - body-parser@1.20.3: - resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} @@ -1037,72 +926,22 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - brorand@1.1.0: - resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} - - brotli-wasm@3.0.1: - resolution: {integrity: sha512-U3K72/JAi3jITpdhZBqzSUq+DUY697tLxOuFXB+FpAE/Ug+5C3VZrv4uA674EUZHxNAuQ9wETXNqQkxZD6oL4A==} - engines: {node: '>=v18.0.0'} - browser-readablestream-to-it@1.0.3: resolution: {integrity: sha512-+12sHB+Br8HIh6VAMVEG5r3UXCyESIgDW7kzk3BjIXa43DVqVwL7GC5TW3jeh+72dtcH99pPVpw0X8i0jt+/kw==} - browser-resolve@2.0.0: - resolution: {integrity: sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==} - - browserify-aes@1.2.0: - resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} - - browserify-cipher@1.0.1: - resolution: {integrity: sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==} - - browserify-des@1.0.2: - resolution: {integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==} - - browserify-rsa@4.1.1: - resolution: {integrity: sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==} - engines: {node: '>= 0.10'} - - browserify-sign@4.2.3: - resolution: {integrity: sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==} - engines: {node: '>= 0.12'} - - browserify-zlib@0.2.0: - resolution: {integrity: sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==} - - buffer-xor@1.0.3: - resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} - - buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} - buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} - builtin-status-codes@3.0.0: - resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} - bun@1.1.29: resolution: {integrity: sha512-SKhpyKNZtgxrVel9ec9xon3LDv8mgpiuFhARgcJo1YIbggY2PBrKHRNiwQ6Qlb+x3ivmRurfuwWgwGexjpgBRg==} + cpu: [arm64, x64] os: [darwin, linux, win32] hasBin: true - busboy@1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} - - bytes@3.1.2: - resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} - engines: {node: '>= 0.8'} - cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} - cacheable-lookup@6.1.0: - resolution: {integrity: sha512-KJ/Dmo1lDDhmW2XDPMo+9oiy/CeqosPguPCrgcVzKyZrL6pM1gU2GmPY/xo6OQPTUaA/c0kwHuywB4E6nmT9ww==} - engines: {node: '>=10.6.0'} - call-bind@1.0.7: resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} engines: {node: '>= 0.4'} @@ -1137,8 +976,9 @@ packages: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} - cipher-base@1.0.4: - resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} @@ -1155,10 +995,6 @@ packages: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} - common-tags@1.8.2: - resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} - engines: {node: '>=4.0.0'} - concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} @@ -1170,96 +1006,23 @@ packages: confbox@0.1.7: resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} - connect@3.7.0: - resolution: {integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==} - engines: {node: '>= 0.10.0'} - - console-browserify@1.2.0: - resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} - - constants-browserify@1.0.0: - resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} - - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - - content-type@1.0.5: - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} - engines: {node: '>= 0.6'} - convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - cookie-signature@1.0.6: - resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} + cookie@0.5.0: + resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} engines: {node: '>= 0.6'} - core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - - cors-gate@1.1.3: - resolution: {integrity: sha512-RFqvbbpj02lqKDhqasBEkgzmT3RseCH3DKy5sT2W9S1mhctABKQP3ktKcnKN0h8t4pJ2SneI3hPl3TGNi/VmZA==} - - cors@2.8.5: - resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} - engines: {node: '>= 0.10'} - - create-ecdh@4.0.4: - resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==} - - create-hash@1.2.0: - resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} - - create-hmac@1.1.7: - resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} - - create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - - cross-fetch@3.1.8: - resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==} - - cross-inspect@1.0.1: - resolution: {integrity: sha512-Pcw1JTvZLSJH83iiGWt6fRcT+BjZlCDRVwYLbUcHzv/CRpB7r0MlSrGbIyQvVSNyGnbt7G4AXuyCiDR3POvZ1A==} - engines: {node: '>=16.0.0'} - cross-spawn@5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} - crypto-browserify@3.12.0: - resolution: {integrity: sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==} - dag-jose@1.0.0: resolution: {integrity: sha512-U0b/YsIPBp6YZNTFrVjwLZAlY3qGRxZTIEcM/CcQmrVrCWq9MWQq9pheXVSPLIhF4SNwzp2SikPva4/BIrJY+g==} - data-uri-to-buffer@6.0.2: - resolution: {integrity: sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==} - engines: {node: '>= 14'} - date-fns@2.30.0: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} - debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - debug@4.3.7: resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} engines: {node: '>=6.0'} @@ -1283,47 +1046,17 @@ packages: resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} - define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} - engines: {node: '>= 0.4'} - defined@0.0.0: resolution: {integrity: sha512-zpqiCT8bODLu3QSmLLic8xJnYWBFjOSu/fBCm189oAiTtPq/PSanNACKZDS7kgSyCJY7P+IcODzlIogBK/9RBg==} - degenerator@5.0.1: - resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} - engines: {node: '>= 14'} - delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} - denque@2.1.0: - resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} - engines: {node: '>=0.10'} - - depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} - - des.js@1.1.0: - resolution: {integrity: sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==} - - destroy@1.2.0: - resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - - destroyable-server@1.0.2: - resolution: {integrity: sha512-Ln7ZKRq+7kr/3e4FCI8+jAjRbqbdaET8/ZBoUVvn+sDSAD7zDZA5mykkPRcrjBcaGy+LOM4ntMlIp1NMj1kMxw==} - engines: {node: '>=12.0.0'} - detect-indent@6.1.0: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} engines: {node: '>=8'} - diffie-hellman@5.0.3: - resolution: {integrity: sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==} - dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -1331,48 +1064,20 @@ packages: dns-over-http-resolver@1.2.3: resolution: {integrity: sha512-miDiVSI6KSNbi4SVifzO/reD8rMnxgrlnkrlkugOLQpWQTe2qMdHsZp5DmfKjxNE+/T3VAAYLQUZMv9SMr6+AA==} - domain-browser@4.23.0: - resolution: {integrity: sha512-ArzcM/II1wCCujdCNyQjXrAFwS4mrLh4C7DZWlaI8mdh7h3BfKdNd3bKXITfl2PT9FtfQqaGvhi1vPRQPimjGA==} - engines: {node: '>=10'} - dotenv@16.4.5: resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} engines: {node: '>=12'} - dset@3.1.4: - resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==} - engines: {node: '>=4'} - - duplexify@3.7.1: - resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} - - ee-first@1.1.1: - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - electron-fetch@1.9.1: resolution: {integrity: sha512-M9qw6oUILGVrcENMSRRefE1MbHPIz0h79EKIeJWK9v563aT9Qkh8aEHPO1H5vi970wPirNY+jO9OpFoLiMsMGA==} engines: {node: '>=6'} - elliptic@6.5.7: - resolution: {integrity: sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==} - emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - - encodeurl@2.0.0: - resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} - engines: {node: '>= 0.8'} - encoding@0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} - end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - enquirer@2.4.1: resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} engines: {node: '>=8.6'} @@ -1408,48 +1113,14 @@ packages: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} - escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - - escodegen@2.1.0: - resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} - engines: {node: '>=6.0'} - hasBin: true - esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} hasBin: true - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} - - eventemitter3@3.1.2: - resolution: {integrity: sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==} - - events@3.3.0: - resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} - engines: {node: '>=0.8.x'} - - evp_bytestokey@1.0.3: - resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} - - express@4.21.0: - resolution: {integrity: sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==} - engines: {node: '>= 0.10.0'} - extendable-error@0.1.7: resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} @@ -1457,9 +1128,6 @@ packages: resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} engines: {node: '>=4'} - fast-decode-uri-component@1.0.1: - resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==} - fast-fifo@1.3.2: resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} @@ -1467,12 +1135,6 @@ packages: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} - fast-json-patch@3.1.1: - resolution: {integrity: sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==} - - fast-querystring@1.1.2: - resolution: {integrity: sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==} - fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} @@ -1484,22 +1146,10 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - finalhandler@1.1.2: - resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} - engines: {node: '>= 0.8'} - - finalhandler@1.3.1: - resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==} - engines: {node: '>= 0.8'} - find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} @@ -1516,18 +1166,6 @@ packages: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} - forwarded@0.2.0: - resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} - engines: {node: '>= 0.6'} - - fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} - - fs-extra@11.2.0: - resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} - engines: {node: '>=14.14'} - fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} @@ -1539,11 +1177,6 @@ packages: fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - fsevents@2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -1552,9 +1185,6 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - generate-function@2.3.1: - resolution: {integrity: sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==} - get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} @@ -1569,10 +1199,6 @@ packages: get-iterator@1.0.2: resolution: {integrity: sha512-v+dm9bNVfOYsY1OrhaCrmyOcYoSeVvbt+hHZ0Au+T+p1y+0Uyj9aMaGIeUTT6xdpRbWzDeYKvfOslPhggQMcsg==} - get-uri@6.0.3: - resolution: {integrity: sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==} - engines: {node: '>= 14'} - glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -1591,33 +1217,6 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - graphql-http@1.22.1: - resolution: {integrity: sha512-4Jor+LRbA7SfSaw7dfDUs2UBzvWg3cKrykfHRgKsOIvQaLuf+QOcG2t3Mx5N9GzSNJcuqMqJWz0ta5+BryEmXg==} - engines: {node: '>=12'} - peerDependencies: - graphql: '>=0.11 <=16' - - graphql-subscriptions@1.2.1: - resolution: {integrity: sha512-95yD/tKi24q8xYa7Q9rhQN16AYj5wPbrb8tmHGM3WRc9EBmWrG/0kkMl+tQG8wcEuE9ibR4zyOM31p5Sdr2v4g==} - peerDependencies: - graphql: ^0.10.5 || ^0.11.3 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 - - graphql-tag@2.12.6: - resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} - engines: {node: '>=10'} - peerDependencies: - graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - - graphql-yoga@5.1.1: - resolution: {integrity: sha512-oak5nVKTHpqJgpA1aT3cJPOlCidrW7l6nbc5L6w07VdFul16ielGI2ZnQDAXO+qQih09/4WspD5x0SsSZH+hkg==} - engines: {node: '>=18.0.0'} - peerDependencies: - graphql: ^15.2.0 || ^16.0.0 - - graphql@15.9.0: - resolution: {integrity: sha512-GCOQdvm7XxV1S4U4CGrsdlEN37245eC8P9zaYCMr6K1BG0IPGy5lUwmJsEOGyl1GD6HXjOtl2keCP9asRBwNvA==} - engines: {node: '>= 10.x'} - graphql@16.9.0: resolution: {integrity: sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} @@ -1641,54 +1240,16 @@ packages: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} - hash-base@3.0.4: - resolution: {integrity: sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==} - engines: {node: '>=4'} - - hash-base@3.1.0: - resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} - engines: {node: '>=4'} - - hash.js@1.1.7: - resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} - hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hmac-drbg@1.0.1: - resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} + headers-polyfill@4.0.3: + resolution: {integrity: sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ==} html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - http-encoding@2.0.1: - resolution: {integrity: sha512-vqe8NzlqqvDgcrwI2JTPAiB/6Zs1zTEVZNnTZBJeBhaejLGSpXQtNf87ifumq/P4X82G9E4WWfJMNmwb6vsuGw==} - engines: {node: '>=v18.0.0'} - - http-errors@2.0.0: - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} - engines: {node: '>= 0.8'} - - http-proxy-agent@7.0.2: - resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} - engines: {node: '>= 14'} - - http2-wrapper@2.2.1: - resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==} - engines: {node: '>=10.19.0'} - - https-browserify@1.0.0: - resolution: {integrity: sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==} - - https-proxy-agent@5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} - - https-proxy-agent@7.0.5: - resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} - engines: {node: '>= 14'} - human-id@1.0.2: resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} @@ -1726,18 +1287,10 @@ packages: interface-store@2.0.2: resolution: {integrity: sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg==} - ip-address@9.0.5: - resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} - engines: {node: '>= 12'} - ip-regex@4.3.0: resolution: {integrity: sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==} engines: {node: '>=8'} - ipaddr.js@1.9.1: - resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} - engines: {node: '>= 0.10'} - ipfs-core-types@0.10.3: resolution: {integrity: sha512-GNid2lRBjR5qgScCglgk7w9Hk3TZAwPHQXxOLQx72wgyc0jF2U5NXRoKW0GRvX8NPbHmsrFszForIqxd23I1Gw==} deprecated: js-IPFS has been deprecated in favour of Helia - please see https://github.com/ipfs/js-ipfs/issues/4336 for details @@ -1767,10 +1320,6 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} - engines: {node: '>= 0.4'} - is-electron@2.2.2: resolution: {integrity: sha512-FO/Rhvz5tuw4MCWkpMzHFKWD2LsfHzIb7i6MdPYZ/KW7AlxawyLkqdy+jPZP1WubqEADE3O4FUENlJHDfQASRg==} @@ -1794,9 +1343,8 @@ packages: resolution: {integrity: sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==} engines: {node: '>=8'} - is-nan@1.3.2: - resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==} - engines: {node: '>= 0.4'} + is-node-process@1.2.0: + resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==} is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} @@ -1806,9 +1354,6 @@ packages: resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} engines: {node: '>=8'} - is-property@1.0.2: - resolution: {integrity: sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==} - is-subdir@1.2.0: resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} engines: {node: '>=4'} @@ -1821,9 +1366,6 @@ packages: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} - isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} @@ -1831,15 +1373,6 @@ packages: resolution: {integrity: sha512-9JPDgCN4B7QPkLtYAAOrEuAWvP9rWvR5offAr0/SeF046wIkglqH3VXgYYP6NcsKslH80UIVgmPqNe3j7tG2ng==} engines: {node: '>=12'} - isomorphic-timers-promises@1.0.1: - resolution: {integrity: sha512-u4sej9B1LPSxTGKB/HiuzvEQnXH0ECYkSVQU39koSwmFAxhlEAFl9RdTvLv4TOTQUgBS5O3O5fwUxk6byBZ+IQ==} - engines: {node: '>=10'} - - isomorphic-ws@4.0.1: - resolution: {integrity: sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==} - peerDependencies: - ws: '*' - istanbul-lib-coverage@3.2.2: resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} @@ -1877,9 +1410,6 @@ packages: it-to-stream@1.0.0: resolution: {integrity: sha512-pLULMZMAB/+vbdvbZtebC0nWBTbG581lk6w8P7DfIIIKUfa8FbY7Oi0FxZcFPbxvISs7A9E+cMpLDBc1XhpAOA==} - iterall@1.3.0: - resolution: {integrity: sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==} - jose@4.11.2: resolution: {integrity: sha512-njj0VL2TsIxCtgzhO+9RRobBvws4oYyCM8TpvoUQwl/MbIM3NFJRR9+e6x0sS5xXaP1t6OCBkaBME98OV9zU5A==} @@ -1887,9 +1417,6 @@ packages: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true - jsbn@1.1.0: - resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jscrypto@1.0.3: resolution: {integrity: sha512-lryZl0flhodv4SZHOqyb1bx5sKcJxj0VBo0Kzb4QMAg3L021IC9uGpl0RCZa+9KJwlRGSK2C80ITcwbe19OKLQ==} hasBin: true @@ -1897,9 +1424,6 @@ packages: jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - jsonify@0.0.1: resolution: {integrity: sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==} @@ -1911,10 +1435,6 @@ packages: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - lodash.startcase@4.4.0: resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} @@ -1930,20 +1450,9 @@ packages: loupe@3.1.1: resolution: {integrity: sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==} - lru-cache@10.4.3: - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@4.1.5: resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} - lru-cache@7.18.3: - resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} - engines: {node: '>=12'} - - lru.min@1.1.1: - resolution: {integrity: sha512-FbAj6lXil6t8z4z3j0E5mfRlPzxkySotzUHwRXjlpRh10vc6AI6WN62ehZj82VG7M20rqogJ0GLwar2Xa05a8Q==} - engines: {bun: '>=1.0.0', deno: '>=1.30.0', node: '>=8.0.0'} - luxon@3.5.0: resolution: {integrity: sha512-rh+Zjr6DNfUYR3bPwJEnuwDdqMbxZW7LOQfUN4B54+Cl+0o5zaU9RJ6bcidfDtC1cWCZXQ+nvX8bf6bAji37QQ==} engines: {node: '>=12'} @@ -1958,16 +1467,6 @@ packages: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} - md5.js@1.3.5: - resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} - - media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} - - merge-descriptors@1.0.3: - resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} - merge-options@3.0.4: resolution: {integrity: sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ==} engines: {node: '>=10'} @@ -1976,18 +1475,10 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} - miller-rabin@4.0.1: - resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==} - hasBin: true - mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -1996,52 +1487,29 @@ packages: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} - mime@1.6.0: - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} - engines: {node: '>=4'} - hasBin: true - - minimalistic-assert@1.0.1: - resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} - - minimalistic-crypto-utils@1.0.1: - resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} - minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - - mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - mlly@1.7.1: resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} - mockipfs@0.3.2: - resolution: {integrity: sha512-tBTRcOwMoKa8ceB1AAIJCEOucuibZtOX338VqeyQezFdIXC0xYX1kR6psARXQZsDBlb9hhVXwBTQEMvJogm2pQ==} - engines: {node: '>=16.0.0'} - hasBin: true - peerDependencies: - mockttp: ^3.1.0 - - mockttp@3.15.3: - resolution: {integrity: sha512-UW8IkPttmGZuJf8A5ahMqB8c8MngSgtCAxEbWaCqvZqnINfoZackkSWO/sU25iyvH+UBZRBRTdkm4ItJriVBmw==} - engines: {node: '>=14.14.0'} - hasBin: true - mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} - ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + msw@2.5.0: + resolution: {integrity: sha512-DwIGQV/XFzkseQD7Ux3rPWMRa7DpozicRQ87QLX9Gzik2xyqcXvtvlBEUs57RziTBZPe/QzaKSl92fJVdxxt2g==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + typescript: '>= 4.8.x' + peerDependenciesMeta: + typescript: + optional: true + multiaddr-to-uri@8.0.0: resolution: {integrity: sha512-dq4p/vsOOUdVEd1J1gl+R2GFrXJQH8yjLtz4hodqdVbieg39LvBOdMQRdQnfbg5LSM/q1BYNVf5CBbwZFFqBgA==} deprecated: This module is deprecated, please upgrade to @multiformats/multiaddr-to-uri @@ -2068,22 +1536,15 @@ packages: resolution: {integrity: sha512-/sF3ee6zvScXMb1XFJ8gDsSnY+X8PbOyjIuBhtgis10W2Jx4ZjIhikUCIF9c4gpJxVnQIsPAFrSwTCuAjicP6g==} engines: {node: '>=8.0.0'} - mysql2@3.11.3: - resolution: {integrity: sha512-Qpu2ADfbKzyLdwC/5d4W7+5Yz7yBzCU05YWt5npWzACST37wJsB23wgOSo00qi043urkiRwXtEvJc9UnuLX/MQ==} - engines: {node: '>= 8.0'} - - named-placeholders@1.1.3: - resolution: {integrity: sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w==} - engines: {node: '>=12.0.0'} + mute-stream@1.0.0: + resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - native-duplexpair@1.0.0: - resolution: {integrity: sha512-E7QQoM+3jvNtlmyfqRZ0/U75VFgCls+fSkbml2MpgWkWyz3ox8Y58gNhfuziuQYGNNQAbFZJQck55LHCnCK6CA==} - native-fetch@3.0.0: resolution: {integrity: sha512-G3Z7vx0IFb/FQ4JxvtqGABsOTIqRWvgQz6e+erkB+JJD6LrszQtMozEHI4EkmgZQvnGHrpLVzUWk7t4sJCIkVw==} peerDependencies: @@ -2094,14 +1555,6 @@ packages: peerDependencies: undici: '*' - negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - - netmask@2.0.2: - resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} - engines: {node: '>= 0.4.0'} - node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -2111,55 +1564,16 @@ packages: encoding: optional: true - node-forge@1.3.1: - resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} - engines: {node: '>= 6.13.0'} - - node-stdlib-browser@1.2.1: - resolution: {integrity: sha512-dZezG3D88Lg22DwyjsDuUs7cCT/XGr8WwJgg/S3ZnkcWuPet2Tt/W1d2Eytb1Z73JpZv+XVCDI5TWv6UMRq0Gg==} - engines: {node: '>=10'} - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - object-inspect@1.13.2: - resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} - engines: {node: '>= 0.4'} - - object-is@1.1.6: - resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==} - engines: {node: '>= 0.4'} - - object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - object-traversal@1.0.1: resolution: {integrity: sha512-aLXtM9kbcG/ePyZfB45B0FrIdu1yy3udQjIVmp2IVl2np52dBK5ZZBhdyUKFT6neCutwDhCW/kQ+e/0K5n/Jhw==} engines: {node: '>=10'} - object.assign@4.1.5: - resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} - engines: {node: '>= 0.4'} - - on-finished@2.3.0: - resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==} - engines: {node: '>= 0.8'} - - on-finished@2.4.1: - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} - engines: {node: '>= 0.8'} - once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} one-webcrypto@1.0.3: resolution: {integrity: sha512-fu9ywBVBPx0gS9K0etIROTiCkvI5S1TDjFsYFb3rC1ewFxeOqsbzq7aIMBHsYfrTHBcGXJaONXXjTl8B01cW1Q==} - os-browserify@0.3.0: - resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==} - os-tmpdir@1.0.2: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} @@ -2167,6 +1581,9 @@ packages: outdent@0.5.0: resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} + outvariant@1.4.3: + resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==} + p-defer@3.0.0: resolution: {integrity: sha512-ugZxsxmtTln604yeYd29EGrNhazN2lywetzpKhfmQjW/VJmhpDmWbiX+h0zL8V91R0UXkhb3KtPmyq9PZw3aYw==} engines: {node: '>=8'} @@ -2182,18 +1599,10 @@ packages: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - p-map@2.1.0: resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} engines: {node: '>=6'} @@ -2206,40 +1615,15 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - pac-proxy-agent@7.0.2: - resolution: {integrity: sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==} - engines: {node: '>= 14'} - - pac-resolver@7.0.1: - resolution: {integrity: sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==} - engines: {node: '>= 14'} - package-manager-detector@0.2.0: resolution: {integrity: sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==} - pako@1.0.11: - resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} - parallel-transform-web@1.0.1: resolution: {integrity: sha512-RtPU/7IuwPZ4ePcqoPxNCpjtaXYOkCVtnhh5tW3O78wy9jqVoV2hQHms17kUeu8DTYoOP+mykFLg2agwVKlwBw==} - parse-asn1@5.1.7: - resolution: {integrity: sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==} - engines: {node: '>= 0.10'} - parse-duration@1.1.0: resolution: {integrity: sha512-z6t9dvSJYaPoQq7quMzdEagSFtpGu+utzHqqxmpVWNNZRIXnvqyCvn9XsTdh7c/w0Bqmdz3RB3YnRaKtpRtEXQ==} - parse-multipart-data@1.5.0: - resolution: {integrity: sha512-ck5zaMF0ydjGfejNMnlo5YU2oJ+pT+80Jb1y4ybanT27j+zbVP/jkYmCrUGsEln0Ox/hZmuvgy8Ra7AxbXP2Mw==} - - parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} - - path-browserify@1.0.1: - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -2248,11 +1632,8 @@ packages: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-to-regexp@0.1.10: - resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==} + path-to-regexp@6.3.0: + resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} @@ -2265,13 +1646,6 @@ packages: resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} engines: {node: '>= 14.16'} - pbkdf2@3.1.2: - resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} - engines: {node: '>=0.12'} - - performance-now@2.1.0: - resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} - picocolors@1.1.0: resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} @@ -2283,31 +1657,9 @@ packages: resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} engines: {node: '>=6'} - pify@5.0.0: - resolution: {integrity: sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==} - engines: {node: '>=10'} - - pkg-dir@5.0.0: - resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} - engines: {node: '>=10'} - pkg-types@1.2.0: resolution: {integrity: sha512-+ifYuSSqOQ8CqP4MbZA5hDpb97n3E8SVWdJe+Wms9kj745lmd3b7EZJiqvmLwAlmRfjrI7Hi5z3kdBJ93lFNPA==} - playwright-core@1.47.2: - resolution: {integrity: sha512-3JvMfF+9LJfe16l7AbSmU555PaTl2tPyQsVInqm3id16pdDfvZ8TTZ/pyzmkbDrZTQefyzU7AIHlZqQnxpqHVQ==} - engines: {node: '>=18'} - hasBin: true - - playwright@1.47.2: - resolution: {integrity: sha512-nx1cLMmQWqmA3UsnjaaokyoUpdVaaDhJhMoxX2qj3McpjnsqFHs516QAKYhqHAgOP+oCFTEOCOAaD1RgD/RQfA==} - engines: {node: '>=18'} - hasBin: true - - portfinder@1.0.32: - resolution: {integrity: sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==} - engines: {node: '>= 0.12.0'} - possible-typed-array-names@1.0.0: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} @@ -2321,16 +1673,6 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - - process@0.11.10: - resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} - engines: {node: '>= 0.6.0'} - - proper-lockfile@4.1.2: - resolution: {integrity: sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==} - protobufjs@6.11.4: resolution: {integrity: sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==} hasBin: true @@ -2339,68 +1681,35 @@ packages: resolution: {integrity: sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==} engines: {node: '>=12.0.0'} - proxy-addr@2.0.7: - resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} - engines: {node: '>= 0.10'} - proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} - public-encrypt@4.0.3: - resolution: {integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==} - - punycode@1.4.1: - resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} + psl@1.9.0: + resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - qs@6.13.0: - resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==} - engines: {node: '>=0.6'} + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} - querystring-es3@0.2.1: - resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==} - engines: {node: '>=0.4.x'} + querystringify@2.2.0: + resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - quick-lru@5.1.1: - resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} - engines: {node: '>=10'} - rabin-rs@2.1.0: resolution: {integrity: sha512-5y72gAXPzIBsAMHcpxZP8eMDuDT98qMP1BqSDHRbHkJJXEgWIN1lA47LxUqzsK6jknOJtgfkQr9v+7qMlFDm6g==} - randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - - randomfill@1.0.4: - resolution: {integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==} - - range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} - - raw-body@2.5.2: - resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} - engines: {node: '>= 0.8'} - react-native-fetch-api@3.0.0: resolution: {integrity: sha512-g2rtqPjdroaboDKTsJCTlcmtw54E25OjyaunUP0anOZn4Fuo2IKs8BVfe02zVggA/UysbmfSnRJIqtNkAgggNA==} - read-tls-client-hello@1.0.1: - resolution: {integrity: sha512-OvSzfVv6Y656ekUxB7aDhWkLW7y1ck16ChfLFNJhKNADFNweH2fvyiEZkGmmdtXbOtlNuH2zVXZoFCW349M+GA==} - engines: {node: '>=12.0.0'} - read-yaml-file@1.1.0: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} - readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} - readable-stream@3.6.2: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} @@ -2415,8 +1724,8 @@ packages: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} - resolve-alpn@1.2.1: - resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} + requires-port@1.0.0: + resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} resolve-from@5.0.0: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} @@ -2426,20 +1735,12 @@ packages: resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} engines: {node: '>=10'} - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} - hasBin: true - resumer@0.0.0: resolution: {integrity: sha512-Fn9X8rX8yYF4m81rZCK/5VmrmsSbqS/i3rDLl6ZZHAXgC2nTAx3dhwG8q8odP/RmdLa2YrybDJaAMg+X1ajY3w==} retimer@3.0.0: resolution: {integrity: sha512-WKE0j11Pa0ZJI5YIk0nflGI7SQsfl2ljihVy7ogh7DeQSeYAUi0ubZ/yEueGtDfUPk6GH5LRw1hBdLq4IwUBWA==} - retry@0.12.0: - resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} - engines: {node: '>= 4'} - retry@0.13.1: resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} engines: {node: '>= 4'} @@ -2448,9 +1749,6 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - ripemd160@2.0.2: - resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} - rollup@4.22.5: resolution: {integrity: sha512-WoinX7GeQOFMGznEcWA1WrTQCd/tpEbMkc3nuMs9BT0CPjMdSjPMTVClwWd4pgSQwJdP65SK9mTCNvItlr5o7w==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -2462,9 +1760,6 @@ packages: rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} @@ -2476,31 +1771,10 @@ packages: engines: {node: '>=10'} hasBin: true - send@0.19.0: - resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} - engines: {node: '>= 0.8.0'} - - seq-queue@0.0.5: - resolution: {integrity: sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q==} - - serve-static@1.16.2: - resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} - engines: {node: '>= 0.8.0'} - set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} - setimmediate@1.0.5: - resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} - - setprototypeof@1.2.0: - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - - sha.js@2.4.11: - resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} - hasBin: true - shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} engines: {node: '>=0.10.0'} @@ -2512,36 +1786,20 @@ packages: shell-quote@1.8.1: resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} - side-channel@1.0.6: - resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} - engines: {node: '>= 0.4'} - siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} - smart-buffer@4.2.0: - resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} - engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} - - socks-proxy-agent@7.0.0: - resolution: {integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==} - engines: {node: '>= 10'} - - socks-proxy-agent@8.0.4: - resolution: {integrity: sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==} - engines: {node: '>= 14'} - - socks@2.8.3: - resolution: {integrity: sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==} - engines: {node: '>= 10.0.0', npm: '>= 3.0.0'} - source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -2559,20 +1817,9 @@ packages: sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - sprintf-js@1.1.3: - resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==} - - sqlstring@2.3.3: - resolution: {integrity: sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==} - engines: {node: '>= 0.6'} - stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - statuses@1.5.0: - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} - engines: {node: '>= 0.6'} - statuses@2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} @@ -2580,29 +1827,16 @@ packages: std-env@3.7.0: resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} - stream-browserify@3.0.0: - resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} - - stream-http@3.2.0: - resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==} - - stream-shift@1.0.3: - resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} - stream-to-it@0.2.4: resolution: {integrity: sha512-4vEbkSs83OahpmBybNJXlJd7d6/RxzkkSdT3I0mnGt79Xd2Kk+e1JqbvAvsQfCeKj3aKb0QIWkyK3/n0j506vQ==} - streamsearch@1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} + strict-event-emitter@0.5.1: + resolution: {integrity: sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==} string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} - string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} @@ -2622,14 +1856,6 @@ packages: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - symbol-observable@1.2.0: - resolution: {integrity: sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==} - engines: {node: '>=0.10.0'} - sync-multihash-sha2@1.0.0: resolution: {integrity: sha512-A5gVpmtKF0ov+/XID0M0QRJqF2QxAsj3x/LlDC8yivzgoYCoWkV+XaZPfVu7Vj1T/hYzYS1tfjwboSbXjqocug==} @@ -2651,10 +1877,6 @@ packages: timeout-abort-controller@3.0.0: resolution: {integrity: sha512-O3e+2B8BKrQxU2YRyEjC/2yFdb33slI22WRdUaDx6rvysfi9anloNZyR2q0l6LnePo5qH7gSM7uZtvvwZbc2yA==} - timers-browserify@2.0.12: - resolution: {integrity: sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==} - engines: {node: '>=0.6.0'} - tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} @@ -2685,9 +1907,9 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - toidentifier@1.0.1: - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} - engines: {node: '>=0.6'} + tough-cookie@4.1.4: + resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} + engines: {node: '>=6'} tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} @@ -2699,16 +1921,13 @@ packages: tslib@2.7.0: resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} - tty-browserify@0.0.1: - resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==} - - type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} - typed-error@3.2.2: - resolution: {integrity: sha512-Z48LU67/qJ+vyA7lh3ozELqpTp3pvQoY5RtLi5wQ/UGSrEidBhlVSqhjr8B3iqbGpjqAoJYrtSYXWMDtidWGkA==} - engines: {node: '>=6.0.0', npm: '>=3.0.0'} + type-fest@4.26.1: + resolution: {integrity: sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==} + engines: {node: '>=16'} typescript@5.6.2: resolution: {integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==} @@ -2738,23 +1957,12 @@ packages: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} - universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - - unpipe@1.0.0: - resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} - engines: {node: '>= 0.8'} - - url@0.11.4: - resolution: {integrity: sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==} - engines: {node: '>= 0.4'} - - urlpattern-polyfill@10.0.0: - resolution: {integrity: sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==} + universalify@0.2.0: + resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} + engines: {node: '>= 4.0.0'} - urlpattern-polyfill@8.0.2: - resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==} + url-parse@1.5.10: + resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -2762,37 +1970,13 @@ packages: util@0.12.5: resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} - utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} - - uuid@8.3.2: - resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} - hasBin: true - - uuid@9.0.1: - resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} - hasBin: true - v8-to-istanbul@9.3.0: resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==} engines: {node: '>=10.12.0'} - value-or-promise@1.0.11: - resolution: {integrity: sha512-41BrgH+dIbCFXClcSapVs5M6GkENd3gQOJpEfPDNa71LsUGMXDL0jMWpI/Rh7WhX+Aalfz2TTS3Zt5pUsbnhLg==} - engines: {node: '>=12'} - - value-or-promise@1.0.12: - resolution: {integrity: sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==} - engines: {node: '>=12'} - varint@6.0.0: resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} - vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} - vite-node@2.1.1: resolution: {integrity: sha512-N/mGckI1suG/5wQI35XeR9rsMsPqKXzq1CdUndzVstBj/HvyxxGctwnK6WX43NGt5L3Z5tcRf83g4TITKJhPrA==} engines: {node: ^18.0.0 || >=20.0.0} @@ -2854,9 +2038,6 @@ packages: jsdom: optional: true - vm-browserify@1.1.2: - resolution: {integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==} - web-encoding@1.1.5: resolution: {integrity: sha512-HYLeVCdJ0+lBYV2FvNZmv3HJ2Nt0QYXqZojk3d9FJOLkwnuhzM9tmamh8d7HPM8QqjKH8DeHkFTx+CFlWpZZDA==} @@ -2886,6 +2067,10 @@ packages: engines: {node: '>=8'} hasBin: true + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -2893,22 +2078,6 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - ws@8.18.0: - resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -2924,12 +2093,9 @@ packages: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - - zstd-codec@0.1.5: - resolution: {integrity: sha512-v3fyjpK8S/dpY/X5WxqTK3IoCnp/ZOLxn144GZVlNUjtwAchzrVo03h+oMATFhCIiJ5KTr4V3vDQQYz4RU684g==} + yoctocolors-cjs@2.1.2: + resolution: {integrity: sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==} + engines: {node: '>=18'} snapshots: @@ -2993,6 +2159,19 @@ snapshots: '@biomejs/cli-win32-x64@1.9.2': optional: true + '@bundled-es-modules/cookie@2.0.0': + dependencies: + cookie: 0.5.0 + + '@bundled-es-modules/statuses@1.0.1': + dependencies: + statuses: 2.0.1 + + '@bundled-es-modules/tough-cookie@0.1.6': + dependencies: + '@types/tough-cookie': 4.0.5 + tough-cookie: 4.1.4 + '@changesets/apply-release-plan@7.0.5': dependencies: '@changesets/config': 3.0.3 @@ -3137,15 +2316,6 @@ snapshots: human-id: 1.0.2 prettier: 2.8.8 - '@envelop/core@5.0.2': - dependencies: - '@envelop/types': 5.0.0 - tslib: 2.7.0 - - '@envelop/types@5.0.0': - dependencies: - tslib: 2.7.0 - '@esbuild/aix-ppc64@0.21.5': optional: true @@ -3225,29 +2395,7 @@ snapshots: dependencies: nanoid: 3.3.7 - '@fleek-platform/tester@2.11.0(encoding@0.1.13)(graphql@15.9.0)': - dependencies: - graphql-yoga: 5.1.1(graphql@15.9.0) - lodash: 4.17.21 - luxon: 3.5.0 - mockipfs: 0.3.2(mockttp@3.15.3(encoding@0.1.13)) - mockttp: 3.15.3(encoding@0.1.13) - mysql2: 3.11.3 - node-stdlib-browser: 1.2.1 - object-traversal: 1.0.1 - playwright: 1.47.2 - proper-lockfile: 4.1.2 - uuid: 9.0.1 - transitivePeerDependencies: - - bufferutil - - encoding - - graphql - - supports-color - - utf-8-validate - - '@fleek-platform/utils-genql-client@0.1.1': - dependencies: - graphql: 16.9.0 + '@fleek-platform/utils-genql-client@0.2.1': {} '@fleek-platform/utils-token@0.2.0': dependencies: @@ -3256,110 +2404,31 @@ snapshots: jscrypto: 1.0.3 nanoid: 3.3.7 - '@graphql-tools/executor@1.3.1(graphql@15.9.0)': - dependencies: - '@graphql-tools/utils': 10.5.4(graphql@15.9.0) - '@graphql-typed-document-node/core': 3.2.0(graphql@15.9.0) - '@repeaterjs/repeater': 3.0.6 - graphql: 15.9.0 - tslib: 2.7.0 - value-or-promise: 1.0.12 - - '@graphql-tools/merge@8.3.1(graphql@15.9.0)': - dependencies: - '@graphql-tools/utils': 8.9.0(graphql@15.9.0) - graphql: 15.9.0 - tslib: 2.7.0 - - '@graphql-tools/merge@9.0.7(graphql@15.9.0)': - dependencies: - '@graphql-tools/utils': 10.5.4(graphql@15.9.0) - graphql: 15.9.0 - tslib: 2.7.0 - - '@graphql-tools/schema@10.0.6(graphql@15.9.0)': - dependencies: - '@graphql-tools/merge': 9.0.7(graphql@15.9.0) - '@graphql-tools/utils': 10.5.4(graphql@15.9.0) - graphql: 15.9.0 - tslib: 2.7.0 - value-or-promise: 1.0.12 - - '@graphql-tools/schema@8.5.1(graphql@15.9.0)': - dependencies: - '@graphql-tools/merge': 8.3.1(graphql@15.9.0) - '@graphql-tools/utils': 8.9.0(graphql@15.9.0) - graphql: 15.9.0 - tslib: 2.7.0 - value-or-promise: 1.0.11 - - '@graphql-tools/utils@10.5.4(graphql@15.9.0)': - dependencies: - '@graphql-typed-document-node/core': 3.2.0(graphql@15.9.0) - cross-inspect: 1.0.1 - dset: 3.1.4 - graphql: 15.9.0 - tslib: 2.7.0 - - '@graphql-tools/utils@8.13.1(graphql@15.9.0)': - dependencies: - graphql: 15.9.0 - tslib: 2.7.0 - - '@graphql-tools/utils@8.9.0(graphql@15.9.0)': - dependencies: - graphql: 15.9.0 - tslib: 2.7.0 - - '@graphql-typed-document-node/core@3.2.0(graphql@15.9.0)': - dependencies: - graphql: 15.9.0 - - '@graphql-yoga/logger@2.0.0': + '@inquirer/confirm@4.0.1': dependencies: - tslib: 2.7.0 - - '@graphql-yoga/subscription@5.0.1': - dependencies: - '@graphql-yoga/typed-event-target': 3.0.0 - '@repeaterjs/repeater': 3.0.6 - '@whatwg-node/events': 0.1.2 - tslib: 2.7.0 + '@inquirer/core': 9.2.1 + '@inquirer/type': 2.0.0 - '@graphql-yoga/typed-event-target@3.0.0': - dependencies: - '@repeaterjs/repeater': 3.0.6 - tslib: 2.7.0 - - '@httptoolkit/httpolyglot@2.2.1': + '@inquirer/core@9.2.1': dependencies: + '@inquirer/figures': 1.0.7 + '@inquirer/type': 2.0.0 + '@types/mute-stream': 0.0.4 '@types/node': 22.6.1 + '@types/wrap-ansi': 3.0.0 + ansi-escapes: 4.3.2 + cli-width: 4.1.0 + mute-stream: 1.0.0 + signal-exit: 4.1.0 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.2 - '@httptoolkit/subscriptions-transport-ws@0.11.2(graphql@15.9.0)': - dependencies: - backo2: 1.0.2 - eventemitter3: 3.1.2 - graphql: 15.9.0 - iterall: 1.3.0 - symbol-observable: 1.2.0 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - utf-8-validate + '@inquirer/figures@1.0.7': {} - '@httptoolkit/websocket-stream@6.0.1': + '@inquirer/type@2.0.0': dependencies: - '@types/ws': 8.5.12 - duplexify: 3.7.1 - inherits: 2.0.4 - isomorphic-ws: 4.0.1(ws@8.18.0) - readable-stream: 2.3.8 - safe-buffer: 5.2.1 - ws: 8.18.0 - xtend: 4.0.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate + mute-stream: 1.0.0 '@ipld/car@5.3.2': dependencies: @@ -3438,8 +2507,6 @@ snapshots: '@jspm/core@2.0.1': {} - '@kamilkisiela/fast-url-parser@1.1.4': {} - '@manypkg/find-root@1.1.0': dependencies: '@babel/runtime': 7.25.6 @@ -3456,6 +2523,15 @@ snapshots: globby: 11.1.0 read-yaml-file: 1.1.0 + '@mswjs/interceptors@0.36.5': + dependencies: + '@open-draft/deferred-promise': 2.2.0 + '@open-draft/logger': 0.3.0 + '@open-draft/until': 2.1.0 + is-node-process: 1.2.0 + outvariant: 1.4.3 + strict-event-emitter: 0.5.1 + '@multiformats/murmur3@2.1.8': dependencies: multiformats: 13.3.0 @@ -3481,6 +2557,15 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 + '@open-draft/deferred-promise@2.2.0': {} + + '@open-draft/logger@0.3.0': + dependencies: + is-node-process: 1.2.0 + outvariant: 1.4.3 + + '@open-draft/until@2.1.0': {} + '@oven/bun-darwin-aarch64@1.1.29': optional: true @@ -3533,8 +2618,6 @@ snapshots: '@protobufjs/utf8@1.1.0': {} - '@repeaterjs/repeater@3.0.6': {} - '@rollup/rollup-android-arm-eabi@4.22.5': optional: true @@ -3585,13 +2668,9 @@ snapshots: '@storacha/one-webcrypto@1.0.1': {} - '@tootallnate/quickjs-emscripten@0.23.0': {} - '@tsconfig/node16@16.1.3': {} - '@types/cors@2.8.17': - dependencies: - '@types/node': 22.6.1 + '@types/cookie@0.6.0': {} '@types/detect-node@2.0.2': {} @@ -3607,6 +2686,10 @@ snapshots: '@types/minimatch@3.0.5': {} + '@types/mute-stream@0.0.4': + dependencies: + '@types/node': 22.6.1 + '@types/node@12.20.55': {} '@types/node@22.6.1': @@ -3617,6 +2700,10 @@ snapshots: '@types/semver@7.5.8': {} + '@types/statuses@2.0.5': {} + + '@types/tough-cookie@4.0.5': {} + '@types/whatwg-fetch@0.0.33': dependencies: '@types/whatwg-streams': 3.2.1 @@ -3625,9 +2712,7 @@ snapshots: dependencies: whatwg-streams: 0.1.1 - '@types/ws@8.5.12': - dependencies: - '@types/node': 22.6.1 + '@types/wrap-ansi@3.0.0': {} '@ucanto/client@9.0.1': dependencies: @@ -3670,7 +2755,7 @@ snapshots: '@ucanto/interface': 10.0.1 multiformats: 11.0.2 - '@vitest/coverage-v8@1.3.1(vitest@2.1.1(@types/node@22.6.1))': + '@vitest/coverage-v8@1.3.1(vitest@2.1.1(@types/node@22.6.1)(msw@2.5.0(typescript@5.6.2)))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -3685,7 +2770,7 @@ snapshots: std-env: 3.7.0 test-exclude: 6.0.0 v8-to-istanbul: 9.3.0 - vitest: 2.1.1(@types/node@22.6.1) + vitest: 2.1.1(@types/node@22.6.1)(msw@2.5.0(typescript@5.6.2)) transitivePeerDependencies: - supports-color @@ -3696,12 +2781,13 @@ snapshots: chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.1(@vitest/spy@2.1.1)(vite@5.4.8(@types/node@22.6.1))': + '@vitest/mocker@2.1.1(@vitest/spy@2.1.1)(msw@2.5.0(typescript@5.6.2))(vite@5.4.8(@types/node@22.6.1))': dependencies: '@vitest/spy': 2.1.1 estree-walker: 3.0.3 magic-string: 0.30.11 optionalDependencies: + msw: 2.5.0(typescript@5.6.2) vite: 5.4.8(@types/node@22.6.1) '@vitest/pretty-format@2.1.1': @@ -3803,52 +2889,18 @@ snapshots: transitivePeerDependencies: - encoding - '@whatwg-node/events@0.1.2': - dependencies: - tslib: 2.7.0 - - '@whatwg-node/fetch@0.9.21': - dependencies: - '@whatwg-node/node-fetch': 0.5.26 - urlpattern-polyfill: 10.0.0 - - '@whatwg-node/node-fetch@0.5.26': - dependencies: - '@kamilkisiela/fast-url-parser': 1.1.4 - busboy: 1.6.0 - fast-querystring: 1.1.2 - tslib: 2.7.0 - - '@whatwg-node/server@0.9.49': - dependencies: - '@whatwg-node/fetch': 0.9.21 - tslib: 2.7.0 - '@zxing/text-encoding@0.9.0': optional: true - accepts@1.3.8: - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - acorn@8.12.1: {} actor@2.3.1: {} - agent-base@6.0.2: - dependencies: - debug: 4.3.7 - transitivePeerDependencies: - - supports-color + ansi-colors@4.1.3: {} - agent-base@7.1.1: + ansi-escapes@4.3.2: dependencies: - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - ansi-colors@4.1.3: {} + type-fest: 0.21.3 ansi-regex@5.0.1: {} @@ -3862,46 +2914,16 @@ snapshots: dependencies: sprintf-js: 1.0.3 - array-flatten@1.1.1: {} - array-union@2.1.0: {} - asn1.js@4.10.1: - dependencies: - bn.js: 4.12.0 - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - - assert@2.1.0: - dependencies: - call-bind: 1.0.7 - is-nan: 1.3.2 - object-is: 1.1.6 - object.assign: 4.1.5 - util: 0.12.5 - assertion-error@2.0.1: {} - ast-types@0.13.4: - dependencies: - tslib: 2.7.0 - - async-mutex@0.5.0: - dependencies: - tslib: 2.7.0 - - async@2.6.4: - dependencies: - lodash: 4.17.21 - asynckit@0.4.0: {} available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.0.0 - aws-ssl-profiles@1.1.2: {} - axios@1.7.7: dependencies: follow-redirects: 1.15.9 @@ -3910,16 +2932,10 @@ snapshots: transitivePeerDependencies: - debug - backo2@1.0.2: {} - balanced-match@1.0.2: {} - base64-arraybuffer@0.1.5: {} - base64-js@1.5.1: {} - basic-ftp@5.0.5: {} - better-path-resolve@1.0.0: dependencies: is-windows: 1.0.2 @@ -3930,28 +2946,7 @@ snapshots: bluebird@1.0.8: {} - bn.js@4.12.0: {} - - bn.js@5.2.1: {} - - body-parser@1.20.3: - dependencies: - bytes: 3.1.2 - content-type: 1.0.5 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.13.0 - raw-body: 2.5.2 - type-is: 1.6.18 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - - brace-expansion@1.1.11: + brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 @@ -3960,75 +2955,13 @@ snapshots: dependencies: fill-range: 7.1.1 - brorand@1.1.0: {} - - brotli-wasm@3.0.1: {} - browser-readablestream-to-it@1.0.3: {} - browser-resolve@2.0.0: - dependencies: - resolve: 1.22.8 - - browserify-aes@1.2.0: - dependencies: - buffer-xor: 1.0.3 - cipher-base: 1.0.4 - create-hash: 1.2.0 - evp_bytestokey: 1.0.3 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - browserify-cipher@1.0.1: - dependencies: - browserify-aes: 1.2.0 - browserify-des: 1.0.2 - evp_bytestokey: 1.0.3 - - browserify-des@1.0.2: - dependencies: - cipher-base: 1.0.4 - des.js: 1.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - browserify-rsa@4.1.1: - dependencies: - bn.js: 5.2.1 - randombytes: 2.1.0 - safe-buffer: 5.2.1 - - browserify-sign@4.2.3: - dependencies: - bn.js: 5.2.1 - browserify-rsa: 4.1.1 - create-hash: 1.2.0 - create-hmac: 1.1.7 - elliptic: 6.5.7 - hash-base: 3.0.4 - inherits: 2.0.4 - parse-asn1: 5.1.7 - readable-stream: 2.3.8 - safe-buffer: 5.2.1 - - browserify-zlib@0.2.0: - dependencies: - pako: 1.0.11 - - buffer-xor@1.0.3: {} - - buffer@5.7.1: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - buffer@6.0.3: dependencies: base64-js: 1.5.1 ieee754: 1.2.1 - builtin-status-codes@3.0.0: {} - bun@1.1.29: optionalDependencies: '@oven/bun-darwin-aarch64': 1.1.29 @@ -4040,16 +2973,8 @@ snapshots: '@oven/bun-windows-x64': 1.1.29 '@oven/bun-windows-x64-baseline': 1.1.29 - busboy@1.6.0: - dependencies: - streamsearch: 1.1.0 - - bytes@3.1.2: {} - cac@6.7.14: {} - cacheable-lookup@6.1.0: {} - call-bind@1.0.7: dependencies: es-define-property: 1.0.0 @@ -4087,10 +3012,7 @@ snapshots: ci-info@3.9.0: {} - cipher-base@1.0.4: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 + cli-width@4.1.0: {} cliui@8.0.1: dependencies: @@ -4108,8 +3030,6 @@ snapshots: dependencies: delayed-stream: 1.0.0 - common-tags@1.8.2: {} - concat-map@0.0.1: {} concurrently@7.6.0: @@ -4126,73 +3046,9 @@ snapshots: confbox@0.1.7: {} - connect@3.7.0: - dependencies: - debug: 2.6.9 - finalhandler: 1.1.2 - parseurl: 1.3.3 - utils-merge: 1.0.1 - transitivePeerDependencies: - - supports-color - - console-browserify@1.2.0: {} - - constants-browserify@1.0.0: {} - - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - - content-type@1.0.5: {} - convert-source-map@2.0.0: {} - cookie-signature@1.0.6: {} - - cookie@0.6.0: {} - - core-util-is@1.0.3: {} - - cors-gate@1.1.3: {} - - cors@2.8.5: - dependencies: - object-assign: 4.1.1 - vary: 1.1.2 - - create-ecdh@4.0.4: - dependencies: - bn.js: 4.12.0 - elliptic: 6.5.7 - - create-hash@1.2.0: - dependencies: - cipher-base: 1.0.4 - inherits: 2.0.4 - md5.js: 1.3.5 - ripemd160: 2.0.2 - sha.js: 2.4.11 - - create-hmac@1.1.7: - dependencies: - cipher-base: 1.0.4 - create-hash: 1.2.0 - inherits: 2.0.4 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - - create-require@1.1.1: {} - - cross-fetch@3.1.8(encoding@0.1.13): - dependencies: - node-fetch: 2.7.0(encoding@0.1.13) - transitivePeerDependencies: - - encoding - - cross-inspect@1.0.1: - dependencies: - tslib: 2.7.0 + cookie@0.5.0: {} cross-spawn@5.1.0: dependencies: @@ -4200,39 +3056,15 @@ snapshots: shebang-command: 1.2.0 which: 1.3.1 - crypto-browserify@3.12.0: - dependencies: - browserify-cipher: 1.0.1 - browserify-sign: 4.2.3 - create-ecdh: 4.0.4 - create-hash: 1.2.0 - create-hmac: 1.1.7 - diffie-hellman: 5.0.3 - inherits: 2.0.4 - pbkdf2: 3.1.2 - public-encrypt: 4.0.3 - randombytes: 2.1.0 - randomfill: 1.0.4 - dag-jose@1.0.0: dependencies: '@ipld/dag-cbor': 6.0.15 multiformats: 9.9.0 - data-uri-to-buffer@6.0.2: {} - date-fns@2.30.0: dependencies: '@babel/runtime': 7.25.6 - debug@2.6.9: - dependencies: - ms: 2.0.0 - - debug@3.2.7: - dependencies: - ms: 2.1.3 - debug@4.3.7: dependencies: ms: 2.1.3 @@ -4249,45 +3081,12 @@ snapshots: es-errors: 1.3.0 gopd: 1.0.1 - define-properties@1.2.1: - dependencies: - define-data-property: 1.1.4 - has-property-descriptors: 1.0.2 - object-keys: 1.1.1 - defined@0.0.0: {} - degenerator@5.0.1: - dependencies: - ast-types: 0.13.4 - escodegen: 2.1.0 - esprima: 4.0.1 - delayed-stream@1.0.0: {} - denque@2.1.0: {} - - depd@2.0.0: {} - - des.js@1.1.0: - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - - destroy@1.2.0: {} - - destroyable-server@1.0.2: - dependencies: - '@types/node': 22.6.1 - detect-indent@6.1.0: {} - diffie-hellman@5.0.3: - dependencies: - bn.js: 4.12.0 - miller-rabin: 4.0.1 - randombytes: 2.1.0 - dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -4301,49 +3100,18 @@ snapshots: - node-fetch - supports-color - domain-browser@4.23.0: {} - dotenv@16.4.5: {} - dset@3.1.4: {} - - duplexify@3.7.1: - dependencies: - end-of-stream: 1.4.4 - inherits: 2.0.4 - readable-stream: 2.3.8 - stream-shift: 1.0.3 - - ee-first@1.1.1: {} - electron-fetch@1.9.1: dependencies: encoding: 0.1.13 - elliptic@6.5.7: - dependencies: - bn.js: 4.12.0 - brorand: 1.1.0 - hash.js: 1.1.7 - hmac-drbg: 1.0.1 - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 - emoji-regex@8.0.0: {} - encodeurl@1.0.2: {} - - encodeurl@2.0.0: {} - encoding@0.1.13: dependencies: iconv-lite: 0.6.3 - end-of-stream@1.4.4: - dependencies: - once: 1.4.0 - enquirer@2.4.1: dependencies: ansi-colors: 4.1.3 @@ -4398,73 +3166,12 @@ snapshots: escalade@3.2.0: {} - escape-html@1.0.3: {} - - escodegen@2.1.0: - dependencies: - esprima: 4.0.1 - estraverse: 5.3.0 - esutils: 2.0.3 - optionalDependencies: - source-map: 0.6.1 - esprima@4.0.1: {} - estraverse@5.3.0: {} - estree-walker@3.0.3: dependencies: '@types/estree': 1.0.6 - esutils@2.0.3: {} - - etag@1.8.1: {} - - eventemitter3@3.1.2: {} - - events@3.3.0: {} - - evp_bytestokey@1.0.3: - dependencies: - md5.js: 1.3.5 - safe-buffer: 5.2.1 - - express@4.21.0: - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.3 - content-disposition: 0.5.4 - content-type: 1.0.5 - cookie: 0.6.0 - cookie-signature: 1.0.6 - debug: 2.6.9 - depd: 2.0.0 - encodeurl: 2.0.0 - escape-html: 1.0.3 - etag: 1.8.1 - finalhandler: 1.3.1 - fresh: 0.5.2 - http-errors: 2.0.0 - merge-descriptors: 1.0.3 - methods: 1.1.2 - on-finished: 2.4.1 - parseurl: 1.3.3 - path-to-regexp: 0.1.10 - proxy-addr: 2.0.7 - qs: 6.13.0 - range-parser: 1.2.1 - safe-buffer: 5.2.1 - send: 0.19.0 - serve-static: 1.16.2 - setprototypeof: 1.2.0 - statuses: 2.0.1 - type-is: 1.6.18 - utils-merge: 1.0.1 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - extendable-error@0.1.7: {} external-editor@3.1.0: @@ -4473,8 +3180,6 @@ snapshots: iconv-lite: 0.4.24 tmp: 0.0.33 - fast-decode-uri-component@1.0.1: {} - fast-fifo@1.3.2: {} fast-glob@3.3.2: @@ -4485,12 +3190,6 @@ snapshots: merge2: 1.4.1 micromatch: 4.0.8 - fast-json-patch@3.1.1: {} - - fast-querystring@1.1.2: - dependencies: - fast-decode-uri-component: 1.0.1 - fastq@1.17.1: dependencies: reusify: 1.0.4 @@ -4503,40 +3202,11 @@ snapshots: dependencies: to-regex-range: 5.0.1 - finalhandler@1.1.2: - dependencies: - debug: 2.6.9 - encodeurl: 1.0.2 - escape-html: 1.0.3 - on-finished: 2.3.0 - parseurl: 1.3.3 - statuses: 1.5.0 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - - finalhandler@1.3.1: - dependencies: - debug: 2.6.9 - encodeurl: 2.0.0 - escape-html: 1.0.3 - on-finished: 2.4.1 - parseurl: 1.3.3 - statuses: 2.0.1 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - find-up@4.1.0: dependencies: locate-path: 5.0.0 path-exists: 4.0.0 - find-up@5.0.0: - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - follow-redirects@1.15.9: {} for-each@0.3.3: @@ -4549,16 +3219,6 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 - forwarded@0.2.0: {} - - fresh@0.5.2: {} - - fs-extra@11.2.0: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - fs-extra@7.0.1: dependencies: graceful-fs: 4.2.11 @@ -4573,18 +3233,11 @@ snapshots: fs.realpath@1.0.0: {} - fsevents@2.3.2: - optional: true - fsevents@2.3.3: optional: true function-bind@1.1.2: {} - generate-function@2.3.1: - dependencies: - is-property: 1.0.2 - get-caller-file@2.0.5: {} get-func-name@2.0.2: {} @@ -4599,15 +3252,6 @@ snapshots: get-iterator@1.0.2: {} - get-uri@6.0.3: - dependencies: - basic-ftp: 5.0.5 - data-uri-to-buffer: 6.0.2 - debug: 4.3.7 - fs-extra: 11.2.0 - transitivePeerDependencies: - - supports-color - glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -4636,37 +3280,6 @@ snapshots: graceful-fs@4.2.11: {} - graphql-http@1.22.1(graphql@15.9.0): - dependencies: - graphql: 15.9.0 - - graphql-subscriptions@1.2.1(graphql@15.9.0): - dependencies: - graphql: 15.9.0 - iterall: 1.3.0 - - graphql-tag@2.12.6(graphql@15.9.0): - dependencies: - graphql: 15.9.0 - tslib: 2.7.0 - - graphql-yoga@5.1.1(graphql@15.9.0): - dependencies: - '@envelop/core': 5.0.2 - '@graphql-tools/executor': 1.3.1(graphql@15.9.0) - '@graphql-tools/schema': 10.0.6(graphql@15.9.0) - '@graphql-tools/utils': 10.5.4(graphql@15.9.0) - '@graphql-yoga/logger': 2.0.0 - '@graphql-yoga/subscription': 5.0.1 - '@whatwg-node/fetch': 0.9.21 - '@whatwg-node/server': 0.9.49 - dset: 3.1.4 - graphql: 15.9.0 - lru-cache: 10.4.3 - tslib: 2.7.0 - - graphql@15.9.0: {} - graphql@16.9.0: {} has-flag@4.0.0: {} @@ -4683,76 +3296,14 @@ snapshots: dependencies: has-symbols: 1.0.3 - hash-base@3.0.4: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - - hash-base@3.1.0: - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.2 - safe-buffer: 5.2.1 - - hash.js@1.1.7: - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - hasown@2.0.2: dependencies: function-bind: 1.1.2 - hmac-drbg@1.0.1: - dependencies: - hash.js: 1.1.7 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 + headers-polyfill@4.0.3: {} html-escaper@2.0.2: {} - http-encoding@2.0.1: - dependencies: - brotli-wasm: 3.0.1 - pify: 5.0.0 - zstd-codec: 0.1.5 - - http-errors@2.0.0: - dependencies: - depd: 2.0.0 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 2.0.1 - toidentifier: 1.0.1 - - http-proxy-agent@7.0.2: - dependencies: - agent-base: 7.1.1 - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - http2-wrapper@2.2.1: - dependencies: - quick-lru: 5.1.1 - resolve-alpn: 1.2.1 - - https-browserify@1.0.0: {} - - https-proxy-agent@5.0.1: - dependencies: - agent-base: 6.0.2 - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - https-proxy-agent@7.0.5: - dependencies: - agent-base: 7.1.1 - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - human-id@1.0.2: {} iconv-lite@0.4.24: @@ -4786,15 +3337,8 @@ snapshots: interface-store@2.0.2: {} - ip-address@9.0.5: - dependencies: - jsbn: 1.1.0 - sprintf-js: 1.1.3 - ip-regex@4.3.0: {} - ipaddr.js@1.9.1: {} - ipfs-core-types@0.10.3(node-fetch@2.7.0(encoding@0.1.13)): dependencies: '@ipld/dag-pb': 2.1.18 @@ -4891,10 +3435,6 @@ snapshots: is-callable@1.2.7: {} - is-core-module@2.15.1: - dependencies: - hasown: 2.0.2 - is-electron@2.2.2: {} is-extglob@2.1.1: {} @@ -4913,17 +3453,12 @@ snapshots: dependencies: ip-regex: 4.3.0 - is-nan@1.3.2: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 + is-node-process@1.2.0: {} is-number@7.0.0: {} is-plain-obj@2.1.0: {} - is-property@1.0.2: {} - is-subdir@1.2.0: dependencies: better-path-resolve: 1.0.0 @@ -4934,18 +3469,10 @@ snapshots: is-windows@1.0.2: {} - isarray@1.0.0: {} - isexe@2.0.0: {} iso-url@1.2.1: {} - isomorphic-timers-promises@1.0.1: {} - - isomorphic-ws@4.0.1(ws@8.18.0): - dependencies: - ws: 8.18.0 - istanbul-lib-coverage@3.2.2: {} istanbul-lib-report@3.0.1: @@ -4991,8 +3518,6 @@ snapshots: p-fifo: 1.0.0 readable-stream: 3.6.2 - iterall@1.3.0: {} - jose@4.11.2: {} js-yaml@3.14.1: @@ -5000,20 +3525,12 @@ snapshots: argparse: 1.0.10 esprima: 4.0.1 - jsbn@1.1.0: {} - jscrypto@1.0.3: {} jsonfile@4.0.0: optionalDependencies: graceful-fs: 4.2.11 - jsonfile@6.1.0: - dependencies: - universalify: 2.0.1 - optionalDependencies: - graceful-fs: 4.2.11 - jsonify@0.0.1: {} local-pkg@0.5.0: @@ -5025,10 +3542,6 @@ snapshots: dependencies: p-locate: 4.1.0 - locate-path@6.0.0: - dependencies: - p-locate: 5.0.0 - lodash.startcase@4.4.0: {} lodash@4.17.21: {} @@ -5041,17 +3554,11 @@ snapshots: dependencies: get-func-name: 2.0.2 - lru-cache@10.4.3: {} - lru-cache@4.1.5: dependencies: pseudomap: 1.0.2 yallist: 2.1.2 - lru-cache@7.18.3: {} - - lru.min@1.1.1: {} - luxon@3.5.0: {} magic-string@0.30.11: @@ -5068,56 +3575,27 @@ snapshots: dependencies: semver: 7.6.3 - md5.js@1.3.5: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - media-typer@0.3.0: {} - - merge-descriptors@1.0.3: {} - merge-options@3.0.4: dependencies: is-plain-obj: 2.1.0 merge2@1.4.1: {} - methods@1.1.2: {} - micromatch@4.0.8: dependencies: braces: 3.0.3 picomatch: 2.3.1 - miller-rabin@4.0.1: - dependencies: - bn.js: 4.12.0 - brorand: 1.1.0 - mime-db@1.52.0: {} mime-types@2.1.35: dependencies: mime-db: 1.52.0 - mime@1.6.0: {} - - minimalistic-assert@1.0.1: {} - - minimalistic-crypto-utils@1.0.1: {} - minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 - minimist@1.2.8: {} - - mkdirp@0.5.6: - dependencies: - minimist: 1.2.8 - mlly@1.7.1: dependencies: acorn: 8.12.1 @@ -5125,67 +3603,32 @@ snapshots: pkg-types: 1.2.0 ufo: 1.5.4 - mockipfs@0.3.2(mockttp@3.15.3(encoding@0.1.13)): - dependencies: - mockttp: 3.15.3(encoding@0.1.13) - parse-multipart-data: 1.5.0 - - mockttp@3.15.3(encoding@0.1.13): - dependencies: - '@graphql-tools/schema': 8.5.1(graphql@15.9.0) - '@graphql-tools/utils': 8.13.1(graphql@15.9.0) - '@httptoolkit/httpolyglot': 2.2.1 - '@httptoolkit/subscriptions-transport-ws': 0.11.2(graphql@15.9.0) - '@httptoolkit/websocket-stream': 6.0.1 - '@types/cors': 2.8.17 - '@types/node': 22.6.1 - async-mutex: 0.5.0 - base64-arraybuffer: 0.1.5 - body-parser: 1.20.3 - cacheable-lookup: 6.1.0 - common-tags: 1.8.2 - connect: 3.7.0 - cors: 2.8.5 - cors-gate: 1.1.3 - cross-fetch: 3.1.8(encoding@0.1.13) - destroyable-server: 1.0.2 - express: 4.21.0 - fast-json-patch: 3.1.1 - graphql: 15.9.0 - graphql-http: 1.22.1(graphql@15.9.0) - graphql-subscriptions: 1.2.1(graphql@15.9.0) - graphql-tag: 2.12.6(graphql@15.9.0) - http-encoding: 2.0.1 - http2-wrapper: 2.2.1 - https-proxy-agent: 5.0.1 - isomorphic-ws: 4.0.1(ws@8.18.0) - lodash: 4.17.21 - lru-cache: 7.18.3 - native-duplexpair: 1.0.0 - node-forge: 1.3.1 - pac-proxy-agent: 7.0.2 - parse-multipart-data: 1.5.0 - performance-now: 2.1.0 - portfinder: 1.0.32 - read-tls-client-hello: 1.0.1 - semver: 7.6.3 - socks-proxy-agent: 7.0.0 - typed-error: 3.2.2 - urlpattern-polyfill: 8.0.2 - uuid: 8.3.2 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - mri@1.2.0: {} - ms@2.0.0: {} - ms@2.1.3: {} + msw@2.5.0(typescript@5.6.2): + dependencies: + '@bundled-es-modules/cookie': 2.0.0 + '@bundled-es-modules/statuses': 1.0.1 + '@bundled-es-modules/tough-cookie': 0.1.6 + '@inquirer/confirm': 4.0.1 + '@mswjs/interceptors': 0.36.5 + '@open-draft/until': 2.1.0 + '@types/cookie': 0.6.0 + '@types/statuses': 2.0.5 + chalk: 4.1.2 + graphql: 16.9.0 + headers-polyfill: 4.0.3 + is-node-process: 1.2.0 + outvariant: 1.4.3 + path-to-regexp: 6.3.0 + strict-event-emitter: 0.5.1 + type-fest: 4.26.1 + yargs: 17.7.2 + optionalDependencies: + typescript: 5.6.2 + multiaddr-to-uri@8.0.0(node-fetch@2.7.0(encoding@0.1.13)): dependencies: multiaddr: 10.0.1(node-fetch@2.7.0(encoding@0.1.13)) @@ -5215,26 +3658,10 @@ snapshots: murmurhash3js-revisited@3.0.0: {} - mysql2@3.11.3: - dependencies: - aws-ssl-profiles: 1.1.2 - denque: 2.1.0 - generate-function: 2.3.1 - iconv-lite: 0.6.3 - long: 5.2.3 - lru.min: 1.1.1 - named-placeholders: 1.1.3 - seq-queue: 0.0.5 - sqlstring: 2.3.3 - - named-placeholders@1.1.3: - dependencies: - lru-cache: 7.18.3 + mute-stream@1.0.0: {} nanoid@3.3.7: {} - native-duplexpair@1.0.0: {} - native-fetch@3.0.0(node-fetch@2.7.0(encoding@0.1.13)): dependencies: node-fetch: 2.7.0(encoding@0.1.13) @@ -5243,88 +3670,26 @@ snapshots: dependencies: undici: 5.28.4 - negotiator@0.6.3: {} - - netmask@2.0.2: {} - node-fetch@2.7.0(encoding@0.1.13): dependencies: whatwg-url: 5.0.0 optionalDependencies: encoding: 0.1.13 - node-forge@1.3.1: {} - - node-stdlib-browser@1.2.1: - dependencies: - assert: 2.1.0 - browser-resolve: 2.0.0 - browserify-zlib: 0.2.0 - buffer: 5.7.1 - console-browserify: 1.2.0 - constants-browserify: 1.0.0 - create-require: 1.1.1 - crypto-browserify: 3.12.0 - domain-browser: 4.23.0 - events: 3.3.0 - https-browserify: 1.0.0 - isomorphic-timers-promises: 1.0.1 - os-browserify: 0.3.0 - path-browserify: 1.0.1 - pkg-dir: 5.0.0 - process: 0.11.10 - punycode: 1.4.1 - querystring-es3: 0.2.1 - readable-stream: 3.6.2 - stream-browserify: 3.0.0 - stream-http: 3.2.0 - string_decoder: 1.3.0 - timers-browserify: 2.0.12 - tty-browserify: 0.0.1 - url: 0.11.4 - util: 0.12.5 - vm-browserify: 1.1.2 - - object-assign@4.1.1: {} - - object-inspect@1.13.2: {} - - object-is@1.1.6: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - - object-keys@1.1.1: {} - object-traversal@1.0.1: {} - object.assign@4.1.5: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - has-symbols: 1.0.3 - object-keys: 1.1.1 - - on-finished@2.3.0: - dependencies: - ee-first: 1.1.1 - - on-finished@2.4.1: - dependencies: - ee-first: 1.1.1 - once@1.4.0: dependencies: wrappy: 1.0.2 one-webcrypto@1.0.3: {} - os-browserify@0.3.0: {} - os-tmpdir@1.0.2: {} outdent@0.5.0: {} + outvariant@1.4.3: {} + p-defer@3.0.0: {} p-fifo@1.0.0: @@ -5340,18 +3705,10 @@ snapshots: dependencies: p-try: 2.2.0 - p-limit@3.1.0: - dependencies: - yocto-queue: 0.1.0 - p-locate@4.1.0: dependencies: p-limit: 2.3.0 - p-locate@5.0.0: - dependencies: - p-limit: 3.1.0 - p-map@2.1.0: {} p-retry@5.1.2: @@ -5361,54 +3718,17 @@ snapshots: p-try@2.2.0: {} - pac-proxy-agent@7.0.2: - dependencies: - '@tootallnate/quickjs-emscripten': 0.23.0 - agent-base: 7.1.1 - debug: 4.3.7 - get-uri: 6.0.3 - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.5 - pac-resolver: 7.0.1 - socks-proxy-agent: 8.0.4 - transitivePeerDependencies: - - supports-color - - pac-resolver@7.0.1: - dependencies: - degenerator: 5.0.1 - netmask: 2.0.2 - package-manager-detector@0.2.0: {} - pako@1.0.11: {} - parallel-transform-web@1.0.1: {} - parse-asn1@5.1.7: - dependencies: - asn1.js: 4.10.1 - browserify-aes: 1.2.0 - evp_bytestokey: 1.0.3 - hash-base: 3.0.4 - pbkdf2: 3.1.2 - safe-buffer: 5.2.1 - parse-duration@1.1.0: {} - parse-multipart-data@1.5.0: {} - - parseurl@1.3.3: {} - - path-browserify@1.0.1: {} - path-exists@4.0.0: {} path-is-absolute@1.0.1: {} - path-parse@1.0.7: {} - - path-to-regexp@0.1.10: {} + path-to-regexp@6.3.0: {} path-type@4.0.0: {} @@ -5416,50 +3736,18 @@ snapshots: pathval@2.0.0: {} - pbkdf2@3.1.2: - dependencies: - create-hash: 1.2.0 - create-hmac: 1.1.7 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - - performance-now@2.1.0: {} - picocolors@1.1.0: {} picomatch@2.3.1: {} pify@4.0.1: {} - pify@5.0.0: {} - - pkg-dir@5.0.0: - dependencies: - find-up: 5.0.0 - pkg-types@1.2.0: dependencies: confbox: 0.1.7 mlly: 1.7.1 pathe: 1.1.2 - playwright-core@1.47.2: {} - - playwright@1.47.2: - dependencies: - playwright-core: 1.47.2 - optionalDependencies: - fsevents: 2.3.2 - - portfinder@1.0.32: - dependencies: - async: 2.6.4 - debug: 3.2.7 - mkdirp: 0.5.6 - transitivePeerDependencies: - - supports-color - possible-typed-array-names@1.0.0: {} postcss@8.4.47: @@ -5470,16 +3758,6 @@ snapshots: prettier@2.8.8: {} - process-nextick-args@2.0.1: {} - - process@0.11.10: {} - - proper-lockfile@4.1.2: - dependencies: - graceful-fs: 4.2.11 - retry: 0.12.0 - signal-exit: 3.0.7 - protobufjs@6.11.4: dependencies: '@protobufjs/aspromise': 1.1.2 @@ -5511,64 +3789,24 @@ snapshots: '@types/node': 22.6.1 long: 5.2.3 - proxy-addr@2.0.7: - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 - proxy-from-env@1.1.0: {} pseudomap@1.0.2: {} - public-encrypt@4.0.3: - dependencies: - bn.js: 4.12.0 - browserify-rsa: 4.1.1 - create-hash: 1.2.0 - parse-asn1: 5.1.7 - randombytes: 2.1.0 - safe-buffer: 5.2.1 - - punycode@1.4.1: {} + psl@1.9.0: {} - qs@6.13.0: - dependencies: - side-channel: 1.0.6 + punycode@2.3.1: {} - querystring-es3@0.2.1: {} + querystringify@2.2.0: {} queue-microtask@1.2.3: {} - quick-lru@5.1.1: {} - rabin-rs@2.1.0: {} - randombytes@2.1.0: - dependencies: - safe-buffer: 5.2.1 - - randomfill@1.0.4: - dependencies: - randombytes: 2.1.0 - safe-buffer: 5.2.1 - - range-parser@1.2.1: {} - - raw-body@2.5.2: - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - react-native-fetch-api@3.0.0: dependencies: p-defer: 3.0.0 - read-tls-client-hello@1.0.1: - dependencies: - '@types/node': 22.6.1 - read-yaml-file@1.1.0: dependencies: graceful-fs: 4.2.11 @@ -5576,16 +3814,6 @@ snapshots: pify: 4.0.1 strip-bom: 3.0.0 - readable-stream@2.3.8: - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - readable-stream@3.6.2: dependencies: inherits: 2.0.4 @@ -5600,35 +3828,22 @@ snapshots: require-directory@2.1.1: {} - resolve-alpn@1.2.1: {} + requires-port@1.0.0: {} resolve-from@5.0.0: {} resolve.exports@2.0.2: {} - resolve@1.22.8: - dependencies: - is-core-module: 2.15.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - resumer@0.0.0: dependencies: through: 2.3.8 retimer@3.0.0: {} - retry@0.12.0: {} - retry@0.13.1: {} reusify@1.0.4: {} - ripemd160@2.0.2: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - rollup@4.22.5: dependencies: '@types/estree': 1.0.6 @@ -5659,43 +3874,12 @@ snapshots: dependencies: tslib: 2.7.0 - safe-buffer@5.1.2: {} - safe-buffer@5.2.1: {} safer-buffer@2.1.2: {} semver@7.6.3: {} - send@0.19.0: - dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: 1.2.1 - statuses: 2.0.1 - transitivePeerDependencies: - - supports-color - - seq-queue@0.0.5: {} - - serve-static@1.16.2: - dependencies: - encodeurl: 2.0.0 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.19.0 - transitivePeerDependencies: - - supports-color - set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 @@ -5705,15 +3889,6 @@ snapshots: gopd: 1.0.1 has-property-descriptors: 1.0.2 - setimmediate@1.0.5: {} - - setprototypeof@1.2.0: {} - - sha.js@2.4.11: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - shebang-command@1.2.0: dependencies: shebang-regex: 1.0.0 @@ -5722,41 +3897,13 @@ snapshots: shell-quote@1.8.1: {} - side-channel@1.0.6: - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - get-intrinsic: 1.2.4 - object-inspect: 1.13.2 - siginfo@2.0.0: {} signal-exit@3.0.7: {} - slash@3.0.0: {} - - smart-buffer@4.2.0: {} - - socks-proxy-agent@7.0.0: - dependencies: - agent-base: 6.0.2 - debug: 4.3.7 - socks: 2.8.3 - transitivePeerDependencies: - - supports-color - - socks-proxy-agent@8.0.4: - dependencies: - agent-base: 7.1.1 - debug: 4.3.7 - socks: 2.8.3 - transitivePeerDependencies: - - supports-color + signal-exit@4.1.0: {} - socks@2.8.3: - dependencies: - ip-address: 9.0.5 - smart-buffer: 4.2.0 + slash@3.0.0: {} source-map-js@1.2.1: {} @@ -5771,37 +3918,17 @@ snapshots: sprintf-js@1.0.3: {} - sprintf-js@1.1.3: {} - - sqlstring@2.3.3: {} - stackback@0.0.2: {} - statuses@1.5.0: {} - statuses@2.0.1: {} std-env@3.7.0: {} - stream-browserify@3.0.0: - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.2 - - stream-http@3.2.0: - dependencies: - builtin-status-codes: 3.0.0 - inherits: 2.0.4 - readable-stream: 3.6.2 - xtend: 4.0.2 - - stream-shift@1.0.3: {} - stream-to-it@0.2.4: dependencies: get-iterator: 1.0.2 - streamsearch@1.1.0: {} + strict-event-emitter@0.5.1: {} string-width@4.2.3: dependencies: @@ -5809,10 +3936,6 @@ snapshots: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - string_decoder@1.1.1: - dependencies: - safe-buffer: 5.1.2 - string_decoder@1.3.0: dependencies: safe-buffer: 5.2.1 @@ -5831,10 +3954,6 @@ snapshots: dependencies: has-flag: 4.0.0 - supports-preserve-symlinks-flag@1.0.0: {} - - symbol-observable@1.2.0: {} - sync-multihash-sha2@1.0.0: dependencies: '@noble/hashes': 1.5.0 @@ -5862,10 +3981,6 @@ snapshots: dependencies: retimer: 3.0.0 - timers-browserify@2.0.12: - dependencies: - setimmediate: 1.0.5 - tinybench@2.9.0: {} tinyexec@0.3.0: {} @@ -5886,7 +4001,12 @@ snapshots: dependencies: is-number: 7.0.0 - toidentifier@1.0.1: {} + tough-cookie@4.1.4: + dependencies: + psl: 1.9.0 + punycode: 2.3.1 + universalify: 0.2.0 + url-parse: 1.5.10 tr46@0.0.3: {} @@ -5894,14 +4014,9 @@ snapshots: tslib@2.7.0: {} - tty-browserify@0.0.1: {} - - type-is@1.6.18: - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 + type-fest@0.21.3: {} - typed-error@3.2.2: {} + type-fest@4.26.1: {} typescript@5.6.2: {} @@ -5927,18 +4042,12 @@ snapshots: universalify@0.1.2: {} - universalify@2.0.1: {} + universalify@0.2.0: {} - unpipe@1.0.0: {} - - url@0.11.4: + url-parse@1.5.10: dependencies: - punycode: 1.4.1 - qs: 6.13.0 - - urlpattern-polyfill@10.0.0: {} - - urlpattern-polyfill@8.0.2: {} + querystringify: 2.2.0 + requires-port: 1.0.0 util-deprecate@1.0.2: {} @@ -5950,26 +4059,14 @@ snapshots: is-typed-array: 1.1.13 which-typed-array: 1.1.15 - utils-merge@1.0.1: {} - - uuid@8.3.2: {} - - uuid@9.0.1: {} - v8-to-istanbul@9.3.0: dependencies: '@jridgewell/trace-mapping': 0.3.25 '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 - value-or-promise@1.0.11: {} - - value-or-promise@1.0.12: {} - varint@6.0.0: {} - vary@1.1.2: {} - vite-node@2.1.1(@types/node@22.6.1): dependencies: cac: 6.7.14 @@ -5996,10 +4093,10 @@ snapshots: '@types/node': 22.6.1 fsevents: 2.3.3 - vitest@2.1.1(@types/node@22.6.1): + vitest@2.1.1(@types/node@22.6.1)(msw@2.5.0(typescript@5.6.2)): dependencies: '@vitest/expect': 2.1.1 - '@vitest/mocker': 2.1.1(@vitest/spy@2.1.1)(vite@5.4.8(@types/node@22.6.1)) + '@vitest/mocker': 2.1.1(@vitest/spy@2.1.1)(msw@2.5.0(typescript@5.6.2))(vite@5.4.8(@types/node@22.6.1)) '@vitest/pretty-format': 2.1.1 '@vitest/runner': 2.1.1 '@vitest/snapshot': 2.1.1 @@ -6030,8 +4127,6 @@ snapshots: - supports-color - terser - vm-browserify@1.1.2: {} - web-encoding@1.1.5: dependencies: util: 0.12.5 @@ -6069,6 +4164,12 @@ snapshots: siginfo: 2.0.0 stackback: 0.0.2 + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -6077,10 +4178,6 @@ snapshots: wrappy@1.0.2: {} - ws@8.18.0: {} - - xtend@4.0.2: {} - y18n@5.0.8: {} yallist@2.1.2: {} @@ -6097,6 +4194,4 @@ snapshots: y18n: 5.0.8 yargs-parser: 21.1.1 - yocto-queue@0.1.0: {} - - zstd-codec@0.1.5: {} + yoctocolors-cjs@2.1.2: {} diff --git a/src/FleekSdk.test.ts b/src/FleekSdk.test.ts index 5b4e729..808beb2 100644 --- a/src/FleekSdk.test.ts +++ b/src/FleekSdk.test.ts @@ -1,36 +1,20 @@ -import { describe, expect } from 'vitest'; +import { describe, expect, it, afterAll, afterEach, beforeAll } from 'vitest'; +import { server } from './mocks/graphql/node'; +import { mockGraphqlServiceApiUrl as graphqlServiceApiUrl } from './mocks/graphql/handlers'; +import { FleekSdk } from './FleekSdk'; -import { mockDatabasesAndGraphqlWithBrowserSdkForEachTest } from './testTools/mockDatabasesAndGraphqlWithBrowserSdkForEachTest'; -import { mockDatabasesAndGraphqlWithNodeSdkForEachTest } from './testTools/mockDatabasesAndGraphqlWithNodeSdkForEachTest'; - -describe('[Node.js] getVersion', () => { - const { it } = mockDatabasesAndGraphqlWithNodeSdkForEachTest({ - mockIpfs: false, - }); - - it('should get current version info', async (context) => { - const response = await context.sdks.josh.getVersion(); - - expect(response).toMatchInlineSnapshot(` - Object { - "version": Object { - "__typename": "Version", - "commitHash": "0fabad88415cedb2c3c21548afa14a949a088954", - }, - } - `); +describe('FleekSDK', () => { + const sdk = new FleekSdk({ + graphqlServiceApiUrl, + accessTokenService: {} as any, }); -}); -describe('[Chromium] getVersion', () => { - const { it } = mockDatabasesAndGraphqlWithBrowserSdkForEachTest({ - mockIpfs: false, - }); + beforeAll(() => server.listen()); + afterEach(() => server.resetHandlers()); + afterAll(() => server.close()); - it('should get current version info', async (context) => { - const response = await context.sdks.josh({ - callback: () => window.sdk.getVersion(), - }); + it('should get current version info', async () => { + const response = await sdk.getVersion(); expect(response).toMatchInlineSnapshot(` Object { diff --git a/src/FleekSdk.ts b/src/FleekSdk.ts index 8b13c5f..eeab56b 100644 --- a/src/FleekSdk.ts +++ b/src/FleekSdk.ts @@ -98,6 +98,7 @@ export class FleekSdk { public getVersion = async () => { const response = await this.graphqlClient.query({ + __name: 'GetVersion', version: { __scalar: true }, }); diff --git a/src/clients/FleekSdk.test.ts b/src/clients/FleekSdk.test.ts deleted file mode 100644 index 5b4e729..0000000 --- a/src/clients/FleekSdk.test.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { describe, expect } from 'vitest'; - -import { mockDatabasesAndGraphqlWithBrowserSdkForEachTest } from './testTools/mockDatabasesAndGraphqlWithBrowserSdkForEachTest'; -import { mockDatabasesAndGraphqlWithNodeSdkForEachTest } from './testTools/mockDatabasesAndGraphqlWithNodeSdkForEachTest'; - -describe('[Node.js] getVersion', () => { - const { it } = mockDatabasesAndGraphqlWithNodeSdkForEachTest({ - mockIpfs: false, - }); - - it('should get current version info', async (context) => { - const response = await context.sdks.josh.getVersion(); - - expect(response).toMatchInlineSnapshot(` - Object { - "version": Object { - "__typename": "Version", - "commitHash": "0fabad88415cedb2c3c21548afa14a949a088954", - }, - } - `); - }); -}); - -describe('[Chromium] getVersion', () => { - const { it } = mockDatabasesAndGraphqlWithBrowserSdkForEachTest({ - mockIpfs: false, - }); - - it('should get current version info', async (context) => { - const response = await context.sdks.josh({ - callback: () => window.sdk.getVersion(), - }); - - expect(response).toMatchInlineSnapshot(` - Object { - "version": Object { - "__typename": "Version", - "commitHash": "0fabad88415cedb2c3c21548afa14a949a088954", - }, - } - `); - }); -}); diff --git a/src/clients/applications.test.ts b/src/clients/applications.test.ts new file mode 100644 index 0000000..6efe04a --- /dev/null +++ b/src/clients/applications.test.ts @@ -0,0 +1,204 @@ +import { describe, expect, it, afterAll, afterEach, beforeAll } from 'vitest'; +import { server } from '../mocks/graphql/node'; +import { mockGraphqlServiceApiUrl as graphqlServiceApiUrl } from '../mocks/graphql/handlers'; +import { FleekSdk } from '../FleekSdk'; +import state from '../mocks/state'; + +describe('Applications', () => { + const sdk = new FleekSdk({ + graphqlServiceApiUrl, + accessTokenService: {} as any, + }); + + beforeAll(() => server.listen()); + afterEach(() => server.resetHandlers()); + afterAll(() => server.close()); + + it('should get application', async () => { + const response = await sdk.applications().get({ + id: state.auth.application.electronicCoMobileApp.id, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "clientId": "client_SCmayempJ1d953yjn1yx", + "createdAt": "2023-03-23T12:05:13.641Z", + "id": "cli2ymypd000208l86gjd6p17", + "name": "electronicCoMobileApp", + "updatedAt": "2023-03-23T12:05:13.641Z", + "whiteLabelDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "clu2xf6uz000208jv6qskg1hm", + }, + Object { + "hostname": "app.electronic.co", + "id": "clu2xd1bs000108jv0v0d2xmy", + }, + ], + "whitelistDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "cli2z1zim000008l66z4l7qg3", + }, + Object { + "hostname": "app.electronic.co", + "id": "cli2z10wq000208jw42gd4pyh", + }, + ], + } + `); + }); + + it('should list applications', async () => { + const response = await sdk.applications().list(); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "clientId": "client_ZRacrn3b1ForrjK5u8VD", + "createdAt": "2023-03-23T11:05:13.641Z", + "id": "cli2ymucu000108l81grqhzcp", + "name": "electronicCoWebApp", + "updatedAt": "2023-03-23T11:05:13.641Z", + "whiteLabelDomains": Array [], + "whitelistDomains": Array [], + }, + Object { + "clientId": "client_SCmayempJ1d953yjn1yx", + "createdAt": "2023-03-23T12:05:13.641Z", + "id": "cli2ymypd000208l86gjd6p17", + "name": "electronicCoMobileApp", + "updatedAt": "2023-03-23T12:05:13.641Z", + "whiteLabelDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "clu2xf6uz000208jv6qskg1hm", + }, + Object { + "hostname": "app.electronic.co", + "id": "clu2xd1bs000108jv0v0d2xmy", + }, + ], + "whitelistDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "cli2z1zim000008l66z4l7qg3", + }, + Object { + "hostname": "app.electronic.co", + "id": "cli2z10wq000208jw42gd4pyh", + }, + ], + }, + ] + `); + }); + + it('should create application', async () => { + const response = await sdk.applications().create({ + name: 'test-application', + whitelistDomains: ['fleek.xyz'], + }); + + // TODO: This mandates returning whitelistDomains + // and whiteLabelDomains, while the non-schema version + // does not requires it for some reason. + // Do a test in runtime to check + // see handler + expect(response).toMatchInlineSnapshot( + { + createdAt: expect.anything(), + id: expect.any(String), + updatedAt: expect.anything(), + }, + ` + Object { + "clientId": "client_testtesttest", + "createdAt": Anything, + "id": Any, + "name": "test-application", + "updatedAt": Anything, + "whiteLabelDomains": Array [], + "whitelistDomains": Array [], + } + `, + ); + }); + + it('should update application', async () => { + const response = await sdk.applications().update({ + id: state.auth.application.electronicCoMobileApp.id, + name: 'new-mobile-app-name', + }); + + expect(response).toMatchInlineSnapshot( + { updatedAt: expect.anything() }, + ` + Object { + "clientId": "client_SCmayempJ1d953yjn1yx", + "createdAt": "2023-03-23T12:05:13.641Z", + "id": "cli2ymypd000208l86gjd6p17", + "name": "new-mobile-app-name", + "updatedAt": Anything, + "whiteLabelDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "clu2xf6uz000208jv6qskg1hm", + }, + Object { + "hostname": "app.electronic.co", + "id": "clu2xd1bs000108jv0v0d2xmy", + }, + ], + "whitelistDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "cli2z1zim000008l66z4l7qg3", + }, + Object { + "hostname": "app.electronic.co", + "id": "cli2z10wq000208jw42gd4pyh", + }, + ], + } + `, + ); + }); + + it('should delete application', async () => { + const response = await sdk.applications().delete({ + id: state.auth.application.electronicCoMobileApp.id, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "clientId": "client_SCmayempJ1d953yjn1yx", + "createdAt": "2023-03-23T12:05:13.641Z", + "id": "cli2ymypd000208l86gjd6p17", + "name": "electronicCoMobileApp", + "updatedAt": "2023-03-23T12:05:13.641Z", + "whiteLabelDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "clu2xf6uz000208jv6qskg1hm", + }, + Object { + "hostname": "app.electronic.co", + "id": "clu2xd1bs000108jv0v0d2xmy", + }, + ], + "whitelistDomains": Array [ + Object { + "hostname": "app.best-electronic.co", + "id": "cli2z1zim000008l66z4l7qg3", + }, + Object { + "hostname": "app.electronic.co", + "id": "cli2z10wq000208jw42gd4pyh", + }, + ], + } + `); + }); +}); diff --git a/src/clients/applications.ts b/src/clients/applications.ts index 4e3d24d..925f172 100644 --- a/src/clients/applications.ts +++ b/src/clients/applications.ts @@ -56,6 +56,7 @@ export class ApplicationsClient { public get = async ({ id }: GetApplicationArgs) => { const response = await this.graphqlClient.query({ + __name: 'GetApplication', application: { __args: { where: { @@ -71,7 +72,10 @@ export class ApplicationsClient { public list = async () => { const response = await this.graphqlClient.query({ - applications: { data: ApplicationsClient.APPLICATION_MAPPED_PROPERTIES }, + __name: 'GetApplications', + applications: { + data: ApplicationsClient.APPLICATION_MAPPED_PROPERTIES, + }, }); return response.applications.data; @@ -79,6 +83,7 @@ export class ApplicationsClient { public create = async ({ name, whitelistDomains }: CreateApplicationArgs) => { const response = await this.graphqlClient.mutation({ + __name: 'CreateApplication', createApplication: { __args: { data: { @@ -102,6 +107,7 @@ export class ApplicationsClient { whitelistDomains, }: UpdateApplicationArgs) => { const response = await this.graphqlClient.mutation({ + __name: 'UpdateApplication', updateApplication: { __args: { where: { id }, @@ -122,6 +128,7 @@ export class ApplicationsClient { public delete = async ({ id }: DeleteApplicationArgs) => { const response = await this.graphqlClient.mutation({ + __name: 'DeleteApplication', deleteApplication: { __args: { where: { diff --git a/src/clients/domains.test.ts b/src/clients/domains.test.ts new file mode 100644 index 0000000..565fd98 --- /dev/null +++ b/src/clients/domains.test.ts @@ -0,0 +1,565 @@ +import { + describe, + expect, + it, + afterAll, + afterEach, + beforeAll, + vi, +} from 'vitest'; +import { server } from '../mocks/graphql/node'; +import { mockGraphqlServiceApiUrl as graphqlServiceApiUrl } from '../mocks/graphql/handlers'; +import { FleekSdk } from '../FleekSdk'; +import state from '../mocks/state'; + +vi.mock('@aws-sdk/client-sfn', () => ({ + SFNClient: vi.fn(() => ({ + send: vi.fn().mockResolvedValue({}), + })), + StartExecutionCommand: vi.fn().mockResolvedValue({}), +})); + +describe('Domains', () => { + const sdk = new FleekSdk({ + graphqlServiceApiUrl, + accessTokenService: {} as any, + }); + + beforeAll(() => server.listen()); + afterEach(() => server.resetHandlers()); + afterAll(() => server.close()); + + it('should list domains', async () => { + const response = await sdk.domains().list(); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T09:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T09:05:13.641Z", + "id": "clgmg76ch000208mid5o30du0", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T09:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T10:05:13.641Z", + "id": "clgmgbj4h000308mi8aai0pli", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T10:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + ], + "hostname": "electronic.co", + "id": "clgmfj1pa000108lc0g5i7d32", + "isVerified": true, + "status": "ACTIVE", + "updatedAt": "2023-03-24T09:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + }, + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T10:05:13.641Z", + "dnsConfigs": Array [], + "hostname": "eshop-electronic.co", + "id": "clgmfj874000208lc2e9ccglf", + "isVerified": false, + "status": "VERIFYING_FAILED", + "updatedAt": "2023-03-24T10:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + }, + Object { + "__typename": "Domain", + "createdAt": "2023-03-28T10:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-02-28T10:04:33.641Z", + "id": "cln2226gc000208la1egftrd4", + "name": "_dnslink", + "type": "CNAME", + "updatedAt": "2023-02-28T10:04:33.641Z", + "value": "blue-green-yellow.dev.on-fleek-test.app", + }, + ], + "hostname": "blog-electornic.co", + "id": "clgnslqvg000108l6hg5ea3u0", + "isVerified": false, + "status": "CREATING", + "updatedAt": "2023-03-28T10:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgow7wob000508jog5gfanj9", + }, + }, + Object { + "__typename": "Domain", + "createdAt": "2023-03-28T10:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-02-28T10:04:33.641Z", + "id": "ckmhgsu0x011008mney5h0bu", + "name": "_dnslink", + "type": "CNAME", + "updatedAt": "2023-02-28T10:04:33.641Z", + "value": "_dnslink.white-black-silver.dev.on-fleek-test.app", + }, + ], + "hostname": "dnslink-electornic.co", + "id": "clgnslqvg000108l6hg5ea3u1", + "isVerified": true, + "status": "ACTIVE", + "updatedAt": "2023-03-28T10:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgow7wob000508jog5gfanj9", + }, + }, + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T10:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-02-28T10:04:33.641Z", + "id": "ckmhgsu0x011008mney3h03bu", + "name": "_dnslink", + "type": "CNAME", + "updatedAt": "2023-02-28T10:04:33.641Z", + "value": "one-knife-yellow.dev.on-fleek-test.app", + }, + ], + "hostname": "static.eshop-electronic.co", + "id": "clmhwwted000108mnajduel68", + "isVerified": true, + "status": "ACTIVE", + "updatedAt": "2023-03-24T10:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "cljfq6n2y000008lb4oy403bc", + }, + }, + Object { + "__typename": "Domain", + "createdAt": "2023-02-28T10:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-02-28T10:04:33.641Z", + "id": "cln2226gc000208la1egogfn3", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-02-28T10:04:33.641Z", + "value": "cljfqzrcg000208jy6677aqv1.fleekcdn.xyz", + }, + Object { + "__typename": "DnsConfig", + "createdAt": "2023-02-28T10:04:33.641Z", + "id": "cln2226gc000208laurhtg4d5", + "name": "_dnslink", + "type": "CNAME", + "updatedAt": "2023-02-28T10:04:33.641Z", + "value": "blue-green-yellow.dev.on-fleek-test.app", + }, + ], + "hostname": "documents-electronic.co", + "id": "cln21wwwa000008la7e0kbvd7", + "isVerified": false, + "status": "CREATED", + "updatedAt": "2023-02-28T10:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "cljfqzrcg000208jy6677aqv1", + }, + }, + ] + `); + }); + + it('should get domain by its id', async (context) => { + const response = await sdk.domains().get({ + domainId: state.domains.domain.electronicCoPrimary.id, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T09:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T09:05:13.641Z", + "id": "clgmg76ch000208mid5o30du0", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T09:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T10:05:13.641Z", + "id": "clgmgbj4h000308mi8aai0pli", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T10:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + ], + "hostname": "electronic.co", + "id": "clgmfj1pa000108lc0g5i7d32", + "isVerified": true, + "status": "ACTIVE", + "updatedAt": "2023-03-24T09:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + } + `); + }); + + it('should get domains by its hostname', async () => { + const response = await sdk.domains().getByHostname({ + hostname: state.domains.domain.electronicCoPrimary.hostname, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T09:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T09:05:13.641Z", + "id": "clgmg76ch000208mid5o30du0", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T09:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T10:05:13.641Z", + "id": "clgmgbj4h000308mi8aai0pli", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T10:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + ], + "hostname": "electronic.co", + "id": "clgmfj1pa000108lc0g5i7d32", + "isVerified": true, + "status": "ACTIVE", + "updatedAt": "2023-03-24T09:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + } + `); + }); + + it('should list domains by the zone id', async (context) => { + const response = await sdk + .domains() + .listByZoneId({ zoneId: state.domains.zone.electronicCoEshop.id }); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T09:05:13.641Z", + "dnsConfigs": Array [ + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T09:05:13.641Z", + "id": "clgmg76ch000208mid5o30du0", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T09:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + Object { + "__typename": "DnsConfig", + "createdAt": "2023-03-23T10:05:13.641Z", + "id": "clgmgbj4h000308mi8aai0pli", + "name": "hostname", + "type": "CNAME", + "updatedAt": "2023-03-23T10:05:13.641Z", + "value": "clgmfj874000208lc2e9ccglf.b-cdn.net", + }, + ], + "hostname": "electronic.co", + "id": "clgmfj1pa000108lc0g5i7d32", + "isVerified": true, + "status": "ACTIVE", + "updatedAt": "2023-03-24T09:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + }, + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T10:05:13.641Z", + "dnsConfigs": Array [], + "hostname": "eshop-electronic.co", + "id": "clgmfj874000208lc2e9ccglf", + "isVerified": false, + "status": "VERIFYING_FAILED", + "updatedAt": "2023-03-24T10:05:13.641Z", + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + }, + ] + `); + }); + + it('should create domain', async () => { + const response = await sdk.domains().createDomain({ + hostname: 'super-eshop.xyz', + zoneId: state.domains.zone.electronicCoEshop.id, + }); + + expect(response).toMatchInlineSnapshot( + { + createdAt: expect.anything(), + id: expect.any(String), + updatedAt: expect.anything(), + }, + ` + Object { + "__typename": "Domain", + "createdAt": Anything, + "dnslinkStatus": null, + "errorMessage": null, + "hostname": "super-eshop.xyz", + "id": Any, + "isVerified": false, + "status": "CREATING", + "updatedAt": Anything, + } + `, + ); + }); + + it('should delete domain', async () => { + const response = await sdk.domains().deleteDomain({ + domainId: state.domains.domain.electronicCoPrimary.zoneId, + }); + + expect(response).toMatchInlineSnapshot( + { updatedAt: expect.anything() }, + ` + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T10:05:13.641Z", + "dnsConfigs": Array [], + "hostname": "eshop-electronic.co", + "id": "clgmfj874000208lc2e9ccglf", + "isVerified": false, + "status": "DELETING", + "updatedAt": Anything, + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + } + `, + ); + }); + + it('should verify domain', async () => { + const response = await sdk + .domains() + .verifyDomain({ domainId: state.domains.domain.electronicCoEshop.id }); + + expect(response).toMatchInlineSnapshot( + { updatedAt: expect.anything() }, + ` + Object { + "__typename": "Domain", + "createdAt": "2023-03-24T10:05:13.641Z", + "dnsConfigs": Array [], + "hostname": "eshop-electronic.co", + "id": "clgmfj874000208lc2e9ccglf", + "isVerified": false, + "status": "VERIFYING", + "updatedAt": Anything, + "zone": Object { + "__typename": "Zone", + "id": "clgmfj874000208lc2e9ccglf", + }, + } + `, + ); + }); + + it('should list zones', async () => { + const response = await sdk.domains().listZones(); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "__typename": "Zone", + "createdAt": "2022-12-24T09:04:13.641Z", + "id": "clgmfj874000208lc2e9ccglf", + "originUrl": "https://ipfs.io/ipfs/QmXYsy8xLYRaDbgDNeSthWSNneKM13Vb1FHV8LC4DghHy2", + "status": "CREATED", + "type": "SITE", + "updatedAt": "2022-12-24T09:04:13.641Z", + }, + Object { + "__typename": "Zone", + "createdAt": "2022-12-28T10:04:13.641Z", + "id": "clgow7wob000508jog5gfanj9", + "originUrl": "https://bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q.ipfs.gateway-ipfs.fleeksandbox.xyz", + "status": "CREATED", + "type": "SITE", + "updatedAt": "2022-12-28T10:04:13.641Z", + }, + Object { + "__typename": "Zone", + "createdAt": "2022-04-25T09:04:13.641Z", + "id": "clj76kw6i000008l2ekmz6ahd", + "originUrl": "https://bafybeib5qbrx6xdrdvuxt2wsvfsrwwvu42bfh6pycm677qjkl66heelc2e.ipfs.gateway-ipfs.fleeksandbox.xyz", + "status": "CREATED", + "type": "PRIVATE_GATEWAY", + "updatedAt": "2022-04-25T10:04:13.641Z", + }, + Object { + "__typename": "Zone", + "createdAt": "2022-12-30T11:04:13.641Z", + "id": "clje357cc000108jse08c2t6m", + "originUrl": "https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342", + "status": "CREATING_FAILED", + "type": "SITE", + "updatedAt": "2022-12-30T11:04:13.641Z", + }, + Object { + "__typename": "Zone", + "createdAt": "2022-12-24T09:04:13.641Z", + "id": "cljfq6n2y000008lb4oy403bc", + "originUrl": "https://dedicated-gateway-ipfs.fleeksandbox.xyz", + "status": "CREATED", + "type": "PRIVATE_GATEWAY", + "updatedAt": "2022-12-24T09:04:13.641Z", + }, + Object { + "__typename": "Zone", + "createdAt": "2023-02-28T10:04:13.641Z", + "id": "cljfqzrcg000208jy6677aqv1", + "originUrl": "https://dedicated-gateway-ipfs.fleeksandbox.xyz", + "status": "CREATED", + "type": "PRIVATE_GATEWAY", + "updatedAt": "2023-02-28T10:04:13.641Z", + }, + ] + `); + }); + + it('should get zone by its id', async (context) => { + const response = await sdk + .domains() + .getZone({ id: state.domains.zone.electronicCoEshop.id }); + + expect(response).toMatchInlineSnapshot(` + Object { + "__typename": "Zone", + "createdAt": "2022-12-24T09:04:13.641Z", + "id": "clgmfj874000208lc2e9ccglf", + "originUrl": "https://ipfs.io/ipfs/QmXYsy8xLYRaDbgDNeSthWSNneKM13Vb1FHV8LC4DghHy2", + "status": "CREATED", + "type": "SITE", + "updatedAt": "2022-12-24T09:04:13.641Z", + } + `); + }); + + it('should create zone for site', async (context) => { + const response = await sdk + .domains() + .createZoneForSite({ siteId: state.sites.site.electronicCoEshop.id }); + + expect(response).toMatchInlineSnapshot( + { + createdAt: expect.anything(), + id: expect.any(String), + updatedAt: expect.anything(), + }, + ` + Object { + "__typename": "Zone", + "createdAt": Anything, + "id": Any, + "originUrl": "https://bafybeibtme5hmkjxsryerf6pihhfbhifwnsz7gmhnfqglg2r326m4glzva.ipfs.gateway-ipfs.fleeksandbox.xyz", + "originUrlChangedAt": null, + "status": "CREATING", + "type": "SITE", + "updatedAt": Anything, + } + `, + ); + }); + + it('should create zone for private gateway', async (context) => { + const response = await sdk.domains().createZoneForPrivateGateway(); + + expect(response).toMatchInlineSnapshot( + { + createdAt: expect.anything(), + id: expect.any(String), + updatedAt: expect.anything(), + }, + ` + Object { + "__typename": "Zone", + "createdAt": Anything, + "id": Any, + "originUrl": "https://storage.dev.on-fleek-test.app", + "status": "CREATING", + "type": "PRIVATE_GATEWAY", + "updatedAt": Anything, + } + `, + ); + }); + + it('should delete zone', async () => { + const response = await sdk + .domains() + .deleteZone({ id: state.domains.zone.electronicCoVideos.id }); + + expect(response).toMatchInlineSnapshot( + { updatedAt: expect.anything() }, + ` + Object { + "__typename": "Zone", + "createdAt": "2022-12-30T11:04:13.641Z", + "id": "clje357cc000108jse08c2t6m", + "originUrl": "https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342", + "status": "DELETING", + "type": "SITE", + "updatedAt": Anything, + } + `, + ); + }); +}); diff --git a/src/clients/domains.ts b/src/clients/domains.ts index e685ca2..a06140b 100644 --- a/src/clients/domains.ts +++ b/src/clients/domains.ts @@ -77,6 +77,7 @@ export class DomainsClient { // Promise fails for some reason public list = async () => { const response = await this.graphqlClient.query({ + __name: 'GetDomains', domains: { data: { ...DomainsClient.DOMAIN_MAPPED_PROPERTIES, @@ -101,6 +102,7 @@ export class DomainsClient { public get = async ({ domainId }: { domainId: string }) => { const response = await this.graphqlClient.query({ + __name: 'GetDomainById', domain: { __args: { where: { @@ -122,6 +124,7 @@ export class DomainsClient { hostname, }: { hostname: string }): Promise => { const response = await this.graphqlClient.query({ + __name: 'GetDomainByHostname', domainByHostname: { __args: { where: { @@ -141,6 +144,7 @@ export class DomainsClient { public listByZoneId = async ({ zoneId }: { zoneId: string }) => { const response = await this.graphqlClient.query({ + __name: 'GetDomainsByZoneId', domainsByZoneId: { __args: { where: { @@ -166,6 +170,7 @@ export class DomainsClient { hostname, }: { zoneId: string; hostname: string }) => { const response = await this.graphqlClient.mutation({ + __name: 'CreateDomain', createDomain: { __args: { where: { @@ -187,6 +192,7 @@ export class DomainsClient { public deleteDomain = async ({ domainId }: { domainId: string }) => { const response = await this.graphqlClient.mutation({ + __name: 'DeleteDomain', deleteDomain: { __args: { where: { @@ -202,6 +208,7 @@ export class DomainsClient { public verifyDomain = async ({ domainId }: { domainId: string }) => { const response = await this.graphqlClient.mutation({ + __name: 'VerifyDomain', verifyDomain: { __args: { where: { @@ -217,6 +224,7 @@ export class DomainsClient { public listZones = async (): Promise => { const response = await this.graphqlClient.query({ + __name: 'ListZones', zones: { data: DomainsClient.ZONE_MAPPED_PROPERTIES }, }); @@ -225,6 +233,7 @@ export class DomainsClient { public getZone = async ({ id }: { id: string }): Promise => { const response = await this.graphqlClient.query({ + __name: 'GetZone', zone: { __args: { where: { @@ -242,6 +251,7 @@ export class DomainsClient { siteId, }: { siteId: string }): Promise => { const response = await this.graphqlClient.mutation({ + __name: 'CreateZoneForSite', createZoneForSite: { __args: { where: { @@ -260,6 +270,7 @@ export class DomainsClient { public createZoneForPrivateGateway = async (): Promise => { const response = await this.graphqlClient.mutation({ + __name: 'CreateZoneForPrivateGateway', createZoneForPrivateGateway: DomainsClient.ZONE_MAPPED_PROPERTIES, }); @@ -268,6 +279,7 @@ export class DomainsClient { public deleteZone = async ({ id }: { id: string }): Promise => { const response = await this.graphqlClient.mutation({ + __name: 'DeleteZone', deleteZone: { __args: { where: { diff --git a/src/clients/ens.test.ts b/src/clients/ens.test.ts new file mode 100644 index 0000000..1614495 --- /dev/null +++ b/src/clients/ens.test.ts @@ -0,0 +1,243 @@ +import { describe, expect, it, afterAll, afterEach, beforeAll } from 'vitest'; +import { server } from '../mocks/graphql/node'; +import { mockGraphqlServiceApiUrl as graphqlServiceApiUrl } from '../mocks/graphql/handlers'; +import { FleekSdk } from '../FleekSdk'; +import state from '../mocks/state'; + +describe('ENS', () => { + const sdk = new FleekSdk({ + graphqlServiceApiUrl, + accessTokenService: {} as any, + }); + + beforeAll(() => server.listen()); + afterEach(() => server.resetHandlers()); + afterAll(() => server.close()); + + it('should create ENS record', async () => { + const response = await sdk.ens().create({ + name: 'test.eth', + ipnsRecordId: state.ipns.ipnsRecord.electronicCoEshop.id, + siteId: state.sites.site.electronicCoEshop.id, + }); + + expect(response).toMatchInlineSnapshot( + { + createdAt: expect.anything(), + id: expect.any(String), + updatedAt: expect.anything(), + }, + ` + Object { + "createdAt": Anything, + "id": Any, + "ipnsRecord": Object { + "hash": "QmcvfRw5WDutRzvRNq2matcJWW2nKWFGDbqxaaTxnWksME", + "id": "clgkj995t000108med7gb2w4v", + "name": "k51qzi5uqu5dhrupvn0ru1c6el43rhimh95cuiwqy0ofo8bgomvq296b49v9r7", + }, + "name": "test.eth", + "site": Object { + "id": "clgma7ilu000008jzdlwhb76a", + }, + "status": "CREATED", + "updatedAt": Anything, + } + `, + ); + }); + + it('should get ENS record by id', async () => { + const response = await sdk.ens().get({ + id: state.ipns.ensRecord['ens.eth'].id, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "createdAt": "2023-03-24T08:05:13.641Z", + "id": "af470cc1-08d8-4d39-be6f-b0eebc0a6480", + "ipnsRecord": Object { + "hash": "QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy", + "id": "clgkj9pfa000308meh73d8nff", + "name": "k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci", + }, + "name": "ens.eth", + "site": Object { + "id": "clgove94b000208mlhq685zgh", + }, + "status": "ACTIVE", + "updatedAt": "2023-03-24T08:05:13.641Z", + } + `); + }); + + it('should get ENS record by name', async () => { + const response = await sdk.ens().getByName({ + name: state.ipns.ensRecord['ens.eth'].name, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "createdAt": "2023-03-24T08:05:13.641Z", + "id": "af470cc1-08d8-4d39-be6f-b0eebc0a6480", + "ipnsRecord": Object { + "hash": "QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy", + "id": "clgkj9pfa000308meh73d8nff", + "name": "k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci", + }, + "name": "ens.eth", + "site": Object { + "id": "clgove94b000208mlhq685zgh", + }, + "status": "ACTIVE", + "updatedAt": "2023-03-24T08:05:13.641Z", + } + `); + }); + + it('should verify ENS record', async () => { + const response = await sdk + .ens() + .verify({ id: state.ipns.ensRecord['vitalik.eth'].id }); + + expect(response).toMatchInlineSnapshot( + { updatedAt: expect.anything() }, + ` + Object { + "createdAt": "2023-03-24T08:05:13.641Z", + "id": "40767ba9-eb85-439b-9369-489459a9376b", + "ipnsRecord": Object { + "hash": "QmX7WyiLtbvmfbUzN2eJuvmDuGZSDjavuauwaJL4bFC5SJ", + "id": "clgkj9ipf000208me9yzre1cn", + "name": "k51qzi5uqu5dh2c8ec00yowiapopchxdvnwh6iy2xoxc51inldruqh4yvzgez5", + }, + "name": "vitalik.eth", + "site": Object { + "id": "clgma7mmh000108jzd13c50ol", + }, + "status": "VERIFYING", + "updatedAt": Anything, + } + `, + ); + }); + + it('should delete ENS record', async (context) => { + const response = await sdk + .ens() + .delete({ id: state.ipns.ensRecord['ens.eth'].id }); + + expect(response).toMatchInlineSnapshot(` + Object { + "createdAt": "2023-03-24T08:05:13.641Z", + "id": "af470cc1-08d8-4d39-be6f-b0eebc0a6480", + "ipnsRecord": Object { + "hash": "QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy", + "id": "clgkj9pfa000308meh73d8nff", + "name": "k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci", + }, + "name": "ens.eth", + "site": Object { + "id": "clgove94b000208mlhq685zgh", + }, + "status": "ACTIVE", + "updatedAt": "2023-03-24T08:05:13.641Z", + } + `); + }); + + it('should list ENS records', async () => { + const response = await sdk.ens().list(); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "createdAt": "2023-03-24T08:05:13.641Z", + "id": "40767ba9-eb85-439b-9369-489459a9376b", + "ipnsRecord": Object { + "hash": "QmX7WyiLtbvmfbUzN2eJuvmDuGZSDjavuauwaJL4bFC5SJ", + "id": "clgkj9ipf000208me9yzre1cn", + "name": "k51qzi5uqu5dh2c8ec00yowiapopchxdvnwh6iy2xoxc51inldruqh4yvzgez5", + }, + "name": "vitalik.eth", + "site": Object { + "id": "clgma7mmh000108jzd13c50ol", + }, + "status": "CREATED", + "updatedAt": "2023-03-24T08:05:13.641Z", + }, + Object { + "createdAt": "2023-03-25T08:05:13.641Z", + "id": "8d3ad502-ec4d-489e-858e-d112656f3511", + "ipnsRecord": Object { + "hash": "QmcvfRw5WDutRzvRNq2matcJWW2nKWFGDbqxaaTxnWksME", + "id": "clgkj995t000108med7gb2w4v", + "name": "k51qzi5uqu5dhrupvn0ru1c6el43rhimh95cuiwqy0ofo8bgomvq296b49v9r7", + }, + "name": "dries.eth", + "site": Object { + "id": "clgma7ilu000008jzdlwhb76a", + }, + "status": "VERIFYING", + "updatedAt": "2023-03-25T08:05:13.641Z", + }, + Object { + "createdAt": "2023-03-24T08:05:13.641Z", + "id": "af470cc1-08d8-4d39-be6f-b0eebc0a6480", + "ipnsRecord": Object { + "hash": "QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy", + "id": "clgkj9pfa000308meh73d8nff", + "name": "k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci", + }, + "name": "ens.eth", + "site": Object { + "id": "clgove94b000208mlhq685zgh", + }, + "status": "ACTIVE", + "updatedAt": "2023-03-24T08:05:13.641Z", + }, + Object { + "createdAt": "2023-03-26T08:05:13.641Z", + "id": "clm0mhccs000108ma34jn6ed3", + "ipnsRecord": Object { + "hash": "QmcvfRw5WDutRzvRNq2matcJWW2nKWFGDbqxaaTxnWksME", + "id": "clgkj995t000108med7gb2w4v", + "name": "k51qzi5uqu5dhrupvn0ru1c6el43rhimh95cuiwqy0ofo8bgomvq296b49v9r7", + }, + "name": "smarttv.eth", + "site": Object { + "id": "clgma7ilu000008jzdlwhb76a", + }, + "status": "ACTIVE", + "updatedAt": "2023-03-26T08:05:13.641Z", + }, + ] + `); + }); + + it('should list ENS records by IPNS record id', async () => { + const response = await sdk.ens().listByIpnsRecordId({ + ipnsRecordId: state.ipns.ipnsRecord.electronicCoBlog.id, + }); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "createdAt": "2023-03-24T08:05:13.641Z", + "id": "40767ba9-eb85-439b-9369-489459a9376b", + "ipnsRecord": Object { + "hash": "QmX7WyiLtbvmfbUzN2eJuvmDuGZSDjavuauwaJL4bFC5SJ", + "id": "clgkj9ipf000208me9yzre1cn", + "name": "k51qzi5uqu5dh2c8ec00yowiapopchxdvnwh6iy2xoxc51inldruqh4yvzgez5", + }, + "name": "vitalik.eth", + "site": Object { + "id": "clgma7mmh000108jzd13c50ol", + }, + "status": "CREATED", + "updatedAt": "2023-03-24T08:05:13.641Z", + }, + ] + `); + }); +}); diff --git a/src/clients/ens.ts b/src/clients/ens.ts index 833e3e3..57ace45 100644 --- a/src/clients/ens.ts +++ b/src/clients/ens.ts @@ -51,6 +51,7 @@ export class EnsClient { ipnsRecordId: string; }): Promise => { const response = await this.graphqlClient.mutation({ + __name: 'CreateEnsRecord', createEnsRecord: { __args: { where: { @@ -70,6 +71,7 @@ export class EnsClient { public get = async ({ id }: { id: string }): Promise => { const response = await this.graphqlClient.query({ + __name: 'GetEnsRecord', ensRecord: { __args: { where: { @@ -85,6 +87,7 @@ export class EnsClient { public getByName = async ({ name }: { name: string }): Promise => { const response = await this.graphqlClient.query({ + __name: 'GetEnsRecordByName', ensRecordByName: { __args: { where: { @@ -100,6 +103,7 @@ export class EnsClient { public verify = async ({ id }: { id: string }): Promise => { const response = await this.graphqlClient.mutation({ + __name: 'VerifyEnsRecord', verifyEnsRecord: { __args: { where: { @@ -115,6 +119,7 @@ export class EnsClient { public delete = async ({ id }: { id: string }): Promise => { const response = await this.graphqlClient.mutation({ + __name: 'DeleteEnsRecord', deleteEnsRecord: { __args: { where: { @@ -130,6 +135,7 @@ export class EnsClient { public list = async (): Promise => { const response = await this.graphqlClient.query({ + __name: 'GetEnsRecords', ensRecords: { data: { ...EnsClient.ENS_MAPPED_PROPERTIES, @@ -144,6 +150,7 @@ export class EnsClient { ipnsRecordId, }: { ipnsRecordId: string }): Promise => { const response = await this.graphqlClient.query({ + __name: 'GetEnsRecordsByIpnsId', ensRecordsByIpnsId: { __args: { where: { diff --git a/src/clients/functions.test.ts b/src/clients/functions.test.ts new file mode 100644 index 0000000..79329b6 --- /dev/null +++ b/src/clients/functions.test.ts @@ -0,0 +1,163 @@ +import { + describe, + expect, + it, + vi, + afterAll, + afterEach, + beforeAll, +} from 'vitest'; +import { server } from '../mocks/graphql/node'; +import { mockGraphqlServiceApiUrl as graphqlServiceApiUrl } from '../mocks/graphql/handlers'; +import { FleekSdk } from '../FleekSdk'; +import state from '../mocks/state'; + +vi.mock('@fleek-platform/utils-token', async (importOriginal) => { + const original = + await importOriginal(); + + return { + ...original, + createApplicationClientId: vi.fn().mockReturnValue('client_testtesttest'), + }; +}); + +vi.mock('@fleek-platform/utils-text', () => ({ + generateSlug: vi.fn().mockReturnValue('crooked-bland-jackal'), +})); + +describe('FleekSDK', () => { + const sdk = new FleekSdk({ + graphqlServiceApiUrl, + accessTokenService: {} as any, + }); + + beforeAll(() => server.listen()); + afterEach(() => server.resetHandlers()); + afterAll(() => server.close()); + + it('should get function by its name', async (context) => { + const response = await sdk.functions().get({ + name: state.fleekFunctions.fleekFunction.electronicCoEshop.name, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "currentDeployment": Object { + "cid": "bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q", + }, + "currentDeploymentId": "clgmajsoo000108moef7f1yt0", + "id": "clgma7ilu000008jzdlwhb76a", + "invokeUrl": "blue-green-yellow.functions.on-fleek.app", + "name": "electronic-co-shop", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "blue-green-yellow", + "status": "ACTIVE", + } + `); + }); + + it('list functions', async () => { + const response = await sdk.functions().list(); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "currentDeployment": Object { + "cid": "bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri", + }, + "currentDeploymentId": "clmz7kxj60003mk08eg5wmtqh", + "id": "clmkp5nn50000mm08yq7hierx", + "invokeUrl": "red-green-blue.functions.on-fleek.app", + "name": "electronicCoLanding", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "red-green-blue", + "status": "ACTIVE", + }, + Object { + "currentDeployment": null, + "currentDeploymentId": null, + "id": "clgma7mmh000108jzd13c50ol", + "invokeUrl": "white-black-silver.functions.on-fleek.app", + "name": "electronic-co-blog", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "white-black-silver", + "status": "ACTIVE", + }, + Object { + "currentDeployment": null, + "currentDeploymentId": null, + "id": "clje32iwx000008js9rjb5uoo", + "invokeUrl": "green-gold-silver.functions.on-fleek.app", + "name": "electronic-co-videos", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "green-gold-silver", + "status": "ACTIVE", + }, + Object { + "currentDeployment": Object { + "cid": "bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q", + }, + "currentDeploymentId": "clgmajsoo000108moef7f1yt0", + "id": "clgma7ilu000008jzdlwhb76a", + "invokeUrl": "blue-green-yellow.functions.on-fleek.app", + "name": "electronic-co-shop", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "blue-green-yellow", + "status": "ACTIVE", + }, + Object { + "currentDeployment": null, + "currentDeploymentId": null, + "id": "clm93utuz000108laem2a4pe4", + "invokeUrl": "blue-gold-yellow.functions.on-fleek.app", + "name": "electronic-co-deprecated", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "blue-gold-yellow", + "status": "ACTIVE", + }, + ] + `); + }); + + it('should create function', async () => { + const response = await sdk.functions().create({ + name: 'new-function', + }); + + expect(response).toMatchInlineSnapshot( + { id: expect.any(String) }, + ` + Object { + "currentDeployment": null, + "currentDeploymentId": null, + "id": Any, + "invokeUrl": "https://crooked-bland-jackal.dev.on-fleek-functions.app", + "name": "new-function", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "crooked-bland-jackal", + "status": "ACTIVE", + } + `, + ); + }); + + it('should delete function', async () => { + const response = await sdk.functions().delete({ + id: state.fleekFunctions.fleekFunction.electronicCoVideos.id, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "currentDeployment": null, + "currentDeploymentId": null, + "id": "clje32iwx000008js9rjb5uoo", + "invokeUrl": "green-gold-silver.functions.on-fleek.app", + "name": "electronic-co-videos", + "projectId": "clgkiwjd8000c08mefyco2eoo", + "slug": "green-gold-silver", + "status": "ACTIVE", + } + `); + }); +}); diff --git a/src/clients/functions.ts b/src/clients/functions.ts index 6977fd2..1f95bd1 100644 --- a/src/clients/functions.ts +++ b/src/clients/functions.ts @@ -70,6 +70,7 @@ export class FunctionsClient { public get = async ({ name }: GetFleekFunctionArgs) => { const response = await this.graphqlClient.query({ + __name: 'GetFleekFunctionByName', fleekFunctionByName: { __args: { where: { @@ -85,6 +86,7 @@ export class FunctionsClient { public list = async () => { const response = await this.graphqlClient.query({ + __name: 'GetFleekFunctions', fleekFunctions: { __args: {}, data: { @@ -117,6 +119,7 @@ export class FunctionsClient { public create = async ({ name }: CreateFleekFunctionArgs) => { const response = await this.graphqlClient.mutation({ + __name: 'CreateFleekFunction', createFleekFunction: { __args: { data: { @@ -154,6 +157,7 @@ export class FunctionsClient { public delete = async ({ id }: DeleteFleekFunctionArgs) => { const response = await this.graphqlClient.mutation({ + __name: 'DeleteFleekFunction', deleteFleekFunction: { __args: { where: { diff --git a/src/clients/ipfs.test.ts b/src/clients/ipfs.test.ts new file mode 100644 index 0000000..60796b3 --- /dev/null +++ b/src/clients/ipfs.test.ts @@ -0,0 +1,277 @@ +import { + describe, + expect, + it, + afterAll, + afterEach, + beforeAll, + vi, +} from 'vitest'; +import { server } from '../mocks/graphql/node'; +import { mockGraphqlServiceApiUrl as graphqlServiceApiUrl } from '../mocks/graphql/handlers'; +import { FleekSdk } from '../FleekSdk'; + +type MockFileNames = 'HelloWorld' | 'Lyrics'; +type MockFiles = Record< + MockFileNames, + { + path: string; + content: Buffer; + cid: string; + } +>; + +const mockFiles: MockFiles = { + HelloWorld: { + path: 'src/HelloWorld.txt', + content: Buffer.from('Hello World!'), + cid: 'QmWvQxTqbG2Z9HPJgG57jjwR154cKhbtJenbyYTWkjgF3e', + }, + Lyrics: { + path: 'Documents/random/Lyrics.txt', + content: Buffer.from('My favourite song lyrics'), + cid: 'QmQtQq4iofjT8vgD75G3UPF3v4caatuFw3YnU2mhn17BUf', + }, +}; + +const mockUploadContent = vi.fn().mockImplementation(async ({ basename }) => { + if (basename === 'HelloWorld.txt') { + return { + pin: { + cid: mockFiles.HelloWorld.cid, + size: 100, + }, + duplicate: false, + }; + } + + if (basename === 'Lyrics.txt') { + return { + pin: { + cid: mockFiles.HelloWorld.cid, + size: 100, + }, + duplicate: false, + }; + } + + if (basename === 'src') { + return { + pin: { + // TODO: Missing CID + cid: mockFiles.HelloWorld.cid, + size: 10000, + }, + duplicate: false, + }; + } +}); + +vi.mock('./uploadProxy', () => { + return { + UploadProxyClient: vi.fn().mockImplementation(() => ({ + uploadContent: mockUploadContent, + })), + }; +}); + +vi.mock('@web3-storage/upload-client', () => { + return { + UnixFS: { + createFileEncoderStream: vi.fn(), + createDirectoryEncoderStream: vi.fn(), + }, + }; +}); + +vi.mock('files-from-path', () => { + return { + filesFromPaths: vi.fn(), + }; +}); + +vi.mock('fs', async () => { + const actual = await vi.importActual('fs'); + return { + ...actual, + promises: { + ...actual.promises, + stat: vi.fn().mockResolvedValue({ + isDirectory: () => true, + size: 1024, + }), + }, + }; +}); + +describe('FleekSDK', () => { + const sdk = new FleekSdk({ + graphqlServiceApiUrl, + accessTokenService: {} as any, + }); + + beforeAll(() => server.listen()); + afterEach(() => server.resetHandlers()); + afterAll(() => server.close()); + + it('should add file to ipfs', async () => { + const { path, content } = mockFiles.HelloWorld; + + const response = await sdk.ipfs().add({ + path, + content, + }); + + expect(response).toMatchInlineSnapshot(` + Object { + "cid": Object { + "code": 112, + "hash": Uint8Array [ + 18, + 32, + 127, + 131, + 177, + 101, + 127, + 241, + 252, + 83, + 185, + 45, + 193, + 129, + 72, + 161, + 214, + 93, + 252, + 45, + 75, + 31, + 163, + 214, + 119, + 40, + 74, + 221, + 210, + 0, + 18, + 109, + 144, + 105, + ], + "version": 0, + }, + "path": "HelloWorld.txt", + "size": 100, + } + `); + }); + + it('should add all files to ipfs', async () => { + const { HelloWorld, Lyrics } = mockFiles; + + const response = await sdk.ipfs().addAll([HelloWorld, Lyrics]); + + expect(response).toMatchInlineSnapshot(` + Array [ + Object { + "cid": Object { + "code": 112, + "hash": Uint8Array [ + 18, + 32, + 127, + 131, + 177, + 101, + 127, + 241, + 252, + 83, + 185, + 45, + 193, + 129, + 72, + 161, + 214, + 93, + 252, + 45, + 75, + 31, + 163, + 214, + 119, + 40, + 74, + 221, + 210, + 0, + 18, + 109, + 144, + 105, + ], + "version": 0, + }, + "path": "HelloWorld.txt", + "size": 100, + }, + Object { + "cid": Object { + "code": 112, + "hash": Uint8Array [ + 18, + 32, + 127, + 131, + 177, + 101, + 127, + 241, + 252, + 83, + 185, + 45, + 193, + 129, + 72, + 161, + 214, + 93, + 252, + 45, + 75, + 31, + 163, + 214, + 119, + 40, + 74, + 221, + 210, + 0, + 18, + 109, + 144, + 105, + ], + "version": 0, + }, + "path": "Lyrics.txt", + "size": 100, + }, + ] + `); + }); + + it.todo('should add files by path', async () => { + const response = await sdk.ipfs().addFromPath('./src'); + + expect(response).toMatchInlineSnapshot(`{}`); + }); +}); diff --git a/src/mocks/graphql/config.ts b/src/mocks/graphql/config.ts new file mode 100644 index 0000000..9a9f4d7 --- /dev/null +++ b/src/mocks/graphql/config.ts @@ -0,0 +1,4 @@ +import { graphql } from 'msw'; + +export const mockGraphqlServiceApiUrl = 'https://fleek.mock.server/graphql'; +export const localhost = graphql.link(mockGraphqlServiceApiUrl); diff --git a/src/mocks/graphql/handlers/Applications.ts b/src/mocks/graphql/handlers/Applications.ts new file mode 100644 index 0000000..218fe68 --- /dev/null +++ b/src/mocks/graphql/handlers/Applications.ts @@ -0,0 +1,220 @@ +import { graphql as executeGraphql, buildSchema } from 'graphql'; +import { HttpResponse } from 'msw'; + +import { localhost } from '@mocks/graphql/config'; +import { schemaStr } from '@mocks/graphql/schema'; + +const schema = buildSchema(schemaStr); + +const queries = [ + localhost.query('GetApplication', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + application: { + clientId: 'client_SCmayempJ1d953yjn1yx', + createdAt: '2023-03-23T12:05:13.641Z', + id: 'cli2ymypd000208l86gjd6p17', + name: 'electronicCoMobileApp', + updatedAt: '2023-03-23T12:05:13.641Z', + whiteLabelDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'clu2xf6uz000208jv6qskg1hm', + }, + { + hostname: 'app.electronic.co', + id: 'clu2xd1bs000108jv0v0d2xmy', + }, + ], + whitelistDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'cli2z1zim000008l66z4l7qg3', + }, + { + hostname: 'app.electronic.co', + id: 'cli2z10wq000208jw42gd4pyh', + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetApplications', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + applications: { + data: [ + { + clientId: 'client_ZRacrn3b1ForrjK5u8VD', + createdAt: '2023-03-23T11:05:13.641Z', + id: 'cli2ymucu000108l81grqhzcp', + name: 'electronicCoWebApp', + updatedAt: '2023-03-23T11:05:13.641Z', + whiteLabelDomains: [], + whitelistDomains: [], + }, + { + clientId: 'client_SCmayempJ1d953yjn1yx', + createdAt: '2023-03-23T12:05:13.641Z', + id: 'cli2ymypd000208l86gjd6p17', + name: 'electronicCoMobileApp', + updatedAt: '2023-03-23T12:05:13.641Z', + whiteLabelDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'clu2xf6uz000208jv6qskg1hm', + }, + { + hostname: 'app.electronic.co', + id: 'clu2xd1bs000108jv0v0d2xmy', + }, + ], + whitelistDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'cli2z1zim000008l66z4l7qg3', + }, + { + hostname: 'app.electronic.co', + id: 'cli2z10wq000208jw42gd4pyh', + }, + ], + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +const mutations = [ + // TODO: This mandates returning whitelistDomains + // and whiteLabelDomains, while the non-schema version + // does not requires it for some reason. + // Do a test in runtime to check + localhost.mutation('CreateApplication', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + createApplication: { + __typename: 'Application', + clientId: 'client_testtesttest', + createdAt: '2023-03-23T12:05:13.641Z', + id: '', + name: 'test-application', + updatedAt: '2023-03-23T12:05:13.641Z', + whitelistDomains: [], + whiteLabelDomains: [], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('UpdateApplication', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + updateApplication: { + clientId: 'client_SCmayempJ1d953yjn1yx', + createdAt: '2023-03-23T12:05:13.641Z', + id: 'cli2ymypd000208l86gjd6p17', + name: 'new-mobile-app-name', + updatedAt: '2023-03-23T12:05:13.641Z', + whiteLabelDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'clu2xf6uz000208jv6qskg1hm', + }, + { + hostname: 'app.electronic.co', + id: 'clu2xd1bs000108jv0v0d2xmy', + }, + ], + whitelistDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'cli2z1zim000008l66z4l7qg3', + }, + { + hostname: 'app.electronic.co', + id: 'cli2z10wq000208jw42gd4pyh', + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('DeleteApplication', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + deleteApplication: { + clientId: 'client_SCmayempJ1d953yjn1yx', + createdAt: '2023-03-23T12:05:13.641Z', + id: 'cli2ymypd000208l86gjd6p17', + name: 'electronicCoMobileApp', + updatedAt: '2023-03-23T12:05:13.641Z', + whiteLabelDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'clu2xf6uz000208jv6qskg1hm', + }, + { + hostname: 'app.electronic.co', + id: 'clu2xd1bs000108jv0v0d2xmy', + }, + ], + whitelistDomains: [ + { + hostname: 'app.best-electronic.co', + id: 'cli2z1zim000008l66z4l7qg3', + }, + { + hostname: 'app.electronic.co', + id: 'cli2z10wq000208jw42gd4pyh', + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +export const handlers = [...queries, ...mutations]; diff --git a/src/mocks/graphql/handlers/Domains.ts b/src/mocks/graphql/handlers/Domains.ts new file mode 100644 index 0000000..1a048a3 --- /dev/null +++ b/src/mocks/graphql/handlers/Domains.ts @@ -0,0 +1,601 @@ +import { graphql as executeGraphql, buildSchema } from 'graphql'; +import { HttpResponse } from 'msw'; + +import { localhost } from '@mocks/graphql/config'; +import { schemaStr } from '@mocks/graphql/schema'; + +const schema = buildSchema(schemaStr); + +const queries = [ + localhost.query('GetDomains', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + domains: { + data: [ + { + __typename: 'Domain', + createdAt: '2023-03-24T09:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T09:05:13.641Z', + id: 'clgmg76ch000208mid5o30du0', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T09:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T10:05:13.641Z', + id: 'clgmgbj4h000308mi8aai0pli', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T10:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + ], + hostname: 'electronic.co', + id: 'clgmfj1pa000108lc0g5i7d32', + isVerified: true, + status: 'ACTIVE', + updatedAt: '2023-03-24T09:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + { + __typename: 'Domain', + createdAt: '2023-03-24T10:05:13.641Z', + dnsConfigs: [], + hostname: 'eshop-electronic.co', + id: 'clgmfj874000208lc2e9ccglf', + isVerified: false, + status: 'VERIFYING_FAILED', + updatedAt: '2023-03-24T10:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + { + __typename: 'Domain', + createdAt: '2023-03-28T10:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-02-28T10:04:33.641Z', + id: 'cln2226gc000208la1egftrd4', + name: '_dnslink', + type: 'CNAME', + updatedAt: '2023-02-28T10:04:33.641Z', + value: 'blue-green-yellow.dev.on-fleek-test.app', + }, + ], + hostname: 'blog-electornic.co', + id: 'clgnslqvg000108l6hg5ea3u0', + isVerified: false, + status: 'CREATING', + updatedAt: '2023-03-28T10:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgow7wob000508jog5gfanj9', + }, + }, + { + __typename: 'Domain', + createdAt: '2023-03-28T10:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-02-28T10:04:33.641Z', + id: 'ckmhgsu0x011008mney5h0bu', + name: '_dnslink', + type: 'CNAME', + updatedAt: '2023-02-28T10:04:33.641Z', + value: '_dnslink.white-black-silver.dev.on-fleek-test.app', + }, + ], + hostname: 'dnslink-electornic.co', + id: 'clgnslqvg000108l6hg5ea3u1', + isVerified: true, + status: 'ACTIVE', + updatedAt: '2023-03-28T10:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgow7wob000508jog5gfanj9', + }, + }, + { + __typename: 'Domain', + createdAt: '2023-03-24T10:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-02-28T10:04:33.641Z', + id: 'ckmhgsu0x011008mney3h03bu', + name: '_dnslink', + type: 'CNAME', + updatedAt: '2023-02-28T10:04:33.641Z', + value: 'one-knife-yellow.dev.on-fleek-test.app', + }, + ], + hostname: 'static.eshop-electronic.co', + id: 'clmhwwted000108mnajduel68', + isVerified: true, + status: 'ACTIVE', + updatedAt: '2023-03-24T10:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'cljfq6n2y000008lb4oy403bc', + }, + }, + { + __typename: 'Domain', + createdAt: '2023-02-28T10:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-02-28T10:04:33.641Z', + id: 'cln2226gc000208la1egogfn3', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-02-28T10:04:33.641Z', + value: 'cljfqzrcg000208jy6677aqv1.fleekcdn.xyz', + }, + { + __typename: 'DnsConfig', + createdAt: '2023-02-28T10:04:33.641Z', + id: 'cln2226gc000208laurhtg4d5', + name: '_dnslink', + type: 'CNAME', + updatedAt: '2023-02-28T10:04:33.641Z', + value: 'blue-green-yellow.dev.on-fleek-test.app', + }, + ], + hostname: 'documents-electronic.co', + id: 'cln21wwwa000008la7e0kbvd7', + isVerified: false, + status: 'CREATED', + updatedAt: '2023-02-28T10:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'cljfqzrcg000208jy6677aqv1', + }, + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetDomainById', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + domain: { + __typename: 'Domain', + createdAt: '2023-03-24T09:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T09:05:13.641Z', + id: 'clgmg76ch000208mid5o30du0', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T09:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T10:05:13.641Z', + id: 'clgmgbj4h000308mi8aai0pli', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T10:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + ], + hostname: 'electronic.co', + id: 'clgmfj1pa000108lc0g5i7d32', + isVerified: true, + status: 'ACTIVE', + updatedAt: '2023-03-24T09:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetDomainByHostname', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + domainByHostname: { + __typename: 'Domain', + createdAt: '2023-03-24T09:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T09:05:13.641Z', + id: 'clgmg76ch000208mid5o30du0', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T09:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T10:05:13.641Z', + id: 'clgmgbj4h000308mi8aai0pli', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T10:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + ], + hostname: 'electronic.co', + id: 'clgmfj1pa000108lc0g5i7d32', + isVerified: true, + status: 'ACTIVE', + updatedAt: '2023-03-24T09:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetDomainsByZoneId', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + domainsByZoneId: { + data: [ + { + __typename: 'Domain', + createdAt: '2023-03-24T09:05:13.641Z', + dnsConfigs: [ + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T09:05:13.641Z', + id: 'clgmg76ch000208mid5o30du0', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T09:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + { + __typename: 'DnsConfig', + createdAt: '2023-03-23T10:05:13.641Z', + id: 'clgmgbj4h000308mi8aai0pli', + name: 'hostname', + type: 'CNAME', + updatedAt: '2023-03-23T10:05:13.641Z', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + }, + ], + hostname: 'electronic.co', + id: 'clgmfj1pa000108lc0g5i7d32', + isVerified: true, + status: 'ACTIVE', + updatedAt: '2023-03-24T09:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + { + __typename: 'Domain', + createdAt: '2023-03-24T10:05:13.641Z', + dnsConfigs: [], + hostname: 'eshop-electronic.co', + id: 'clgmfj874000208lc2e9ccglf', + isVerified: false, + status: 'VERIFYING_FAILED', + updatedAt: '2023-03-24T10:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('ListZones', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + zones: { + data: [ + { + __typename: 'Zone', + createdAt: '2022-12-24T09:04:13.641Z', + id: 'clgmfj874000208lc2e9ccglf', + originUrl: + 'https://ipfs.io/ipfs/QmXYsy8xLYRaDbgDNeSthWSNneKM13Vb1FHV8LC4DghHy2', + status: 'CREATED', + type: 'SITE', + updatedAt: '2022-12-24T09:04:13.641Z', + }, + { + __typename: 'Zone', + createdAt: '2022-12-28T10:04:13.641Z', + id: 'clgow7wob000508jog5gfanj9', + originUrl: + 'https://bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q.ipfs.gateway-ipfs.fleeksandbox.xyz', + status: 'CREATED', + type: 'SITE', + updatedAt: '2022-12-28T10:04:13.641Z', + }, + { + __typename: 'Zone', + createdAt: '2022-04-25T09:04:13.641Z', + id: 'clj76kw6i000008l2ekmz6ahd', + originUrl: + 'https://bafybeib5qbrx6xdrdvuxt2wsvfsrwwvu42bfh6pycm677qjkl66heelc2e.ipfs.gateway-ipfs.fleeksandbox.xyz', + status: 'CREATED', + type: 'PRIVATE_GATEWAY', + updatedAt: '2022-04-25T10:04:13.641Z', + }, + { + __typename: 'Zone', + createdAt: '2022-12-30T11:04:13.641Z', + id: 'clje357cc000108jse08c2t6m', + originUrl: + 'https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342', + status: 'CREATING_FAILED', + type: 'SITE', + updatedAt: '2022-12-30T11:04:13.641Z', + }, + { + __typename: 'Zone', + createdAt: '2022-12-24T09:04:13.641Z', + id: 'cljfq6n2y000008lb4oy403bc', + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + status: 'CREATED', + type: 'PRIVATE_GATEWAY', + updatedAt: '2022-12-24T09:04:13.641Z', + }, + { + __typename: 'Zone', + createdAt: '2023-02-28T10:04:13.641Z', + id: 'cljfqzrcg000208jy6677aqv1', + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + status: 'CREATED', + type: 'PRIVATE_GATEWAY', + updatedAt: '2023-02-28T10:04:13.641Z', + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetZone', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + zone: { + __typename: 'Zone', + createdAt: '2022-12-24T09:04:13.641Z', + id: 'clgmfj874000208lc2e9ccglf', + originUrl: + 'https://ipfs.io/ipfs/QmXYsy8xLYRaDbgDNeSthWSNneKM13Vb1FHV8LC4DghHy2', + status: 'CREATED', + type: 'SITE', + updatedAt: '2022-12-24T09:04:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +const mutations = [ + localhost.mutation('CreateDomain', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + createDomain: { + __typename: 'Domain', + createdAt: '2023-03-23T12:05:13.641Z', + dnslinkStatus: null, + errorMessage: null, + hostname: 'super-eshop.xyz', + id: 'cli2ymypd000208l86gjd6p17', + isVerified: false, + status: 'CREATING', + updatedAt: '2023-03-23T12:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('DeleteDomain', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + deleteDomain: { + __typename: 'Domain', + createdAt: '2023-03-24T10:05:13.641Z', + dnsConfigs: [], + hostname: 'eshop-electronic.co', + id: 'clgmfj874000208lc2e9ccglf', + isVerified: false, + status: 'DELETING', + updatedAt: '2023-03-23T12:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('VerifyDomain', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + verifyDomain: { + __typename: 'Domain', + createdAt: '2023-03-24T10:05:13.641Z', + dnsConfigs: [], + hostname: 'eshop-electronic.co', + id: 'clgmfj874000208lc2e9ccglf', + isVerified: false, + status: 'VERIFYING', + updatedAt: '2023-03-23T12:05:13.641Z', + zone: { + __typename: 'Zone', + id: 'clgmfj874000208lc2e9ccglf', + }, + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('CreateZoneForSite', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + createZoneForSite: { + __typename: 'Zone', + createdAt: '2023-03-23T12:05:13.641Z', + id: 'clgmg76ch000208mid5o30du0', + originUrl: + 'https://bafybeibtme5hmkjxsryerf6pihhfbhifwnsz7gmhnfqglg2r326m4glzva.ipfs.gateway-ipfs.fleeksandbox.xyz', + originUrlChangedAt: null, + status: 'CREATING', + type: 'SITE', + updatedAt: '2023-03-23T12:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation( + 'CreateZoneForPrivateGateway', + async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + createZoneForPrivateGateway: { + __typename: 'Zone', + createdAt: '2023-03-23T12:05:13.641Z', + + id: 'clgmg76ch000208mid5o30du0', + originUrl: 'https://storage.dev.on-fleek-test.app', + status: 'CREATING', + type: 'PRIVATE_GATEWAY', + updatedAt: '2023-03-23T12:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }, + ), + localhost.mutation('DeleteZone', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + deleteZone: { + __typename: 'Zone', + createdAt: '2022-12-30T11:04:13.641Z', + id: 'clje357cc000108jse08c2t6m', + originUrl: + 'https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342', + status: 'DELETING', + type: 'SITE', + updatedAt: '2023-03-23T12:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +export const handlers = [...queries, ...mutations]; diff --git a/src/mocks/graphql/handlers/ENS.ts b/src/mocks/graphql/handlers/ENS.ts new file mode 100644 index 0000000..adbb1d4 --- /dev/null +++ b/src/mocks/graphql/handlers/ENS.ts @@ -0,0 +1,271 @@ +import { graphql as executeGraphql, buildSchema } from 'graphql'; +import { HttpResponse } from 'msw'; + +import { localhost } from '@mocks/graphql/config'; +import { schemaStr } from '@mocks/graphql/schema'; + +const schema = buildSchema(schemaStr); + +const queries = [ + localhost.query('GetEnsRecord', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + ensRecord: { + createdAt: '2023-03-24T08:05:13.641Z', + id: 'af470cc1-08d8-4d39-be6f-b0eebc0a6480', + ipnsRecord: { + hash: 'QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy', + id: 'clgkj9pfa000308meh73d8nff', + name: 'k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci', + }, + name: 'ens.eth', + site: { + id: 'clgove94b000208mlhq685zgh', + }, + status: 'ACTIVE', + updatedAt: '2023-03-24T08:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetEnsRecordByName', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + ensRecordByName: { + createdAt: '2023-03-24T08:05:13.641Z', + id: 'af470cc1-08d8-4d39-be6f-b0eebc0a6480', + ipnsRecord: { + hash: 'QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy', + id: 'clgkj9pfa000308meh73d8nff', + name: 'k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci', + }, + name: 'ens.eth', + site: { + id: 'clgove94b000208mlhq685zgh', + }, + status: 'ACTIVE', + updatedAt: '2023-03-24T08:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetEnsRecords', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + ensRecords: { + data: [ + { + createdAt: '2023-03-24T08:05:13.641Z', + id: '40767ba9-eb85-439b-9369-489459a9376b', + ipnsRecord: { + hash: 'QmX7WyiLtbvmfbUzN2eJuvmDuGZSDjavuauwaJL4bFC5SJ', + id: 'clgkj9ipf000208me9yzre1cn', + name: 'k51qzi5uqu5dh2c8ec00yowiapopchxdvnwh6iy2xoxc51inldruqh4yvzgez5', + }, + name: 'vitalik.eth', + site: { + id: 'clgma7mmh000108jzd13c50ol', + }, + status: 'CREATED', + updatedAt: '2023-03-24T08:05:13.641Z', + }, + { + createdAt: '2023-03-25T08:05:13.641Z', + id: '8d3ad502-ec4d-489e-858e-d112656f3511', + ipnsRecord: { + hash: 'QmcvfRw5WDutRzvRNq2matcJWW2nKWFGDbqxaaTxnWksME', + id: 'clgkj995t000108med7gb2w4v', + name: 'k51qzi5uqu5dhrupvn0ru1c6el43rhimh95cuiwqy0ofo8bgomvq296b49v9r7', + }, + name: 'dries.eth', + site: { + id: 'clgma7ilu000008jzdlwhb76a', + }, + status: 'VERIFYING', + updatedAt: '2023-03-25T08:05:13.641Z', + }, + { + createdAt: '2023-03-24T08:05:13.641Z', + id: 'af470cc1-08d8-4d39-be6f-b0eebc0a6480', + ipnsRecord: { + hash: 'QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy', + id: 'clgkj9pfa000308meh73d8nff', + name: 'k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci', + }, + name: 'ens.eth', + site: { + id: 'clgove94b000208mlhq685zgh', + }, + status: 'ACTIVE', + updatedAt: '2023-03-24T08:05:13.641Z', + }, + { + createdAt: '2023-03-26T08:05:13.641Z', + id: 'clm0mhccs000108ma34jn6ed3', + ipnsRecord: { + hash: 'QmcvfRw5WDutRzvRNq2matcJWW2nKWFGDbqxaaTxnWksME', + id: 'clgkj995t000108med7gb2w4v', + name: 'k51qzi5uqu5dhrupvn0ru1c6el43rhimh95cuiwqy0ofo8bgomvq296b49v9r7', + }, + name: 'smarttv.eth', + site: { + id: 'clgma7ilu000008jzdlwhb76a', + }, + status: 'ACTIVE', + updatedAt: '2023-03-26T08:05:13.641Z', + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetEnsRecordsByIpnsId', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + ensRecordsByIpnsId: { + data: [ + { + createdAt: '2023-03-24T08:05:13.641Z', + id: '40767ba9-eb85-439b-9369-489459a9376b', + ipnsRecord: { + hash: 'QmX7WyiLtbvmfbUzN2eJuvmDuGZSDjavuauwaJL4bFC5SJ', + id: 'clgkj9ipf000208me9yzre1cn', + name: 'k51qzi5uqu5dh2c8ec00yowiapopchxdvnwh6iy2xoxc51inldruqh4yvzgez5', + }, + name: 'vitalik.eth', + site: { + id: 'clgma7mmh000108jzd13c50ol', + }, + status: 'CREATED', + updatedAt: '2023-03-24T08:05:13.641Z', + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +const mutations = [ + localhost.mutation('CreateEnsRecord', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + createEnsRecord: { + createdAt: '2023-03-24T09:05:13.641Z', + id: 'clgmg76ch000208mid5o30du0', + ipnsRecord: { + hash: 'QmcvfRw5WDutRzvRNq2matcJWW2nKWFGDbqxaaTxnWksME', + id: 'clgkj995t000108med7gb2w4v', + name: 'k51qzi5uqu5dhrupvn0ru1c6el43rhimh95cuiwqy0ofo8bgomvq296b49v9r7', + }, + name: 'test.eth', + site: { + id: 'clgma7ilu000008jzdlwhb76a', + }, + status: 'CREATED', + updatedAt: '2023-03-24T09:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('VerifyEnsRecord', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + verifyEnsRecord: { + createdAt: '2023-03-24T08:05:13.641Z', + id: '40767ba9-eb85-439b-9369-489459a9376b', + ipnsRecord: { + hash: 'QmX7WyiLtbvmfbUzN2eJuvmDuGZSDjavuauwaJL4bFC5SJ', + id: 'clgkj9ipf000208me9yzre1cn', + name: 'k51qzi5uqu5dh2c8ec00yowiapopchxdvnwh6iy2xoxc51inldruqh4yvzgez5', + }, + name: 'vitalik.eth', + site: { + id: 'clgma7mmh000108jzd13c50ol', + }, + status: 'VERIFYING', + updatedAt: '2023-03-24T08:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('DeleteEnsRecord', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + deleteEnsRecord: { + createdAt: '2023-03-24T08:05:13.641Z', + id: 'af470cc1-08d8-4d39-be6f-b0eebc0a6480', + ipnsRecord: { + hash: 'QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy', + id: 'clgkj9pfa000308meh73d8nff', + name: 'k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci', + }, + name: 'ens.eth', + site: { + id: 'clgove94b000208mlhq685zgh', + }, + status: 'ACTIVE', + updatedAt: '2023-03-24T08:05:13.641Z', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +export const handlers = [...queries, ...mutations]; diff --git a/src/mocks/graphql/handlers/FleekSdk.ts b/src/mocks/graphql/handlers/FleekSdk.ts new file mode 100644 index 0000000..a17cd2f --- /dev/null +++ b/src/mocks/graphql/handlers/FleekSdk.ts @@ -0,0 +1,30 @@ +import { graphql as executeGraphql, buildSchema } from 'graphql'; +import { HttpResponse } from 'msw'; + +import { localhost } from '@mocks/graphql/config'; +import { schemaStr } from '@mocks/graphql/schema'; +import { commitHash } from '@mocks/state'; + +const schema = buildSchema(schemaStr); + +const queries = [ + localhost.query('GetVersion', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + version: { + commitHash, + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +export const handlers = [...queries]; diff --git a/src/mocks/graphql/handlers/Functions.ts b/src/mocks/graphql/handlers/Functions.ts new file mode 100644 index 0000000..2531cbb --- /dev/null +++ b/src/mocks/graphql/handlers/Functions.ts @@ -0,0 +1,161 @@ +import { graphql as executeGraphql, buildSchema } from 'graphql'; +import { HttpResponse } from 'msw'; + +import { localhost } from '@mocks/graphql/config'; +import { schemaStr } from '@mocks/graphql/schema'; + +const schema = buildSchema(schemaStr); + +const queries = [ + localhost.query('GetFleekFunctionByName', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + fleekFunctionByName: { + currentDeployment: { + cid: 'bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q', + }, + currentDeploymentId: 'clgmajsoo000108moef7f1yt0', + id: 'clgma7ilu000008jzdlwhb76a', + invokeUrl: 'blue-green-yellow.functions.on-fleek.app', + name: 'electronic-co-shop', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'blue-green-yellow', + status: 'ACTIVE', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.query('GetFleekFunctions', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + fleekFunctions: { + data: [ + { + currentDeployment: { + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + }, + currentDeploymentId: 'clmz7kxj60003mk08eg5wmtqh', + id: 'clmkp5nn50000mm08yq7hierx', + invokeUrl: 'red-green-blue.functions.on-fleek.app', + name: 'electronicCoLanding', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'red-green-blue', + status: 'ACTIVE', + }, + { + currentDeployment: null, + currentDeploymentId: null, + id: 'clgma7mmh000108jzd13c50ol', + invokeUrl: 'white-black-silver.functions.on-fleek.app', + name: 'electronic-co-blog', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'white-black-silver', + status: 'ACTIVE', + }, + { + currentDeployment: null, + currentDeploymentId: null, + id: 'clje32iwx000008js9rjb5uoo', + invokeUrl: 'green-gold-silver.functions.on-fleek.app', + name: 'electronic-co-videos', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'green-gold-silver', + status: 'ACTIVE', + }, + { + currentDeployment: { + cid: 'bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q', + }, + currentDeploymentId: 'clgmajsoo000108moef7f1yt0', + id: 'clgma7ilu000008jzdlwhb76a', + invokeUrl: 'blue-green-yellow.functions.on-fleek.app', + name: 'electronic-co-shop', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'blue-green-yellow', + status: 'ACTIVE', + }, + { + currentDeployment: null, + currentDeploymentId: null, + id: 'clm93utuz000108laem2a4pe4', + invokeUrl: 'blue-gold-yellow.functions.on-fleek.app', + name: 'electronic-co-deprecated', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'blue-gold-yellow', + status: 'ACTIVE', + }, + ], + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +const mutations = [ + localhost.mutation('CreateFleekFunction', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + createFleekFunction: { + currentDeployment: null, + currentDeploymentId: null, + id: 'clgmg76ch000208mid5o30du0', + invokeUrl: 'https://crooked-bland-jackal.dev.on-fleek-functions.app', + name: 'new-function', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'crooked-bland-jackal', + status: 'ACTIVE', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), + localhost.mutation('DeleteFleekFunction', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: { + deleteFleekFunction: { + currentDeployment: null, + currentDeploymentId: null, + id: 'clje32iwx000008js9rjb5uoo', + invokeUrl: 'green-gold-silver.functions.on-fleek.app', + name: 'electronic-co-videos', + projectId: 'clgkiwjd8000c08mefyco2eoo', + slug: 'green-gold-silver', + status: 'ACTIVE', + }, + }, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +export const handlers = [...queries, ...mutations]; diff --git a/src/mocks/graphql/handlers/IPFS.ts b/src/mocks/graphql/handlers/IPFS.ts new file mode 100644 index 0000000..1cc415d --- /dev/null +++ b/src/mocks/graphql/handlers/IPFS.ts @@ -0,0 +1,25 @@ +import { graphql as executeGraphql, buildSchema } from 'graphql'; +import { HttpResponse } from 'msw'; + +import { localhost } from '@mocks/graphql/config'; +import { schemaStr } from '@mocks/graphql/schema'; + +const schema = buildSchema(schemaStr); + +const queries = [ + localhost.query('GetVersion', async ({ query, variables }) => { + const res = await executeGraphql({ + schema, + source: query, + variableValues: variables, + rootValue: {}, + }); + + return HttpResponse.json({ + data: res.data, + errors: res.errors, + }); + }), +]; + +export const handlers = [...queries]; diff --git a/src/mocks/graphql/handlers/index.ts b/src/mocks/graphql/handlers/index.ts new file mode 100644 index 0000000..0980345 --- /dev/null +++ b/src/mocks/graphql/handlers/index.ts @@ -0,0 +1,17 @@ +import { graphql } from 'msw'; +import { handlers as FleekSdkHandlers } from './FleekSdk'; +import { handlers as ApplicationHandlers } from './Applications'; +import { handlers as DomainsHandlers } from './Domains'; +import { handlers as EnsHandlers } from './ENS'; +import { handlers as FunctionsHandlers } from './Functions'; + +export const mockGraphqlServiceApiUrl = 'https://fleek.mock.server/graphql'; +export const localhost = graphql.link(mockGraphqlServiceApiUrl); + +export const handlers = [ + ...FleekSdkHandlers, + ...ApplicationHandlers, + ...DomainsHandlers, + ...EnsHandlers, + ...FunctionsHandlers, +]; diff --git a/src/mocks/graphql/node.ts b/src/mocks/graphql/node.ts new file mode 100644 index 0000000..e52fee0 --- /dev/null +++ b/src/mocks/graphql/node.ts @@ -0,0 +1,4 @@ +import { setupServer } from 'msw/node'; +import { handlers } from './handlers'; + +export const server = setupServer(...handlers); diff --git a/src/mocks/graphql/schema/index.ts b/src/mocks/graphql/schema/index.ts new file mode 100644 index 0000000..3e4bcaa --- /dev/null +++ b/src/mocks/graphql/schema/index.ts @@ -0,0 +1,13 @@ +import { readFileSync } from 'fs'; +import { join } from 'path'; + +export const schemaStr = readFileSync( + join( + __dirname, + '../../../../', + 'node_modules', + '@fleek-platform/utils-genql-client', + 'schema.graphql', + ), + 'utf-8', +).toString(); diff --git a/src/mocks/state/index.ts b/src/mocks/state/index.ts new file mode 100644 index 0000000..654624c --- /dev/null +++ b/src/mocks/state/index.ts @@ -0,0 +1,2934 @@ +// TODO: Make a reusable package +// as the data's originally from the monorepo +import { DateTime } from 'luxon'; + +const PlanStatus = { + ACTIVE: 'ACTIVE', + DRAFT: 'DRAFT', + DEPRECATED: 'DEPRECATED', +}; + +const plan = { + christmas: { + id: 'clgkisla0000108mefl1l4ahh', + name: 'christmas', + internalName: 'christmas_deprecated', + status: PlanStatus.DEPRECATED, + public: true, + serviceFeePercentage: 2.5, + validFrom: DateTime.fromISO('2022-12-23').toJSDate(), + validTo: DateTime.fromISO('2022-12-24').toJSDate(), + createdAt: DateTime.fromISO('2022-12-23T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2022-12-23T08:05:13.641Z').toJSDate(), + }, + basic: { + id: 'clgkitoi1000208meeu4h0u1o', + name: 'basic', + internalName: 'internal_basic', + status: PlanStatus.ACTIVE, + public: true, + serviceFeePercentage: 3.555, + validFrom: DateTime.fromISO('2023-03-24').toJSDate(), + validTo: DateTime.fromISO('2023-03-27').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + }, + vipPrivate: { + id: 'clgkiu24g000308me1owkf9wn', + name: 'vip', + internalName: 'internal_vip_private', + status: PlanStatus.ACTIVE, + public: false, + serviceFeePercentage: 2.023, + validFrom: DateTime.fromISO('2023-03-24').toJSDate(), + validTo: DateTime.fromISO('2023-03-27').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + }, + premium: { + id: 'clgkiu962000408me31edakjn', + name: 'premium', + internalName: 'internal_premium_draft', + status: PlanStatus.DRAFT, + public: true, + serviceFeePercentage: 3.029, + validFrom: DateTime.fromISO('2023-03-24').toJSDate(), + validTo: DateTime.fromISO('2023-03-27').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T10:05:13.641Z').toJSDate(), + }, + campaign: { + id: 'clgkiufzy000508me17al96u6', + name: 'campaign', + internalName: 'internal_campaign_future', + status: PlanStatus.ACTIVE, + public: true, + serviceFeePercentage: 3.333, + validFrom: DateTime.fromISO('2023-03-29').toJSDate(), + validTo: DateTime.fromISO('2023-03-31').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T11:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T11:05:13.641Z').toJSDate(), + }, +}; + +const billingPlans = { + free: { + id: 'clgkisla0000108mefl1l4ahh', + name: 'Free', + version: 1, + isActive: true, + price: 0.0, + billingPartnerId: null, + disabledAt: null, + planLevel: 'FREE', + isPublicPlan: true, + description: 'Free plan, no credit card required', + createdAt: DateTime.fromISO('2024-03-11T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-03-11T08:05:13.641Z').toJSDate(), + }, +}; + +const billing = { + plan, + billingPlans, +}; + +const project = { + vegetableCo: { + id: 'clgkivku7000a08me9coi0civ', + name: 'vegetableCo', + planId: billing.plan.basic.id, + billingPlanId: billing.billingPlans.free.id, + avatarCid: '3b893b0517bda6895a160fa9a0cba76da382859d', + createdAt: DateTime.fromISO('2023-03-20T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T08:05:13.641Z').toJSDate(), + backupStorageOnArweave: false, + backupStorageOnFilecoin: false, + allowAccessFromOfacCountries: true, + status: 'CREATED', + deletedAt: null, + }, + vegetableLtd: { + id: 'clmjalnal000008l343fz7ips', + name: 'vegetableLtd', + avatarCid: null, + planId: null, + billingPlanId: billing.billingPlans.free.id, + createdAt: DateTime.fromISO('2023-02-23T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T08:05:13.641Z').toJSDate(), + backupStorageOnArweave: false, + backupStorageOnFilecoin: false, + allowAccessFromOfacCountries: true, + status: 'DELETING', + deletedAt: DateTime.fromISO('2023-03-20T08:05:13.641Z').toJSDate(), + }, + electronicCo: { + id: 'clgkiwjd8000c08mefyco2eoo', + name: 'electronicCo', + avatarCid: null, + planId: billing.plan.basic.id, + billingPlanId: billing.billingPlans.free.id, + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + backupStorageOnArweave: false, + backupStorageOnFilecoin: false, + allowAccessFromOfacCountries: true, + status: 'CREATED', + deletedAt: null, + }, + electronicLtd: { + id: 'clgukvjww000108kw2h8n09nx', + name: 'electronicLtd', + avatarCid: null, + planId: billing.plan.basic.id, + billingPlanId: billing.billingPlans.free.id, + createdAt: DateTime.fromISO('2023-03-30T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-30T08:05:13.641Z').toJSDate(), + backupStorageOnArweave: false, + backupStorageOnFilecoin: false, + allowAccessFromOfacCountries: true, + status: 'CREATED', + deletedAt: null, + }, + butcherCo: { + id: 'clmynnltk0000ma08i44ie984', + name: 'butcherCo', + avatarCid: null, + planId: billing.plan.basic.id, + billingPlanId: billing.billingPlans.free.id, + createdAt: DateTime.fromISO('2023-03-30T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-30T08:05:13.641Z').toJSDate(), + backupStorageOnArweave: false, + backupStorageOnFilecoin: false, + allowAccessFromOfacCountries: true, + status: 'CREATED', + deletedAt: null, + }, + dreamTeam: { + id: 'clt5ter6y000008jxd9lp8vez', + name: 'dreamTeam', + avatarCid: null, + planId: billing.plan.basic.id, + billingPlanId: billing.billingPlans.free.id, + createdAt: DateTime.fromISO('2024-01-04T12:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-01-04T12:05:13.641Z').toJSDate(), + backupStorageOnArweave: false, + backupStorageOnFilecoin: false, + allowAccessFromOfacCountries: true, + status: 'CREATED', + deletedAt: null, + }, +}; + +export const application = { + electronicCoWebApp: { + id: 'cli2ymucu000108l81grqhzcp', + name: 'electronicCoWebApp', + clientId: 'client_ZRacrn3b1ForrjK5u8VD', + projectId: project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-23T11:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T11:05:13.641Z').toJSDate(), + }, + electronicCoMobileApp: { + id: 'cli2ymypd000208l86gjd6p17', + name: 'electronicCoMobileApp', + clientId: 'client_SCmayempJ1d953yjn1yx', + projectId: project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-23T12:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T12:05:13.641Z').toJSDate(), + }, +}; + +type UserStatus = 'CREATED' | 'DELETING' | 'DELETING_FAILED'; + +const UserStatus: Record = { + CREATED: 'CREATED', + DELETING: 'DELETING', + DELETING_FAILED: 'DELETING_FAILED', +}; + +const user = { + josh: { + id: 'clgkiuonz000608meg4ni4cam', + email: 'josh@josh.com', + _socialIdToken: + 'ca1239a6a6c8b89425e00c569a425b5a00d11754064c524eb30b1aa726791af7', + _dynamicAuthToken: + 'eyJraWQiOW50aWFscyI6W3siYWRkcmVzcyI6IjWlwMTU1IiwiaWQiOiJhNWI2MWVkYS1hNTU0LTQ1NTMtODJhNy0wNzU3ODc', + avatarCid: '3b893b0517bda6895a160', + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + dynamicUserId: null, + firstName: 'Josh', + lastName: 'Doe', + username: 'josh_doe', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, + jack: { + id: 'clgkiuwr2000708meev7sdqso', + email: 'jack@jack.com', + _socialIdToken: + '57cc3531aaa0f300c2bff14a2ed470426e0605bbe7a79672fdc0829d3d556c2e', + _dynamicAuthToken: + 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImY2NzNiNzAzLWE5NmEtNDdmNi1iODczLWYwYjFlYTk2N2E0OSJ9', + avatarCid: null, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + dynamicUserId: null, + firstName: 'Jack', + lastName: 'Doe', + username: 'jack_doe', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, + james: { + id: 'clgkiv5en000808me3yu1aeow', + email: 'james@james.com', + _socialIdToken: + '4f979c03a02be1ca07d9c8677de498fe849ed579054dc6e7e04a0c3b9d11978a', + _dynamicAuthToken: + 'b3N0OjMwMDAiLCJpc3MiOiJhcHAuZHluYW1pYy54eXovOGQ3YTU0NmItOTY2YS00YWFlLWE1YjktYjJlMjE3MzY3YWQwIiwic', + avatarCid: null, + createdAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + dynamicUserId: 'test', + firstName: 'James', + lastName: 'Doe', + username: 'james_doe', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, + john: { + id: 'clgkivcqt000908medwhl9mgb', + email: 'john@john.com', + _socialIdToken: + '0eb0f6d7ce6278c74d0770ad890de19eb3cac2ac4f574b3e0130f7255a3ee9d5', + _dynamicAuthToken: + '3ViIjoiYjY3N2MxZTctOWRmYi00NTU3LTk4ZmYtMjE2MGM1ZDdjMWVjIiwic2lkIjoiMTJhMjQ5YjgtZWE5OS00ZjUwLWE5ZD', + avatarCid: null, + createdAt: DateTime.fromISO('2023-03-26T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-26T08:05:13.641Z').toJSDate(), + dynamicUserId: null, + firstName: 'John', + lastName: 'Doe', + username: 'john_doe', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, + billy: { + id: 'clgkivf6h000a08me0q0q0q0q', + email: 'billy@butcher.co', + _socialIdToken: '', + _dynamicAuthToken: '', + avatarCid: null, + createdAt: DateTime.fromISO('2023-03-27T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T08:05:13.641Z').toJSDate(), + dynamicUserId: '186f635d-82c3-47ff-afbc-33fe86265167', + firstName: 'Billy', + lastName: 'Butcher', + username: 'billy_butcher', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, + joe: { + id: 'cltr2a4y9000008ikdxl6awwj', + email: 'joe@kent.xyz', + _socialIdToken: '', + _dynamicAuthToken: '', + avatarCid: null, + createdAt: DateTime.fromISO('2023-09-27T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-09-27T08:05:13.641Z').toJSDate(), + dynamicUserId: '186f635d-82c3-47ff-afbc-33fe86265168', + firstName: 'Joe', + lastName: 'Kent', + username: 'joe_kent', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, + chuck: { + id: 'cltsndkdw000108js1kpyc8lp', + email: 'chuck@norris.com', + _socialIdToken: '', + _dynamicAuthToken: '', + avatarCid: null, + createdAt: DateTime.fromISO('2023-09-27T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-09-27T08:05:13.641Z').toJSDate(), + dynamicUserId: '186f635d-82c3-47ff-afbc-33fe86265169', + firstName: 'Chuck', + lastName: 'Norris', + username: 'chuck_norris', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, + steve: { + id: 'clud232ee000008jofrnshpt4', + email: 'steve@steve.co', + _socialIdToken: '', + _dynamicAuthToken: '', + avatarCid: null, + createdAt: DateTime.fromISO('2024-03-27T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-03-27T08:05:13.641Z').toJSDate(), + dynamicUserId: '057c7009-8a52-4e88-9330-8462aaedecf7B', + firstName: 'Steve', + lastName: 'Smith', + username: 'test_batter', + walletAddress: null, + walletChain: null, + status: UserStatus.CREATED, + deletedAt: null, + }, +}; + +export const auth = { + project, + application, + user, +}; + +export const commitHash = '0fabad88415cedb2c3c21548afa14a949a088954'; + +type ZoneStatus = + | 'CREATING' + | 'CREATING_FAILED' + | 'CREATED' + | 'DELETING' + | 'DELETING_FAILED'; + +const ZoneStatus: Record = { + CREATING: 'CREATING', + CREATING_FAILED: 'CREATING_FAILED', + CREATED: 'CREATED', + DELETING: 'DELETING', + DELETING_FAILED: 'DELETING_FAILED', +}; + +type ZoneProvider = 'BUNNY_CDN' | 'FLEEK_CDN'; + +const ZoneProvider: Record = { + BUNNY_CDN: 'BUNNY_CDN', + FLEEK_CDN: 'FLEEK_CDN', +}; + +type ZoneType = 'SITE' | 'PRIVATE_GATEWAY'; + +const ZoneType: Record = { + SITE: 'SITE', + PRIVATE_GATEWAY: 'PRIVATE_GATEWAY', +}; + +const secretGroup = { + electronicCoDatabase: { + id: 'cll3s7yvp000008kz13emcbr0', + kmsKeyId: 'cll3s83gg000108kzhve3emcn', + name: 'database', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, + electronicCoAWS: { + id: 'clo7ijbpb000308l5eihwfypw', + kmsKeyId: 'clo7ilpp0000608l5c6955fom', + name: 'aws', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, + vegetableCoDatabase: { + id: 'clo7iq6xz000708l541z2b47p', + kmsKeyId: 'clo7iqdbn000808l5fe3ke39q', + name: 'aws', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, + vegetableCoAWS: { + id: 'clo7iffw9000208l59z9kb8ag', + kmsKeyId: 'clo7ileqz000508l5euw13kz9', + name: 'aws', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, +}; + +export const secret = { + electronicCoDatabaseToken: { + id: 'cll3sntnw000208l38pcx2omt', + key: 'token', + value: '98908788affccff00', + groupId: secretGroup.electronicCoDatabase.id, + visibility: 'PUBLIC', + createdAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, + electronicCoDatabaseUsername: { + id: 'clo7isag5000908l5f2ha7nm4', + key: 'username', + value: 'postgres', + groupId: secretGroup.electronicCoDatabase.id, + visibility: 'PUBLIC', + createdAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, + electronicCoDatabasePassword: { + id: 'cll3uxhbg000008mi5y7kac4d', + key: 'password', + value: + 'ZZ3p6RzmCi9UpJyYmKXbtvTV2ewH9tIaezkiSEUvT1fURNx8RbvTNEvbS74j2MWeBgXJcdz1QEvfj4OoAbiJe/drqchkXgD3hkEfMagDq4g/TY32KX6lzbY1kPRdCFGSEWMYNoFajeI3hBXCEXtXFUYabMkKULM2+Xy9XO9tUiGv45gvLw8Bt/2gNrq8u49u+z8F7f/+Mwcbm1L1/0iKgsqnLk0cUhvlXs7XpX4ytkuag0T8tHzSWd2JRD8aKxr2BCrJnHbka33O83VXyZX/ewRSjAoZyk0NpxTTg39PxN42PkQH7pzzBpLD3NRq9sJ94dafK6Rw11pN9NXsGC0UnPb0bIwyUJApnaCKxBE8fFzZvNuz7ATRg+LpB080DidM3uwgmQdLgtUjysVuG/xQL0JRsbvtX10mujH0X1D97PP5Bxr5efgRpypKuabMlMNzTj0TlW74RmeQdTT9sXFTrOcBchMkIFLxsM4GsbdMMUmkPSlZiEoxgr+tkSwQhvt9hndX/qk/cgJMoA4fdqMGnC3O6oKO56XJu4X988XAAqqAqGi2FuHTYTt3kuMGVSfVoFtm6fVImhwa9VnLOdycJ9aXsLpzMejWP8s8n6N4uBTBbe7DJdGa/MgEIHm+TDwEyeGx7MzrGjIGdkBEefDLkNYdwCR86PQ8QP/sx9ja/d8=', + groupId: secretGroup.electronicCoDatabase.id, + visibility: 'ENCRYPTED', + createdAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, + electronicCoAWSAccessKey: { + id: 'clo7iudhn000a08l542jl74xs', + key: 'ACCESS_KEY', + value: 'common-man-just-simple-access-key', + groupId: secretGroup.electronicCoAWS.id, + visibility: 'PUBLIC', + createdAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, + vegetableCoDatabaseUsername: { + id: 'clo7joag3000008mm280n8rn3', + key: 'RDS_USERNAME', + value: 'root', + groupId: secretGroup.vegetableCoDatabase.id, + visibility: 'PUBLIC', + createdAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-27T10:05:13.641Z').toJSDate(), + }, +}; + +const SiteFrameworkRecognitionStrategy: Record = { + NODEJS: 'NODEJS', + FILES: 'FILES', +}; + +const framework = { + gatsby: { + id: 'cldach9r10000l508g2sqo3c2', + name: 'Gatsby', + slug: 'gatsby', + avatarCid: 'bafybeiep77fqswsdkufgq5odzybs6ptmf2fmlcotwx4nhvssatflqd5sza', + buildScript: ' && build', + publishDirectory: 'public', + dockerImage: 'fleek/node:lts', + recognitionStrategy: SiteFrameworkRecognitionStrategy.NODEJS, + recognitionArgument: 'gatsby', + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + }, + nextJs: { + id: 'clohdoc85000jjx08hewvnpxe', + name: 'Next.js', + slug: 'next-js', + avatarCid: 'bafybeieyey6lkkg475yhflgnfsphsuykyv3bkb7xytcv5thxejdsvumwae', + buildScript: ' && build', + publishDirectory: 'out', + dockerImage: 'fleek/node:lts', + recognitionStrategy: SiteFrameworkRecognitionStrategy.NODEJS, + recognitionArgument: 'next', + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + }, + vueJs: { + id: 'clohdhwmo000hjx08psvfq161', + name: 'Vue.js', + slug: 'vue-js', + avatarCid: 'bafybeidw4vk3h5q4nqc6tk3lfnaybtrba6iwi43r52clwtzjljtwj3quoq', + buildScript: ' && build', + publishDirectory: 'dist', + dockerImage: 'fleek/node:lts', + recognitionStrategy: SiteFrameworkRecognitionStrategy.NODEJS, + recognitionArgument: 'vue', + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + }, +}; + +type StorageType = 'IPFS'; + +const StorageType: Record = { + IPFS: 'IPFS', +}; + +type SourceProvider = 'GITHUB' | 'GITLAB' | 'BITBUCKET'; + +const SourceProvider: Record = { + GITHUB: 'GITHUB', + GITLAB: 'GITLAB', + BITBUCKET: 'BITBUCKET', +}; + +export const gitProvider = { + githubProvider1: { + id: 'clwgkcj6a00002fhpairs7txd', + name: 'Fleek DEV', + sourceProvider: SourceProvider.GITHUB, + config: { + appName: Buffer.from('Fleek App').toString('base64'), + callbackUrl: Buffer.from( + 'https://github.service.fleeksandbox.xyz/callback', + ).toString('base64'), + appId: Buffer.from('').toString('base64'), + appPem: Buffer.from('').toString('base64'), + appClientId: Buffer.from('654321').toString('base64'), + webhookSecret: Buffer.from('').toString('base64'), + appClientSecret: Buffer.from('').toString('base64'), + legacyWebhookUrl: Buffer.from('').toString('base64'), + legacyCallbackUrl: Buffer.from('').toString('base64'), + }, + tags: ['sites'], + appId: '123456', + enabled: true, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + githubProvider2: { + id: '7ehap3vd5ezbkkk38bd2uts0h', + name: 'Fleek DEV 2', + sourceProvider: SourceProvider.GITHUB, + config: { + appName: Buffer.from('Fleek Templates').toString('base64'), + callbackUrl: Buffer.from( + 'https://github.service.fleeksandbox.xyz/callback', + ).toString('base64'), + appId: Buffer.from('').toString('base64'), + appPem: Buffer.from('').toString('base64'), + appClientId: Buffer.from('1101987').toString('base64'), + webhookSecret: Buffer.from('').toString('base64'), + appClientSecret: Buffer.from('').toString('base64'), + legacyWebhookUrl: Buffer.from('').toString('base64'), + legacyCallbackUrl: Buffer.from('').toString('base64'), + }, + tags: ['templates'], + appId: '7891011', + enabled: true, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + githubProvider3: { + id: 'clx26e04k000006k0bza31z05', + name: 'Fleek DEV 1 Old', + sourceProvider: SourceProvider.GITHUB, + config: { + appName: Buffer.from('Fleek Sites Old').toString('base64'), + callbackUrl: Buffer.from( + 'https://github.service.fleeksandbox.xyz/callback', + ).toString('base64'), + appId: Buffer.from('').toString('base64'), + appPem: Buffer.from('').toString('base64'), + appClientId: Buffer.from('1101999').toString('base64'), + webhookSecret: Buffer.from('').toString('base64'), + appClientSecret: Buffer.from('').toString('base64'), + legacyWebhookUrl: Buffer.from('').toString('base64'), + legacyCallbackUrl: Buffer.from('').toString('base64'), + }, + tags: ['sites'], + appId: '12131415', + enabled: false, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, +}; + +export const githubAppInstallation = { + githubAppInstallation1: { + id: 'clwgkcj6a00002fhpairs7txd', + hash: '8e1b9a808', + installationId: '102', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + githubAppInstallation2: { + id: 'egli7uibsy8wl8kgpzlue8odf', + hash: 'mo0pmghl0', + installationId: '104', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + githubAppInstallation3: { + id: 'clwum6sez000108l1ax0fg2tj', + hash: 'mo0pmgjp1', + installationId: '106', + projectId: auth.project.electronicLtd.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + githubAppInstallation4: { + id: 'clx26mnw8000108l2hs6i5q1x', + hash: 'mo0pmgjq2', + installationId: '108', + projectId: auth.project.butcherCo.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + githubAppInstallation5: { + id: 'clx26mnw8000108l2hs6i5q2y', + hash: 'mo0pmgkq3', + installationId: '110', + projectId: auth.project.dreamTeam.id, + createdAt: DateTime.fromISO('2024-05-28T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-28T15:41:56.641Z').toJSDate(), + }, + githubAppInstallation6: { + id: 'clx26mnw8000108l2hs6i5w3u', + hash: 'mo0pmglw4', + installationId: '112', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2024-05-28T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-28T15:41:56.641Z').toJSDate(), + }, +}; + +export const gitIntegration = { + gitIntegration1: { + id: 'jv2gk7j6b00003fhpairs8txe', + projectId: auth.project.electronicCo.id, + gitProviderId: gitProvider.githubProvider1.id, + providerSpecificId: githubAppInstallation.githubAppInstallation1.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + gitIntegration2: { + id: 'oub22ljz50bwjst1rvqahqmmh', + projectId: auth.project.electronicCo.id, + gitProviderId: gitProvider.githubProvider2.id, + providerSpecificId: githubAppInstallation.githubAppInstallation2.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + gitIntegration3: { + id: 'oub22ljz50bwjst1rvqahqnnj', + projectId: auth.project.electronicLtd.id, + gitProviderId: gitProvider.githubProvider2.id, + providerSpecificId: githubAppInstallation.githubAppInstallation3.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + gitIntegration4: { + id: 'clx26jsvc000008l2eyfh2sze', + projectId: auth.project.butcherCo.id, + gitProviderId: gitProvider.githubProvider3.id, + providerSpecificId: githubAppInstallation.githubAppInstallation4.id, + createdAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-21T15:41:56.641Z').toJSDate(), + }, + gitIntegration5: { + id: 'oub22ljz50bwjst1rvqahqnni', + projectId: auth.project.dreamTeam.id, + gitProviderId: gitProvider.githubProvider2.id, + providerSpecificId: githubAppInstallation.githubAppInstallation5.id, + createdAt: DateTime.fromISO('2024-05-27T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-27T15:41:56.641Z').toJSDate(), + }, + gitIntegration6: { + id: 'oub22ljz50bwjst1rvqahqbbo', + projectId: auth.project.vegetableCo.id, + gitProviderId: gitProvider.githubProvider3.id, + providerSpecificId: githubAppInstallation.githubAppInstallation6.id, + createdAt: DateTime.fromISO('2024-05-27T15:41:56.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-05-27T15:41:56.641Z').toJSDate(), + }, +}; + +type PhishingStatus = 'IN_PROGRESS' | 'FAILED' | 'VERIFIED' | 'INCOMPLETE'; + +const PhishingStatus: Record = { + IN_PROGRESS: 'IN_PROGRESS', + FAILED: 'FAILED', + VERIFIED: 'VERIFIED', + INCOMPLETE: 'INCOMPLETE', +}; + +const site = { + electronicCoEshop: { + id: 'clgma7ilu000008jzdlwhb76a', + name: 'electronic-co-shop', + slug: 'blue-green-yellow', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + secretGroupId: secretGroup.electronicCoDatabase.id, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790901', + sourceRepositoryOwner: 'electronic', + sourceRepositoryName: 'electronic-co-shop', + sourceBranch: 'master', + enablePreviews: true, + baseDirectory: null, + buildCommand: 'npm run build', + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: 'clgmajsoo000108moef7f1yt0', + githubInstallationId: 40591126, + avatarCid: '98ff46a8b8774d5c431a27bfd45ea053', + frameworkId: null, + gitIntegrationId: gitIntegration.gitIntegration1.id, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + deletedAt: null, + }, + electronicCoDeprecated: { + id: 'clm93utuz000108laem2a4pe4', + name: 'electronic-co-deprecated', + slug: 'blue-gold-yellow', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T11:05:13.641Z').toJSDate(), + secretGroupId: null, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + enablePreviews: true, + baseDirectory: null, + buildCommand: null, + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: null, + githubInstallationId: null, + avatarCid: null, + frameworkId: null, + gitIntegrationId: null, + status: 'DELETING', + phishingStatus: PhishingStatus.VERIFIED, + deletedAt: DateTime.fromISO('2023-03-23T11:05:13.641Z').toJSDate(), + }, + electronicCoBlog: { + id: 'clgma7mmh000108jzd13c50ol', + name: 'electronic-co-blog', + slug: 'white-black-silver', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + secretGroupId: secretGroup.electronicCoAWS.id, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + enablePreviews: true, + baseDirectory: null, + buildCommand: null, + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: 'clgmak57r000408mo9wd65hpf', + githubInstallationId: null, + avatarCid: null, + frameworkId: null, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + deletedAt: null, + }, + electronicCoVideos: { + id: 'clje32iwx000008js9rjb5uoo', + name: 'electronic-co-videos', + slug: 'green-gold-silver', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + secretGroupId: null, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + enablePreviews: true, + baseDirectory: null, + buildCommand: null, + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: null, + githubInstallationId: null, + avatarCid: null, + frameworkId: null, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + deletedAt: null, + }, + electronicCoLanding: { + id: 'clmkp5nn50000mm08yq7hierx', + name: 'electronicCoLanding', + slug: 'red-green-blue', + avatarCid: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790346', + sourceRepositoryOwner: 'electronic', + sourceRepositoryName: 'electronic-co-lading', + sourceBranch: 'master', + enablePreviews: true, + baseDirectory: null, + buildCommand: 'yarn && yarn build', + distDirectory: 'dist', + dockerImage: 'fleek/create-react-app:node-16', + githubInstallationId: Number.parseInt( + githubAppInstallation.githubAppInstallation1.installationId, + 10, + ), + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: 'IPFS', + currentDeploymentId: 'clmz7kxj60003mk08eg5wmtqh', + projectId: auth.project.electronicCo.id, + secretGroupId: null, + frameworkId: null, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + deletedAt: null, + }, + vegetableCoEshop: { + id: 'clgove94b000208mlhq685zgh', + name: 'vegetable-co-eshop', + slug: 'silver-gold-brown', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-20T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T09:05:13.641Z').toJSDate(), + secretGroupId: secretGroup.vegetableCoAWS.id, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + enablePreviews: true, + baseDirectory: null, + buildCommand: null, + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: null, + githubInstallationId: null, + avatarCid: null, + frameworkId: null, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + deletedAt: null, + }, + vegetableCoBlog: { + id: 'clgp7c1vv000009lj33l50t08', + name: 'vegetable-co-log', + slug: 'blue-red-black', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-21T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-21T09:05:13.641Z').toJSDate(), + secretGroupId: secretGroup.vegetableCoDatabase.id, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + enablePreviews: true, + baseDirectory: null, + buildCommand: null, + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: null, + githubInstallationId: null, + avatarCid: null, + frameworkId: null, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + deletedAt: null, + }, + vegetableCoVideos: { + id: 'clhul20kn000008jz5mng7u19', + name: 'vegetable-co-videos', + slug: 'gold-silver-black', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + secretGroupId: null, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + enablePreviews: true, + baseDirectory: null, + buildCommand: null, + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: null, + githubInstallationId: null, + avatarCid: null, + frameworkId: null, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + deletedAt: null, + }, + vegetableCoEmployees: { + id: 'cln1y5h7y000008l96eekbafk', + name: 'vegetableCoEmployees', + slug: 'gold-red-green', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + secretGroupId: null, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + enablePreviews: true, + baseDirectory: null, + buildCommand: null, + distDirectory: null, + dockerImage: null, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: StorageType.IPFS, + currentDeploymentId: null, + githubInstallationId: null, + avatarCid: null, + frameworkId: null, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + deletedAt: null, + }, + butcherCoEshop: { + id: 'cll5i0ysa0000jt08hasm55du', + name: 'butcherCoEshop', + slug: 'mealy-flabby-painter', + avatarCid: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790346', + sourceRepositoryOwner: 'butcher', + sourceRepositoryName: 'butcher-co-eshop', + sourceBranch: 'master', + enablePreviews: true, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + dockerImage: 'fleek/create-react-app:node-16', + githubInstallationId: 40591126, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: 'IPFS', + currentDeploymentId: 'clll8sx5v000fl5089z84txnc', + projectId: auth.project.butcherCo.id, + secretGroupId: null, + frameworkId: framework.gatsby.id, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + deletedAt: null, + }, + butcherCoBlog: { + id: 'cldm794l70000jo08jdfe5k31', + name: 'butcherCoBlog', + slug: 'super-smoke-cookie', + avatarCid: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790347', + sourceRepositoryOwner: 'butcher', + sourceRepositoryName: 'butcher-co-blog', + sourceBranch: 'master', + enablePreviews: true, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + dockerImage: 'fleek/create-react-app:node-16', + githubInstallationId: 40591126, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: 'IPFS', + currentDeploymentId: null, + projectId: auth.project.butcherCo.id, + secretGroupId: null, + frameworkId: framework.nextJs.id, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + deletedAt: null, + }, + butcherCoVideos: { + id: 'cldkpzpme0000ky08ezzma8uf', + name: 'butcherCoVideos', + slug: 'marble-purple-rain', + avatarCid: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790348', + sourceRepositoryOwner: 'butcher', + sourceRepositoryName: 'butcher-co-videos', + sourceBranch: 'master', + enablePreviews: true, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + dockerImage: 'fleek/create-react-app:node-16', + githubInstallationId: 40591126, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: 'IPFS', + currentDeploymentId: 'clmzq83do000dmb08sjjg7x51', + projectId: auth.project.butcherCo.id, + secretGroupId: null, + frameworkId: framework.vueJs.id, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + deletedAt: null, + }, + butcherCoLanding: { + id: 'clo3bnb710004mo0804zrvd02', + name: 'butcherCoLanding', + slug: 'blank-danger-class', + avatarCid: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790348', + sourceRepositoryOwner: 'butcher', + sourceRepositoryName: 'butcher-co-landing', + sourceBranch: 'main', + enablePreviews: true, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + dockerImage: 'fleek/create-react-app:node-16', + githubInstallationId: 40591126, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: 'IPFS', + currentDeploymentId: 'clo395e4y0001jn0826iwldrn', + projectId: auth.project.butcherCo.id, + secretGroupId: null, + frameworkId: framework.gatsby.id, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + deletedAt: null, + }, + butcherCoEmployees: { + id: 'clo397bwy0003mc08tyjyy5ql', + name: 'butcherCoEmployees', + slug: 'full-danger-tree', + avatarCid: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790348', + sourceRepositoryOwner: 'butcher', + sourceRepositoryName: 'butcher-co-employees', + sourceBranch: 'main', + enablePreviews: true, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + dockerImage: 'fleek/create-react-app:node-16', + githubInstallationId: 40591126, + cpuLimit: null, + memoryLimit: null, + buildDurationLimitSeconds: null, + storageType: 'IPFS', + currentDeploymentId: 'clo397bwy0004mc08csz03ska', + projectId: auth.project.butcherCo.id, + secretGroupId: null, + frameworkId: framework.nextJs.id, + gitIntegrationId: null, + status: 'CREATED', + phishingStatus: PhishingStatus.IN_PROGRESS, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + deletedAt: null, + }, +}; + +type DeploymentStatus = + | 'CREATED' + | 'SOURCE_CLONE_IN_PROGRESS' + | 'SOURCE_CLONE_COMPLETED' + | 'SOURCE_CLONE_FAILED' + | 'CHECK_RUN_CREATING_FAILED' + | 'CHECK_RUN_CREATING_COMPLETED' + | 'BUILD_IN_PROGRESS' + | 'REVIEW_IN_PROGRESS' + | 'REVIEW_COMPLETED' + | 'REVIEW_FAILED' + | 'PROMOTE_IN_PROGRESS' + | 'PROMOTE_COMPLETED' + | 'PROMOTE_FAILED' + | 'RELEASE_IN_PROGRESS' + | 'RELEASE_COMPLETED' + | 'RELEASE_FAILED'; + +const DeploymentStatus: Record = { + CREATED: 'CREATED', + SOURCE_CLONE_IN_PROGRESS: 'SOURCE_CLONE_IN_PROGRESS', + SOURCE_CLONE_COMPLETED: 'SOURCE_CLONE_COMPLETED', + SOURCE_CLONE_FAILED: 'SOURCE_CLONE_FAILED', + CHECK_RUN_CREATING_FAILED: 'CHECK_RUN_CREATING_FAILED', + CHECK_RUN_CREATING_COMPLETED: 'CHECK_RUN_CREATING_COMPLETED', + BUILD_IN_PROGRESS: 'BUILD_IN_PROGRESS', + REVIEW_IN_PROGRESS: 'REVIEW_IN_PROGRESS', + REVIEW_COMPLETED: 'REVIEW_COMPLETED', + REVIEW_FAILED: 'REVIEW_FAILED', + PROMOTE_IN_PROGRESS: 'PROMOTE_IN_PROGRESS', + PROMOTE_COMPLETED: 'PROMOTE_COMPLETED', + PROMOTE_FAILED: 'PROMOTE_FAILED', + RELEASE_IN_PROGRESS: 'RELEASE_IN_PROGRESS', + RELEASE_COMPLETED: 'RELEASE_COMPLETED', + RELEASE_FAILED: 'RELEASE_FAILED', +}; + +const pin = { + electronicCoEshopIndexV1: { + cid: 'bafybeigrtm7ez63ny5xush2tjxp76t7btucy5oa74witfy544y4tu7pewm', + size: 30987, + sizeBigInt: 30987n, + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + }, + electronicCoEshopIndexV2: { + cid: 'bafybeibtme5hmkjxsryerf6pihhfbhifwnsz7gmhnfqglg2r326m4glzva', + size: 40339, + sizeBigInt: null, + createdAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + }, + electronicCoEshopIndexV3: { + cid: 'bafybeibtme5hmkjxsryerf6pihhfbhifwnsz7gmhnfqglg2r326m4glaaa', + size: 40339, + sizeBigInt: null, + createdAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + }, + electronicCoBlogIndexV1: { + cid: 'bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q', + size: 89770, + sizeBigInt: null, + createdAt: DateTime.fromISO('2023-03-25T10:05:13.641Z').toJSDate(), + }, + electronicCoIcon: { + cid: 'bafybeibz3r44fam5t5pbhhdms4g4qolhtmpmjhldv7ougidt7f5mzg4bbe', + size: 19001, + sizeBigInt: 19001n, + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + }, + vegetableCoIcon: { + cid: 'bafybeighbqni3elqcwgxkq2pchhsiupvx6ibdkkkpxewkgnc3plo6ln5uu', + size: 590, + sizeBigInt: null, + createdAt: DateTime.fromISO('2023-03-20T08:05:13.641Z').toJSDate(), + }, + electronicCoDishmachinePhoto: { + cid: 'bafybeib35i3gfjfssctkmabhlhknatqjbevbr3yknfjq7yce4d6zen7ulq', + size: 887999, + sizeBigInt: 887999n, + createdAt: DateTime.fromISO('2023-07-20T08:05:13.641Z').toJSDate(), + }, + electronicCoOvenPhoto: { + cid: 'bafybeig7vyme4ynmpfcwa4ec4n2upgrlfucr2cef5kmdn3si2qz767voz4', + size: 875670, + sizeBigInt: null, + createdAt: DateTime.fromISO('2023-07-25T08:05:13.641Z').toJSDate(), + }, + electronicCoIpfsLiteIcon: { + cid: 'bafkreicndogwio2av2el4igc2snkbxhuuv2lg2vjw6bchy3ekpfjlamxuq', + size: 4627, + sizeBigInt: 4627n, + createdAt: DateTime.fromISO('2024-02-08T02:13:00.477Z').toJSDate(), + }, + electronicCoIpfsCubeIcon: { + cid: 'bafkreidcq4ix4tvq5rxy24socx7y5rku6dfzu33icrymnwczk65dd4nowa', + size: 6335, + sizeBigInt: 6335n, + createdAt: DateTime.fromISO('2024-02-08T02:12:32.732Z').toJSDate(), + }, + s3StoredFile: { + cid: 'random-cid-s3-stored-file', + size: 6335, + sizeBigInt: 6335n, + createdAt: DateTime.fromISO('2024-02-08T02:12:32.732Z').toJSDate(), + }, + electronicCoIpfsChainIcon: { + cid: 'bafkreia2pjhr2ok7jne56ugahp4z54je6f7jwh2rzd5dk5a5uy62622444', + size: 12777, + sizeBigInt: 12777n, + createdAt: DateTime.fromISO('2024-07-08T02:12:32.732Z').toJSDate(), + }, +}; + +const storageFolder = { + electronicCoIcons: { + id: 'cm0gg0l2i000408kx9znveuv4', + name: 'icons', + parentFolderId: null, + path: 'icons', + size: 29963n, + pinCount: 3, + folderCount: 4, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2024-03-09T02:12:32.732Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-03-09T02:12:32.732Z').toJSDate(), + }, + electronicCoHeaters: { + id: 'cm0gg1gjo000508kxc30a9ezm', + name: 'heaters', + parentFolderId: 'cm0gg0l2i000408kx9znveuv4', + path: 'icons/heaters', + size: 19001n, + pinCount: 1, + folderCount: 0, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2024-01-11T02:12:32.732Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-03-09T02:12:32.732Z').toJSDate(), + }, + electronicCoFridges: { + id: 'cm0rysiuz000008lbgaf57ght', + name: 'fridges', + parentFolderId: 'cm0gg0l2i000408kx9znveuv4', + path: 'icons/fridges', + size: 0n, + pinCount: 0, + folderCount: 0, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2024-02-11T02:12:32.732Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-03-09T02:12:32.732Z').toJSDate(), + }, + electronicCoDishwashers: { + id: 'cm0ryu7uw000108lb5qhm9tav', + name: 'dishwashers', + parentFolderId: 'cm0gg0l2i000408kx9znveuv4', + path: 'icons/dishwashers', + size: 0n, + pinCount: 0, + folderCount: 0, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2024-05-11T02:12:32.732Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-03-09T02:12:32.732Z').toJSDate(), + }, + electronicCoKettles: { + id: 'cm0ryubb2000208lb7y4vbe64', + name: 'kettles', + parentFolderId: 'cm0gg0l2i000408kx9znveuv4', + path: 'icons/kettles', + size: 0n, + pinCount: 0, + folderCount: 0, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2024-07-11T02:12:32.732Z').toJSDate(), + updatedAt: DateTime.fromISO('2024-03-09T02:12:32.732Z').toJSDate(), + }, +}; + +const storagePin = { + electronicCoIcon: { + id: 'clkv6wu9w000008mf9qmo9ypi', + cid: pin.electronicCoIcon.cid, + filename: 'heater-icon', + projectId: auth.project.electronicCo.id, + extension: 'png', + path: 'icons/heaters/heater-icon.png', + parentFolderId: storageFolder.electronicCoHeaters.id, + storedOnArweave: true, + storedOnFilecoin: true, + storedOnS3: false, + fileHash: null, + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + }, + vegetableCoIcon: { + id: 'clkv6wz4d000108mf5y6z3rbo', + cid: pin.vegetableCoIcon.cid, + filename: 'cucumber-icon', + projectId: auth.project.vegetableCo.id, + extension: 'svg', + path: null, + parentFolderId: null, + storedOnArweave: false, + storedOnFilecoin: false, + storedOnS3: false, + fileHash: null, + createdAt: DateTime.fromISO('2023-03-20T08:05:13.641Z').toJSDate(), + }, + electronicCoDishmachinePhoto: { + id: 'clkvcesdw000008l5flpgdas1', + cid: pin.electronicCoDishmachinePhoto.cid, + filename: 'dishmachine-photo', + projectId: auth.project.electronicCo.id, + extension: 'jpg', + path: null, + parentFolderId: null, + storedOnArweave: true, + storedOnFilecoin: true, + storedOnS3: false, + fileHash: null, + createdAt: DateTime.fromISO('2023-07-20T08:05:13.641Z').toJSDate(), + }, + electronicCoOvenPhoto: { + id: 'clkvceyjf000208l53rmyfqgl', + cid: pin.electronicCoOvenPhoto.cid, + filename: 'oven-photo', + projectId: auth.project.electronicCo.id, + extension: 'jpg', + path: null, + parentFolderId: null, + storedOnArweave: false, + storedOnFilecoin: false, + storedOnS3: false, + fileHash: null, + createdAt: DateTime.fromISO('2023-07-25T08:05:13.641Z').toJSDate(), + }, + electronicCoIpfsLiteIcon: { + id: 'clscl2wfo003bpf01bhw0f3qh', + cid: pin.electronicCoIpfsLiteIcon.cid, + filename: 'ipfs-lite', + projectId: auth.project.electronicCo.id, + extension: 'png', + path: null, + parentFolderId: storageFolder.electronicCoIcons.id, + storedOnArweave: false, + storedOnFilecoin: true, + storedOnS3: false, + fileHash: null, + createdAt: DateTime.fromISO('2024-02-08T02:13:00.477Z').toJSDate(), + }, + electronicCoIpfsCubeIcon: { + id: 'clscswgw6000008jr5ibd5whm', + cid: pin.electronicCoIpfsCubeIcon.cid, + filename: 'ipfs-cube', + projectId: auth.project.electronicCo.id, + extension: 'jpg', + path: 'icons/ipfs-cube.jpg', + parentFolderId: storageFolder.electronicCoIcons.id, + storedOnArweave: true, + storedOnFilecoin: false, + storedOnS3: false, + fileHash: null, + createdAt: DateTime.fromISO('2024-02-08T02:12:32.732Z').toJSDate(), + }, + s3StoredFile: { + id: 'random-id-s3-stored-file', + cid: pin.s3StoredFile.cid, + filename: 'ipfs', + projectId: auth.project.electronicCo.id, + extension: 'png', + path: null, + parentFolderId: null, + storedOnArweave: false, + storedOnFilecoin: false, + storedOnS3: true, + fileHash: 'file-hash-s3-stored-file', + createdAt: DateTime.fromISO('2024-02-08T02:12:32.732Z').toJSDate(), + }, + electronicCoIpfsChainIcon: { + id: 'cm0w6zmgz000008m8gec5ci4r', + cid: pin.electronicCoIpfsChainIcon.cid, + filename: 'ipfs-chain', + projectId: auth.project.electronicCo.id, + extension: 'svg', + path: 'icons/ipfs-chain.svg', + parentFolderId: storageFolder.electronicCoIcons.id, + storedOnArweave: false, + storedOnFilecoin: true, + storedOnS3: false, + fileHash: null, + createdAt: DateTime.fromISO('2024-02-08T02:12:32.732Z').toJSDate(), + }, +}; + +const filecoinPin = { + electronicCoIcon: { + cid: pin.electronicCoIcon.cid, + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + }, + electronicCoOvenPhoto: { + cid: pin.electronicCoOvenPhoto.cid, + createdAt: DateTime.fromISO('2023-07-25T08:05:13.641Z').toJSDate(), + }, + electronicCoIpfsLiteIcon: { + cid: pin.electronicCoIpfsLiteIcon.cid, + createdAt: DateTime.fromISO('2024-02-08T02:13:00.477Z').toJSDate(), + }, +}; + +const filecoinDeal = { + electronicCoIconFirstDeal: { + id: 'cllqfkslk000008jsh9sm5phc', + dealId: 10001, + storageProvider: 'f01771403', + status: 'Active', + pieceCid: + 'baga6ea4seaqdxcrwwdvob7ulkbdwx4ebh2x6zzxuwqyqjcqn7p6lqpbxkrwz4by', + cid: pin.electronicCoIcon.cid, + dataModelSelector: 'Links/240/Hash/Links/2/Hash/Links/0/Hash', + activation: DateTime.fromISO('2023-06-14T06:27:00+00:00').toJSDate(), + expiration: DateTime.fromISO('2024-11-27T06:27:00+00:00').toJSDate(), + created: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + updated: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T08:55:13.641Z').toJSDate(), + }, + electronicCoIconSecondDeal: { + id: 'clm0b1jsc000008lehvc4h6o9', + dealId: 10002, + storageProvider: 'f01310564', + status: 'Active', + pieceCid: + 'baga6ea4seaqdxcrwwdvob7ulkbdwx4ebh2x6zzxuwqyqjcqn7p6lqpbxkrwz4by', + cid: pin.electronicCoIcon.cid, + dataModelSelector: 'Links/162/Hash/Links/95/Hash/Links/0/Hash', + activation: DateTime.fromISO('2023-06-14T06:27:00+00:00').toJSDate(), + expiration: DateTime.fromISO('2024-11-27T06:27:00+00:00').toJSDate(), + created: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + updated: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T08:55:13.641Z').toJSDate(), + }, + electronicCoIconThirdDeal: { + id: 'clm0b1ra7000208lecziog5rw', + dealId: 10003, + storageProvider: 'f01771403', + status: 'Active', + pieceCid: + 'baga6ea4seaqdxcrwwdvob7ulkbdwx4ebh2x6zzxuwqyqjcqn7p6lqpbxkrwz4by', + cid: pin.electronicCoIcon.cid, + dataModelSelector: 'Links/200/Hash/Links/14/Hash/Links/1/Hash', + activation: DateTime.fromISO('2023-06-14T06:27:00+00:00').toJSDate(), + expiration: DateTime.fromISO('2024-11-27T06:27:00+00:00').toJSDate(), + created: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + updated: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T08:55:13.641Z').toJSDate(), + }, + electronicCoOvenPhotoFirstDeal: { + id: 'cllqfl0sx000108jseeod6u2y', + dealId: 20001, + storageProvider: 'f02095132', + status: 'Active', + pieceCid: + 'baga6ea4seaqdxcrwwdvob7ulkbdwx4ebh2x6zzxuwqyqjcqn7p6lqpbxkrwz4by', + cid: pin.electronicCoOvenPhoto.cid, + dataModelSelector: 'Links/240/Hash/Links/2/Hash/Links/0/Hash', + activation: DateTime.fromISO('2023-06-16T10:00:00+00:00').toJSDate(), + expiration: DateTime.fromISO('2024-11-29T10:00:00+00:00').toJSDate(), + created: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + updated: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + createdAt: DateTime.fromISO('2023-07-25T08:55:13.641Z').toJSDate(), + }, + electronicCoIpfsLiteIconFirstDeal: { + id: 'clsclkl1e000008lb1cau5jzm', + dealId: 30001, + storageProvider: 'f010202', + status: 'Active', + pieceCid: + 'baga6ea4seaqdxcrwwdvob7ulkbdwx4ebh2x6zzxuwqyqjcqn7p6lqpbxkrwz4by', + cid: pin.electronicCoIpfsLiteIcon.cid, + dataModelSelector: 'Links/240/Hash/Links/2/Hash/Links/0/Hash', + activation: DateTime.fromISO('2024-02-08T05:13:00.477Z').toJSDate(), + expiration: DateTime.fromISO('2025-02-08T04:13:00.477Z').toJSDate(), + created: DateTime.fromISO('2024-02-08T05:13:00.477Z').toJSDate(), + updated: DateTime.fromISO('2024-02-08T05:13:00.477Z').toJSDate(), + createdAt: DateTime.fromISO('2024-02-08T03:13:00.477Z').toJSDate(), + }, + electronicCoIpfsLiteIconSecondDeal: { + id: 'clscxjvhh000008la8zqicd9z', + dealId: 30002, + storageProvider: 'f010209', + status: 'Active', + pieceCid: + 'baga6ea4seaqmfgbh5yj7kfct7svpur3mfwv2gietcz2zwyer3764uo7hxpn2knq', + cid: pin.electronicCoIpfsLiteIcon.cid, + dataModelSelector: 'Links/240/Hash/Links/2/Hash/Links/0/Hash', + activation: DateTime.fromISO('2024-02-08T05:13:00.477Z').toJSDate(), + expiration: DateTime.fromISO('2025-02-08T04:13:00.477Z').toJSDate(), + created: DateTime.fromISO('2024-02-08T05:13:00.477Z').toJSDate(), + updated: DateTime.fromISO('2024-02-08T05:13:00.477Z').toJSDate(), + createdAt: DateTime.fromISO('2024-02-08T03:13:00.477Z').toJSDate(), + }, + vegetableCoIconFirstDeal: { + id: 'clscxztqj000008l5cn2i2sfp', + dealId: 40001, + storageProvider: 'f01771903', + status: 'Active', + pieceCid: + 'baga6ea4seaqdxcrwwdvob7ulkbdwx4ebh2x6zzxuwqyqjcqn7p6lqpbxkrwz4xt', + cid: pin.vegetableCoIcon.cid, + dataModelSelector: 'Links/240/Hash/Links/2/Hash/Links/0/Hash', + activation: DateTime.fromISO('2023-06-14T06:27:00+00:00').toJSDate(), + expiration: DateTime.fromISO('2024-11-27T06:27:00+00:00').toJSDate(), + created: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + updated: DateTime.fromISO('2023-08-23T09:20:03.367946+00:00').toJSDate(), + createdAt: DateTime.fromISO('2023-03-23T08:55:13.641Z').toJSDate(), + }, +}; + +const arweavePin = { + electronicCoIcon: { + cid: pin.electronicCoIcon.cid, + bundlrId: 'eeB-3nd2TdCcFQczkBBpbMVkFGsUxqHaqnxYazDy9o4', + price: 0.0003, + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + }, + electronicCoOvenPhoto: { + cid: pin.electronicCoOvenPhoto.cid, + bundlrId: 's8ck4w3785Jk9GIOySgmPh_dR9tqk-UOLyI1M46WiIk', + price: 0.0003, + createdAt: DateTime.fromISO('2023-07-25T08:05:13.641Z').toJSDate(), + }, + electronicCoIpfsLiteIcon: { + cid: pin.electronicCoIpfsLiteIcon.cid, + bundlrId: 'gqhM1XXLguYxgzsvYqMuWNILy6wf3PgeTE_eYh-LRaQ', + price: 0.0001, + createdAt: DateTime.fromISO('2024-02-08T02:20:16.773Z').toJSDate(), + }, +}; + +const privateGateways = { + electronicCoEshop: { + id: 'clhruz26u000108mbdb2zaft0', + name: 'electronic.co eshop', + slug: 'blue-fox-two', + projectId: auth.project.electronicCo.id, + zoneId: 'cljfq6n2y000008lb4oy403bc', + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-04-24T09:05:13.641Z').toJSDate(), + status: 'CREATED', + deletedAt: null, + }, + electronicCoDocuments: { + id: 'clu6w5g44000108labn6eai20', + name: 'electronic.co documents', + slug: 'blue-dog-seven', + projectId: auth.project.electronicCo.id, + zoneId: 'cljfqzrcg000208jy6677aqv1', + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-04-24T09:05:13.641Z').toJSDate(), + status: 'CREATED', + deletedAt: null, + }, + electronicCoPhotos: { + id: 'clj76l893000108l2dsuegrz9', + name: 'electronic.co photos', + slug: 'fish-blue-one', + projectId: auth.project.electronicCo.id, + zoneId: 'clj76kw6i000008l2ekmz6ahd', + createdAt: DateTime.fromISO('2023-04-25T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-04-25T11:05:13.641Z').toJSDate(), + status: 'CREATED', + deletedAt: null, + }, + electronicCoInvoices: { + id: 'clu6w7r8c000208la03p49nih', + name: 'electronic.co invoices', + slug: 'black-stone-zero', + projectId: auth.project.electronicCo.id, + zoneId: 'clmj6b1e9000108mc0pwd6hgd', + createdAt: DateTime.fromISO('2023-04-25T11:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-04-28T11:05:13.641Z').toJSDate(), + status: 'DELETING', + deletedAt: DateTime.fromISO('2023-04-28T11:05:13.641Z').toJSDate(), + }, + vegetableCoInvoices: { + id: 'cln1ytvxb000008l5ad5e5zyr', + name: 'vegetable.co invoices', + slug: 'green-stone-one', + projectId: auth.project.vegetableCo.id, + zoneId: 'cln1yxn7s000008la5zvn4l95', + createdAt: DateTime.fromISO('2023-04-20T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-04-20T10:05:13.641Z').toJSDate(), + status: 'CREATED', + deletedAt: null, + }, +}; + +export const storageIpfs = { + pin, + storageFolder, + storagePin, + privateGateways, +} as const; + +const deployment = { + electronicCoEshopV1: { + id: site.electronicCoEshop.currentDeploymentId, + status: DeploymentStatus.RELEASE_COMPLETED, + storageType: StorageType.IPFS, + cid: storageIpfs.pin.electronicCoBlogIndexV1.cid, + previewImageUrl: null, + siteId: site.electronicCoEshop.id, + projectId: auth.project.electronicCo.id, + artifact: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790901', + sourceRepositoryOwner: 'electronic', + sourceRepositoryName: 'electronic-co-shop', + sourceBranch: 'master', + sourceRef: '7bb3531725f98ca5271eb257c29a1a0809d1a07d', + sourceMessage: 'Upgrade dependencies', + sourceAuthor: 'josh', + previewOnly: false, + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T09:08:13.641Z').toJSDate(), + githubCheckRunId: null, + githubInstallationId: 40591126, + stateMachineExecutionArn: null, + startedAt: DateTime.fromISO('2023-03-24T09:06:13.641Z').toJSDate(), + previewUrlSlug: null, + }, + electronicCoEshopV2: { + id: 'clgmajwf7000208mo67lnhgu0', + status: DeploymentStatus.BUILD_IN_PROGRESS, + storageType: StorageType.IPFS, + cid: storageIpfs.pin.electronicCoEshopIndexV2.cid, + previewImageUrl: null, + siteId: site.electronicCoEshop.id, + projectId: auth.project.electronicCo.id, + artifact: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790901', + sourceRepositoryOwner: 'electronic', + sourceRepositoryName: 'electronic-co-shop', + sourceBranch: 'master', + sourceRef: 'c5fb4ca87fbe6c79c3878ae15b54014c9787ef74', + sourceMessage: 'Test commit', + sourceAuthor: 'josh', + previewOnly: false, + createdAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T10:06:13.641Z').toJSDate(), + githubCheckRunId: null, + githubInstallationId: 40591126, + stateMachineExecutionArn: null, + startedAt: DateTime.fromISO('2023-03-24T10:06:13.641Z').toJSDate(), + previewUrlSlug: null, + }, + electronicCoEshopV3: { + id: 'clgmajwf7000208mo67lnh000', + status: DeploymentStatus.RELEASE_COMPLETED, + storageType: StorageType.IPFS, + cid: storageIpfs.pin.electronicCoEshopIndexV3.cid, + previewImageUrl: null, + siteId: site.electronicCoEshop.id, + projectId: auth.project.electronicCo.id, + artifact: null, + sourceProvider: 'GITHUB', + sourceRepositoryId: '549790901', + sourceRepositoryOwner: 'electronic', + sourceRepositoryName: 'electronic-co-shop', + sourceBranch: 'feat/big-feature', + sourceRef: '7bb3531725f98ca5271eb257c29a1a0809d1a000', + sourceMessage: 'Initial commit', + sourceAuthor: 'josh', + previewOnly: true, + createdAt: DateTime.fromISO('2023-03-23T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T10:05:13.641Z').toJSDate(), + githubCheckRunId: null, + githubInstallationId: 40591126, + stateMachineExecutionArn: null, + startedAt: null, + previewUrlSlug: 'feat-big-feature-preview-blue-green-yellow', + }, + electornicCoBlogV1Failed: { + id: 'clgmak03f000308modn0j7ltq', + status: DeploymentStatus.RELEASE_FAILED, + storageType: StorageType.IPFS, + cid: null, + previewImageUrl: null, + siteId: site.electronicCoBlog.id, + projectId: auth.project.electronicCo.id, + artifact: null, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + sourceRef: null, + sourceMessage: null, + sourceAuthor: null, + previewOnly: false, + createdAt: DateTime.fromISO('2023-03-25T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T09:08:13.641Z').toJSDate(), + githubCheckRunId: null, + githubInstallationId: null, + stateMachineExecutionArn: null, + startedAt: DateTime.fromISO('2023-03-24T10:06:13.641Z').toJSDate(), + previewUrlSlug: null, + }, + electornicCoBlogV1NotStarted: { + id: 'clgmak03f000308modn0j7lrq', + status: DeploymentStatus.CREATED, + storageType: StorageType.IPFS, + cid: null, + previewImageUrl: null, + siteId: site.electronicCoBlog.id, + projectId: auth.project.electronicCo.id, + artifact: null, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + sourceRef: null, + sourceMessage: null, + sourceAuthor: null, + previewOnly: false, + createdAt: DateTime.fromISO('2023-03-25T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T09:08:13.641Z').toJSDate(), + githubCheckRunId: null, + githubInstallationId: null, + stateMachineExecutionArn: null, + startedAt: null, + previewUrlSlug: null, + }, + electronicCoBlogV1: { + id: 'clgmak57r000408mo9wd65hpf', + status: DeploymentStatus.RELEASE_COMPLETED, + storageType: StorageType.IPFS, + cid: storageIpfs.pin.electronicCoBlogIndexV1.cid, + previewOnly: false, + previewImageUrl: null, + siteId: site.electronicCoBlog.id, + projectId: auth.project.electronicCo.id, + artifact: null, + sourceProvider: null, + sourceRepositoryId: null, + sourceRepositoryOwner: null, + sourceRepositoryName: null, + sourceBranch: null, + sourceRef: null, + sourceMessage: null, + sourceAuthor: null, + createdAt: DateTime.fromISO('2023-03-25T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T10:08:13.641Z').toJSDate(), + githubCheckRunId: null, + githubInstallationId: null, + stateMachineExecutionArn: null, + startedAt: DateTime.fromISO('2023-03-25T10:06:13.641Z').toJSDate(), + previewUrlSlug: null, + }, + electronicCoLandingV1: { + id: site.electronicCoLanding.currentDeploymentId, + status: 'RELEASE_COMPLETED', + storageType: 'IPFS', + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + siteId: site.electronicCoLanding.id, + projectId: site.electronicCoLanding.projectId, + artifact: 'clll8sy0a000fmp087vbdn1ej.car', + sourceProvider: site.electronicCoLanding.sourceProvider, + sourceRepositoryId: site.electronicCoLanding.sourceRepositoryId, + sourceRepositoryOwner: site.electronicCoLanding.sourceRepositoryOwner, + sourceRepositoryName: site.electronicCoLanding.sourceRepositoryName, + sourceBranch: site.electronicCoLanding.sourceBranch, + sourceRef: '3030b7ba1502fe6d93ad6d467009829909ff3aef', + githubCheckRunId: 16079988403, + githubInstallationId: 40591126, + sourceMessage: 'Update README.md', + sourceAuthor: 'electronicCo', + previewOnly: false, + previewImageUrl: + 'https://ipfs.io/ipfs/bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + stateMachineExecutionArn: null, + previewUrlSlug: null, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + startedAt: DateTime.fromISO('2023-08-21T19:01:04.569Z').toJSDate(), + }, + butcherCoEshopV1: { + id: site.butcherCoEshop.currentDeploymentId, + status: 'RELEASE_COMPLETED', + storageType: 'IPFS', + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + siteId: site.butcherCoEshop.id, + projectId: site.butcherCoEshop.projectId, + artifact: 'clll8sy0a000fmp087vbdn1ej.car', + sourceProvider: site.butcherCoEshop.sourceProvider, + sourceRepositoryId: site.butcherCoEshop.sourceRepositoryId, + sourceRepositoryOwner: site.butcherCoEshop.sourceRepositoryOwner, + sourceRepositoryName: site.butcherCoEshop.sourceRepositoryName, + sourceBranch: site.butcherCoEshop.sourceBranch, + sourceRef: '3030b7ba1502fe6d93ad6d467009829909ff3aef', + githubCheckRunId: 16079988403, + githubInstallationId: 40591126, + sourceMessage: 'Update README.md', + sourceAuthor: 'butcher', + previewOnly: false, + previewImageUrl: null, + stateMachineExecutionArn: null, + previewUrlSlug: null, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + startedAt: DateTime.fromISO('2023-08-21T19:02:04.569Z').toJSDate(), + }, + butcherCoVideosV1: { + id: site.butcherCoVideos.currentDeploymentId, + status: 'RELEASE_COMPLETED', + storageType: 'IPFS', + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + siteId: site.butcherCoVideos.id, + projectId: site.butcherCoVideos.projectId, + artifact: 'clll8sy0a000fmp087vbdn1ej.car', + sourceProvider: site.butcherCoVideos.sourceProvider, + sourceRepositoryId: site.butcherCoVideos.sourceRepositoryId, + sourceRepositoryOwner: site.butcherCoVideos.sourceRepositoryOwner, + sourceRepositoryName: site.butcherCoVideos.sourceRepositoryName, + sourceBranch: site.butcherCoVideos.sourceBranch, + sourceRef: '3030b7ba1502fe6d93ad6d467009829909ff3aef', + githubCheckRunId: 16079988403, + githubInstallationId: 40591126, + sourceMessage: 'Update README.md', + sourceAuthor: 'butcher', + previewOnly: false, + previewImageUrl: null, + stateMachineExecutionArn: null, + previewUrlSlug: null, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + startedAt: DateTime.fromISO('2023-08-21T19:03:04.569Z').toJSDate(), + }, + butcherCoLandingV1: { + id: site.butcherCoLanding.currentDeploymentId, + status: 'RELEASE_COMPLETED', + storageType: 'IPFS', + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + siteId: site.butcherCoLanding.id, + projectId: site.butcherCoLanding.projectId, + artifact: 'clo395e4y0001jn0826iwldrn.car', + sourceProvider: site.butcherCoLanding.sourceProvider, + sourceRepositoryId: site.butcherCoLanding.sourceRepositoryId, + sourceRepositoryOwner: site.butcherCoLanding.sourceRepositoryOwner, + sourceRepositoryName: site.butcherCoLanding.sourceRepositoryName, + sourceBranch: site.butcherCoLanding.sourceBranch, + sourceRef: '3030b7ba1502fe6d93ad6d467009829909ff3aef', + githubCheckRunId: 16079988403, + githubInstallationId: 40591126, + sourceMessage: 'Update README.md', + sourceAuthor: 'butcher', + previewOnly: false, + previewImageUrl: null, + stateMachineExecutionArn: null, + previewUrlSlug: null, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + startedAt: DateTime.fromISO('2023-08-21T19:03:04.569Z').toJSDate(), + }, + butcherCoEmployeesV1: { + id: site.butcherCoEmployees.currentDeploymentId, + status: 'RELEASE_COMPLETED', + storageType: 'IPFS', + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + siteId: site.butcherCoEmployees.id, + projectId: site.butcherCoEmployees.projectId, + artifact: 'clo395e4y0001jn0826iwldrn.car', + sourceProvider: site.butcherCoEmployees.sourceProvider, + sourceRepositoryId: site.butcherCoEmployees.sourceRepositoryId, + sourceRepositoryOwner: site.butcherCoEmployees.sourceRepositoryOwner, + sourceRepositoryName: site.butcherCoEmployees.sourceRepositoryName, + sourceBranch: site.butcherCoEmployees.sourceBranch, + sourceRef: '3030b7ba1502fe6d93ad6d467009829909ff3aef', + githubCheckRunId: 16079988403, + githubInstallationId: 40591126, + sourceMessage: 'Update README.md', + sourceAuthor: 'butcher', + previewOnly: false, + previewImageUrl: null, + stateMachineExecutionArn: null, + previewUrlSlug: null, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + startedAt: DateTime.fromISO('2023-08-21T19:03:04.569Z').toJSDate(), + }, +}; + +const build = { + electronicCoLandingV1: { + id: 'clmzc7oka0000ld08xfhncqrf', + deploymentId: deployment.electronicCoLandingV1.id, + status: 'COMPLETED', + statusText: null, + baseDirectory: null, + buildCommand: 'yarn && yarn build', + distDirectory: 'dist', + image: 'fleek/create-react-app:node-16', + cpu: '1024', + memory: '4096', + ecsTaskId: 'eca1760271794161af432a0410ab6c7d', + command: + 'yarn && yarn build && test -d dist || (echo "Dist directory does not exist" && exit 1)', + stoppedReason: null, + deadline: '2023-08-15T15:19:43.925Z', + buildTime: 176, + memoryTime: null, + cpuTime: 176, + stopCode: null, + createdAt: DateTime.fromISO('2023-08-15T14:49:46.911Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-15T14:52:58.359Z').toJSDate(), + }, + butcherCoEshopV1: { + id: 'cllcf6xne0001l908rqhteam6', + deploymentId: deployment.butcherCoEshopV1.id, + status: 'COMPLETED', + statusText: null, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + image: 'fleek/create-react-app:node-16', + cpu: '1024', + memory: '4096', + ecsTaskId: 'eca1760271794161af432a0410ab6c7d', + command: + 'npm i && npm run build && test -d build || (echo "Dist directory does not exist" && exit 1)', + stoppedReason: null, + deadline: '2023-08-15T15:19:43.925Z', + buildTime: 176, + memoryTime: null, + cpuTime: 176, + stopCode: null, + createdAt: DateTime.fromISO('2023-08-15T14:49:46.911Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-15T14:52:58.359Z').toJSDate(), + }, + electronicCoEshopV2: { + id: 'cltzp4b1p000008ju85axd8nc', + deploymentId: deployment.electronicCoEshopV2.id, + status: 'RUNNING', + statusText: null, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + image: 'fleek/create-react-app:node-16', + cpu: '1024', + memory: '4096', + ecsTaskId: 'eca1760271794161af432a0410ab6c91', + command: + 'npm i && npm run build && test -d build || (echo "Dist directory does not exist" && exit 1)', + stoppedReason: null, + deadline: '2023-03-24T10:30:13.641Z', + buildTime: null, + memoryTime: null, + cpuTime: null, + stopCode: null, + createdAt: DateTime.fromISO('2023-03-24T10:06:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T10:06:13.641Z').toJSDate(), + }, + butcherCoVideosV1: { + id: 'clmzp7pow000gjt08n75kra7i', + deploymentId: deployment.butcherCoVideosV1.id, + status: 'COMPLETED', + statusText: null, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + image: 'fleek/create-react-app:node-16', + cpu: '1024', + memory: '4096', + ecsTaskId: 'eca1760271794161af432a0410ab6c7d', + command: + 'npm i && npm run build && test -d build || (echo "Dist directory does not exist" && exit 1)', + stoppedReason: null, + deadline: '2023-08-15T15:19:43.925Z', + buildTime: 176, + memoryTime: null, + cpuTime: 176, + stopCode: null, + createdAt: DateTime.fromISO('2023-08-15T14:49:46.911Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-15T14:52:58.359Z').toJSDate(), + }, + butcherCoLandingV1: { + id: 'clo3bnb710001mo08uvy0haqn', + deploymentId: deployment.butcherCoLandingV1.id, + status: 'COMPLETED', + statusText: null, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + image: 'fleek/create-react-app:node-16', + cpu: '1024', + memory: '4096', + ecsTaskId: 'eca1760271794161af432a0410ab6c7d', + command: + 'npm i && npm run build && test -d build || (echo "Dist directory does not exist" && exit 1)', + stoppedReason: null, + deadline: '2023-08-15T15:19:43.925Z', + buildTime: 176, + memoryTime: null, + cpuTime: 176, + stopCode: null, + createdAt: DateTime.fromISO('2023-08-15T14:49:46.911Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-15T14:52:58.359Z').toJSDate(), + }, + butcherCoEmployeesV1: { + id: 'clo397bwy0004mc08csz03ska', + deploymentId: deployment.butcherCoEmployeesV1.id, + status: 'COMPLETED', + statusText: null, + baseDirectory: null, + buildCommand: 'npm i && npm run build', + distDirectory: 'build', + image: 'fleek/create-react-app:node-16', + cpu: '1024', + memory: '4096', + ecsTaskId: 'eca1760271794161af432a0410ab6c7d', + command: + 'npm i && npm run build && test -d build || (echo "Dist directory does not exist" && exit 1)', + stoppedReason: null, + deadline: '2023-08-15T15:19:43.925Z', + buildTime: 176, + memoryTime: null, + cpuTime: 176, + stopCode: null, + createdAt: DateTime.fromISO('2023-08-15T14:49:46.911Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-15T14:52:58.359Z').toJSDate(), + }, +}; + +const buildLog = { + butcherCoLandingV1First: { + createdAt: DateTime.fromISO('2023-03-25T10:05:53.641Z').toJSDate(), + buildId: build.electronicCoLandingV1.id, + id: 'cllzfodsl000208maav47amz7', + text: 'info - Linting and checking validity of types...', + }, + butcherCoLandingV1Second: { + id: 'cllzfoik2000308mafvpldcea', + buildId: build.electronicCoLandingV1.id, + createdAt: DateTime.fromISO('2023-03-25T10:06:13.641Z').toJSDate(), + text: 'info - Collecting page data...', + }, + butcherCoLandingV1Third: { + createdAt: DateTime.fromISO('2023-03-25T10:06:59.641Z').toJSDate(), + id: 'cllzfom81000408mahv763uy6', + buildId: build.electronicCoLandingV1.id, + text: 'info - Compiled successfully', + }, +}; + +export const sites = { + site, + deployment, + secretGroup, + secret, + build, + framework, +} as const; + +const zone = { + electronicCoEshop: { + id: 'clgmfj874000208lc2e9ccglf', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.SITE, + projectId: auth.project.electronicCo.id, + siteId: sites.site.electronicCoEshop.id, + primaryDomainId: 'clgmfj1pa000108lc0g5i7d32', + status: ZoneStatus.CREATED, + originUrl: + 'https://ipfs.io/ipfs/QmXYsy8xLYRaDbgDNeSthWSNneKM13Vb1FHV8LC4DghHy2', + originUrlChangedBy: 'fleek.domains', + originUrlChangedAt: DateTime.fromISO('2022-12-24T09:05:13.641Z').toJSDate(), + createdAt: DateTime.fromISO('2022-12-24T09:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2022-12-24T09:04:13.641Z').toJSDate(), + }, + electronicCoEshopPGW: { + id: 'cljfq6n2y000008lb4oy403bc', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.PRIVATE_GATEWAY, + projectId: auth.project.electronicCo.id, + siteId: sites.site.electronicCoEshop.id, + primaryDomainId: 'clmhwwted000108mnajduel68', + status: ZoneStatus.CREATED, + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + originUrlChangedBy: 'fleek.domains', + originUrlChangedAt: DateTime.fromISO('2022-12-24T09:05:13.641Z').toJSDate(), + createdAt: DateTime.fromISO('2022-12-24T09:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2022-12-24T09:04:13.641Z').toJSDate(), + }, + electronicCoBlog: { + id: 'clgow7wob000508jog5gfanj9', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.SITE, + projectId: auth.project.electronicCo.id, + siteId: sites.site.electronicCoBlog.id, + primaryDomainId: null, + status: ZoneStatus.CREATED, + originUrl: + 'https://bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q.ipfs.gateway-ipfs.fleeksandbox.xyz', + originUrlChangedBy: 'fleek.domains', + originUrlChangedAt: DateTime.fromISO('2022-12-28T10:05:13.641Z').toJSDate(), + createdAt: DateTime.fromISO('2022-12-28T10:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2022-12-28T10:04:13.641Z').toJSDate(), + }, + electronicCoDocuments: { + id: 'cljfqzrcg000208jy6677aqv1', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.PRIVATE_GATEWAY, + projectId: auth.project.electronicCo.id, + siteId: null, + primaryDomainId: null, + status: ZoneStatus.CREATED, + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + originUrlChangedBy: null, + originUrlChangedAt: null, + createdAt: DateTime.fromISO('2023-02-28T10:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:13.641Z').toJSDate(), + }, + electronicCoBackupDocuments: { + id: 'clu71yju0000008ji67mzdyzb', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.PRIVATE_GATEWAY, + projectId: auth.project.electronicCo.id, + siteId: null, + primaryDomainId: null, + status: ZoneStatus.CREATED, + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + originUrlChangedBy: null, + originUrlChangedAt: null, + createdAt: DateTime.fromISO('2023-02-28T10:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:13.641Z').toJSDate(), + }, + electronicCoInvoices: { + id: 'clmj6b1e9000108mc0pwd6hgd', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.PRIVATE_GATEWAY, + projectId: auth.project.electronicCo.id, + siteId: null, + primaryDomainId: null, + status: ZoneStatus.CREATED, + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + originUrlChangedBy: null, + originUrlChangedAt: null, + createdAt: DateTime.fromISO('2023-02-28T11:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T11:04:13.641Z').toJSDate(), + }, + electronicCoVideos: { + id: 'clje357cc000108jse08c2t6m', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.SITE, + projectId: auth.project.electronicCo.id, + siteId: sites.site.electronicCoVideos.id, + primaryDomainId: null, + status: ZoneStatus.CREATING_FAILED, + originUrl: + 'https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342', + originUrlChangedBy: 'fleek.domains', + originUrlChangedAt: DateTime.fromISO('2022-12-30T11:04:13.641Z').toJSDate(), + createdAt: DateTime.fromISO('2022-12-30T11:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2022-12-30T11:04:13.641Z').toJSDate(), + }, + electronicCoPhotos: { + id: 'clj76kw6i000008l2ekmz6ahd', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.PRIVATE_GATEWAY, + projectId: auth.project.electronicCo.id, + siteId: null, + primaryDomainId: null, + status: ZoneStatus.CREATED, + originUrl: + 'https://bafybeib5qbrx6xdrdvuxt2wsvfsrwwvu42bfh6pycm677qjkl66heelc2e.ipfs.gateway-ipfs.fleeksandbox.xyz', + originUrlChangedBy: 'fleek.domains', + originUrlChangedAt: DateTime.fromISO('2022-04-25T10:04:13.641Z').toJSDate(), + createdAt: DateTime.fromISO('2022-04-25T09:04:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2022-04-25T10:04:13.641Z').toJSDate(), + }, + vegetableCoEshop: { + id: 'clgovyixs000208jo9x998pfb', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.SITE, + projectId: auth.project.vegetableCo.id, + siteId: sites.site.vegetableCoEshop.id, + primaryDomainId: 'clgow5qi2000408jo6n9k94zr', + status: ZoneStatus.CREATED, + originUrl: + 'https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342', + originUrlChangedBy: 'fleek.domains', + originUrlChangedAt: DateTime.fromISO('2023-03-20T10:06:13.641Z').toJSDate(), + createdAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + }, + vegetableCoEmployees: { + id: 'cln1yftsx000708l9et8z3x1l', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.SITE, + projectId: auth.project.vegetableCo.id, + siteId: sites.site.vegetableCoEmployees.id, + primaryDomainId: null, + status: ZoneStatus.CREATED, + originUrl: + 'https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342', + originUrlChangedBy: 'fleek.domains', + originUrlChangedAt: DateTime.fromISO('2023-03-20T10:06:13.641Z').toJSDate(), + createdAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + }, + vegetableCoInvoices: { + id: 'cln1yxn7s000008la5zvn4l95', + provider: ZoneProvider.BUNNY_CDN, + type: ZoneType.PRIVATE_GATEWAY, + projectId: auth.project.vegetableCo.id, + siteId: null, + primaryDomainId: null, + status: ZoneStatus.CREATED, + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + originUrlChangedBy: null, + originUrlChangedAt: null, + createdAt: DateTime.fromISO('2023-04-20T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-04-20T10:05:13.641Z').toJSDate(), + }, +}; + +const bunnyZoneProvider = { + electronicCoEshop: { + id: 'clgmg1ckg000108mihh1gas8k', + hostname: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + pullZoneId: '1256005', + originUrl: + 'https://ipfs.io/ipfs/QmXYsy8xLYRaDbgDNeSthWSNneKM13Vb1FHV8LC4DghHy2', + zoneId: zone.electronicCoEshop.id, + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + }, + electronicCoBlog: { + id: 'clgowc1t8000608jo6w9363c2', + hostname: 'clgow7wob000508jog5gfanj9.b-cdn.net', + pullZoneId: '1256006', + originUrl: + 'https://bafybeifyvm5aa2z35jnpehvg3hfflazesjfma53yekmhz7dckqn4buvr7q.ipfs.gateway-ipfs.fleeksandbox.xyz', + zoneId: zone.electronicCoBlog.id, + createdAt: DateTime.fromISO('2023-03-28T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-28T10:05:13.641Z').toJSDate(), + }, + electronicCoDocuments: { + id: 'cln21yy3o000108la39gkgkak', + hostname: 'cljfqzrcg000208jy6677aqv1.fleekcdn.xyz', + pullZoneId: '1256010', + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + zoneId: zone.electronicCoDocuments.id, + createdAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + }, + electronicCoBackupDocuments: { + id: 'clu71zx17000108jicfax8lv8', + hostname: 'clu71yju0000008ji67mzdyzb.fleekcdn.xyz', + pullZoneId: '1256099', + originUrl: 'https://dedicated-gateway-ipfs.fleeksandbox.xyz', + zoneId: zone.electronicCoBackupDocuments.id, + createdAt: DateTime.fromISO('2023-02-28T10:05:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:05:33.641Z').toJSDate(), + }, + vegetableCoEshop: { + id: 'clgovxtyj000108joebg782o7', + hostname: 'clgovyixs000208jo9x998pfb.b-cdn.net', + pullZoneId: '1256007', + originUrl: + 'https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342', + zoneId: zone.vegetableCoEshop.id, + createdAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + }, +}; + +type DomainStatus = + | 'CREATING' + | 'CREATING_FAILED' + | 'CREATED' + | 'DELETING' + | 'DELETING_FAILED' + | 'ACTIVE' + | 'VERIFYING' + | 'VERIFYING_FAILED'; + +const DomainStatus: Record = { + CREATING: 'CREATING', + CREATING_FAILED: 'CREATING_FAILED', + CREATED: 'CREATED', + VERIFYING: 'VERIFYING', + VERIFYING_FAILED: 'VERIFYING_FAILED', + ACTIVE: 'ACTIVE', + DELETING: 'DELETING', + DELETING_FAILED: 'DELETING_FAILED', +}; + +type DnslinkStatus = 'CREATED' | 'VERIFIED' | 'VERIFICATION_FAILED'; + +const DnslinkStatus: Record = { + CREATED: 'CREATED', + VERIFIED: 'VERIFIED', + VERIFICATION_FAILED: 'VERIFICATION_FAILED', +}; + +const domain = { + electronicCoPrimary: { + id: 'clgmfj1pa000108lc0g5i7d32', + hostname: 'electronic.co', + isVerified: true, + projectId: auth.project.electronicCo.id, + status: DomainStatus.ACTIVE, + dnslinkStatus: null, + errorMessage: null, + zoneId: zone.electronicCoEshop.id, + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + }, + electronicCoEshop: { + id: 'clgmfj874000208lc2e9ccglf', + hostname: 'eshop-electronic.co', + isVerified: false, + projectId: auth.project.electronicCo.id, + status: DomainStatus.VERIFYING_FAILED, + dnslinkStatus: null, + errorMessage: `CDN API temporarily doesn't respond.`, + zoneId: zone.electronicCoEshop.id, + createdAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + }, + electronicCoEshopPGW: { + id: 'clmhwwted000108mnajduel68', + hostname: 'static.eshop-electronic.co', + isVerified: true, + projectId: auth.project.electronicCo.id, + status: DomainStatus.ACTIVE, + dnslinkStatus: null, + errorMessage: null, + zoneId: zone.electronicCoEshopPGW.id, + createdAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + }, + electronicCoBlog: { + id: 'clgnslqvg000108l6hg5ea3u0', + hostname: 'blog-electornic.co', + isVerified: false, + projectId: auth.project.electronicCo.id, + status: DomainStatus.CREATING, + dnslinkStatus: null, + errorMessage: null, + zoneId: zone.electronicCoBlog.id, + createdAt: DateTime.fromISO('2023-03-28T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-28T10:05:13.641Z').toJSDate(), + }, + electronicCoBlogDnslink: { + id: 'clgnslqvg000108l6hg5ea3u1', + hostname: 'dnslink-electornic.co', + isVerified: true, + projectId: auth.project.electronicCo.id, + status: DomainStatus.ACTIVE, + dnslinkStatus: DnslinkStatus.CREATED, + errorMessage: null, + zoneId: zone.electronicCoBlog.id, + createdAt: DateTime.fromISO('2023-03-28T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-28T10:05:13.641Z').toJSDate(), + }, + electronicCoDocuments: { + id: 'cln21wwwa000008la7e0kbvd7', + hostname: 'documents-electronic.co', + isVerified: false, + projectId: auth.project.electronicCo.id, + status: DomainStatus.CREATED, + dnslinkStatus: null, + errorMessage: null, + zoneId: zone.electronicCoDocuments.id, + createdAt: DateTime.fromISO('2023-02-28T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:05:13.641Z').toJSDate(), + }, + electronicCoBackupDocuments: { + id: 'clu722ae6000308jia4bxgtiv', + hostname: 'documents-backup-electronic.co', + isVerified: false, + projectId: auth.project.electronicCo.id, + status: DomainStatus.CREATED, + dnslinkStatus: null, + errorMessage: null, + zoneId: zone.electronicCoBackupDocuments.id, + createdAt: DateTime.fromISO('2023-02-28T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:05:13.641Z').toJSDate(), + }, + vegetableCoPrimary: { + id: 'clgow5qi2000408jo6n9k94zr', + hostname: 'vegetable.co', + projectId: auth.project.vegetableCo.id, + isVerified: true, + status: DomainStatus.ACTIVE, + dnslinkStatus: null, + errorMessage: null, + zoneId: zone.vegetableCoEshop.id, + createdAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + }, +}; + +type DnsConfigType = 'CNAME' | 'A'; + +const DnsConfigType = { + CNAME: 'CNAME', + A: 'A', +}; + +const dnsConfig = { + electronicCoPrimaryCName: { + id: 'clgmg76ch000208mid5o30du0', + type: DnsConfigType.CNAME, + name: 'hostname', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + domainId: domain.electronicCoPrimary.id, + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + }, + electronicCoEshopCName: { + id: 'clgmgbj4h000308mi8aai0pli', + type: DnsConfigType.CNAME, + name: 'hostname', + value: 'clgmfj874000208lc2e9ccglf.b-cdn.net', + domainId: domain.electronicCoPrimary.id, + createdAt: DateTime.fromISO('2023-03-23T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T10:05:13.641Z').toJSDate(), + }, + electronicCoDocumentsCName: { + id: 'cln2226gc000208la1egogfn3', + type: DnsConfigType.CNAME, + name: 'hostname', + value: 'cljfqzrcg000208jy6677aqv1.fleekcdn.xyz', + domainId: domain.electronicCoDocuments.id, + createdAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + }, + electronicCoDocumentsDnslink: { + id: 'cln2226gc000208laurhtg4d5', + type: DnsConfigType.CNAME, + name: '_dnslink', + value: 'blue-green-yellow.dev.on-fleek-test.app', + domainId: domain.electronicCoDocuments.id, + createdAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + }, + electronicCoBackupDocumentsCName: { + id: 'clu724fbo000408jib50q1x3f', + type: DnsConfigType.CNAME, + name: 'hostname', + value: 'clu71yju0000008ji67mzdyzb.fleekcdn.xyz', + domainId: domain.electronicCoBackupDocuments.id, + createdAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + }, + electronicCoBlogDnslink: { + id: 'cln2226gc000208la1egftrd4', + type: DnsConfigType.CNAME, + name: '_dnslink', + value: 'blue-green-yellow.dev.on-fleek-test.app', + domainId: domain.electronicCoBlog.id, + createdAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + }, + electronicCoBlogDnslink2: { + id: 'ckmhgsu0x011008mney5h0bu', + type: DnsConfigType.CNAME, + name: '_dnslink', + value: `_dnslink.${sites.site.electronicCoBlog.slug}.dev.on-fleek-test.app`, + domainId: domain.electronicCoBlogDnslink.id, + createdAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + }, + electronicCoEshopPGWDnslink: { + id: 'ckmhgsu0x011008mney3h03bu', + type: DnsConfigType.CNAME, + name: '_dnslink', + value: 'one-knife-yellow.dev.on-fleek-test.app', + domainId: domain.electronicCoEshopPGW.id, + createdAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-02-28T10:04:33.641Z').toJSDate(), + }, + vegetableCoPrimaryCName: { + id: 'clmhwsu0x000008mney3h07wx', + type: DnsConfigType.CNAME, + name: 'hostname', + value: 'clgovyixs000208jo9x998pfb.b-cdn.net', + domainId: domain.vegetableCoPrimary.id, + createdAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T10:05:13.641Z').toJSDate(), + }, +}; + +export const domains = { zone, bunnyZoneProvider, domain, dnsConfig } as const; + +const ipnsRecord = { + electronicCoEshop: { + id: 'clgkj995t000108med7gb2w4v', + hash: 'QmcvfRw5WDutRzvRNq2matcJWW2nKWFGDbqxaaTxnWksME', + name: 'k51qzi5uqu5dhrupvn0ru1c6el43rhimh95cuiwqy0ofo8bgomvq296b49v9r7', + key: 'I4qyDwqrQE1vnadk50Sn+2G9CRxAegFagIZ5ZOt+FKfWfzZyVDyurye5hWYJwkTWYbKOXVC1oZrUPudAiSgxHazAuECkR7EkrDSIWwFTkfWxBVmC4bBqrhGMsRYtrn0NTIL/CXIxV2DL7+zGGg2ox6sHkr51B1kTtVOuXi27J1F38usIox+uSkSbu9sexJOlpiOyZgaDtcDIwJrZmnuQ+vEGV98rrATAyy8pn/9w4VFk3Y1oUfZavicTpU/DuS7zmpoQ1Hp54SSDoQ+NvYYby+V43WLPFq0rduJTqkJ3y1yGN8NF6yeQUkAyf88xf2LmtQCWWMkLZRBPhMYLPeK5lP/gjkbGGLfKdsxEt9bTg5qo7A/ofesElQAid4xgAxHTjfDwN0VldWFF0Jvyk1K0rYWgrbFnNSchYPysJhXVMFtHzJj7lTxBKk0Zeb6mXTLWGX/KzXOFqijS1vA8lUzxfn1tULT2I6lvqFcNcXgFXgeNa01w2CnCPLgH5LAwQbF6xaRxF7rQYMpyJ0KKqrocVH2veHtM7FCEq++wSG8p5vPXF1ax4onMWEsb/eB6FCr1uiMCNqBnh7NwXS3S7eK4YhsLkpU5a/cKv5YjwM+qfwaCw12UPCaCqVtp7xSchLWSCMjaRwY4dGXlpUCUej+3Ej+7Zcu/h46Ahe4aIZTA2zM=', + kmsKeyId: 'clhudvbzd000008mn9l2e9dfv', + siteId: sites.site.electronicCoEshop.id, + projectId: auth.project.electronicCo.id, + updatedBy: auth.user.josh.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + }, + electronicCoBlog: { + id: 'clgkj9ipf000208me9yzre1cn', + hash: 'QmX7WyiLtbvmfbUzN2eJuvmDuGZSDjavuauwaJL4bFC5SJ', + name: 'k51qzi5uqu5dh2c8ec00yowiapopchxdvnwh6iy2xoxc51inldruqh4yvzgez5', + key: 'em1qBft/K5GoFxZzYgZ2YluMn3QW/7IMSLuYG0gxkzpyLY6g3wwIOsS8iAK4xiZwO90MPHsffTZB4qyFRltzQ5UFrG5rqD4SgUvTJ9dMPdkWrUGvq3ccwLNrSffaBwAagxVvo5GeC40QS4tk+aI7hxgdtBfiFqIxKv7b2+MFgj3TR032q0FBgkxHIA0ptaGVnWKvDZLnCANMKJIeTPAniSc5213NKuqOH2Le8aMswFBUhK0bmPe4GqtbIH3V4Yq2uiU5Pbn5hrQipUgPR5ZC8Hwb2qG1CNROHQ7RoAm19bS7YvYrc3Um8MNKXAlD21h6I6hGiYecUW6OBt4ky+Hdc3Z1cWqqN6H10fXJkiiMN6DlB4C+06Ou0yyVRL41Cv+8PbsEWg2iWHAvIvlLBv7jREAaHMulqZdC7QiyaZt4+jxYfPRO1Y2WUHtdoqw+VPHeWj876qbuj6qaU8qsv1/qlGTgnvfzI5Xs2mmQE1joY4rtvUfm4uYDJhm/CWco+egLDIa4EEHvqEmuZrSRmbvf0G0yc53YVoYLpLgip9GYyy3NExz4gdpOcd+59eueTQtl7FkL7DxEM5bmJ/r8HQRJlNuqFztG0XjQ7NXFQ6BsIQS3BskLYOHgDOiyTp/5NEwzDIOQKNnexDeCG5dnhc/JVq7Uml9VSPfog6tzEestgZ0=', + kmsKeyId: 'clhudvbzd000008mn9l2e9dfv', + siteId: sites.site.electronicCoBlog.id, + projectId: auth.project.electronicCo.id, + updatedBy: auth.user.james.id, + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + }, + electronicCoForum: { + id: 'clgkj9pfa000308meh73d8nff', + hash: 'QmW73w6jvat7zDpFkYHft8eB88LiU6fPyV9LUX9et7XRUy', + name: 'k51qzi5uqu5dipwqop5kj5na30qlwqbyyn54g8y3jcm3sdc02t9tjlec2a46ci', + key: 'm3FnSSrj1iRelT547ZdXyxyPKsYjeI0b2VBtZhezYpK3n9wDOjHjpKSOzZmbuJRLlYkXjr0rNGbPnBStqQxwfAR9QMzL3VmRHT3nJBJYAwt6UTGDVCymtCza0zbRimJ/06c3VH0YfvXgZ4ut5vaam2uMq9/noBzh/pxqRpTjXFA8VRa/IiJUG++qnmv5R2OnpHSy0+GSg9TxM2m7RYPnM7XB4ufon/Yt1AkkUmwPdBcydhdP4jiu4C96Psab7xR+ZTwNJD2/U45xFSZAYh+xutL1rnNYlNPvP42Rme9Vt9K5bvPoSVKSsA8aSakFdwufiX97WHyUdg4oM0YJoxrIrXx4/WD/a/9CbwJSoH+leZgvwExT4C1/iemEvpV6QS/U/T0JGzcCcQap0kVmlX4VF5rJV2I5HCB5CinafSQCkB6r5bgiyPu0I3ELiTY4fu3P2Y3rw8bsJU6v1Le15QC+HMY0rqtZOnTRu4SKvY5Oiq78XvoL/yJF8DM6chTbBvorTtw3vZB6zV0e+5iXn4Jfkbjh19HYMGeOPaTgzdduP3aZex1/GIyMJJY38geAabndh/t2uIGd1Oph+DydVZyMao3X59bgLPl/VYloOeeEYux1nvQPlI4df/LMVKZax6g9CPKQKkGODcyxTYrNBuOIy14bSNIFSZjbAmYz/J7fztE=', + kmsKeyId: 'clhudvbzd000008mn9l2e9dfv', + siteId: null, + projectId: auth.project.electronicCo.id, + updatedBy: auth.user.josh.id, + createdAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + }, + vegetableCoEshop: { + id: 'clgkkfuk6000008mgco7pb5bl', + hash: 'QmZ7GvVBJrrMNNDA8mfN7jNQNnpsX1a7JeQAZH37mMuxWD', + name: 'k51qzi5uqu5djd7wik4gj3evcbnx2okerdrh0swusu07mu2ak1v1r3y70e7k8o', + key: 'oMuJXzNtpSpSOq0Fmqzv9q4KXOj2XcCuRD+BhXJhqdFWHP34tpG2LrlerIT2gxJ+c/oI4Q21UnImBfrWW+uKX65MMtZTmEHL7EYAIY7Zs4keSFiTwgkubipwQT52LJq05xLM9nBG3Q7LS9RrEXL5OQWWKWFqEy4t7Yhc5jffs2XcEsyLjM22rjT0z4+nv5GUayKlet5Vr7LyGKxju05r782Lu38cEjXzTSUuOcSv+gLvBxR8k1AkzTraYTti6zdagkiUU5hckFhnREH+4mKiQ3sTrKAxw3iWCEAmfY4jIgu356h9ULtNUcUWoepI0W050yCyxJmt6r6ITOpTmfEDxNrg3sNkqz/M5DwHsg3cRLDUxOxKA9rFfW22JFMFM5MakxOFQD2TmU+N93j7GxuMaW/Oiv3sNqacr5TGzj4w+vFrVEPUobCh9G+EpzK5WT/JON8If8WPYGBre4wiEXvKkWq5mLbHhL9lZc0wunUS+jlDHG9G2FM+fusU/UiQXpinDRoRWp+9lQCIB9oc0TjGbg3Gg+p8Ktkn0LZr2Uuem+BXncyH01YGJNzf5H8Ja0IMCb8RgHrw6TQrSjL5cNZse+dvfs17QjYQUewMGiLCGGVeHukSRjgCIblWIUrUzpL7gKlLggBJvIXSFtiMJ5oTriJexDZ2gKLad+2Y75HZMF0=', + kmsKeyId: 'clhudvbzd000008mn9l2e9dfv', + projectId: auth.project.vegetableCo.id, + siteId: sites.site.vegetableCoEshop.id, + updatedBy: auth.user.jack.id, + createdAt: DateTime.fromISO('2023-03-22T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-22T08:05:13.641Z').toJSDate(), + }, + vegetableCoBlog: { + id: 'clhuj29rq000308l7d05tep7v', + hash: 'QmRG4xcsmoZuXqKuPz3uVBgvo3GlZ6k1kLZWhmvzuKtDr9s', + name: 'k51qzi5uqu5dmgjnrl5p1dicx4lnkbtube7zao52m8w1zo6mo13nsh9smjopm3', + key: 'QMGBbkwhgx9vX557i0HAK+fATw1gFh1NebBeB0wRsmpKQxMT811Ec7bKJxDA8TEZB0byrdU/U/AnSF1Bs5JQBUceF3jRc+70yDbR1pXfgUN4iK76j/TATbybgsBe0AGuZZgdqhoXWNCPz9X97PErVg1Tuo3TK4V5KPjMEl8B0iOpd3g6SPbRYzyx8aFrc6+X8oRfCPLSzZwqrKPxOP3X0UT0LNkG8llORCZmR0L4EYPvoAgj0aX3d0ykCcmljLngob6tfjPy4Fprj61GJty6e5DjbWRD3STL6VSge188sejPNLe0OrG/imUhw5iMu08AgeXInrU9e69wbkVl4Q7hsyt1COXLSsPEe8HGtKBeqs0x+Do8C7TsXs2jCNeBejuA6O5QwEGm/PqyEDjs+ht6CBF2XuiMyp4UfH5SFgJlBdXuEXeVUa7QQ/2yp6pm8Oom0R1rVoFdrwmRfISH/9Pn+YixwotP373glr/zdgj/mzrrA/F7NKq+n+2Ud8z+OO/oDsUL7L0oTOtmvsDnmmTnJG7VIcXgwKhlgjVmJJaDi1E/9oM3YK+gmZfP5Ax9DVnaniIRaZaEl3vlgvL15VdAkh96GEQsMHNXktL+eELhNJWUzzp4G63jrg47Sh0A/s77QcIUNRJkS1pfDlDx2AkIdIUaUs8d4aPiQ5M573IovOM=', + kmsKeyId: 'clhudvbzd000008mn9l2e9dfv', + projectId: auth.project.vegetableCo.id, + siteId: sites.site.vegetableCoBlog.id, + updatedBy: auth.user.jack.id, + createdAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T08:05:13.641Z').toJSDate(), + }, +}; + +const ensRecord = { + 'vitalik.eth': { + id: '40767ba9-eb85-439b-9369-489459a9376b', + siteId: sites.site.electronicCoBlog.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedBy: auth.user.jack.id, + name: 'vitalik.eth', + ipnsRecordId: ipnsRecord.electronicCoBlog.id, + projectId: auth.project.electronicCo.id, + status: 'CREATED', + errorMessage: null, + }, + 'ens.eth': { + id: 'af470cc1-08d8-4d39-be6f-b0eebc0a6480', + siteId: sites.site.vegetableCoEshop.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedBy: auth.user.jack.id, + name: 'ens.eth', + ipnsRecordId: ipnsRecord.electronicCoForum.id, + projectId: auth.project.electronicCo.id, + status: 'ACTIVE', + errorMessage: null, + }, + 'dries.eth': { + id: '8d3ad502-ec4d-489e-858e-d112656f3511', + siteId: sites.site.electronicCoEshop.id, + createdAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + updatedBy: auth.user.josh.id, + name: 'dries.eth', + ipnsRecordId: ipnsRecord.electronicCoEshop.id, + projectId: auth.project.electronicCo.id, + status: 'VERIFYING', + errorMessage: null, + }, + 'smarttv.eth': { + id: 'clm0mhccs000108ma34jn6ed3', + siteId: sites.site.electronicCoEshop.id, + createdAt: DateTime.fromISO('2023-03-26T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-26T08:05:13.641Z').toJSDate(), + updatedBy: auth.user.josh.id, + name: 'smarttv.eth', + ipnsRecordId: ipnsRecord.electronicCoEshop.id, + projectId: auth.project.electronicCo.id, + status: 'ACTIVE', + errorMessage: null, + }, +}; + +export const ipns = { ipnsRecord, ensRecord }; + +const fleekFunction = { + electronicCoEshop: { + id: 'clgma7ilu000008jzdlwhb76a', + name: 'electronic-co-shop', + slug: 'blue-green-yellow', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T08:05:13.641Z').toJSDate(), + currentDeploymentId: 'clgmajsoo000108moef7f1yt0', + invokeUrl: 'blue-green-yellow.functions.on-fleek.app', + status: 'ACTIVE', + }, + electronicCoDeprecated: { + id: 'clm93utuz000108laem2a4pe4', + name: 'electronic-co-deprecated', + slug: 'blue-gold-yellow', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T11:05:13.641Z').toJSDate(), + currentDeploymentId: null, + invokeUrl: 'blue-gold-yellow.functions.on-fleek.app', + status: 'ACTIVE', + }, + electronicCoBlog: { + id: 'clgma7mmh000108jzd13c50ol', + name: 'electronic-co-blog', + slug: 'white-black-silver', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + currentDeploymentId: null, + invokeUrl: 'white-black-silver.functions.on-fleek.app', + status: 'ACTIVE', + }, + electronicCoVideos: { + id: 'clje32iwx000008js9rjb5uoo', + name: 'electronic-co-videos', + slug: 'green-gold-silver', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T08:05:13.641Z').toJSDate(), + currentDeploymentId: null, + invokeUrl: 'green-gold-silver.functions.on-fleek.app', + status: 'ACTIVE', + }, + electronicCoLanding: { + id: 'clmkp5nn50000mm08yq7hierx', + name: 'electronicCoLanding', + slug: 'red-green-blue', + currentDeploymentId: 'clmz7kxj60003mk08eg5wmtqh', + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + invokeUrl: 'red-green-blue.functions.on-fleek.app', + status: 'ACTIVE', + }, + vegetableCoEshop: { + id: 'clgove94b000208mlhq685zgh', + name: 'vegetable-co-eshop', + slug: 'silver-gold-brown', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-20T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-20T09:05:13.641Z').toJSDate(), + currentDeploymentId: null, + invokeUrl: 'silver-gold-brown.functions.on-fleek.app', + status: 'ACTIVE', + }, + vegetableCoBlog: { + id: 'clgp7c1vv000009lj33l50t08', + name: 'vegetable-co-log', + slug: 'blue-red-black', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-21T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-21T09:05:13.641Z').toJSDate(), + currentDeploymentId: null, + invokeUrl: 'blue-red-black.functions.on-fleek.app', + status: 'ACTIVE', + }, + vegetableCoVideos: { + id: 'clhul20kn000008jz5mng7u19', + name: 'vegetable-co-videos', + slug: 'gold-silver-black', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + currentDeploymentId: null, + invokeUrl: 'gold-silver-black.functions.on-fleek.app', + status: 'ACTIVE', + }, + vegetableCoEmployees: { + id: 'cln1y5h7y000008l96eekbafk', + name: 'vegetableCoEmployees', + slug: 'gold-red-green', + projectId: auth.project.vegetableCo.id, + createdAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-23T09:05:13.641Z').toJSDate(), + currentDeploymentId: null, + invokeUrl: 'gold-red-green.functions.on-fleek.app', + status: 'ACTIVE', + }, + butcherCoEshop: { + id: 'cll5i0ysa0000jt08hasm55du', + name: 'butcherCoEshop', + slug: 'mealy-flabby-painter', + currentDeploymentId: 'clll8sx5v000fl5089z84txnc', + projectId: auth.project.butcherCo.id, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + invokeUrl: 'mealy-flabby-painter.functions.on-fleek.app', + status: 'ACTIVE', + }, + butcherCoBlog: { + id: 'cldm794l70000jo08jdfe5k31', + name: 'butcherCoBlog', + slug: 'super-smoke-cookie', + currentDeploymentId: null, + projectId: auth.project.butcherCo.id, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + invokeUrl: 'super-smoke-cookie.functions.on-fleek.app', + status: 'ACTIVE', + }, + butcherCoVideos: { + id: 'cldkpzpme0000ky08ezzma8uf', + name: 'butcherCoVideos', + slug: 'marble-purple-rain', + currentDeploymentId: 'clmzq83do000dmb08sjjg7x51', + projectId: auth.project.butcherCo.id, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + invokeUrl: 'marble-purple-rain.functions.on-fleek.app', + status: 'ACTIVE', + }, + butcherCoLanding: { + id: 'clo3bnb710004mo0804zrvd02', + name: 'butcherCoLanding', + slug: 'blank-danger-class', + currentDeploymentId: 'clo395e4y0001jn0826iwldrn', + projectId: auth.project.butcherCo.id, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + invokeUrl: 'blank-danger-class.functions.on-fleek.app', + status: 'ACTIVE', + }, + butcherCoEmployees: { + id: 'clo397bwy0003mc08tyjyy5ql', + name: 'butcherCoEmployees', + slug: 'full-danger-tree', + currentDeploymentId: 'clo397bwy0004mc08csz03ska', + projectId: auth.project.butcherCo.id, + createdAt: DateTime.fromISO('2023-08-10T18:34:44.122Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.201Z').toJSDate(), + invokeUrl: 'full-danger-tree.functions.on-fleek.app', + status: 'ACTIVE', + }, +}; + +const fleekFunctionDeployment = { + electronicCoEshopV1: { + id: fleekFunction.electronicCoEshop.currentDeploymentId, + cid: storageIpfs.pin.electronicCoBlogIndexV1.cid, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T09:05:13.641Z').toJSDate(), + fleekFunctionId: fleekFunction.electronicCoBlog.id, + sgx: false, + blake3Hash: null, + }, + electronicCoEshopV2: { + id: 'clgmajwf7000208mo67lnhgu0', + cid: storageIpfs.pin.electronicCoEshopIndexV2.cid, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-24T10:05:13.641Z').toJSDate(), + fleekFunctionId: fleekFunction.electronicCoBlog.id, + sgx: false, + blake3Hash: null, + }, + electornicCoBlogV1Failed: { + id: 'clgmak03f000308modn0j7ltq', + cid: storageIpfs.pin.electronicCoBlogIndexV1.cid, + fleekFunctionId: fleekFunction.electronicCoBlog.id, + sgx: false, + blake3Hash: null, + projectId: auth.project.electronicCo.id, + createdAt: DateTime.fromISO('2023-03-25T09:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T09:05:13.641Z').toJSDate(), + }, + electronicCoBlogV1: { + id: 'clgmak57r000408mo9wd65hpf', + fleekFunctionId: fleekFunction.electronicCoBlog.id, + sgx: false, + blake3Hash: null, + cid: storageIpfs.pin.electronicCoBlogIndexV1.cid, + createdAt: DateTime.fromISO('2023-03-25T10:05:13.641Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-03-25T10:05:13.641Z').toJSDate(), + projectId: auth.project.electronicCo.id, + }, + electronicCoLandingV1: { + id: fleekFunction.electronicCoLanding.currentDeploymentId, + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + fleekFunctionId: fleekFunction.electronicCoLanding.id, + sgx: false, + blake3Hash: null, + projectId: fleekFunction.electronicCoLanding.projectId, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + }, + butcherCoEshopV1: { + id: fleekFunction.butcherCoEshop.currentDeploymentId, + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + fleekFunctionId: fleekFunction.butcherCoEshop.id, + sgx: false, + blake3Hash: null, + projectId: fleekFunction.butcherCoEshop.projectId, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + }, + butcherCoVideosV1: { + id: fleekFunction.butcherCoVideos.currentDeploymentId, + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + fleekFunctionId: fleekFunction.butcherCoVideos.id, + sgx: false, + blake3Hash: null, + projectId: fleekFunction.butcherCoVideos.projectId, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + }, + butcherCoLandingV1: { + id: fleekFunction.butcherCoLanding.currentDeploymentId, + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + fleekFunctionId: fleekFunction.butcherCoLanding.id, + sgx: false, + blake3Hash: null, + projectId: fleekFunction.butcherCoLanding.projectId, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + }, + butcherCoEmployeesV1: { + id: fleekFunction.butcherCoEmployees.currentDeploymentId, + cid: 'bafybeifcesfwifuhcshuobdgw6kod4jzinu4u4v2lzjzdmps3ndaydrsri', + projectId: fleekFunction.butcherCoEmployees.projectId, + fleekFunctionId: fleekFunction.butcherCoEmployees.id, + sgx: false, + blake3Hash: null, + createdAt: DateTime.fromISO('2023-08-21T19:00:51.038Z').toJSDate(), + updatedAt: DateTime.fromISO('2023-08-21T19:04:04.569Z').toJSDate(), + }, +}; + +export const fleekFunctions = { + fleekFunction, + fleekFunctionDeployment, +} as const; + +export default { + auth, + domains, + sites, + ipns, + fleekFunctions, +}; diff --git a/tsconfig.json b/tsconfig.json index 37da0f0..3570af8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,12 +1,17 @@ { "compilerOptions": { + "baseUrl": ".", + "paths": { + "@mocks/*": ["./src/mocks/*"] + }, "allowSyntheticDefaultImports": true, "declaration": true, "emitDeclarationOnly": true, "esModuleInterop": true, - "lib": ["es2020","dom"], + "lib": ["es2020", "dom"], "module": "commonjs", "moduleResolution": "node", + "noErrorTruncation": true, "noImplicitAny": true, "outDir": "dist", "resolveJsonModule": true, @@ -14,9 +19,10 @@ "sourceMap": true, "target": "es2020", "useUnknownInCatchVariables": true, - "noErrorTruncation": true + "strict": true, + "forceConsistentCasingInFileNames": true }, - "include": ["src/index.ts"], "exclude": ["dist", "**/node_modules", "**/*.test.ts"], "extends": "@tsconfig/node16/tsconfig.json", + "include": ["src/**/*.ts", "src/**/*.tsx"] } diff --git a/vitest.config.ts b/vitest.config.ts index 6f288b2..d4e3a4a 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -1,22 +1,22 @@ -import { vitestConfig } from '@fleek-platform/tester'; -import { merge } from 'lodash'; -import { defineConfig, UserConfig } from 'vitest/config'; +import { defineConfig } from 'vitest/config'; +import path from 'path'; -export default defineConfig( - merge(vitestConfig, { - test: { - setupFiles: ['vitest.setup.ts'], - globalSetup: ['vitest.globalSetup.ts'], - server: { - deps: { - // Because of https://github.com/vitest-dev/vitest/issues/2806 - inline: [/^(?!.*vitest).*$/], - }, - }, +export default defineConfig({ + test: { + coverage: { + include: ['src/**'], + all: true, + reporter: ['text', 'json-summary'], }, - resolve: { - // Because vitest cannot mock modules if they are called via `require()` - mainFields: ['module'], + snapshotFormat: { + printBasicPrototype: true, }, - } satisfies UserConfig) -); + setupFiles: ['vitest.setup.ts'], + clearMocks: true, + }, + resolve: { + alias: { + '@mocks': path.resolve(__dirname, './src/mocks') + }, + }, +}); diff --git a/vitest.setup.ts b/vitest.setup.ts new file mode 100644 index 0000000..ed9b702 --- /dev/null +++ b/vitest.setup.ts @@ -0,0 +1,74 @@ +// TODO: Keep only the required environment variables +import { vi } from 'vitest'; + +vi.stubEnv('SECRET_JWT_IDENTITY', 'oAAAKKKKacbdcbdbcd8778767778889AAAAAAA99999'); +vi.stubEnv('SECRET_JWT_CHALLENGE', 'ZWV1ZUNYUXlaWWRpaHZORkR4MCtvQXF0TDg1MGFqVitOTW1kUXZZR2V0ZDVlWVdIL1FIYTh6cGpTQm5aM2x4Ywo='); +vi.stubEnv('WEB3AUTH_CLIENT_ID', '888999lllQpRlWBgt7OA3S6P1MTP3i999000K48cl6xW6bwFBNRH0Smuw83hp_cT_rUFo1OJvgQD0R8ZQ0099l9'); +vi.stubEnv('KMS_KEY_ID', 'clhudvbzd000008mn9l2e9dfv'); +vi.stubEnv('NEXT_PUBLIC_UI__DYNAMIC_ENVIRONMENT_ID', 'abcdef1234567890'); +vi.stubEnv( + 'DYNAMIC_PUBLIC_KEY', + `-----BEGIN PUBLIC KEY----- +MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAlySGksXd0il7TCfNVgfD +BhFoUutXurtgqLjy+P9CMmDoI4P6OP9j6K5ixa29t7U0Sf/fwvbTdjvxROEoX/Gn +RI/Q/1IfmEM5BnnUmQTEGcCXbSmT2XBlaZ31weYiZzc60HXRn6pKCxHmUFGxYdL4 +uHub5NxxsxVtdmBregk4d0y2DdilefyyfRbbF0Mf48qBeNZCPVM3HMsvqirb0Sgi +CvHLnBgJebts5J1kkYqDli3waQaWSysdbzE3s6N0AWMURfqUP+ddWzzd0ZeSoFeV +eXXh5E2/qvMQY/ZKoAhtHeYEl33eSIQSS4V8GJ3lFPQkD12HyDrQPL1fKMKQwAt3 +lZwZgKyR9ExBKaDJG9Ty308OjbMcu7RbS/KoG+vTHZrLDo2H3dsjBb6Ebc9sv4ax +CK2Sruvl3hzgs1wzzR6uLhTCb+HazK2O194gze5fQpJ/xUgHSW3nd0vXQHR96RlQ +GpCDh0HyZjYvx4uVK+eHDiwV2QmXbtSk1mHMB7egwTAGl8j7tITo+bmTS7JCUSG7 +zojn0zo+TGyhWIHWC4EENH2oILhjUM3F1uYFb4BSuHDaMAyQbrJnyg9sK8DfnTa1 +ojybPkp2jysj6/rH7MFh2FVoMXJYpVuWhD8GRNBs1uryevQspgSUuCGnCxyEOIMe +edHrl3mSKY3Pe47SbHqRNE8CAwEAAQ== +-----END PUBLIC KEY-----` +); +vi.stubEnv('SITE_PLACEHOLDER_URL', 'https://ipfs.io/ipfs/QmdG8HaQAYccz22zLgJ33trzu8g6wjF6e48YbBEZhbz342'); +vi.stubEnv('SITE_SLUG_DOMAIN', 'on-fleek-test.app'); +vi.stubEnv('STORAGE_PROXY_DOMAIN', 'https://storage.dev.on-fleek-test.app'); +vi.stubEnv('IPFS_GATEWAY_HOSTNAME', 'gateway-ipfs.fleeksandbox.xyz'); +vi.stubEnv('X_GITHUB_APP_NAME', 'Fleek App'); +vi.stubEnv('X_GITHUB_APP_CLIENT_ID', '97788777'); +vi.stubEnv('X_GITHUB_CALLBACK_URL', 'https://github.service.fleeksandbox.xyz/callback'); +vi.stubEnv('SECRETS_KMS_KEY_ID', 'clhudvbzd000008mn9l2e9dfv'); +vi.stubEnv('SECRETS_KMS_V0_KEY_ID', 'clhudvbzd000008mn9l2e9fgb'); +vi.stubEnv('DEPLOY_GITHUB_SITES_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('PUBLISH_DEPLOYMENT_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('PURGE_SITE_CACHE_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('CANCEL_DEPLOYMENT_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('DELETE_PRIVATE_GATEWAY_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('DELETE_DOMAIN_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('DELETE_ZONE_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('DELETE_SITE_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('DELETE_PROJECT_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('TRIGGER_DEPLOYMENT_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('BUILD_ECS_CLUSTER_ARN', 'some-arn'); +vi.stubEnv('UPLOAD_PIN_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('SAVE_AND_PROPAGATE_PIN_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('REVIEW_TEMPLATE_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('MIGRATE_FLEEK_CO_TEAMS_TO_FLEEK_XYZ_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('INTERNAL_IPFS_STORAGE_HOSTNAME', 'storage-ipfs.internal.fleeksandbox.xyz'); +vi.stubEnv('GATEWAY_ACCESS_KEY_ID', '7838383738accc'); +vi.stubEnv('GATEWAY_SECRET_ACCESS_KEY', 'C00k82Sruvl3hzgs1wzzR6uLhTCb+HbbK2O194gze5fQpJ/xUgHSW3nd0vXQHR96Raa'); +vi.stubEnv('COMMIT_HASH', '0fabad88415cedb2c3c21548afa14a949a088954'); +vi.stubEnv('UI__APP_URL', 'https://app.fleek.xyz'); +vi.stubEnv('IPFS_FILES_S3_BUCKET_NAME', 'some-bucket-name'); +vi.stubEnv('FUNCTIONS_SLUG_DOMAIN', 'dev.on-fleek-functions.app'); +vi.stubEnv('FLEEK_CO_AWS_SECRET_KEY_ID', 'id'); +vi.stubEnv('FLEEK_CO_AWS_SECRET_ACCESS_KEY', '00k82Sruvl3hzgs'); +vi.stubEnv('DISCORD_MARKETING_WEBHOOK_URL', 'https://discord.com/api/webhooks/123456/webhook-token'); +vi.stubEnv('ATTIO_CLIENT_SECRET', 'some-secret'); +vi.stubEnv('ATTIO_API_URL', 'https://test.attio.com/api/v2'); +vi.stubEnv('ATTIO_DASHBOARD_URL', 'https://test.attio.com/dashboard'); +vi.stubEnv('DELETE_USER_WORKFLOW_ARN', 'some-arn'); +vi.stubEnv('WEB3_STORAGE_PRIVATE_KEY', `MgCabeTOY2UA/z7ZI99z0a7KVuAAH09jQGL23v9piA7+RHu0A90HlUizfDnoY2tUogZ9NFsKeLLIA13kgXdMQNL3d/Fk=`); +vi.stubEnv( + 'WEB3_STORAGE_PROOF', + 'XRoeDhkaWQ6a2VkYqDli3waQaWSysdbzE3s6N0AWkYqDli3waQaWSysdbzE3s6N0AWMURfqUP+ddWzzd0ZeSMURfqUP+ddWzzd0ZeS5Ono2TWtrdlU2NkYqDli3waQaWSysdbzE3s6N0AWMURfqUP+ddWzzd0ZeSHEzVUZiTUtHR' +); +vi.stubEnv('REDIS_ENDPOINT_WITH_AUTH', 'redis://localhost:6379'); +vi.stubEnv('REDIS_ENDPOINT', 'redis://localhost:6379'); +vi.stubEnv('REDIS_TOKEN', 'redis-token'); + +vi.stubEnv('SDK__IPFS__STORAGE_API_URL', 'ipfs_storage_mock.fleeksandbox.xyz'); +vi.stubEnv('SDK__UPLOAD_PROXY_API_URL', 'upload_proxy_mock.fleeksandbox.xyz');