glitchgrab 1.54.0 → 1.56.0

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
@@ -754,6 +754,29 @@ if (!result.success) {
754
754
  }
755
755
  ```
756
756
 
757
+ ### Attach the logs that led up to it
758
+
759
+ A stack says where a job broke; the lines it printed before that usually say
760
+ why. Pass them as `logs` — an array of lines or one string:
761
+
762
+ ```ts
763
+ const lines: string[] = [];
764
+ const log = (line: string) => { lines.push(line); console.log(line); };
765
+
766
+ try {
767
+ log(`[filing] starting return ${returnId}`);
768
+ await submitReturn(returnId);
769
+ } catch (error) {
770
+ await reportServerError(error, { context: "worker/filing", logs: lines });
771
+ throw error;
772
+ }
773
+ ```
774
+
775
+ They arrive on the issue as a `.log` file named after `context`: the start is
776
+ previewed in the issue body, the whole file is kept for download. Only the last
777
+ 200,000 characters are sent. Logs are not part of the grouping key — the same
778
+ error with different logs still lands on one issue.
779
+
757
780
  ### Set the token once
758
781
 
759
782
  ```ts
@@ -795,6 +818,7 @@ reportServerError(error: unknown, options?: {
795
818
  // anything else is rejected 400 by the API
796
819
  pageUrl?: string; // a real request URL, when there is one
797
820
  metadata?: Record<string, string>;
821
+ logs?: string | string[]; // attached as <context>.log — last 200,000 chars
798
822
  reporter?: { id?: string; name?: string; email?: string; phone?: string };
799
823
  enableInDevelopment?: boolean;
800
824
  })
package/dist/index.js CHANGED
@@ -7650,6 +7650,7 @@ var DARK = {
7650
7650
  input: "#1c1c1c",
7651
7651
  danger: "#f87171"
7652
7652
  };
7653
+ var GLITCHGRAB_LOGO = "data:image/webp;base64,UklGRp4EAABXRUJQVlA4WAoAAAAQAAAALwAALwAAQUxQSEUBAAABkKNt27FHd2y7tm0nG7Dt9FblLODfQVLZdjpVKm1nbDyjD+8zaiNiAqCiqU9eFxFRf0moLcTbVQ0efybJr9dzre5i3DRXpPjlSLR6TprnpOrnkUCVUg5J9ZeNWipo9XwmkaO2imzGSPBOsALbdRJ+ESxLZ4IYHjvI6SGWS/pSyR95UI+E4wkx/Rj/Kw2x3db/yfklH8r8SUOMtw0A21tOlABUEes+YJDXsbHpMa/PwT6feFF1JjF/7OL2H9jPLpdd+BdmHTa3vL7GYZ7XjTVaeM0ALq9Z5QAY5XRqCSDqE6MaANCa4HNm9RMCXrEpw68buIxqS+iO8ThyhLTtPofXYZAbdCHuYxHkBx+KelkEpU6LYg7CoVy/+4OAEUeomrSh1lG5FlTWz95U47DGGgL1E3uPvsq6msmxgmjTkOpHibYEWygHAFZQOCAyAwAA8A8AnQEqMAAwAD5RIo5FI6IhFVqtVDgFBLYAWI97RVZAlk7wMR3bb89h6MN4A3i/9zvSAphf3vH3/0HC3r5457/O2wKZ749Pc73B/1W60i0ECBPawzM4trUtZQ8JtnKZx+cwouZ82/u4HWY5VC5OeeUWNuV9ET+TBNS1eRgMFyatx05O0aeAAAD+/7CUHtrj64E06fYjHM7Q6zHWgTd3U0C4VJrAF/R5hdPSi82mSQBF5QsO33GBZY8X0rVCdP/z4T1K4kahIp5q2b7v5a27kvLvT6COf70O+y7YmvruHd6RDcU1mBjIlm8lam4muqzNQUzxqeGx/jHt+J9b9i8HosTQeKYzbaueiRUr4JsXe8LUT5L/a/f/yKVjFFWpgGv10mBFfcEOWZIh8E05Ycfl3+usHVjX3TPD8CV0qYDRUWvkEliByCh0+LlmWIx+hfITiHKBEMnfETAvxOR9mmb+uq6rxA8jM4co//NoOTG0t5aeCEFeay8OZB54GerisvQV9nQEPqaHCz11f/LqoYK741K+CrbQxFXH6J5eaWL/GeJTngtDoj+gA9j9xAtjY1KpSt3MVV49bD2yr7RQ11A8S1rx5/AKmEPnvuMe8rjGBOnNy/3NLI0Et/IIL90XbGd1iwnOBKQo4L+bILSQoJBkGlRVBzLnBbHhGD61nqtu6E+abGIujbnpSkr0CGTkADsl+GhZiKsDk+/rrkzlRXKETXRvEkEijwm9kSEEyvZih4Q3G83MyTTncMY/rK3kygpJrXRvct4f2jYwk9v7+XSypDagws/032dx8xxVJXSXJ39MjKKEIFn7OWNuQHgTMtjrOa/oqen5l2w4X9ExYGneasi4Qx+vFjUCcm2WmUocqcP2PYmXWCYvCb/9GTfej/GE0Ow9xM4Ig9NrrL8g/wNMKu3W3GWpCEXljm6jSM9G1/EAwjoAAwE3M4pBphXhZ3lptxATFI3PHvirASzzBxTQOZKTE8kD8+cUUTnpLznfoM4L9zihNIlJl4NfTbxtKZpeaNMuzqZGwOxPBGzt/oi2nkR2B9/7ciZxk3EhbqrxGpEZ0VB0DldyrzwuF/G80twAAAA=";
7653
7654
  var WEEKDAYS = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"];
