@kelpie/ui 0.3.1 → 0.4.1

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 (127) hide show
  1. package/dist/api/resources/account.d.ts +5 -0
  2. package/dist/api/resources/account.d.ts.map +1 -1
  3. package/dist/api/resources/account.js +11 -0
  4. package/dist/api/resources/account.js.map +1 -1
  5. package/dist/api/resources/apiKeys.d.ts +15 -0
  6. package/dist/api/resources/apiKeys.d.ts.map +1 -0
  7. package/dist/api/resources/apiKeys.js +50 -0
  8. package/dist/api/resources/apiKeys.js.map +1 -0
  9. package/dist/app/KelpieApp.d.ts.map +1 -1
  10. package/dist/app/KelpieApp.js +18 -1
  11. package/dist/app/KelpieApp.js.map +1 -1
  12. package/dist/components/ActivitiesPanel.d.ts.map +1 -1
  13. package/dist/components/ActivitiesPanel.js +10 -7
  14. package/dist/components/ActivitiesPanel.js.map +1 -1
  15. package/dist/components/ApiKeysPanel.d.ts +20 -0
  16. package/dist/components/ApiKeysPanel.d.ts.map +1 -0
  17. package/dist/components/ApiKeysPanel.js +70 -0
  18. package/dist/components/ApiKeysPanel.js.map +1 -0
  19. package/dist/components/DecisionsPanel.d.ts.map +1 -1
  20. package/dist/components/DecisionsPanel.js +3 -1
  21. package/dist/components/DecisionsPanel.js.map +1 -1
  22. package/dist/components/NotesPanel.d.ts.map +1 -1
  23. package/dist/components/NotesPanel.js +3 -1
  24. package/dist/components/NotesPanel.js.map +1 -1
  25. package/dist/components/Shell.d.ts.map +1 -1
  26. package/dist/components/Shell.js +4 -16
  27. package/dist/components/Shell.js.map +1 -1
  28. package/dist/index.d.ts +3 -3
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +2 -2
  31. package/dist/index.js.map +1 -1
  32. package/dist/lib/dates.d.ts +25 -5
  33. package/dist/lib/dates.d.ts.map +1 -1
  34. package/dist/lib/dates.js +49 -20
  35. package/dist/lib/dates.js.map +1 -1
  36. package/dist/pages/DecisionsPage.d.ts.map +1 -1
  37. package/dist/pages/DecisionsPage.js +4 -2
  38. package/dist/pages/DecisionsPage.js.map +1 -1
  39. package/dist/pages/HiringPage.d.ts.map +1 -1
  40. package/dist/pages/HiringPage.js +3 -1
  41. package/dist/pages/HiringPage.js.map +1 -1
  42. package/dist/pages/PlanningPage.js +1 -1
  43. package/dist/pages/PlanningPage.js.map +1 -1
  44. package/dist/pages/account/AccountLayout.d.ts.map +1 -1
  45. package/dist/pages/account/AccountLayout.js +16 -7
  46. package/dist/pages/account/AccountLayout.js.map +1 -1
  47. package/dist/pages/account/PersonalApiKeysPage.d.ts +9 -0
  48. package/dist/pages/account/PersonalApiKeysPage.d.ts.map +1 -0
  49. package/dist/pages/account/PersonalApiKeysPage.js +14 -0
  50. package/dist/pages/account/PersonalApiKeysPage.js.map +1 -0
  51. package/dist/pages/account/PreferencesPage.js +1 -1
  52. package/dist/pages/account/PreferencesPage.js.map +1 -1
  53. package/dist/pages/account/SecurityPage.d.ts.map +1 -1
  54. package/dist/pages/account/SecurityPage.js +3 -2
  55. package/dist/pages/account/SecurityPage.js.map +1 -1
  56. package/dist/pages/admin/ApiKeysPage.d.ts +9 -0
  57. package/dist/pages/admin/ApiKeysPage.d.ts.map +1 -0
  58. package/dist/pages/admin/ApiKeysPage.js +20 -0
  59. package/dist/pages/admin/ApiKeysPage.js.map +1 -0
  60. package/dist/pages/admin/McpPage.d.ts.map +1 -1
  61. package/dist/pages/admin/McpPage.js +6 -3
  62. package/dist/pages/admin/McpPage.js.map +1 -1
  63. package/dist/pages/admin/WebhookDeliveries.d.ts.map +1 -1
  64. package/dist/pages/admin/WebhookDeliveries.js +4 -2
  65. package/dist/pages/admin/WebhookDeliveries.js.map +1 -1
  66. package/dist/pages/admin/WebhooksPage.d.ts.map +1 -1
  67. package/dist/pages/admin/WebhooksPage.js +5 -3
  68. package/dist/pages/admin/WebhooksPage.js.map +1 -1
  69. package/dist/pages/dashboard/DashboardPage.d.ts.map +1 -1
  70. package/dist/pages/dashboard/DashboardPage.js +6 -4
  71. package/dist/pages/dashboard/DashboardPage.js.map +1 -1
  72. package/dist/pages/dashboard/sections.d.ts +6 -3
  73. package/dist/pages/dashboard/sections.d.ts.map +1 -1
  74. package/dist/pages/dashboard/sections.js +6 -6
  75. package/dist/pages/dashboard/sections.js.map +1 -1
  76. package/dist/pages/forms/SubmissionsTable.d.ts.map +1 -1
  77. package/dist/pages/forms/SubmissionsTable.js +3 -1
  78. package/dist/pages/forms/SubmissionsTable.js.map +1 -1
  79. package/dist/pages/handbook/HandbookPage.d.ts.map +1 -1
  80. package/dist/pages/handbook/HandbookPage.js +3 -1
  81. package/dist/pages/handbook/HandbookPage.js.map +1 -1
  82. package/dist/registry/context.d.ts +1 -2
  83. package/dist/registry/context.d.ts.map +1 -1
  84. package/dist/registry/context.js +0 -3
  85. package/dist/registry/context.js.map +1 -1
  86. package/dist/registry/contributions.d.ts +1 -12
  87. package/dist/registry/contributions.d.ts.map +1 -1
  88. package/dist/registry/contributions.js +0 -7
  89. package/dist/registry/contributions.js.map +1 -1
  90. package/dist/registry/registry.d.ts +1 -3
  91. package/dist/registry/registry.d.ts.map +1 -1
  92. package/dist/registry/registry.js +0 -6
  93. package/dist/registry/registry.js.map +1 -1
  94. package/dist/registry/visibleNav.d.ts +3 -0
  95. package/dist/registry/visibleNav.d.ts.map +1 -0
  96. package/dist/registry/visibleNav.js +27 -0
  97. package/dist/registry/visibleNav.js.map +1 -0
  98. package/package.json +2 -2
  99. package/src/api/resources/account.ts +13 -0
  100. package/src/api/resources/apiKeys.ts +60 -0
  101. package/src/app/KelpieApp.tsx +30 -1
  102. package/src/components/ActivitiesPanel.tsx +15 -4
  103. package/src/components/ApiKeysPanel.tsx +307 -0
  104. package/src/components/DecisionsPanel.tsx +5 -2
  105. package/src/components/NotesPanel.tsx +4 -1
  106. package/src/components/Shell.tsx +4 -22
  107. package/src/index.ts +1 -4
  108. package/src/lib/dates.ts +54 -20
  109. package/src/pages/DecisionsPage.tsx +6 -2
  110. package/src/pages/HiringPage.tsx +3 -1
  111. package/src/pages/PlanningPage.tsx +1 -1
  112. package/src/pages/account/AccountLayout.tsx +21 -9
  113. package/src/pages/account/PersonalApiKeysPage.tsx +27 -0
  114. package/src/pages/account/PreferencesPage.tsx +1 -1
  115. package/src/pages/account/SecurityPage.tsx +4 -1
  116. package/src/pages/admin/ApiKeysPage.tsx +43 -0
  117. package/src/pages/admin/McpPage.tsx +7 -4
  118. package/src/pages/admin/WebhookDeliveries.tsx +4 -2
  119. package/src/pages/admin/WebhooksPage.tsx +5 -3
  120. package/src/pages/dashboard/DashboardPage.tsx +14 -4
  121. package/src/pages/dashboard/sections.tsx +9 -3
  122. package/src/pages/forms/SubmissionsTable.tsx +3 -1
  123. package/src/pages/handbook/HandbookPage.tsx +3 -1
  124. package/src/registry/context.ts +0 -5
  125. package/src/registry/contributions.ts +1 -20
  126. package/src/registry/registry.ts +0 -11
  127. package/src/registry/visibleNav.ts +38 -0
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ApiKeysPanel } from '../../components/ApiKeysPanel.js';
3
+ import { PageHeader } from '../../components/PageHeader.js';
4
+ /**
5
+ * Personal keys: act as the signed-in member against the public API and MCP.
6
+ *
7
+ * No role gate. `GET /v1/api-keys?kind=personal` scopes itself to the caller —
8
+ * every member manages their own, and an admin cannot see or revoke a
9
+ * colleague's; removing their membership is how you cut that off.
10
+ */
11
+ export function PersonalApiKeysPage() {
12
+ return (_jsxs("div", { className: "animate-slide-in space-y-4", children: [_jsx(PageHeader, { title: "API keys", description: "Personal keys act as you against the public API and MCP. Workspace keys live under Admin." }), _jsx(ApiKeysPanel, { kind: "personal", namePlaceholder: "Laptop Claude", createTitle: "Create personal API key", emptyMessage: "No personal API keys yet." })] }));
13
+ }
14
+ //# sourceMappingURL=PersonalApiKeysPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersonalApiKeysPage.js","sourceRoot":"","sources":["../../../src/pages/account/PersonalApiKeysPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAmC,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAiC,CAAA;AAE5D;;;;;;GAMG;AAEH,MAAM,UAAU,mBAAmB;IACjC,OAAO,CACL,eAAK,SAAS,EAAC,4BAA4B,aACzC,KAAC,UAAU,IACT,KAAK,EAAC,UAAU,EAChB,WAAW,EAAC,2FAA2F,GACvG,EACF,KAAC,YAAY,IACX,IAAI,EAAC,UAAU,EACf,eAAe,EAAC,eAAe,EAC/B,WAAW,EAAC,yBAAyB,EACrC,YAAY,EAAC,2BAA2B,GACxC,IACE,CACP,CAAA;AACH,CAAC"}
@@ -82,7 +82,7 @@ function PreferencesForm({ preferences, }) {
82
82
  theme === value
83
83
  ? 'bg-surface-sunken font-medium text-ink'
84
84
  : 'text-ink-muted hover:text-ink',
85
- ].join(' '), children: THEME_LABELS[value] }, value))) }), _jsx("p", { className: "mt-1 text-[11px] text-ink-faint", children: "Saved to your account as you click, and applied in every browser you sign in to." })] }), _jsx("div", { className: "max-w-md", children: _jsx(Field, { label: "Timezone", hint: "Stored on your account. Kelpie does not format dates by it yet.", children: _jsx(EntitySearch, { options: zones.map((zone) => ({ id: zone, label: zone })), value: timezone, onChange: setTimezone, placeholder: "Search time zones\u2026", limit: 20, required: true, size: "md" }) }) }), _jsxs("fieldset", { className: "space-y-2", children: [_jsx("legend", { className: "text-[12px] font-medium text-ink", children: "Email notifications" }), _jsx("p", { className: "max-w-lg text-[11px] text-ink-faint", children: "Kelpie does not send these emails yet. Your choices are saved and will apply when it does." }), _jsx(Toggle, { checked: emailDigest, onChange: setEmailDigest, label: "Weekly digest", description: "Summary of deals, decisions, and activity." }), _jsx(Toggle, { checked: mentionEmails, onChange: setMentionEmails, label: "Mentions and assignments", description: "When someone mentions you or assigns a Plan item." }), _jsx(Toggle, { checked: productUpdates, onChange: setProductUpdates, label: "Product updates", description: "Occasional notes about Kelpie releases." })] }), update.error !== null && (_jsx("div", { className: "max-w-lg", children: _jsx(ErrorPanel, { error: update.error }) })), _jsx("button", { type: "submit", disabled: update.isPending, className: "rounded-md bg-accent px-3 py-1.5 text-[12px] font-medium text-accent-fg transition hover:bg-accent-hover disabled:opacity-50", children: update.isPending ? 'Saving…' : saved ? 'Saved' : 'Save preferences' })] })] }));
85
+ ].join(' '), children: THEME_LABELS[value] }, value))) }), _jsx("p", { className: "mt-1 text-[11px] text-ink-faint", children: "Saved to your account as you click, and applied in every browser you sign in to." })] }), _jsx("div", { className: "max-w-md", children: _jsx(Field, { label: "Timezone", hint: "Stored on your account. Dates across Kelpie use this zone.", children: _jsx(EntitySearch, { options: zones.map((zone) => ({ id: zone, label: zone })), value: timezone, onChange: setTimezone, placeholder: "Search time zones\u2026", limit: 20, required: true, size: "md" }) }) }), _jsxs("fieldset", { className: "space-y-2", children: [_jsx("legend", { className: "text-[12px] font-medium text-ink", children: "Email notifications" }), _jsx("p", { className: "max-w-lg text-[11px] text-ink-faint", children: "Kelpie does not send these emails yet. Your choices are saved and will apply when it does." }), _jsx(Toggle, { checked: emailDigest, onChange: setEmailDigest, label: "Weekly digest", description: "Summary of deals, decisions, and activity." }), _jsx(Toggle, { checked: mentionEmails, onChange: setMentionEmails, label: "Mentions and assignments", description: "When someone mentions you or assigns a Plan item." }), _jsx(Toggle, { checked: productUpdates, onChange: setProductUpdates, label: "Product updates", description: "Occasional notes about Kelpie releases." })] }), update.error !== null && (_jsx("div", { className: "max-w-lg", children: _jsx(ErrorPanel, { error: update.error }) })), _jsx("button", { type: "submit", disabled: update.isPending, className: "rounded-md bg-accent px-3 py-1.5 text-[12px] font-medium text-accent-fg transition hover:bg-accent-hover disabled:opacity-50", children: update.isPending ? 'Saving…' : saved ? 'Saved' : 'Save preferences' })] })] }));
86
86
  }
