@tscircuit/cli 0.1.93 → 0.1.94

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -49,6 +49,7 @@ Commands:
49
49
  config Manage tscircuit CLI configuration
50
50
  export [options] <file> Export tscircuit code to various formats
51
51
  add <component> Add a component from tscircuit.com
52
+ upgrade Upgrade CLI to the latest version
52
53
  help [command] display help for command
53
54
  ```
54
55
  <!-- END_HELP_OUTPUT -->
package/dist/main.js CHANGED
@@ -433425,7 +433425,7 @@ import readline from "node:readline";
433425
433425
  import { execSync as execSync2 } from "node:child_process";
433426
433426
  var import_semver = __toESM2(require_semver2(), 1);
433427
433427
  // package.json
433428
- var version = "0.1.92";
433428
+ var version = "0.1.93";
433429
433429
  var package_default = {
433430
433430
  name: "@tscircuit/cli",
433431
433431
  version,
@@ -433436,7 +433436,7 @@ var package_default = {
433436
433436
  "@tscircuit/core": "^0.0.353",
433437
433437
  "@tscircuit/eval": "^0.0.152",
433438
433438
  "@tscircuit/fake-snippets": "^0.0.23",
433439
- "@tscircuit/file-server": "^0.0.14",
433439
+ "@tscircuit/file-server": "^0.0.19",
433440
433440
  "@tscircuit/runframe": "^0.0.341",
433441
433441
  "@types/bun": "^1.2.2",
433442
433442
  "@types/configstore": "^6.0.2",
@@ -434299,6 +434299,7 @@ init_lib();
434299
434299
  init_lib();
434300
434300
  init_lib();
434301
434301
  init_lib();
434302
+ init_lib();
434302
434303
  var fileSchema = z.object({
434303
434304
  file_id: z.string(),
434304
434305
  file_path: z.string(),
@@ -434533,7 +434534,7 @@ var get_default = withRouteSpec({
434533
434534
  <p><span class="label">Created At:</span> ${file.created_at}</p>
434534
434535
  </div>
434535
434536
  <h2>Content:</h2>
434536
- <pre>${file.text_content}</pre>
434537
+ <pre>${file.text_content.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;")}</pre>
434537
434538
  </div>
434538
434539
  </body>
434539
434540
  </html>`, {
@@ -434760,6 +434761,70 @@ var health_default = withRouteSpec({
434760
434761
  })((req, ctx) => {
434761
434762
  return ctx.json({ ok: true });
434762
434763
  });
434764
+ var PROXY_HEADERS = [
434765
+ "X-Target-Url",
434766
+ "X-Sender-Origin",
434767
+ "X-Sender-Host",
434768
+ "X-Sender-Referer",
434769
+ "X-Sender-User-Agent",
434770
+ "X-Sender-Cookie"
434771
+ ];
434772
+ var proxy_default = withRouteSpec({
434773
+ methods: ["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"],
434774
+ jsonResponse: z.any()
434775
+ })(async (req, ctx) => {
434776
+ const targetUrl = req.headers.get("X-Target-Url");
434777
+ if (!targetUrl) {
434778
+ return ctx.json({ error: "X-Target-Url header is required" }, { status: 400 });
434779
+ }
434780
+ let body = undefined;
434781
+ if (["POST", "PUT", "PATCH"].includes(req.method)) {
434782
+ body = await req.clone().text();
434783
+ }
434784
+ const headers = new Headers(req.headers);
434785
+ const senderOrigin = req.headers.get("X-Sender-Origin");
434786
+ if (senderOrigin) {
434787
+ headers.set("Origin", senderOrigin);
434788
+ }
434789
+ const senderHost = req.headers.get("X-Sender-Host");
434790
+ if (senderHost) {
434791
+ headers.set("Host", senderHost);
434792
+ }
434793
+ const senderReferer = req.headers.get("X-Sender-Referer");
434794
+ if (senderReferer) {
434795
+ headers.set("Referer", senderReferer);
434796
+ }
434797
+ const senderUserAgent = req.headers.get("X-Sender-User-Agent");
434798
+ if (senderUserAgent) {
434799
+ headers.set("User-Agent", senderUserAgent);
434800
+ }
434801
+ const senderCookie = req.headers.get("X-Sender-Cookie");
434802
+ if (senderCookie) {
434803
+ headers.set("Cookie", senderCookie);
434804
+ }
434805
+ for (const header of PROXY_HEADERS) {
434806
+ headers.delete(header);
434807
+ }
434808
+ headers.delete("content-encoding");
434809
+ headers.delete("accept-encoding");
434810
+ try {
434811
+ const response = await fetch(targetUrl, {
434812
+ method: req.method,
434813
+ headers,
434814
+ body: ["GET", "HEAD"].includes(req.method) ? undefined : body
434815
+ });
434816
+ const responseHeaders = new Headers(response.headers);
434817
+ responseHeaders.delete("content-encoding");
434818
+ return new Response(response.body, {
434819
+ status: response.status,
434820
+ statusText: response.statusText,
434821
+ headers: responseHeaders
434822
+ });
434823
+ } catch (error) {
434824
+ console.error("Proxy error:", error);
434825
+ return ctx.json({ error: { message: "Failed to proxy request" } }, { status: 502 });
434826
+ }
434827
+ });
434763
434828
  var routes_default = withRouteSpec({
434764
434829
  methods: ["GET"],
434765
434830
  jsonResponse: z.any()
@@ -434807,6 +434872,7 @@ var routeMapWithHandlers = {
434807
434872
  "/files/list": list_default4,
434808
434873
  "/files/upsert": upsert_default,
434809
434874
  "/health": health_default,
434875
+ "/proxy": proxy_default,
434810
434876
  "/": routes_default
434811
434877
  };
434812
434878
  var winterSpec = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tscircuit/cli",
3
- "version": "0.1.93",
3
+ "version": "0.1.94",
4
4
  "main": "dist/main.js",
5
5
  "devDependencies": {
6
6
  "@babel/standalone": "^7.26.9",
@@ -8,7 +8,7 @@
8
8
  "@tscircuit/core": "^0.0.353",
9
9
  "@tscircuit/eval": "^0.0.152",
10
10
  "@tscircuit/fake-snippets": "^0.0.23",
11
- "@tscircuit/file-server": "^0.0.14",
11
+ "@tscircuit/file-server": "^0.0.19",
12
12
  "@tscircuit/runframe": "^0.0.341",
13
13
  "@types/bun": "^1.2.2",
14
14
  "@types/configstore": "^6.0.2",