7654
7655
  var DAY_MS = 864e5;
7655
7656
  var ZONE_PAD_MS = 14 * 36e5;
@@ -7924,6 +7925,55 @@ function BookingDialog({
7924
7925
  const selectedEnd = selected ? (_e = selected.endsAt) != null ? _e : new Date(new Date(selected.startsAt).getTime() + page.slotMinutes * 6e4).toISOString() : null;
7925
7926
  const monthDate = new Date(keyToUtc(`${month}-01`));
7926
7927
  const muted = { color: t.muted };
7928
+ const credit = /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
7929
+ "div",
7930
+ {
7931
+ style: {
7932
+ marginTop: wide ? whatsappUrl && step === "slots" ? 14 : "auto" : 0,
7933
+ padding: wide ? 0 : "4px 20px 18px",
7934
+ display: "flex",
7935
+ justifyContent: wide ? "flex-start" : "center"
7936
+ },
7937
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
7938
+ "a",
7939
+ {
7940
+ href: "https://glitchgrab.dev/?utm_source=booking-dialog",
7941
+ target: "_blank",
7942
+ rel: "noreferrer",
7943
+ className: "gg-bk-ghost",
7944
+ style: {
7945
+ display: "inline-flex",
7946
+ alignItems: "center",
7947
+ gap: 7,
7948
+ padding: "4px 11px 4px 4px",
7949
+ borderRadius: 999,
7950
+ border: `1px solid ${t.border}`,
7951
+ fontSize: 11.5,
7952
+ letterSpacing: "0.01em",
7953
+ color: t.muted,
7954
+ textDecoration: "none",
7955
+ whiteSpace: "nowrap"
7956
+ },
7957
+ children: [
7958
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
7959
+ "img",
7960
+ {
7961
+ src: GLITCHGRAB_LOGO,
7962
+ alt: "",
7963
+ width: 18,
7964
+ height: 18,
7965
+ style: { width: 18, height: 18, borderRadius: 999, display: "block" }
7966
+ }
7967
+ ),
7968
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { children: [
7969
+ "Powered by ",
7970
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { style: { color: t.text, fontWeight: 600 }, children: "Glitchgrab" })
7971
+ ] })
7972
+ ]
7973
+ }
7974
+ )
7975
+ }
7976
+ );
7927
7977
  const summary = /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
7928
7978
  "div",
7929
7979
  {
@@ -8071,7 +8121,8 @@ function BookingDialog({
8071
8121
  ] })
8072
8122
  ]
8073
8123
  }
8074
- )
8124
+ ),
8125
+ wide && credit
8075
8126
  ]
8076
8127
  }
8077
8128
  );
@@ -8461,7 +8512,8 @@ function BookingDialog({
8461
8512
  step === "slots" ? /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
8462
8513
  calendar,
8463
8514
  times
8464
- ] }) : form
8515
+ ] }) : form,
8516
+ !wide && credit
8465
8517
  ]
8466
8518
  }
8467
8519
  )