@visin/frontend-core 1.12.0 → 1.14.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.
Files changed (43) hide show
  1. package/dist/auth/AuthProvider.d.ts +2 -0
  2. package/dist/auth/AuthProvider.d.ts.map +1 -1
  3. package/dist/auth/AuthProvider.js +7 -1
  4. package/dist/auth/AuthProvider.js.map +1 -1
  5. package/dist/auth/authService.d.ts +11 -1
  6. package/dist/auth/authService.d.ts.map +1 -1
  7. package/dist/auth/authService.js +4 -2
  8. package/dist/auth/authService.js.map +1 -1
  9. package/dist/components/AppLayout/AppLayout.d.ts +42 -5
  10. package/dist/components/AppLayout/AppLayout.d.ts.map +1 -1
  11. package/dist/components/AppLayout/AppLayout.js +89 -33
  12. package/dist/components/AppLayout/AppLayout.js.map +1 -1
  13. package/dist/components/AppLayout/index.d.ts +1 -1
  14. package/dist/components/AppLayout/index.d.ts.map +1 -1
  15. package/dist/components/Markdown/Markdown.d.ts +11 -0
  16. package/dist/components/Markdown/Markdown.d.ts.map +1 -0
  17. package/dist/components/Markdown/Markdown.js +63 -0
  18. package/dist/components/Markdown/Markdown.js.map +1 -0
  19. package/dist/components/Markdown/index.d.ts +2 -0
  20. package/dist/components/Markdown/index.d.ts.map +1 -0
  21. package/dist/components/Markdown/index.js +2 -0
  22. package/dist/components/Markdown/index.js.map +1 -0
  23. package/dist/components/Markdown/parse.d.ts +65 -0
  24. package/dist/components/Markdown/parse.d.ts.map +1 -0
  25. package/dist/components/Markdown/parse.js +247 -0
  26. package/dist/components/Markdown/parse.js.map +1 -0
  27. package/dist/components/ShareButton.d.ts +5 -0
  28. package/dist/components/ShareButton.d.ts.map +1 -0
  29. package/dist/components/ShareButton.js +23 -0
  30. package/dist/components/ShareButton.js.map +1 -0
  31. package/dist/index.d.ts +6 -2
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +3 -0
  34. package/dist/index.js.map +1 -1
  35. package/dist/navigation.d.ts +12 -2
  36. package/dist/navigation.d.ts.map +1 -1
  37. package/dist/navigation.js +43 -7
  38. package/dist/navigation.js.map +1 -1
  39. package/dist/recentVisits.d.ts +26 -0
  40. package/dist/recentVisits.d.ts.map +1 -0
  41. package/dist/recentVisits.js +97 -0
  42. package/dist/recentVisits.js.map +1 -0
  43. package/package.json +8 -8
