feat: add gmail-hook monorepo with watcher, api, and web

Ship the receipt pipeline (Livin/Grab/BRI), PocketBase spendings, PM2 ecosystem, and a proper .gitignore that excludes secrets, SQLite data, and media dumps.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-13 22:58:47 +07:00
co-authored by Cursor
parent 8fa9f4350e
commit 46a2e2a7b0
67 changed files with 12153 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
import assert from "node:assert/strict";
import { describe, it } from "node:test";
import { parseDayMonthYear } from "../src/lib/parse-helpers.js";
describe("parseDayMonthYear", () => {
it("parses English months", () => {
assert.equal(parseDayMonthYear("13 Sep 2026"), "2026-09-13");
assert.equal(parseDayMonthYear("13 September 2026"), "2026-09-13");
});
it("parses Indonesian months", () => {
assert.equal(parseDayMonthYear("15 Agu 2026"), "2026-08-15");
assert.equal(parseDayMonthYear("15 Agustus 2026"), "2026-08-15");
assert.equal(parseDayMonthYear("1 Des 26"), "2026-12-01");
assert.equal(parseDayMonthYear("1 Mei 2026"), "2026-05-01");
});
});