87
87
  function Toggle({ checked, onChange, label, description, }) {
88
88
  return (_jsxs("label", { className: "flex max-w-lg cursor-pointer items-start gap-3 rounded-md border border-border px-3 py-2.5", children: [_jsx("input", { type: "checkbox", checked: checked, onChange: (event) => {
@@ -1 +1 @@
1
- {"version":3,"file":"PreferencesPage.js","sourceRoot":"","sources":["../../../src/pages/account/PreferencesPage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PreferencesPage.js","sourceRoot":"","sources":["../../../src/pages/account/PreferencesPage.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityPage.d.ts","sourceRoot":"","sources":["../../../src/pages/account/SecurityPage.tsx"],"names":[],"mappings":"AAcA;;;;;;;;GAQG;AAEH,wBAAgB,YAAY,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAQhD"}
1
+ {"version":3,"file":"SecurityPage.d.ts","sourceRoot":"","sources":["../../../src/pages/account/SecurityPage.tsx"],"names":[],"mappings":"AAeA;;;;;;;;GAQG;AAEH,wBAAgB,YAAY,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAQhD"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { MINIMUM_PASSWORD_LENGTH } from '@kelpie/schemas';
3
3
  import { useState } from 'react';
4
- import { useAccountSessions, useChangePassword, useRevokeAccountSession, } from '../../api/resources/account.js';
4
+ import { useAccountSessions, useChangePassword, useRevokeAccountSession, useTimezone, } from '../../api/resources/account.js';
5
5
  import { PageHeader } from '../../components/PageHeader.js';
6
6
  import { ErrorPanel, LoadingPanel } from '../../components/QueryState.js';
7
7
  import { formatDateTime } from '../../lib/dates.js';
@@ -73,6 +73,7 @@ function SessionList() {
73
73
  }, isRevoking: revoke.isPending }, session.id))) })] }) })), revoke.error !== null && (_jsx("div", { className: "mt-3 max-w-xl", children: _jsx(ErrorPanel, { error: revoke.error }) }))] }));
74
74
  }
75
75
  function SessionRow({ session, onRevoke, isRevoking, }) {
76
- return (_jsxs("tr", { className: "border-b border-border last:border-0", children: [_jsxs("td", { className: "px-4 py-3", children: [_jsx("div", { className: "font-medium break-all text-ink", children: session.device ?? 'Unknown device' }), session.current && _jsx("span", { className: "text-[11px] font-medium text-success", children: "This device" })] }), _jsx("td", { className: "px-4 py-3 text-ink-muted", children: session.location ?? 'Unknown' }), _jsx("td", { className: "px-4 py-3 text-ink-muted", children: formatDateTime(session.lastActiveAt) }), _jsx("td", { className: "px-4 py-3 text-right", children: !session.current && (_jsx("button", { type: "button", onClick: onRevoke, disabled: isRevoking, className: "text-[12px] font-medium text-danger hover:underline disabled:opacity-50", children: "Revoke" })) })] }));
76
+ const timezone = useTimezone();
77
+ return (_jsxs("tr", { className: "border-b border-border last:border-0", children: [_jsxs("td", { className: "px-4 py-3", children: [_jsx("div", { className: "font-medium break-all text-ink", children: session.device ?? 'Unknown device' }), session.current && _jsx("span", { className: "text-[11px] font-medium text-success", children: "This device" })] }), _jsx("td", { className: "px-4 py-3 text-ink-muted", children: session.location ?? 'Unknown' }), _jsx("td", { className: "px-4 py-3 text-ink-muted", children: formatDateTime(session.lastActiveAt, timezone) }), _jsx("td", { className: "px-4 py-3 text-right", children: !session.current && (_jsx("button", { type: "button", onClick: onRevoke, disabled: isRevoking, className: "text-[12px] font-medium text-danger hover:underline disabled:opacity-50", children: "Revoke" })) })] }));
77
78
  }
78
79
  //# sourceMappingURL=SecurityPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityPage.js","sourceRoot":"","sources":["../../../src/pages/account/SecurityPage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecurityPage.js","sourceRoot":"","sources":["../../../src/pages/account/SecurityPage.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Workspace keys, for shared agents and CI.
