@agent-native/core 0.86.1 → 0.87.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 (1180) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +12 -0
  3. package/corpus/core/docs/content/components.mdx +13 -0
  4. package/corpus/core/docs/content/creating-templates.mdx +7 -0
  5. package/corpus/core/docs/content/locales/ar-SA/components.mdx +9 -0
  6. package/corpus/core/docs/content/locales/ar-SA/creating-templates.mdx +2 -0
  7. package/corpus/core/docs/content/locales/ar-SA/template-analytics.mdx +6 -0
  8. package/corpus/core/docs/content/locales/ar-SA/template-clips.mdx +7 -0
  9. package/corpus/core/docs/content/locales/ar-SA/tracking.mdx +6 -0
  10. package/corpus/core/docs/content/locales/de-DE/components.mdx +9 -0
  11. package/corpus/core/docs/content/locales/de-DE/creating-templates.mdx +2 -0
  12. package/corpus/core/docs/content/locales/de-DE/template-analytics.mdx +6 -0
  13. package/corpus/core/docs/content/locales/de-DE/template-clips.mdx +7 -0
  14. package/corpus/core/docs/content/locales/de-DE/tracking.mdx +6 -0
  15. package/corpus/core/docs/content/locales/es-ES/components.mdx +9 -0
  16. package/corpus/core/docs/content/locales/es-ES/creating-templates.mdx +2 -0
  17. package/corpus/core/docs/content/locales/es-ES/template-analytics.mdx +6 -0
  18. package/corpus/core/docs/content/locales/es-ES/template-clips.mdx +7 -0
  19. package/corpus/core/docs/content/locales/es-ES/tracking.mdx +6 -0
  20. package/corpus/core/docs/content/locales/fr-FR/components.mdx +9 -0
  21. package/corpus/core/docs/content/locales/fr-FR/creating-templates.mdx +2 -0
  22. package/corpus/core/docs/content/locales/fr-FR/template-analytics.mdx +6 -0
  23. package/corpus/core/docs/content/locales/fr-FR/template-clips.mdx +7 -0
  24. package/corpus/core/docs/content/locales/fr-FR/tracking.mdx +6 -0
  25. package/corpus/core/docs/content/locales/hi-IN/components.mdx +9 -0
  26. package/corpus/core/docs/content/locales/hi-IN/creating-templates.mdx +2 -0
  27. package/corpus/core/docs/content/locales/hi-IN/template-analytics.mdx +6 -0
  28. package/corpus/core/docs/content/locales/hi-IN/template-clips.mdx +7 -0
  29. package/corpus/core/docs/content/locales/hi-IN/tracking.mdx +6 -0
  30. package/corpus/core/docs/content/locales/ja-JP/components.mdx +9 -0
  31. package/corpus/core/docs/content/locales/ja-JP/creating-templates.mdx +2 -0
  32. package/corpus/core/docs/content/locales/ja-JP/template-analytics.mdx +6 -0
  33. package/corpus/core/docs/content/locales/ja-JP/template-clips.mdx +7 -0
  34. package/corpus/core/docs/content/locales/ja-JP/tracking.mdx +6 -0
  35. package/corpus/core/docs/content/locales/ko-KR/components.mdx +9 -0
  36. package/corpus/core/docs/content/locales/ko-KR/creating-templates.mdx +2 -0
  37. package/corpus/core/docs/content/locales/ko-KR/template-analytics.mdx +6 -0
  38. package/corpus/core/docs/content/locales/ko-KR/template-clips.mdx +7 -0
  39. package/corpus/core/docs/content/locales/ko-KR/tracking.mdx +6 -0
  40. package/corpus/core/docs/content/locales/pt-BR/components.mdx +9 -0
  41. package/corpus/core/docs/content/locales/pt-BR/creating-templates.mdx +2 -0
  42. package/corpus/core/docs/content/locales/pt-BR/template-analytics.mdx +6 -0
  43. package/corpus/core/docs/content/locales/pt-BR/template-clips.mdx +7 -0
  44. package/corpus/core/docs/content/locales/pt-BR/tracking.mdx +6 -0
  45. package/corpus/core/docs/content/locales/zh-CN/components.mdx +9 -0
  46. package/corpus/core/docs/content/locales/zh-CN/creating-templates.mdx +2 -0
  47. package/corpus/core/docs/content/locales/zh-CN/template-analytics.mdx +6 -0
  48. package/corpus/core/docs/content/locales/zh-CN/template-clips.mdx +7 -0
  49. package/corpus/core/docs/content/locales/zh-CN/tracking.mdx +6 -0
  50. package/corpus/core/docs/content/locales/zh-TW/components.mdx +9 -0
  51. package/corpus/core/docs/content/locales/zh-TW/creating-templates.mdx +2 -0
  52. package/corpus/core/docs/content/locales/zh-TW/template-analytics.mdx +6 -0
  53. package/corpus/core/docs/content/locales/zh-TW/template-clips.mdx +7 -0
  54. package/corpus/core/docs/content/locales/zh-TW/tracking.mdx +6 -0
  55. package/corpus/core/docs/content/template-analytics.mdx +6 -0
  56. package/corpus/core/docs/content/template-clips.mdx +7 -0
  57. package/corpus/core/docs/content/tracking.mdx +6 -0
  58. package/corpus/core/package.json +8 -1
  59. package/corpus/core/src/application-state/emitter.ts +37 -5
  60. package/corpus/core/src/cli/create.ts +55 -3
  61. package/corpus/core/src/cli/workspacify.ts +10 -4
  62. package/corpus/core/src/client/components/ui/dialog.tsx +1 -91
  63. package/corpus/core/src/client/components/ui/dropdown-menu.tsx +1 -191
  64. package/corpus/core/src/client/components/ui/hover-card.tsx +1 -29
  65. package/corpus/core/src/client/components/ui/popover.tsx +1 -31
  66. package/corpus/core/src/client/components/ui/sheet.tsx +1 -96
  67. package/corpus/core/src/client/components/ui/tooltip.tsx +1 -53
  68. package/corpus/core/src/secrets/crypto.ts +47 -9
  69. package/corpus/core/src/server/agent-access.ts +72 -0
  70. package/corpus/core/src/server/h3-helpers.ts +14 -2
  71. package/corpus/core/src/server/index.ts +19 -0
  72. package/corpus/core/src/server/request-context.ts +64 -7
  73. package/corpus/core/src/shared/agent-access.ts +112 -0
  74. package/corpus/core/src/shared/index.ts +14 -0
  75. package/corpus/templates/analytics/AGENTS.md +4 -0
  76. package/corpus/templates/analytics/app/components/InlineMetric.tsx +2 -2
  77. package/corpus/templates/analytics/app/components/dashboard/CumulativeNetChart.tsx +7 -2
  78. package/corpus/templates/analytics/app/components/dashboard/DataTable.tsx +16 -11
  79. package/corpus/templates/analytics/app/components/dashboard/DateRangePicker.tsx +2 -1
  80. package/corpus/templates/analytics/app/components/dashboard/MetricCard.tsx +7 -2
  81. package/corpus/templates/analytics/app/components/dashboard/RecentActivity.tsx +6 -3
  82. package/corpus/templates/analytics/app/components/dashboard/RevenueChart.tsx +6 -1
  83. package/corpus/templates/analytics/app/components/dashboard/RevenueComparisonChart.tsx +7 -2
  84. package/corpus/templates/analytics/app/components/dashboard/SqlChart.tsx +15 -11
  85. package/corpus/templates/analytics/app/components/dashboard/StatsCard.tsx +7 -1
  86. package/corpus/templates/analytics/app/components/dashboard/TimeSeriesChart.tsx +7 -2
  87. package/corpus/templates/analytics/app/components/layout/CommandPalette.tsx +16 -16
  88. package/corpus/templates/analytics/app/components/layout/HeaderActions.tsx +1 -2
  89. package/corpus/templates/analytics/app/components/layout/MobileNav.tsx +5 -2
  90. package/corpus/templates/analytics/app/components/layout/NewAnalysisDialog.tsx +6 -6
  91. package/corpus/templates/analytics/app/components/layout/NewDashboardDialog.tsx +3 -4
  92. package/corpus/templates/analytics/app/components/layout/Sidebar.tsx +12 -9
  93. package/corpus/templates/analytics/app/components/ui/calendar.tsx +1 -1
  94. package/corpus/templates/analytics/app/pages/Agents.tsx +19 -19
  95. package/corpus/templates/analytics/app/pages/DataDictionary.tsx +21 -21
  96. package/corpus/templates/analytics/app/pages/DataSources.tsx +28 -28
  97. package/corpus/templates/analytics/app/pages/NotFound.tsx +1 -2
  98. package/corpus/templates/analytics/app/pages/Placeholder.tsx +1 -2
  99. package/corpus/templates/analytics/app/pages/Settings.tsx +16 -16
  100. package/corpus/templates/analytics/app/pages/adhoc/DashboardSkeleton.tsx +2 -3
  101. package/corpus/templates/analytics/app/pages/adhoc/_shared/KpiChart.tsx +13 -8
  102. package/corpus/templates/analytics/app/pages/adhoc/_shared/components/DateRangeInput.tsx +2 -1
  103. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/ChartTypePicker.tsx +4 -2
  104. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/DateRangePicker.tsx +2 -1
  105. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/EventCombobox.tsx +7 -7
  106. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/EventPanel.tsx +1 -2
  107. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/EventRow.tsx +1 -2
  108. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/ExplorerChart.tsx +8 -3
  109. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/FilterBuilder.tsx +4 -5
  110. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/GroupByPicker.tsx +1 -2
  111. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/PropertyCombobox.tsx +7 -7
  112. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/PropertyValueCombobox.tsx +7 -7
  113. package/corpus/templates/analytics/app/pages/adhoc/explorer/components/SqlPreview.tsx +1 -1
  114. package/corpus/templates/analytics/app/pages/adhoc/explorer/index.tsx +16 -16
  115. package/corpus/templates/analytics/app/pages/adhoc/explorer-dashboard/ChartCard.tsx +21 -16
  116. package/corpus/templates/analytics/app/pages/adhoc/explorer-dashboard/index.tsx +32 -32
  117. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/DashboardFilterBar.tsx +14 -14
  118. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/EmailReportDialog.tsx +13 -14
  119. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/PanelEditorDialog.tsx +21 -13
  120. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/SqlChartCard.tsx +28 -23
  121. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/ViewSqlPopover.tsx +12 -12
  122. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/ViewsMenu.tsx +15 -15
  123. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/index.tsx +33 -29
  124. package/corpus/templates/analytics/app/pages/analyses/AnalysesList.tsx +7 -8
  125. package/corpus/templates/analytics/app/pages/analyses/AnalysisDetail.tsx +19 -19
  126. package/corpus/templates/analytics/app/pages/analyses/LegacyFusionAnalysis.tsx +15 -11
  127. package/corpus/templates/analytics/app/pages/sessions/SessionDetailPage.tsx +42 -23
  128. package/corpus/templates/analytics/app/pages/sessions/SessionDevToolsPanel.tsx +12 -7
  129. package/corpus/templates/analytics/app/pages/sessions/SessionsPage.tsx +12 -12
  130. package/corpus/templates/analytics/app/pages/settings/AlertRulesSettingsCard.tsx +25 -25
  131. package/corpus/templates/analytics/app/root.tsx +2 -2
  132. package/corpus/templates/analytics/app/routes/catalog.tsx +8 -8
  133. package/corpus/templates/analytics/package.json +1 -0
  134. package/corpus/templates/analytics/server/lib/session-replay-agent-context.ts +59 -59
  135. package/corpus/templates/analytics/shared/session-replay-agent-access.ts +14 -3
  136. package/corpus/templates/assets/app/components/create/RecentDraftsSection.tsx +2 -3
  137. package/corpus/templates/assets/app/components/generation/GenerationResults.tsx +9 -9
  138. package/corpus/templates/assets/app/components/layout/Header.tsx +4 -2
  139. package/corpus/templates/assets/app/components/layout/Layout.tsx +1 -1
  140. package/corpus/templates/assets/app/components/layout/PageShell.tsx +5 -6
  141. package/corpus/templates/assets/app/components/layout/Sidebar.tsx +12 -12
  142. package/corpus/templates/assets/app/components/library/CreateLibraryDialog.tsx +8 -8
  143. package/corpus/templates/assets/app/components/library/EditLibraryDialog.tsx +7 -7
  144. package/corpus/templates/assets/app/components/library/LibraryCard.tsx +8 -8
  145. package/corpus/templates/assets/app/components/library/LibraryPresetGrid.tsx +2 -3
  146. package/corpus/templates/assets/app/root.tsx +1 -1
  147. package/corpus/templates/assets/app/routes/asset.$id.tsx +19 -19
  148. package/corpus/templates/assets/app/routes/audit.tsx +14 -15
  149. package/corpus/templates/assets/app/routes/brand-kits.$id.tsx +54 -49
  150. package/corpus/templates/assets/app/routes/library.tsx +31 -31
  151. package/corpus/templates/assets/app/routes/settings.tsx +18 -18
  152. package/corpus/templates/assets/package.json +1 -0
  153. package/corpus/templates/brain/app/components/brain/CanonicalPreviewSheet.tsx +5 -6
  154. package/corpus/templates/brain/app/components/brain/Surface.tsx +8 -3
  155. package/corpus/templates/brain/app/components/layout/Layout.tsx +7 -7
  156. package/corpus/templates/brain/app/components/layout/Sidebar.tsx +6 -6
  157. package/corpus/templates/brain/app/routes/knowledge.tsx +19 -19
  158. package/corpus/templates/brain/app/routes/ops.tsx +18 -18
  159. package/corpus/templates/brain/app/routes/review.tsx +27 -22
  160. package/corpus/templates/brain/app/routes/search.tsx +20 -20
  161. package/corpus/templates/brain/app/routes/settings.tsx +22 -22
  162. package/corpus/templates/brain/app/routes/sources.tsx +23 -23
  163. package/corpus/templates/brain/package.json +1 -0
  164. package/corpus/templates/calendar/app/components/ThemeToggle.tsx +5 -5
  165. package/corpus/templates/calendar/app/components/TimezoneCombobox.tsx +6 -6
  166. package/corpus/templates/calendar/app/components/booking/BookingConfirmation.tsx +1 -2
  167. package/corpus/templates/calendar/app/components/booking/BookingForm.tsx +8 -9
  168. package/corpus/templates/calendar/app/components/booking/DatePicker.tsx +2 -2
  169. package/corpus/templates/calendar/app/components/booking/TimeSlotPicker.tsx +2 -3
  170. package/corpus/templates/calendar/app/components/calendar/AddCalendarDialog.tsx +15 -10
  171. package/corpus/templates/calendar/app/components/calendar/AttendeeAutocomplete.tsx +6 -6
  172. package/corpus/templates/calendar/app/components/calendar/CreateEventDialog.tsx +27 -27
  173. package/corpus/templates/calendar/app/components/calendar/DeleteEventDialog.tsx +12 -9
  174. package/corpus/templates/calendar/app/components/calendar/EventAttendeesSection.tsx +13 -10
  175. package/corpus/templates/calendar/app/components/calendar/EventDetailPanel.tsx +7 -7
  176. package/corpus/templates/calendar/app/components/calendar/EventDetailPopover.tsx +21 -21
  177. package/corpus/templates/calendar/app/components/calendar/EventDialog.tsx +11 -11
  178. package/corpus/templates/calendar/app/components/calendar/EventOptionControls.tsx +9 -9
  179. package/corpus/templates/calendar/app/components/calendar/FindTimePanel.tsx +9 -9
  180. package/corpus/templates/calendar/app/components/calendar/GoogleConnectBanner.tsx +6 -6
  181. package/corpus/templates/calendar/app/components/calendar/GoogleSetupWizard.tsx +3 -3
  182. package/corpus/templates/calendar/app/components/calendar/GoogleSyncButton.tsx +1 -1
  183. package/corpus/templates/calendar/app/components/calendar/GuestNotificationDialog.tsx +10 -8
  184. package/corpus/templates/calendar/app/components/calendar/IntegrationsSidebar.tsx +12 -12
  185. package/corpus/templates/calendar/app/components/calendar/KeyboardShortcutsHelp.tsx +2 -2
  186. package/corpus/templates/calendar/app/components/calendar/MonthView.tsx +1 -1
  187. package/corpus/templates/calendar/app/components/calendar/PeopleSearchDialog.tsx +6 -6
  188. package/corpus/templates/calendar/app/components/calendar/WeekView.tsx +6 -6
  189. package/corpus/templates/calendar/app/components/layout/AppLayout.tsx +2 -2
  190. package/corpus/templates/calendar/app/components/layout/Sidebar.tsx +16 -16
  191. package/corpus/templates/calendar/app/pages/AvailabilitySettings.tsx +11 -11
  192. package/corpus/templates/calendar/app/pages/BookingLinksPage.tsx +50 -45
  193. package/corpus/templates/calendar/app/pages/BookingPage.tsx +2 -2
  194. package/corpus/templates/calendar/app/pages/BookingsList.tsx +12 -12
  195. package/corpus/templates/calendar/app/pages/CalendarView.tsx +17 -17
  196. package/corpus/templates/calendar/app/pages/ManageBookingPage.tsx +13 -13
  197. package/corpus/templates/calendar/app/pages/Settings.tsx +12 -12
  198. package/corpus/templates/calendar/app/routes/event.tsx +2 -2
  199. package/corpus/templates/calendar/package.json +1 -0
  200. package/corpus/templates/chat/app/components/layout/Header.tsx +4 -2
  201. package/corpus/templates/chat/app/components/layout/Layout.tsx +7 -7
  202. package/corpus/templates/chat/app/components/layout/Sidebar.tsx +12 -12
  203. package/corpus/templates/chat/app/routes/database.tsx +1 -2
  204. package/corpus/templates/chat/app/routes/observability.tsx +1 -1
  205. package/corpus/templates/chat/app/routes/settings.tsx +5 -5
  206. package/corpus/templates/chat/package.json +1 -0
  207. package/corpus/templates/clips/AGENTS.md +5 -0
  208. package/corpus/templates/clips/actions/create-recording-agent-link.ts +15 -20
  209. package/corpus/templates/clips/actions/delete-recording-permanent.ts +74 -34
  210. package/corpus/templates/clips/app/components/capture-install-options.tsx +6 -6
  211. package/corpus/templates/clips/app/components/editable-recording-title.tsx +2 -2
  212. package/corpus/templates/clips/app/components/editor/chapters-editor.tsx +7 -7
  213. package/corpus/templates/clips/app/components/editor/editor-layout.tsx +165 -3
  214. package/corpus/templates/clips/app/components/editor/editor-toolbar.tsx +101 -57
  215. package/corpus/templates/clips/app/components/editor/split-button.tsx +4 -5
  216. package/corpus/templates/clips/app/components/editor/stitch-manager.tsx +9 -9
  217. package/corpus/templates/clips/app/components/editor/thumbnail-picker.tsx +16 -11
  218. package/corpus/templates/clips/app/components/editor/timeline.tsx +4 -6
  219. package/corpus/templates/clips/app/components/editor/transcript-editor.tsx +5 -5
  220. package/corpus/templates/clips/app/components/editor/trim-handles.tsx +4 -7
  221. package/corpus/templates/clips/app/components/editor/waveform.tsx +13 -4
  222. package/corpus/templates/clips/app/components/layout/Header.tsx +4 -2
  223. package/corpus/templates/clips/app/components/layout/Layout.tsx +2 -3
  224. package/corpus/templates/clips/app/components/library/bulk-action-toolbar.tsx +4 -4
  225. package/corpus/templates/clips/app/components/library/create-space-dialog.tsx +8 -8
  226. package/corpus/templates/clips/app/components/library/empty-state.tsx +1 -2
  227. package/corpus/templates/clips/app/components/library/folder-tree.tsx +14 -14
  228. package/corpus/templates/clips/app/components/library/library-grid.tsx +7 -7
  229. package/corpus/templates/clips/app/components/library/library-layout.tsx +16 -16
  230. package/corpus/templates/clips/app/components/library/organization-switcher.tsx +11 -11
  231. package/corpus/templates/clips/app/components/library/recording-card.tsx +16 -12
  232. package/corpus/templates/clips/app/components/library/search-bar.tsx +5 -5
  233. package/corpus/templates/clips/app/components/library/sort-menu.tsx +3 -4
  234. package/corpus/templates/clips/app/components/library/tag-input.tsx +4 -4
  235. package/corpus/templates/clips/app/components/meetings/attendee-stack.tsx +6 -2
  236. package/corpus/templates/clips/app/components/meetings/auto-record-prompt.tsx +1 -1
  237. package/corpus/templates/clips/app/components/meetings/bullet-link.tsx +4 -4
  238. package/corpus/templates/clips/app/components/meetings/canvas-editor.tsx +5 -5
  239. package/corpus/templates/clips/app/components/meetings/meeting-card.tsx +3 -3
  240. package/corpus/templates/clips/app/components/meetings/quick-ask-sidebar.tsx +9 -9
  241. package/corpus/templates/clips/app/components/meetings/share-meeting-dialog.tsx +11 -6
  242. package/corpus/templates/clips/app/components/meetings/transcript-bubbles.tsx +4 -4
  243. package/corpus/templates/clips/app/components/player/access-password-prompt.tsx +2 -3
  244. package/corpus/templates/clips/app/components/player/comments-panel.tsx +14 -14
  245. package/corpus/templates/clips/app/components/player/delete-recording-menu.tsx +6 -7
  246. package/corpus/templates/clips/app/components/player/insights-panel.tsx +1 -2
  247. package/corpus/templates/clips/app/components/player/player-controls.tsx +15 -15
  248. package/corpus/templates/clips/app/components/player/reactions-tray.tsx +3 -3
  249. package/corpus/templates/clips/app/components/player/settings-panel.tsx +12 -13
  250. package/corpus/templates/clips/app/components/player/share-dialog.tsx +20 -11
  251. package/corpus/templates/clips/app/components/player/sign-in-prompt-dialog.tsx +2 -3
  252. package/corpus/templates/clips/app/components/player/timestamped-comment-button.tsx +2 -2
  253. package/corpus/templates/clips/app/components/player/transcript-panel.tsx +7 -7
  254. package/corpus/templates/clips/app/components/player/video-player.tsx +9 -9
  255. package/corpus/templates/clips/app/components/recorder/camera-visualizer.tsx +1 -1
  256. package/corpus/templates/clips/app/components/recorder/microphone-visualizer.tsx +1 -1
  257. package/corpus/templates/clips/app/components/recorder/pre-record-panel.tsx +21 -21
  258. package/corpus/templates/clips/app/components/recorder/recording-toolbar.tsx +5 -6
  259. package/corpus/templates/clips/app/components/recorder/storage-setup-card.tsx +6 -7
  260. package/corpus/templates/clips/app/components/sharing/share-ui.tsx +10 -10
  261. package/corpus/templates/clips/app/components/workspace/branding-editor.tsx +9 -5
  262. package/corpus/templates/clips/app/components/workspace/insights-hub.tsx +19 -9
  263. package/corpus/templates/clips/app/components/workspace/invite-dialog.tsx +9 -10
  264. package/corpus/templates/clips/app/components/workspace/members-list.tsx +10 -11
  265. package/corpus/templates/clips/app/components/workspace/notifications-list.tsx +1 -2
  266. package/corpus/templates/clips/app/components/workspace/top-creators-table.tsx +2 -3
  267. package/corpus/templates/clips/app/components/workspace/top-videos-table.tsx +2 -3
  268. package/corpus/templates/clips/app/hooks/use-desktop-promo.ts +1 -2
  269. package/corpus/templates/clips/app/root.tsx +10 -10
  270. package/corpus/templates/clips/app/routes/_app.dictate.tsx +13 -13
  271. package/corpus/templates/clips/app/routes/_app.meetings.$meetingId.tsx +35 -26
  272. package/corpus/templates/clips/app/routes/_app.meetings._index.tsx +20 -20
  273. package/corpus/templates/clips/app/routes/_app.notifications.tsx +3 -3
  274. package/corpus/templates/clips/app/routes/_app.settings._index.tsx +31 -31
  275. package/corpus/templates/clips/app/routes/_app.settings.organization.tsx +13 -8
  276. package/corpus/templates/clips/app/routes/_app.spaces._index.tsx +1 -1
  277. package/corpus/templates/clips/app/routes/_app.trash.tsx +10 -10
  278. package/corpus/templates/clips/app/routes/bug-report.done.tsx +1 -1
  279. package/corpus/templates/clips/app/routes/bug-report.tsx +11 -11
  280. package/corpus/templates/clips/app/routes/download.tsx +2 -2
  281. package/corpus/templates/clips/app/routes/embed.$shareId.tsx +1 -1
  282. package/corpus/templates/clips/app/routes/invite.$token.tsx +13 -8
  283. package/corpus/templates/clips/app/routes/r.$recordingId.tsx +28 -23
  284. package/corpus/templates/clips/app/routes/record.tsx +3 -3
  285. package/corpus/templates/clips/app/routes/share.$shareId.tsx +41 -20
  286. package/corpus/templates/clips/app/routes/share.meeting.$meetingId.tsx +2 -2
  287. package/corpus/templates/clips/changelog/2026-07-05-desktop-full-screen-recordings-with-system-audio-now-finaliz.md +6 -0
  288. package/corpus/templates/clips/changelog/2026-07-05-desktop-recording-shortcut-start-stop.md +6 -0
  289. package/corpus/templates/clips/changelog/2026-07-05-desktop-recordings-no-longer-fail-when-saved-capture-constra.md +6 -0
  290. package/corpus/templates/clips/changelog/2026-07-05-permanently-deleted-clips-now-clean-up-s3-media-objects.md +6 -0
  291. package/corpus/templates/clips/changelog/2026-07-05-timeline-zoom-controls-are-now-visible-in-the-clip-editor-an.md +6 -0
  292. package/corpus/templates/clips/desktop/src/app.tsx +98 -1
  293. package/corpus/templates/clips/desktop/src/components/MediaDeviceRow.tsx +3 -2
  294. package/corpus/templates/clips/desktop/src/lib/media-capture-constraints.ts +121 -0
  295. package/corpus/templates/clips/desktop/src/lib/recorder.ts +55 -84
  296. package/corpus/templates/clips/desktop/src-tauri/src/native_screen.rs +77 -39
  297. package/corpus/templates/clips/desktop/src-tauri/src/shortcuts.rs +60 -8
  298. package/corpus/templates/clips/package.json +1 -0
  299. package/corpus/templates/clips/server/lib/public-agent-context.ts +17 -12
  300. package/corpus/templates/clips/server/lib/recording-media-cleanup.ts +110 -0
  301. package/corpus/templates/clips/server/lib/s3-upload-provider.ts +126 -0
  302. package/corpus/templates/clips/server/routes/api/public-recording.get.ts +47 -11
  303. package/corpus/templates/clips/shared/agent-context.ts +23 -21
  304. package/corpus/templates/content/app/blocks/contentBlockRegistry.tsx +4 -4
  305. package/corpus/templates/content/app/components/EmptyState.tsx +1 -1
  306. package/corpus/templates/content/app/components/ThemeToggle.tsx +6 -6
  307. package/corpus/templates/content/app/components/editor/BubbleToolbar.tsx +5 -5
  308. package/corpus/templates/content/app/components/editor/CommentsSidebar.tsx +5 -5
  309. package/corpus/templates/content/app/components/editor/ContentReferencePreview.tsx +1 -1
  310. package/corpus/templates/content/app/components/editor/DocumentDatabase.tsx +36 -36
  311. package/corpus/templates/content/app/components/editor/DocumentEditor.tsx +3 -3
  312. package/corpus/templates/content/app/components/editor/DocumentProperties.tsx +29 -29
  313. package/corpus/templates/content/app/components/editor/DocumentToolbar.tsx +23 -23
  314. package/corpus/templates/content/app/components/editor/EmojiPicker.tsx +4 -5
  315. package/corpus/templates/content/app/components/editor/LinkHoverPreview.tsx +4 -5
  316. package/corpus/templates/content/app/components/editor/NotionConflictBanner.tsx +1 -1
  317. package/corpus/templates/content/app/components/editor/NotionSyncBar.tsx +2 -2
  318. package/corpus/templates/content/app/components/editor/SlashCommandMenu.tsx +5 -5
  319. package/corpus/templates/content/app/components/editor/TableHoverControls.tsx +13 -13
  320. package/corpus/templates/content/app/components/editor/VersionHistoryPanel.tsx +10 -10
  321. package/corpus/templates/content/app/components/editor/database/DatabaseView.tsx +41 -41
  322. package/corpus/templates/content/app/components/editor/database/shared.tsx +19 -19
  323. package/corpus/templates/content/app/components/editor/database-sources/BuilderSourceReviewDialog.tsx +8 -9
  324. package/corpus/templates/content/app/components/editor/extensions/AudioBlock.tsx +18 -19
  325. package/corpus/templates/content/app/components/editor/extensions/ImageBlock.tsx +20 -21
  326. package/corpus/templates/content/app/components/editor/extensions/LocalMdxComponentNode.tsx +8 -8
  327. package/corpus/templates/content/app/components/editor/extensions/VideoBlock.tsx +18 -19
  328. package/corpus/templates/content/app/components/layout/Header.tsx +4 -2
  329. package/corpus/templates/content/app/components/layout/Layout.tsx +3 -3
  330. package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +22 -22
  331. package/corpus/templates/content/app/components/sidebar/DocumentTreeItem.tsx +22 -22
  332. package/corpus/templates/content/app/components/sidebar/NotionButton.tsx +11 -11
  333. package/corpus/templates/content/app/root.tsx +4 -5
  334. package/corpus/templates/content/app/routes/_app._index.tsx +1 -1
  335. package/corpus/templates/content/app/routes/_app.local-files.tsx +11 -11
  336. package/corpus/templates/content/app/routes/_app.settings.tsx +3 -3
  337. package/corpus/templates/content/package.json +1 -0
  338. package/corpus/templates/design/app/components/ThemeToggle.tsx +6 -6
  339. package/corpus/templates/design/app/components/design/CanvasContextMenu.tsx +11 -11
  340. package/corpus/templates/design/app/components/design/DesignEditorSkeleton.tsx +2 -2
  341. package/corpus/templates/design/app/components/design/DesignExtensionsPanel.tsx +21 -16
  342. package/corpus/templates/design/app/components/design/DesignImportPanel.tsx +3 -3
  343. package/corpus/templates/design/app/components/design/DrawOverlay.tsx +7 -7
  344. package/corpus/templates/design/app/components/design/EditPanel.tsx +30 -30
  345. package/corpus/templates/design/app/components/design/FusionAppBanner.tsx +8 -9
  346. package/corpus/templates/design/app/components/design/LayersPanel.tsx +14 -14
  347. package/corpus/templates/design/app/components/design/LocalhostWriteConsentDialog.tsx +5 -6
  348. package/corpus/templates/design/app/components/design/MotionDock.tsx +15 -15
  349. package/corpus/templates/design/app/components/design/QuestionFlow.tsx +3 -3
  350. package/corpus/templates/design/app/components/design/ReviewPanel.tsx +3 -3
  351. package/corpus/templates/design/app/components/design/StatesPanel.tsx +13 -13
  352. package/corpus/templates/design/app/components/design/TokensPanel.tsx +14 -14
  353. package/corpus/templates/design/app/components/design/TweaksPanel.tsx +6 -6
  354. package/corpus/templates/design/app/components/design/code-workbench/ActivityBar.tsx +3 -3
  355. package/corpus/templates/design/app/components/design/code-workbench/SideBar.tsx +3 -3
  356. package/corpus/templates/design/app/components/design/code-workbench/editor/EditorTabs.tsx +6 -6
  357. package/corpus/templates/design/app/components/design/code-workbench/editor/MonacoHost.tsx +1 -2
  358. package/corpus/templates/design/app/components/design/code-workbench/explorer/FileTree.tsx +17 -17
  359. package/corpus/templates/design/app/components/design/code-workbench/search/SearchView.tsx +6 -6
  360. package/corpus/templates/design/app/components/design/inspector/AlignmentMatrix.tsx +3 -3
  361. package/corpus/templates/design/app/components/design/inspector/AutoLayoutMatrix.tsx +7 -7
  362. package/corpus/templates/design/app/components/design/inspector/ConstraintsWidget.tsx +3 -3
  363. package/corpus/templates/design/app/components/design/inspector/DesignColorPicker.tsx +18 -18
  364. package/corpus/templates/design/app/components/design/inspector/ExportSettingsPanel.tsx +6 -6
  365. package/corpus/templates/design/app/components/design/inspector/ImageFillControls.tsx +6 -6
  366. package/corpus/templates/design/app/components/design/inspector/InspectorAiActions.tsx +7 -7
  367. package/corpus/templates/design/app/components/design/inspector/ScrubInput.tsx +7 -7
  368. package/corpus/templates/design/app/components/design/inspector/ShaderControls.tsx +14 -14
  369. package/corpus/templates/design/app/components/design/inspector/ShaderEffectRow.tsx +9 -9
  370. package/corpus/templates/design/app/components/design/inspector/ShaderFillsPanel.tsx +6 -6
  371. package/corpus/templates/design/app/components/design-system/DesignSystemCard.tsx +2 -3
  372. package/corpus/templates/design/app/components/editor/PromptDialog.tsx +18 -15
  373. package/corpus/templates/design/app/components/layout/Header.tsx +4 -2
  374. package/corpus/templates/design/app/components/layout/Layout.tsx +1 -1
  375. package/corpus/templates/design/app/components/layout/Sidebar.tsx +5 -5
  376. package/corpus/templates/design/app/components/visual-editor/CanvasCommentPins.tsx +7 -7
  377. package/corpus/templates/design/app/components/visual-editor/DrawOverlay.tsx +7 -7
  378. package/corpus/templates/design/app/components/visual-editor/SaveStatusIndicator.tsx +3 -3
  379. package/corpus/templates/design/app/pages/DesignEditor.tsx +51 -47
  380. package/corpus/templates/design/app/pages/DesignSystemSetup.tsx +8 -8
  381. package/corpus/templates/design/app/pages/DesignSystems.tsx +32 -32
  382. package/corpus/templates/design/app/pages/Index.tsx +28 -28
  383. package/corpus/templates/design/app/pages/NotFound.tsx +1 -2
  384. package/corpus/templates/design/app/pages/Present.tsx +1 -2
  385. package/corpus/templates/design/app/pages/VisualEdit.tsx +1 -2
  386. package/corpus/templates/design/app/root.tsx +1 -1
  387. package/corpus/templates/design/app/routes/settings.tsx +3 -3
  388. package/corpus/templates/design/package.json +1 -0
  389. package/corpus/templates/forms/app/components/CloudUpgrade.tsx +10 -10
  390. package/corpus/templates/forms/app/components/ThemeToggle.tsx +5 -5
  391. package/corpus/templates/forms/app/components/builder/FieldPropertiesPanel.tsx +10 -11
  392. package/corpus/templates/forms/app/components/builder/FieldRenderer.tsx +13 -10
  393. package/corpus/templates/forms/app/components/layout/Header.tsx +4 -2
  394. package/corpus/templates/forms/app/components/layout/Layout.tsx +1 -1
  395. package/corpus/templates/forms/app/components/layout/Sidebar.tsx +15 -15
  396. package/corpus/templates/forms/app/components/ui/calendar.tsx +1 -1
  397. package/corpus/templates/forms/app/components/ui/command.tsx +1 -1
  398. package/corpus/templates/forms/app/pages/FormBuilderPage.tsx +24 -24
  399. package/corpus/templates/forms/app/pages/FormFillPage.tsx +2 -2
  400. package/corpus/templates/forms/app/pages/FormsListPage.tsx +25 -25
  401. package/corpus/templates/forms/app/pages/ResponseInsightsPage.tsx +11 -11
  402. package/corpus/templates/forms/app/pages/ResponsesPage.tsx +4 -4
  403. package/corpus/templates/forms/app/routes/_app.settings.tsx +5 -5
  404. package/corpus/templates/forms/app/routes/form-preview.tsx +3 -3
  405. package/corpus/templates/forms/package.json +1 -0
  406. package/corpus/templates/macros/app/components/AddExerciseDialog.tsx +1 -1
  407. package/corpus/templates/macros/app/components/AddMealDialog.tsx +1 -1
  408. package/corpus/templates/macros/app/components/AddWeightDialog.tsx +1 -1
  409. package/corpus/templates/macros/app/components/DailyProgress.tsx +7 -7
  410. package/corpus/templates/macros/app/components/WeeklyCaloriesChart.tsx +1 -2
  411. package/corpus/templates/macros/app/components/WeightCard.tsx +10 -10
  412. package/corpus/templates/macros/app/components/WeightTracker.tsx +1 -1
  413. package/corpus/templates/macros/app/components/layout/AppLayout.tsx +11 -7
  414. package/corpus/templates/macros/app/components/layout/Header.tsx +4 -2
  415. package/corpus/templates/macros/app/root.tsx +1 -1
  416. package/corpus/templates/macros/app/routes/_index.tsx +1 -1
  417. package/corpus/templates/macros/app/routes/analytics.tsx +9 -9
  418. package/corpus/templates/macros/app/routes/settings.tsx +2 -2
  419. package/corpus/templates/macros/package.json +1 -0
  420. package/corpus/templates/mail/app/components/GoogleConnectBanner.tsx +1 -1
  421. package/corpus/templates/mail/app/components/ThemeToggle.tsx +6 -6
  422. package/corpus/templates/mail/app/components/agent-engine-picker.tsx +10 -10
  423. package/corpus/templates/mail/app/components/email/CodeBlockLangPicker.tsx +3 -4
  424. package/corpus/templates/mail/app/components/email/ComposeBubbleToolbar.tsx +5 -5
  425. package/corpus/templates/mail/app/components/email/ComposeEditor.tsx +9 -9
  426. package/corpus/templates/mail/app/components/email/ComposeModal.tsx +18 -18
  427. package/corpus/templates/mail/app/components/email/EmailList.tsx +17 -17
  428. package/corpus/templates/mail/app/components/email/EmailListItem.tsx +5 -5
  429. package/corpus/templates/mail/app/components/email/EmailThread.tsx +6 -6
  430. package/corpus/templates/mail/app/components/email/InlineReplyComposer.tsx +11 -11
  431. package/corpus/templates/mail/app/components/email/IntegrationsSidebar.tsx +13 -13
  432. package/corpus/templates/mail/app/components/email/MobileActionBar.tsx +13 -13
  433. package/corpus/templates/mail/app/components/email/RecipientInput.tsx +13 -13
  434. package/corpus/templates/mail/app/components/email/SendLaterButton.tsx +4 -5
  435. package/corpus/templates/mail/app/components/email/SnoozeModal.tsx +1 -1
  436. package/corpus/templates/mail/app/components/email/SnoozePopover.tsx +6 -6
  437. package/corpus/templates/mail/app/components/layout/AppLayout.tsx +12 -12
  438. package/corpus/templates/mail/app/components/layout/SearchBar.tsx +5 -5
  439. package/corpus/templates/mail/app/components/settings/GmailFiltersSection.tsx +23 -23
  440. package/corpus/templates/mail/app/components/ui/calendar.tsx +1 -1
  441. package/corpus/templates/mail/app/components/ui/command.tsx +1 -1
  442. package/corpus/templates/mail/app/pages/DraftQueuePage.tsx +14 -14
  443. package/corpus/templates/mail/app/pages/NotFound.tsx +1 -2
  444. package/corpus/templates/mail/app/pages/SettingsPage.tsx +25 -25
  445. package/corpus/templates/mail/app/root.tsx +1 -1
  446. package/corpus/templates/mail/app/routes/_index.tsx +1 -2
  447. package/corpus/templates/mail/app/routes/email.tsx +2 -2
  448. package/corpus/templates/mail/package.json +1 -0
  449. package/corpus/templates/plan/app/components/layout/Header.tsx +4 -2
  450. package/corpus/templates/plan/app/components/layout/Layout.tsx +5 -6
  451. package/corpus/templates/plan/app/components/layout/Sidebar.tsx +20 -20
  452. package/corpus/templates/plan/app/components/plan/CanvasArea.tsx +2 -3
  453. package/corpus/templates/plan/app/components/plan/DocumentArea.tsx +2 -2
  454. package/corpus/templates/plan/app/components/plan/GuestModeBanner.tsx +1 -2
  455. package/corpus/templates/plan/app/components/plan/LocalCodebasePicker.tsx +8 -8
  456. package/corpus/templates/plan/app/components/plan/PlanContentRenderer.tsx +1 -1
  457. package/corpus/templates/plan/app/components/plan/PlanImageViewer.tsx +83 -82
  458. package/corpus/templates/plan/app/components/plan/PlanVisualSurface.tsx +3 -3
  459. package/corpus/templates/plan/app/components/plan/planBlocks.tsx +4 -4
  460. package/corpus/templates/plan/app/pages/PlansPage.tsx +84 -77
  461. package/corpus/templates/plan/app/root.tsx +1 -1
  462. package/corpus/templates/plan/app/routes/_index.tsx +2 -1
  463. package/corpus/templates/plan/app/routes/local-plans.$slug.tsx +1 -1
  464. package/corpus/templates/plan/app/routes/plans.$id.tsx +2 -1
  465. package/corpus/templates/plan/app/routes/plans.tsx +2 -1
  466. package/corpus/templates/plan/app/routes/recaps.$id.tsx +2 -1
  467. package/corpus/templates/plan/app/routes/recaps.tsx +2 -1
  468. package/corpus/templates/plan/app/routes/settings.tsx +5 -5
  469. package/corpus/templates/plan/changelog/2026-07-05-images-in-plan-documents-open-reliably-in-the-full-size-prev.md +6 -0
  470. package/corpus/templates/plan/package.json +1 -0
  471. package/corpus/templates/slides/app/components/ThemeToggle.tsx +6 -6
  472. package/corpus/templates/slides/app/components/comments/SlideCommentsPanel.tsx +5 -5
  473. package/corpus/templates/slides/app/components/deck/DeckCard.tsx +7 -7
  474. package/corpus/templates/slides/app/components/deck/ExcalidrawSlide.tsx +1 -2
  475. package/corpus/templates/slides/app/components/deck/SlideRenderer.tsx +1 -1
  476. package/corpus/templates/slides/app/components/design-system/DesignSystemCard.tsx +2 -3
  477. package/corpus/templates/slides/app/components/design-system/DesignSystemSetup.tsx +13 -14
  478. package/corpus/templates/slides/app/components/editor/AnimationsPanel.tsx +7 -7
  479. package/corpus/templates/slides/app/components/editor/BlockBubbleMenu.tsx +5 -5
  480. package/corpus/templates/slides/app/components/editor/EditorSidebar.tsx +6 -6
  481. package/corpus/templates/slides/app/components/editor/EditorToolbar.tsx +13 -13
  482. package/corpus/templates/slides/app/components/editor/ExportMenu.tsx +9 -10
  483. package/corpus/templates/slides/app/components/editor/GenerateSlidesDialog.tsx +5 -6
  484. package/corpus/templates/slides/app/components/editor/HistoryPanel.tsx +12 -12
  485. package/corpus/templates/slides/app/components/editor/ImageDropPromptPopover.tsx +3 -4
  486. package/corpus/templates/slides/app/components/editor/ImageSearchPanel.tsx +4 -5
  487. package/corpus/templates/slides/app/components/editor/ImportButton.tsx +3 -4
  488. package/corpus/templates/slides/app/components/editor/PromptDialog.tsx +1 -2
  489. package/corpus/templates/slides/app/components/editor/ShareDialog.tsx +10 -10
  490. package/corpus/templates/slides/app/components/editor/SlideBubbleMenu.tsx +10 -10
  491. package/corpus/templates/slides/app/components/editor/SlideEditor.tsx +6 -6
  492. package/corpus/templates/slides/app/components/editor/SlideStyleInspector.tsx +1 -2
  493. package/corpus/templates/slides/app/components/editor/TweaksPanel.tsx +1 -1
  494. package/corpus/templates/slides/app/components/layout/Header.tsx +4 -2
  495. package/corpus/templates/slides/app/components/layout/Layout.tsx +1 -1
  496. package/corpus/templates/slides/app/components/layout/Sidebar.tsx +5 -5
  497. package/corpus/templates/slides/app/components/visual-editor/CanvasCommentPins.tsx +6 -6
  498. package/corpus/templates/slides/app/components/visual-editor/DrawOverlay.tsx +7 -7
  499. package/corpus/templates/slides/app/pages/DeckEditor.tsx +3 -3
  500. package/corpus/templates/slides/app/pages/DesignSystems.tsx +5 -5
  501. package/corpus/templates/slides/app/pages/Index.tsx +18 -15
  502. package/corpus/templates/slides/app/root.tsx +3 -3
  503. package/corpus/templates/slides/app/routes/settings.tsx +5 -5
  504. package/corpus/templates/slides/package.json +1 -0
  505. package/dist/application-state/emitter.d.ts +9 -2
  506. package/dist/application-state/emitter.d.ts.map +1 -1
  507. package/dist/application-state/emitter.js +25 -3
  508. package/dist/application-state/emitter.js.map +1 -1
  509. package/dist/cli/create.d.ts +2 -1
  510. package/dist/cli/create.d.ts.map +1 -1
  511. package/dist/cli/create.js +52 -4
  512. package/dist/cli/create.js.map +1 -1
  513. package/dist/cli/workspacify.d.ts +2 -0
  514. package/dist/cli/workspacify.d.ts.map +1 -1
  515. package/dist/cli/workspacify.js +8 -4
  516. package/dist/cli/workspacify.js.map +1 -1
  517. package/dist/client/components/ui/dialog.d.ts +1 -13
  518. package/dist/client/components/ui/dialog.d.ts.map +1 -1
  519. package/dist/client/components/ui/dialog.js +1 -20
  520. package/dist/client/components/ui/dialog.js.map +1 -1
  521. package/dist/client/components/ui/dropdown-menu.d.ts +1 -27
  522. package/dist/client/components/ui/dropdown-menu.d.ts.map +1 -1
  523. package/dist/client/components/ui/dropdown-menu.js +1 -33
  524. package/dist/client/components/ui/dropdown-menu.js.map +1 -1
  525. package/dist/client/components/ui/hover-card.d.ts +1 -6
  526. package/dist/client/components/ui/hover-card.d.ts.map +1 -1
  527. package/dist/client/components/ui/hover-card.js +1 -9
  528. package/dist/client/components/ui/hover-card.js.map +1 -1
  529. package/dist/client/components/ui/popover.d.ts +1 -7
  530. package/dist/client/components/ui/popover.d.ts.map +1 -1
  531. package/dist/client/components/ui/popover.js +1 -10
  532. package/dist/client/components/ui/popover.js.map +1 -1
  533. package/dist/client/components/ui/sheet.d.ts +1 -15
  534. package/dist/client/components/ui/sheet.d.ts.map +1 -1
  535. package/dist/client/components/ui/sheet.js +1 -22
  536. package/dist/client/components/ui/sheet.js.map +1 -1
  537. package/dist/client/components/ui/tooltip.d.ts +1 -8
  538. package/dist/client/components/ui/tooltip.d.ts.map +1 -1
  539. package/dist/client/components/ui/tooltip.js +1 -17
  540. package/dist/client/components/ui/tooltip.js.map +1 -1
  541. package/dist/notifications/routes.d.ts +1 -1
  542. package/dist/resources/handlers.d.ts +1 -1
  543. package/dist/secrets/crypto.d.ts.map +1 -1
  544. package/dist/secrets/crypto.js +37 -4
  545. package/dist/secrets/crypto.js.map +1 -1
  546. package/dist/server/agent-access.d.ts +16 -0
  547. package/dist/server/agent-access.d.ts.map +1 -0
  548. package/dist/server/agent-access.js +25 -0
  549. package/dist/server/agent-access.js.map +1 -0
  550. package/dist/server/h3-helpers.d.ts.map +1 -1
  551. package/dist/server/h3-helpers.js +12 -2
  552. package/dist/server/h3-helpers.js.map +1 -1
  553. package/dist/server/index.d.ts +1 -0
  554. package/dist/server/index.d.ts.map +1 -1
  555. package/dist/server/index.js +1 -0
  556. package/dist/server/index.js.map +1 -1
  557. package/dist/server/request-context.d.ts +17 -0
  558. package/dist/server/request-context.d.ts.map +1 -1
  559. package/dist/server/request-context.js +46 -6
  560. package/dist/server/request-context.js.map +1 -1
  561. package/dist/server/transcribe-voice.d.ts +1 -1
  562. package/dist/shared/agent-access.d.ts +29 -0
  563. package/dist/shared/agent-access.d.ts.map +1 -0
  564. package/dist/shared/agent-access.js +57 -0
  565. package/dist/shared/agent-access.js.map +1 -0
  566. package/dist/shared/index.d.ts +1 -0
  567. package/dist/shared/index.d.ts.map +1 -1
  568. package/dist/shared/index.js +1 -0
  569. package/dist/shared/index.js.map +1 -1
  570. package/docs/content/components.mdx +13 -0
  571. package/docs/content/creating-templates.mdx +7 -0
  572. package/docs/content/locales/ar-SA/components.mdx +9 -0
  573. package/docs/content/locales/ar-SA/creating-templates.mdx +2 -0
  574. package/docs/content/locales/ar-SA/template-analytics.mdx +6 -0
  575. package/docs/content/locales/ar-SA/template-clips.mdx +7 -0
  576. package/docs/content/locales/ar-SA/tracking.mdx +6 -0
  577. package/docs/content/locales/de-DE/components.mdx +9 -0
  578. package/docs/content/locales/de-DE/creating-templates.mdx +2 -0
  579. package/docs/content/locales/de-DE/template-analytics.mdx +6 -0
  580. package/docs/content/locales/de-DE/template-clips.mdx +7 -0
  581. package/docs/content/locales/de-DE/tracking.mdx +6 -0
  582. package/docs/content/locales/es-ES/components.mdx +9 -0
  583. package/docs/content/locales/es-ES/creating-templates.mdx +2 -0
  584. package/docs/content/locales/es-ES/template-analytics.mdx +6 -0
  585. package/docs/content/locales/es-ES/template-clips.mdx +7 -0
  586. package/docs/content/locales/es-ES/tracking.mdx +6 -0
  587. package/docs/content/locales/fr-FR/components.mdx +9 -0
  588. package/docs/content/locales/fr-FR/creating-templates.mdx +2 -0
  589. package/docs/content/locales/fr-FR/template-analytics.mdx +6 -0
  590. package/docs/content/locales/fr-FR/template-clips.mdx +7 -0
  591. package/docs/content/locales/fr-FR/tracking.mdx +6 -0
  592. package/docs/content/locales/hi-IN/components.mdx +9 -0
  593. package/docs/content/locales/hi-IN/creating-templates.mdx +2 -0
  594. package/docs/content/locales/hi-IN/template-analytics.mdx +6 -0
  595. package/docs/content/locales/hi-IN/template-clips.mdx +7 -0
  596. package/docs/content/locales/hi-IN/tracking.mdx +6 -0
  597. package/docs/content/locales/ja-JP/components.mdx +9 -0
  598. package/docs/content/locales/ja-JP/creating-templates.mdx +2 -0
  599. package/docs/content/locales/ja-JP/template-analytics.mdx +6 -0
  600. package/docs/content/locales/ja-JP/template-clips.mdx +7 -0
  601. package/docs/content/locales/ja-JP/tracking.mdx +6 -0
  602. package/docs/content/locales/ko-KR/components.mdx +9 -0
  603. package/docs/content/locales/ko-KR/creating-templates.mdx +2 -0
  604. package/docs/content/locales/ko-KR/template-analytics.mdx +6 -0
  605. package/docs/content/locales/ko-KR/template-clips.mdx +7 -0
  606. package/docs/content/locales/ko-KR/tracking.mdx +6 -0
  607. package/docs/content/locales/pt-BR/components.mdx +9 -0
  608. package/docs/content/locales/pt-BR/creating-templates.mdx +2 -0
  609. package/docs/content/locales/pt-BR/template-analytics.mdx +6 -0
  610. package/docs/content/locales/pt-BR/template-clips.mdx +7 -0
  611. package/docs/content/locales/pt-BR/tracking.mdx +6 -0
  612. package/docs/content/locales/zh-CN/components.mdx +9 -0
  613. package/docs/content/locales/zh-CN/creating-templates.mdx +2 -0
  614. package/docs/content/locales/zh-CN/template-analytics.mdx +6 -0
  615. package/docs/content/locales/zh-CN/template-clips.mdx +7 -0
  616. package/docs/content/locales/zh-CN/tracking.mdx +6 -0
  617. package/docs/content/locales/zh-TW/components.mdx +9 -0
  618. package/docs/content/locales/zh-TW/creating-templates.mdx +2 -0
  619. package/docs/content/locales/zh-TW/template-analytics.mdx +6 -0
  620. package/docs/content/locales/zh-TW/template-clips.mdx +7 -0
  621. package/docs/content/locales/zh-TW/tracking.mdx +6 -0
  622. package/docs/content/template-analytics.mdx +6 -0
  623. package/docs/content/template-clips.mdx +7 -0
  624. package/docs/content/tracking.mdx +6 -0
  625. package/package.json +9 -2
  626. package/corpus/templates/analytics/app/components/ui/accordion.tsx +0 -56
  627. package/corpus/templates/analytics/app/components/ui/alert-dialog.tsx +0 -139
  628. package/corpus/templates/analytics/app/components/ui/alert.tsx +0 -59
  629. package/corpus/templates/analytics/app/components/ui/aspect-ratio.tsx +0 -5
  630. package/corpus/templates/analytics/app/components/ui/avatar.tsx +0 -48
  631. package/corpus/templates/analytics/app/components/ui/badge.tsx +0 -37
  632. package/corpus/templates/analytics/app/components/ui/breadcrumb.tsx +0 -115
  633. package/corpus/templates/analytics/app/components/ui/button.tsx +0 -57
  634. package/corpus/templates/analytics/app/components/ui/card.tsx +0 -86
  635. package/corpus/templates/analytics/app/components/ui/carousel.tsx +0 -260
  636. package/corpus/templates/analytics/app/components/ui/checkbox.tsx +0 -28
  637. package/corpus/templates/analytics/app/components/ui/collapsible.tsx +0 -9
  638. package/corpus/templates/analytics/app/components/ui/command.tsx +0 -154
  639. package/corpus/templates/analytics/app/components/ui/context-menu.tsx +0 -202
  640. package/corpus/templates/analytics/app/components/ui/date-picker.tsx +0 -68
  641. package/corpus/templates/analytics/app/components/ui/dialog.tsx +0 -130
  642. package/corpus/templates/analytics/app/components/ui/drawer.tsx +0 -116
  643. package/corpus/templates/analytics/app/components/ui/dropdown-menu.tsx +0 -212
  644. package/corpus/templates/analytics/app/components/ui/form.tsx +0 -177
  645. package/corpus/templates/analytics/app/components/ui/hover-card.tsx +0 -27
  646. package/corpus/templates/analytics/app/components/ui/input-otp.tsx +0 -69
  647. package/corpus/templates/analytics/app/components/ui/input.tsx +0 -22
  648. package/corpus/templates/analytics/app/components/ui/label.tsx +0 -24
  649. package/corpus/templates/analytics/app/components/ui/menubar.tsx +0 -234
  650. package/corpus/templates/analytics/app/components/ui/navigation-menu.tsx +0 -128
  651. package/corpus/templates/analytics/app/components/ui/pagination.tsx +0 -121
  652. package/corpus/templates/analytics/app/components/ui/popover.tsx +0 -44
  653. package/corpus/templates/analytics/app/components/ui/progress.tsx +0 -26
  654. package/corpus/templates/analytics/app/components/ui/radio-group.tsx +0 -42
  655. package/corpus/templates/analytics/app/components/ui/resizable.tsx +0 -43
  656. package/corpus/templates/analytics/app/components/ui/scroll-area.tsx +0 -46
  657. package/corpus/templates/analytics/app/components/ui/select.tsx +0 -158
  658. package/corpus/templates/analytics/app/components/ui/separator.tsx +0 -29
  659. package/corpus/templates/analytics/app/components/ui/sheet.tsx +0 -160
  660. package/corpus/templates/analytics/app/components/ui/sidebar.tsx +0 -782
  661. package/corpus/templates/analytics/app/components/ui/skeleton.tsx +0 -15
  662. package/corpus/templates/analytics/app/components/ui/slider.tsx +0 -26
  663. package/corpus/templates/analytics/app/components/ui/sonner.tsx +0 -58
  664. package/corpus/templates/analytics/app/components/ui/spinner.tsx +0 -17
  665. package/corpus/templates/analytics/app/components/ui/switch.tsx +0 -27
  666. package/corpus/templates/analytics/app/components/ui/table.tsx +0 -117
  667. package/corpus/templates/analytics/app/components/ui/tabs.tsx +0 -53
  668. package/corpus/templates/analytics/app/components/ui/textarea.tsx +0 -23
  669. package/corpus/templates/analytics/app/components/ui/toast.tsx +0 -127
  670. package/corpus/templates/analytics/app/components/ui/toaster.tsx +0 -33
  671. package/corpus/templates/analytics/app/components/ui/toggle-group.tsx +0 -59
  672. package/corpus/templates/analytics/app/components/ui/toggle.tsx +0 -43
  673. package/corpus/templates/analytics/app/components/ui/tooltip.tsx +0 -30
  674. package/corpus/templates/analytics/app/components/ui/use-toast.ts +0 -3
  675. package/corpus/templates/analytics/app/hooks/use-mobile.tsx +0 -21
  676. package/corpus/templates/analytics/app/hooks/use-toast.ts +0 -188
  677. package/corpus/templates/assets/app/components/layout/HeaderActions.tsx +0 -84
  678. package/corpus/templates/assets/app/components/ui/alert-dialog.tsx +0 -139
  679. package/corpus/templates/assets/app/components/ui/alert.tsx +0 -59
  680. package/corpus/templates/assets/app/components/ui/avatar.tsx +0 -48
  681. package/corpus/templates/assets/app/components/ui/badge.tsx +0 -37
  682. package/corpus/templates/assets/app/components/ui/breadcrumb.tsx +0 -115
  683. package/corpus/templates/assets/app/components/ui/button.tsx +0 -57
  684. package/corpus/templates/assets/app/components/ui/card.tsx +0 -86
  685. package/corpus/templates/assets/app/components/ui/checkbox.tsx +0 -28
  686. package/corpus/templates/assets/app/components/ui/dialog.tsx +0 -130
  687. package/corpus/templates/assets/app/components/ui/dropdown-menu.tsx +0 -212
  688. package/corpus/templates/assets/app/components/ui/hover-card.tsx +0 -27
  689. package/corpus/templates/assets/app/components/ui/input.tsx +0 -22
  690. package/corpus/templates/assets/app/components/ui/label.tsx +0 -24
  691. package/corpus/templates/assets/app/components/ui/pagination.tsx +0 -121
  692. package/corpus/templates/assets/app/components/ui/popover.tsx +0 -44
  693. package/corpus/templates/assets/app/components/ui/progress.tsx +0 -26
  694. package/corpus/templates/assets/app/components/ui/scroll-area.tsx +0 -46
  695. package/corpus/templates/assets/app/components/ui/select.tsx +0 -158
  696. package/corpus/templates/assets/app/components/ui/separator.tsx +0 -29
  697. package/corpus/templates/assets/app/components/ui/sheet.tsx +0 -160
  698. package/corpus/templates/assets/app/components/ui/skeleton.tsx +0 -15
  699. package/corpus/templates/assets/app/components/ui/slider.tsx +0 -26
  700. package/corpus/templates/assets/app/components/ui/sonner.tsx +0 -58
  701. package/corpus/templates/assets/app/components/ui/spinner.tsx +0 -17
  702. package/corpus/templates/assets/app/components/ui/table.tsx +0 -117
  703. package/corpus/templates/assets/app/components/ui/tabs.tsx +0 -53
  704. package/corpus/templates/assets/app/components/ui/tooltip.tsx +0 -30
  705. package/corpus/templates/brain/app/components/ui/badge.tsx +0 -37
  706. package/corpus/templates/brain/app/components/ui/button.tsx +0 -57
  707. package/corpus/templates/brain/app/components/ui/card.tsx +0 -86
  708. package/corpus/templates/brain/app/components/ui/input.tsx +0 -22
  709. package/corpus/templates/brain/app/components/ui/label.tsx +0 -24
  710. package/corpus/templates/brain/app/components/ui/progress.tsx +0 -26
  711. package/corpus/templates/brain/app/components/ui/select.tsx +0 -158
  712. package/corpus/templates/brain/app/components/ui/separator.tsx +0 -29
  713. package/corpus/templates/brain/app/components/ui/sheet.tsx +0 -160
  714. package/corpus/templates/brain/app/components/ui/skeleton.tsx +0 -15
  715. package/corpus/templates/brain/app/components/ui/sonner.tsx +0 -58
  716. package/corpus/templates/brain/app/components/ui/switch.tsx +0 -27
  717. package/corpus/templates/brain/app/components/ui/table.tsx +0 -117
  718. package/corpus/templates/brain/app/components/ui/textarea.tsx +0 -23
  719. package/corpus/templates/brain/app/components/ui/tooltip.tsx +0 -30
  720. package/corpus/templates/calendar/app/components/ui/accordion.tsx +0 -56
  721. package/corpus/templates/calendar/app/components/ui/alert-dialog.tsx +0 -139
  722. package/corpus/templates/calendar/app/components/ui/alert.tsx +0 -59
  723. package/corpus/templates/calendar/app/components/ui/aspect-ratio.tsx +0 -5
  724. package/corpus/templates/calendar/app/components/ui/avatar.tsx +0 -48
  725. package/corpus/templates/calendar/app/components/ui/badge.tsx +0 -37
  726. package/corpus/templates/calendar/app/components/ui/breadcrumb.tsx +0 -115
  727. package/corpus/templates/calendar/app/components/ui/button.tsx +0 -57
  728. package/corpus/templates/calendar/app/components/ui/calendar.tsx +0 -68
  729. package/corpus/templates/calendar/app/components/ui/card.tsx +0 -86
  730. package/corpus/templates/calendar/app/components/ui/carousel.tsx +0 -260
  731. package/corpus/templates/calendar/app/components/ui/chart.tsx +0 -375
  732. package/corpus/templates/calendar/app/components/ui/checkbox.tsx +0 -28
  733. package/corpus/templates/calendar/app/components/ui/collapsible.tsx +0 -9
  734. package/corpus/templates/calendar/app/components/ui/command.tsx +0 -154
  735. package/corpus/templates/calendar/app/components/ui/context-menu.tsx +0 -202
  736. package/corpus/templates/calendar/app/components/ui/dialog.tsx +0 -130
  737. package/corpus/templates/calendar/app/components/ui/drawer.tsx +0 -116
  738. package/corpus/templates/calendar/app/components/ui/dropdown-menu.tsx +0 -212
  739. package/corpus/templates/calendar/app/components/ui/form.tsx +0 -177
  740. package/corpus/templates/calendar/app/components/ui/hover-card.tsx +0 -27
  741. package/corpus/templates/calendar/app/components/ui/input-otp.tsx +0 -69
  742. package/corpus/templates/calendar/app/components/ui/input.tsx +0 -22
  743. package/corpus/templates/calendar/app/components/ui/label.tsx +0 -24
  744. package/corpus/templates/calendar/app/components/ui/menubar.tsx +0 -234
  745. package/corpus/templates/calendar/app/components/ui/navigation-menu.tsx +0 -128
  746. package/corpus/templates/calendar/app/components/ui/pagination.tsx +0 -121
  747. package/corpus/templates/calendar/app/components/ui/popover.tsx +0 -44
  748. package/corpus/templates/calendar/app/components/ui/progress.tsx +0 -26
  749. package/corpus/templates/calendar/app/components/ui/radio-group.tsx +0 -42
  750. package/corpus/templates/calendar/app/components/ui/resizable.tsx +0 -43
  751. package/corpus/templates/calendar/app/components/ui/scroll-area.tsx +0 -46
  752. package/corpus/templates/calendar/app/components/ui/select.tsx +0 -158
  753. package/corpus/templates/calendar/app/components/ui/separator.tsx +0 -29
  754. package/corpus/templates/calendar/app/components/ui/sheet.tsx +0 -160
  755. package/corpus/templates/calendar/app/components/ui/sidebar.tsx +0 -782
  756. package/corpus/templates/calendar/app/components/ui/skeleton.tsx +0 -15
  757. package/corpus/templates/calendar/app/components/ui/slider.tsx +0 -26
  758. package/corpus/templates/calendar/app/components/ui/spinner.tsx +0 -17
  759. package/corpus/templates/calendar/app/components/ui/switch.tsx +0 -27
  760. package/corpus/templates/calendar/app/components/ui/table.tsx +0 -117
  761. package/corpus/templates/calendar/app/components/ui/tabs.tsx +0 -53
  762. package/corpus/templates/calendar/app/components/ui/textarea.tsx +0 -23
  763. package/corpus/templates/calendar/app/components/ui/toast.tsx +0 -127
  764. package/corpus/templates/calendar/app/components/ui/toaster.tsx +0 -33
  765. package/corpus/templates/calendar/app/components/ui/toggle-group.tsx +0 -59
  766. package/corpus/templates/calendar/app/components/ui/toggle.tsx +0 -43
  767. package/corpus/templates/calendar/app/components/ui/tooltip.tsx +0 -30
  768. package/corpus/templates/calendar/app/components/ui/use-toast.ts +0 -3
  769. package/corpus/templates/calendar/app/hooks/use-mobile.tsx +0 -21
  770. package/corpus/templates/calendar/app/hooks/use-toast.ts +0 -188
  771. package/corpus/templates/chat/app/components/layout/HeaderActions.tsx +0 -84
  772. package/corpus/templates/chat/app/components/ui/accordion.tsx +0 -56
  773. package/corpus/templates/chat/app/components/ui/alert-dialog.tsx +0 -139
  774. package/corpus/templates/chat/app/components/ui/alert.tsx +0 -59
  775. package/corpus/templates/chat/app/components/ui/aspect-ratio.tsx +0 -5
  776. package/corpus/templates/chat/app/components/ui/avatar.tsx +0 -48
  777. package/corpus/templates/chat/app/components/ui/badge.tsx +0 -37
  778. package/corpus/templates/chat/app/components/ui/breadcrumb.tsx +0 -115
  779. package/corpus/templates/chat/app/components/ui/button.tsx +0 -57
  780. package/corpus/templates/chat/app/components/ui/calendar.tsx +0 -68
  781. package/corpus/templates/chat/app/components/ui/card.tsx +0 -86
  782. package/corpus/templates/chat/app/components/ui/carousel.tsx +0 -260
  783. package/corpus/templates/chat/app/components/ui/chart.tsx +0 -375
  784. package/corpus/templates/chat/app/components/ui/checkbox.tsx +0 -28
  785. package/corpus/templates/chat/app/components/ui/collapsible.tsx +0 -9
  786. package/corpus/templates/chat/app/components/ui/command.tsx +0 -154
  787. package/corpus/templates/chat/app/components/ui/context-menu.tsx +0 -202
  788. package/corpus/templates/chat/app/components/ui/dialog.tsx +0 -130
  789. package/corpus/templates/chat/app/components/ui/drawer.tsx +0 -116
  790. package/corpus/templates/chat/app/components/ui/dropdown-menu.tsx +0 -212
  791. package/corpus/templates/chat/app/components/ui/form.tsx +0 -177
  792. package/corpus/templates/chat/app/components/ui/hover-card.tsx +0 -27
  793. package/corpus/templates/chat/app/components/ui/input-otp.tsx +0 -69
  794. package/corpus/templates/chat/app/components/ui/input.tsx +0 -22
  795. package/corpus/templates/chat/app/components/ui/label.tsx +0 -24
  796. package/corpus/templates/chat/app/components/ui/menubar.tsx +0 -234
  797. package/corpus/templates/chat/app/components/ui/navigation-menu.tsx +0 -128
  798. package/corpus/templates/chat/app/components/ui/pagination.tsx +0 -121
  799. package/corpus/templates/chat/app/components/ui/popover.tsx +0 -44
  800. package/corpus/templates/chat/app/components/ui/progress.tsx +0 -26
  801. package/corpus/templates/chat/app/components/ui/radio-group.tsx +0 -42
  802. package/corpus/templates/chat/app/components/ui/resizable.tsx +0 -43
  803. package/corpus/templates/chat/app/components/ui/scroll-area.tsx +0 -46
  804. package/corpus/templates/chat/app/components/ui/select.tsx +0 -158
  805. package/corpus/templates/chat/app/components/ui/separator.tsx +0 -29
  806. package/corpus/templates/chat/app/components/ui/sheet.tsx +0 -160
  807. package/corpus/templates/chat/app/components/ui/sidebar.tsx +0 -782
  808. package/corpus/templates/chat/app/components/ui/skeleton.tsx +0 -15
  809. package/corpus/templates/chat/app/components/ui/slider.tsx +0 -26
  810. package/corpus/templates/chat/app/components/ui/sonner.tsx +0 -58
  811. package/corpus/templates/chat/app/components/ui/spinner.tsx +0 -17
  812. package/corpus/templates/chat/app/components/ui/switch.tsx +0 -27
  813. package/corpus/templates/chat/app/components/ui/table.tsx +0 -117
  814. package/corpus/templates/chat/app/components/ui/tabs.tsx +0 -53
  815. package/corpus/templates/chat/app/components/ui/textarea.tsx +0 -23
  816. package/corpus/templates/chat/app/components/ui/toast.tsx +0 -127
  817. package/corpus/templates/chat/app/components/ui/toaster.tsx +0 -33
  818. package/corpus/templates/chat/app/components/ui/toggle-group.tsx +0 -59
  819. package/corpus/templates/chat/app/components/ui/toggle.tsx +0 -43
  820. package/corpus/templates/chat/app/components/ui/tooltip.tsx +0 -30
  821. package/corpus/templates/chat/app/components/ui/use-toast.ts +0 -3
  822. package/corpus/templates/chat/app/hooks/use-mobile.tsx +0 -21
  823. package/corpus/templates/chat/app/hooks/use-toast.ts +0 -188
  824. package/corpus/templates/clips/app/components/layout/HeaderActions.tsx +0 -84
  825. package/corpus/templates/clips/app/components/ui/accordion.tsx +0 -56
  826. package/corpus/templates/clips/app/components/ui/alert-dialog.tsx +0 -139
  827. package/corpus/templates/clips/app/components/ui/alert.tsx +0 -59
  828. package/corpus/templates/clips/app/components/ui/aspect-ratio.tsx +0 -5
  829. package/corpus/templates/clips/app/components/ui/avatar.tsx +0 -48
  830. package/corpus/templates/clips/app/components/ui/badge.tsx +0 -37
  831. package/corpus/templates/clips/app/components/ui/breadcrumb.tsx +0 -115
  832. package/corpus/templates/clips/app/components/ui/button.tsx +0 -57
  833. package/corpus/templates/clips/app/components/ui/calendar.tsx +0 -68
  834. package/corpus/templates/clips/app/components/ui/card.tsx +0 -86
  835. package/corpus/templates/clips/app/components/ui/carousel.tsx +0 -260
  836. package/corpus/templates/clips/app/components/ui/chart.tsx +0 -375
  837. package/corpus/templates/clips/app/components/ui/checkbox.tsx +0 -28
  838. package/corpus/templates/clips/app/components/ui/collapsible.tsx +0 -9
  839. package/corpus/templates/clips/app/components/ui/command.tsx +0 -154
  840. package/corpus/templates/clips/app/components/ui/context-menu.tsx +0 -202
  841. package/corpus/templates/clips/app/components/ui/dialog.tsx +0 -130
  842. package/corpus/templates/clips/app/components/ui/drawer.tsx +0 -116
  843. package/corpus/templates/clips/app/components/ui/dropdown-menu.tsx +0 -212
  844. package/corpus/templates/clips/app/components/ui/form.tsx +0 -177
  845. package/corpus/templates/clips/app/components/ui/hover-card.tsx +0 -27
  846. package/corpus/templates/clips/app/components/ui/input-otp.tsx +0 -69
  847. package/corpus/templates/clips/app/components/ui/input.tsx +0 -22
  848. package/corpus/templates/clips/app/components/ui/label.tsx +0 -24
  849. package/corpus/templates/clips/app/components/ui/menubar.tsx +0 -234
  850. package/corpus/templates/clips/app/components/ui/navigation-menu.tsx +0 -128
  851. package/corpus/templates/clips/app/components/ui/pagination.tsx +0 -121
  852. package/corpus/templates/clips/app/components/ui/popover.tsx +0 -44
  853. package/corpus/templates/clips/app/components/ui/progress.tsx +0 -26
  854. package/corpus/templates/clips/app/components/ui/radio-group.tsx +0 -42
  855. package/corpus/templates/clips/app/components/ui/resizable.tsx +0 -43
  856. package/corpus/templates/clips/app/components/ui/scroll-area.tsx +0 -46
  857. package/corpus/templates/clips/app/components/ui/select.tsx +0 -158
  858. package/corpus/templates/clips/app/components/ui/separator.tsx +0 -29
  859. package/corpus/templates/clips/app/components/ui/sheet.tsx +0 -160
  860. package/corpus/templates/clips/app/components/ui/sidebar.tsx +0 -782
  861. package/corpus/templates/clips/app/components/ui/skeleton.tsx +0 -15
  862. package/corpus/templates/clips/app/components/ui/slider.tsx +0 -26
  863. package/corpus/templates/clips/app/components/ui/sonner.tsx +0 -58
  864. package/corpus/templates/clips/app/components/ui/spinner.tsx +0 -17
  865. package/corpus/templates/clips/app/components/ui/switch.tsx +0 -27
  866. package/corpus/templates/clips/app/components/ui/table.tsx +0 -117
  867. package/corpus/templates/clips/app/components/ui/tabs.tsx +0 -53
  868. package/corpus/templates/clips/app/components/ui/textarea.tsx +0 -23
  869. package/corpus/templates/clips/app/components/ui/toast.tsx +0 -127
  870. package/corpus/templates/clips/app/components/ui/toaster.tsx +0 -33
  871. package/corpus/templates/clips/app/components/ui/toggle-group.tsx +0 -59
  872. package/corpus/templates/clips/app/components/ui/toggle.tsx +0 -43
  873. package/corpus/templates/clips/app/components/ui/tooltip.tsx +0 -30
  874. package/corpus/templates/clips/app/components/ui/use-toast.ts +0 -3
  875. package/corpus/templates/clips/app/hooks/use-mobile.tsx +0 -21
  876. package/corpus/templates/clips/app/hooks/use-toast.ts +0 -188
  877. package/corpus/templates/content/app/components/layout/HeaderActions.tsx +0 -84
  878. package/corpus/templates/content/app/components/ui/alert-dialog.tsx +0 -139
  879. package/corpus/templates/content/app/components/ui/button.tsx +0 -57
  880. package/corpus/templates/content/app/components/ui/dialog.tsx +0 -130
  881. package/corpus/templates/content/app/components/ui/dropdown-menu.tsx +0 -212
  882. package/corpus/templates/content/app/components/ui/input.tsx +0 -22
  883. package/corpus/templates/content/app/components/ui/label.tsx +0 -24
  884. package/corpus/templates/content/app/components/ui/popover.tsx +0 -44
  885. package/corpus/templates/content/app/components/ui/separator.tsx +0 -29
  886. package/corpus/templates/content/app/components/ui/sheet.tsx +0 -160
  887. package/corpus/templates/content/app/components/ui/skeleton.tsx +0 -15
  888. package/corpus/templates/content/app/components/ui/sonner.tsx +0 -58
  889. package/corpus/templates/content/app/components/ui/spinner.tsx +0 -17
  890. package/corpus/templates/content/app/components/ui/table.tsx +0 -117
  891. package/corpus/templates/content/app/components/ui/toast.tsx +0 -127
  892. package/corpus/templates/content/app/components/ui/toaster.tsx +0 -33
  893. package/corpus/templates/content/app/components/ui/toggle.tsx +0 -43
  894. package/corpus/templates/content/app/components/ui/tooltip.tsx +0 -30
  895. package/corpus/templates/content/app/components/ui/use-toast.ts +0 -3
  896. package/corpus/templates/content/app/hooks/use-mobile.tsx +0 -21
  897. package/corpus/templates/content/app/hooks/use-toast.ts +0 -188
  898. package/corpus/templates/design/app/components/layout/HeaderActions.tsx +0 -84
  899. package/corpus/templates/design/app/components/ui/accordion.tsx +0 -56
  900. package/corpus/templates/design/app/components/ui/alert-dialog.tsx +0 -139
  901. package/corpus/templates/design/app/components/ui/alert.tsx +0 -59
  902. package/corpus/templates/design/app/components/ui/aspect-ratio.tsx +0 -5
  903. package/corpus/templates/design/app/components/ui/avatar.tsx +0 -48
  904. package/corpus/templates/design/app/components/ui/badge.tsx +0 -37
  905. package/corpus/templates/design/app/components/ui/breadcrumb.tsx +0 -115
  906. package/corpus/templates/design/app/components/ui/button.tsx +0 -57
  907. package/corpus/templates/design/app/components/ui/calendar.tsx +0 -68
  908. package/corpus/templates/design/app/components/ui/card.tsx +0 -86
  909. package/corpus/templates/design/app/components/ui/carousel.tsx +0 -260
  910. package/corpus/templates/design/app/components/ui/chart.tsx +0 -375
  911. package/corpus/templates/design/app/components/ui/checkbox.tsx +0 -28
  912. package/corpus/templates/design/app/components/ui/collapsible.tsx +0 -9
  913. package/corpus/templates/design/app/components/ui/command.tsx +0 -154
  914. package/corpus/templates/design/app/components/ui/context-menu.tsx +0 -202
  915. package/corpus/templates/design/app/components/ui/dialog.tsx +0 -130
  916. package/corpus/templates/design/app/components/ui/drawer.tsx +0 -116
  917. package/corpus/templates/design/app/components/ui/dropdown-menu.tsx +0 -212
  918. package/corpus/templates/design/app/components/ui/form.tsx +0 -177
  919. package/corpus/templates/design/app/components/ui/hover-card.tsx +0 -27
  920. package/corpus/templates/design/app/components/ui/input-otp.tsx +0 -69
  921. package/corpus/templates/design/app/components/ui/input.tsx +0 -22
  922. package/corpus/templates/design/app/components/ui/label.tsx +0 -24
  923. package/corpus/templates/design/app/components/ui/menubar.tsx +0 -234
  924. package/corpus/templates/design/app/components/ui/navigation-menu.tsx +0 -128
  925. package/corpus/templates/design/app/components/ui/pagination.tsx +0 -121
  926. package/corpus/templates/design/app/components/ui/popover.tsx +0 -44
  927. package/corpus/templates/design/app/components/ui/progress.tsx +0 -26
  928. package/corpus/templates/design/app/components/ui/radio-group.tsx +0 -42
  929. package/corpus/templates/design/app/components/ui/resizable.tsx +0 -43
  930. package/corpus/templates/design/app/components/ui/scroll-area.tsx +0 -46
  931. package/corpus/templates/design/app/components/ui/select.tsx +0 -158
  932. package/corpus/templates/design/app/components/ui/separator.tsx +0 -29
  933. package/corpus/templates/design/app/components/ui/sheet.tsx +0 -160
  934. package/corpus/templates/design/app/components/ui/sidebar.tsx +0 -782
  935. package/corpus/templates/design/app/components/ui/skeleton.tsx +0 -15
  936. package/corpus/templates/design/app/components/ui/slider.tsx +0 -26
  937. package/corpus/templates/design/app/components/ui/sonner.tsx +0 -58
  938. package/corpus/templates/design/app/components/ui/spinner.tsx +0 -17
  939. package/corpus/templates/design/app/components/ui/switch.tsx +0 -27
  940. package/corpus/templates/design/app/components/ui/table.tsx +0 -117
  941. package/corpus/templates/design/app/components/ui/tabs.tsx +0 -53
  942. package/corpus/templates/design/app/components/ui/textarea.tsx +0 -23
  943. package/corpus/templates/design/app/components/ui/toast.tsx +0 -127
  944. package/corpus/templates/design/app/components/ui/toaster.tsx +0 -33
  945. package/corpus/templates/design/app/components/ui/toggle-group.tsx +0 -59
  946. package/corpus/templates/design/app/components/ui/toggle.tsx +0 -43
  947. package/corpus/templates/design/app/components/ui/tooltip.tsx +0 -30
  948. package/corpus/templates/design/app/components/ui/use-toast.ts +0 -3
  949. package/corpus/templates/design/app/hooks/use-mobile.tsx +0 -21
  950. package/corpus/templates/design/app/hooks/use-toast.ts +0 -188
  951. package/corpus/templates/forms/app/components/layout/HeaderActions.tsx +0 -84
  952. package/corpus/templates/forms/app/components/ui/accordion.tsx +0 -56
  953. package/corpus/templates/forms/app/components/ui/alert-dialog.tsx +0 -139
  954. package/corpus/templates/forms/app/components/ui/alert.tsx +0 -59
  955. package/corpus/templates/forms/app/components/ui/aspect-ratio.tsx +0 -5
  956. package/corpus/templates/forms/app/components/ui/avatar.tsx +0 -48
  957. package/corpus/templates/forms/app/components/ui/badge.tsx +0 -37
  958. package/corpus/templates/forms/app/components/ui/breadcrumb.tsx +0 -115
  959. package/corpus/templates/forms/app/components/ui/button.tsx +0 -57
  960. package/corpus/templates/forms/app/components/ui/card.tsx +0 -86
  961. package/corpus/templates/forms/app/components/ui/carousel.tsx +0 -260
  962. package/corpus/templates/forms/app/components/ui/checkbox.tsx +0 -28
  963. package/corpus/templates/forms/app/components/ui/collapsible.tsx +0 -9
  964. package/corpus/templates/forms/app/components/ui/dialog.tsx +0 -130
  965. package/corpus/templates/forms/app/components/ui/drawer.tsx +0 -116
  966. package/corpus/templates/forms/app/components/ui/dropdown-menu.tsx +0 -212
  967. package/corpus/templates/forms/app/components/ui/form.tsx +0 -177
  968. package/corpus/templates/forms/app/components/ui/hover-card.tsx +0 -27
  969. package/corpus/templates/forms/app/components/ui/input-otp.tsx +0 -69
  970. package/corpus/templates/forms/app/components/ui/input.tsx +0 -22
  971. package/corpus/templates/forms/app/components/ui/label.tsx +0 -24
  972. package/corpus/templates/forms/app/components/ui/navigation-menu.tsx +0 -128
  973. package/corpus/templates/forms/app/components/ui/pagination.tsx +0 -121
  974. package/corpus/templates/forms/app/components/ui/popover.tsx +0 -44
  975. package/corpus/templates/forms/app/components/ui/progress.tsx +0 -26
  976. package/corpus/templates/forms/app/components/ui/radio-group.tsx +0 -42
  977. package/corpus/templates/forms/app/components/ui/resizable.tsx +0 -43
  978. package/corpus/templates/forms/app/components/ui/scroll-area.tsx +0 -46
  979. package/corpus/templates/forms/app/components/ui/select.tsx +0 -158
  980. package/corpus/templates/forms/app/components/ui/separator.tsx +0 -29
  981. package/corpus/templates/forms/app/components/ui/sheet.tsx +0 -160
  982. package/corpus/templates/forms/app/components/ui/sidebar.tsx +0 -782
  983. package/corpus/templates/forms/app/components/ui/skeleton.tsx +0 -15
  984. package/corpus/templates/forms/app/components/ui/slider.tsx +0 -26
  985. package/corpus/templates/forms/app/components/ui/sonner.tsx +0 -58
  986. package/corpus/templates/forms/app/components/ui/spinner.tsx +0 -17
  987. package/corpus/templates/forms/app/components/ui/switch.tsx +0 -27
  988. package/corpus/templates/forms/app/components/ui/table.tsx +0 -117
  989. package/corpus/templates/forms/app/components/ui/tabs.tsx +0 -53
  990. package/corpus/templates/forms/app/components/ui/textarea.tsx +0 -23
  991. package/corpus/templates/forms/app/components/ui/toast.tsx +0 -127
  992. package/corpus/templates/forms/app/components/ui/toaster.tsx +0 -33
  993. package/corpus/templates/forms/app/components/ui/toggle-group.tsx +0 -59
  994. package/corpus/templates/forms/app/components/ui/toggle.tsx +0 -43
  995. package/corpus/templates/forms/app/components/ui/tooltip.tsx +0 -30
  996. package/corpus/templates/forms/app/hooks/use-mobile.tsx +0 -21
  997. package/corpus/templates/forms/app/hooks/use-toast.ts +0 -188
  998. package/corpus/templates/macros/app/components/layout/HeaderActions.tsx +0 -84
  999. package/corpus/templates/macros/app/components/ui/accordion.tsx +0 -56
  1000. package/corpus/templates/macros/app/components/ui/alert-dialog.tsx +0 -139
  1001. package/corpus/templates/macros/app/components/ui/alert.tsx +0 -59
  1002. package/corpus/templates/macros/app/components/ui/aspect-ratio.tsx +0 -5
  1003. package/corpus/templates/macros/app/components/ui/avatar.tsx +0 -48
  1004. package/corpus/templates/macros/app/components/ui/badge.tsx +0 -37
  1005. package/corpus/templates/macros/app/components/ui/breadcrumb.tsx +0 -115
  1006. package/corpus/templates/macros/app/components/ui/chart.tsx +0 -375
  1007. package/corpus/templates/macros/app/components/ui/checkbox.tsx +0 -28
  1008. package/corpus/templates/macros/app/components/ui/collapsible.tsx +0 -9
  1009. package/corpus/templates/macros/app/components/ui/command.tsx +0 -154
  1010. package/corpus/templates/macros/app/components/ui/context-menu.tsx +0 -202
  1011. package/corpus/templates/macros/app/components/ui/drawer.tsx +0 -116
  1012. package/corpus/templates/macros/app/components/ui/dropdown-menu.tsx +0 -212
  1013. package/corpus/templates/macros/app/components/ui/form.tsx +0 -177
  1014. package/corpus/templates/macros/app/components/ui/hover-card.tsx +0 -27
  1015. package/corpus/templates/macros/app/components/ui/label.tsx +0 -24
  1016. package/corpus/templates/macros/app/components/ui/logo.tsx +0 -36
  1017. package/corpus/templates/macros/app/components/ui/navigation-menu.tsx +0 -128
  1018. package/corpus/templates/macros/app/components/ui/pagination.tsx +0 -121
  1019. package/corpus/templates/macros/app/components/ui/popover.tsx +0 -44
  1020. package/corpus/templates/macros/app/components/ui/radio-group.tsx +0 -42
  1021. package/corpus/templates/macros/app/components/ui/scroll-area.tsx +0 -46
  1022. package/corpus/templates/macros/app/components/ui/select.tsx +0 -158
  1023. package/corpus/templates/macros/app/components/ui/separator.tsx +0 -29
  1024. package/corpus/templates/macros/app/components/ui/sheet.tsx +0 -160
  1025. package/corpus/templates/macros/app/components/ui/skeleton.tsx +0 -15
  1026. package/corpus/templates/macros/app/components/ui/slider.tsx +0 -26
  1027. package/corpus/templates/macros/app/components/ui/sonner.tsx +0 -58
  1028. package/corpus/templates/macros/app/components/ui/switch.tsx +0 -27
  1029. package/corpus/templates/macros/app/components/ui/table.tsx +0 -117
  1030. package/corpus/templates/macros/app/components/ui/toast.tsx +0 -127
  1031. package/corpus/templates/macros/app/components/ui/toggle-group.tsx +0 -59
  1032. package/corpus/templates/macros/app/components/ui/toggle.tsx +0 -43
  1033. package/corpus/templates/macros/app/components/ui/tooltip.tsx +0 -30
  1034. package/corpus/templates/mail/app/components/ui/accordion.tsx +0 -56
  1035. package/corpus/templates/mail/app/components/ui/alert-dialog.tsx +0 -139
  1036. package/corpus/templates/mail/app/components/ui/alert.tsx +0 -59
  1037. package/corpus/templates/mail/app/components/ui/aspect-ratio.tsx +0 -5
  1038. package/corpus/templates/mail/app/components/ui/avatar.tsx +0 -48
  1039. package/corpus/templates/mail/app/components/ui/badge.tsx +0 -37
  1040. package/corpus/templates/mail/app/components/ui/breadcrumb.tsx +0 -115
  1041. package/corpus/templates/mail/app/components/ui/button.tsx +0 -57
  1042. package/corpus/templates/mail/app/components/ui/card.tsx +0 -86
  1043. package/corpus/templates/mail/app/components/ui/carousel.tsx +0 -260
  1044. package/corpus/templates/mail/app/components/ui/checkbox.tsx +0 -28
  1045. package/corpus/templates/mail/app/components/ui/collapsible.tsx +0 -9
  1046. package/corpus/templates/mail/app/components/ui/dialog.tsx +0 -130
  1047. package/corpus/templates/mail/app/components/ui/drawer.tsx +0 -116
  1048. package/corpus/templates/mail/app/components/ui/dropdown-menu.tsx +0 -212
  1049. package/corpus/templates/mail/app/components/ui/form.tsx +0 -177
  1050. package/corpus/templates/mail/app/components/ui/hover-card.tsx +0 -27
  1051. package/corpus/templates/mail/app/components/ui/input-otp.tsx +0 -69
  1052. package/corpus/templates/mail/app/components/ui/label.tsx +0 -24
  1053. package/corpus/templates/mail/app/components/ui/navigation-menu.tsx +0 -128
  1054. package/corpus/templates/mail/app/components/ui/pagination.tsx +0 -121
  1055. package/corpus/templates/mail/app/components/ui/popover.tsx +0 -44
  1056. package/corpus/templates/mail/app/components/ui/progress.tsx +0 -26
  1057. package/corpus/templates/mail/app/components/ui/radio-group.tsx +0 -42
  1058. package/corpus/templates/mail/app/components/ui/resizable.tsx +0 -43
  1059. package/corpus/templates/mail/app/components/ui/scroll-area.tsx +0 -46
  1060. package/corpus/templates/mail/app/components/ui/select.tsx +0 -158
  1061. package/corpus/templates/mail/app/components/ui/separator.tsx +0 -29
  1062. package/corpus/templates/mail/app/components/ui/sheet.tsx +0 -160
  1063. package/corpus/templates/mail/app/components/ui/sidebar.tsx +0 -782
  1064. package/corpus/templates/mail/app/components/ui/skeleton.tsx +0 -15
  1065. package/corpus/templates/mail/app/components/ui/slider.tsx +0 -26
  1066. package/corpus/templates/mail/app/components/ui/spinner.tsx +0 -17
  1067. package/corpus/templates/mail/app/components/ui/switch.tsx +0 -27
  1068. package/corpus/templates/mail/app/components/ui/table.tsx +0 -117
  1069. package/corpus/templates/mail/app/components/ui/tabs.tsx +0 -53
  1070. package/corpus/templates/mail/app/components/ui/toast.tsx +0 -127
  1071. package/corpus/templates/mail/app/components/ui/toaster.tsx +0 -33
  1072. package/corpus/templates/mail/app/components/ui/toggle-group.tsx +0 -59
  1073. package/corpus/templates/mail/app/components/ui/toggle.tsx +0 -43
  1074. package/corpus/templates/mail/app/components/ui/tooltip.tsx +0 -30
  1075. package/corpus/templates/mail/app/hooks/use-toast.ts +0 -188
  1076. package/corpus/templates/plan/app/components/layout/HeaderActions.tsx +0 -84
  1077. package/corpus/templates/plan/app/components/ui/accordion.tsx +0 -56
  1078. package/corpus/templates/plan/app/components/ui/alert-dialog.tsx +0 -139
  1079. package/corpus/templates/plan/app/components/ui/alert.tsx +0 -59
  1080. package/corpus/templates/plan/app/components/ui/aspect-ratio.tsx +0 -5
  1081. package/corpus/templates/plan/app/components/ui/avatar.tsx +0 -48
  1082. package/corpus/templates/plan/app/components/ui/badge.tsx +0 -37
  1083. package/corpus/templates/plan/app/components/ui/breadcrumb.tsx +0 -115
  1084. package/corpus/templates/plan/app/components/ui/button.tsx +0 -57
  1085. package/corpus/templates/plan/app/components/ui/calendar.tsx +0 -68
  1086. package/corpus/templates/plan/app/components/ui/card.tsx +0 -86
  1087. package/corpus/templates/plan/app/components/ui/carousel.tsx +0 -260
  1088. package/corpus/templates/plan/app/components/ui/chart.tsx +0 -375
  1089. package/corpus/templates/plan/app/components/ui/checkbox.tsx +0 -28
  1090. package/corpus/templates/plan/app/components/ui/collapsible.tsx +0 -9
  1091. package/corpus/templates/plan/app/components/ui/command.tsx +0 -154
  1092. package/corpus/templates/plan/app/components/ui/context-menu.tsx +0 -202
  1093. package/corpus/templates/plan/app/components/ui/dialog.tsx +0 -130
  1094. package/corpus/templates/plan/app/components/ui/drawer.tsx +0 -116
  1095. package/corpus/templates/plan/app/components/ui/dropdown-menu.tsx +0 -212
  1096. package/corpus/templates/plan/app/components/ui/form.tsx +0 -177
  1097. package/corpus/templates/plan/app/components/ui/hover-card.tsx +0 -27
  1098. package/corpus/templates/plan/app/components/ui/input-otp.tsx +0 -69
  1099. package/corpus/templates/plan/app/components/ui/input.tsx +0 -22
  1100. package/corpus/templates/plan/app/components/ui/label.tsx +0 -24
  1101. package/corpus/templates/plan/app/components/ui/menubar.tsx +0 -234
  1102. package/corpus/templates/plan/app/components/ui/navigation-menu.tsx +0 -128
  1103. package/corpus/templates/plan/app/components/ui/pagination.tsx +0 -121
  1104. package/corpus/templates/plan/app/components/ui/popover.tsx +0 -44
  1105. package/corpus/templates/plan/app/components/ui/progress.tsx +0 -26
  1106. package/corpus/templates/plan/app/components/ui/radio-group.tsx +0 -42
  1107. package/corpus/templates/plan/app/components/ui/resizable.tsx +0 -43
  1108. package/corpus/templates/plan/app/components/ui/scroll-area.tsx +0 -46
  1109. package/corpus/templates/plan/app/components/ui/select.tsx +0 -158
  1110. package/corpus/templates/plan/app/components/ui/separator.tsx +0 -29
  1111. package/corpus/templates/plan/app/components/ui/sheet.tsx +0 -160
  1112. package/corpus/templates/plan/app/components/ui/sidebar.tsx +0 -782
  1113. package/corpus/templates/plan/app/components/ui/skeleton.tsx +0 -15
  1114. package/corpus/templates/plan/app/components/ui/slider.tsx +0 -26
  1115. package/corpus/templates/plan/app/components/ui/sonner.tsx +0 -58
  1116. package/corpus/templates/plan/app/components/ui/spinner.tsx +0 -17
  1117. package/corpus/templates/plan/app/components/ui/switch.tsx +0 -27
  1118. package/corpus/templates/plan/app/components/ui/table.tsx +0 -117
  1119. package/corpus/templates/plan/app/components/ui/textarea.tsx +0 -23
  1120. package/corpus/templates/plan/app/components/ui/toast.tsx +0 -127
  1121. package/corpus/templates/plan/app/components/ui/toaster.tsx +0 -33
  1122. package/corpus/templates/plan/app/components/ui/toggle-group.tsx +0 -59
  1123. package/corpus/templates/plan/app/components/ui/toggle.tsx +0 -43
  1124. package/corpus/templates/plan/app/components/ui/tooltip.tsx +0 -30
  1125. package/corpus/templates/plan/app/components/ui/use-toast.ts +0 -3
  1126. package/corpus/templates/plan/app/hooks/use-mobile.tsx +0 -21
  1127. package/corpus/templates/plan/app/hooks/use-toast.ts +0 -188
  1128. package/corpus/templates/slides/app/components/layout/HeaderActions.tsx +0 -84
  1129. package/corpus/templates/slides/app/components/ui/accordion.tsx +0 -56
  1130. package/corpus/templates/slides/app/components/ui/alert-dialog.tsx +0 -139
  1131. package/corpus/templates/slides/app/components/ui/alert.tsx +0 -59
  1132. package/corpus/templates/slides/app/components/ui/aspect-ratio.tsx +0 -5
  1133. package/corpus/templates/slides/app/components/ui/avatar.tsx +0 -48
  1134. package/corpus/templates/slides/app/components/ui/badge.tsx +0 -37
  1135. package/corpus/templates/slides/app/components/ui/breadcrumb.tsx +0 -115
  1136. package/corpus/templates/slides/app/components/ui/button.tsx +0 -57
  1137. package/corpus/templates/slides/app/components/ui/calendar.tsx +0 -68
  1138. package/corpus/templates/slides/app/components/ui/card.tsx +0 -86
  1139. package/corpus/templates/slides/app/components/ui/carousel.tsx +0 -260
  1140. package/corpus/templates/slides/app/components/ui/chart.tsx +0 -375
  1141. package/corpus/templates/slides/app/components/ui/checkbox.tsx +0 -28
  1142. package/corpus/templates/slides/app/components/ui/collapsible.tsx +0 -9
  1143. package/corpus/templates/slides/app/components/ui/command.tsx +0 -154
  1144. package/corpus/templates/slides/app/components/ui/context-menu.tsx +0 -202
  1145. package/corpus/templates/slides/app/components/ui/dialog.tsx +0 -130
  1146. package/corpus/templates/slides/app/components/ui/drawer.tsx +0 -116
  1147. package/corpus/templates/slides/app/components/ui/dropdown-menu.tsx +0 -212
  1148. package/corpus/templates/slides/app/components/ui/form.tsx +0 -177
  1149. package/corpus/templates/slides/app/components/ui/hover-card.tsx +0 -27
  1150. package/corpus/templates/slides/app/components/ui/input-otp.tsx +0 -69
  1151. package/corpus/templates/slides/app/components/ui/input.tsx +0 -22
  1152. package/corpus/templates/slides/app/components/ui/label.tsx +0 -24
  1153. package/corpus/templates/slides/app/components/ui/menubar.tsx +0 -234
  1154. package/corpus/templates/slides/app/components/ui/navigation-menu.tsx +0 -128
  1155. package/corpus/templates/slides/app/components/ui/pagination.tsx +0 -121
  1156. package/corpus/templates/slides/app/components/ui/popover.tsx +0 -44
  1157. package/corpus/templates/slides/app/components/ui/progress.tsx +0 -26
  1158. package/corpus/templates/slides/app/components/ui/radio-group.tsx +0 -42
  1159. package/corpus/templates/slides/app/components/ui/resizable.tsx +0 -43
  1160. package/corpus/templates/slides/app/components/ui/scroll-area.tsx +0 -46
  1161. package/corpus/templates/slides/app/components/ui/select.tsx +0 -158
  1162. package/corpus/templates/slides/app/components/ui/separator.tsx +0 -29
  1163. package/corpus/templates/slides/app/components/ui/sheet.tsx +0 -160
  1164. package/corpus/templates/slides/app/components/ui/sidebar.tsx +0 -782
  1165. package/corpus/templates/slides/app/components/ui/skeleton.tsx +0 -15
  1166. package/corpus/templates/slides/app/components/ui/slider.tsx +0 -26
  1167. package/corpus/templates/slides/app/components/ui/sonner.tsx +0 -58
  1168. package/corpus/templates/slides/app/components/ui/spinner.tsx +0 -17
  1169. package/corpus/templates/slides/app/components/ui/switch.tsx +0 -27
  1170. package/corpus/templates/slides/app/components/ui/table.tsx +0 -117
  1171. package/corpus/templates/slides/app/components/ui/tabs.tsx +0 -53
  1172. package/corpus/templates/slides/app/components/ui/textarea.tsx +0 -23
  1173. package/corpus/templates/slides/app/components/ui/toast.tsx +0 -127
  1174. package/corpus/templates/slides/app/components/ui/toaster.tsx +0 -33
  1175. package/corpus/templates/slides/app/components/ui/toggle-group.tsx +0 -59
  1176. package/corpus/templates/slides/app/components/ui/toggle.tsx +0 -43
  1177. package/corpus/templates/slides/app/components/ui/tooltip.tsx +0 -30
  1178. package/corpus/templates/slides/app/components/ui/use-toast.ts +0 -3
  1179. package/corpus/templates/slides/app/hooks/use-mobile.tsx +0 -21
  1180. package/corpus/templates/slides/app/hooks/use-toast.ts +0 -188
