diff --git a/packages/cloudflare-workers-bindings-extension/package.json b/packages/cloudflare-workers-bindings-extension/package.json index 89ce6b826dbf..7477da1142ba 100644 --- a/packages/cloudflare-workers-bindings-extension/package.json +++ b/packages/cloudflare-workers-bindings-extension/package.json @@ -123,5 +123,9 @@ "workers-sdk": { "prerelease": true, "type": "extension" + }, + "dependencies": { + "cloudflare": "^3.5.0", + "undici": "^5.28.4" } } diff --git a/packages/cloudflare-workers-bindings-extension/src/api.ts b/packages/cloudflare-workers-bindings-extension/src/api.ts new file mode 100644 index 000000000000..fdcee1f3f5a9 --- /dev/null +++ b/packages/cloudflare-workers-bindings-extension/src/api.ts @@ -0,0 +1,35 @@ +import { readFile } from "fs/promises"; +import path from "path"; +import type Cloudflare from "cloudflare"; + +export async function getSdk(workspaceRoot: string): Promise { + const wrangler = path.join( + path.join( + workspaceRoot, + "node_modules", + "wrangler", + "wrangler-dist", + "cli.js" + ) + ); + + const { getSdk } = await import(wrangler); + + return getSdk(); +} + +export async function parseTOML(workspaceRoot: string, file: string) { + const wrangler = path.join( + path.join( + workspaceRoot, + "node_modules", + "wrangler", + "wrangler-dist", + "cli.js" + ) + ); + + const { parseTOML } = await import(wrangler); + + return parseTOML(await readFile(file, "utf8")); +} diff --git a/packages/cloudflare-workers-bindings-extension/src/extension.ts b/packages/cloudflare-workers-bindings-extension/src/extension.ts index c0a02ae89487..b638cc717f6a 100644 --- a/packages/cloudflare-workers-bindings-extension/src/extension.ts +++ b/packages/cloudflare-workers-bindings-extension/src/extension.ts @@ -1,13 +1,14 @@ import crypto from "crypto"; import path from "path"; import * as vscode from "vscode"; +import { getSdk } from "./api"; import { showInputBox, showQuickPick } from "./basicInput"; import { multiStepInput } from "./multiStepInput"; import { quickOpen } from "./quickOpen"; import { Binding, DepNodeProvider } from "./workerBindings"; const encoder = new TextEncoder(); -export function activate(context: vscode.ExtensionContext) { +export async function activate(context: vscode.ExtensionContext) { const rootPath = vscode.workspace.workspaceFolders && vscode.workspace.workspaceFolders.length > 0 @@ -20,18 +21,19 @@ export function activate(context: vscode.ExtensionContext) { const watcher = vscode.workspace.createFileSystemWatcher("**/wrangler.toml"); context.subscriptions.push(watcher); - // watcher.onDidChange((uri) => { - // console.log("really changed"); - // workerBindingsProvider.refresh(); - // }); // listen to files being changed + watcher.onDidChange((uri) => { + console.log("really changed"); + workerBindingsProvider.refresh(); + }); // listen to files being changed vscode.window.registerTreeDataProvider( "workerBindings", workerBindingsProvider ); - vscode.commands.registerCommand("workerBindings.refreshEntry", () => - workerBindingsProvider.refresh() - ); + vscode.commands.registerCommand("workerBindings.refreshEntry", async () => { + workerBindingsProvider.refresh(); + console.log(await (await getSdk(rootPath!)).accounts.list()); + }); vscode.commands.registerCommand("extension.openPackageOnNpm", (moduleName) => vscode.commands.executeCommand( "vscode.open", diff --git a/packages/cloudflare-workers-bindings-extension/src/multiStepInput.ts b/packages/cloudflare-workers-bindings-extension/src/multiStepInput.ts index 6a1ea8112246..96bfefeb21c8 100644 --- a/packages/cloudflare-workers-bindings-extension/src/multiStepInput.ts +++ b/packages/cloudflare-workers-bindings-extension/src/multiStepInput.ts @@ -4,6 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import crypto from "crypto"; import path from "path"; +import { setTimeout } from "timers/promises"; import { CancellationToken, Disposable, @@ -18,6 +19,7 @@ import { window, workspace, } from "vscode"; +import { getSdk, parseTOML } from "./api"; const encoder = new TextEncoder(); const kvApiResponse = { @@ -127,11 +129,24 @@ export async function multiStepInput( input: MultiStepInput, state: Partial ) { + const sdk = await getSdk(rootPath); + console.log(sdk); + + const toml = await parseTOML( + rootPath, + path.join(rootPath, "wrangler.toml") + ); + console.log(toml); + // TODO: support Wrangler account ID inference + caching, with dialog to choose account + const kvNamespaces = await sdk.kv.namespaces.list({ + account_id: toml.account_id, + per_page: 100, + }); let existing = await input.showQuickPick({ title, step: 2, totalSteps: 4, - items: kvApiResponse.result.map( + items: kvNamespaces.result.map( (r) => new BindingType( r.title, diff --git a/packages/cloudflare-workers-bindings-extension/src/workerBindings.ts b/packages/cloudflare-workers-bindings-extension/src/workerBindings.ts index d4c16a14ffac..ea9b86a20234 100644 --- a/packages/cloudflare-workers-bindings-extension/src/workerBindings.ts +++ b/packages/cloudflare-workers-bindings-extension/src/workerBindings.ts @@ -46,6 +46,7 @@ export class DepNodeProvider implements vscode.TreeDataProvider { const { unstable_getMiniflareWorkerOptions } = await import(wrangler); console.log(path.join(this.workspaceRoot!, "wrangler.toml")); + // TODO: multiroot workspaces const options = await unstable_getMiniflareWorkerOptions( path.join(this.workspaceRoot!, "wrangler.toml") ); diff --git a/packages/wrangler/package.json b/packages/wrangler/package.json index 4f287e5a94b1..7d07dd697299 100644 --- a/packages/wrangler/package.json +++ b/packages/wrangler/package.json @@ -75,6 +75,7 @@ "@esbuild-plugins/node-modules-polyfill": "^0.2.2", "blake3-wasm": "^2.1.5", "chokidar": "^3.5.3", + "cloudflare": "^3.5.0", "esbuild": "0.17.19", "miniflare": "workspace:*", "nanoid": "^3.3.3", diff --git a/packages/wrangler/src/cfetch/internal.ts b/packages/wrangler/src/cfetch/internal.ts index e7cddb3a9bcb..2906e9a2f0e6 100644 --- a/packages/wrangler/src/cfetch/internal.ts +++ b/packages/wrangler/src/cfetch/internal.ts @@ -1,5 +1,6 @@ import assert from "node:assert"; -import { fetch, File, FormData, Headers, Response } from "undici"; +import Cloudflare from "cloudflare"; +import { fetch, File, FormData, Headers, Request, Response } from "undici"; import { version as wranglerVersion } from "../../package.json"; import { getCloudflareApiBaseUrl } from "../environment-variables/misc-variables"; import { UserError } from "../errors"; @@ -117,6 +118,22 @@ export async function fetchInternal( } } +export function getSdk() { + return new Cloudflare({ + async fetch(info, init) { + const request = new Request(info, init); + const url = new URL(request.url); + + return performApiFetch( + url.pathname.split("/client/v4")[1], + { ...request }, + url.searchParams, + request.signal + ); + }, + }); +} + function truncate(text: string, maxLength: number): string { const { length } = text; if (length <= maxLength) { diff --git a/packages/wrangler/src/cli.ts b/packages/wrangler/src/cli.ts index eea6469827db..99a8735cd658 100644 --- a/packages/wrangler/src/cli.ts +++ b/packages/wrangler/src/cli.ts @@ -58,3 +58,7 @@ const generateASSETSBinding: ( // eslint-disable-next-line @typescript-eslint/no-var-requires require("./miniflare-cli/assets").default; export { generateASSETSBinding as unstable_generateASSETSBinding }; + +export { getSdk } from "./cfetch/internal"; + +export { parseTOML } from "./parse"; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3d1cc2d4f788..2e9f5203cf1c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -799,6 +799,13 @@ importers: version: 5.28.4 packages/cloudflare-workers-bindings-extension: + dependencies: + cloudflare: + specifier: ^3.5.0 + version: 3.5.0(encoding@0.1.13) + undici: + specifier: ^5.28.4 + version: 5.28.4 devDependencies: '@types/mocha': specifier: ^10.0.7 @@ -1015,6 +1022,7 @@ importers: version: 8.49.0 eslint-config-turbo: specifier: latest +<<<<<<< HEAD <<<<<<< HEAD version: 2.1.3(eslint@8.49.0) ||||||| parent of e6d310e4e (update lockfile) @@ -1022,6 +1030,11 @@ importers: ======= version: 2.0.14(eslint@8.49.0) >>>>>>> e6d310e4e (update lockfile) +||||||| parent of 7cb41802e (sdk) + version: 2.0.14(eslint@8.49.0) +======= + version: 2.1.1(eslint@8.49.0) +>>>>>>> 7cb41802e (sdk) eslint-plugin-import: specifier: 2.26.x version: 2.26.0(@typescript-eslint/parser@6.10.0(eslint@8.49.0)(typescript@5.5.4))(eslint@8.49.0) @@ -1713,6 +1726,19 @@ importers: chokidar: specifier: ^3.5.3 version: 3.5.3 +<<<<<<< HEAD +||||||| parent of 7cb41802e (sdk) + date-fns: + specifier: ^3.6.0 + version: 3.6.0 +======= + cloudflare: + specifier: ^3.5.0 + version: 3.5.0(encoding@0.1.13) + date-fns: + specifier: ^3.6.0 + version: 3.6.0 +>>>>>>> 7cb41802e (sdk) esbuild: specifier: 0.17.19 version: 0.17.19 @@ -3964,6 +3990,9 @@ packages: '@types/node@12.20.47': resolution: {integrity: sha512-BzcaRsnFuznzOItW1WpQrDHM7plAa7GIDMZ6b5pnMbkqEtM/6WCOhvZar39oeMQP79gwvFUWjjptE7/KGcNqFg==} + '@types/node@18.19.48': + resolution: {integrity: sha512-7WevbG4ekUcRQSZzOwxWgi5dZmTak7FaxXDoW7xVxPBmKx1rTzfmRLkeCgJzcbBnOV2dkhAPc8cCeT6agocpjg==} + '@types/node@20.12.12': resolution: {integrity: sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==} @@ -4318,6 +4347,10 @@ packages: abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} + abort-controller@3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + accepts@1.3.8: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} @@ -4358,6 +4391,10 @@ packages: resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} engines: {node: '>= 14'} + agentkeepalive@4.5.0: + resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} + engines: {node: '>= 8.0.0'} + aggregate-error@3.1.0: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} @@ -4930,6 +4967,9 @@ packages: resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} engines: {node: '>=0.8'} + cloudflare@3.5.0: + resolution: {integrity: sha512-sIRZ4K2WQf8tZ74gZGan3u6+50VY1cB6uNc9XIGGLQa7Ti/nrvvadirm8EPVFlQMG11PUXPsX1Buheh4MPLiew==} + clsx@1.2.1: resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} engines: {node: '>=6'} @@ -5595,6 +5635,7 @@ packages: peerDependencies: eslint: '>=7.0.0' +<<<<<<< HEAD <<<<<<< HEAD eslint-config-turbo@2.1.3: resolution: {integrity: sha512-smdkhd01V/e/I4EjJxaZA1kxZ1vdFCHpyryolxLtRBP0bZTrHDYh1H6NAyZ3Fy1jkhsQzXw+L+6m17ygROvNFw==} @@ -5605,6 +5646,13 @@ packages: eslint-config-turbo@2.0.14: resolution: {integrity: sha512-VkzAH/AR1/fjMsqzuurfWkEgyGVTTzfZQB1umDB8dMWzFhqo8p/2KEWbvRQLEvSFxjVfeJl5ErQAJ7h7DYglxg==} >>>>>>> e6d310e4e (update lockfile) +||||||| parent of 7cb41802e (sdk) + eslint-config-turbo@2.0.14: + resolution: {integrity: sha512-VkzAH/AR1/fjMsqzuurfWkEgyGVTTzfZQB1umDB8dMWzFhqo8p/2KEWbvRQLEvSFxjVfeJl5ErQAJ7h7DYglxg==} +======= + eslint-config-turbo@2.1.1: + resolution: {integrity: sha512-JJF8SZErmgKCGkt124WUmTt0sQ5YLvPo2YxDsfzn9avGJC7/BQIa+3FZoDb3zeYYsZx91pZ6htQAJaKK8NQQAg==} +>>>>>>> 7cb41802e (sdk) peerDependencies: eslint: '>6.6.0' @@ -5678,6 +5726,7 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 +<<<<<<< HEAD <<<<<<< HEAD eslint-plugin-turbo@2.1.3: resolution: {integrity: sha512-I9vPArzyOSYa6bm0iMCgD07MgdExc1VK2wGuVz21g4BUdj83w7mDKyCXR2rwOtCEW+wemFwgxanJ81imQZijNg==} @@ -5688,6 +5737,13 @@ packages: eslint-plugin-turbo@2.0.14: resolution: {integrity: sha512-E++MSAEeWZTU0FYARrfakMPq+7XeltqeY4JBDQTzbGEWG3kgYJPeYBMWsypcvBujVihQLlMu0S6ImnfV692mHg==} >>>>>>> e6d310e4e (update lockfile) +||||||| parent of 7cb41802e (sdk) + eslint-plugin-turbo@2.0.14: + resolution: {integrity: sha512-E++MSAEeWZTU0FYARrfakMPq+7XeltqeY4JBDQTzbGEWG3kgYJPeYBMWsypcvBujVihQLlMu0S6ImnfV692mHg==} +======= + eslint-plugin-turbo@2.1.1: + resolution: {integrity: sha512-E/34kdQd0n3RP18+e0DSV0f3YTSCOojUh1p4X0Xrho2PBYmJ3umSnNo9FhkZt6UDACl+nBQcYTFkRHMz76lJdw==} +>>>>>>> 7cb41802e (sdk) peerDependencies: eslint: '>6.6.0' @@ -5769,6 +5825,10 @@ packages: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} + event-target-shim@5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} @@ -5956,6 +6016,9 @@ packages: resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} engines: {node: '>=14'} + form-data-encoder@1.7.2: + resolution: {integrity: sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==} + form-data-encoder@2.1.4: resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==} engines: {node: '>= 14.17'} @@ -5968,6 +6031,10 @@ packages: resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} engines: {node: '>=0.4.x'} + formdata-node@4.4.1: + resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} + engines: {node: '>= 12.20'} + forwarded@0.2.0: resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} engines: {node: '>= 0.6'} @@ -6329,6 +6396,21 @@ packages: resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} engines: {node: '>=14.18.0'} +<<<<<<< HEAD +||||||| parent of 7cb41802e (sdk) + human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + +======= + human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + + humanize-ms@1.2.1: + resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} + +>>>>>>> 7cb41802e (sdk) hyphenate-style-name@1.0.4: resolution: {integrity: sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==} @@ -7339,6 +7421,7 @@ packages: node-addon-api@4.3.0: resolution: {integrity: sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==} +<<<<<<< HEAD node-fetch-native@1.6.4: resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==} @@ -7348,6 +7431,13 @@ packages: resolution: {integrity: sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==} >>>>>>> e6d310e4e (update lockfile) +||||||| parent of 7cb41802e (sdk) +======= + node-domexception@1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + engines: {node: '>=10.5.0'} + +>>>>>>> 7cb41802e (sdk) node-fetch@2.6.11: resolution: {integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==} engines: {node: 4.x || >=6.0.0} @@ -9444,6 +9534,14 @@ packages: wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + web-streams-polyfill@3.3.3: + resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} + engines: {node: '>= 8'} + + web-streams-polyfill@4.0.0-beta.3: + resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} + engines: {node: '>= 14'} + webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} @@ -11846,6 +11944,10 @@ snapshots: '@types/node@12.20.47': {} + '@types/node@18.19.48': + dependencies: + undici-types: 5.26.5 + '@types/node@20.12.12': dependencies: undici-types: 5.26.5 @@ -12415,6 +12517,10 @@ snapshots: abbrev@1.1.1: {} + abort-controller@3.0.0: + dependencies: + event-target-shim: 5.0.1 + accepts@1.3.8: dependencies: mime-types: 2.1.35 @@ -12460,6 +12566,10 @@ snapshots: transitivePeerDependencies: - supports-color + agentkeepalive@4.5.0: + dependencies: + humanize-ms: 1.2.1 + aggregate-error@3.1.0: dependencies: clean-stack: 2.2.0 @@ -13172,6 +13282,21 @@ snapshots: clone@2.1.2: {} + cloudflare@3.5.0(encoding@0.1.13): + dependencies: + '@types/node': 18.19.48 + '@types/node-fetch': 2.6.11 + '@types/qs': 6.9.7 + abort-controller: 3.0.0 + agentkeepalive: 4.5.0 + form-data-encoder: 1.7.2 + formdata-node: 4.4.1 + node-fetch: 2.6.11(encoding@0.1.13) + qs: 6.10.3 + web-streams-polyfill: 3.3.3 + transitivePeerDependencies: + - encoding + clsx@1.2.1: {} cmd-shim@4.1.0: @@ -13960,6 +14085,7 @@ snapshots: dependencies: eslint: 8.57.0 +<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD eslint-config-turbo@2.1.3(eslint@8.49.0): @@ -13973,9 +14099,15 @@ snapshots: ======= eslint-config-turbo@2.0.14(eslint@8.49.0): >>>>>>> e6d310e4e (update lockfile) +||||||| parent of 7cb41802e (sdk) + eslint-config-turbo@2.0.14(eslint@8.49.0): +======= + eslint-config-turbo@2.1.1(eslint@8.49.0): +>>>>>>> 7cb41802e (sdk) dependencies: eslint: 8.49.0 <<<<<<< HEAD +<<<<<<< HEAD <<<<<<< HEAD eslint-plugin-turbo: 2.1.3(eslint@8.49.0) ||||||| parent of 3b59747bc (first pass) @@ -13988,6 +14120,11 @@ snapshots: ======= eslint-plugin-turbo: 2.0.14(eslint@8.49.0) >>>>>>> e6d310e4e (update lockfile) +||||||| parent of 7cb41802e (sdk) + eslint-plugin-turbo: 2.0.14(eslint@8.49.0) +======= + eslint-plugin-turbo: 2.1.1(eslint@8.49.0) +>>>>>>> 7cb41802e (sdk) eslint-import-resolver-node@0.3.7: dependencies: @@ -14104,6 +14241,7 @@ snapshots: semver: 6.3.1 string.prototype.matchall: 4.0.8 +<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD eslint-plugin-turbo@2.1.3(eslint@8.49.0): @@ -14117,6 +14255,11 @@ snapshots: ======= eslint-plugin-turbo@2.0.14(eslint@8.49.0): >>>>>>> e6d310e4e (update lockfile) +||||||| parent of 7cb41802e (sdk) + eslint-plugin-turbo@2.0.14(eslint@8.49.0): +======= + eslint-plugin-turbo@2.1.1(eslint@8.49.0): +>>>>>>> 7cb41802e (sdk) dependencies: dotenv: 16.0.3 eslint: 8.49.0 @@ -14258,6 +14401,8 @@ snapshots: etag@1.8.1: {} + event-target-shim@5.0.1: {} + eventemitter3@4.0.7: {} events@3.3.0: {} @@ -14545,6 +14690,8 @@ snapshots: cross-spawn: 7.0.3 signal-exit: 4.0.2 + form-data-encoder@1.7.2: {} + form-data-encoder@2.1.4: {} form-data@4.0.0: @@ -14555,6 +14702,11 @@ snapshots: format@0.2.2: {} + formdata-node@4.4.1: + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 4.0.0-beta.3 + forwarded@0.2.0: {} fp-ts@2.13.1: {} @@ -14996,6 +15148,18 @@ snapshots: human-signals@4.3.1: {} +<<<<<<< HEAD +||||||| parent of 7cb41802e (sdk) + human-signals@5.0.0: {} + +======= + human-signals@5.0.0: {} + + humanize-ms@1.2.1: + dependencies: + ms: 2.1.3 + +>>>>>>> 7cb41802e (sdk) hyphenate-style-name@1.0.4: {} iconv-lite@0.4.24: @@ -15961,6 +16125,8 @@ snapshots: node-addon-api@4.3.0: {} + node-domexception@1.0.0: {} + node-fetch@2.6.11(encoding@0.1.13): dependencies: whatwg-url: 5.0.0 @@ -18306,6 +18472,10 @@ snapshots: dependencies: defaults: 1.0.3 + web-streams-polyfill@3.3.3: {} + + web-streams-polyfill@4.0.0-beta.3: {} + webidl-conversions@3.0.1: {} well-known-symbols@2.0.0: {}