3
+ *
4
+ * `GET /v1/api-keys?kind=workspace` needs the admin role; the server answers
5
+ * `403` to anyone else. This page shows that plainly instead of rendering an
6
+ * empty table, the same shape `WebhooksPage` uses for the same reason.
7
+ */
8
+ export declare function ApiKeysPage(): React.JSX.Element;
9
+ //# sourceMappingURL=ApiKeysPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApiKeysPage.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/ApiKeysPage.tsx"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,wBAAgB,WAAW,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAsB/C"}
@@ -0,0 +1,20 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useSession } from '../../api/resources/session.js';
3
+ import { ApiKeysPanel } from '../../components/ApiKeysPanel.js';
4
+ import { PageHeader } from '../../components/PageHeader.js';
5
+ /**
6
+ * Workspace keys, for shared agents and CI.
7
+ *
8
+ * `GET /v1/api-keys?kind=workspace` needs the admin role; the server answers
9
+ * `403` to anyone else. This page shows that plainly instead of rendering an
10
+ * empty table, the same shape `WebhooksPage` uses for the same reason.
11
+ */
12
+ export function ApiKeysPage() {
13
+ const { session } = useSession();
14
+ const isAdmin = session?.role === 'owner' || session?.role === 'admin';
15
+ return (_jsxs("div", { className: "animate-slide-in mx-auto max-w-4xl space-y-4", children: [_jsx(PageHeader, { title: "API keys", description: "Workspace keys for shared agents and CI. Personal keys live under Account \u2192 API keys." }), isAdmin ? (_jsx(ApiKeysPanel, { kind: "workspace", namePlaceholder: "CI pipeline", createTitle: "Create API key", emptyMessage: "No API keys yet." })) : (_jsx(MemberNotice, {}))] }));
16
+ }
17
+ function MemberNotice() {
18
+ return (_jsx("p", { className: "rounded-md border border-border px-4 py-3 text-[13px] text-ink-muted", children: "Workspace keys are managed by workspace admins." }));
19
+ }
20
+ //# sourceMappingURL=ApiKeysPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApiKeysPage.js","sourceRoot":"","sources":["../../../src/pages/admin/ApiKeysPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAmC,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAiC,CAAA;AAE5D;;;;;;GAMG;AAEH,MAAM,UAAU,WAAW;IACzB,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAA;IAChC,MAAM,OAAO,GAAG,OAAO,EAAE,IAAI,KAAK,OAAO,IAAI,OAAO,EAAE,IAAI,KAAK,OAAO,CAAA;IAEtE,OAAO,CACL,eAAK,SAAS,EAAC,8CAA8C,aAC3D,KAAC,UAAU,IACT,KAAK,EAAC,UAAU,EAChB,WAAW,EAAC,4FAAuF,GACnG,EACD,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,YAAY,IACX,IAAI,EAAC,WAAW,EAChB,eAAe,EAAC,aAAa,EAC7B,WAAW,EAAC,gBAAgB,EAC5B,YAAY,EAAC,kBAAkB,GAC/B,CACH,CAAC,CAAC,CAAC,CACF,KAAC,YAAY,KAAG,CACjB,IACG,CACP,CAAA;AACH,CAAC;AAED,SAAS,YAAY;IACnB,OAAO,CACL,YAAG,SAAS,EAAC,sEAAsE,gEAE/E,CACL,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"McpPage.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/McpPage.tsx"],"names":[],"mappings":"AAkDA,wBAAgB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CA0E3C"}
1
+ {"version":3,"file":"McpPage.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/McpPage.tsx"],"names":[],"mappings":"AAmDA,wBAAgB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CA0E3C"}
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { AGENT_RUN_STATUS_LABELS } from '@kelpie/schemas';
3
3
  import { useMemo, useState } from 'react';
4
4
  import { Link } from 'react-router';
5
+ import { useTimezone } from '../../api/resources/account.js';
5
6
  import { useAgentRuns, useAgents, useAllAgentTasks, useCreateAgent, useDeleteAgent, } from '../../api/resources/agentTasks.js';
6
7
  import { useMcpTools } from '../../api/resources/mcpTools.js';
7
8
  import { PageHeader } from '../../components/PageHeader.js';
@@ -46,7 +47,7 @@ export function McpPage() {
46
47
  }
47
48
  }