@@ -83,6 +83,26 @@ export interface EditorLayoutProps {
83
83
  }
84
84
 
85
85
  const WAVEFORM_HEIGHT = 120;
86
+ const MIN_TIMELINE_ZOOM = 1;
87
+ const MAX_TIMELINE_ZOOM = 50;
88
+
89
+ function clampTimelineZoom(value: number): number {
90
+ if (!Number.isFinite(value)) return MIN_TIMELINE_ZOOM;
91
+ const clamped = Math.max(
92
+ MIN_TIMELINE_ZOOM,
93
+ Math.min(MAX_TIMELINE_ZOOM, value),
94
+ );
95
+ return Math.round(clamped * 10) / 10;
96
+ }
97
+
98
+ function normalizeWheelDeltaY(
99
+ event: WheelEvent,
100
+ viewportWidth: number,
101
+ ): number {
102
+ if (event.deltaMode === 1) return event.deltaY * 16;
103
+ if (event.deltaMode === 2) return event.deltaY * viewportWidth;
104
+ return event.deltaY;
105
+ }
86
106
 
87
107
  function shouldProxyWaveformUrl(videoUrl: string): boolean {
88
108
  try {
@@ -210,6 +230,12 @@ export function EditorLayout({ recordingId, className }: EditorLayoutProps) {
210
230
  const [chaptersOpen, setChaptersOpen] = useState(false);
211
231
 
212
232
  const containerRef = useRef<HTMLDivElement | null>(null);
233
+ const trackpadGestureRef = useRef<{
234
+ zoom: number;
235
+ scrollLeft: number;
236
+ anchorRatio: number;
237
+ viewportX: number;
238
+ } | null>(null);
213
239
 
214
240
  // Measure viewport so waveform + timeline stay responsive.
215
241
  useEffect(() => {
@@ -228,12 +254,149 @@ export function EditorLayout({ recordingId, className }: EditorLayoutProps) {
228
254
  Math.floor(viewportWidth * Math.max(1, zoom)),
229
255
  );
230
256
 
257
+ const calculateAnchoredScrollLeft = useCallback(
258
+ (
259
+ nextZoom: number,
260
+ anchor?: { anchorRatio?: number; viewportX?: number },
261
+ ) => {
262
+ const nextTotalWidth = Math.max(
263
+ viewportWidth,
264
+ Math.floor(viewportWidth * Math.max(1, nextZoom)),
265
+ );
266
+ const maxScrollLeft = Math.max(0, nextTotalWidth - viewportWidth);
267
+ const anchorMs = selectionRange
268
+ ? (selectionRange.startMs + selectionRange.endMs) / 2
269
+ : playheadMs;
270
+ const fallbackAnchorRatio =
271
+ durationMs > 0
272
+ ? Math.max(0, Math.min(durationMs, anchorMs)) / durationMs
273
+ : 0;
274
+ const anchorRatio = Math.max(
275
+ 0,
276
+ Math.min(1, anchor?.anchorRatio ?? fallbackAnchorRatio),
277
+ );
278
+ const viewportX =
279
+ typeof anchor?.viewportX === "number"
280
+ ? Math.max(0, Math.min(viewportWidth, anchor.viewportX))
281
+ : viewportWidth / 2;
282
+ const anchorX = anchorRatio * nextTotalWidth;
283
+ return Math.max(0, Math.min(maxScrollLeft, anchorX - viewportX));
284
+ },
285
+ [durationMs, playheadMs, selectionRange, viewportWidth],
286
+ );
287
+
288
+ const setAnchoredZoom = useCallback(
289
+ (
290
+ nextZoom: number,
291
+ anchor?: { anchorRatio?: number; viewportX?: number },
292
+ ) => {
293
+ const clamped = clampTimelineZoom(nextZoom);
294
+ setZoom(clamped);
295
+ setScrollLeft(calculateAnchoredScrollLeft(clamped, anchor));
296
+ },
297
+ [calculateAnchoredScrollLeft],
298
+ );
299
+
300
+ const handleZoomChange = useCallback(
301
+ (nextZoom: number) => setAnchoredZoom(nextZoom),
302
+ [setAnchoredZoom],
303
+ );
304
+
231
305
  useEffect(() => {
232
306
  setScrollLeft((current) =>
233
307
  Math.min(current, Math.max(0, totalWidth - viewportWidth)),
234
308
  );
235
309
  }, [totalWidth, viewportWidth]);
236
310
 
311
+ useEffect(() => {
312
+ const el = containerRef.current;
313
+ if (!el) return;
314
+
315
+ const getViewportX = (clientX?: number) => {
316
+ if (typeof clientX !== "number") return viewportWidth / 2;
317
+ const rect = el.getBoundingClientRect();
318
+ return Math.max(0, Math.min(viewportWidth, clientX - rect.left));
319
+ };
320
+
321
+ const getAnchorRatio = (
322
+ sourceZoom: number,
323
+ sourceScrollLeft: number,
324
+ viewportX: number,
325
+ ) => {
326
+ const sourceTotalWidth = Math.max(
327
+ viewportWidth,
328
+ Math.floor(viewportWidth * Math.max(1, sourceZoom)),
329
+ );
330
+ return Math.max(
331
+ 0,
332
+ Math.min(
333
+ 1,
334
+ (sourceScrollLeft + viewportX) / Math.max(1, sourceTotalWidth),
335
+ ),
336
+ );
337
+ };
338
+
339
+ const handleWheel = (event: WheelEvent) => {
340
+ if (!event.ctrlKey) return;
341
+ event.preventDefault();
342
+ const deltaY = normalizeWheelDeltaY(event, viewportWidth);
343
+ if (Math.abs(deltaY) < 0.01) return;
344
+ const viewportX = getViewportX(event.clientX);
345
+ const anchorRatio = getAnchorRatio(zoom, scrollLeft, viewportX);
346
+ const nextZoom = clampTimelineZoom(zoom * Math.exp(-deltaY * 0.006));
347
+ if (nextZoom === zoom) return;
348
+ setAnchoredZoom(nextZoom, { anchorRatio, viewportX });
349
+ };
350
+
351
+ const handleGestureStart = (event: Event) => {
352
+ event.preventDefault();
353
+ const gesture = event as Event & { clientX?: number };
354
+ const viewportX = getViewportX(gesture.clientX);
355
+ trackpadGestureRef.current = {
356
+ zoom,
357
+ scrollLeft,
358
+ anchorRatio: getAnchorRatio(zoom, scrollLeft, viewportX),
359
+ viewportX,
360
+ };
361
+ };
362
+
363
+ const handleGestureChange = (event: Event) => {
364
+ const start = trackpadGestureRef.current;
365
+ if (!start) return;
366
+ event.preventDefault();
367
+ const gesture = event as Event & { scale?: number };
368
+ const scale =
369
+ typeof gesture.scale === "number" && Number.isFinite(gesture.scale)
370
+ ? gesture.scale
371
+ : 1;
372
+ const nextZoom = clampTimelineZoom(start.zoom * scale);
373
+ if (nextZoom === zoom) return;
374
+ setAnchoredZoom(nextZoom, {
375
+ anchorRatio: start.anchorRatio,
376
+ viewportX: start.viewportX,
377
+ });
378
+ };
379
+
380
+ const handleGestureEnd = () => {
381
+ trackpadGestureRef.current = null;
382
+ };
383
+
384
+ el.addEventListener("wheel", handleWheel, { passive: false });
385
+ el.addEventListener("gesturestart", handleGestureStart, {
386
+ passive: false,
387
+ });
388
+ el.addEventListener("gesturechange", handleGestureChange, {
389
+ passive: false,
390
+ });
391
+ el.addEventListener("gestureend", handleGestureEnd);
392
+ return () => {
393
+ el.removeEventListener("wheel", handleWheel);
394
+ el.removeEventListener("gesturestart", handleGestureStart);
395
+ el.removeEventListener("gesturechange", handleGestureChange);
396
+ el.removeEventListener("gestureend", handleGestureEnd);
397
+ };
398
+ }, [scrollLeft, setAnchoredZoom, viewportWidth, zoom]);
399
+
237
400
  // Sync the <video> to play state.
238
401
  useEffect(() => {
239
402
  const v = videoRef.current;
@@ -457,7 +620,7 @@ export function EditorLayout({ recordingId, className }: EditorLayoutProps) {
457
620
  playbackSpeed={playbackSpeed}
458
621
  onPlaybackSpeedChange={handlePlaybackSpeedChange}
459
622
  zoom={zoom}
460
- onZoomChange={setZoom}
623
+ onZoomChange={handleZoomChange}
461
624
  edits={edits}
462
625
  selectionRange={selectionRange}
463
626
  video={{ videoUrl, videoFormat, title: recording.title }}
@@ -524,6 +687,7 @@ export function EditorLayout({ recordingId, className }: EditorLayoutProps) {
524
687
  selectionRange={selectionRange}
525
688
  activityRanges={transcriptSegments}
526
689
  onSeek={seek}
690
+ scrollLeft={scrollLeft}
527
691
  onScroll={(s) => setScrollLeft(s)}
528
692
  />
529
693
  <div
@@ -543,7 +707,6 @@ export function EditorLayout({ recordingId, className }: EditorLayoutProps) {
543
707
  value={effectiveSelection}
544
708
  onChange={setSelectionRange}
545
709
  durationMs={durationMs}
546
- scrollLeft={scrollLeft}
547
710
  />
548
711
  </div>
549
712
  </div>
@@ -566,7 +729,6 @@ export function EditorLayout({ recordingId, className }: EditorLayoutProps) {
566
729
  chapters={chapters}
567
730
  excludedRanges={excludedRanges}
568
731
  splitPoints={splitPoints}
569
- scrollLeft={scrollLeft}
570
732
  onSeek={seek}
571
733
  onClickChapter={(c) => seek(c.startMs)}
572
734
  />
@@ -1,24 +1,4 @@
1
1
  import { useActionMutation, useT } from "@agent-native/core/client";
2
- import {
3
- IconArrowBackUp,
4
- IconChevronDown,
5
- IconCut,
6
- IconGauge,
7
- IconZoomIn,
8
- IconZoomOut,
9
- IconPlayerPlay,
10
- IconPlayerPause,
11
- IconScissors,
12
- IconPhotoEdit,
13
- IconBookmarks,
14
- IconPuzzle,
15
- IconDownload,
16
- IconLoader2,
17
- IconTrash,
18
- } from "@tabler/icons-react";
19
- import { useState } from "react";
20
- import { toast } from "sonner";
21
-
22
2
  import {
23
3
  AlertDialog,
24
4
  AlertDialogAction,
@@ -28,8 +8,8 @@ import {
28
8
  AlertDialogFooter,
29
9
  AlertDialogHeader,
30
10
  AlertDialogTitle,
31
- } from "@/components/ui/alert-dialog";
32
- import { Button } from "@/components/ui/button";
11
+ } from "@agent-native/toolkit/ui/alert-dialog";
12
+ import { Button } from "@agent-native/toolkit/ui/button";
33
13
  import {
34
14
  DropdownMenu,
35
15
  DropdownMenuContent,
@@ -37,17 +17,35 @@ import {
37
17
  DropdownMenuLabel,
38
18
  DropdownMenuSeparator,
39
19
  DropdownMenuShortcut,
40
- DropdownMenuSub,
41
- DropdownMenuSubContent,
42
- DropdownMenuSubTrigger,
43
20
  DropdownMenuTrigger,
44
- } from "@/components/ui/dropdown-menu";
45
- import { Separator } from "@/components/ui/separator";
21
+ } from "@agent-native/toolkit/ui/dropdown-menu";
22
+ import { Separator } from "@agent-native/toolkit/ui/separator";
23
+ import { Slider } from "@agent-native/toolkit/ui/slider";
46
24
  import {
47
25
  Tooltip,
48
26
  TooltipContent,
49
27
  TooltipTrigger,
50
- } from "@/components/ui/tooltip";
28
+ } from "@agent-native/toolkit/ui/tooltip";
29
+ import {
30
+ IconArrowBackUp,
31
+ IconChevronDown,
32
+ IconCut,
33
+ IconGauge,
34
+ IconZoomIn,
35
+ IconZoomOut,
36
+ IconPlayerPlay,
37
+ IconPlayerPause,
38
+ IconScissors,
39
+ IconPhotoEdit,
40
+ IconBookmarks,
41
+ IconPuzzle,
42
+ IconDownload,
43
+ IconLoader2,
44
+ IconTrash,
45
+ } from "@tabler/icons-react";
46
+ import { useState } from "react";
47
+ import { toast } from "sonner";
48
+
51
49
  import {
52
50
  exportMp4,
53
51
  LONG_EXPORT_THRESHOLD_MS,
@@ -61,6 +59,9 @@ import {
61
59
  } from "@/lib/timestamp-mapping";
62
60
  import { cn } from "@/lib/utils";
63
61
 
62
+ const MIN_TIMELINE_ZOOM = 1;
63
+ const MAX_TIMELINE_ZOOM = 50;
64
+
64
65
  export interface EditorToolbarProps {
65
66
  recordingId: string;
66
67
  playheadMs: number;
@@ -338,6 +339,74 @@ export function EditorToolbar({
338
339
  </DropdownMenuContent>
339
340
  </DropdownMenu>
340
341
 
342
+ <Separator orientation="vertical" className="mx-1 h-6" />
343
+
344
+ <div
345
+ className="flex h-8 shrink-0 items-center gap-1 rounded-md border border-border bg-background/70 px-1"
346
+ aria-label={t("editorToolbar.zoom")}
347
+ >
348
+ <Tooltip>
349
+ <TooltipTrigger asChild>
350
+ <Button
351
+ size="icon"
352
+ variant="ghost"
353
+ className="h-6 w-6"
354
+ aria-label={t("editorToolbar.zoomOut")}
355
+ disabled={zoom <= MIN_TIMELINE_ZOOM}
356
+ onClick={() =>
357
+ onZoomChange(Math.max(MIN_TIMELINE_ZOOM, zoom - 1))
358
+ }
359
+ >
360
+ <IconZoomOut className="h-3.5 w-3.5" />
361
+ </Button>
362
+ </TooltipTrigger>
363
+ <TooltipContent>{t("editorToolbar.zoomOut")}</TooltipContent>
364
+ </Tooltip>
365
+
366
+ <Slider
367
+ value={[zoom]}
368
+ min={MIN_TIMELINE_ZOOM}
369
+ max={MAX_TIMELINE_ZOOM}
370
+ step={0.1}
371
+ aria-label={t("editorToolbar.zoom")}
372
+ onValueChange={(value) => onZoomChange(value[0] ?? zoom)}
373
+ className="hidden w-28 lg:flex"
374
+ />
375
+
376
+ <Tooltip>
377
+ <TooltipTrigger asChild>
378
+ <Button
379
+ size="sm"
380
+ variant={zoom === MIN_TIMELINE_ZOOM ? "secondary" : "ghost"}
381
+ className="h-6 min-w-10 px-1.5 font-mono text-[11px] tabular-nums"
382
+ aria-label={t("editorToolbar.fitToWidth")}
383
+ onClick={() => onZoomChange(MIN_TIMELINE_ZOOM)}
384
+ >
385
+ {formatZoomLabel(zoom)}
386
+ </Button>
387
+ </TooltipTrigger>
388
+ <TooltipContent>{t("editorToolbar.fitToWidth")}</TooltipContent>
389
+ </Tooltip>
390
+
391
+ <Tooltip>
392
+ <TooltipTrigger asChild>
393
+ <Button
394
+ size="icon"
395
+ variant="ghost"
396
+ className="h-6 w-6"
397
+ aria-label={t("editorToolbar.zoomIn")}
398
+ disabled={zoom >= MAX_TIMELINE_ZOOM}
399
+ onClick={() =>
400
+ onZoomChange(Math.min(MAX_TIMELINE_ZOOM, zoom + 1))
401
+ }
402
+ >
403
+ <IconZoomIn className="h-3.5 w-3.5" />
404
+ </Button>
405
+ </TooltipTrigger>
406
+ <TooltipContent>{t("editorToolbar.zoomIn")}</TooltipContent>
407
+ </Tooltip>
408
+ </div>
409
+
341
410
  {selectionRange ? (
342
411
  <>
343
412
  <Separator orientation="vertical" className="mx-1 h-6" />
@@ -413,35 +482,6 @@ export function EditorToolbar({
413
482
  {t("editorToolbar.stitchClips")}
414
483
  </DropdownMenuItem>
415
484
  <DropdownMenuSeparator />
416
- <DropdownMenuSub>
417
- <DropdownMenuSubTrigger>
418
- <IconZoomIn className="mr-2 h-4 w-4" />
419
- {t("editorToolbar.zoom")}
420
- <span className="ml-auto text-xs text-muted-foreground">
421
- {zoom}x
422
- </span>
423
- </DropdownMenuSubTrigger>
424
- <DropdownMenuSubContent className="w-44">
425
- <DropdownMenuItem
426
- disabled={zoom <= 1}
427
- onSelect={() => onZoomChange(Math.max(1, zoom - 5))}
428
- >
429
- <IconZoomOut className="mr-2 h-4 w-4" />
430
- {t("editorToolbar.zoomOut")}
431
- </DropdownMenuItem>
432
- <DropdownMenuItem onSelect={() => onZoomChange(1)}>
433
- {t("editorToolbar.fitToWidth")}
434
- </DropdownMenuItem>
435
- <DropdownMenuItem
436
- disabled={zoom >= 50}
437
- onSelect={() => onZoomChange(Math.min(50, zoom + 5))}
438
- >
439
- <IconZoomIn className="mr-2 h-4 w-4" />
440
- {t("editorToolbar.zoomIn")}
441
- </DropdownMenuItem>
442
- </DropdownMenuSubContent>
443
- </DropdownMenuSub>
444
- <DropdownMenuSeparator />
445
485
  <DropdownMenuItem onSelect={() => setClearOpen(true)}>
446
486
  <IconTrash className="mr-2 h-4 w-4" />
447
487
  {t("editorToolbar.clearAllEdits")}
@@ -536,3 +576,7 @@ export function EditorToolbar({
536
576
  function formatSpeedLabel(rate: number): string {
537
577
  return `${Number.isInteger(rate) ? rate : rate.toFixed(1)}x`;
538
578
  }
579
+
580
+ function formatZoomLabel(zoom: number): string {
581
+ return `${Number.isInteger(zoom) ? zoom : zoom.toFixed(1)}x`;
582
+ }
@@ -1,13 +1,12 @@
1
1
  import { useActionMutation, useT } from "@agent-native/core/client";
2
- import { IconCut } from "@tabler/icons-react";
3
- import { toast } from "sonner";
4
-
5
- import { Button } from "@/components/ui/button";
2
+ import { Button } from "@agent-native/toolkit/ui/button";
6
3
  import {
7
4
  Tooltip,
8
5
  TooltipContent,
9
6
  TooltipTrigger,
10
- } from "@/components/ui/tooltip";
7
+ } from "@agent-native/toolkit/ui/tooltip";
8
+ import { IconCut } from "@tabler/icons-react";
9
+ import { toast } from "sonner";
11
10
 
12
11
  export interface SplitButtonProps {
13
12
  recordingId: string;
@@ -4,6 +4,15 @@ import {
4
4
  useActionQuery,
5
5
  useT,
6
6
  } from "@agent-native/core/client";
7
+ import { Button } from "@agent-native/toolkit/ui/button";
8
+ import {
9
+ Dialog,
10
+ DialogContent,
11
+ DialogHeader,
12
+ DialogTitle,
13
+ DialogFooter,
14
+ } from "@agent-native/toolkit/ui/dialog";
15
+ import { ScrollArea } from "@agent-native/toolkit/ui/scroll-area";
7
16
  import {
8
17
  IconPuzzle,
9
18
  IconGripVertical,
@@ -13,15 +22,6 @@ import {
13
22
  import { useEffect, useMemo, useState } from "react";
14
23
  import { toast } from "sonner";
15
24
 
16
- import { Button } from "@/components/ui/button";
17
- import {
18
- Dialog,
19
- DialogContent,
20
- DialogHeader,
21
- DialogTitle,
22
- DialogFooter,
23
- } from "@/components/ui/dialog";
24
- import { ScrollArea } from "@/components/ui/scroll-area";
25
25
  import { exportConcat } from "@/lib/ffmpeg-export";
26
26
  import { formatMs } from "@/lib/timestamp-mapping";
27
27
  import { cn } from "@/lib/utils";
@@ -1,4 +1,20 @@
1
1
  import { useActionMutation, useT } from "@agent-native/core/client";
2
+ import { Button } from "@agent-native/toolkit/ui/button";
3
+ import {
4
+ Dialog,
5
+ DialogContent,
6
+ DialogHeader,
7
+ DialogTitle,
8
+ DialogFooter,
9
+ } from "@agent-native/toolkit/ui/dialog";
10
+ import { Label } from "@agent-native/toolkit/ui/label";
11
+ import { Slider } from "@agent-native/toolkit/ui/slider";
12
+ import {
13
+ Tabs,
14
+ TabsList,
15
+ TabsTrigger,
16
+ TabsContent,
17
+ } from "@agent-native/toolkit/ui/tabs";
2
18
  import {
3
19
  IconPhoto,
4
20
  IconPhotoEdit,
@@ -8,17 +24,6 @@ import {
8
24
  import { useEffect, useRef, useState } from "react";
9
25
  import { toast } from "sonner";
10
26
 
11
- import { Button } from "@/components/ui/button";
12
- import {
13
- Dialog,
14
- DialogContent,
15
- DialogHeader,
16
- DialogTitle,
17
- DialogFooter,
18
- } from "@/components/ui/dialog";
19
- import { Label } from "@/components/ui/label";
20
- import { Slider } from "@/components/ui/slider";
21
- import { Tabs, TabsList, TabsTrigger, TabsContent } from "@/components/ui/tabs";
22
27
  import { exportGif, blobToDataUrl } from "@/lib/ffmpeg-export";
23
28
  import { formatMs } from "@/lib/timestamp-mapping";
24
29
 
@@ -1,10 +1,10 @@
1
- import { useMemo } from "react";
2
-
3
1
  import {
4
2
  Tooltip,
5
3
  TooltipContent,
6
4
  TooltipTrigger,
7
- } from "@/components/ui/tooltip";
5
+ } from "@agent-native/toolkit/ui/tooltip";
6
+ import { useMemo } from "react";
7
+
8
8
  import { formatMs } from "@/lib/timestamp-mapping";
9
9
  import { cn } from "@/lib/utils";
10
10
 
@@ -21,7 +21,6 @@ export interface TimelineProps {
21
21
  chapters?: TimelineChapter[];
22
22
  excludedRanges?: Array<{ startMs: number; endMs: number }>;
23
23
  splitPoints?: number[];
24
- scrollLeft?: number;
25
24
  onSeek?: (originalMs: number) => void;
26
25
  onClickChapter?: (chapter: TimelineChapter) => void;
27
26
  className?: string;
@@ -45,7 +44,6 @@ export function Timeline({
45
44
  chapters = [],
46
45
  excludedRanges = [],
47
46
  splitPoints = [],
48
- scrollLeft = 0,
49
47
  onSeek,
50
48
  onClickChapter,
51
49
  className,
@@ -72,7 +70,7 @@ export function Timeline({
72
70
  const handleSeek = (e: React.MouseEvent<HTMLDivElement>) => {
73
71
  if (!onSeek) return;
74
72
  const rect = e.currentTarget.getBoundingClientRect();
75
- const x = e.clientX - rect.left + scrollLeft;
73
+ const x = e.clientX - rect.left;
76
74
  const ms = Math.max(0, Math.min(durationMs, (x / width) * durationMs));
77
75
  onSeek(ms);
78
76
  };
@@ -1,13 +1,13 @@
1
1
  import { useT } from "@agent-native/core/client";
2
- import { IconScissors } from "@tabler/icons-react";
3
- import { useMemo, useRef, useState } from "react";
4
-
5
- import { Button } from "@/components/ui/button";
2
+ import { Button } from "@agent-native/toolkit/ui/button";
6
3
  import {
7
4
  Tooltip,
8
5
  TooltipContent,
9
6
  TooltipTrigger,
10
- } from "@/components/ui/tooltip";
7
+ } from "@agent-native/toolkit/ui/tooltip";
8
+ import { IconScissors } from "@tabler/icons-react";
9
+ import { useMemo, useRef, useState } from "react";
10
+
11
11
  import { formatMs, isExcluded, type EditsJson } from "@/lib/timestamp-mapping";
12
12
  import { cn } from "@/lib/utils";
13
13
 
@@ -13,8 +13,6 @@ export interface TrimHandlesProps {
13
13
  /** Fires when the user releases the mouse after drag. */
14
14
  onCommit?: (value: { startMs: number; endMs: number }) => void;
15
15
  durationMs: number;
16
- /** Scroll offset of the parent container so handles track with zoom. */
17
- scrollLeft?: number;
18
16
  className?: string;
19
17
  }
20
18
 
@@ -46,7 +44,6 @@ export function TrimHandles({
46
44
  onChange,
47
45
  onCommit,
48
46
  durationMs,
49
- scrollLeft = 0,
50
47
  className,
51
48
  }: TrimHandlesProps) {
52
49
  const rootRef = useRef<HTMLDivElement | null>(null);
@@ -57,10 +54,10 @@ export function TrimHandles({
57
54
  (clientX: number) => {
58
55
  const rect = rootRef.current?.getBoundingClientRect();
59
56
  if (!rect) return 0;
60
- const x = clientX - rect.left + scrollLeft;
57
+ const x = clientX - rect.left;
61
58
  return Math.max(0, Math.min(durationMs, (x / width) * durationMs));
62
59
  },
63
- [scrollLeft, durationMs, width],
60
+ [durationMs, width],
64
61
  );
65
62
 
66
63
  const startDrag = (mode: DragMode) => (e: React.PointerEvent) => {
@@ -101,7 +98,7 @@ export function TrimHandles({
101
98
  const toMsFromEvent = (e: PointerEvent) => {
102
99
  const rect = rootRef.current?.getBoundingClientRect();
103
100
  if (!rect) return null;
104
- const x = e.clientX - rect.left + scrollLeft;
101
+ const x = e.clientX - rect.left;
105
102
  return Math.max(0, Math.min(durationMs, (x / width) * durationMs));
106
103
  };
107
104
  window.addEventListener("pointermove", handleMove);
@@ -110,7 +107,7 @@ export function TrimHandles({
110
107
  window.removeEventListener("pointermove", handleMove);
111
108
  window.removeEventListener("pointerup", handleUp);
112
109
  };
113
- }, [dragMode, value, onChange, onCommit, scrollLeft, durationMs, width]);
110
+ }, [dragMode, value, onChange, onCommit, durationMs, width]);
114
111
 
115
112
  const startX = (value.startMs / Math.max(durationMs, 1)) * width;
116
113
  const endX = (value.endMs / Math.max(durationMs, 1)) * width;
@@ -24,6 +24,8 @@ export interface WaveformProps {
24
24
  activityRanges?: Array<{ startMs: number; endMs: number }>;
25
25
  /** Click handler — returns the original ms at the click position. */
26
26
  onSeek?: (originalMs: number) => void;
27
+ /** Controlled horizontal scroll offset from the parent timeline shell. */
28
+ scrollLeft?: number;
27
29
  /** Called on scroll so the parent can sync ruler / chapter markers. */
28
30
  onScroll?: (scrollLeft: number, totalWidth: number) => void;
29
31
  className?: string;
@@ -88,6 +90,7 @@ export function Waveform({
88
90
  selectionRange,
89
91
  activityRanges = [],
90
92
  onSeek,
93
+ scrollLeft = 0,
91
94
  onScroll,
92
95
  className,
93
96
  }: WaveformProps) {
@@ -97,6 +100,15 @@ export function Waveform({
97
100
  // The total drawable width (scrolls horizontally). zoom=1 fits exactly.
98
101
  const totalWidth = Math.max(width, Math.floor(width * Math.max(1, zoom)));
99
102
 
103
+ useEffect(() => {
104
+ const el = scrollRef.current;
105
+ if (!el) return;
106
+ const next = Math.max(0, Math.min(scrollLeft, totalWidth - width));
107
+ if (Math.abs(el.scrollLeft - next) > 0.5) {
108
+ el.scrollLeft = next;
109
+ }
110
+ }, [scrollLeft, totalWidth, width]);
111
+
100
112
  // Re-draw whenever peaks, size, or excluded ranges change.
101
113
  useEffect(() => {
102
114
  const canvas = canvasRef.current;
@@ -234,10 +246,7 @@ export function Waveform({
234
246
 
235
247
  const handleClick = (e: React.MouseEvent<HTMLDivElement>) => {
236
248
  if (!onSeek) return;
237
- const rect = (
238
- e.currentTarget.firstElementChild as HTMLElement
239
- )?.getBoundingClientRect();
240
- if (!rect) return;
249
+ const rect = e.currentTarget.getBoundingClientRect();
241
250
  const scroll = scrollRef.current?.scrollLeft ?? 0;
242
251
  const x = e.clientX - rect.left + scroll;
243
252
  const ms = Math.max(0, Math.min(durationMs, (x / totalWidth) * durationMs));
@@ -1,8 +1,10 @@
1
1
  import { AgentToggleButton, useT } from "@agent-native/core/client";
2
+ import {
3
+ useHeaderTitle,
4
+ useHeaderActions,
5
+ } from "@agent-native/toolkit/app-shell";
2
6
  import { useLocation } from "react-router";
3
7
 
4
- import { useHeaderTitle, useHeaderActions } from "./HeaderActions";
5
-
6
8
  const pageTitleKeys: Record<string, string> = {
7
9
  "/": "navigation.library",
8
10
  "/library": "navigation.library",