@@ -6,6 +6,8 @@ export interface AuthContextValue {
6
6
  isLoading: boolean;
7
7
  /** Redirects to auth-front's login page, returning to the current page after. */
8
8
  login: () => void;
9
+ /** Like `login`, but opens auth-front's sign-up form. */
10
+ signup: () => void;
9
11
  logout: () => Promise<void>;
10
12
  /** Re-runs the session check and updates the shared context state; returns the fresh result. */
11
13
  refresh: () => Promise<AuthCheckResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthProvider.d.ts","sourceRoot":"","sources":["../../src/auth/AuthProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACpG,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAS5E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,iFAAiF;IACjF,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,gGAAgG;IAChG,OAAO,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;CACzC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW;iCAWpB;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE;mBA2DvC,gBAAgB;EASrC"}
1
+ {"version":3,"file":"AuthProvider.d.ts","sourceRoot":"","sources":["../../src/auth/AuthProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACpG,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAU5E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,iFAAiF;IACjF,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,yDAAyD;IACzD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,gGAAgG;IAChG,OAAO,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;CACzC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW;iCAWpB;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE;mBAiEvC,gBAAgB;EASrC"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { createContext, useCallback, useContext, useEffect, useState } from 'react';
3
+ import { clearVisits } from '../recentVisits';
3
4
  /**
4
5
  * How stale the session check may get before returning to the app re-runs it.
5
6
  * Each check renews the session cookie, so an installed app left open for days
@@ -64,13 +65,18 @@ export function createAuthContext(authService) {
64
65
  const login = useCallback(() => {
65
66
  authService.redirectToLogin();
66
67
  }, []);
68
+ const signup = useCallback(() => {
69
+ authService.redirectToLogin(undefined, { mode: 'register' });
70
+ }, []);
67
71
  const logout = useCallback(async () => {
68
72
  await authService.logout();
73
+ // What was visited names things this account could see: not the next person's to read.
74
+ clearVisits();
69
75
  lastKnownUser = null;
70
76
  setUser(null);
71
77
  window.location.reload();
72
78
  }, []);
73
- return (_jsx(AuthContext.Provider, { value: { user, isAuthenticated: !!user, isLoading, login, logout, refresh }, children: children }));
79
+ return (_jsx(AuthContext.Provider, { value: { user, isAuthenticated: !!user, isLoading, login, signup, logout, refresh }, children: children }));
74
80
  }
75
81
  function useAuth() {
76
82
  const context = useContext(AuthContext);
@@ -1 +1 @@
1
- {"version":3,"file":"AuthProvider.js","sourceRoot":"","sources":["../../src/auth/AuthProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthProvider.js","sourceRoot":"","sources":["../../src/auth/AuthProvider.tsx"],"names":[],"mappings":"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"}
@@ -25,6 +25,14 @@ export interface AuthUser {
25
25
  * reports it.
26
26
  */
27
27
  hasPassword?: boolean;
28
+ /** The address of the public page, `/u/{handle}`. Only `/auth/profile` reports it, with the next three. */
29
+ handle?: string;
30
+ bio?: string;
31
+ links?: string[];
32
+ /** False hides the public page and the name shown on what the account owns. */
33
+ profilePublic?: boolean;
34
+ /** Whether the public page lists what the account has been doing. */
35
+ showActivity?: boolean;
28
36
  }
29
37
  export interface AuthCheckResult {
30
38
  authenticated: boolean;
@@ -59,7 +67,9 @@ export declare function createAuthService({ authServiceUrl, authFrontUrl }: Auth
59
67
  getProfile: () => Promise<AuthUser | null>;
60
68
  isAuthenticated: () => Promise<boolean>;
61
69
  logout: () => Promise<boolean>;
62
- redirectToLogin: (returnUrl?: string) => void;
70
+ redirectToLogin: (returnUrl?: string, options?: {
71
+ mode?: "register";
72
+ }) => void;
63
73
  };
64
74
  export type AuthService = ReturnType<typeof createAuthService>;
65
75
  //# sourceMappingURL=authService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"authService.d.ts","sourceRoot":"","sources":["../../src/auth/authService.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,iFAAiF;IACjF,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,4FAA4F;IAC5F,YAAY,EAAE,MAAM,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,kBAAkB;qBAS9D,OAAO,CAAC,eAAe,CAAC;0BAgCb,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;sBAK5B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;2BAUnB,OAAO,CAAC,OAAO,CAAC;kBAKzB,OAAO,CAAC,OAAO,CAAC;kCAUJ,MAAM,KAAG,IAAI;EAcnD;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"authService.d.ts","sourceRoot":"","sources":["../../src/auth/authService.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2GAA2G;IAC3G,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,+EAA+E;IAC/E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qEAAqE;IACrE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,iFAAiF;IACjF,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,4FAA4F;IAC5F,YAAY,EAAE,MAAM,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,kBAAkB;qBAS9D,OAAO,CAAC,eAAe,CAAC;0BAgCb,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;sBAK5B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;2BAUnB,OAAO,CAAC,OAAO,CAAC;kBAKzB,OAAO,CAAC,OAAO,CAAC;kCAWJ,MAAM,YAAW;QAAE,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE,KAAQ,IAAI;EAexF;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -72,7 +72,8 @@ export function createAuthService({ authServiceUrl, authFrontUrl }) {
72
72
  return false;
73
73
  }
74
74
  }
75
- function redirectToLogin(returnUrl) {
75
+ /** `register` opens auth-front on its sign-up form rather than the sign-in one. */
76
+ function redirectToLogin(returnUrl, options = {}) {
76
77
  const loginUrl = authFrontUrl();
77
78
  if (!loginUrl) {
78
79
  // With no auth-front address the target would be `?redirect_uri=…` on this
@@ -82,7 +83,8 @@ export function createAuthService({ authServiceUrl, authFrontUrl }) {
82
83
  return;
83
84
  }
84
85
  const currentUrl = returnUrl || window.location.href;
85
- window.location.href = `${loginUrl}?redirect_uri=${encodeURIComponent(currentUrl)}`;
86
+ const mode = options.mode ? `&mode=${options.mode}` : '';
87
+ window.location.href = `${loginUrl}?redirect_uri=${encodeURIComponent(currentUrl)}${mode}`;
86
88
  }
87
89
  return { checkAuth, getCurrentUser, getProfile, isAuthenticated, logout, redirectToLogin };
88
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"authService.js","sourceRoot":"","sources":["../../src/auth/authService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authService.js","sourceRoot":"","sources":["../../src/auth/authService.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,15 @@ export interface AppLayoutNavGroup {
29
29
  */
30
30
  match?: string[];
31
31
  }
32
+ /** One place offered by the search box before anything is typed. */
33
+ export interface AppLayoutRecent {
34
+ key: string;
35
+ text: string;
36
+ secondary?: string;
37
+ icon?: ReactNode;
38
+ /** A path within the app: it is followed client-side. */
39
+ path: string;
40
+ }
32
41
  export interface AppLayoutUser {
33
42
  name?: string;
34
43
  email?: string;
@@ -50,12 +59,18 @@ export interface AppLayoutProps {
50
59
  /** Max width of the centered content column. Defaults to 800. */
51
60
  maxContentWidth?: number;
52
61
  /**
53
- * False shows Login in place of Account. Defaults to true — account-front
54
- * serves no anonymous visitors.
62
+ * False shows Sign in (and Sign up) in the top bar in place of the account
63
+ * menu. Defaults to true — account-front serves no anonymous visitors.
55
64
  */
56
65
  isAuthenticated?: boolean;
57
66
  /** Required when `isAuthenticated` can be false. */
58
67
  onLogin?: () => void;
68
+ /**
69
+ * True while the session is still being checked: the bar then shows neither
70
+ * Sign in nor the account menu, rather than flashing the wrong one at someone
71
+ * who is signed in.
72
+ */
73
+ authPending?: boolean;
59
74
  /**
60
75
  * False drops the page title, for apps whose pages render
61
76
  * their own headings. Defaults to true.
@@ -63,18 +78,40 @@ export interface AppLayoutProps {
63
78
  showPageHeader?: boolean;
64
79
  /** Where the rail's logo leads, for an app with a home page (shell-front). Otherwise it is only a logo. */
65
80
  homePath?: string;
81
+ /**
82
+ * Turns on the search box in the top bar (and Ctrl/Cmd+K) and receives what
83
+ * was typed. Left out, the bar has no search.
84
+ */
85
+ onSearch?: (query: string) => void;
86
+ searchPlaceholder?: string;
87
+ /**
88
+ * What the search box offers before anything is typed: where the person was lately. The app decides what these are
89
+ * and where they lead, as it does for the menu. Empty, nothing is offered.
90
+ */
91
+ recent?: AppLayoutRecent[];
92
+ /** Opens sign-up for a visitor. Left out, only "Sign in" is offered. */
93
+ onSignup?: () => void;
94
+ /** The "New" menu of a signed-in user: the things they can create. Empty, no menu. */
95
+ createItems?: AppLayoutNavItem[];
96
+ /** Plain links a visitor gets beside Sign in (Docs, About). Always absolute: they leave the app. */
97
+ visitorLinks?: {
98
+ text: string;
99
+ href: string;
100
+ }[];
66
101
  }
67
102
  /**
68
103
  * The navigation behind every Visin front. Groups sit in a rail beside the
69
104
  * content, or in a tab bar under it on phones where it stays in reach of a
70
105
  * thumb; the shown group's sections sit in a bar above the content, or in a
71
- * dropdown on phones. Account is the last entry of the rail and the only place
72
- * account actions live.
106
+ * dropdown on phones. The rail is for places; who you are and what you can do
107
+ * sit at the end of that bar: search, Sign in / Sign up for a visitor, and for
108
+ * a member a New menu and the account menu, the only place account actions live. The appearance
109
+ * button (light or dark) is there for everyone, signed in or not.
73
110
  *
74
111
  * Every entry carries a visible label. The sidebar this replaced hid its menu
75
112
  * behind a burger button on phones, and collapsed on desktop to an icon rail
76
113
  * that relied on the reader recognising the icons.
77
114
  */
78
- export declare function AppLayout({ children, appName, navGroups, accountItems, user, onLogout, maxContentWidth, isAuthenticated, onLogin, showPageHeader, homePath }: AppLayoutProps): import("react").JSX.Element;
115
+ export declare function AppLayout({ children, appName, navGroups, accountItems, user, onLogout, maxContentWidth, isAuthenticated, onLogin, authPending, showPageHeader, homePath, onSearch, searchPlaceholder, recent, onSignup, createItems, visitorLinks }: AppLayoutProps): import("react").JSX.Element;
79
116
  export {};
80
117
  //# sourceMappingURL=AppLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppLayout.d.ts","sourceRoot":"","sources":["../../../src/components/AppLayout/AppLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAwB,MAAM,OAAO,CAAC;AA6BxD,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,8DAA8D;AAC9D,MAAM,WAAW,wBAAyB,SAAQ,WAAW;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,qEAAqE;AACrE,MAAM,WAAW,wBAAyB,SAAQ,WAAW;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG,wBAAwB,GAAG,wBAAwB,CAAC;AAEnF;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,yDAAyD;IACzD,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAClC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2GAA2G;IAC3G,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAUD;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,OAAO,EACP,SAAS,EACT,YAAiB,EACjB,IAAI,EACJ,QAAQ,EACR,eAAqB,EACrB,eAAsB,EACtB,OAAO,EACP,cAAqB,EACrB,QAAQ,EACT,EAAE,cAAc,+BA4YhB"}
1
+ {"version":3,"file":"AppLayout.d.ts","sourceRoot":"","sources":["../../../src/components/AppLayout/AppLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkC,MAAM,OAAO,CAAC;AAoClE,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,8DAA8D;AAC9D,MAAM,WAAW,wBAAyB,SAAQ,WAAW;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,qEAAqE;AACrE,MAAM,WAAW,wBAAyB,SAAQ,WAAW;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG,wBAAwB,GAAG,wBAAwB,CAAC;AAEnF;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,yDAAyD;IACzD,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAClC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2GAA2G;IAC3G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,sFAAsF;IACtF,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,oGAAoG;IACpG,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACjD;AAUD;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,OAAO,EACP,SAAS,EACT,YAAiB,EACjB,IAAI,EACJ,QAAQ,EACR,eAAqB,EACrB,eAAsB,EACtB,OAAO,EACP,WAAmB,EACnB,cAAqB,EACrB,QAAQ,EACR,QAAQ,EACR,iBAA6B,EAC7B,MAAW,EACX,QAAQ,EACR,WAAgB,EAChB,YAAiB,EAClB,EAAE,cAAc,+BAwgBhB"}
@@ -1,10 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState } from 'react';
3
- import { Avatar, Box, Button, ButtonBase, CssBaseline, Divider, Drawer, ListItemIcon, ListItemText, Menu, MenuItem, MenuList, Typography, useColorScheme, useTheme } from '@mui/material';
4
- import { ExpandMore, Login, Logout, Person } from '@mui/icons-material';
2
+ import { useEffect, useState } from 'react';
3
+ import { Avatar, Box, Button, ButtonBase, CssBaseline, Dialog, Divider, Drawer, IconButton, InputAdornment, Link as MuiLink, List, ListItemButton, ListItemIcon, ListItemText, Menu, MenuItem, MenuList, TextField, Typography, useColorScheme, useMediaQuery, useTheme } from '@mui/material';
4
+ import { Add, DarkModeOutlined, ExpandMore, LightModeOutlined, Logout, Person, Search } from '@mui/icons-material';
5
5
  import { Link, useLocation } from 'react-router-dom';
6
6
  import { chrome, glass, livePalette, pageBackground, surface } from '../../theme';
7
- import { COLOR_MODE_OPTIONS } from '../ColorMode';
8
7
  import { TAB_BAR_HEIGHT, useCompactLayout } from '../Page/layout';
9
8
  const RAIL_WIDTH = 88;
10
9
  const APP_BAR_HEIGHT = 56;
@@ -16,14 +15,16 @@ const linkProps = (item) => item.path !== undefined ? { component: Link, to: ite
16
15
  * The navigation behind every Visin front. Groups sit in a rail beside the
17
16
  * content, or in a tab bar under it on phones where it stays in reach of a
18
17
  * thumb; the shown group's sections sit in a bar above the content, or in a
19
- * dropdown on phones. Account is the last entry of the rail and the only place
20
- * account actions live.
18
+ * dropdown on phones. The rail is for places; who you are and what you can do
19
+ * sit at the end of that bar: search, Sign in / Sign up for a visitor, and for
20
+ * a member a New menu and the account menu, the only place account actions live. The appearance
21
+ * button (light or dark) is there for everyone, signed in or not.
21
22
  *
22
23
  * Every entry carries a visible label. The sidebar this replaced hid its menu
23
24
  * behind a burger button on phones, and collapsed on desktop to an icon rail
24
25
  * that relied on the reader recognising the icons.
25
26
  */
26
- export function AppLayout({ children, appName, navGroups, accountItems = [], user, onLogout, maxContentWidth = 800, isAuthenticated = true, onLogin, showPageHeader = true, homePath }) {
27
+ export function AppLayout({ children, appName, navGroups, accountItems = [], user, onLogout, maxContentWidth = 800, isAuthenticated = true, onLogin, authPending = false, showPageHeader = true, homePath, onSearch, searchPlaceholder = 'Search…', recent = [], onSignup, createItems = [], visitorLinks = [] }) {
27
28
  const { pathname } = useLocation();
28
29
  const theme = useTheme();
29
30
  // Below `md` the compact layout — app bar, tab bar, section dropdown,
@@ -31,13 +32,30 @@ export function AppLayout({ children, appName, navGroups, accountItems = [], use
31
32
  // for the rail but not the rail *and* a readable content column.
32
33
  const mobile = useCompactLayout();
33
34
  const palette = livePalette(theme);
34
- const { mode, setMode } = useColorScheme();
35
- const colorMode = COLOR_MODE_OPTIONS.find((option) => option.value === (mode ?? 'system')) ?? COLOR_MODE_OPTIONS[0];
36
- const nextColorMode = COLOR_MODE_OPTIONS[(COLOR_MODE_OPTIONS.indexOf(colorMode) + 1) % COLOR_MODE_OPTIONS.length].value;
35
+ const { mode, systemMode, setMode } = useColorScheme();
36
+ // What is showing, whether chosen or the device's: the switch flips that, so it always does something visible.
37
+ const dark = (mode && mode !== 'system' ? mode : systemMode) === 'dark';
37
38
  const [accountAnchor, setAccountAnchor] = useState(null);
38
39
  const [sectionAnchor, setSectionAnchor] = useState(null);
40
+ const [createAnchor, setCreateAnchor] = useState(null);
41
+ const [searchOpen, setSearchOpen] = useState(false);
39
42
  const closeAccount = () => setAccountAnchor(null);
40
43
  const closeSections = () => setSectionAnchor(null);
44
+ const closeCreate = () => setCreateAnchor(null);
45
+ const wideSearch = useMediaQuery(theme.breakpoints.up('lg')) && !mobile;
46
+ // Ctrl/Cmd+K opens search from anywhere on the page.
47
+ useEffect(() => {
48
+ if (!onSearch)
49
+ return;
50
+ const onKeyDown = (event) => {
51
+ if ((event.metaKey || event.ctrlKey) && event.key.toLowerCase() === 'k') {
52
+ event.preventDefault();
53
+ setSearchOpen(true);
54
+ }
55
+ };
56
+ window.addEventListener('keydown', onKeyDown);
57
+ return () => window.removeEventListener('keydown', onKeyDown);
58
+ }, [onSearch]);
41
59
  const allItems = [...navGroups.flatMap((group) => group.items), ...accountItems];
42
60
  // An exact match always wins; a prefix match only counts if no other item is
43
61
  // an exact match for the current path (avoids '/jobs' lighting up while on
@@ -54,16 +72,14 @@ export function AppLayout({ children, appName, navGroups, accountItems = [], use
54
72
  const sectionGroup = activeGroup && activeGroup.items.length > 1 ? activeGroup : null;
55
73
  const initial = user?.name?.charAt(0) || _jsx(Person, { fontSize: "small" });
56
74
  const menuItem = (item, onClose) => (_jsxs(MenuItem, { ...linkProps(item), selected: isActive(item), onClick: onClose, children: [_jsx(ListItemIcon, { children: item.icon }), _jsx(ListItemText, { children: item.text })] }, item.text));
57
- const railEntries = (_jsxs(_Fragment, { children: [navGroups.map((group) => (_jsx(NavButton, { label: group.label, icon: group.icon, target: group.items[0], active: group === activeGroup, current: group === activeGroup, mobile: mobile }, group.label))), !mobile && _jsx(Box, { sx: { flex: 1 } }), isAuthenticated ? (_jsx(NavButton, { label: "Account", icon: _jsx(Avatar, { src: user?.picture, alt: "", sx: { width: 26, height: 26, fontSize: '0.8rem', bgcolor: 'secondary.main' }, children: initial }), active: Boolean(accountAnchor) || activeGroup === accountGroup, current: activeGroup === accountGroup, mobile: mobile, onClick: (event) => setAccountAnchor(event.currentTarget), expanded: Boolean(accountAnchor) })) : (_jsx(NavButton, { label: "Login", icon: _jsx(Login, {}), active: false, current: false, mobile: mobile, onClick: onLogin }))] }));
75
+ const railEntries = (_jsx(_Fragment, { children: navGroups.map((group) => (_jsx(NavButton, { label: group.label, icon: group.icon, target: group.items[0], active: group === activeGroup, current: group === activeGroup, mobile: mobile }, group.label))) }));
58
76
  // An array rather than a fragment: Menu and MenuList walk their direct
59
77
  // children to manage focus.
60
78
  const accountMenuItems = [
61
79
  _jsxs(MenuItem, { disabled: true, sx: { gap: 1.5, py: 1.25, '&.Mui-disabled': { opacity: 1 } }, children: [_jsx(Avatar, { src: user?.picture, alt: "", sx: { width: 36, height: 36, bgcolor: 'secondary.main' }, children: initial }), _jsxs(Box, { sx: { minWidth: 0 }, children: [_jsx(Typography, { noWrap: true, sx: { fontWeight: 700 }, children: user?.name || 'User' }), user?.email && (_jsx(Typography, { noWrap: true, variant: "body2", sx: { color: 'text.secondary' }, children: user.email }))] })] }, "who"),
62
80
  _jsx(Divider, {}, "who-divider"),
63
81
  ...accountItems.map((item) => menuItem(item, closeAccount)),
64
- ...(accountItems.length > 0 ? [_jsx(Divider, {}, "appearance-divider")] : []),
65
- _jsxs(MenuItem, { onClick: () => setMode(nextColorMode), "aria-label": `Appearance: ${colorMode.label}. Switch to ${COLOR_MODE_OPTIONS.find((option) => option.value === nextColorMode)?.label}`, children: [_jsx(ListItemIcon, { children: _jsx(colorMode.Icon, { fontSize: "small" }) }), _jsx(ListItemText, { children: "Appearance" }), _jsx(Typography, { variant: "body2", sx: { color: 'text.secondary', ml: 2 }, children: colorMode.label })] }, "appearance"),
66
- _jsx(Divider, {}, "logout-divider"),
82
+ ...(accountItems.length > 0 ? [_jsx(Divider, {}, "logout-divider")] : []),
67
83
  _jsxs(MenuItem, { onClick: () => {
68
84
  closeAccount();
69
85
  onLogout();
@@ -80,8 +96,8 @@ export function AppLayout({ children, appName, navGroups, accountItems = [], use
80
96
  pb: 'calc(8px + env(safe-area-inset-bottom))'
81
97
  }
82
98
  }
83
- }, children: [_jsx(Box, { "aria-hidden": true, sx: { width: 36, height: 4, borderRadius: 2, bgcolor: 'divider', mx: 'auto', mt: 1.25 } }), _jsx(MenuList, { "aria-label": "Account", autoFocusItem: Boolean(accountAnchor), children: accountMenuItems })] })) : (_jsx(Menu, { anchorEl: accountAnchor, open: Boolean(accountAnchor), onClose: closeAccount, anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, transformOrigin: { vertical: 'bottom', horizontal: 'left' }, slotProps: {
84
- paper: { sx: { ml: 1, minWidth: 240, maxWidth: 320, borderRadius: 3 } },
99
+ }, children: [_jsx(Box, { "aria-hidden": true, sx: { width: 36, height: 4, borderRadius: 2, bgcolor: 'divider', mx: 'auto', mt: 1.25 } }), _jsx(MenuList, { "aria-label": "Account", autoFocusItem: Boolean(accountAnchor), children: accountMenuItems })] })) : (_jsx(Menu, { anchorEl: accountAnchor, open: Boolean(accountAnchor), onClose: closeAccount, anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, transformOrigin: { vertical: 'top', horizontal: 'right' }, slotProps: {
100
+ paper: { sx: { mt: 0.5, minWidth: 240, maxWidth: 320, borderRadius: 3 } },
85
101
  list: { 'aria-label': 'Account' }
86
102
  }, children: accountMenuItems }));
87
103
  // What the app bar calls the page: its section, else its group, else the app.
@@ -99,15 +115,38 @@ export function AppLayout({ children, appName, navGroups, accountItems = [], use
99
115
  pt: 'env(safe-area-inset-top)'
100
116
  };
101
117
  const sectionMenu = sectionGroup && (_jsx(Menu, { anchorEl: sectionAnchor, open: Boolean(sectionAnchor), onClose: closeSections, anchorOrigin: { vertical: 'bottom', horizontal: 'left' }, transformOrigin: { vertical: 'top', horizontal: 'left' }, slotProps: { paper: { sx: { minWidth: 220 } } }, children: sectionGroup.items.map((item) => menuItem(item, closeSections)) }));
102
- const header = mobile ? (_jsx(Box, { component: "header", sx: { ...appBarSx, minHeight: APP_BAR_HEIGHT, px: 1 }, children: sectionGroup ? (_jsxs(Box, { component: "nav", "aria-label": sectionGroup.label, sx: { minWidth: 0 }, children: [_jsx(Button, { onClick: (event) => setSectionAnchor(event.currentTarget), endIcon: _jsx(ExpandMore, {}), "aria-haspopup": "menu", "aria-expanded": Boolean(sectionAnchor), sx: {
103
- fontWeight: 700,
104
- fontSize: '1.125rem',
105
- color: 'inherit',
106
- minWidth: 0,
107
- maxWidth: '100%',
108
- px: 1.25,
109
- '&:hover': { bgcolor: surface.hover }
110
- }, children: _jsx(Box, { component: "span", sx: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: sectionGroup.items.find(isActive)?.text ?? sectionGroup.label }) }), sectionMenu] })) : (_jsx(Typography, { component: "span", noWrap: true, sx: { fontWeight: 700, fontSize: '1.125rem', px: 1.25 }, children: barTitle })) })) : (_jsxs(Box, { component: "header", sx: { ...appBarSx, minHeight: 64, gap: 3, px: { md: 5 } }, children: [_jsx(Typography, { component: "span", noWrap: true, sx: { fontWeight: 700, fontSize: '1.125rem', flexShrink: 0 }, children: activeGroup?.label ?? appName }), sectionGroup && (_jsx(Box, { component: "nav", "aria-label": sectionGroup.label, sx: { display: 'flex', alignItems: 'center', gap: 0.5, overflowX: 'auto', minWidth: 0 }, children: sectionGroup.items.map((item) => {
118
+ const avatarButton = (_jsx(IconButton, { onClick: (event) => setAccountAnchor(event.currentTarget), "aria-label": "Account", "aria-haspopup": "menu", "aria-expanded": Boolean(accountAnchor), sx: { p: 0.5 }, children: _jsx(Avatar, { src: user?.picture, alt: "", sx: { width: 32, height: 32, fontSize: '0.9rem', bgcolor: 'secondary.main' }, children: initial }) }));
119
+ const createMenu = isAuthenticated && createItems.length > 0 && (_jsxs(_Fragment, { children: [mobile ? (_jsx(IconButton, { onClick: (event) => setCreateAnchor(event.currentTarget), "aria-label": "New", "aria-haspopup": "menu", "aria-expanded": Boolean(createAnchor), children: _jsx(Add, {}) })) : (_jsx(Button, { variant: "contained", size: "small", startIcon: _jsx(Add, {}), endIcon: _jsx(ExpandMore, {}), onClick: (event) => setCreateAnchor(event.currentTarget), "aria-haspopup": "menu", "aria-expanded": Boolean(createAnchor), sx: { flexShrink: 0, height: 36 }, children: "New" })), _jsx(Menu, { anchorEl: createAnchor, open: Boolean(createAnchor), onClose: closeCreate, anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, transformOrigin: { vertical: 'top', horizontal: 'right' }, slotProps: { paper: { sx: { mt: 0.5, minWidth: 220 } }, list: { 'aria-label': 'New' } }, children: createItems.map((item) => menuItem(item, closeCreate)) })] }));
120
+ const searchTrigger = onSearch &&
121
+ (wideSearch ? (_jsxs(ButtonBase, { onClick: () => setSearchOpen(true), "aria-label": "Search", "aria-keyshortcuts": "Control+K Meta+K", sx: {
122
+ width: 280,
123
+ height: 38,
124
+ px: 1.5,
125
+ gap: 1,
126
+ flexShrink: 0,
127
+ justifyContent: 'flex-start',
128
+ borderRadius: 999,
129
+ border: `1px solid ${chrome.edge}`,
130
+ color: chrome.inkMuted,
131
+ '&:hover': { bgcolor: surface.hover, color: chrome.ink }
132
+ }, children: [_jsx(Search, { fontSize: "small" }), _jsx(Typography, { variant: "body2", sx: { flex: 1, textAlign: 'left', color: 'inherit' }, children: searchPlaceholder }), _jsx(Typography, { variant: "caption", "aria-hidden": true, sx: { color: 'inherit' }, children: SHORTCUT })] })) : (_jsx(IconButton, { onClick: () => setSearchOpen(true), "aria-label": "Search", sx: { color: chrome.inkMuted }, children: _jsx(Search, {}) })));
133
+ const visitorActions = !isAuthenticated && (_jsxs(_Fragment, { children: [!mobile &&
134
+ visitorLinks.map((link) => (_jsx(MuiLink, { href: link.href, underline: "none", sx: { flexShrink: 0, fontWeight: 500, color: chrome.inkMuted, '&:hover': { color: chrome.ink } }, children: link.text }, link.href))), _jsx(Button, { onClick: onLogin, size: "small", sx: { flexShrink: 0, height: 36, color: chrome.ink }, children: "Sign in" }), onSignup && (_jsx(Button, { onClick: onSignup, variant: "contained", size: "small", sx: { flexShrink: 0, height: 36 }, children: "Sign up" }))] }));
135
+ // Light or dark, in the bar rather than a menu: a visitor has no account menu, and the page they are reading is
136
+ // the one they want to change. It shows the one a click gives (a sun while dark) and always sets a choice; "Auto"
137
+ // is still there, in Account's appearance settings, for whoever wants the device to decide.
138
+ const themeButton = (_jsx(IconButton, { onClick: () => setMode(dark ? 'light' : 'dark'), "aria-label": dark ? 'Switch to light mode' : 'Switch to dark mode', title: dark ? 'Switch to light mode' : 'Switch to dark mode', sx: { color: chrome.inkMuted, '&:hover': { color: chrome.ink } }, children: dark ? _jsx(LightModeOutlined, {}) : _jsx(DarkModeOutlined, {}) }));
139
+ // Who the viewer is and what they can do, at the end of the bar: the rail is for places.
140
+ const headerActions = (_jsxs(Box, { sx: { display: 'flex', alignItems: 'center', gap: mobile ? 0.5 : 1.5, flexShrink: 0, ml: 'auto' }, children: [searchTrigger, themeButton, !authPending && visitorActions, !authPending && createMenu, !authPending && isAuthenticated && avatarButton] }));
141
+ const header = mobile ? (_jsxs(Box, { component: "header", sx: { ...appBarSx, minHeight: APP_BAR_HEIGHT, px: 1 }, children: [sectionGroup ? (_jsxs(Box, { component: "nav", "aria-label": sectionGroup.label, sx: { minWidth: 0 }, children: [_jsx(Button, { onClick: (event) => setSectionAnchor(event.currentTarget), endIcon: _jsx(ExpandMore, {}), "aria-haspopup": "menu", "aria-expanded": Boolean(sectionAnchor), sx: {
142
+ fontWeight: 700,
143
+ fontSize: '1.125rem',
144
+ color: 'inherit',
145
+ minWidth: 0,
146
+ maxWidth: '100%',
147
+ px: 1.25,
148
+ '&:hover': { bgcolor: surface.hover }
149
+ }, children: _jsx(Box, { component: "span", sx: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: sectionGroup.items.find(isActive)?.text ?? sectionGroup.label }) }), sectionMenu] })) : (_jsx(Typography, { component: "span", noWrap: true, sx: { fontWeight: 700, fontSize: '1.125rem', px: 1.25 }, children: barTitle })), headerActions] })) : (_jsxs(Box, { component: "header", sx: { ...appBarSx, minHeight: 64, gap: 3, px: { md: 5 } }, children: [_jsx(Typography, { component: "span", noWrap: true, sx: { fontWeight: 700, fontSize: '1.125rem', flexShrink: 0 }, children: activeGroup?.label ?? appName }), sectionGroup && (_jsx(Box, { component: "nav", "aria-label": sectionGroup.label, sx: { display: 'flex', alignItems: 'center', gap: 0.5, overflowX: 'auto', minWidth: 0 }, children: sectionGroup.items.map((item) => {
111
150
  const active = isActive(item);
112
151
  return (_jsx(Button, { ...linkProps(item), startIcon: item.icon, "aria-current": active ? 'page' : undefined, sx: {
113
152
  flexShrink: 0,
@@ -122,7 +161,7 @@ export function AppLayout({ children, appName, navGroups, accountItems = [], use
122
161
  color: active ? palette.primary.main : chrome.ink
123
162
  }
124
163
  }, children: item.text }, item.text));
125
- }) }))] }));
164
+ }) })), headerActions] }));
126
165
  // On a phone the app bar already names the page.
127
166
  const pageHeader = showPageHeader && !mobile && (_jsx(Typography, { variant: "h4", component: "h1", sx: { fontSize: '1.75rem', lineHeight: 1.25, mb: 3 }, children: activeItem?.text || appName }));
128
167
  return (_jsxs(Box, { sx: { display: 'flex', minHeight: '100vh', ...pageBackground }, children: [_jsx(CssBaseline, {}), !mobile && (_jsxs(Box, { component: "nav", "aria-label": "Main", sx: {
@@ -173,9 +212,30 @@ export function AppLayout({ children, appName, navGroups, accountItems = [], use
173
212
  ...chrome.surface,
174
213
  color: chrome.inkMuted,
175
214
  borderTop: `1px solid ${chrome.edge}`
176
- }, children: railEntries })), isAuthenticated && accountMenu] }));
215
+ }, children: railEntries })), isAuthenticated && accountMenu, onSearch && (_jsx(SearchDialog, { open: searchOpen, placeholder: searchPlaceholder, recent: recent, onClose: () => setSearchOpen(false), onSubmit: (query) => {
216
+ setSearchOpen(false);
217
+ onSearch(query);
218
+ } }))] }));
219
+ }
220
+ const SHORTCUT = typeof navigator !== 'undefined' && /Mac|iPhone|iPad/.test(navigator.userAgent) ? '⌘K' : 'Ctrl K';
221
+ function SearchDialog({ open, placeholder, recent, onClose, onSubmit }) {
222
+ const [query, setQuery] = useState('');
223
+ const submit = (event) => {
224
+ event.preventDefault();
225
+ const trimmed = query.trim();
226
+ if (trimmed) {
227
+ onSubmit(trimmed);
228
+ setQuery('');
229
+ }
230
+ };
231
+ return (_jsx(Dialog, { open: open, onClose: onClose, fullWidth: true, maxWidth: "sm", slotProps: { paper: { sx: { alignSelf: 'flex-start', mt: { xs: 2, sm: 10 }, borderRadius: 3 } } }, children: _jsxs(Box, { component: "form", role: "search", onSubmit: submit, sx: { p: 1.5 }, children: [_jsx(TextField, { autoFocus: true, fullWidth: true, value: query, onChange: (event) => setQuery(event.target.value), placeholder: placeholder, slotProps: {
232
+ htmlInput: { 'aria-label': 'Search' },
233
+ input: {
234
+ startAdornment: (_jsx(InputAdornment, { position: "start", children: _jsx(Search, {}) }))
235
+ }
236
+ } }), !query.trim() && recent.length > 0 && (_jsxs(Box, { sx: { mt: 1.5 }, children: [_jsx(Typography, { id: "search-recent", component: "h2", sx: { fontSize: 12, fontWeight: 700, letterSpacing: '0.06em', textTransform: 'uppercase', color: 'text.secondary', px: 1, mb: 0.5 }, children: "Recently visited" }), _jsx(List, { dense: true, "aria-labelledby": "search-recent", disablePadding: true, children: recent.map((place) => (_jsxs(ListItemButton, { component: Link, to: place.path, onClick: onClose, sx: { borderRadius: 2 }, children: [place.icon && _jsx(ListItemIcon, { sx: { minWidth: 36 }, children: place.icon }), _jsx(ListItemText, { primary: place.text, secondary: place.secondary, slotProps: { primary: { noWrap: true } } })] }, place.key))) })] }))] }) }));
177
237
  }
178
- function NavButton({ label, icon, active, current, mobile, target, onClick, expanded }) {
238
+ function NavButton({ label, icon, active, current, mobile, target }) {
179
239
  const theme = useTheme();
180
240
  const palette = livePalette(theme);
181
241
  // The rail and the phone's tab bar are the same frosted chrome, in either scheme.
@@ -223,10 +283,6 @@ function NavButton({ label, icon, active, current, mobile, target, onClick, expa
223
283
  overflow: 'hidden',
224
284
  textOverflow: 'ellipsis'
225
285
  }, children: label })] }));
226
- const ariaCurrent = current ? 'true' : undefined;
227
- if (target) {
228
- return (_jsx(ButtonBase, { ...linkProps(target), "aria-current": ariaCurrent, disableRipple: true, sx: sx, children: body }));
229
- }
230
- return (_jsx(ButtonBase, { onClick: onClick, "aria-current": ariaCurrent, "aria-haspopup": expanded === undefined ? undefined : 'menu', "aria-expanded": expanded, disableRipple: true, sx: sx, children: body }));
286
+ return (_jsx(ButtonBase, { ...linkProps(target), "aria-current": current ? 'true' : undefined, disableRipple: true, sx: sx, children: body }));
231
287
  }
232
288
  //# sourceMappingURL=AppLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppLayout.js","sourceRoot":"","sources":["../../../src/components/AppLayout/AppLayout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAa,QAAQ,EAAc,MAAM,OAAO,CAAC;AACxD,OAAO,EACL,MAAM,EACN,GAAG,EACH,MAAM,EACN,UAAU,EACV,WAAW,EACX,OAAO,EACP,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,cAAc,EACd,QAAQ,EACT,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAkB,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElE,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB,MAAM,cAAc,GAAG,EAAE,CAAC;AA2E1B,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,QAAgB,EAAW,EAAE,CAC7D,QAAQ,KAAK,MAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;AAE3D,+EAA+E;AAC/E,iBAAiB;AACjB,MAAM,SAAS,GAAG,CAAC,IAAsB,EAAE,EAAE,CAC3C,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAY,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAE9G;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,OAAO,EACP,SAAS,EACT,YAAY,GAAG,EAAE,EACjB,IAAI,EACJ,QAAQ,EACR,eAAe,GAAG,GAAG,EACrB,eAAe,GAAG,IAAI,EACtB,OAAO,EACP,cAAc,GAAG,IAAI,EACrB,QAAQ,EACO;IACf,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,sEAAsE;IACtE,4EAA4E;IAC5E,iEAAiE;IACjE,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAElC,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACpH,MAAM,aAAa,GACjB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;IAEpG,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAqB,IAAI,CAAC,CAAC;IAC7E,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAqB,IAAI,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAEnD,MAAM,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,YAAY,CAAC,CAAC;IAEjF,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,OAAO;IACP,MAAM,QAAQ,GAAG,CAAC,IAAsB,EAAE,EAAE,CAC1C,IAAI,CAAC,IAAI,KAAK,SAAS;QACvB,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI;YACrB,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;gBACnC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEvF,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE3C,MAAM,YAAY,GAAsB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IAC9F,MAAM,WAAW,GAAG,CAAC,GAAG,SAAS,EAAE,YAAY,CAAC,CAAC,IAAI,CACnD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAC1G,CAAC;IACF,gDAAgD;IAChD,MAAM,YAAY,GAAG,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAEtF,MAAM,OAAO,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,KAAC,MAAM,IAAC,QAAQ,EAAC,OAAO,GAAG,CAAC;IAErE,MAAM,QAAQ,GAAG,CAAC,IAAsB,EAAE,OAAmB,EAAE,EAAE,CAAC,CAChE,MAAC,QAAQ,OAAqB,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,aACvF,KAAC,YAAY,cAAE,IAAI,CAAC,IAAI,GAAgB,EACxC,KAAC,YAAY,cAAE,IAAI,CAAC,IAAI,GAAgB,KAF3B,IAAI,CAAC,IAAI,CAGb,CACZ,CAAC;IAEF,MAAM,WAAW,GAAG,CAClB,8BACG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACxB,KAAC,SAAS,IAER,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EACtB,MAAM,EAAE,KAAK,KAAK,WAAW,EAC7B,OAAO,EAAE,KAAK,KAAK,WAAW,EAC9B,MAAM,EAAE,MAAM,IANT,KAAK,CAAC,KAAK,CAOhB,CACH,CAAC,EAGD,CAAC,MAAM,IAAI,KAAC,GAAG,IAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAI,EAEnC,eAAe,CAAC,CAAC,CAAC,CACjB,KAAC,SAAS,IACR,KAAK,EAAC,SAAS,EACf,IAAI,EACF,KAAC,MAAM,IACL,GAAG,EAAE,IAAI,EAAE,OAAO,EAClB,GAAG,EAAC,EAAE,EACN,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,YAE3E,OAAO,GACD,EAEX,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI,WAAW,KAAK,YAAY,EAC9D,OAAO,EAAE,WAAW,KAAK,YAAY,EACrC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,EACzD,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,GAChC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,EAAE,KAAC,KAAK,KAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAI,CAC9G,IACA,CACJ,CAAC;IAEF,uEAAuE;IACvE,4BAA4B;IAC5B,MAAM,gBAAgB,GAAG;QACvB,MAAC,QAAQ,IAAW,QAAQ,QAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,aACvF,KAAC,MAAM,IAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAC,EAAE,EAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,YACxF,OAAO,GACD,EACT,MAAC,GAAG,IAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,aACtB,KAAC,UAAU,IAAC,MAAM,QAAC,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,YACvC,IAAI,EAAE,IAAI,IAAI,MAAM,GACV,EACZ,IAAI,EAAE,KAAK,IAAI,CACd,KAAC,UAAU,IAAC,MAAM,QAAC,OAAO,EAAC,OAAO,EAAC,EAAE,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,YAC/D,IAAI,CAAC,KAAK,GACA,CACd,IACG,KAbM,KAAK,CAcR;QACX,KAAC,OAAO,MAAK,aAAa,CAAG;QAC7B,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC3D,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAC,OAAO,MAAK,oBAAoB,CAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAI1E,MAAC,QAAQ,IAEP,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,gBACzB,eAAe,SAAS,CAAC,KAAK,eAAe,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,aAAa,CAAC,EAAE,KAAK,EAAE,aAErI,KAAC,YAAY,cACX,KAAC,SAAS,CAAC,IAAI,IAAC,QAAQ,EAAC,OAAO,GAAG,GACtB,EACf,KAAC,YAAY,6BAA0B,EACvC,KAAC,UAAU,IAAC,OAAO,EAAC,OAAO,EAAC,EAAE,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,EAAE,YAC/D,SAAS,CAAC,KAAK,GACL,KAVT,YAAY,CAWP;QACX,KAAC,OAAO,MAAK,gBAAgB,CAAG;QAChC,MAAC,QAAQ,IAEP,OAAO,EAAE,GAAG,EAAE;gBACZ,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,CAAC;YACb,CAAC,aAED,KAAC,YAAY,cACX,KAAC,MAAM,IAAC,QAAQ,EAAC,OAAO,GAAG,GACd,EACf,KAAC,YAAY,yBAAsB,KAT/B,QAAQ,CAUH;KACZ,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAC3B,MAAC,MAAM,IACL,MAAM,EAAC,QAAQ,EACf,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAC5B,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,EAAE,EAAE;oBACF,GAAG,KAAK;oBACR,YAAY,EAAE,MAAM;oBACpB,mBAAmB,EAAE,EAAE;oBACvB,oBAAoB,EAAE,EAAE;oBACxB,SAAS,EAAE,OAAO;oBAClB,EAAE,EAAE,yCAAyC;iBAC9C;aACF;SACF,aAED,KAAC,GAAG,yBAAa,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAI,EAC5G,KAAC,QAAQ,kBAAY,SAAS,EAAC,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,YACjE,gBAAgB,GACR,IACJ,CACV,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IACH,QAAQ,EAAE,aAAa,EACvB,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAC5B,OAAO,EAAE,YAAY,EACrB,YAAY,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,EACzD,eAAe,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,EAC3D,SAAS,EAAE;YACT,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,EAAE,EAAE;YACvE,IAAI,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE;SAClC,YAEA,gBAAgB,GACZ,CACR,CAAC;IAEF,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,UAAU,EAAE,IAAI,IAAI,WAAW,EAAE,KAAK,IAAI,OAAO,CAAC;IAEnE,MAAM,QAAQ,GAAG;QACf,QAAQ,EAAE,QAAQ;QAClB,GAAG,EAAE,CAAC;QACN,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;QAC3B,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,QAAQ;QACpB,GAAG,MAAM,CAAC,OAAO;QACjB,KAAK,EAAE,MAAM,CAAC,GAAG;QACjB,YAAY,EAAE,aAAa,MAAM,CAAC,IAAI,EAAE;QACxC,wEAAwE;QACxE,EAAE,EAAE,0BAA0B;KACtB,CAAC;IAEX,MAAM,WAAW,GAAG,YAAY,IAAI,CAClC,KAAC,IAAI,IACH,QAAQ,EAAE,aAAa,EACvB,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAC5B,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,EACxD,eAAe,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,EACxD,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,YAE9C,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,GAC3D,CACR,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CACtB,KAAC,GAAG,IAAC,SAAS,EAAC,QAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,EAAE,YAC1E,YAAY,CAAC,CAAC,CAAC,CACd,MAAC,GAAG,IAAC,SAAS,EAAC,KAAK,gBAAa,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,aACtE,KAAC,MAAM,IACL,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,EACzD,OAAO,EAAE,KAAC,UAAU,KAAG,mBACT,MAAM,mBACL,OAAO,CAAC,aAAa,CAAC,EACrC,EAAE,EAAE;wBACF,UAAU,EAAE,GAAG;wBACf,QAAQ,EAAE,UAAU;wBACpB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,CAAC;wBACX,QAAQ,EAAE,MAAM;wBAChB,EAAE,EAAE,IAAI;wBACR,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE;qBACtC,YAGD,KAAC,GAAG,IAAC,SAAS,EAAC,MAAM,EAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,YAC7F,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,YAAY,CAAC,KAAK,GAC1D,GACC,EACR,WAAW,IACR,CACP,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IAAC,SAAS,EAAC,MAAM,EAAC,MAAM,QAAC,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,YACxF,QAAQ,GACE,CACd,GACG,CACP,CAAC,CAAC,CAAC,CACF,MAAC,GAAG,IAAC,SAAS,EAAC,QAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,aAE/E,KAAC,UAAU,IAAC,SAAS,EAAC,MAAM,EAAC,MAAM,QAAC,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,EAAE,YAC7F,WAAW,EAAE,KAAK,IAAI,OAAO,GACnB,EACZ,YAAY,IAAI,CACf,KAAC,GAAG,IACF,SAAS,EAAC,KAAK,gBACH,YAAY,CAAC,KAAK,EAC9B,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,YAEtF,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC9B,OAAO,CACL,KAAC,MAAM,OAED,SAAS,CAAC,IAAI,CAAC,EACnB,SAAS,EAAE,IAAI,CAAC,IAAI,kBACN,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EACzC,EAAE,EAAE;4BACF,UAAU,EAAE,CAAC;4BACb,EAAE,EAAE,IAAI;4BACR,MAAM,EAAE,EAAE;4BACV,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;4BAC9B,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;4BACtD,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa;4BACzE,4BAA4B,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;4BAC9C,SAAS,EAAE;gCACT,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;gCACzE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG;6BAClD;yBACF,YAEA,IAAI,CAAC,IAAI,IAlBL,IAAI,CAAC,IAAI,CAmBP,CACV,CAAC;gBACJ,CAAC,CAAC,GACE,CACP,IACG,CACP,CAAC;IAEF,iDAAiD;IACjD,MAAM,UAAU,GAAG,cAAc,IAAI,CAAC,MAAM,IAAI,CAG9C,KAAC,UAAU,IAAC,OAAO,EAAC,IAAI,EAAC,SAAS,EAAC,IAAI,EAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,YACzF,UAAU,EAAE,IAAI,IAAI,OAAO,GACjB,CACd,CAAC;IAEF,OAAO,CACL,MAAC,GAAG,IAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,aACjE,KAAC,WAAW,KAAG,EAEd,CAAC,MAAM,IAAI,CACV,MAAC,GAAG,IACF,SAAS,EAAC,KAAK,gBACJ,MAAM,EACjB,EAAE,EAAE;oBACF,KAAK,EAAE,UAAU;oBACjB,UAAU,EAAE,CAAC;oBACb,iEAAiE;oBACjE,mEAAmE;oBACnE,QAAQ,EAAE,QAAQ;oBAClB,GAAG,EAAE,CAAC;oBACN,SAAS,EAAE,YAAY;oBACvB,MAAM,EAAE,OAAO;oBACf,OAAO,EAAE,MAAM;oBACf,aAAa,EAAE,QAAQ;oBACvB,GAAG,EAAE,CAAC;oBACN,EAAE,EAAE,GAAG;oBACP,EAAE,EAAE,CAAC;oBACL,SAAS,EAAE,MAAM;oBACjB,GAAG,MAAM,CAAC,OAAO;oBACjB,KAAK,EAAE,MAAM,CAAC,GAAG;oBACjB,WAAW,EAAE,aAAa,MAAM,CAAC,IAAI,EAAE;iBACxC,aAEA,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,UAAU,IACT,SAAS,EAAE,IAAI,EACf,EAAE,EAAE,QAAQ,gBACD,YAAY,EACvB,aAAa,QACb,EAAE,EAAE;4BACF,SAAS,EAAE,QAAQ;4BACnB,EAAE,EAAE,CAAC;4BACL,CAAC,EAAE,GAAG;4BACN,YAAY,EAAE,MAAM;4BACpB,oBAAoB,EAAE,EAAE,OAAO,EAAE,aAAa,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;yBACzF,YAED,KAAC,GAAG,IAAC,SAAS,EAAC,KAAK,EAAC,GAAG,EAAC,WAAW,EAAC,GAAG,EAAC,OAAO,EAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI,GACzF,CACd,CAAC,CAAC,CAAC,CACF,KAAC,GAAG,IAAC,SAAS,EAAC,KAAK,EAAC,GAAG,EAAC,WAAW,EAAC,GAAG,EAAC,OAAO,EAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAI,CACjH,EACA,WAAW,IACR,CACP,EAED,MAAC,GAAG,IAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,aAC5E,MAAM,EAEP,KAAC,GAAG,IACF,SAAS,EAAC,MAAM,EAChB,EAAE,EAAE;4BACF,QAAQ,EAAE,CAAC;4BACX,oEAAoE;4BACpE,4DAA4D;4BAC5D,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;4BAC1B,mEAAmE;4BACnE,qEAAqE;4BACrE,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,EAAE,QAAQ,cAAc,QAAQ,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,EAAE,CAAC;4BACtG,OAAO,EAAE,MAAM;4BACf,aAAa,EAAE,QAAQ;4BACvB,UAAU,EAAE,QAAQ;yBACrB,YAED,MAAC,GAAG,IAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,aAClD,UAAU,EACV,QAAQ,IACL,GACF,IACF,EAEL,MAAM,IAAI,CACT,KAAC,GAAG,IACF,SAAS,EAAC,KAAK,gBACJ,MAAM,EACjB,EAAE,EAAE;oBACF,QAAQ,EAAE,OAAO;oBACjB,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,CAAC;oBACT,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;oBAC3B,OAAO,EAAE,MAAM;oBACf,EAAE,EAAE,GAAG;oBACP,EAAE,EAAE,IAAI;oBACR,EAAE,EAAE,yCAAyC;oBAC7C,GAAG,MAAM,CAAC,OAAO;oBACjB,KAAK,EAAE,MAAM,CAAC,QAAQ;oBACtB,SAAS,EAAE,aAAa,MAAM,CAAC,IAAI,EAAE;iBACtC,YAEA,WAAW,GACR,CACP,EAEA,eAAe,IAAI,WAAW,IAC3B,CACP,CAAC;AACJ,CAAC;AAiBD,SAAS,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAkB;IACpG,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAEnC,kFAAkF;IAClF,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,MAAM,CAAC,QAAQ;QACrB,MAAM,EAAE,MAAM,CAAC,GAAG;QAClB,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;QAChC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;QAC7C,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;QACjD,SAAS,EAAE,OAAO,CAAC,KAAK;QACxB,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;KAC5B,CAAC;IAEF,MAAM,EAAE,GAAG;QACT,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;QACzB,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,MAAM;QACf,aAAa,EAAE,QAAQ;QACvB,UAAU,EAAE,QAAQ;QACpB,GAAG,EAAE,GAAG;QACR,EAAE,EAAE,GAAG;QACP,YAAY,EAAE,CAAC;QACf,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;QACvC,uBAAuB,EAAE,aAAa;QACtC,aAAa,EAAE;YACb,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,YAAY,EAAE,GAAG;YACjB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,QAAQ;YACpB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC3C,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa;YAC3C,UAAU,EAAE,gEAAgE;SAC7E;QACD,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACjC,mBAAmB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;QAC1E,oBAAoB,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE;QAClD,8BAA8B,EAAE,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;KAChF,CAAC;IAEX,MAAM,IAAI,GAAG,CACX,8BAEE,KAAC,GAAG,IAAC,SAAS,EAAC,UAAU,iCACtB,IAAI,GACD,EACN,KAAC,GAAG,IACF,SAAS,EAAC,MAAM,EAChB,EAAE,EAAE;oBACF,QAAQ,EAAE,MAAM;oBAChB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;oBAC5B,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;oBAC9B,UAAU,EAAE,GAAG;oBACf,UAAU,EAAE,QAAQ;oBACpB,QAAQ,EAAE,QAAQ;oBAClB,YAAY,EAAE,UAAU;iBACzB,YAEA,KAAK,GACF,IACL,CACJ,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAE,MAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CACL,KAAC,UAAU,OAAK,SAAS,CAAC,MAAM,CAAC,kBAAgB,WAAW,EAAE,aAAa,QAAC,EAAE,EAAE,EAAE,YAC/E,IAAI,GACM,CACd,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,kBACF,WAAW,mBACV,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,mBAC3C,QAAQ,EACvB,aAAa,QACb,EAAE,EAAE,EAAE,YAEL,IAAI,GACM,CACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"AppLayout.js","sourceRoot":"","sources":["../../../src/components/AppLayout/AppLayout.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export { AppLayout } from './AppLayout';
2
- export type { AppLayoutProps, AppLayoutNavGroup, AppLayoutNavItem, AppLayoutInternalNavItem, AppLayoutExternalNavItem, AppLayoutUser } from './AppLayout';
2
+ export type { AppLayoutProps, AppLayoutNavGroup, AppLayoutNavItem, AppLayoutInternalNavItem, AppLayoutExternalNavItem, AppLayoutRecent, AppLayoutUser } from './AppLayout';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/AppLayout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACxB,aAAa,EACd,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/AppLayout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACxB,eAAe,EACf,aAAa,EACd,MAAM,aAAa,CAAC"}
@@ -0,0 +1,11 @@
1
+ /** More than a readme needs: the rest is not shown, so one cannot make every visitor's browser work on a book. */
2
+ export declare const MAX_MARKDOWN_LENGTH = 20000;
3
+ /**
4
+ * Text written in Markdown, shown safely. For what other people write (a project's readme): it renders to React
5
+ * elements, never to HTML, so nothing in it can run, raw HTML is shown as the text it is, images are not loaded,
6
+ * and a link must be http(s), mailto, an in-page anchor or an app path. See `parse.ts`.
7
+ */
8
+ export declare function Markdown({ children }: {
9
+ children: string;
10
+ }): import("react").JSX.Element;
11
+ //# sourceMappingURL=Markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../../src/components/Markdown/Markdown.tsx"],"names":[],"mappings":"AAIA,kHAAkH;AAClH,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAiI1C;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,+BAG1D"}