Commit graph

  • 30903eadb0 chore(license): adopt AGPL-3.0-or-later SkateSpots 2026-10-09 17:30:01 +0700
  • d1fae2688c feat(trust): attribute the badge and add a /trust explainer SkateSpots 2026-10-09 17:30:00 +0700
  • 2d1144bb7e feat(trust): batch provider reads, neutral direct follows, flagged notice SkateSpots 2026-10-09 17:17:11 +0700
  • fead9ca781 feat(trust): spec-correct NIP-85 consumer + Verified/Unknown/Flagged badge SkateSpots 2026-10-09 17:07:34 +0700
  • 8833a15830 docs: add TRUST_SCORE.md (trust-scoring review + plan) SkateSpots 2026-10-09 16:55:10 +0700
  • 486ffdb000 feat(map): add autocomplete suggestions to the search bar SkateSpots 2026-10-09 16:31:31 +0700
  • bbae55b610 chore: sync package-lock version to 1.6.0 SkateSpots 2026-10-09 09:03:24 +0700
  • ef01c3a5ed fix(map): stop deleted spots flashing back from cache SkateSpots 2026-10-09 09:03:16 +0700
  • 72693732dd docs: record dropdown scroll fix + language picker search gotchas SkateSpots 2026-10-08 20:01:18 +0700
  • 281a4c6ba5 feat(i18n): add search/filter to the language picker SkateSpots 2026-10-08 18:16:13 +0700
  • bd9eaf9b5f fix(ui): make long dropdown menus scrollable SkateSpots 2026-10-08 18:10:55 +0700
  • 0f01eb1bc6 chore: bump to 1.6.0 (10 new languages) SkateSpots 2026-10-08 17:21:57 +0700
  • d0e6fd5274 i18n(sv): finalize batch2 SkateSpots 2026-10-08 17:21:49 +0700
  • d7a836e558 i18n(uk): complete Ukrainian (100%) + add to picker SkateSpots 2026-10-08 17:21:03 +0700
  • 2e1167f8bd i18n(id): complete Indonesian (100%) + add to picker SkateSpots 2026-10-08 17:19:24 +0700
  • 86427a0fb0 i18n(cs): complete Czech (100%) + add to picker SkateSpots 2026-10-08 17:18:34 +0700
  • 2d656e5269 i18n(ro): complete Romanian (100%) + add to picker SkateSpots 2026-10-08 17:18:03 +0700
  • 4acfa59e56 i18n(sv): complete Swedish (100%) + add to picker SkateSpots 2026-10-08 17:17:54 +0700
  • 9998e7b8f6 i18n(el): complete Greek (100%) + add to picker SkateSpots 2026-10-08 17:17:43 +0700
  • 09859bb7da i18n(vi): complete Vietnamese (100%) + add to picker SkateSpots 2026-10-08 17:17:35 +0700
  • 69d04469f5 i18n(tr): complete Turkish (100%) + add to picker SkateSpots 2026-10-08 17:17:34 +0700
  • 8e98a43949 i18n(zh-TW): complete Traditional Chinese (100%) + add to picker SkateSpots 2026-10-08 17:15:51 +0700
  • 1c670d314b i18n(zh-CN): complete Simplified Chinese (100%) + add to picker SkateSpots 2026-10-08 16:00:33 +0700
  • feac9f764b i18n: register 10 locales (framework + scaffold); ro/el partial SkateSpots 2026-10-08 14:59:27 +0700
  • 1dd23c1549 i18n(ko): separate South and North Korean options, one flag each SkateSpots 2026-10-08 12:45:09 +0700
  • 4e8999b84c i18n(ko): show both Korean flags in the language picker SkateSpots 2026-10-08 12:24:31 +0700
  • a7c3a9f130 docs(AGENTS): 12 locales (all 100%), lazy-loading, NK flag, one-writer rule SkateSpots 2026-10-08 00:02:08 +0700
  • 361f03c988 i18n(ru,ko): complete Russian + Korean translations; use North Korean flag for Korean SkateSpots 2026-10-07 23:56:20 +0700
  • 78660580fa i18n(nl,pl): complete Dutch + Polish translations (100% — 8450 keys each) SkateSpots 2026-10-07 23:51:30 +0700
  • e73c678199 i18n(it): complete Italian translation (100% — 8450 keys) SkateSpots 2026-10-07 23:04:59 +0700
  • 7635e1eaa9 i18n(de): complete German translation (100% — 8450 keys) SkateSpots 2026-10-07 22:35:32 +0700
  • 1954adfdc2 i18n(fr): complete French translation (100% — 8450 keys) SkateSpots 2026-10-07 22:20:07 +0700
  • 845733de24 i18n(pt): complete Brazilian Portuguese translation (100% — 8450 keys) SkateSpots 2026-10-07 21:57:07 +0700
  • 90c06eeb91 i18n: scaffold fragment slots for the 8 new locales SkateSpots 2026-10-07 21:24:09 +0700
  • 1460b06277 i18n: lazy-load locales + register 8 new (pt fr de it nl pl ru ko) with fonts SkateSpots 2026-10-07 21:23:39 +0700
  • 7ab9a5b399 docs(AGENTS): refresh legacyMiscUi scope SkateSpots 2026-10-07 18:31:31 +0700
  • a3b7f311ce i18n: translate image alt/aria + generated export documents (last English literals) SkateSpots 2026-10-07 18:30:52 +0700
  • ac1b56ce76 docs(AGENTS): record the hardcoded-string sweep + legacy fragment layer SkateSpots 2026-10-07 18:12:30 +0700
  • 0339395036 i18n: translate the moderation help line (last hardcoded JSX prose) SkateSpots 2026-10-07 18:11:57 +0700
  • f7c9f9ef4c i18n: sweep hardcoded English (deckCost, becomeRoles, weather, skaterLabels, notify, misc) into 4 locales SkateSpots 2026-10-07 18:09:57 +0700
  • af0a138d1a fix(nav): inline language switcher in the mobile sheet (portaled dropdown was unclickable inside a dialog) SkateSpots 2026-10-07 17:54:32 +0700
  • b4411c930b docs(AGENTS): record th + ja at 100% coverage SkateSpots 2026-10-07 17:48:33 +0700
  • 8d1598d6c4 i18n: complete Japanese + Thai translation (both 100% — 7,889/7,889 keys) SkateSpots 2026-10-07 17:48:18 +0700
  • ba4beba09d i18n(th): add missing common.hide/undo keys SkateSpots 2026-10-07 17:45:52 +0700
  • 312ee3a21c i18n: ja batches 9-11 (social, labOptions, small ns) + th batches 10-13 (lab, social, labOptions, small ns) SkateSpots 2026-10-07 17:45:12 +0700
  • c4c540826a i18n(ja): batch 6 — settingsUi SkateSpots 2026-10-07 17:41:51 +0700
  • 83cc11f2dc i18n(th): batch 8 — settingsUi SkateSpots 2026-10-07 17:40:49 +0700
  • f1043c8881 i18n(th): batch 9 — walletUi SkateSpots 2026-10-07 17:39:44 +0700
  • 2392b0ee2f i18n(ja): batch 7 — walletUi SkateSpots 2026-10-07 17:39:01 +0700
  • 4ba13675cf i18n(ja): batch 8 — labUi SkateSpots 2026-10-07 17:38:05 +0700
  • 91cd916b3f i18n: ja batches 4-5 (labels/fees/card, route/sasquatch) + th batches 6-7 (marketUi, placesUi) SkateSpots 2026-10-07 17:35:04 +0700
  • f41cb4a920 i18n(ja): batches 2-3 — map + spot/diy SkateSpots 2026-10-07 17:31:05 +0700
  • ab05973ff0 i18n(ja): add Japanese as fourth locale (plumbing + font + batch 1 shell) SkateSpots 2026-10-07 17:21:18 +0700
  • ae02f51d20 i18n(es): translate SEO titles & descriptions across 40 pages (seoUi) SkateSpots 2026-10-07 17:17:26 +0700
  • 94a6628faa i18n(es): translate page/component toasts (follow, delete, reports, sync, review queue) SkateSpots 2026-10-07 17:14:18 +0700
  • 2e9cbfba2b i18n(es): use "peña" instead of "cuadrilla" for crew (158 occurrences) SkateSpots 2026-10-07 17:09:39 +0700
  • dd2062dc74 i18n(es): translate status presets, SetStatusDialog, nutzap + wallet toasts SkateSpots 2026-10-07 17:04:04 +0700
  • 69458e1ae6 i18n(es): translate the Sasquatch onboarding guide script SkateSpots 2026-10-07 16:58:43 +0700
  • 4c0d7772f3 test(harness): add LanguageProvider to TestApp (hooks now use useTranslation) SkateSpots 2026-10-07 16:56:55 +0700
  • 97c90c506a i18n(es): translate zap/NWC/delete/stash toasts + reuse feesUi keys for fee metadata SkateSpots 2026-10-07 16:55:33 +0700
  • b01bd22e96 i18n(es): translate SupportSkateSpots + hook toasts (follow, report, offline, publish) SkateSpots 2026-10-07 16:50:00 +0700
  • 7e578fb7d9 i18n(es): translate shared component literals (camera, quality meter, entity picker, offline, comments) SkateSpots 2026-10-07 16:44:23 +0700
  • c7a6421be1 i18n(es): wire StashPage hardcoded strings through t() (30+ literals) SkateSpots 2026-10-07 16:39:41 +0700
  • f58b19e310 chore(map): drop the "Supported by N" backer count from the map footer strip SkateSpots 2026-10-07 16:12:04 +0700
  • 30a0aaa42b feat(create-spot): make address + access type required; move them out of the optional collapsible SkateSpots 2026-10-07 11:30:55 +0700
  • c08592144a perf(create-spot): cap reverse-geocode at 2.5s so publish can't stall before signing SkateSpots 2026-10-07 10:31:07 +0700
  • f791e5375c feat(create-spot): warn about nearby duplicates at pin-time; share the map's spot cache (2000) instead of a second query SkateSpots 2026-10-07 10:30:19 +0700
  • efd7e9608d feat(create-spot): pin map, progressive disclosure, mandatory photo+description, inline errors, draft autosave SkateSpots 2026-10-07 10:29:01 +0700
  • 24322b3b1c feat(map): tap drops a pin + confirm card instead of jumping into create-spot SkateSpots 2026-10-07 10:26:36 +0700
  • 0a5449d24f docs(AGENTS): park identity/conflict ideas until there are users (triggers + Stash≠key-recovery note) SkateSpots 2026-10-07 10:18:09 +0700
  • 1078bf9a8e i18n(th): batch 5 — routing/directions + Sasquatch assistant (UI + FAQ) SkateSpots 2026-10-06 13:54:07 +0700
  • 59cf47d3e6 i18n(th): batch 4 — shared labels, fees & receipts, physical cards SkateSpots 2026-10-06 13:51:23 +0700
  • 185924649c i18n(th): batch 3 — spot detail/forms (spotUi) + DIY hub (diyUi) SkateSpots 2026-10-06 13:49:19 +0700
  • b8c306125c i18n(th): batch 2 — map (mapUi + mapPage) + AGENTS note SkateSpots 2026-10-06 13:35:20 +0700
  • 39572998a0 feat(clink): real bech32+TLV decode/validation (lib/clink.ts), spec-correct raw QR/copy, show decoded pricing; validate scanner SkateSpots 2026-10-06 11:16:20 +0700
  • fb16ea74c0 fix(dev): self-healing lazyWithRetry (retries + cooldown reload); add dev:fresh; auto-restart dev on dep changes SkateSpots 2026-10-05 23:37:46 +0700
  • cc50eaad18 chore(release): bump to 1.5.13 + release notes SkateSpots 2026-10-05 21:52:18 +0700
  • 1510255b81 docs(AGENTS): add the full Zapstore publish sequence SkateSpots 2026-10-05 21:49:09 +0700
  • 9ca5f2a604 fix(audit UI/UX): 44px slabs, missing grid base cols, aria-labels, dark weather panel, contrast, sheet width, stretched-link SpotCard SkateSpots 2026-10-05 21:47:29 +0700
  • 2f6c6230f3 fix(audit P2 data): NaN guards (events/tours/zaps), query-key fixes, no array mutation, pure preference updater, zap limit SkateSpots 2026-10-05 21:37:01 +0700
  • 84f80d8330 fix(audit P2 money/auth): invoice amount checks (Pro/fee/pointer), verify embedded zap req, harden NIP-05 proof + Pro grant, sanitize cordn link SkateSpots 2026-10-05 21:32:58 +0700
  • 5728c226d5 fix(audit P1): comment cache key, ticket verify fails closed, featured amount check, no empty-object persist, sticky sub-bars SkateSpots 2026-10-05 21:07:07 +0700
  • f2bfbf4274 fix(newsletter): Monday reminder banner on mobile (bottom, above nav) not clipped by the map toolbar SkateSpots 2026-10-05 20:48:02 +0700
  • 8a05aa3b69 chore(footer): remove the 'Supported by N' chip SkateSpots 2026-10-05 20:15:55 +0700
  • 04774bc180 fix(stats): validate kind-30017 with parseSkateShop so foreign shops leave Top Shops SkateSpots 2026-10-05 20:00:44 +0700
  • a9dcb5719c feat(supporters): per-row dates + 'updated', dedicated /donate page, extract shared support cards SkateSpots 2026-10-05 19:54:49 +0700
  • 8c20395ccb refactor(supporters): order the rails Lightning -> Silent payments -> Angor SkateSpots 2026-10-05 19:49:17 +0700
  • 4ffad80728 feat(supporters): ways-to-support trio (purpose per rail, scrolls to each) SkateSpots 2026-10-05 19:44:31 +0700
  • 1691d49930 feat(supporters): add silent-payments donation card (BIP-353 name + QR) SkateSpots 2026-10-05 19:40:38 +0700
  • 34cf930657 fix(supporters): resolve avatars by hex pubkey (was passing npub to useAuthor) SkateSpots 2026-10-05 19:06:22 +0700
  • cc1883cf82 feat(supporters): top 21, extravagant auto tiers + tier ladder with supporter avatars SkateSpots 2026-10-05 19:02:25 +0700
  • 66d83123cd feat(supporters): Dec-2025 cutoff + collapse list to top 10 (show all) SkateSpots 2026-10-05 18:57:53 +0700
  • 24e1369f6c feat(supporters): unified ranked wall, verifiable zaps, tier legend, impact link, pay-for detail, anonymous flag, map chip, OG meta SkateSpots 2026-10-05 18:55:16 +0700
  • 87aca51248 feat(supporters): pay-for list + impact stats; scope zaps to the project SkateSpots 2026-10-05 18:46:07 +0700
  • b88379a390 feat(supporters): add tiers/badges and a unified top-zappers block SkateSpots 2026-10-05 18:00:19 +0700
  • bf96a9e3a1 fix(supporters): show shortened npub when a supporter has no profile name SkateSpots 2026-10-05 17:56:45 +0700
  • 1bdaa57aa3 feat(supporters): on-chain verify chips, real avatars/names, fiat total, footer count SkateSpots 2026-10-05 17:56:10 +0700
  • 918c289a71 feat(supporters): present Angor as a donation option for small amounts SkateSpots 2026-10-05 17:45:08 +0700
  • 0c4d4f6b29 fix(supporters): drop dead BTC address; fix Zapstore version duplication in release notes SkateSpots 2026-10-05 17:42:09 +0700
  • 3f94d9be30 feat(supporters): show Angor supporters with amounts on /supporters SkateSpots 2026-10-05 17:37:00 +0700