48
49
  }`;
49
- return (_jsxs("div", { className: "animate-slide-in mx-auto max-w-4xl space-y-6", children: [_jsx(PageHeader, { title: "MCP", description: "Connect agents to this workspace over Streamable HTTP." }), _jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsx("h2", { className: "text-[15px] font-semibold text-ink", children: "How agents use Kelpie" }), _jsx("p", { className: "mt-2 max-w-2xl text-[13px] leading-relaxed text-ink-muted", children: "Kelpie is a CRM and a company brain. Every REST operation is also an MCP tool over Streamable HTTP, so an agent reads and writes the same records the app does, through the same API. Point Claude, Cursor, or any MCP client at this workspace. There is no bundled AI: bring your own agent." }), _jsxs("ul", { className: "mt-4 space-y-2 text-[13px] text-ink", children: [_jsxs("li", { className: "flex gap-2", children: [_jsx("span", { className: "text-accent", children: "\u2192" }), "An API key is bound to one workspace, so a client sees that workspace and no other."] }), _jsxs("li", { className: "flex gap-2", children: [_jsx("span", { className: "text-accent", children: "\u2192" }), "A tool refuses exactly what the endpoint behind it refuses, with the same message."] }), _jsxs("li", { className: "flex gap-2", children: [_jsx("span", { className: "text-accent", children: "\u2192" }), "Signing in with a browser session does not work here. The endpoint takes bearer keys only."] })] })] }), _jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Streamable HTTP endpoint" }), _jsx(CopyButton, { value: endpoint, label: "Copy the endpoint URL" })] }), _jsx("code", { className: "mt-3 block rounded-md border border-border bg-surface px-3 py-2.5 font-mono text-[13px] break-all text-ink", children: endpoint })] }), _jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Claude / Cursor config" }), _jsx(CopyButton, { value: config, label: "Copy the client config" })] }), _jsxs("p", { className: "mt-1 text-[12px] text-ink-muted", children: ["Paste into your MCP client config, and replace the bearer token with a workspace key from", ' ', _jsx(Link, { to: "/admin/workspace", className: "text-accent hover:underline", children: "workspace settings" }), "."] }), _jsx("pre", { className: "bg-code-bg text-code-fg mt-3 overflow-x-auto rounded-md border border-border p-4 font-mono text-[12px] leading-relaxed", children: config })] }), _jsx(RegisteredAgents, {}), _jsx(RecentRuns, {}), _jsx(ToolCatalog, {})] }));
50
+ return (_jsxs("div", { className: "animate-slide-in mx-auto max-w-4xl space-y-6", children: [_jsx(PageHeader, { title: "MCP", description: "Connect agents to this workspace over Streamable HTTP." }), _jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsx("h2", { className: "text-[15px] font-semibold text-ink", children: "How agents use Kelpie" }), _jsx("p", { className: "mt-2 max-w-2xl text-[13px] leading-relaxed text-ink-muted", children: "Kelpie is a CRM and a company brain. Every REST operation is also an MCP tool over Streamable HTTP, so an agent reads and writes the same records the app does, through the same API. Point Claude, Cursor, or any MCP client at this workspace. There is no bundled AI: bring your own agent." }), _jsxs("ul", { className: "mt-4 space-y-2 text-[13px] text-ink", children: [_jsxs("li", { className: "flex gap-2", children: [_jsx("span", { className: "text-accent", children: "\u2192" }), "An API key is bound to one workspace, so a client sees that workspace and no other."] }), _jsxs("li", { className: "flex gap-2", children: [_jsx("span", { className: "text-accent", children: "\u2192" }), "A tool refuses exactly what the endpoint behind it refuses, with the same message."] }), _jsxs("li", { className: "flex gap-2", children: [_jsx("span", { className: "text-accent", children: "\u2192" }), "Signing in with a browser session does not work here. The endpoint takes bearer keys only."] })] })] }), _jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Streamable HTTP endpoint" }), _jsx(CopyButton, { value: endpoint, label: "Copy the endpoint URL" })] }), _jsx("code", { className: "mt-3 block rounded-md border border-border bg-surface px-3 py-2.5 font-mono text-[13px] break-all text-ink", children: endpoint })] }), _jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Claude / Cursor config" }), _jsx(CopyButton, { value: config, label: "Copy the client config" })] }), _jsxs("p", { className: "mt-1 text-[12px] text-ink-muted", children: ["Paste into your MCP client config, and replace the bearer token with a workspace key from", ' ', _jsx(Link, { to: "/admin/api-keys", className: "text-accent hover:underline", children: "API keys" }), "."] }), _jsx("pre", { className: "bg-code-bg text-code-fg mt-3 overflow-x-auto rounded-md border border-border p-4 font-mono text-[12px] leading-relaxed", children: config })] }), _jsx(RegisteredAgents, {}), _jsx(RecentRuns, {}), _jsx(ToolCatalog, {})] }));
50
51
  }
51
52
  /**
52
53
  * Bring-your-own agents that Run dispatches to. Any member reads this list —
@@ -57,6 +58,7 @@ function RegisteredAgents() {
57
58
  const { records, isLoading, error } = useAgents();
58
59
  const createAgent = useCreateAgent();
59
60
  const deleteAgent = useDeleteAgent();
61
+ const timezone = useTimezone();
60
62
  const [adding, setAdding] = useState(false);
61
63
  const [name, setName] = useState('');
62
64
  const [endpoint, setEndpoint] = useState('');
@@ -89,7 +91,7 @@ function RegisteredAgents() {
89
91
  setAuthHeader(event.target.value);
90
92
  }, placeholder: "Bearer \u2026", className: "mt-1 w-full rounded-md border border-border bg-surface px-2.5 py-1.5 font-mono text-[12px] text-ink outline-none focus:border-accent" })] }), _jsxs("div", { className: "flex items-center gap-3", children: [_jsx("button", { type: "submit", disabled: createAgent.isPending, className: "rounded-md bg-accent px-3 py-1.5 text-[12px] font-semibold text-accent-fg hover:bg-accent-hover disabled:opacity-50", children: "Register agent" }), createAgent.error !== null && (_jsx("span", { className: "text-[12px] text-danger", children: createAgent.error.message }))] })] })), error !== null && _jsx("div", { className: "mt-4", children: _jsx(ErrorPanel, { error: error }) }), isLoading && _jsx(LoadingPanel, { label: "Loading agents\u2026" }), !isLoading && error === null && records.length === 0 && (_jsx("p", { className: "mt-4 text-[12px] text-ink-faint", children: "No agents registered. Copy prompt works without one; Run needs somewhere to send the task." })), records.length > 0 && (_jsx("ul", { className: "mt-4 divide-y divide-border rounded-md border border-border", children: records.map((agent) => (_jsxs("li", { className: "flex flex-wrap items-center justify-between gap-3 px-3 py-2.5", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "text-[13px] font-medium text-ink", children: agent.name }), _jsx("code", { className: "font-mono text-[11px] break-all text-ink-muted", children: agent.endpoint })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-3 text-[11px] text-ink-faint", children: [agent.hasAuthHeader && _jsx("span", { children: "Auth header set" }), _jsx("span", { children: agent.lastRunAt === null
91
93
  ? 'Never run'
92
- : `Last run ${formatRelativeTime(agent.lastRunAt)}` }), _jsx("button", { type: "button", onClick: () => {
94
+ : `Last run ${formatRelativeTime(agent.lastRunAt, timezone)}` }), _jsx("button", { type: "button", onClick: () => {
93
95
  deleteAgent.run(agent.id);
94
96
  }, className: "font-medium text-danger hover:underline", children: "Remove" })] })] }, agent.id))) })), deleteAgent.error !== null && (_jsx("p", { className: "mt-2 text-[12px] text-danger", children: deleteAgent.error.message }))] }));
95
97
  }
@@ -99,13 +101,14 @@ function RecentRuns() {
99
101
  const { records: runs, isLoading, error } = useAgentRuns();
100
102
  const catalog = useAllAgentTasks();
101
103
  const agents = useAgents();
104
+ const timezone = useTimezone();
102
105
  const taskLabels = useMemo(() => new Map(catalog.records.map((task) => [task.id, task.label])), [catalog.records]);
103
106
  const agentNames = useMemo(() => new Map(agents.records.map((agent) => [agent.id, agent.name])), [agents.records]);
104
107
  function describeRun(run) {
105
108
  const agentName = agentNames.get(run.agentId) ?? 'a removed agent';
106
109
  return `${run.targetType}/${run.targetId} → ${agentName}`;
107
110
  }
108
- return (_jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Recent runs" }), _jsx("p", { className: "mt-1 text-[12px] text-ink-muted", children: "Each run records the dispatch: queued, then succeeded or failed with the reason. What the agent did afterwards is on the records themselves." }), error !== null && _jsx("div", { className: "mt-4", children: _jsx(ErrorPanel, { error: error }) }), isLoading && _jsx(LoadingPanel, { label: "Loading runs\u2026" }), !isLoading && error === null && runs.length === 0 && (_jsx("p", { className: "mt-4 text-[12px] text-ink-faint", children: "No runs yet. Run an agent task from any record page." })), runs.length > 0 && (_jsx("ul", { className: "mt-4 divide-y divide-border rounded-md border border-border", children: runs.slice(0, RUN_LOG_ROWS).map((run) => (_jsxs("li", { className: "flex flex-wrap items-center justify-between gap-3 px-3 py-2.5", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "text-[13px] font-medium text-ink", children: taskLabels.get(run.taskId) ?? run.taskId }), _jsx("div", { className: "text-[11px] text-ink-muted", children: describeRun(run) }), run.failureReason !== null && (_jsx("div", { className: "text-[11px] text-danger", children: run.failureReason }))] }), _jsxs("div", { className: "flex shrink-0 items-center gap-3 text-[11px]", children: [_jsx("span", { className: run.status === 'failed' ? 'font-medium text-danger' : 'text-ink-muted', children: AGENT_RUN_STATUS_LABELS[run.status] }), _jsx("span", { className: "text-ink-faint", children: formatRelativeTime(run.updatedAt) })] })] }, run.id))) }))] }));
111
+ return (_jsxs("section", { className: "rounded-md border border-border p-5", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Recent runs" }), _jsx("p", { className: "mt-1 text-[12px] text-ink-muted", children: "Each run records the dispatch: queued, then succeeded or failed with the reason. What the agent did afterwards is on the records themselves." }), error !== null && _jsx("div", { className: "mt-4", children: _jsx(ErrorPanel, { error: error }) }), isLoading && _jsx(LoadingPanel, { label: "Loading runs\u2026" }), !isLoading && error === null && runs.length === 0 && (_jsx("p", { className: "mt-4 text-[12px] text-ink-faint", children: "No runs yet. Run an agent task from any record page." })), runs.length > 0 && (_jsx("ul", { className: "mt-4 divide-y divide-border rounded-md border border-border", children: runs.slice(0, RUN_LOG_ROWS).map((run) => (_jsxs("li", { className: "flex flex-wrap items-center justify-between gap-3 px-3 py-2.5", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "text-[13px] font-medium text-ink", children: taskLabels.get(run.taskId) ?? run.taskId }), _jsx("div", { className: "text-[11px] text-ink-muted", children: describeRun(run) }), run.failureReason !== null && (_jsx("div", { className: "text-[11px] text-danger", children: run.failureReason }))] }), _jsxs("div", { className: "flex shrink-0 items-center gap-3 text-[11px]", children: [_jsx("span", { className: run.status === 'failed' ? 'font-medium text-danger' : 'text-ink-muted', children: AGENT_RUN_STATUS_LABELS[run.status] }), _jsx("span", { className: "text-ink-faint", children: formatRelativeTime(run.updatedAt, timezone) })] })] }, run.id))) }))] }));
109
112
  }
110
113
  /**
111
114
  * What this deployment actually registered, read from the endpoint's own registry.
@@ -1 +1 @@
1
- {"version":3,"file":"McpPage.js","sourceRoot":"","sources":["../../../src/pages/admin/McpPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAEnC,OAAO,EACL,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,cAAc,GACf,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAiC,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gCAAiC,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAiC,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEvD;;;;;;;;;;;;;GAaG;AAEH;;;GAGG;AACH,SAAS,OAAO,CAAC,IAAa,EAAE,IAAY;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAExC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,CACL,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;QACxC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAChD,CAAA;AACH,CAAC;AAED,MAAM,UAAU,OAAO;IACrB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAA;IACnE,MAAM,MAAM,GAAG;;;gBAGD,QAAQ;;;;;;EAMtB,CAAA;IAEA,OAAO,CACL,eAAK,SAAS,EAAC,8CAA8C,aAC3D,KAAC,UAAU,IAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAC,wDAAwD,GAAG,EAE/F,mBAAS,SAAS,EAAC,qCAAqC,aACtD,aAAI,SAAS,EAAC,oCAAoC,sCAA2B,EAC7E,YAAG,SAAS,EAAC,2DAA2D,+SAKpE,EACJ,cAAI,SAAS,EAAC,qCAAqC,aACjD,cAAI,SAAS,EAAC,YAAY,aACxB,eAAM,SAAS,EAAC,aAAa,uBAAS,2FAEnC,EACL,cAAI,SAAS,EAAC,YAAY,aACxB,eAAM,SAAS,EAAC,aAAa,uBAAS,0FAEnC,EACL,cAAI,SAAS,EAAC,YAAY,aACxB,eAAM,SAAS,EAAC,aAAa,uBAAS,kGAGnC,IACF,IACG,EAEV,mBAAS,SAAS,EAAC,qCAAqC,aACtD,eAAK,SAAS,EAAC,yCAAyC,aACtD,aAAI,SAAS,EAAC,oCAAoC,yCAA8B,EAChF,KAAC,UAAU,IAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAC,uBAAuB,GAAG,IACzD,EACN,eAAM,SAAS,EAAC,4GAA4G,YACzH,QAAQ,GACJ,IACC,EAEV,mBAAS,SAAS,EAAC,qCAAqC,aACtD,eAAK,SAAS,EAAC,yCAAyC,aACtD,aAAI,SAAS,EAAC,oCAAoC,uCAA4B,EAC9E,KAAC,UAAU,IAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAC,wBAAwB,GAAG,IACxD,EACN,aAAG,SAAS,EAAC,iCAAiC,0GAC8C,GAAG,EAC7F,KAAC,IAAI,IAAC,EAAE,EAAC,kBAAkB,EAAC,SAAS,EAAC,6BAA6B,mCAE5D,SAEL,EACJ,cAAK,SAAS,EAAC,wHAAwH,YACpI,MAAM,GACH,IACE,EAEV,KAAC,gBAAgB,KAAG,EACpB,KAAC,UAAU,KAAG,EACd,KAAC,WAAW,KAAG,IACX,CACP,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB;IACvB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,CAAA;IACjD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC3C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACpC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC5C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IAEhD,SAAS,MAAM,CAAC,KAAsB;QACpC,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,WAAW;aACR,QAAQ,CAAC;YACR,IAAI;YACJ,QAAQ;YACR,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC;SAC1D,CAAC;aACD,IAAI,CAAC,GAAG,EAAE;YACT,SAAS,CAAC,KAAK,CAAC,CAAA;YAChB,OAAO,CAAC,EAAE,CAAC,CAAA;YACX,WAAW,CAAC,EAAE,CAAC,CAAA;YACf,aAAa,CAAC,EAAE,CAAC,CAAA;QACnB,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,uDAAuD;QACzD,CAAC,CAAC,CAAA;IACN,CAAC;IAED,OAAO,CACL,mBAAS,SAAS,EAAC,qCAAqC,aACtD,eAAK,SAAS,EAAC,mDAAmD,aAChE,aAAI,SAAS,EAAC,oCAAoC,kCAAuB,EACzE,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE;4BACZ,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;wBAC5B,CAAC,EACD,SAAS,EAAC,+HAA+H,YAExI,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,GACzB,IACL,EACN,YAAG,SAAS,EAAC,2CAA2C,qNAIpD,EAEH,MAAM,IAAI,CACT,gBAAM,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAC,oDAAoD,aACpF,iBAAO,SAAS,EAAC,kCAAkC,qBAEjD,gBACE,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oCAClB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gCAC7B,CAAC,EACD,QAAQ,QACR,WAAW,EAAC,cAAc,EAC1B,SAAS,EAAC,4HAA4H,GACtI,IACI,EACR,iBAAO,SAAS,EAAC,kCAAkC,6BAEjD,gBACE,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oCAClB,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gCACjC,CAAC,EACD,QAAQ,QACR,WAAW,EAAC,uCAAuC,EACnD,SAAS,EAAC,sIAAsI,GAChJ,IACI,EACR,iBAAO,SAAS,EAAC,kCAAkC,8DAEjD,gBACE,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oCAClB,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gCACnC,CAAC,EACD,WAAW,EAAC,eAAU,EACtB,SAAS,EAAC,sIAAsI,GAChJ,IACI,EACR,eAAK,SAAS,EAAC,yBAAyB,aACtC,iBACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,WAAW,CAAC,SAAS,EAC/B,SAAS,EAAC,qHAAqH,+BAGxH,EACR,WAAW,CAAC,KAAK,KAAK,IAAI,IAAI,CAC7B,eAAM,SAAS,EAAC,yBAAyB,YAAE,WAAW,CAAC,KAAK,CAAC,OAAO,GAAQ,CAC7E,IACG,IACD,CACR,EAEA,KAAK,KAAK,IAAI,IAAI,cAAK,SAAS,EAAC,MAAM,YAAE,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,GAAO,EAC5E,SAAS,IAAI,KAAC,YAAY,IAAC,KAAK,EAAC,sBAAiB,GAAG,EAErD,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CACvD,YAAG,SAAS,EAAC,iCAAiC,2GAE1C,CACL,EAEA,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CACrB,aAAI,SAAS,EAAC,6DAA6D,YACxE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACtB,cAAmB,SAAS,EAAC,+DAA+D,aAC1F,eAAK,SAAS,EAAC,SAAS,aACtB,cAAK,SAAS,EAAC,kCAAkC,YAAE,KAAK,CAAC,IAAI,GAAO,EACpE,eAAM,SAAS,EAAC,gDAAgD,YAC7D,KAAK,CAAC,QAAQ,GACV,IACH,EACN,eAAK,SAAS,EAAC,6DAA6D,aACzE,KAAK,CAAC,aAAa,IAAI,6CAA4B,EACpD,yBACG,KAAK,CAAC,SAAS,KAAK,IAAI;wCACvB,CAAC,CAAC,WAAW;wCACb,CAAC,CAAC,YAAY,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,GAChD,EACP,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE;wCACZ,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oCAC3B,CAAC,EACD,SAAS,EAAC,yCAAyC,uBAG5C,IACL,KAvBC,KAAK,CAAC,EAAE,CAwBZ,CACN,CAAC,GACC,CACN,EACA,WAAW,CAAC,KAAK,KAAK,IAAI,IAAI,CAC7B,YAAG,SAAS,EAAC,8BAA8B,YAAE,WAAW,CAAC,KAAK,CAAC,OAAO,GAAK,CAC5E,IACO,CACX,CAAA;AACH,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,CAAA;AAEtB,4EAA4E;AAC5E,SAAS,UAAU;IACjB,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAA;IAC1D,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EACnE,CAAC,OAAO,CAAC,OAAO,CAAC,CAClB,CAAA;IACD,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EACpE,CAAC,MAAM,CAAC,OAAO,CAAC,CACjB,CAAA;IAED,SAAS,WAAW,CAAC,GAAa;QAChC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,iBAAiB,CAAA;QAElE,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ,MAAM,SAAS,EAAE,CAAA;IAC3D,CAAC;IAED,OAAO,CACL,mBAAS,SAAS,EAAC,qCAAqC,aACtD,aAAI,SAAS,EAAC,oCAAoC,4BAAiB,EACnE,YAAG,SAAS,EAAC,iCAAiC,6JAG1C,EAEH,KAAK,KAAK,IAAI,IAAI,cAAK,SAAS,EAAC,MAAM,YAAE,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,GAAO,EAC5E,SAAS,IAAI,KAAC,YAAY,IAAC,KAAK,EAAC,oBAAe,GAAG,EAEnD,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CACpD,YAAG,SAAS,EAAC,iCAAiC,qEAE1C,CACL,EAEA,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAClB,aAAI,SAAS,EAAC,6DAA6D,YACxE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACxC,cAAiB,SAAS,EAAC,+DAA+D,aACxF,eAAK,SAAS,EAAC,SAAS,aACtB,cAAK,SAAS,EAAC,kCAAkC,YAC9C,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,GACrC,EACN,cAAK,SAAS,EAAC,4BAA4B,YAAE,WAAW,CAAC,GAAG,CAAC,GAAO,EACnE,GAAG,CAAC,aAAa,KAAK,IAAI,IAAI,CAC7B,cAAK,SAAS,EAAC,yBAAyB,YAAE,GAAG,CAAC,aAAa,GAAO,CACnE,IACG,EACN,eAAK,SAAS,EAAC,8CAA8C,aAC3D,eAAM,SAAS,EAAE,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,gBAAgB,YACpF,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,GAC/B,EACP,eAAM,SAAS,EAAC,gBAAgB,YAAE,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,GAAQ,IACvE,KAfC,GAAG,CAAC,EAAE,CAgBV,CACN,CAAC,GACC,CACN,IACO,CACX,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW;IAClB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,CAAA;IACnD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACpC,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EACnH,CAAC,OAAO,EAAE,IAAI,CAAC,CAChB,CAAA;IAED,OAAO,CACL,mBAAS,SAAS,EAAC,qCAAqC,aACtD,eAAK,SAAS,EAAC,mDAAmD,aAChE,aAAI,SAAS,EAAC,oCAAoC,sBAAW,EAC5D,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CACrB,gBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;4BAClB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;wBAC7B,CAAC,EACD,WAAW,EAAC,cAAc,gBACf,cAAc,EACzB,SAAS,EAAC,qHAAqH,GAC/H,CACH,IACG,EACN,YAAG,SAAS,EAAC,2CAA2C,YACrD,SAAS;oBACR,CAAC,CAAC,uCAAuC;oBACzC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,wFAAwF,GACnH,EAEH,KAAK,KAAK,IAAI,IAAI,cAAK,SAAS,EAAC,MAAM,YAAE,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,GAAO,EAC5E,SAAS,IAAI,KAAC,YAAY,IAAC,KAAK,EAAC,qBAAgB,GAAG,EAEpD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAC3C,aAAG,SAAS,EAAC,iCAAiC,uCAAmB,IAAI,eAAO,CAC7E,EAEA,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CACnB,aAAI,SAAS,EAAC,6DAA6D,YACxE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,cAAoB,SAAS,EAAC,aAAa,aACzC,eAAM,SAAS,EAAC,mCAAmC,YAAE,IAAI,CAAC,IAAI,GAAQ,EACtE,YAAG,SAAS,EAAC,mDAAmD,YAAE,IAAI,CAAC,WAAW,GAAK,KAFhF,IAAI,CAAC,IAAI,CAGb,CACN,CAAC,GACC,CACN,IACO,CACX,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"McpPage.js","sourceRoot":"","sources":["../../../src/pages/admin/McpPage.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WebhookDeliveries.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/WebhookDeliveries.tsx"],"names":[],"mappings":"AAoCA,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA2HlG"}
1
+ {"version":3,"file":"WebhookDeliveries.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/WebhookDeliveries.tsx"],"names":[],"mappings":"AAqCA,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA4HlG"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState } from 'react';
3
+ import { useTimezone } from '../../api/resources/account.js';
3
4
  import { useWebhookDeliveries } from '../../api/resources/webhooks.js';
4
5
  import { Chip } from '../../components/Chip.js';
5
6
  import { DataTable } from '../../components/DataTable.js';
@@ -18,6 +19,7 @@ const STATUS_TONES = {
18
19
  export function WebhookDeliveries({ webhookId }) {
19
20
  const [status, setStatus] = useState('all');
20
21
  const [openPayloadId, setOpenPayloadId] = useState(null);
22
+ const timezone = useTimezone();
21
23
  const deliveries = useWebhookDeliveries(webhookId, {
22
24
  status: status === 'all' ? undefined : status,
23
25
  });
@@ -44,7 +46,7 @@ export function WebhookDeliveries({ webhookId }) {
44
46
  key: 'sent',
45
47
  header: 'Sent',
46
48
  className: 'w-32',
47
- render: (delivery) => (_jsx("span", { className: "font-mono text-[12px] text-ink-muted", children: formatDateTime(delivery.createdAt) })),
49
+ render: (delivery) => (_jsx("span", { className: "font-mono text-[12px] text-ink-muted", children: formatDateTime(delivery.createdAt, timezone) })),
48
50
  },
49
51
  {
50
52
  key: 'delivered',
@@ -52,7 +54,7 @@ export function WebhookDeliveries({ webhookId }) {
52
54
  className: 'w-32',
53
55
  // Null for a delivery that exhausted its attempts, which is the row a
54
56
  // reader is looking for. An em dash says "never" without claiming a time.
55
- render: (delivery) => (_jsx("span", { className: "font-mono text-[12px] text-ink-muted", children: delivery.deliveredAt === null ? '—' : formatDateTime(delivery.deliveredAt) })),
57
+ render: (delivery) => (_jsx("span", { className: "font-mono text-[12px] text-ink-muted", children: delivery.deliveredAt === null ? '—' : formatDateTime(delivery.deliveredAt, timezone) })),
56
58
  },
57
59
  {
58
60
  key: 'payload',
@@ -1 +1 @@
1
- {"version":3,"file":"WebhookDeliveries.js","sourceRoot":"","sources":["../../../src/pages/admin/WebhookDeliveries.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebhookDeliveries.js","sourceRoot":"","sources":["../../../src/pages/admin/WebhookDeliveries.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WebhooksPage.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/WebhooksPage.tsx"],"names":[],"mappings":"AAyCA,wBAAgB,YAAY,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAUhD"}
1
+ {"version":3,"file":"WebhooksPage.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/WebhooksPage.tsx"],"names":[],"mappings":"AA0CA,wBAAgB,YAAY,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAUhD"}
@@ -1,6 +1,7 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { WEBHOOK_EVENTS, WEBHOOK_SECRET_OVERLAP_HOURS, WEBHOOK_STATUS_LABELS, } from '@kelpie/schemas';
3
3
  import { useState } from 'react';
4
+ import { useTimezone } from '../../api/resources/account.js';
4
5
  import { useSession } from '../../api/resources/session.js';
5
6
  import { useCreateWebhook, useDeleteWebhook, useRotateWebhookSecret, useUpdateWebhook, useWebhooks, } from '../../api/resources/webhooks.js';
6
7
  import { Chip } from '../../components/Chip.js';
@@ -95,6 +96,7 @@ function WebhookRow({ webhook, onRotated, }) {
95
96
  const updateWebhook = useUpdateWebhook();
96
97
  const deleteWebhook = useDeleteWebhook();
97
98
  const rotateSecret = useRotateWebhookSecret();
99
+ const timezone = useTimezone();
98
100
  const [isConfirmingRemoval, setIsConfirmingRemoval] = useState(false);
99
101
  const [isShowingDeliveries, setIsShowingDeliveries] = useState(false);
100
102
  const [isRotating, setIsRotating] = useState(false);
@@ -110,7 +112,7 @@ function WebhookRow({ webhook, onRotated, }) {
110
112
  deleteWebhook.run(webhook.id);
111
113
  }, className: "rounded-md bg-danger px-2.5 py-1 text-[12px] font-semibold text-danger-fg transition hover:opacity-90 disabled:opacity-50", children: deleteWebhook.isPending ? 'Removing…' : 'Remove' })] })) : (_jsx("button", { type: "button", onClick: () => {
112
114
  setIsConfirmingRemoval(true);
113
- }, className: "text-[12px] font-medium text-danger hover:underline", children: "Remove" }))] })] }), _jsxs("div", { className: "mt-3 flex flex-wrap items-center gap-4 text-[11px] text-ink-faint", children: [_jsxs("span", { className: "font-mono", children: ["Secret ", webhook.secretPrefix] }), _jsxs("span", { children: ["Last delivery: ", describeLastDelivery(webhook)] }), _jsx("button", { type: "button", "aria-expanded": isShowingDeliveries, onClick: () => {
115
+ }, className: "text-[12px] font-medium text-danger hover:underline", children: "Remove" }))] })] }), _jsxs("div", { className: "mt-3 flex flex-wrap items-center gap-4 text-[11px] text-ink-faint", children: [_jsxs("span", { className: "font-mono", children: ["Secret ", webhook.secretPrefix] }), _jsxs("span", { children: ["Last delivery: ", describeLastDelivery(webhook, timezone)] }), _jsx("button", { type: "button", "aria-expanded": isShowingDeliveries, onClick: () => {
114
116
  setIsShowingDeliveries((current) => !current);
115
117
  }, className: "font-medium text-accent hover:underline", children: isShowingDeliveries ? 'Hide deliveries' : 'Deliveries' }), _jsx("button", { type: "button", "aria-expanded": isRotating, onClick: () => {
116
118
  setIsRotating((current) => !current);
@@ -143,10 +145,10 @@ function RotatePanel({ isPending, onRotate, }) {
143
145
  }, className: "mt-3 rounded-md bg-accent px-3 py-1.5 text-[12px] font-semibold text-accent-fg transition hover:bg-accent-hover disabled:opacity-50", children: isPending ? 'Rotating…' : 'Rotate secret' })] }));
144
146
  }
145
147
  /** Both fields are null together until the first delivery settles. */
146
- function describeLastDelivery(webhook) {
148
+ function describeLastDelivery(webhook, timezone) {
147
149
  if (webhook.lastDeliveryAt === null || webhook.lastDeliveryStatus === null) {
148
150
  return 'Never';
149
151
  }
150
- return `${formatDateTime(webhook.lastDeliveryAt)} (${webhook.lastDeliveryStatus})`;
152
+ return `${formatDateTime(webhook.lastDeliveryAt, timezone)} (${webhook.lastDeliveryStatus})`;
151
153
  }
152
154
  //# sourceMappingURL=WebhooksPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebhooksPage.js","sourceRoot":"","sources":["../../../src/pages/admin/WebhooksPage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebhooksPage.js","sourceRoot":"","sources":["../../../src/pages/admin/WebhooksPage.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardPage.d.ts","sourceRoot":"","sources":["../../../src/pages/dashboard/DashboardPage.tsx"],"names":[],"mappings":"AA8BA,wBAAgB,aAAa,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAsBjD"}
1
+ {"version":3,"file":"DashboardPage.d.ts","sourceRoot":"","sources":["../../../src/pages/dashboard/DashboardPage.tsx"],"names":[],"mappings":"AA+BA,wBAAgB,aAAa,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAwBjD"}
@@ -1,4 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useTimezone } from '../../api/resources/account.js';
2
3
  import { useDashboard } from '../../api/resources/dashboard.js';
3
4
  import { useMembers } from '../../api/resources/members.js';
4
5
  import { useWorkspace } from '../../api/resources/workspace.js';
@@ -17,7 +18,7 @@ import { ActivityFeed, AttentionList, DecisionsList, NotesList } from './section
17
18
  */
18
19
  /** The heading date, written in the workspace's own day rather than the browser's. */
19
20
  function briefHeading(dashboard) {
20
- return new Intl.DateTimeFormat('en-AU', {
21
+ return new Intl.DateTimeFormat(undefined, {
21
22
  weekday: 'long',
22
23
  month: 'short',
23
24
  day: 'numeric',
@@ -28,13 +29,14 @@ export function DashboardPage() {
28
29
  const { dashboard, isLoading, error } = useDashboard();
29
30
  const { workspace } = useWorkspace();
30
31
  const { nameById } = useMembers();
31
- return (_jsxs("div", { className: "animate-fade-in", children: [_jsx(PageHeader, { title: "Dashboard", description: "What needs attention across this workspace." }), error !== null && _jsx(ErrorPanel, { error: error }), isLoading && _jsx(LoadingPanel, { label: "Loading the workspace\u2026" }), dashboard !== undefined && (_jsx(DashboardBody, { dashboard: dashboard, workspaceId: workspace?.id, workspaceName: workspace?.name ?? 'This workspace', nameById: nameById }))] }));
32
+ const timezone = useTimezone();
33
+ return (_jsxs("div", { className: "animate-fade-in", children: [_jsx(PageHeader, { title: "Dashboard", description: "What needs attention across this workspace." }), error !== null && _jsx(ErrorPanel, { error: error }), isLoading && _jsx(LoadingPanel, { label: "Loading the workspace\u2026" }), dashboard !== undefined && (_jsx(DashboardBody, { dashboard: dashboard, workspaceId: workspace?.id, workspaceName: workspace?.name ?? 'This workspace', nameById: nameById, timezone: timezone }))] }));
32
34
  }
33
- function DashboardBody({ dashboard, workspaceId, workspaceName, nameById, }) {
35
+ function DashboardBody({ dashboard, workspaceId, workspaceName, nameById, timezone, }) {
34
36
  // `generatedAt` rather than a fresh `new Date()`: every relative time on the
35
37
  // page is then measured from the same instant the counts were, so a tab left
36
38
  // open does not creep towards "2 hours ago" on rows that never moved.
37
39
  const now = dashboard.generatedAt;
38
- return (_jsxs("div", { children: [_jsxs("section", { className: "mb-8 border-b border-border pb-6", children: [_jsxs("div", { className: "flex flex-wrap items-start justify-between gap-3", children: [_jsxs("div", { children: [_jsx("p", { className: "text-[11px] text-ink-faint", children: "Daily brief" }), _jsxs("h2", { className: "mt-0.5 text-[15px] font-semibold tracking-tight text-ink", children: [workspaceName, " \u00B7 ", briefHeading(dashboard)] }), _jsx("p", { className: "mt-1 text-[12px] text-ink-muted", children: "Assembled from overdue Plans, partnership touchpoints, and contacts going cold." })] }), workspaceId !== undefined && (_jsx(AgentTasks, { targetType: "workspace", targetId: workspaceId, targetLabel: workspaceName }))] }), _jsx("ul", { className: "mt-4 space-y-1.5", children: briefLines(dashboard).map((line) => (_jsxs("li", { className: "flex gap-2 text-[13px] leading-relaxed text-ink", children: [_jsx("span", { className: "mt-[9px] h-1 w-1 shrink-0 rounded-full bg-accent" }), _jsx("span", { children: line })] }, line))) })] }), _jsxs("div", { className: "mb-8 grid gap-8 lg:grid-cols-2", children: [_jsx(AttentionList, { rows: attentionRows(dashboard) }), _jsx(ActivityFeed, { activities: dashboard.recentActivity, nameById: nameById, now: now })] }), _jsxs("div", { className: "grid gap-8 lg:grid-cols-2", children: [_jsx(NotesList, { notes: dashboard.recentNotes, nameById: nameById, now: now }), _jsx(DecisionsList, { decisions: dashboard.recentDecisions, nameById: nameById })] })] }));
40
+ return (_jsxs("div", { children: [_jsxs("section", { className: "mb-8 border-b border-border pb-6", children: [_jsxs("div", { className: "flex flex-wrap items-start justify-between gap-3", children: [_jsxs("div", { children: [_jsx("p", { className: "text-[11px] text-ink-faint", children: "Daily brief" }), _jsxs("h2", { className: "mt-0.5 text-[15px] font-semibold tracking-tight text-ink", children: [workspaceName, " \u00B7 ", briefHeading(dashboard)] }), _jsx("p", { className: "mt-1 text-[12px] text-ink-muted", children: "Assembled from overdue Plans, partnership touchpoints, and contacts going cold." })] }), workspaceId !== undefined && (_jsx(AgentTasks, { targetType: "workspace", targetId: workspaceId, targetLabel: workspaceName }))] }), _jsx("ul", { className: "mt-4 space-y-1.5", children: briefLines(dashboard).map((line) => (_jsxs("li", { className: "flex gap-2 text-[13px] leading-relaxed text-ink", children: [_jsx("span", { className: "mt-[9px] h-1 w-1 shrink-0 rounded-full bg-accent" }), _jsx("span", { children: line })] }, line))) })] }), _jsxs("div", { className: "mb-8 grid gap-8 lg:grid-cols-2", children: [_jsx(AttentionList, { rows: attentionRows(dashboard) }), _jsx(ActivityFeed, { activities: dashboard.recentActivity, nameById: nameById, now: now, timezone: timezone })] }), _jsxs("div", { className: "grid gap-8 lg:grid-cols-2", children: [_jsx(NotesList, { notes: dashboard.recentNotes, nameById: nameById, now: now, timezone: timezone }), _jsx(DecisionsList, { decisions: dashboard.recentDecisions, nameById: nameById, timezone: timezone })] })] }));
39
41
  }
40
42
  //# sourceMappingURL=DashboardPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardPage.js","sourceRoot":"","sources":["../../../src/pages/dashboard/DashboardPage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAiC,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAiC,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gCAAiC,CAAA;AAC1E,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,eAAgB,CAAA;AAEtF;;;;;;;GAOG;AAEH,sFAAsF;AACtF,SAAS,YAAY,CAAC,SAAoB;IACxC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QACtC,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,OAAO;QACd,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,SAAS,CAAC,QAAQ;KAC7B,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAA;IACtD,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,EAAE,CAAA;IACpC,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,CAAA;IAEjC,OAAO,CACL,eAAK,SAAS,EAAC,iBAAiB,aAC9B,KAAC,UAAU,IAAC,KAAK,EAAC,WAAW,EAAC,WAAW,EAAC,6CAA6C,GAAG,EAEzF,KAAK,KAAK,IAAI,IAAI,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,EAC9C,SAAS,IAAI,KAAC,YAAY,IAAC,KAAK,EAAC,6BAAwB,GAAG,EAE5D,SAAS,KAAK,SAAS,IAAI,CAC1B,KAAC,aAAa,IACZ,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,SAAS,EAAE,EAAE,EAC1B,aAAa,EAAE,SAAS,EAAE,IAAI,IAAI,gBAAgB,EAClD,QAAQ,EAAE,QAAQ,GAClB,CACH,IACG,CACP,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,SAAS,EACT,WAAW,EACX,aAAa,EACb,QAAQ,GAMT;IACC,6EAA6E;IAC7E,6EAA6E;IAC7E,sEAAsE;IACtE,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAA;IAEjC,OAAO,CACL,0BACE,mBAAS,SAAS,EAAC,kCAAkC,aACnD,eAAK,SAAS,EAAC,kDAAkD,aAC/D,0BACE,YAAG,SAAS,EAAC,4BAA4B,4BAAgB,EACzD,cAAI,SAAS,EAAC,0DAA0D,aACrE,aAAa,cAAK,YAAY,CAAC,SAAS,CAAC,IACvC,EACL,YAAG,SAAS,EAAC,iCAAiC,gGAE1C,IACA,EACL,WAAW,KAAK,SAAS,IAAI,CAC5B,KAAC,UAAU,IAAC,UAAU,EAAC,WAAW,EAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,GAAI,CACzF,IACG,EACN,aAAI,SAAS,EAAC,kBAAkB,YAC7B,UAAU,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnC,cAAe,SAAS,EAAC,iDAAiD,aACxE,eAAM,SAAS,EAAC,kDAAkD,GAAG,EACrE,yBAAO,IAAI,GAAQ,KAFZ,IAAI,CAGR,CACN,CAAC,GACC,IACG,EAEV,eAAK,SAAS,EAAC,gCAAgC,aAC7C,KAAC,aAAa,IAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,GAAI,EACjD,KAAC,YAAY,IAAC,UAAU,EAAE,SAAS,CAAC,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,GAAI,IAChF,EACN,eAAK,SAAS,EAAC,2BAA2B,aACxC,KAAC,SAAS,IAAC,KAAK,EAAE,SAAS,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,GAAI,EACzE,KAAC,aAAa,IAAC,SAAS,EAAE,SAAS,CAAC,eAAe,EAAE,QAAQ,EAAE,QAAQ,GAAI,IACvE,IACF,CACP,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"DashboardPage.js","sourceRoot":"","sources":["../../../src/pages/dashboard/DashboardPage.tsx"],"names":[],"mappings":"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"}
@@ -3,18 +3,21 @@ import type { AttentionRow } from './attention.ts';
3
3
  export declare function AttentionList({ rows }: {
4
4
  readonly rows: readonly AttentionRow[];
5
5
  }): React.JSX.Element;
6
- export declare function ActivityFeed({ activities, nameById, now, }: {
6
+ export declare function ActivityFeed({ activities, nameById, now, timezone, }: {
7
7
  readonly activities: readonly DashboardActivity[];
8
8
  readonly nameById: ReadonlyMap<string, string>;
9
9
  readonly now: Date;
10
+ readonly timezone: string;
10
11
  }): React.JSX.Element;
11
- export declare function NotesList({ notes, nameById, now, }: {
12
+ export declare function NotesList({ notes, nameById, now, timezone, }: {
12
13
  readonly notes: readonly DashboardNote[];
13
14
  readonly nameById: ReadonlyMap<string, string>;
14
15
  readonly now: Date;
16
+ readonly timezone: string;
15
17
  }): React.JSX.Element;
16
- export declare function DecisionsList({ decisions, nameById, }: {
18
+ export declare function DecisionsList({ decisions, nameById, timezone, }: {
17
19
  readonly decisions: readonly DashboardDecision[];
18
20
  readonly nameById: ReadonlyMap<string, string>;
21
+ readonly timezone: string;
19
22
  }): React.JSX.Element;
20
23
  //# sourceMappingURL=sections.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sections.d.ts","sourceRoot":"","sources":["../../../src/pages/dashboard/sections.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EAEd,MAAM,iBAAiB,CAAA;AAQxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAyDlD,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,YAAY,EAAE,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA+BrG;AAED,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,QAAQ,EACR,GAAG,GACJ,EAAE;IACD,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACjD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAA;CACnB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAqDpB;AAiBD,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,GAAG,GACJ,EAAE;IACD,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;IACxC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAA;CACnB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA+BpB;AAED,wBAAgB,aAAa,CAAC,EAC5B,SAAS,EACT,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAA;IAChD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/C,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAuCpB"}
1
+ {"version":3,"file":"sections.d.ts","sourceRoot":"","sources":["../../../src/pages/dashboard/sections.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EAEd,MAAM,iBAAiB,CAAA;AAQxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAyDlD,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,YAAY,EAAE,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA+BrG;AAED,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,QAAQ,EACR,GAAG,EACH,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACjD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAA;IAClB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAqDpB;AAiBD,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,GAAG,EACH,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;IACxC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAA;IAClB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA+BpB;AAED,wBAAgB,aAAa,CAAC,EAC5B,SAAS,EACT,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAA;IAChD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAuCpB"}
@@ -38,8 +38,8 @@ function EmptyOr({ isEmpty, empty, children, }) {
38
38
  export function AttentionList({ rows }) {
39
39
  return (_jsxs("section", { children: [_jsx(SectionHeader, { title: "Needs attention", description: "The signals behind the brief." }), _jsx(EmptyOr, { isEmpty: rows.length === 0, empty: "Nothing urgent right now.", children: _jsx("ul", { className: "divide-y divide-border border-y border-border", children: rows.map((row) => (_jsxs("li", { className: "py-3", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx(Chip, { tone: row.tone, children: row.label }), _jsx("span", { className: "text-[11px] text-ink-faint", children: row.meta })] }), row.href === undefined ? (_jsx("p", { className: "mt-1.5 text-[13px] font-medium text-ink", children: row.title })) : (_jsx(Link, { to: row.href, className: "mt-1.5 block text-[13px] font-medium text-ink hover:text-accent", children: row.title })), row.detail !== '' && (_jsx("p", { className: "mt-0.5 line-clamp-2 text-[12px] text-ink-muted", children: row.detail }))] }, row.id))) }) })] }));
40
40
  }
41
- export function ActivityFeed({ activities, nameById, now, }) {
42
- return (_jsxs("section", { children: [_jsx(SectionHeader, { title: "Recent activity", description: "The latest events across people, companies, and pipelines." }), _jsx(EmptyOr, { isEmpty: activities.length === 0, empty: "No activity yet.", children: _jsx("ol", { className: "divide-y divide-border border-y border-border", children: activities.map((activity, index) => (_jsxs("li", { className: "flex gap-2 py-3", children: [_jsxs("div", { className: "relative flex w-5 shrink-0 justify-center", children: [index < activities.length - 1 && (_jsx("span", { "aria-hidden": true, className: "absolute top-5 bottom-[-12px] left-1/2 w-px -translate-x-1/2 bg-border" })), _jsx("div", { className: "relative z-10 flex h-5 w-5 items-center justify-center rounded border border-border bg-surface text-[9px] font-medium tracking-wide text-ink-muted uppercase", title: activity.kind, children: KIND_GLYPHS[activity.kind] })] }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-baseline justify-between gap-3", children: [_jsxs("p", { className: "min-w-0 text-[12px] leading-snug text-ink", children: [_jsx("span", { className: "font-semibold", children: actorNameFor(activity, nameById) }), ' ', _jsx("span", { className: "text-ink-muted", children: activity.action })] }), _jsx("time", { dateTime: activity.createdAt.toISOString(), className: "shrink-0 text-[11px] text-ink-faint", children: formatRelativeTime(activity.createdAt, now) })] }), _jsxs("p", { className: "text-[11px] leading-snug text-ink-faint", children: ["on ", _jsx("span", { className: "text-ink-muted", children: targetTypeLabel(activity.targetType) }), ' · ', _jsx(TargetLink, { target: activity })] }), activity.detail !== null && (_jsx("p", { className: "text-[11px] leading-snug text-ink-faint", children: activity.detail }))] })] }, activity.id))) }) })] }));
41
+ export function ActivityFeed({ activities, nameById, now, timezone, }) {
42
+ return (_jsxs("section", { children: [_jsx(SectionHeader, { title: "Recent activity", description: "The latest events across people, companies, and pipelines." }), _jsx(EmptyOr, { isEmpty: activities.length === 0, empty: "No activity yet.", children: _jsx("ol", { className: "divide-y divide-border border-y border-border", children: activities.map((activity, index) => (_jsxs("li", { className: "flex gap-2 py-3", children: [_jsxs("div", { className: "relative flex w-5 shrink-0 justify-center", children: [index < activities.length - 1 && (_jsx("span", { "aria-hidden": true, className: "absolute top-5 bottom-[-12px] left-1/2 w-px -translate-x-1/2 bg-border" })), _jsx("div", { className: "relative z-10 flex h-5 w-5 items-center justify-center rounded border border-border bg-surface text-[9px] font-medium tracking-wide text-ink-muted uppercase", title: activity.kind, children: KIND_GLYPHS[activity.kind] })] }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-baseline justify-between gap-3", children: [_jsxs("p", { className: "min-w-0 text-[12px] leading-snug text-ink", children: [_jsx("span", { className: "font-semibold", children: actorNameFor(activity, nameById) }), ' ', _jsx("span", { className: "text-ink-muted", children: activity.action })] }), _jsx("time", { dateTime: activity.createdAt.toISOString(), className: "shrink-0 text-[11px] text-ink-faint", children: formatRelativeTime(activity.createdAt, timezone, now) })] }), _jsxs("p", { className: "text-[11px] leading-snug text-ink-faint", children: ["on ", _jsx("span", { className: "text-ink-muted", children: targetTypeLabel(activity.targetType) }), ' · ', _jsx(TargetLink, { target: activity })] }), activity.detail !== null && (_jsx("p", { className: "text-[11px] leading-snug text-ink-faint", children: activity.detail }))] })] }, activity.id))) }) })] }));
43
43
  }
44
44
  /**
45
45
  * Exactly one of the two actor columns is set. `actorLabel` carries the display
@@ -51,10 +51,10 @@ function actorNameFor(activity, nameById) {
51
51
  }
52
52
  return nameById.get(activity.actorMemberId) ?? 'Unknown';
53
53
  }
54
- export function NotesList({ notes, nameById, now, }) {
55
- return (_jsxs("section", { children: [_jsx(SectionHeader, { title: "Recent notes", description: "Pinned notes surface first." }), _jsx(EmptyOr, { isEmpty: notes.length === 0, empty: "No notes yet.", children: _jsx("ul", { className: "divide-y divide-border border-y border-border", children: notes.map((note) => (_jsxs("li", { className: "py-3", children: [_jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsx("p", { className: "line-clamp-3 text-[13px] leading-relaxed text-ink", children: note.body }), note.pinned && (_jsx("span", { className: "shrink-0 text-[10px] font-medium tracking-wide text-accent uppercase", children: "Pinned" }))] }), _jsxs("div", { className: "mt-2 flex flex-wrap items-center gap-2 text-[11px] text-ink-faint", children: [_jsx(TargetLink, { target: note }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: targetTypeLabel(note.targetType) }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: note.authorId === null ? 'System' : (nameById.get(note.authorId) ?? 'Unknown') }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: formatRelativeTime(note.createdAt, now) })] })] }, note.id))) }) })] }));
54
+ export function NotesList({ notes, nameById, now, timezone, }) {
55
+ return (_jsxs("section", { children: [_jsx(SectionHeader, { title: "Recent notes", description: "Pinned notes surface first." }), _jsx(EmptyOr, { isEmpty: notes.length === 0, empty: "No notes yet.", children: _jsx("ul", { className: "divide-y divide-border border-y border-border", children: notes.map((note) => (_jsxs("li", { className: "py-3", children: [_jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsx("p", { className: "line-clamp-3 text-[13px] leading-relaxed text-ink", children: note.body }), note.pinned && (_jsx("span", { className: "shrink-0 text-[10px] font-medium tracking-wide text-accent uppercase", children: "Pinned" }))] }), _jsxs("div", { className: "mt-2 flex flex-wrap items-center gap-2 text-[11px] text-ink-faint", children: [_jsx(TargetLink, { target: note }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: targetTypeLabel(note.targetType) }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: note.authorId === null ? 'System' : (nameById.get(note.authorId) ?? 'Unknown') }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: formatRelativeTime(note.createdAt, timezone, now) })] })] }, note.id))) }) })] }));
56
56
  }
57
- export function DecisionsList({ decisions, nameById, }) {
58
- return (_jsxs("section", { children: [_jsxs("div", { className: "mb-3 flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Recent decisions" }), _jsx("p", { className: "mt-0.5 text-[11px] text-ink-faint", children: "Commitments agents should not contradict." })] }), _jsx(Link, { to: "/decisions", className: "shrink-0 text-[12px] font-medium text-accent hover:underline", children: "View all" })] }), _jsx(EmptyOr, { isEmpty: decisions.length === 0, empty: "No decisions yet.", children: _jsx("ul", { className: "divide-y divide-border border-y border-border", children: decisions.map((decision) => (_jsxs("li", { className: "py-3", children: [_jsx("p", { className: "text-[13px] font-medium text-ink", children: decision.body }), decision.rationale !== null && (_jsx("p", { className: "mt-0.5 line-clamp-2 text-[12px] text-ink-muted", children: decision.rationale })), _jsxs("div", { className: "mt-2 flex flex-wrap items-center gap-2 text-[11px] text-ink-faint", children: [_jsx(TargetLink, { target: decision }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: formatDate(decision.decidedAt) }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: decision.ownerId === null ? '—' : (nameById.get(decision.ownerId) ?? 'Unknown') })] })] }, decision.id))) }) })] }));
57
+ export function DecisionsList({ decisions, nameById, timezone, }) {
58
+ return (_jsxs("section", { children: [_jsxs("div", { className: "mb-3 flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("h2", { className: "text-[13px] font-semibold text-ink", children: "Recent decisions" }), _jsx("p", { className: "mt-0.5 text-[11px] text-ink-faint", children: "Commitments agents should not contradict." })] }), _jsx(Link, { to: "/decisions", className: "shrink-0 text-[12px] font-medium text-accent hover:underline", children: "View all" })] }), _jsx(EmptyOr, { isEmpty: decisions.length === 0, empty: "No decisions yet.", children: _jsx("ul", { className: "divide-y divide-border border-y border-border", children: decisions.map((decision) => (_jsxs("li", { className: "py-3", children: [_jsx("p", { className: "text-[13px] font-medium text-ink", children: decision.body }), decision.rationale !== null && (_jsx("p", { className: "mt-0.5 line-clamp-2 text-[12px] text-ink-muted", children: decision.rationale })), _jsxs("div", { className: "mt-2 flex flex-wrap items-center gap-2 text-[11px] text-ink-faint", children: [_jsx(TargetLink, { target: decision }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: formatDate(decision.decidedAt, timezone) }), _jsx("span", { children: "\u00B7" }), _jsx("span", { children: decision.ownerId === null ? '—' : (nameById.get(decision.ownerId) ?? 'Unknown') })] })] }, decision.id))) }) })] }));
59
59
  }
60
60
  //# sourceMappingURL=sections.js.map