@orbit-work/ui 0.1.1 → 0.1.2

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 (794) hide show
  1. package/README.md +59 -57
  2. package/dist/about-window.cjs +271 -1
  3. package/dist/about-window.cjs.map +1 -0
  4. package/dist/about-window.d.cts +20 -2
  5. package/dist/about-window.d.ts +20 -2
  6. package/dist/about-window.js +271 -1
  7. package/dist/about-window.js.map +1 -0
  8. package/dist/appearance-D7uh_ZTy.d.cts +192 -0
  9. package/dist/appearance-D7uh_ZTy.d.ts +192 -0
  10. package/dist/appearance.cjs +39 -1
  11. package/dist/appearance.cjs.map +1 -0
  12. package/dist/appearance.d.cts +1 -1
  13. package/dist/appearance.d.ts +1 -1
  14. package/dist/appearance.js +39 -1
  15. package/dist/appearance.js.map +1 -0
  16. package/dist/browser-annotation-popup.cjs +9 -1
  17. package/dist/browser-annotation-popup.cjs.map +1 -0
  18. package/dist/browser-annotation-popup.d.cts +6 -6
  19. package/dist/browser-annotation-popup.d.ts +6 -6
  20. package/dist/browser-annotation-popup.js +9 -1
  21. package/dist/browser-annotation-popup.js.map +1 -0
  22. package/dist/chunk-66VEV7G2.js +111 -0
  23. package/dist/chunk-66VEV7G2.js.map +1 -0
  24. package/dist/chunk-KRP43SUA.cjs +1130 -0
  25. package/dist/chunk-KRP43SUA.cjs.map +1 -0
  26. package/dist/chunk-QS55W5Q5.cjs +111 -0
  27. package/dist/chunk-QS55W5Q5.cjs.map +1 -0
  28. package/dist/chunk-S3R5QFO4.js +1130 -0
  29. package/dist/chunk-S3R5QFO4.js.map +1 -0
  30. package/dist/chunk-UT5LC6MR.js +38 -0
  31. package/dist/chunk-UT5LC6MR.js.map +1 -0
  32. package/dist/chunk-ZZTEY4YX.cjs +38 -0
  33. package/dist/chunk-ZZTEY4YX.cjs.map +1 -0
  34. package/dist/core.css +7886 -0
  35. package/dist/file-tree.css +85 -0
  36. package/dist/index-nLo7jMlP.d.cts +166 -0
  37. package/dist/index-nLo7jMlP.d.ts +166 -0
  38. package/dist/index.cjs +39161 -26
  39. package/dist/index.cjs.map +1 -0
  40. package/dist/index.d.cts +3785 -3031
  41. package/dist/index.d.ts +3785 -3031
  42. package/dist/index.js +39161 -26
  43. package/dist/index.js.map +1 -0
  44. package/dist/locale.cjs +15 -0
  45. package/dist/locale.cjs.map +1 -0
  46. package/dist/locale.d.cts +28 -0
  47. package/dist/locale.d.ts +28 -0
  48. package/dist/locale.js +15 -0
  49. package/dist/locale.js.map +1 -0
  50. package/dist/office.css +1146 -0
  51. package/dist/slot-core.cjs +200 -0
  52. package/dist/slot-core.cjs.map +1 -0
  53. package/dist/slot-core.d.cts +146 -0
  54. package/dist/slot-core.d.ts +146 -0
  55. package/dist/slot-core.js +200 -0
  56. package/dist/slot-core.js.map +1 -0
  57. package/dist/slot-react.cjs +153 -0
  58. package/dist/slot-react.cjs.map +1 -0
  59. package/dist/slot-react.d.cts +36 -0
  60. package/dist/slot-react.d.ts +36 -0
  61. package/dist/slot-react.js +153 -0
  62. package/dist/slot-react.js.map +1 -0
  63. package/dist/tailwind.css +137 -0
  64. package/dist/workbench.css +9014 -0
  65. package/package.json +112 -47
  66. package/dist/appearance-D5uQ53j3.d.cts +0 -210
  67. package/dist/appearance-D5uQ53j3.d.ts +0 -210
  68. package/dist/chunk-3KT7IU4X.js +0 -13
  69. package/dist/chunk-5VLBKOG7.cjs +0 -194
  70. package/dist/chunk-7YJY64LZ.js +0 -82
  71. package/dist/chunk-EF2BSN3K.cjs +0 -13
  72. package/dist/chunk-GMMYDILD.cjs +0 -82
  73. package/dist/chunk-VG7FQQ7K.js +0 -194
  74. package/dist/fonts/JetBrainsMono-Medium.ttf +0 -0
  75. package/dist/fonts/JetBrainsMono-Regular.ttf +0 -0
  76. package/dist/fonts/SpaceGrotesk-700-latin-ext.woff2 +0 -0
  77. package/dist/fonts/SpaceGrotesk-700-latin.woff2 +0 -0
  78. package/dist/index.css +0 -1
  79. package/dist/orbitwork.css +0 -22145
  80. package/src/components/Layout/AppLayout/AppLayout.stories.tsx +0 -246
  81. package/src/components/Layout/AppLayout/AppLayoutSource.test.mjs +0 -37
  82. package/src/components/Layout/AppLayout/index.tsx +0 -122
  83. package/src/components/Layout/Sidebar/index.tsx +0 -13
  84. package/src/components/Layout/SidebarShell/SidebarShell.stories.tsx +0 -676
  85. package/src/components/Layout/SidebarShell/SidebarShellSource.test.mjs +0 -161
  86. package/src/components/Layout/SidebarShell/index.tsx +0 -326
  87. package/src/components/Layout/index.ts +0 -10
  88. package/src/components/composite/ActionBar/ActionBar.stories.tsx +0 -26
  89. package/src/components/composite/ActionBar/index.tsx +0 -31
  90. package/src/components/composite/ActionStatus/ActionStatus.stories.tsx +0 -60
  91. package/src/components/composite/ActionStatus/index.tsx +0 -21
  92. package/src/components/composite/AskQuestionCardView/AskQuestionCardView.stories.tsx +0 -175
  93. package/src/components/composite/AskQuestionCardView/AskQuestionCardViewSource.test.mjs +0 -92
  94. package/src/components/composite/AskQuestionCardView/index.tsx +0 -119
  95. package/src/components/composite/AssistantChannelCard/AssistantChannelCard.stories.tsx +0 -265
  96. package/src/components/composite/AssistantChannelCard/AssistantChannelCardSource.test.mjs +0 -45
  97. package/src/components/composite/AssistantChannelCard/index.tsx +0 -102
  98. package/src/components/composite/AssistantToggleRow/AssistantToggleRow.stories.tsx +0 -197
  99. package/src/components/composite/AssistantToggleRow/index.tsx +0 -35
  100. package/src/components/composite/AttachmentCard/AttachmentCard.stories.tsx +0 -125
  101. package/src/components/composite/AttachmentCard/index.tsx +0 -80
  102. package/src/components/composite/BackButton/BackButton.stories.tsx +0 -93
  103. package/src/components/composite/BackButton/BackButtonSource.test.mjs +0 -29
  104. package/src/components/composite/BackButton/index.tsx +0 -48
  105. package/src/components/composite/Banner/Banner.stories.tsx +0 -180
  106. package/src/components/composite/Banner/BannerSource.test.mjs +0 -67
  107. package/src/components/composite/Banner/index.tsx +0 -125
  108. package/src/components/composite/BeaconIcons/BeaconIcons.stories.tsx +0 -153
  109. package/src/components/composite/BeaconIcons/index.tsx +0 -265
  110. package/src/components/composite/BeaconSpinner/BeaconSpinner.stories.tsx +0 -144
  111. package/src/components/composite/BeaconSpinner/index.tsx +0 -185
  112. package/src/components/composite/CatalogStates/CatalogEmptyState.stories.tsx +0 -108
  113. package/src/components/composite/CatalogStates/CatalogStates.stories.tsx +0 -53
  114. package/src/components/composite/CatalogStates/CatalogStatesSource.test.mjs +0 -149
  115. package/src/components/composite/CatalogStates/index.tsx +0 -113
  116. package/src/components/composite/Charts/Charts.stories.tsx +0 -174
  117. package/src/components/composite/Charts/ChartsSource.test.mjs +0 -111
  118. package/src/components/composite/Charts/index.tsx +0 -385
  119. package/src/components/composite/CodeBlock/CodeBlock.stories.tsx +0 -308
  120. package/src/components/composite/CodeBlock/CodeFaceSource.test.mjs +0 -89
  121. package/src/components/composite/CodeBlock/index.tsx +0 -300
  122. package/src/components/composite/CodeDiff/CodeDiff.stories.tsx +0 -169
  123. package/src/components/composite/CodeDiff/index.tsx +0 -373
  124. package/src/components/composite/CodePreview/CodePreview.stories.tsx +0 -127
  125. package/src/components/composite/CodePreview/CodePreviewSource.test.mjs +0 -43
  126. package/src/components/composite/CodePreview/index.tsx +0 -98
  127. package/src/components/composite/CommandPalette/CommandPalette.stories.tsx +0 -89
  128. package/src/components/composite/CommandPalette/CommandPaletteSource.test.mjs +0 -61
  129. package/src/components/composite/CommandPalette/index.tsx +0 -310
  130. package/src/components/composite/ContentRecommendation/ContentRecommendation.stories.tsx +0 -300
  131. package/src/components/composite/ContentRecommendation/ContentRecommendationSource.test.mjs +0 -48
  132. package/src/components/composite/ContentRecommendation/index.tsx +0 -116
  133. package/src/components/composite/ContextChip/ContextChip.stories.tsx +0 -123
  134. package/src/components/composite/ContextChip/ContextChipSource.test.mjs +0 -24
  135. package/src/components/composite/ContextChip/index.tsx +0 -25
  136. package/src/components/composite/ContextUsageIndicatorView/ContextUsageIndicatorSizeSource.test.mjs +0 -15
  137. package/src/components/composite/ContextUsageIndicatorView/ContextUsageIndicatorView.stories.tsx +0 -110
  138. package/src/components/composite/ContextUsageIndicatorView/ContextUsageLoadingSource.test.mjs +0 -23
  139. package/src/components/composite/ContextUsageIndicatorView/index.tsx +0 -139
  140. package/src/components/composite/Controls/Controls.stories.tsx +0 -227
  141. package/src/components/composite/Controls/index.tsx +0 -15
  142. package/src/components/composite/CreateProjectDialog/CreateProjectDialog.stories.tsx +0 -56
  143. package/src/components/composite/CreateProjectDialog/index.tsx +0 -70
  144. package/src/components/composite/DataManagementSectionView/DataManagementSectionView.stories.tsx +0 -123
  145. package/src/components/composite/DataManagementSectionView/DataManagementSectionViewSource.test.mjs +0 -45
  146. package/src/components/composite/DataManagementSectionView/index.tsx +0 -110
  147. package/src/components/composite/DataTable/DataTable.stories.tsx +0 -159
  148. package/src/components/composite/DataTable/DataTableSource.test.mjs +0 -96
  149. package/src/components/composite/DataTable/index.tsx +0 -373
  150. package/src/components/composite/DetailChrome/DetailChrome.stories.tsx +0 -61
  151. package/src/components/composite/DetailChrome/DetailChromeSource.test.mjs +0 -31
  152. package/src/components/composite/DetailChrome/index.tsx +0 -94
  153. package/src/components/composite/DetailPanel/DetailPanel.stories.tsx +0 -185
  154. package/src/components/composite/DetailPanel/DetailPanelSource.test.mjs +0 -49
  155. package/src/components/composite/DetailPanel/index.tsx +0 -120
  156. package/src/components/composite/DetailScaffold/DetailScaffold.stories.tsx +0 -203
  157. package/src/components/composite/DetailScaffold/DetailScaffoldSource.test.mjs +0 -38
  158. package/src/components/composite/DetailScaffold/index.tsx +0 -114
  159. package/src/components/composite/Dialog/Dialog.stories.tsx +0 -343
  160. package/src/components/composite/Dialog/DialogSource.test.mjs +0 -130
  161. package/src/components/composite/Dialog/index.tsx +0 -333
  162. package/src/components/composite/DropZone/DropZone.stories.tsx +0 -105
  163. package/src/components/composite/DropZone/DropZoneSource.test.mjs +0 -68
  164. package/src/components/composite/DropZone/index.tsx +0 -196
  165. package/src/components/composite/FSelect/FSelect.stories.tsx +0 -64
  166. package/src/components/composite/FSelect/index.tsx +0 -29
  167. package/src/components/composite/FeedbackContextMenuView/FeedbackContextMenuView.stories.tsx +0 -106
  168. package/src/components/composite/FeedbackContextMenuView/index.tsx +0 -51
  169. package/src/components/composite/FeedbackDialogView/FeedbackDialogView.stories.tsx +0 -291
  170. package/src/components/composite/FeedbackDialogView/index.tsx +0 -95
  171. package/src/components/composite/FileReferenceCard/FileReferenceCard.stories.tsx +0 -364
  172. package/src/components/composite/FileReferenceCard/FileReferenceCardSource.test.mjs +0 -48
  173. package/src/components/composite/FileReferenceCard/index.tsx +0 -122
  174. package/src/components/composite/FilterBar/FilterBar.stories.tsx +0 -167
  175. package/src/components/composite/FilterBar/FilterBarSource.test.mjs +0 -75
  176. package/src/components/composite/FilterBar/index.tsx +0 -206
  177. package/src/components/composite/FormField/FormField.stories.tsx +0 -158
  178. package/src/components/composite/FormField/FormFieldSource.test.mjs +0 -56
  179. package/src/components/composite/FormField/index.tsx +0 -219
  180. package/src/components/composite/HomeBackdrop/HomeBackdrop.stories.tsx +0 -54
  181. package/src/components/composite/HomeBackdrop/HomeBackdropSource.test.mjs +0 -50
  182. package/src/components/composite/HomeBackdrop/index.tsx +0 -53
  183. package/src/components/composite/Icons/Icons.stories.tsx +0 -153
  184. package/src/components/composite/Icons/IconsSource.test.mjs +0 -23
  185. package/src/components/composite/Icons/index.tsx +0 -1361
  186. package/src/components/composite/ImageCard/ImageCard.stories.tsx +0 -54
  187. package/src/components/composite/ImageCard/index.tsx +0 -33
  188. package/src/components/composite/ImagePreview/ImagePreview.stories.tsx +0 -172
  189. package/src/components/composite/ImagePreview/ImagePreviewSource.test.mjs +0 -95
  190. package/src/components/composite/ImagePreview/index.tsx +0 -339
  191. package/src/components/composite/ListRow/ListRow.stories.tsx +0 -257
  192. package/src/components/composite/ListRow/ListRowSource.test.mjs +0 -101
  193. package/src/components/composite/ListRow/index.tsx +0 -309
  194. package/src/components/composite/Markdown/Markdown.stories.tsx +0 -192
  195. package/src/components/composite/Markdown/MarkdownSource.test.mjs +0 -126
  196. package/src/components/composite/Markdown/MarkdownStyleSource.test.mjs +0 -152
  197. package/src/components/composite/Markdown/index.tsx +0 -702
  198. package/src/components/composite/MarkdownPreview/MarkdownPreview.stories.tsx +0 -174
  199. package/src/components/composite/MarkdownPreview/MarkdownPreviewTabsSource.test.mjs +0 -31
  200. package/src/components/composite/MarkdownPreview/MarkdownRenderedStyleSource.test.mjs +0 -84
  201. package/src/components/composite/MarkdownPreview/index.tsx +0 -140
  202. package/src/components/composite/MarkdownPreviewModalView/MarkdownPreviewModalView.stories.tsx +0 -104
  203. package/src/components/composite/MarkdownPreviewModalView/index.tsx +0 -85
  204. package/src/components/composite/MessageFeedbackDialog/MessageFeedbackDialog.stories.tsx +0 -66
  205. package/src/components/composite/MessageFeedbackDialog/index.tsx +0 -115
  206. package/src/components/composite/ModelCatalogErrorState/ModelCatalogErrorState.stories.tsx +0 -101
  207. package/src/components/composite/ModelCatalogErrorState/ModelCatalogRetrySource.test.mjs +0 -86
  208. package/src/components/composite/ModelCatalogErrorState/index.tsx +0 -59
  209. package/src/components/composite/ModelModalityFlow/ModelModalityFlow.stories.tsx +0 -224
  210. package/src/components/composite/ModelModalityFlow/ModelModalityFlowSource.test.mjs +0 -56
  211. package/src/components/composite/ModelModalityFlow/index.tsx +0 -113
  212. package/src/components/composite/ModelPickerList/ModelPickerList.stories.tsx +0 -313
  213. package/src/components/composite/ModelPickerList/index.tsx +0 -142
  214. package/src/components/composite/ModelSelect/ModelSelect.stories.tsx +0 -90
  215. package/src/components/composite/ModelSelect/index.tsx +0 -148
  216. package/src/components/composite/ModelsSettingsSectionView/ModelsSettingsSectionView.stories.tsx +0 -170
  217. package/src/components/composite/ModelsSettingsSectionView/index.tsx +0 -139
  218. package/src/components/composite/NativeControls/NativeControls.stories.tsx +0 -386
  219. package/src/components/composite/NativeControls/NativeControlsStyleSource.test.mjs +0 -63
  220. package/src/components/composite/NativeControls/index.tsx +0 -97
  221. package/src/components/composite/NavMenu/NavMenu.stories.tsx +0 -383
  222. package/src/components/composite/NavMenu/NavMenuSource.test.mjs +0 -56
  223. package/src/components/composite/NavMenu/index.tsx +0 -142
  224. package/src/components/composite/NoPlanPanelView/NoPlanPanelView.stories.tsx +0 -344
  225. package/src/components/composite/NoPlanPanelView/NoPlanPanelViewSource.test.mjs +0 -34
  226. package/src/components/composite/NoPlanPanelView/index.tsx +0 -97
  227. package/src/components/composite/OpenWithButton/OpenWithButton.stories.tsx +0 -78
  228. package/src/components/composite/OpenWithButton/index.tsx +0 -46
  229. package/src/components/composite/OrbitworkLogo/OrbitworkLogo.stories.tsx +0 -192
  230. package/src/components/composite/OrbitworkLogo/index.tsx +0 -207
  231. package/src/components/composite/OrbitworkModal/OrbitworkModal.stories.tsx +0 -58
  232. package/src/components/composite/OrbitworkModal/index.tsx +0 -31
  233. package/src/components/composite/PageHead/PageHead.stories.tsx +0 -235
  234. package/src/components/composite/PageHead/PageHeadSource.test.mjs +0 -76
  235. package/src/components/composite/PageHead/index.tsx +0 -128
  236. package/src/components/composite/PlanFeatureIcon/PlanFeatureIcon.stories.tsx +0 -205
  237. package/src/components/composite/PlanFeatureIcon/PlanFeatureIconSource.test.mjs +0 -38
  238. package/src/components/composite/PlanFeatureIcon/index.tsx +0 -48
  239. package/src/components/composite/PlanSettingsSectionView/PlanSettingsSectionView.stories.tsx +0 -231
  240. package/src/components/composite/PlanSettingsSectionView/PlanSettingsSectionViewSource.test.mjs +0 -85
  241. package/src/components/composite/PlanSettingsSectionView/index.tsx +0 -264
  242. package/src/components/composite/Popover/Popover.stories.tsx +0 -175
  243. package/src/components/composite/Popover/PopoverSource.test.mjs +0 -59
  244. package/src/components/composite/Popover/index.tsx +0 -176
  245. package/src/components/composite/PptxRenderer/ElementDispatcher/index.tsx +0 -70
  246. package/src/components/composite/PptxRenderer/PptxChromeStyleSource.test.mjs +0 -36
  247. package/src/components/composite/PptxRenderer/PptxRenderer.stories.tsx +0 -128
  248. package/src/components/composite/PptxRenderer/PptxSlide/index.tsx +0 -48
  249. package/src/components/composite/PptxRenderer/constants.ts +0 -2
  250. package/src/components/composite/PptxRenderer/elements/AudioElement/index.tsx +0 -48
  251. package/src/components/composite/PptxRenderer/elements/ChartElement/index.tsx +0 -172
  252. package/src/components/composite/PptxRenderer/elements/DiagramElement/index.tsx +0 -46
  253. package/src/components/composite/PptxRenderer/elements/GroupElement/index.tsx +0 -28
  254. package/src/components/composite/PptxRenderer/elements/ImageElement/index.tsx +0 -61
  255. package/src/components/composite/PptxRenderer/elements/MathElement/index.tsx +0 -57
  256. package/src/components/composite/PptxRenderer/elements/ShapeElement/index.tsx +0 -327
  257. package/src/components/composite/PptxRenderer/elements/TableElement/index.tsx +0 -90
  258. package/src/components/composite/PptxRenderer/elements/TextElement/index.tsx +0 -57
  259. package/src/components/composite/PptxRenderer/elements/VideoElement/index.tsx +0 -43
  260. package/src/components/composite/PptxRenderer/index.ts +0 -24
  261. package/src/components/composite/PptxRenderer/types.ts +0 -326
  262. package/src/components/composite/PptxRenderer/utils.ts +0 -129
  263. package/src/components/composite/ProjectSelect/ProjectSelect.stories.tsx +0 -112
  264. package/src/components/composite/ProjectSelect/ProjectSelectSource.test.mjs +0 -34
  265. package/src/components/composite/ProjectSelect/index.tsx +0 -155
  266. package/src/components/composite/RadioCard/RadioCard.stories.tsx +0 -130
  267. package/src/components/composite/RadioCard/RadioCardSource.test.mjs +0 -42
  268. package/src/components/composite/RadioCard/index.tsx +0 -171
  269. package/src/components/composite/RowOverflowMenu/RowOverflowMenu.stories.tsx +0 -113
  270. package/src/components/composite/RowOverflowMenu/RowOverflowMenuSource.test.mjs +0 -59
  271. package/src/components/composite/RowOverflowMenu/index.tsx +0 -101
  272. package/src/components/composite/SandboxPermissionPrompt/SandboxPermissionPrompt.stories.tsx +0 -159
  273. package/src/components/composite/SandboxPermissionPrompt/SandboxPermissionPromptSource.test.mjs +0 -71
  274. package/src/components/composite/SandboxPermissionPrompt/index.tsx +0 -157
  275. package/src/components/composite/SearchInput/SearchInput.stories.tsx +0 -127
  276. package/src/components/composite/SearchInput/index.tsx +0 -91
  277. package/src/components/composite/SearchResult/SearchResult.stories.tsx +0 -305
  278. package/src/components/composite/SearchResult/SearchResultSource.test.mjs +0 -45
  279. package/src/components/composite/SearchResult/index.tsx +0 -148
  280. package/src/components/composite/Section/Section.stories.tsx +0 -148
  281. package/src/components/composite/Section/SectionSource.test.mjs +0 -59
  282. package/src/components/composite/Section/index.tsx +0 -105
  283. package/src/components/composite/SelectionBulkBar/SelectionBulkBar.stories.tsx +0 -111
  284. package/src/components/composite/SelectionBulkBar/SelectionBulkBarSource.test.mjs +0 -44
  285. package/src/components/composite/SelectionBulkBar/index.tsx +0 -99
  286. package/src/components/composite/ShareStrip/ShareStrip.stories.tsx +0 -123
  287. package/src/components/composite/ShareStrip/index.tsx +0 -83
  288. package/src/components/composite/ShortcutSheet/ShortcutSheet.stories.tsx +0 -90
  289. package/src/components/composite/ShortcutSheet/ShortcutSheetSource.test.mjs +0 -49
  290. package/src/components/composite/ShortcutSheet/index.tsx +0 -163
  291. package/src/components/composite/SitesArtifactCardView/SitesArtifactCardView.stories.tsx +0 -328
  292. package/src/components/composite/SitesArtifactCardView/SitesArtifactCardViewSource.test.mjs +0 -45
  293. package/src/components/composite/SitesArtifactCardView/index.tsx +0 -100
  294. package/src/components/composite/Skeleton/Skeleton.stories.tsx +0 -188
  295. package/src/components/composite/Skeleton/SkeletonSource.test.mjs +0 -25
  296. package/src/components/composite/Skeleton/index.tsx +0 -152
  297. package/src/components/composite/Splash/Splash.stories.tsx +0 -150
  298. package/src/components/composite/Splash/index.tsx +0 -229
  299. package/src/components/composite/StatusTag/StatusTag.stories.tsx +0 -66
  300. package/src/components/composite/StatusTag/StatusTagSource.test.mjs +0 -64
  301. package/src/components/composite/StatusTag/index.tsx +0 -78
  302. package/src/components/composite/StepList/StepList.stories.tsx +0 -352
  303. package/src/components/composite/StepList/index.tsx +0 -23
  304. package/src/components/composite/Tag/Tag.stories.tsx +0 -279
  305. package/src/components/composite/Tag/TagSource.test.mjs +0 -67
  306. package/src/components/composite/Tag/index.tsx +0 -229
  307. package/src/components/composite/TimePicker/TimePicker.stories.tsx +0 -91
  308. package/src/components/composite/TimePicker/TimePickerSource.test.mjs +0 -98
  309. package/src/components/composite/TimePicker/index.tsx +0 -208
  310. package/src/components/composite/TitleBar/TitleBar.stories.tsx +0 -329
  311. package/src/components/composite/TitleBar/TitleBarSource.test.mjs +0 -140
  312. package/src/components/composite/TitleBar/index.tsx +0 -350
  313. package/src/components/composite/Toast/Toast.stories.tsx +0 -304
  314. package/src/components/composite/Toast/ToastSource.test.mjs +0 -63
  315. package/src/components/composite/Toast/index.tsx +0 -135
  316. package/src/components/composite/Tooltip/Tooltip.stories.tsx +0 -304
  317. package/src/components/composite/Tooltip/TooltipSource.test.mjs +0 -34
  318. package/src/components/composite/Tooltip/index.tsx +0 -204
  319. package/src/components/composite/TranscriptDividers/TranscriptDividers.stories.tsx +0 -160
  320. package/src/components/composite/TranscriptDividers/TranscriptDividersSource.test.mjs +0 -90
  321. package/src/components/composite/TranscriptDividers/index.tsx +0 -352
  322. package/src/components/composite/WCardShell/WCardShell.stories.tsx +0 -228
  323. package/src/components/composite/WCardShell/index.tsx +0 -101
  324. package/src/components/composite/index.ts +0 -81
  325. package/src/components/domain/artifacts/ArtifactPreviewSidebarView/ArtifactPreviewSidebarView.stories.tsx +0 -128
  326. package/src/components/domain/artifacts/ArtifactPreviewSidebarView/ArtifactPreviewSidebarViewSource.test.mjs +0 -69
  327. package/src/components/domain/artifacts/ArtifactPreviewSidebarView/index.tsx +0 -212
  328. package/src/components/domain/artifacts/index.ts +0 -1
  329. package/src/components/domain/browser/BrowserAnnotationPopupView/BrowserAnnotationPopupView.stories.tsx +0 -211
  330. package/src/components/domain/browser/BrowserAnnotationPopupView/BrowserAnnotationPopupViewSource.test.mjs +0 -82
  331. package/src/components/domain/browser/BrowserAnnotationPopupView/index.tsx +0 -235
  332. package/src/components/domain/browser/BrowserDeviceToolbarView/BrowserDeviceToolbarView.stories.tsx +0 -260
  333. package/src/components/domain/browser/BrowserDeviceToolbarView/BrowserDeviceToolbarViewSource.test.mjs +0 -12
  334. package/src/components/domain/browser/BrowserDeviceToolbarView/index.tsx +0 -154
  335. package/src/components/domain/browser/BrowserFindBarView/BrowserFindBarView.stories.tsx +0 -52
  336. package/src/components/domain/browser/BrowserFindBarView/index.tsx +0 -111
  337. package/src/components/domain/browser/BrowserImportDialogView/BrowserImportDialogView.stories.tsx +0 -89
  338. package/src/components/domain/browser/BrowserImportDialogView/index.tsx +0 -155
  339. package/src/components/domain/browser/BrowserLoadErrorView/BrowserLoadErrorView.stories.tsx +0 -197
  340. package/src/components/domain/browser/BrowserLoadErrorView/BrowserLoadErrorViewSource.test.mjs +0 -29
  341. package/src/components/domain/browser/BrowserLoadErrorView/index.tsx +0 -45
  342. package/src/components/domain/browser/BrowserMoreMenuView/BrowserMoreMenuView.stories.tsx +0 -66
  343. package/src/components/domain/browser/BrowserMoreMenuView/index.tsx +0 -268
  344. package/src/components/domain/browser/BrowserNavBarView/BrowserNavBarView.stories.tsx +0 -149
  345. package/src/components/domain/browser/BrowserNavBarView/index.tsx +0 -156
  346. package/src/components/domain/browser/BrowserTabBarView/index.tsx +0 -18
  347. package/src/components/domain/browser/SubAgentPane/SubAgentPane.stories.tsx +0 -96
  348. package/src/components/domain/browser/SubAgentPane/SubAgentPaneSource.test.mjs +0 -48
  349. package/src/components/domain/browser/SubAgentPane/index.tsx +0 -121
  350. package/src/components/domain/browser/TerminalPane/TerminalPane.stories.tsx +0 -95
  351. package/src/components/domain/browser/TerminalPane/TerminalPaneSource.test.mjs +0 -52
  352. package/src/components/domain/browser/TerminalPane/index.tsx +0 -75
  353. package/src/components/domain/browser/WebPreview/WebPreview.stories.tsx +0 -71
  354. package/src/components/domain/browser/WebPreview/index.tsx +0 -141
  355. package/src/components/domain/browser/WebPreviewConsole/WebPreviewConsole.stories.tsx +0 -61
  356. package/src/components/domain/browser/WebPreviewConsole/WebPreviewConsoleSource.test.mjs +0 -66
  357. package/src/components/domain/browser/WebPreviewConsole/index.tsx +0 -239
  358. package/src/components/domain/browser/WebPreviewDialog/WebPreviewDialog.stories.tsx +0 -288
  359. package/src/components/domain/browser/WebPreviewDialog/WebPreviewDialogSource.test.mjs +0 -62
  360. package/src/components/domain/browser/WebPreviewDialog/index.tsx +0 -82
  361. package/src/components/domain/browser/WebPreviewNav/WebPreviewNav.stories.tsx +0 -462
  362. package/src/components/domain/browser/WebPreviewNav/WebPreviewNavSource.test.mjs +0 -353
  363. package/src/components/domain/browser/WebPreviewNav/index.tsx +0 -351
  364. package/src/components/domain/browser/WebPreviewShell/WebPreviewShell.stories.tsx +0 -226
  365. package/src/components/domain/browser/WebPreviewShell/WebPreviewShellSource.test.mjs +0 -172
  366. package/src/components/domain/browser/WebPreviewShell/index.tsx +0 -324
  367. package/src/components/domain/browser/index.ts +0 -45
  368. package/src/components/domain/chat/AgentLoopSegment/AgentLoopSegment.stories.tsx +0 -107
  369. package/src/components/domain/chat/AgentLoopSegment/AgentLoopSegmentSource.test.mjs +0 -45
  370. package/src/components/domain/chat/AgentLoopSegment/index.tsx +0 -29
  371. package/src/components/domain/chat/AgentTurn/AgentTurn.stories.tsx +0 -162
  372. package/src/components/domain/chat/AgentTurn/AgentTurnSource.test.mjs +0 -98
  373. package/src/components/domain/chat/AgentTurn/beaconContext.ts +0 -37
  374. package/src/components/domain/chat/AgentTurn/index.tsx +0 -226
  375. package/src/components/domain/chat/ArtifactCard/ArtifactCard.stories.tsx +0 -127
  376. package/src/components/domain/chat/ArtifactCard/index.tsx +0 -249
  377. package/src/components/domain/chat/Attachment/Attachment.stories.tsx +0 -235
  378. package/src/components/domain/chat/Attachment/AttachmentSource.test.mjs +0 -160
  379. package/src/components/domain/chat/Attachment/index.tsx +0 -857
  380. package/src/components/domain/chat/AuthorizationCard/AuthorizationCard.stories.tsx +0 -53
  381. package/src/components/domain/chat/AuthorizationCard/AuthorizationCardSource.test.mjs +0 -80
  382. package/src/components/domain/chat/AuthorizationCard/index.tsx +0 -89
  383. package/src/components/domain/chat/ChatBubble/ChatBubble.stories.tsx +0 -32
  384. package/src/components/domain/chat/ChatBubble/index.tsx +0 -24
  385. package/src/components/domain/chat/ChatMessage/ChatMessage.stories.tsx +0 -31
  386. package/src/components/domain/chat/ChatMessage/index.tsx +0 -23
  387. package/src/components/domain/chat/ChatR2ReviewSource.test.mjs +0 -98
  388. package/src/components/domain/chat/ChatThinking/ChatThinking.stories.tsx +0 -125
  389. package/src/components/domain/chat/ChatThinking/index.tsx +0 -55
  390. package/src/components/domain/chat/Chatbot/Chatbot.stories.tsx +0 -49
  391. package/src/components/domain/chat/Chatbot/index.tsx +0 -37
  392. package/src/components/domain/chat/Composer/Composer.stories.tsx +0 -227
  393. package/src/components/domain/chat/Composer/ComposerSource.test.mjs +0 -175
  394. package/src/components/domain/chat/Composer/index.tsx +0 -450
  395. package/src/components/domain/chat/Composer/parts/ComposerAudioSpectrum.stories.tsx +0 -203
  396. package/src/components/domain/chat/Composer/parts/ComposerAudioSpectrum.tsx +0 -110
  397. package/src/components/domain/chat/Composer/parts/ComposerAudioSpectrumSource.test.mjs +0 -54
  398. package/src/components/domain/chat/Composer/parts/ComposerAuthorization.stories.tsx +0 -155
  399. package/src/components/domain/chat/Composer/parts/ComposerAuthorization.tsx +0 -108
  400. package/src/components/domain/chat/Composer/parts/ComposerMentions.stories.tsx +0 -76
  401. package/src/components/domain/chat/Composer/parts/ComposerMentions.tsx +0 -83
  402. package/src/components/domain/chat/Composer/parts/ComposerMentionsSource.test.mjs +0 -85
  403. package/src/components/domain/chat/Composer/parts/ComposerMenu.stories.tsx +0 -266
  404. package/src/components/domain/chat/Composer/parts/ComposerMenu.tsx +0 -232
  405. package/src/components/domain/chat/Composer/parts/ComposerMenuPopover.stories.tsx +0 -166
  406. package/src/components/domain/chat/Composer/parts/ComposerMenuPopover.tsx +0 -87
  407. package/src/components/domain/chat/Composer/parts/ComposerMenuPopoverSource.test.mjs +0 -56
  408. package/src/components/domain/chat/Composer/parts/ComposerPopover.stories.tsx +0 -257
  409. package/src/components/domain/chat/Composer/parts/ComposerPopover.tsx +0 -221
  410. package/src/components/domain/chat/Composer/parts/ComposerPopoverSource.test.mjs +0 -71
  411. package/src/components/domain/chat/Composer/parts/ComposerProjectPicker.stories.tsx +0 -260
  412. package/src/components/domain/chat/Composer/parts/ComposerProjectPicker.tsx +0 -246
  413. package/src/components/domain/chat/Composer/parts/ComposerProjectPickerSource.test.mjs +0 -46
  414. package/src/components/domain/chat/Composer/parts/ComposerQueue.stories.tsx +0 -275
  415. package/src/components/domain/chat/Composer/parts/ComposerQueue.tsx +0 -155
  416. package/src/components/domain/chat/Composer/parts/ComposerQueueSource.test.mjs +0 -95
  417. package/src/components/domain/chat/Composer/parts/ComposerVoiceInput.stories.tsx +0 -77
  418. package/src/components/domain/chat/Composer/parts/ComposerVoiceInput.tsx +0 -70
  419. package/src/components/domain/chat/Composer/parts/mountChip.ts +0 -21
  420. package/src/components/domain/chat/ContextUsage/ContextUsage.stories.tsx +0 -62
  421. package/src/components/domain/chat/ContextUsage/index.tsx +0 -69
  422. package/src/components/domain/chat/ExecutionSummary/ExecutionSummary.stories.tsx +0 -238
  423. package/src/components/domain/chat/ExecutionSummary/ExecutionSummarySource.test.mjs +0 -210
  424. package/src/components/domain/chat/ExecutionSummary/index.tsx +0 -487
  425. package/src/components/domain/chat/Message/Message.stories.tsx +0 -264
  426. package/src/components/domain/chat/Message/index.tsx +0 -44
  427. package/src/components/domain/chat/MessageActions/MessageActions.stories.tsx +0 -132
  428. package/src/components/domain/chat/MessageActions/MessageActionsSource.test.mjs +0 -79
  429. package/src/components/domain/chat/MessageActions/index.tsx +0 -186
  430. package/src/components/domain/chat/PlanCard/PlanCard.stories.tsx +0 -87
  431. package/src/components/domain/chat/PlanCard/index.tsx +0 -170
  432. package/src/components/domain/chat/RichContent/RichContent.stories.tsx +0 -102
  433. package/src/components/domain/chat/RichContent/RichContentSource.test.mjs +0 -82
  434. package/src/components/domain/chat/RichContent/index.tsx +0 -465
  435. package/src/components/domain/chat/SubAgentThread/SubAgentThread.stories.tsx +0 -119
  436. package/src/components/domain/chat/SubAgentThread/index.tsx +0 -104
  437. package/src/components/domain/chat/Thinking/Thinking.stories.tsx +0 -196
  438. package/src/components/domain/chat/Thinking/ThinkingInlineSource.test.mjs +0 -154
  439. package/src/components/domain/chat/Thinking/index.tsx +0 -237
  440. package/src/components/domain/chat/ToolCallRow/ToolCallRow.stories.tsx +0 -105
  441. package/src/components/domain/chat/ToolCallRow/ToolCallRowSource.test.mjs +0 -83
  442. package/src/components/domain/chat/ToolCallRow/index.tsx +0 -113
  443. package/src/components/domain/chat/Transcript/Transcript.stories.tsx +0 -296
  444. package/src/components/domain/chat/Transcript/TranscriptSource.test.mjs +0 -189
  445. package/src/components/domain/chat/Transcript/index.tsx +0 -187
  446. package/src/components/domain/chat/TranscriptSpine/TranscriptSpine.stories.tsx +0 -124
  447. package/src/components/domain/chat/TranscriptSpine/index.tsx +0 -245
  448. package/src/components/domain/chat/UserTurn/UserTurn.stories.tsx +0 -176
  449. package/src/components/domain/chat/UserTurn/UserTurnSource.test.mjs +0 -150
  450. package/src/components/domain/chat/UserTurn/index.tsx +0 -194
  451. package/src/components/domain/chat/index.ts +0 -22
  452. package/src/components/domain/desktop/DesktopAccountMenuView/DesktopAccountMenuView.stories.tsx +0 -116
  453. package/src/components/domain/desktop/DesktopAccountMenuView/DesktopAccountMenuViewSource.test.mjs +0 -80
  454. package/src/components/domain/desktop/DesktopAccountMenuView/index.tsx +0 -355
  455. package/src/components/domain/desktop/DesktopAppearanceSettings/DesktopAppearanceSettings.stories.tsx +0 -96
  456. package/src/components/domain/desktop/DesktopAppearanceSettings/DesktopAppearanceSettingsSource.test.mjs +0 -89
  457. package/src/components/domain/desktop/DesktopAppearanceSettings/index.tsx +0 -155
  458. package/src/components/domain/desktop/DesktopAssistantConfigView/DesktopAssistantConfigView.stories.tsx +0 -275
  459. package/src/components/domain/desktop/DesktopAssistantConfigView/DesktopAssistantConfigViewSource.test.mjs +0 -37
  460. package/src/components/domain/desktop/DesktopAssistantConfigView/index.tsx +0 -221
  461. package/src/components/domain/desktop/DesktopCatalogView/DesktopCatalogView.stories.tsx +0 -537
  462. package/src/components/domain/desktop/DesktopCatalogView/DesktopCatalogViewSource.test.mjs +0 -339
  463. package/src/components/domain/desktop/DesktopCatalogView/index.tsx +0 -1074
  464. package/src/components/domain/desktop/DesktopChatBranchDivider/DesktopChatBranchDivider.stories.tsx +0 -58
  465. package/src/components/domain/desktop/DesktopChatBranchDivider/index.tsx +0 -33
  466. package/src/components/domain/desktop/DesktopChatEmptyStateView/DesktopChatEmptyStateView.stories.tsx +0 -75
  467. package/src/components/domain/desktop/DesktopChatEmptyStateView/DesktopChatEmptyStateViewSource.test.mjs +0 -54
  468. package/src/components/domain/desktop/DesktopChatEmptyStateView/index.tsx +0 -64
  469. package/src/components/domain/desktop/DesktopChatHeaderView/DesktopChatHeaderView.stories.tsx +0 -83
  470. package/src/components/domain/desktop/DesktopChatHeaderView/DesktopChatHeaderViewSource.test.mjs +0 -126
  471. package/src/components/domain/desktop/DesktopChatHeaderView/index.tsx +0 -169
  472. package/src/components/domain/desktop/DesktopChatMessageView/DesktopChatMessageView.stories.tsx +0 -170
  473. package/src/components/domain/desktop/DesktopChatMessageView/DesktopChatMessageViewSource.test.mjs +0 -47
  474. package/src/components/domain/desktop/DesktopChatMessageView/index.tsx +0 -213
  475. package/src/components/domain/desktop/DesktopChatTurnView/DesktopChatTurnView.stories.tsx +0 -498
  476. package/src/components/domain/desktop/DesktopChatTurnView/DesktopChatTurnViewSource.test.mjs +0 -187
  477. package/src/components/domain/desktop/DesktopChatTurnView/index.tsx +0 -490
  478. package/src/components/domain/desktop/DesktopComposer/DesktopComposer.stories.tsx +0 -195
  479. package/src/components/domain/desktop/DesktopComposer/DesktopComposerModelPickerSource.test.mjs +0 -132
  480. package/src/components/domain/desktop/DesktopComposer/DesktopComposerMountChipSource.test.mjs +0 -43
  481. package/src/components/domain/desktop/DesktopComposer/DesktopComposerResponsiveSource.test.mjs +0 -44
  482. package/src/components/domain/desktop/DesktopComposer/DesktopMcpFormThemeSource.test.mjs +0 -30
  483. package/src/components/domain/desktop/DesktopComposer/index.tsx +0 -206
  484. package/src/components/domain/desktop/DesktopConnectorDetailView/DesktopConnectorDetailView.stories.tsx +0 -72
  485. package/src/components/domain/desktop/DesktopConnectorDetailView/DesktopConnectorDetailViewSource.test.mjs +0 -81
  486. package/src/components/domain/desktop/DesktopConnectorDetailView/index.tsx +0 -301
  487. package/src/components/domain/desktop/DesktopHomeView/DesktopHomeView.stories.tsx +0 -103
  488. package/src/components/domain/desktop/DesktopHomeView/DesktopHomeViewSource.test.mjs +0 -51
  489. package/src/components/domain/desktop/DesktopHomeView/index.tsx +0 -122
  490. package/src/components/domain/desktop/DesktopLibraryAuthorizationDialog/DesktopLibraryAuthorizationDialog.stories.tsx +0 -55
  491. package/src/components/domain/desktop/DesktopLibraryAuthorizationDialog/index.tsx +0 -156
  492. package/src/components/domain/desktop/DesktopLibraryPageView/DesktopLibraryPageView.stories.tsx +0 -42
  493. package/src/components/domain/desktop/DesktopLibraryPageView/index.tsx +0 -35
  494. package/src/components/domain/desktop/DesktopLoginView/DesktopLoginView.css +0 -75
  495. package/src/components/domain/desktop/DesktopLoginView/DesktopLoginView.stories.tsx +0 -230
  496. package/src/components/domain/desktop/DesktopLoginView/DesktopLoginViewSource.test.mjs +0 -149
  497. package/src/components/domain/desktop/DesktopLoginView/index.tsx +0 -418
  498. package/src/components/domain/desktop/DesktopOnboardingTourView/DesktopOnboardingTourView.stories.tsx +0 -103
  499. package/src/components/domain/desktop/DesktopOnboardingTourView/DesktopOnboardingTourViewSource.test.mjs +0 -57
  500. package/src/components/domain/desktop/DesktopOnboardingTourView/index.tsx +0 -189
  501. package/src/components/domain/desktop/DesktopPet/DesktopPet.fixture.ts +0 -243
  502. package/src/components/domain/desktop/DesktopPet/DesktopPet.stories.tsx +0 -337
  503. package/src/components/domain/desktop/DesktopPet/DesktopPetSource.test.mjs +0 -191
  504. package/src/components/domain/desktop/DesktopPet/index.tsx +0 -591
  505. package/src/components/domain/desktop/DesktopPetSettings/DesktopPetSettings.stories.tsx +0 -159
  506. package/src/components/domain/desktop/DesktopPetSettings/DesktopPetSettingsSource.test.mjs +0 -76
  507. package/src/components/domain/desktop/DesktopPetSettings/index.tsx +0 -140
  508. package/src/components/domain/desktop/DesktopRunStatusView/DesktopRunStatusView.stories.tsx +0 -166
  509. package/src/components/domain/desktop/DesktopRunStatusView/DesktopRunStatusViewSource.test.mjs +0 -51
  510. package/src/components/domain/desktop/DesktopRunStatusView/index.tsx +0 -34
  511. package/src/components/domain/desktop/DesktopSelectionCard/DesktopSelectionCard.stories.tsx +0 -122
  512. package/src/components/domain/desktop/DesktopSelectionCard/DesktopSelectionCardSource.test.mjs +0 -42
  513. package/src/components/domain/desktop/DesktopSelectionCard/index.tsx +0 -75
  514. package/src/components/domain/desktop/DesktopSettingsMemorySection/DesktopSettingsMemorySection.stories.tsx +0 -225
  515. package/src/components/domain/desktop/DesktopSettingsMemorySection/DesktopSettingsMemorySectionSource.test.mjs +0 -105
  516. package/src/components/domain/desktop/DesktopSettingsMemorySection/index.tsx +0 -340
  517. package/src/components/domain/desktop/DesktopSettingsView/DesktopSettingsView.stories.tsx +0 -177
  518. package/src/components/domain/desktop/DesktopSettingsView/DesktopSettingsViewSource.test.mjs +0 -195
  519. package/src/components/domain/desktop/DesktopSettingsView/index.tsx +0 -176
  520. package/src/components/domain/desktop/DesktopShareSelectionBarView/DesktopShareSelectionBarView.stories.tsx +0 -77
  521. package/src/components/domain/desktop/DesktopShareSelectionBarView/DesktopShareSelectionBarViewSource.test.mjs +0 -76
  522. package/src/components/domain/desktop/DesktopShareSelectionBarView/index.tsx +0 -55
  523. package/src/components/domain/desktop/DesktopSidebarView/DesktopSidebarView.stories.tsx +0 -454
  524. package/src/components/domain/desktop/DesktopSidebarView/DesktopSidebarViewSource.test.mjs +0 -386
  525. package/src/components/domain/desktop/DesktopSidebarView/index.tsx +0 -1075
  526. package/src/components/domain/desktop/DesktopSiteReleasesView/DesktopSiteReleasesView.stories.tsx +0 -369
  527. package/src/components/domain/desktop/DesktopSiteReleasesView/DesktopSiteReleasesViewSource.test.mjs +0 -123
  528. package/src/components/domain/desktop/DesktopSiteReleasesView/index.tsx +0 -392
  529. package/src/components/domain/desktop/DesktopSitesListView/DesktopSitesListView.stories.tsx +0 -244
  530. package/src/components/domain/desktop/DesktopSitesListView/DesktopSitesListViewSource.test.mjs +0 -198
  531. package/src/components/domain/desktop/DesktopSitesListView/index.tsx +0 -417
  532. package/src/components/domain/desktop/DesktopSkillsPageView/DesktopSkillsPageView.stories.tsx +0 -230
  533. package/src/components/domain/desktop/DesktopSkillsPageView/DesktopSkillsPageViewSource.test.mjs +0 -149
  534. package/src/components/domain/desktop/DesktopSkillsPageView/index.tsx +0 -235
  535. package/src/components/domain/desktop/DesktopTaskDetailView/index.tsx +0 -111
  536. package/src/components/domain/desktop/DesktopToolCallView/DesktopToolCallListViewSource.test.mjs +0 -302
  537. package/src/components/domain/desktop/DesktopToolCallView/DesktopToolCallView.stories.tsx +0 -409
  538. package/src/components/domain/desktop/DesktopToolCallView/index.tsx +0 -388
  539. package/src/components/domain/desktop/DesktopWorkbenchShell/DesktopWorkbenchShell.stories.tsx +0 -418
  540. package/src/components/domain/desktop/DesktopWorkbenchShell/DesktopWorkbenchShellSource.test.mjs +0 -151
  541. package/src/components/domain/desktop/DesktopWorkbenchShell/index.tsx +0 -167
  542. package/src/components/domain/desktop/DesktopWorkspacePageView/DesktopWorkspacePageView.stories.tsx +0 -135
  543. package/src/components/domain/desktop/DesktopWorkspacePageView/DesktopWorkspacePageViewSource.test.mjs +0 -57
  544. package/src/components/domain/desktop/DesktopWorkspacePageView/index.tsx +0 -114
  545. package/src/components/domain/desktop/DesktopWorkspaceView/DesktopWorkspaceView.stories.tsx +0 -227
  546. package/src/components/domain/desktop/DesktopWorkspaceView/DesktopWorkspaceViewSource.test.mjs +0 -175
  547. package/src/components/domain/desktop/DesktopWorkspaceView/index.tsx +0 -580
  548. package/src/components/domain/desktop/ResourceManagement/ResourceManagement.stories.tsx +0 -19
  549. package/src/components/domain/desktop/ResourceManagement/ResourceManagementSource.test.mjs +0 -54
  550. package/src/components/domain/desktop/ResourceManagement/SharesList.tsx +0 -323
  551. package/src/components/domain/desktop/ResourceManagement/SnapshotViews.tsx +0 -92
  552. package/src/components/domain/desktop/ResourceManagement/SnapshotViewsSource.test.mjs +0 -15
  553. package/src/components/domain/desktop/ResourceManagement/index.tsx +0 -246
  554. package/src/components/domain/desktop/ShareSettingsDialogView/index.tsx +0 -234
  555. package/src/components/domain/desktop/SidePanelEmpty/SidePanelEmpty.stories.tsx +0 -100
  556. package/src/components/domain/desktop/SidePanelEmpty/SidePanelEmptySource.test.mjs +0 -67
  557. package/src/components/domain/desktop/SidePanelEmpty/index.tsx +0 -113
  558. package/src/components/domain/desktop/StarterCapsules/StarterCapsules.stories.tsx +0 -65
  559. package/src/components/domain/desktop/StarterCapsules/StarterCapsulesSource.test.mjs +0 -43
  560. package/src/components/domain/desktop/StarterCapsules/index.tsx +0 -90
  561. package/src/components/domain/desktop/WorkbenchSidePanel/WorkbenchSidePanel.stories.tsx +0 -59
  562. package/src/components/domain/desktop/WorkbenchSidePanel/WorkbenchSidePanelSource.test.mjs +0 -51
  563. package/src/components/domain/desktop/WorkbenchSidePanel/index.tsx +0 -74
  564. package/src/components/domain/desktop/WorkspaceMigrateConfirm/WorkspaceMigrateConfirm.stories.tsx +0 -79
  565. package/src/components/domain/desktop/WorkspaceMigrateConfirm/WorkspaceMigrateConfirmSource.test.mjs +0 -34
  566. package/src/components/domain/desktop/WorkspaceMigrateConfirm/index.tsx +0 -92
  567. package/src/components/domain/desktop/index.ts +0 -64
  568. package/src/components/domain/files/FileBrowser/FileBrowser.stories.tsx +0 -397
  569. package/src/components/domain/files/FileBrowser/FileBrowserSource.test.mjs +0 -75
  570. package/src/components/domain/files/FileBrowser/index.tsx +0 -221
  571. package/src/components/domain/files/FileIcon/FileIcon.stories.tsx +0 -207
  572. package/src/components/domain/files/FileIcon/FileIconSource.test.mjs +0 -39
  573. package/src/components/domain/files/FileIcon/index.tsx +0 -133
  574. package/src/components/domain/files/FilePreviewContentView/FilePreviewContentView.stories.tsx +0 -242
  575. package/src/components/domain/files/FilePreviewContentView/FilePreviewContentViewSource.test.mjs +0 -44
  576. package/src/components/domain/files/FilePreviewContentView/index.tsx +0 -125
  577. package/src/components/domain/files/FileTree/FileTree.stories.tsx +0 -204
  578. package/src/components/domain/files/FileTree/FileTreeSource.test.mjs +0 -18
  579. package/src/components/domain/files/FileTree/index.tsx +0 -106
  580. package/src/components/domain/files/PreviewDialog/PreviewDialog.stories.tsx +0 -178
  581. package/src/components/domain/files/PreviewDialog/PreviewDialogSource.test.mjs +0 -92
  582. package/src/components/domain/files/PreviewDialog/index.tsx +0 -294
  583. package/src/components/domain/files/index.ts +0 -5
  584. package/src/components/domain/index.ts +0 -8
  585. package/src/components/domain/office/CsvPreview/CsvPreview.stories.tsx +0 -264
  586. package/src/components/domain/office/CsvPreview/CsvPreviewSource.test.mjs +0 -77
  587. package/src/components/domain/office/CsvPreview/index.tsx +0 -224
  588. package/src/components/domain/office/OfficePreview/OfficePreview.stories.tsx +0 -265
  589. package/src/components/domain/office/OfficePreview/OfficePreviewDialog.stories.tsx +0 -71
  590. package/src/components/domain/office/OfficePreview/OfficePreviewDialog.tsx +0 -43
  591. package/src/components/domain/office/OfficePreview/OfficePreviewSource.test.mjs +0 -126
  592. package/src/components/domain/office/OfficePreview/index.tsx +0 -782
  593. package/src/components/domain/office/PdfPreview/PdfPreview.stories.tsx +0 -280
  594. package/src/components/domain/office/PdfPreview/PdfPreviewDialog.stories.tsx +0 -61
  595. package/src/components/domain/office/PdfPreview/PdfPreviewDialog.tsx +0 -61
  596. package/src/components/domain/office/PdfPreview/PdfPreviewSource.test.mjs +0 -70
  597. package/src/components/domain/office/PdfPreview/index.tsx +0 -217
  598. package/src/components/domain/office/index.ts +0 -5
  599. package/src/components/domain/skills/McpServerListView/McpServerListView.stories.tsx +0 -510
  600. package/src/components/domain/skills/McpServerListView/McpServerListViewSource.test.mjs +0 -101
  601. package/src/components/domain/skills/McpServerListView/index.tsx +0 -250
  602. package/src/components/domain/skills/SkillAvatarView/SkillAvatarView.stories.tsx +0 -121
  603. package/src/components/domain/skills/SkillAvatarView/SkillAvatarViewSource.test.mjs +0 -67
  604. package/src/components/domain/skills/SkillAvatarView/index.tsx +0 -112
  605. package/src/components/domain/skills/SkillCardView/SkillCardView.stories.tsx +0 -374
  606. package/src/components/domain/skills/SkillCardView/SkillCardViewSource.test.mjs +0 -35
  607. package/src/components/domain/skills/SkillCardView/index.tsx +0 -88
  608. package/src/components/domain/skills/SkillDetailPanelView/SkillDetailPanelView.stories.tsx +0 -113
  609. package/src/components/domain/skills/SkillDetailPanelView/index.tsx +0 -115
  610. package/src/components/domain/skills/SkillDetailView/SkillDetailView.stories.tsx +0 -274
  611. package/src/components/domain/skills/SkillDetailView/index.tsx +0 -121
  612. package/src/components/domain/skills/SkillImportDialogView/SkillImportDialogView.stories.tsx +0 -128
  613. package/src/components/domain/skills/SkillImportDialogView/SkillImportDialogViewSource.test.mjs +0 -11
  614. package/src/components/domain/skills/SkillImportDialogView/index.tsx +0 -147
  615. package/src/components/domain/skills/ToolDetailModalView/ToolDetailModalView.stories.tsx +0 -160
  616. package/src/components/domain/skills/ToolDetailModalView/ToolDetailModalViewSource.test.mjs +0 -99
  617. package/src/components/domain/skills/ToolDetailModalView/index.tsx +0 -160
  618. package/src/components/domain/skills/index.ts +0 -7
  619. package/src/components/domain/tasks/ScheduledTaskCardView/ScheduledTaskCardView.stories.tsx +0 -120
  620. package/src/components/domain/tasks/ScheduledTaskCardView/ScheduledTaskCardViewSource.test.mjs +0 -40
  621. package/src/components/domain/tasks/ScheduledTaskCardView/index.tsx +0 -135
  622. package/src/components/domain/tasks/ScheduledTaskDeleteDialog/ScheduledTaskDeleteDialog.stories.tsx +0 -56
  623. package/src/components/domain/tasks/ScheduledTaskDeleteDialog/ScheduledTaskDeleteDialogSource.test.mjs +0 -35
  624. package/src/components/domain/tasks/ScheduledTaskDeleteDialog/index.tsx +0 -73
  625. package/src/components/domain/tasks/ScheduledTaskDetailView/ScheduledTaskDetailView.stories.tsx +0 -121
  626. package/src/components/domain/tasks/ScheduledTaskDetailView/ScheduledTaskDetailViewSource.test.mjs +0 -115
  627. package/src/components/domain/tasks/ScheduledTaskDetailView/index.tsx +0 -223
  628. package/src/components/domain/tasks/ScheduledTasksSpaceView/ScheduledTasksSpaceView.stories.tsx +0 -526
  629. package/src/components/domain/tasks/ScheduledTasksSpaceView/ScheduledTasksSpaceViewSource.test.mjs +0 -85
  630. package/src/components/domain/tasks/ScheduledTasksSpaceView/index.tsx +0 -118
  631. package/src/components/domain/tasks/index.ts +0 -4
  632. package/src/components/domain/theme/SkinManager.stories.tsx +0 -43
  633. package/src/components/domain/theme/SkinManagerUI.tsx +0 -382
  634. package/src/components/domain/theme/ThemeDemo.stories.tsx +0 -12
  635. package/src/components/domain/theme/ThemeDemo.tsx +0 -224
  636. package/src/components/index.ts +0 -11
  637. package/src/components/primitives/Avatar/Avatar.stories.tsx +0 -170
  638. package/src/components/primitives/Avatar/AvatarSource.test.mjs +0 -37
  639. package/src/components/primitives/Avatar/index.tsx +0 -180
  640. package/src/components/primitives/BackTop/BackTop.stories.tsx +0 -122
  641. package/src/components/primitives/BackTop/BackTopSource.test.mjs +0 -61
  642. package/src/components/primitives/BackTop/index.tsx +0 -93
  643. package/src/components/primitives/Badge/Badge.stories.tsx +0 -376
  644. package/src/components/primitives/Badge/BadgeSource.test.mjs +0 -27
  645. package/src/components/primitives/Badge/index.tsx +0 -65
  646. package/src/components/primitives/Button/Button.stories.tsx +0 -287
  647. package/src/components/primitives/Button/ButtonSource.test.mjs +0 -84
  648. package/src/components/primitives/Button/index.tsx +0 -216
  649. package/src/components/primitives/Card/Card.stories.tsx +0 -186
  650. package/src/components/primitives/Card/CardSource.test.mjs +0 -73
  651. package/src/components/primitives/Card/index.tsx +0 -137
  652. package/src/components/primitives/Checkbox/Checkbox.stories.tsx +0 -79
  653. package/src/components/primitives/Checkbox/CheckboxSource.test.mjs +0 -43
  654. package/src/components/primitives/Checkbox/index.tsx +0 -87
  655. package/src/components/primitives/Chip/Chip.stories.tsx +0 -149
  656. package/src/components/primitives/Chip/ChipSource.test.mjs +0 -73
  657. package/src/components/primitives/Chip/index.tsx +0 -252
  658. package/src/components/primitives/Divider/Divider.stories.tsx +0 -68
  659. package/src/components/primitives/Divider/DividerSource.test.mjs +0 -26
  660. package/src/components/primitives/Divider/index.tsx +0 -65
  661. package/src/components/primitives/Dropdown/Dropdown.stories.tsx +0 -38
  662. package/src/components/primitives/Dropdown/DropdownSource.test.mjs +0 -23
  663. package/src/components/primitives/Dropdown/index.tsx +0 -29
  664. package/src/components/primitives/EmptyState/EmptyState.stories.tsx +0 -159
  665. package/src/components/primitives/EmptyState/EmptyStateSource.test.mjs +0 -169
  666. package/src/components/primitives/EmptyState/index.tsx +0 -185
  667. package/src/components/primitives/ErrorCard/ErrorCard.stories.tsx +0 -50
  668. package/src/components/primitives/ErrorCard/index.tsx +0 -78
  669. package/src/components/primitives/Field/Field.stories.tsx +0 -208
  670. package/src/components/primitives/Field/FieldSource.test.mjs +0 -70
  671. package/src/components/primitives/Field/index.tsx +0 -297
  672. package/src/components/primitives/InlineMessage/InlineMessage.stories.tsx +0 -137
  673. package/src/components/primitives/InlineMessage/InlineMessageSource.test.mjs +0 -50
  674. package/src/components/primitives/InlineMessage/index.tsx +0 -141
  675. package/src/components/primitives/Input/Input.stories.tsx +0 -30
  676. package/src/components/primitives/Input/index.tsx +0 -12
  677. package/src/components/primitives/Keycap/Keycap.stories.tsx +0 -93
  678. package/src/components/primitives/Keycap/KeycapSource.test.mjs +0 -30
  679. package/src/components/primitives/Keycap/index.tsx +0 -67
  680. package/src/components/primitives/Menu/Menu.stories.tsx +0 -416
  681. package/src/components/primitives/Menu/MenuEmptySource.test.mjs +0 -23
  682. package/src/components/primitives/Menu/MenuSource.test.mjs +0 -207
  683. package/src/components/primitives/Menu/index.tsx +0 -922
  684. package/src/components/primitives/Pagination/Pagination.stories.tsx +0 -77
  685. package/src/components/primitives/Pagination/PaginationSource.test.mjs +0 -24
  686. package/src/components/primitives/Pagination/index.tsx +0 -85
  687. package/src/components/primitives/Pagination/pagination.ts +0 -25
  688. package/src/components/primitives/Pagination/paginationModel.test.mjs +0 -18
  689. package/src/components/primitives/ProgressBar/ProgressBar.stories.tsx +0 -103
  690. package/src/components/primitives/ProgressBar/ProgressBarSource.test.mjs +0 -44
  691. package/src/components/primitives/ProgressBar/index.tsx +0 -68
  692. package/src/components/primitives/Radio/Radio.stories.tsx +0 -84
  693. package/src/components/primitives/Radio/RadioSource.test.mjs +0 -38
  694. package/src/components/primitives/Radio/index.tsx +0 -161
  695. package/src/components/primitives/SegmentedControl/SegmentedControl.stories.tsx +0 -110
  696. package/src/components/primitives/SegmentedControl/SegmentedControlSource.test.mjs +0 -75
  697. package/src/components/primitives/SegmentedControl/index.tsx +0 -188
  698. package/src/components/primitives/Select/Select.stories.tsx +0 -158
  699. package/src/components/primitives/Select/SelectSource.test.mjs +0 -94
  700. package/src/components/primitives/Select/index.tsx +0 -364
  701. package/src/components/primitives/Spinner/index.tsx +0 -58
  702. package/src/components/primitives/Switch/Switch.stories.tsx +0 -64
  703. package/src/components/primitives/Switch/SwitchSource.test.mjs +0 -38
  704. package/src/components/primitives/Switch/index.tsx +0 -84
  705. package/src/components/primitives/Tabs/Tabs.stories.tsx +0 -230
  706. package/src/components/primitives/Tabs/TabsSource.test.mjs +0 -91
  707. package/src/components/primitives/Tabs/index.tsx +0 -183
  708. package/src/components/primitives/index.ts +0 -24
  709. package/src/examples/ResourceManagementExample.tsx +0 -119
  710. package/src/examples/SiteWorkbenchExample.tsx +0 -96
  711. package/src/hooks/index.ts +0 -7
  712. package/src/hooks/useClickOutside.ts +0 -20
  713. package/src/hooks/useDragReorder.ts +0 -29
  714. package/src/hooks/useImeAwareEnter.ts +0 -59
  715. package/src/hooks/useImeAwareEnterSource.test.mjs +0 -65
  716. package/src/hooks/useKeyboard.ts +0 -16
  717. package/src/hooks/usePopover.ts +0 -67
  718. package/src/hooks/useSelectedOptionLocator.ts +0 -33
  719. package/src/hooks/useSidebarResize.ts +0 -107
  720. package/src/hooks/useTenantTheme.ts +0 -53
  721. package/src/hooks/useUnifiedTheme.ts +0 -85
  722. package/src/index.ts +0 -6
  723. package/src/lib/InjectedStyleTokenMirrorSource.test.mjs +0 -67
  724. package/src/lib/about-window.test.mjs +0 -46
  725. package/src/lib/about-window.ts +0 -218
  726. package/src/lib/appearance.test.mjs +0 -283
  727. package/src/lib/appearance.ts +0 -46
  728. package/src/lib/browser-annotation-popup.ts +0 -151
  729. package/src/lib/focusTrap.ts +0 -51
  730. package/src/lib/index.ts +0 -5
  731. package/src/lib/shortcut.test.mjs +0 -100
  732. package/src/lib/shortcut.ts +0 -97
  733. package/src/lib/twMergeOw.ts +0 -18
  734. package/src/lib/utils.ts +0 -6
  735. package/src/screens/Browser.stories.tsx +0 -353
  736. package/src/screens/Chat.stories.tsx +0 -808
  737. package/src/screens/Home.stories.tsx +0 -253
  738. package/src/screens/Login.stories.tsx +0 -134
  739. package/src/screens/McpManager.stories.tsx +0 -159
  740. package/src/screens/Onboarding.stories.tsx +0 -155
  741. package/src/screens/ScheduledTasks.stories.tsx +0 -134
  742. package/src/screens/ScreenFrameSource.test.mjs +0 -77
  743. package/src/screens/SettingsAppearance.stories.tsx +0 -117
  744. package/src/screens/SettingsMemory.stories.tsx +0 -128
  745. package/src/screens/SettingsModels.stories.tsx +0 -228
  746. package/src/screens/SettingsSections.stories.tsx +0 -164
  747. package/src/screens/Share.stories.tsx +0 -202
  748. package/src/screens/SharePage.stories.tsx +0 -29
  749. package/src/screens/Sites.stories.tsx +0 -183
  750. package/src/screens/Skills.stories.tsx +0 -83
  751. package/src/screens/Workspace.stories.tsx +0 -191
  752. package/src/screens/_home.tsx +0 -46
  753. package/src/screens/_screen.tsx +0 -355
  754. package/src/screens/_settingsNav.ts +0 -27
  755. package/src/screens/_skillsCatalog.tsx +0 -372
  756. package/src/theme/SkinDenylistSyncSource.test.mjs +0 -124
  757. package/src/theme/__tests__/skins.test.mjs +0 -84
  758. package/src/theme/core/semanticAdapter.ts +0 -116
  759. package/src/theme/core/skin.ts +0 -605
  760. package/src/theme/core/skinScoped.ts +0 -289
  761. package/src/theme/core/tenantTheme.test.mjs +0 -127
  762. package/src/theme/core/tenantTheme.ts +0 -124
  763. package/src/theme/core/types.ts +0 -60
  764. package/src/theme/core/unifiedTheme.ts +0 -157
  765. package/src/theme/index.ts +0 -33
  766. package/src/theme/providers/BrandingProvider.tsx +0 -57
  767. package/src/theme/providers/ThemeProvider.tsx +0 -221
  768. package/src/theme/skinDs2PropertyGate.test.mjs +0 -109
  769. package/src/theme/skins/index.ts +0 -107
  770. package/src/theme/utils/cssSafety.ts +0 -92
  771. package/src/theme/utils/skinManager.ts +0 -159
  772. package/src/theme/utils/themeApplier.ts +0 -75
  773. package/src/tokens/DesktopSurfacesSweep15Source.test.mjs +0 -77
  774. package/src/tokens/SharedStyleSheetsSource.test.mjs +0 -90
  775. package/src/tokens/TailwindThemeSupplySource.test.mjs +0 -129
  776. package/src/tokens/base.ts +0 -199
  777. package/src/tokens/dark.ts +0 -288
  778. package/src/tokens/index.ts +0 -4
  779. package/src/tokens/light.ts +0 -320
  780. package/src/tokens/tailwind.ts +0 -216
  781. package/src/types/desktop-pet.ts +0 -100
  782. package/src/types/file-browser.ts +0 -51
  783. package/src/types/file-tree.ts +0 -34
  784. package/src/types/index.ts +0 -3
  785. package/src/types/xspreadsheet.d.ts +0 -4
  786. package/src/utils/cn.ts +0 -6
  787. package/src/utils/glyphColor.ts +0 -32
  788. package/src/utils/index.ts +0 -4
  789. package/src/utils/localPathInline.test.mjs +0 -45
  790. package/src/utils/localPathInline.ts +0 -49
  791. package/src/utils/markdownFileRefs.test.mjs +0 -88
  792. package/src/utils/markdownFileRefs.ts +0 -140
  793. package/src/utils/office-excel.ts +0 -452
  794. package/src/utils/shiki.ts +0 -156
