chore(deps): upgrade to typescript 7 bridge and clean up pnpm v11 workspace configs
This commit is contained in:
1 parent
65f118c918
commit
dacc4cadfd
12 files changed
+1138
-725
No files matched your search
@@ -220,7 +220,7 @@ export function ClientView({
|
||||
window.removeEventListener("touchmove", onTouchMove);
|
||||
window.removeEventListener("touchend", onEnd);
|
||||
};
|
||||
// biome-ignore lint/correctness/useExhaustiveDependencies: snapPos is a useCallback used intentionally here
|
||||
// biome-ignore lint/correctness/useExhaustiveDependencies: snapPos is a useCallback used intentionally here
|
||||
}, [dragging, snapPos]);
|
||||
|
||||
return (
|
||||
|
||||
@@ -144,7 +144,7 @@ export function InlineEditor({ pageId, onSaved }: InlineEditorProps) {
|
||||
}
|
||||
document.addEventListener("keydown", onKeyDown);
|
||||
return () => document.removeEventListener("keydown", onKeyDown);
|
||||
// biome-ignore lint/correctness/useExhaustiveDependencies: handleSave is a stable callback from parent
|
||||
// biome-ignore lint/correctness/useExhaustiveDependencies: handleSave is a stable callback from parent
|
||||
}, [canEdit, isDirty, saving, page, handleSave]);
|
||||
|
||||
const loadPage = useCallback(
|
||||
|
||||
@@ -338,13 +338,13 @@ export function RegisterForm({
|
||||
>
|
||||
{isPending ? (
|
||||
<span className="inline-flex items-center justify-center gap-2">
|
||||
<svg
|
||||
className="animate-spin h-4 w-4"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
role="img"
|
||||
aria-label="Loading"
|
||||
>
|
||||
<svg
|
||||
className="animate-spin h-4 w-4"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
role="img"
|
||||
aria-label="Loading"
|
||||
>
|
||||
<circle
|
||||
className="opacity-25"
|
||||
cx="12"
|
||||
|
||||
@@ -4,7 +4,11 @@ import type * as React from "react";
|
||||
|
||||
import { cn } from "@/lib/utils";
|
||||
|
||||
function Label({ className, htmlFor, ...props }: React.ComponentProps<"label">) {
|
||||
function Label({
|
||||
className,
|
||||
htmlFor,
|
||||
...props
|
||||
}: React.ComponentProps<"label">) {
|
||||
return (
|
||||
// biome-ignore lint/a11y/noLabelWithoutControl: reusable component, input is associated via htmlFor at usage site
|
||||
<label
|
||||
|
||||
@@ -34,8 +34,12 @@ describe("production deploy workflow", () => {
|
||||
const chownCmd = `sudo chown -R "${userVar}:${groupVar}"`;
|
||||
expect(toContainLiteral(workflow, chownCmd)).toBe(true);
|
||||
const reclaimAt = deployJob.indexOf(chownCmd);
|
||||
expect(toContainLiteral(deployJob, `git -C "${liveVar}" fetch origin --prune`)).toBe(true);
|
||||
const fetchAt = deployJob.indexOf(`git -C "${liveVar}" fetch origin --prune`);
|
||||
expect(
|
||||
toContainLiteral(deployJob, `git -C "${liveVar}" fetch origin --prune`),
|
||||
).toBe(true);
|
||||
const fetchAt = deployJob.indexOf(
|
||||
`git -C "${liveVar}" fetch origin --prune`,
|
||||
);
|
||||
expect(reclaimAt).toBeGreaterThan(-1);
|
||||
expect(fetchAt).toBeGreaterThan(reclaimAt);
|
||||
});
|
||||
@@ -53,8 +57,12 @@ describe("production deploy workflow", () => {
|
||||
|
||||
it("swaps a built .next artifact during a short service cutover", () => {
|
||||
expect(deployJob).toContain("mv .next .next.prev");
|
||||
expect(toContainLiteral(deployJob, `mv "${stageVar}/.next" .next`)).toBe(true);
|
||||
expect(toContainLiteral(deployJob, `mv "${stageVar}/node_modules" node_modules`)).toBe(true);
|
||||
expect(toContainLiteral(deployJob, `mv "${stageVar}/.next" .next`)).toBe(
|
||||
true,
|
||||
);
|
||||
expect(
|
||||
toContainLiteral(deployJob, `mv "${stageVar}/node_modules" node_modules`),
|
||||
).toBe(true);
|
||||
expect(deployJob).toContain("Rolling back .next to previous artifact");
|
||||
const buildAt = deployJob.indexOf("pnpm build");
|
||||
const stopAt = deployJob.indexOf("pm2 stop next");
|
||||
@@ -84,7 +92,12 @@ describe("production deploy workflow", () => {
|
||||
it("exports APP_VERSION from git for Sentry releases", () => {
|
||||
const exportCmd = `export APP_VERSION="$(git -C "${liveVar}" rev-parse --short origin/main)"`;
|
||||
expect(toContainLiteral(workflow, exportCmd)).toBe(true);
|
||||
expect(toContainLiteral(workflow, `export NEXT_PUBLIC_APP_VERSION="${appVerVar}"`)).toBe(true);
|
||||
expect(
|
||||
toContainLiteral(
|
||||
workflow,
|
||||
`export NEXT_PUBLIC_APP_VERSION="${appVerVar}"`,
|
||||
),
|
||||
).toBe(true);
|
||||
});
|
||||
|
||||
it("runs an HTTP health check before declaring deploy success", () => {
|
||||
|
||||
@@ -9,10 +9,23 @@ const mockDb = {} as CurrencyDb;
|
||||
|
||||
describe("sendCurrency", () => {
|
||||
it("returns false for non-positive amount", async () => {
|
||||
expect(await sendCurrency({ rcon: {} as never, db: mockDb }, 1, "credits", 0)).toBe(false);
|
||||
expect(await sendCurrency({ rcon: {} as never, db: mockDb }, 1, "credits", -5)).toBe(false);
|
||||
expect(await sendCurrency({ rcon: {} as never, db: mockDb }, 1, "credits", null)).toBe(false);
|
||||
expect(await sendCurrency({ rcon: {} as never, db: mockDb }, 1, "credits", undefined)).toBe(false);
|
||||
expect(
|
||||
await sendCurrency({ rcon: {} as never, db: mockDb }, 1, "credits", 0),
|
||||
).toBe(false);
|
||||
expect(
|
||||
await sendCurrency({ rcon: {} as never, db: mockDb }, 1, "credits", -5),
|
||||
).toBe(false);
|
||||
expect(
|
||||
await sendCurrency({ rcon: {} as never, db: mockDb }, 1, "credits", null),
|
||||
).toBe(false);
|
||||
expect(
|
||||
await sendCurrency(
|
||||
{ rcon: {} as never, db: mockDb },
|
||||
1,
|
||||
"credits",
|
||||
undefined,
|
||||
),
|
||||
).toBe(false);
|
||||
});
|
||||
|
||||
it("delivers credits via RCON", async () => {
|
||||
@@ -23,7 +36,10 @@ describe("sendCurrency", () => {
|
||||
givePointsGotw: vi.fn(),
|
||||
};
|
||||
const result = await sendCurrency(
|
||||
{ rcon, db: { user: { update: vi.fn() }, usersCurrency: { upsert: vi.fn() } } },
|
||||
{
|
||||
rcon,
|
||||
db: { user: { update: vi.fn() }, usersCurrency: { upsert: vi.fn() } },
|
||||
},
|
||||
1,
|
||||
"credits",
|
||||
100,
|
||||
@@ -43,7 +59,10 @@ describe("sendCurrency", () => {
|
||||
const result = await sendCurrency(
|
||||
{
|
||||
rcon,
|
||||
db: { user: { update: userUpdate }, usersCurrency: { upsert: vi.fn() } },
|
||||
db: {
|
||||
user: { update: userUpdate },
|
||||
usersCurrency: { upsert: vi.fn() },
|
||||
},
|
||||
},
|
||||
1,
|
||||
"credits",
|
||||
@@ -64,7 +83,10 @@ describe("sendCurrency", () => {
|
||||
givePointsGotw: vi.fn(),
|
||||
};
|
||||
const result = await sendCurrency(
|
||||
{ rcon, db: { user: { update: vi.fn() }, usersCurrency: { upsert: vi.fn() } } },
|
||||
{
|
||||
rcon,
|
||||
db: { user: { update: vi.fn() }, usersCurrency: { upsert: vi.fn() } },
|
||||
},
|
||||
1,
|
||||
"duckets",
|
||||
50,
|
||||
|
||||
Reference in new issue
Block a user