feat(web): English paths, and a portfolio that updates itself
/cartera, /explorar and /p/:key/proponer are /portfolio, /explore and /p/:key/propose now, like every other path; the Spanish ones redirect, so links already shared keep working. Settings sections go by ?section= with English names. The portfolio reads itself again, quietly, when a ticket, sprint or release of the projects shown changes, when my projects change, or when the live connection comes back; «En directo» replaces the refresh button. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -3,7 +3,7 @@ import { GO_TO, isTyping, projectKeyIn } from './shortcuts';
|
||||
describe('shortcuts', () => {
|
||||
it('knows the project of a URL', () => {
|
||||
expect(projectKeyIn('/p/WEB/issues/WEB-3')).toBe('WEB');
|
||||
expect(projectKeyIn('/explorar')).toBeNull();
|
||||
expect(projectKeyIn('/explore')).toBeNull();
|
||||
expect(GO_TO['k']).toEqual({ path: 'backlog', inProject: true });
|
||||
});
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ export const SHORTCUTS: { keys: string; what: string; where: string }[] = [
|
||||
/** Where `g` + key goes; project pages are relative to `/p/KEY`. */
|
||||
export const GO_TO: Record<string, { path: string; inProject: boolean }> = {
|
||||
p: { path: '/', inProject: false },
|
||||
e: { path: '/explorar', inProject: false },
|
||||
e: { path: '/explore', inProject: false },
|
||||
b: { path: 'board', inProject: true },
|
||||
k: { path: 'backlog', inProject: true },
|
||||
s: { path: 'sprints', inProject: true },
|
||||
|
||||
Reference in New Issue
Block a user