@@ -1,1074 +0,0 @@
1
- "use client"
2
-
3
- import { Fragment, type ReactNode, cloneElement, isValidElement } from "react"
4
- import { BackButton } from "../../../composite/BackButton"
5
- import { CardGridSkeleton } from "../../../composite/CatalogStates"
6
- import { type DetailMenuItem, DetailOverflowMenu } from "../../../composite/DetailChrome"
7
- import { FilterBar, type FilterBarFilter } from "../../../composite/FilterBar"
8
- import { Bolt, Globe, More, Terminal, Trash } from "../../../composite/Icons"
9
- import { StatusTag, type StatusTagPreset } from "../../../composite/StatusTag"
10
- import { Button } from "../../../primitives"
11
- import { EmptyState } from "../../../primitives/EmptyState"
12
- import { InlineMessage } from "../../../primitives/InlineMessage"
13
- import type { SelectOption } from "../../../primitives/Select"
14
- import { GlyphToneProvider } from "../../skills/SkillAvatarView"
15
-
16
- /**
17
- * DesktopCatalogView —— 发现域(智能体 / 技能 / 连接器)的公共壳,产品面隐性枢纽。
18
- *
19
- * 语法定稿(COMPONENT-RULES §5/§6/§7):
20
- * - **卡网格,不用 DataTable**。发现页每条目要头像+两行描述+动作,是「卡」不是「行」;
21
- * DataTable 留给同构定长字段的表(MCP/成员/日志)。网格容器=`DesktopCatalogGridView`。
22
- * - 三态齐备:载=`CardGridSkeleton`(呼吸骨架,禁 shimmer)· 空=`EmptyState` 原语
23
- * (信标 mono 母题+一句 text-2+可选主按钮,禁插画禁 emoji)· 错=`InlineMessage`
24
- * error 档(人话一句+mono 技术详情 ≤2 行+重试钮)。
25
- * - 工具条=`DesktopCatalogToolbarView`,落在 `FilterBar` 基座上:分类走直角 Tag(6,纯筛选
26
- * 不带点)、搜索走 Field、排序走 Select。R3 中性件——工具条与卡网格都不加信标元素。
27
- * - **卡是竖排两段,不是横排三列**(A4-B2,原型模板 1666–1684)。上段=40 字形 +
28
- * 名称行(名 + 至多两枚 `StatusTag`:归属签 + 状态签)+ 两行描述(`min-height:3em`,
29
- * 同排等高靠它,不靠拉伸);下段=卡脚,左边一条 mono 元信息带、右边 28 高动作钮。
30
- * 动作钮在卡脚右下,不再竖直居中挂在卡右腰。
31
- * - 卡内读数(版本号/计数)一律 mono+tabular-nums,但**不再是一枚枚胶囊**:卡脚是一条
32
- * 「v1.4.2 · 3 技能 · 2 连接器」式的中性文字带(`·` 相连、单行省略),版本号也在这条带里,
33
- * 不在名称行。名称行只留名字与两枚状态签——卡片顶行是「这是什么、现在什么状态」,
34
- * 不是元信息的堆放处。
35
- * - **状态签只有一件**:`composite/StatusTag`(20 · --ow-radius-xs · 11/500 · tint 底 + on-tint 字,
36
- * 无边框)。A4-B3 把原来的三套写法(`.connector-update-tag` 裸 span / `Tag` / `Chip`)收成它,
37
- * 卡与详情共用同一份词表(已安装 / 有更新 / 已连接 / 待授权 / 正在安装 / 我的 / 专家团)。
38
- * 分类标仍走直角 `Tag`,度量读数在别处仍走 `Chip` —— 三件各司其职,不再互相串味。
39
- *
40
- * 立面:卡是贴地之物——`--ow-surface` 面+1px `--ow-border`+0 影;hover **只换边色**到
41
- * `--ow-border-strong`(底色递进是行/条的语汇,一整张卡跟着指针变底会把网格搅成一片明暗),
42
- * press 保留 `--ow-press` 作按下的瞬时反馈,不投影不位移(§5/§9)。
43
- * 样式段在 styles/desktop-surfaces.css 的 `.plaza__* / .skcard*`。
44
- */
45
-
46
- /**
47
- * 卡脚元信息一条:一句分类文字+可选读数,渲成 mono 带上的一段(「3 技能」「stdio」)。
48
- * A4-B2 起不再逐条包 `Chip`——卡脚是一条文字带不是一排胶囊,段与段之间只有一个 `·`。
49
- * `icon` 保留在类型上供别的宿主复用,卡脚这条带不渲染它(原型 1682 无图标)。
50
- */
51
- export interface DesktopCatalogCardMetaItem {
52
- key: string
53
- /** 预留图标槽;卡脚 mono 带不渲染(原型 1682 一行纯文字)。 */
54
- icon?: ReactNode
55
- label: ReactNode
56
- /** 读数:数字/时间/百分比,落在 label 前(「3 技能」),整条带 mono+tabular-nums */
57
- count?: number | string
58
- }
59
-
60
- export interface DesktopAgentCardViewProps {
61
- avatar: ReactNode
62
- name: ReactNode
63
- version?: ReactNode
64
- updateAvailable?: boolean
65
- team?: boolean
66
- /**
67
- * 归属签「我的」(原型 4646:`hasBadge = !!(x.team || x.mine)`,两者都在时「专家团」优先)。
68
- * 宿主一期传 false —— 目录接口还没有 owner 字段,见交接单。
69
- */
70
- mine?: boolean
71
- /** 状态签(StatusTag 词表档):已安装 / 有更新 / 已连接 / 待授权 / 正在安装。卡与详情同一份文案。 */
72
- status?: StatusTagPreset
73
- description: ReactNode
74
- /** 结构化卡脚元信息(推荐):读数自动 mono,胶囊形由壳统一给。 */
75
- metaItems?: DesktopCatalogCardMetaItem[]
76
- /** @deprecated 自由 ReactNode 卡脚;新代码用 `metaItems`,兼容口保留给未迁移调用方。 */
77
- meta?: ReactNode
78
- error?: ReactNode
79
- actionLabel?: ReactNode
80
- actionState?: "default" | "installed" | "update"
81
- actionVariant?: "secondary" | "unstyled"
82
- actionDisabled?: boolean
83
- onAction?: () => void
84
- onOpen?: () => void
85
- }
86
-
87
- export interface DesktopCatalogCardViewProps {
88
- avatar: ReactNode
89
- /**
90
- * 字形章色档(R2·T2,原型 4569–4570 `glyphOf`):目录里只有两档——专家卡走墨面
91
- * `agent`,技能/连接器卡一律中性 `neutral`(缺省)。卡把它钉在 `GlyphToneProvider` 上,
92
- * `SkillAvatarView` 读上下文,宿主一行不改就同时拿到「技能/连接器中性、专家藏蓝」。
93
- */
94
- glyphTone?: "neutral" | "agent"
95
- name: ReactNode
96
- version?: ReactNode
97
- updateAvailable?: boolean
98
- /** 状态签(StatusTag 词表档):已安装 / 有更新 / 已连接 / 待授权 / 正在安装。卡与详情同一份文案。 */
99
- status?: StatusTagPreset
100
- description: ReactNode
101
- /** 结构化卡脚元信息(推荐):读数自动 mono,胶囊形由壳统一给。 */
102
- metaItems?: DesktopCatalogCardMetaItem[]
103
- /** @deprecated 自由 ReactNode 卡脚;新代码用 `metaItems`,兼容口保留给未迁移调用方。 */
104
- meta?: ReactNode
105
- error?: ReactNode
106
- /**
107
- * 归属签(我的 / 专家团):名称行里状态签左边的那一枚。A4-B2 起归属签进名称行,
108
- * 不再是钉在卡右上角的绝对定位角标——竖排卡的右上角就是名称行本身,会互相压。
109
- */
110
- badge?: ReactNode
111
- actionLabel?: ReactNode
112
- actionState?: "default" | "installed" | "update"
113
- actionVariant?: "secondary" | "unstyled"
114
- actionDisabled?: boolean
115
- onAction?: () => void
116
- onOpen?: () => void
117
- }
118
-
119
- /**
120
- * 卡头像位的形状规格挂在 `.skcard .gly` 上(40×40 · r8 · sans 500 首字,见
121
- * desktop-surfaces.css)。它原来完全依赖调用方自己在 avatar 元素上传 `className="gly"`——
122
- * Skills 整屏就漏传过一次,于是整条规格落空,卡头渲成 36×24 的直角贴字(圆角 0 越形状表)。
123
- * 这里统一补挂:调用方传不传都一样,漏传不再是一种可能。
124
- */
125
- function withGlyphClass(avatar: ReactNode): ReactNode {
126
- if (!isValidElement<{ className?: string }>(avatar)) return avatar
127
- const existing = avatar.props.className ?? ""
128
- if (existing.split(/\s+/).includes("gly")) return avatar
129
- return cloneElement(avatar, { className: existing ? `${existing} gly` : "gly" })
130
- }
131
-
132
- /**
133
- * 卡脚 mono 元信息带(原型 1682):版本号领头,其后按次序摊开 `metaItems`,段间只有一个 `·`。
134
- * 整条单行省略——卡脚是一带不是一块,宁可截断也不换行把卡撑高(同排等高由描述的 3em 保)。
135
- * 版本号从名称行搬到这里:它是读数不是状态,和「3 技能 / stdio」是同一类东西。
136
- */
137
- function CatalogCardMetaLine({
138
- version,
139
- metaItems,
140
- meta,
141
- }: Pick<DesktopCatalogCardViewProps, "version" | "metaItems" | "meta">) {
142
- const segments: { key: string; node: ReactNode }[] = []
143
- if (version) segments.push({ key: "__version", node: <>v{version}</> })
144
- for (const item of metaItems ?? []) {
145
- segments.push({
146
- key: item.key,
147
- node: (
148
- <>
149
- {item.count != null && <>{item.count} </>}
150
- {item.label}
151
- </>
152
- ),
153
- })
154
- }
155
- // 未迁移调用方的自由 meta 槽:结构化 metaItems 缺席时当作最后一段挂上,不另起一行。
156
- if (meta && !(metaItems && metaItems.length > 0)) segments.push({ key: "__meta", node: meta })
157
- if (segments.length === 0) return null
158
- return (
159
- <>
160
- {segments.map((segment, index) => (
161
- <Fragment key={segment.key}>
162
- {index > 0 && <span aria-hidden="true"> · </span>}
163
- {segment.node}
164
- </Fragment>
165
- ))}
166
- </>
167
- )
168
- }
169
-
170
- /** Desktop 发现页统一卡片;智能体、技能和连接器共享布局与键盘交互。 */
171
- export function DesktopCatalogCardView({
172
- avatar,
173
- glyphTone = "neutral",
174
- name,
175
- version,
176
- updateAvailable,
177
- status,
178
- description,
179
- metaItems,
180
- meta,
181
- error,
182
- badge,
183
- actionLabel = "使用",
184
- actionState = "default",
185
- actionVariant = "secondary",
186
- actionDisabled,
187
- onAction,
188
- onOpen,
189
- }: DesktopCatalogCardViewProps) {
190
- return (
191
- <div
192
- className="skcard"
193
- role={onOpen ? "button" : undefined}
194
- tabIndex={onOpen ? 0 : undefined}
195
- onClick={onOpen}
196
- onKeyDown={(event) => {
197
- // L3-2-1:只认落在卡壳自己身上的键。没有这道守卫时,焦点在卡脚「使用/更新/安装」
198
- // 钮上按 Enter/空格会冒泡上来被 preventDefault 吃掉——按钮的默认 click 一次都不发生,
199
- // 反而打开详情(鼠标路径有下面的 stopPropagation 兜着,键盘路径完全没有)。
200
- if (event.target !== event.currentTarget) return
201
- if (onOpen && (event.key === "Enter" || event.key === " ")) {
202
- event.preventDefault()
203
- onOpen()
204
- }
205
- }}
206
- >
207
- <div className="skcard__top">
208
- <GlyphToneProvider value={glyphTone}>{withGlyphClass(avatar)}</GlyphToneProvider>
209
- <div className="body">
210
- <div className="n">
211
- <span className="nt">{name}</span>
212
- {badge}
213
- {/* R2·T2/Q3:撤 754d2b4 的去重条款——原型(skills--market/agents 两张渲染图)
214
- 「有更新」签与「更新」钮是并存的:签说的是现状,钮说的是能做什么。
215
- 调用方要单签就只传 `status`,不要再同时传 `updateAvailable`。 */}
216
- {updateAvailable && <StatusTag status="update" />}
217
- {status && <StatusTag status={status} />}
218
- </div>
219
- <div className="d">{description}</div>
220
- {error && <div className="skcard__error">{error}</div>}
221
- </div>
222
- </div>
223
- <div className="skcard__foot">
224
- <div className="ft">
225
- <CatalogCardMetaLine version={version} metaItems={metaItems} meta={meta} />
226
- </div>
227
- <Button
228
- variant={actionVariant}
229
- size="sm"
230
- disabled={actionDisabled}
231
- className={
232
- actionVariant === "unstyled"
233
- ? `inst${actionState === "installed" ? " installed" : actionState === "update" ? " update" : ""}`
234
- : undefined
235
- }
236
- onClick={(event) => {
237
- event.stopPropagation()
238
- onAction?.()
239
- }}
240
- >
241
- {actionLabel}
242
- </Button>
243
- </div>
244
- </div>
245
- )
246
- }
247
-
248
- export interface DesktopCatalogToolbarViewProps {
249
- /** 分类筛选:直角 Tag(6),纯分类不带状态点 */
250
- categories?: FilterBarFilter[]
251
- onCategoryToggle?: (key: string) => void
252
- search?: {
253
- value: string
254
- onChange: (value: string) => void
255
- placeholder?: string
256
- disabled?: boolean
257
- width?: number | string
258
- }
259
- sort?: {
260
- value: string
261
- options: SelectOption[]
262
- onChange: (value: string) => void
263
- disabled?: boolean
264
- label?: string
265
- }
266
- onReset?: () => void
267
- /** 右侧动作区:新建 / 导入 / 范围开关 */
268
- actions?: ReactNode
269
- className?: string
270
- }
271
-
272
- /**
273
- * 发现页工具条 —— FilterBar 基座的目录配方(R3 中性件,无信标元素)。
274
- * 三槽固定次序:分类 Tag → 搜索 → 排序,右侧留动作区;贴在网格顶部用 `flush` 去边框。
275
- */
276
- export function DesktopCatalogToolbarView({
277
- categories,
278
- onCategoryToggle,
279
- search,
280
- sort,
281
- onReset,
282
- actions,
283
- className,
284
- }: DesktopCatalogToolbarViewProps) {
285
- return (
286
- <FilterBar
287
- flush
288
- className={className ?? "plaza__toolbar"}
289
- filters={categories}
290
- onFilterToggle={onCategoryToggle}
291
- search={search}
292
- sort={sort}
293
- onReset={onReset}
294
- actions={actions}
295
- />
296
- )
297
- }
298
-
299
- export interface DesktopCatalogGridViewProps {
300
- /** 加载态:呼吸骨架卡(禁 shimmer) */
301
- loading?: boolean
302
- loadingCount?: number
303
- /** 错误态:人话一句 */
304
- error?: ReactNode
305
- /** 错误技术详情:mono ≤2 行 */
306
- errorDetail?: string
307
- onRetry?: () => void
308
- retryLabel?: string
309
- /**
310
- * 空态一句话(children 为空且非载/错时出)。这里是**二级 inline 档**:母题 + 一句
311
- * + 可选轮廓钮,**不带标题层**(原型 template.dc.html L1706–1714 的目录搜索无结果)。
312
- * 整页一级空态(母题 + 标题 + 副句 + 实底钮)只出现在 `ScheduledTasksSpaceView`
313
- * 那种「列表主体空」的位置,网格里的「筛掉了」不该占那个体量。
314
- */
315
- emptyMessage?: ReactNode
316
- emptyActionLabel?: string
317
- onEmptyAction?: () => void
318
- /** 空态是否成立;不传则按 children 是否为空推断 */
319
- empty?: boolean
320
- children?: ReactNode
321
- className?: string
322
- }
323
-
324
- /**
325
- * 发现页卡网格 —— 目录壳的容器语法与 §6 空/载/错三态在这里定稿。
326
- * 网格自身滚动(`scrollbar-gutter: stable`,保证「全部/已安装」两个范围切换时宽度不跳)。
327
- */
328
- export function DesktopCatalogGridView({
329
- loading = false,
330
- loadingCount = 6,
331
- error,
332
- errorDetail,
333
- onRetry,
334
- retryLabel = "重试",
335
- emptyMessage = "这里还没有可用条目。",
336
- emptyActionLabel,
337
- onEmptyAction,
338
- empty,
339
- children,
340
- className,
341
- }: DesktopCatalogGridViewProps) {
342
- const hasChildren = Array.isArray(children) ? children.flat().some(Boolean) : Boolean(children)
343
- const isEmpty = empty ?? !hasChildren
344
- return (
345
- <div className={className ?? "plaza__grid"} data-ow-state={loading ? "loading" : error ? "error" : undefined}>
346
- {loading ? (
347
- <CardGridSkeleton count={loadingCount} />
348
- ) : error ? (
349
- <div className="plaza__state">
350
- <InlineMessage
351
- variant="error"
352
- detail={errorDetail}
353
- action={
354
- onRetry && (
355
- <Button variant="secondary" size="sm" onClick={onRetry}>
356
- {retryLabel}
357
- </Button>
358
- )
359
- }
360
- >
361
- {error}
362
- </InlineMessage>
363
- </div>
364
- ) : isEmpty ? (
365
- /* A5-B3:inline 档(md)——母题 + 一句 + 轮廓钮。`actionLabel` 走原语的内置钮,
366
- md 档默认 secondary,「清空筛选」是退路不是主张,不占行动极。 */
367
- <div className="plaza__state">
368
- <EmptyState message={emptyMessage} actionLabel={emptyActionLabel} onAction={onEmptyAction} />
369
- </div>
370
- ) : (
371
- children
372
- )}
373
- </div>
374
- )
375
- }
376
-
377
- export interface DesktopCatalogDetailShellProps {
378
- avatar: ReactNode
379
- name: ReactNode
380
- /**
381
- * 状态签:标题右边紧跟的那一枚 `StatusTag`(原型 2169)。与 `badges` 分开是因为它有位置
382
- * 语义——只有它贴着标题;`badges` 里的类型标之类落在后面。
383
- */
384
- status?: ReactNode
385
- /** 标题下一句描述(原型 2172,--ow-text-2)。 */
386
- summary?: ReactNode
387
- /**
388
- * mono 元信息行(原型 2173:「v1.4.2 · Orbitwork Labs · 3 天前」)。不传就由
389
- * `version / author / updatedAt` 按同样的顺序与 `·` 拼出来,老调用方不改一行也能拿到这行。
390
- */
391
- meta?: ReactNode
392
- author?: ReactNode
393
- version?: ReactNode
394
- /** 更新时间(「3 天前」);只进 mono 元信息行。 */
395
- updatedAt?: ReactNode
396
- /**
397
- * 类型标(智能体 / 团队 / 连接器)。A4-B4 把它从标题旁的图标标下沉到 mono 元信息行的
398
- * 第一段:标题旁只留状态签一枚,「这是什么类」属于元信息,不该和「现在什么状态」抢同一行。
399
- */
400
- kind?: ReactNode
401
- /** 状态签之后的附加标记(类型标等)。破坏性动作不放这里。 */
402
- badges?: ReactNode
403
- actions?: ReactNode
404
- backLabel: ReactNode
405
- onBack: () => void
406
- children?: ReactNode
407
- }
408
-
409
- /**
410
- * mono 元信息行:把「v1.4.2 / 作者 / 3 天前」用 `·` 连成一行。空段自己消失,
411
- * 不留下孤零零的分隔点(这是元信息带最常见的破绽)。
412
- */
413
- function detailMetaLine(parts: ReactNode[]): ReactNode | null {
414
- const kept = parts.filter((part) => part !== undefined && part !== null && part !== false && part !== "")
415
- if (kept.length === 0) return null
416
- return kept.map((part, index) => (
417
- <Fragment key={index}>
418
- {index > 0 ? " · " : null}
419
- {part}
420
- </Fragment>
421
- ))
422
- }
423
-
424
- /**
425
- * Desktop 发现二级页统一外壳。A4-B4 把它从「一条略大的列表项」抬回真正的二级页:
426
- * 返回条 + hero 合成一块固定页头(原型 2158),hero 里是 52 字形 →
427
- * 「22px display 标题 + 状态签」/ 一句描述 / mono 元信息行 → 右侧动作组;
428
- * 正文进 `.skd__body`,收到 720 列宽、节间 22(原型 2191)。
429
- */
430
- export function DesktopCatalogDetailShell({
431
- avatar,
432
- name,
433
- status,
434
- summary,
435
- meta,
436
- author = "Orbitwork 官方",
437
- version,
438
- updatedAt,
439
- kind,
440
- badges,
441
- actions,
442
- backLabel,
443
- onBack,
444
- children,
445
- }: DesktopCatalogDetailShellProps) {
446
- const metaLine = meta ?? detailMetaLine([kind, version ? `v${version}` : null, author, updatedAt])
447
- return (
448
- <div className="page skdetail">
449
- <div className="skd__head">
450
- {/* 「返回」全站唯一形=composite/BackButton(ghost + chevron-left + §7 图标 16 档,形/高/状态全集由
451
- Button 原语出)。原来是 variant="unstyled" 的 Button 套一枚旋转 90° 的 ArrowDown,尺寸全靠已被
452
- R2 清掉的 `.fs-back svg` 撑着,塌成 78×78 的巨大箭头,键盘命中区与焦点环也一并失效。
453
- `fs-back` 类名保留:桌面端 e2e(discover-extension-interactions / workspace-interactions)按它定位。 */}
454
- <BackButton className="fs-back" onClick={onBack}>
455
- {backLabel}
456
- </BackButton>
457
- {/* hero 与返回条同属页头,不进滚动区:二级页的身份牌不该跟着正文滚走(原型 2158)。 */}
458
- <div className="skd__hero">
459
- {avatar}
460
- <div className="meta">
461
- <div className="n">
462
- <h1 className="skd__title">{name}</h1>
463
- {status}
464
- {badges}
465
- </div>
466
- {summary && <div className="skd__desc">{summary}</div>}
467
- {metaLine && <div className="skd__meta-line">{metaLine}</div>}
468
- </div>
469
- {actions}
470
- </div>
471
- </div>
472
- <div className="skd__scroll">
473
- <div className="skd__body">{children}</div>
474
- </div>
475
- </div>
476
- )
477
- }
478
-
479
- /**
480
- * 详情正文一节:眉标 + 一种体裁(原型 2193–2247)。`count` 是读数圆章、`note` 是
481
- * 中文补充说明——两者互斥由调用方决定,本件只排位置。
482
- */
483
- export function DesktopDetailSection({
484
- title,
485
- count,
486
- note,
487
- className,
488
- children,
489
- }: {
490
- title: ReactNode
491
- count?: number
492
- note?: ReactNode
493
- className?: string
494
- children?: ReactNode
495
- }) {
496
- return (
497
- <section className={className ? `skd__section ${className}` : "skd__section"}>
498
- <div className="lbl">
499
- {title}
500
- {count !== undefined && <span className="cnt">{count}</span>}
501
- {note && <span className="skd__lbl-note">{note}</span>}
502
- </div>
503
- {children}
504
- </section>
505
- )
506
- }
507
-
508
- /** 体裁一 · 段落:成段的话(使用方式 / 限制 / 传输方式)。 */
509
- export function DesktopDetailText({ children }: { children?: ReactNode }) {
510
- return <p className="skd__text">{children}</p>
511
- }
512
-
513
- export interface DesktopDetailListItemView {
514
- id: string
515
- text: ReactNode
516
- }
517
-
518
- /** 体裁二 · 圆点列表:并列的短句(能力)。 */
519
- export function DesktopDetailList({ items }: { items: DesktopDetailListItemView[] }) {
520
- return (
521
- <div className="skd__list">
522
- {items.map((item) => (
523
- <div className="skd__list-item" key={item.id}>
524
- <span className="skd__list-text">{item.text}</span>
525
- </div>
526
- ))}
527
- </div>
528
- )
529
- }
530
-
531
- export interface DesktopDetailChipView {
532
- id: string
533
- text: ReactNode
534
- /** 标识符(命令 / 工具名)走 mono;中文名词走正文字体。 */
535
- mono?: boolean
536
- }
537
-
538
- /** 体裁三 · 直角片:名词集合(技能 / 连接器 / 命令 / 工具)。只读,不可点。 */
539
- export function DesktopDetailChips({ items }: { items: DesktopDetailChipView[] }) {
540
- return (
541
- <div className="skd__chips">
542
- {items.map((item) => (
543
- <span className={item.mono ? "skd__chip skd__chip--mono" : "skd__chip"} key={item.id}>
544
- {item.text}
545
- </span>
546
- ))}
547
- </div>
548
- )
549
- }
550
-
551
- export interface DesktopDetailRowView {
552
- id: string
553
- name: ReactNode
554
- /** 角色小签(负责人 / 成员):与卡上同一枚 StatusTag 的中性档。 */
555
- role?: ReactNode
556
- description?: ReactNode
557
- }
558
-
559
- /** 体裁四 · 成员行表:有字段的条目(团队成员)。 */
560
- export function DesktopDetailRows({ rows, nameMono }: { rows: DesktopDetailRowView[]; nameMono?: boolean }) {
561
- return (
562
- <div className="skd__rows">
563
- {rows.map((row) => (
564
- <div className="skd__row" key={row.id}>
565
- <span className={nameMono ? "skd__row-name skd__row-name--mono" : "skd__row-name"}>{row.name}</span>
566
- {row.role && <StatusTag tone="mute">{row.role}</StatusTag>}
567
- {row.description && <span className="skd__row-desc">{row.description}</span>}
568
- </div>
569
- ))}
570
- </div>
571
- )
572
- }
573
-
574
- /** Desktop 发现智能体卡片。 */
575
- export function DesktopAgentCardView({
576
- avatar,
577
- name,
578
- version,
579
- updateAvailable,
580
- team,
581
- mine,
582
- status,
583
- description,
584
- metaItems,
585
- meta,
586
- error,
587
- actionLabel = "使用",
588
- actionState = "default",
589
- actionVariant = "unstyled",
590
- actionDisabled,
591
- onAction,
592
- onOpen,
593
- }: DesktopAgentCardViewProps) {
594
- return (
595
- <DesktopCatalogCardView
596
- avatar={avatar}
597
- glyphTone="agent"
598
- name={name}
599
- version={version}
600
- updateAvailable={updateAvailable}
601
- status={status}
602
- description={description}
603
- metaItems={metaItems}
604
- meta={meta}
605
- error={error}
606
- badge={team ? <StatusTag status="team" /> : mine ? <StatusTag status="mine" /> : undefined}
607
- actionLabel={actionLabel}
608
- actionState={actionState}
609
- actionVariant={actionVariant}
610
- actionDisabled={actionDisabled}
611
- onAction={onAction}
612
- onOpen={onOpen}
613
- />
614
- )
615
- }
616
-
617
- export interface DesktopAgentDetailItemView {
618
- id: string
619
- name: ReactNode
620
- icon?: ReactNode
621
- description?: ReactNode
622
- }
623
- export interface DesktopAgentMemberView {
624
- id: string
625
- name: ReactNode
626
- description?: ReactNode
627
- avatar?: ReactNode
628
- role: "leader" | "member"
629
- }
630
- export interface DesktopAgentRosterViewProps {
631
- agents: DesktopAgentMemberView[]
632
- }
633
-
634
- export interface DesktopAgentOverviewItemView {
635
- id: string
636
- label: ReactNode
637
- value: ReactNode
638
- }
639
- export interface DesktopAgentOverviewLinkView {
640
- id: string
641
- label: ReactNode
642
- url: string
643
- kind?: "homepage" | "repository"
644
- }
645
-
646
- /** Desktop 智能体详情的必要元数据;隐藏内部标识和下载实现信息。 */
647
- export function DesktopAgentOverviewView({
648
- items,
649
- links = [],
650
- onOpenLink,
651
- }: {
652
- items: DesktopAgentOverviewItemView[]
653
- links?: DesktopAgentOverviewLinkView[]
654
- onOpenLink?: (link: DesktopAgentOverviewLinkView) => void
655
- }) {
656
- if (items.length === 0 && links.length === 0) return null
657
- return (
658
- <section className="skd__section">
659
- <div className="lbl">基本信息</div>
660
- <div className="connector-kv">
661
- {items.map((item) => (
662
- <Fragment key={item.id}>
663
- <span>{item.label}</span>
664
- <b>{item.value}</b>
665
- </Fragment>
666
- ))}
667
- {links.map((link) => (
668
- <Fragment key={link.id}>
669
- <span>{link.kind === "repository" ? "源码" : "主页"}</span>
670
- <b>
671
- <Button
672
- variant="unstyled"
673
- className="connector-cred-summary__action"
674
- icon={link.kind === "repository" ? <Terminal /> : <Globe />}
675
- disabled={!onOpenLink}
676
- onClick={() => onOpenLink?.(link)}
677
- >
678
- {link.label}
679
- </Button>
680
- </b>
681
- </Fragment>
682
- ))}
683
- </div>
684
- </section>
685
- )
686
- }
687
-
688
- /** 团队智能体的成员名册;负责人和普通成员使用不同的语义标签。 */
689
- export function DesktopAgentRosterView({ agents }: DesktopAgentRosterViewProps) {
690
- if (agents.length === 0) return null
691
- return (
692
- <section className="skd__section agent-roster">
693
- <div className="lbl">
694
- 团队成员 <span className="cnt">{agents.length}</span>
695
- </div>
696
- <div className="agent-roster__grid">
697
- {agents.map((agent) => (
698
- <div className={`agent-roster__item${agent.role === "leader" ? " is-leader" : ""}`} key={agent.id}>
699
- <span className="agent-roster__avatar">{agent.avatar ?? String(agent.name).slice(0, 1)}</span>
700
- <div className="agent-roster__body">
701
- <div className="agent-roster__name">
702
- {agent.name}
703
- <span className={`agent-roster__role is-${agent.role}`}>
704
- {agent.role === "leader" ? "负责人" : "成员"}
705
- </span>
706
- </div>
707
- {agent.description && <div className="agent-roster__description">{agent.description}</div>}
708
- </div>
709
- </div>
710
- ))}
711
- </div>
712
- </section>
713
- )
714
- }
715
-
716
- export interface DesktopAgentDetailViewProps {
717
- avatar: ReactNode
718
- name: ReactNode
719
- author?: ReactNode
720
- version?: ReactNode
721
- description: ReactNode
722
- team?: boolean
723
- agents?: DesktopAgentMemberView[]
724
- skills?: DesktopAgentDetailItemView[]
725
- connectors?: DesktopAgentDetailItemView[]
726
- commands?: DesktopAgentDetailItemView[]
727
- starters?: ReactNode[]
728
- installed?: boolean
729
- outdated?: boolean
730
- installing?: boolean
731
- error?: ReactNode
732
- backLabel?: ReactNode
733
- connectorManagement?: ReactNode
734
- actionLabel?: ReactNode
735
- actionIcon?: ReactNode
736
- actionDisabled?: boolean
737
- overflowItems?: DetailMenuItem[]
738
- overviewItems?: DesktopAgentOverviewItemView[]
739
- overviewLinks?: DesktopAgentOverviewLinkView[]
740
- onBack: () => void
741
- onInstall?: () => void
742
- onUpdate?: () => void
743
- onUse?: () => void
744
- onOverflowSelect?: (key: string) => void
745
- onOpenOverviewLink?: (link: DesktopAgentOverviewLinkView) => void
746
- onUninstall?: () => void
747
- }
748
-
749
- /**
750
- * 安装态 → 状态签词表档(A4-B3)。卡与详情引同一个函数,避免两处各判一遍、
751
- * 各写各的文案。连接器的「已连接 / 待授权」由调用方直接给 `status`,不走这里。
752
- */
753
- export function catalogInstallStatus({
754
- installed,
755
- outdated,
756
- installing,
757
- }: { installed?: boolean; outdated?: boolean; installing?: boolean }): StatusTagPreset | undefined {
758
- if (installing) return "installing"
759
- if (!installed) return undefined
760
- return outdated ? "update" : "installed"
761
- }
762
-
763
- export interface DesktopAgentDetailActionsProps {
764
- installed: boolean
765
- outdated?: boolean
766
- installing?: boolean
767
- disabled?: boolean
768
- primaryLabel: ReactNode
769
- primaryIcon?: ReactNode
770
- primaryVisible?: boolean
771
- primaryDisabled?: boolean
772
- menuItems?: DetailMenuItem[]
773
- onInstall?: () => void
774
- onUpdate?: () => void
775
- onPrimaryAction: () => void
776
- onMenuSelect?: (key: string) => void
777
- }
778
-
779
- export interface DesktopCatalogActionView {
780
- key: string
781
- label: ReactNode
782
- icon?: ReactNode
783
- variant?: "primary" | "secondary" | "danger"
784
- disabled?: boolean
785
- onAction?: () => void
786
- }
787
-
788
- export interface DesktopCatalogDetailActionsProps {
789
- actions: DesktopCatalogActionView[]
790
- leading?: ReactNode
791
- menuItems?: DetailMenuItem[]
792
- disabled?: boolean
793
- onMenuSelect?: (key: string) => void
794
- }
795
-
796
- /**
797
- * Desktop 发现二级页统一按钮组。
798
- *
799
- * A4-B4 收敛(原型 2174–2187):**页头右侧至多一颗按钮 + 一颗 ⋯**。`actions` 的第一颗
800
- * 上台面(默认实底主钮),其余自动折进 ⋯ 菜单,排在调用方自己的 `menuItems` 前面。
801
- * 收敛点放在这里而不是各调用方:连接器详情原来把「刷新状态 / 编辑配置 / 卸载连接器」三颗
802
- * 并排摆在页头,最后一颗还是实底红——破坏性动作站上行动极的位置,误触代价与召唤力度成反比。
803
- * 折进去的动作照旧能点(onAction 由本件转发),danger 档在菜单里仍是红字。
804
- */
805
- export function DesktopCatalogDetailActions({
806
- actions,
807
- leading,
808
- menuItems = [],
809
- disabled,
810
- onMenuSelect,
811
- }: DesktopCatalogDetailActionsProps) {
812
- const [primary, ...folded] = actions
813
- const foldedItems: DetailMenuItem[] = folded.map((action) => ({
814
- key: action.key,
815
- label: typeof action.label === "string" ? action.label : action.key,
816
- icon: action.icon ?? <More />,
817
- danger: action.variant === "danger",
818
- disabled: action.disabled,
819
- }))
820
- const items = [...foldedItems, ...menuItems]
821
- const handleSelect = (key: string) => {
822
- const hit = folded.find((action) => action.key === key)
823
- if (hit) {
824
- hit.onAction?.()
825
- return
826
- }
827
- onMenuSelect?.(key)
828
- }
829
- return (
830
- <div className="acts">
831
- {leading}
832
- {primary && (
833
- <Button
834
- variant={primary.variant ?? "primary"}
835
- icon={primary.icon}
836
- disabled={disabled || primary.disabled}
837
- onClick={primary.onAction}
838
- >
839
- {primary.label}
840
- </Button>
841
- )}
842
- {items.length > 0 && <DetailOverflowMenu disabled={disabled} items={items} onSelect={handleSelect} />}
843
- </div>
844
- )
845
- }
846
-
847
- /** Desktop 智能体详情头部操作;主操作与“更多”菜单在真实应用和文档示例间共享。 */
848
- export function DesktopAgentDetailActions({
849
- installed,
850
- outdated,
851
- installing,
852
- disabled,
853
- primaryLabel,
854
- primaryIcon,
855
- primaryVisible = true,
856
- primaryDisabled,
857
- menuItems = [],
858
- onInstall,
859
- onUpdate,
860
- onPrimaryAction,
861
- onMenuSelect,
862
- }: DesktopAgentDetailActionsProps) {
863
- const actionsDisabled = installing || disabled
864
- const actions: DesktopCatalogActionView[] = [
865
- ...(!installed && onInstall
866
- ? [{ key: "install", label: installing ? "安装中…" : "安装", onAction: onInstall }]
867
- : []),
868
- ...(installed && outdated && onUpdate
869
- ? [{ key: "update", label: installing ? "更新中…" : "更新", onAction: onUpdate }]
870
- : []),
871
- ...(installed && primaryVisible
872
- ? [
873
- {
874
- key: "primary",
875
- label: primaryLabel,
876
- icon: primaryIcon,
877
- variant: "primary" as const,
878
- disabled: primaryDisabled,
879
- onAction: onPrimaryAction,
880
- },
881
- ]
882
- : []),
883
- ]
884
- return (
885
- <DesktopCatalogDetailActions
886
- actions={actions}
887
- menuItems={installed ? menuItems : []}
888
- disabled={actionsDisabled}
889
- onMenuSelect={onMenuSelect}
890
- />
891
- )
892
- }
893
-
894
- /** Desktop 发现智能体详情接管页。 */
895
- export function DesktopAgentDetailView({
896
- avatar,
897
- name,
898
- author = "Orbitwork Labs",
899
- version,
900
- description,
901
- team,
902
- agents = [],
903
- skills = [],
904
- connectors = [],
905
- commands = [],
906
- starters = [],
907
- installed,
908
- outdated,
909
- installing,
910
- error,
911
- backLabel = "返回插件 · 专家",
912
- connectorManagement,
913
- actionLabel = "使用",
914
- actionIcon = <Bolt />,
915
- actionDisabled,
916
- overflowItems = [],
917
- overviewItems = [],
918
- overviewLinks = [],
919
- onBack,
920
- onInstall,
921
- onUpdate,
922
- onUse,
923
- onOverflowSelect,
924
- onOpenOverviewLink,
925
- onUninstall,
926
- }: DesktopAgentDetailViewProps) {
927
- const installStatus = catalogInstallStatus({ installed, outdated, installing })
928
- /**
929
- * A4-B4:一节的排法由内容决定,不再一律塞进 220px 卡片格(原型 2200–2226)——
930
- * 只有名字的集合走直角片(chips),带一句说明的条目走成员行表(rows)。
931
- * 空是**字段位空**(「未配置」一行 text-3),不是容器空态,不上 EmptyState 母题。
932
- */
933
- const renderItems = (items: DesktopAgentDetailItemView[], mono?: boolean) => {
934
- if (items.length === 0) return <div className="skd__empty">未配置</div>
935
- const described = items.some((item) => item.description)
936
- return described ? (
937
- <DesktopDetailRows
938
- nameMono={mono}
939
- rows={items.map((item) => ({ id: item.id, name: item.name, description: item.description }))}
940
- />
941
- ) : (
942
- <DesktopDetailChips items={items.map((item) => ({ id: item.id, text: item.name, mono }))} />
943
- )
944
- }
945
- return (
946
- <DesktopCatalogDetailShell
947
- avatar={avatar}
948
- name={name}
949
- author={author}
950
- version={version}
951
- /* 详情与卡共用同一枚状态签(同词表、同 20/xs/11 形);详情上不做卡的去重,
952
- 原型 2168 的 hero 是「状态签 + 主按钮」同时在位。类型标下沉进 mono 元信息行。 */
953
- status={installStatus && <StatusTag status={installStatus} />}
954
- kind={team ? "团队" : "专家"}
955
- summary={description}
956
- backLabel={backLabel}
957
- onBack={onBack}
958
- actions={
959
- <DesktopAgentDetailActions
960
- installed={!!installed}
961
- outdated={outdated}
962
- installing={installing}
963
- primaryLabel={actionLabel}
964
- primaryIcon={actionIcon}
965
- primaryDisabled={actionDisabled}
966
- onInstall={onInstall}
967
- onUpdate={onUpdate}
968
- onPrimaryAction={() => onUse?.()}
969
- menuItems={[
970
- ...overflowItems,
971
- ...(onUninstall ? [{ key: "uninstall", label: "卸载", icon: <Trash />, danger: true }] : []),
972
- ]}
973
- onMenuSelect={(key) => {
974
- onOverflowSelect?.(key)
975
- if (key === "uninstall") onUninstall?.()
976
- }}
977
- />
978
- }
979
- >
980
- {error && (
981
- <div className="mcp-card__err">
982
- <span>{error}</span>
983
- </div>
984
- )}
985
- {/* 简介退出正文:一句描述已经在 hero 的标题下面(原型 2172),正文里再写一遍是同一句话
986
- 在同一屏出现两次。正文第一节直接进「成员 / 技能 / 连接器 / 命令」。 */}
987
- <DesktopAgentOverviewView items={overviewItems} links={overviewLinks} onOpenLink={onOpenOverviewLink} />
988
- {team && <DesktopAgentRosterView agents={agents} />}
989
- <DesktopDetailSection title="技能" count={skills.length}>
990
- {renderItems(skills)}
991
- </DesktopDetailSection>
992
- <DesktopDetailSection title="连接器" count={connectors.length}>
993
- {connectorManagement ?? renderItems(connectors)}
994
- </DesktopDetailSection>
995
- <DesktopDetailSection title="命令" count={commands.length}>
996
- {renderItems(commands, true)}
997
- </DesktopDetailSection>
998
- {starters.length > 0 && (
999
- <DesktopDetailSection title="建议开场">
1000
- <div className="skd__meta-grid">
1001
- {starters.map((starter, index) => (
1002
- <div className="skd__meta-item" key={index}>
1003
- <span className="n">{starter}</span>
1004
- </div>
1005
- ))}
1006
- </div>
1007
- </DesktopDetailSection>
1008
- )}
1009
- </DesktopCatalogDetailShell>
1010
- )
1011
- }
1012
-
1013
- export interface DesktopConnectorCardViewProps {
1014
- logo: ReactNode
1015
- name: ReactNode
1016
- version?: ReactNode
1017
- description: ReactNode
1018
- updateAvailable?: boolean
1019
- /**
1020
- * 状态签(StatusTag 词表档):已连接 `connected` / 待授权 `needsAuth` / 正在安装 `installing`。
1021
- * 宿主已有 `plugin.installed` / `needsAuthorization` / `pendingAction` 三个信号够推,见交接单。
1022
- */
1023
- status?: StatusTagPreset
1024
- /** 归属签「我的」;与 `badge` 二选一,`badge` 优先。 */
1025
- mine?: boolean
1026
- /** 归属签自定义槽(通常是 `<StatusTag status="mine" />`)。 */
1027
- badge?: ReactNode
1028
- /** 卡脚 mono 带:连接器这一族是「stdio · 4 个工具」(原型 4590),**不带版本号**。 */
1029
- metaItems?: DesktopCatalogCardMetaItem[]
1030
- actionLabel?: ReactNode
1031
- actionState?: "default" | "installed" | "update"
1032
- actionVariant?: "secondary" | "unstyled"
1033
- actionDisabled?: boolean
1034
- onAction?: () => void
1035
- onOpen?: () => void
1036
- }
1037
-
1038
- /** Desktop 发现页连接器卡片。 */
1039
- export function DesktopConnectorCardView({
1040
- logo,
1041
- name,
1042
- version,
1043
- description,
1044
- updateAvailable,
1045
- status,
1046
- mine,
1047
- badge,
1048
- metaItems,
1049
- actionLabel = "使用",
1050
- actionState = "default",
1051
- actionVariant = "secondary",
1052
- actionDisabled,
1053
- onAction,
1054
- onOpen,
1055
- }: DesktopConnectorCardViewProps) {
1056
- return (
1057
- <DesktopCatalogCardView
1058
- avatar={<span className="connector-logo">{logo}</span>}
1059
- name={name}
1060
- version={version}
1061
- description={description}
1062
- updateAvailable={updateAvailable}
1063
- status={status}
1064
- badge={badge ?? (mine ? <StatusTag status="mine" /> : undefined)}
1065
- metaItems={metaItems}
1066
- actionLabel={actionLabel}
1067
- actionState={actionState}
1068
- actionVariant={actionVariant}
1069
- actionDisabled={actionDisabled}
1070
- onAction={onAction ?? onOpen}
1071
- onOpen={onOpen}
1072
- />
1073
- )
1074
- }