@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,92 +0,0 @@
1
- /**
2
- * CSS 安全过滤 - 防止恶意皮肤注入危险代码
3
- *
4
- * 防护措施:
5
- * 1. 移除 @import(防止外链追踪)
6
- * 2. 移除外部 url()(保留 data: URI)
7
- * 3. 移除 javascript: 协议
8
- *
9
- * 边界:本文件只管**安全**(注入/外链/脚本),不管 **DS2 设计合规**。
10
- * W5 终扫删掉了这里一份从未接线的 `ALLOWED_PROPERTIES` 属性白名单——它明确放行
11
- * border-radius / box-shadow / transform / transition / animation,正是 §5/§7/§9
12
- * 要收口的词汇,留着只会让人误以为已有防线。属性维度的 DS2 闸在
13
- * `skin.ts` 的 `DS2_SKIN_DENIED_PROPERTIES` / `findDs2DeniedCssProperty`,
14
- * 由 `skin-scoped.ts` 的 `findDs2CssViolation` 在 L2/L3 注入前整块剥除。
15
- *
16
- * 合并记(2026-09-04):`sanitizeSkinCSSStrict`(lightningcss 增强过滤)连同
17
- * `sanitizeSkinCSS` 包装函数一并删除——全仓无消费方(skinScoped 只用 Basic/Report),
18
- * lightningcss 也已从依赖撤掉,@vite-ignore 兜路径没有再存在的必要。
19
- */
20
-
21
- /**
22
- * 基础正则过滤(轻量级,零依赖)
23
- */
24
- export function sanitizeSkinCSSBasic(css: string): string {
25
- if (!css) return ""
26
-
27
- let sanitized = css
28
-
29
- // 1. 移除 @import 规则
30
- sanitized = sanitized.replace(/@import[^;]+;/g, "/* blocked: @import */")
31
-
32
- // 2. 移除外部 url(),保留 data: URI
33
- sanitized = sanitized.replace(
34
- /url\s*\(\s*['"]?(?!data:)([^'")]+)['"]?\s*\)/gi,
35
- (match, url) => `/* blocked: url(${url.substring(0, 50)}...) */`,
36
- )
37
-
38
- // 3. 移除 javascript: 协议
39
- sanitized = sanitized.replace(/javascript:/gi, "blocked-js:")
40
-
41
- // 4. 移除 expression()(IE 旧语法,仍有风险)
42
- sanitized = sanitized.replace(/expression\s*\(/gi, "blocked-expr(")
43
-
44
- return sanitized
45
- }
46
-
47
- /**
48
- * 统计 CSS 中的潜在风险
49
- */
50
- export interface CSSSafetyReport {
51
- ok: boolean
52
- blockedImports: number
53
- blockedUrls: number
54
- blockedScripts: number
55
- warnings: string[]
56
- }
57
-
58
- export function analyzeSkinCSS(css: string): CSSSafetyReport {
59
- const report: CSSSafetyReport = {
60
- ok: true,
61
- blockedImports: 0,
62
- blockedUrls: 0,
63
- blockedScripts: 0,
64
- warnings: [],
65
- }
66
-
67
- // 检测 @import
68
- const imports = css.match(/@import[^;]+;/g)
69
- if (imports) {
70
- report.blockedImports = imports.length
71
- report.ok = false
72
- report.warnings.push(`检测到 ${imports.length} 个 @import 规则,已移除`)
73
- }
74
-
75
- // 检测外部 url()
76
- const urls = css.match(/url\s*\(\s*['"]?(?!data:)([^'")]+)['"]?\s*\)/gi)
77
- if (urls) {
78
- report.blockedUrls = urls.length
79
- report.ok = false
80
- report.warnings.push(`检测到 ${urls.length} 个外部 url(),已移除`)
81
- }
82
-
83
- // 检测 javascript:
84
- const scripts = css.match(/javascript:/gi)
85
- if (scripts) {
86
- report.blockedScripts = scripts.length
87
- report.ok = false
88
- report.warnings.push(`检测到 ${scripts.length} 个 javascript: 协议,已移除`)
89
- }
90
-
91
- return report
92
- }
@@ -1,159 +0,0 @@
1
- import type { OrbitworkSkin } from "../core/skin"
2
- import { parseOrbitworkSkin } from "../core/skin"
3
-
4
- /**
5
- * Export a skin to JSON file
6
- * Downloads the skin as a .ow-skin.json file
7
- */
8
- export function exportSkin(skin: OrbitworkSkin): void {
9
- const json = JSON.stringify(skin, null, 2)
10
- const blob = new Blob([json], { type: "application/json" })
11
- const url = URL.createObjectURL(blob)
12
- const a = document.createElement("a")
13
- a.href = url
14
- a.download = `${skin.id}.ow-skin.json`
15
- document.body.appendChild(a)
16
- a.click()
17
- document.body.removeChild(a)
18
- URL.revokeObjectURL(url)
19
- }
20
-
21
- /**
22
- * Import a skin from JSON file
23
- * Returns validated OrbitworkSkin or error message
24
- */
25
- export async function importSkin(file: File): Promise<{ skin?: OrbitworkSkin; error?: string }> {
26
- try {
27
- // Check file extension
28
- if (!file.name.endsWith(".ow-skin.json")) {
29
- return { error: "文件格式错误,请选择 .ow-skin.json 文件" }
30
- }
31
-
32
- // Check file size (max 1MB)
33
- if (file.size > 1024 * 1024) {
34
- return { error: "文件过大,皮肤文件不应超过 1MB" }
35
- }
36
-
37
- // Read file content
38
- const text = await file.text()
39
-
40
- // Parse JSON
41
- let data: unknown
42
- try {
43
- data = JSON.parse(text)
44
- } catch {
45
- return { error: "JSON 格式错误,无法解析" }
46
- }
47
-
48
- // Validate skin
49
- const validation = parseOrbitworkSkin(data)
50
- if (!validation.ok) {
51
- return { error: `皮肤验证失败: ${validation.error}` }
52
- }
53
-
54
- return { skin: validation.skin }
55
- } catch (error) {
56
- return {
57
- error: error instanceof Error ? error.message : "导入失败,请稍后重试",
58
- }
59
- }
60
- }
61
-
62
- /**
63
- * Import skin from URL
64
- * Fetches and validates the skin from a remote URL
65
- */
66
- export async function importSkinFromUrl(url: string): Promise<{ skin?: OrbitworkSkin; error?: string }> {
67
- try {
68
- const response = await fetch(url)
69
- if (!response.ok) {
70
- return { error: `网络请求失败: ${response.status} ${response.statusText}` }
71
- }
72
-
73
- const data = await response.json()
74
-
75
- // Validate skin
76
- const validation = parseOrbitworkSkin(data)
77
- if (!validation.ok) {
78
- return { error: `皮肤验证失败: ${validation.error}` }
79
- }
80
-
81
- return { skin: validation.skin }
82
- } catch (error) {
83
- return {
84
- error: error instanceof Error ? error.message : "导入失败,请检查 URL 是否正确",
85
- }
86
- }
87
- }
88
-
89
- /**
90
- * Share skin as data URL
91
- * Returns a data URL that can be shared via QR code or link
92
- */
93
- export function shareSkin(skin: OrbitworkSkin): string {
94
- const json = JSON.stringify(skin)
95
- const encoded = btoa(encodeURIComponent(json))
96
- return `orbitwork://skin/${encoded}`
97
- }
98
-
99
- /**
100
- * Import skin from share URL
101
- * Parses an orbitwork://skin/... URL
102
- */
103
- export function importSkinFromShareUrl(shareUrl: string): { skin?: OrbitworkSkin; error?: string } {
104
- try {
105
- if (!shareUrl.startsWith("orbitwork://skin/")) {
106
- return { error: "分享链接格式错误" }
107
- }
108
-
109
- const encoded = shareUrl.replace("orbitwork://skin/", "")
110
- const json = decodeURIComponent(atob(encoded))
111
- const data = JSON.parse(json)
112
-
113
- // Validate skin
114
- const validation = parseOrbitworkSkin(data)
115
- if (!validation.ok) {
116
- return { error: `皮肤验证失败: ${validation.error}` }
117
- }
118
-
119
- return { skin: validation.skin }
120
- } catch (error) {
121
- return {
122
- error: error instanceof Error ? error.message : "分享链接解析失败",
123
- }
124
- }
125
- }
126
-
127
- /**
128
- * Save custom skins to localStorage
129
- */
130
- export function saveCustomSkins(skins: OrbitworkSkin[]): void {
131
- try {
132
- const json = JSON.stringify(skins)
133
- window.localStorage.setItem("ow-custom-skins", json)
134
- } catch (error) {
135
- console.error("Failed to save custom skins:", error)
136
- }
137
- }
138
-
139
- /**
140
- * Load custom skins from localStorage
141
- */
142
- export function loadCustomSkins(): OrbitworkSkin[] {
143
- try {
144
- const json = window.localStorage.getItem("ow-custom-skins")
145
- if (!json) return []
146
-
147
- const data = JSON.parse(json)
148
- if (!Array.isArray(data)) return []
149
-
150
- // Validate each skin
151
- return data
152
- .map((item) => parseOrbitworkSkin(item))
153
- .filter((result) => result.ok)
154
- .map((result) => result.skin!)
155
- } catch (error) {
156
- console.error("Failed to load custom skins:", error)
157
- return []
158
- }
159
- }
@@ -1,75 +0,0 @@
1
- import { isDs2SkinDeniedToken } from "../core/skin"
2
- import type { TenantTheme } from "../core/types"
3
-
4
- /**
5
- * DS2 闸 (a):运行时 setProperty 路径与 skin 校验共用同一禁覆盖清单,
6
- * 命中即跳过并告警(COMPONENT-RULES §15)。
7
- */
8
- function setThemeProperty(root: HTMLElement, property: string, value: string): void {
9
- if (isDs2SkinDeniedToken(property)) {
10
- console.warn(`[Orbitwork Theme] ${property} 命中 DS2 禁覆盖清单,已忽略`)
11
- return
12
- }
13
- root.style.setProperty(property, value)
14
- }
15
-
16
- /**
17
- * Apply tenant theme to the document
18
- * Sets CSS custom properties on :root
19
- */
20
- /**
21
- * 落点表:租户主题能改的就是这一张。
22
- *
23
- * R2 两处修:
24
- * ① 原表头两行写 --ow-primary / --ow-primary-hover,而同文件的守门 isDs2SkinDeniedToken
25
- * 对 --ow-primary* 必定为真(DS2_SKIN_DENYLIST 含 "--ow-primary*"),这两行永远走
26
- * console.warn 后 return —— 是死代码,且每次切主题固定刷两条警告。整对删除,
27
- * TenantTheme 里的 primary 字段一并退役(留着是个应用不上的承诺)。
28
- * ② 原表落点是 --ow-bg-2/-3 与 --ow-line-2/-3(V1 梯队名,v1-naming HARD 禁项,
29
- * 且 tokens-tailwind 已不再为它们出类)。改落 DS2 语义名:面 --ow-surface/-2、
30
- * 线 --ow-border/--ow-border-strong。
31
- *
32
- * 注:本表是「租户改哪些 token」的**单一出处** —— applyTenantTheme 与 removeTenantTheme
33
- * 都从它派生,原来是两份手抄清单(删除侧照样列着那两个永远没被设上的 --ow-primary*)。
34
- */
35
- const TENANT_THEME_PROPERTIES: ReadonlyArray<[property: string, pick: (t: TenantTheme) => string]> = [
36
- ["--ow-bg", (t) => t.colors.bg],
37
- ["--ow-surface", (t) => t.colors.surface],
38
- ["--ow-surface-2", (t) => t.colors.surface2],
39
- ["--ow-text", (t) => t.colors.text],
40
- ["--ow-text-2", (t) => t.colors.text2],
41
- ["--ow-text-3", (t) => t.colors.text3],
42
- ["--ow-border", (t) => t.colors.border],
43
- ["--ow-border-strong", (t) => t.colors.borderStrong],
44
- ["--ow-font-sans", (t) => t.typography.fontSans],
45
- ["--ow-font-mono", (t) => t.typography.fontMono],
46
- ]
47
-
48
- export function applyTenantTheme(theme: TenantTheme): void {
49
- const root = document.documentElement
50
-
51
- for (const [property, pick] of TENANT_THEME_PROPERTIES) {
52
- setThemeProperty(root, property, pick(theme))
53
- }
54
-
55
- // Store theme name as data attribute for debugging
56
- root.setAttribute("data-tenant-theme", theme.name)
57
- }
58
-
59
- /**
60
- * Remove tenant theme overrides
61
- * Resets to default design tokens
62
- */
63
- export function removeTenantTheme(): void {
64
- const root = document.documentElement
65
-
66
- for (const [property] of TENANT_THEME_PROPERTIES) root.style.removeProperty(property)
67
- root.removeAttribute("data-tenant-theme")
68
- }
69
-
70
- /**
71
- * Get current tenant theme name
72
- */
73
- export function getCurrentThemeName(): string | null {
74
- return document.documentElement.getAttribute("data-tenant-theme")
75
- }
@@ -1,77 +0,0 @@
1
- import assert from "node:assert/strict"
2
- import { readFile } from "node:fs/promises"
3
- import test from "node:test"
4
-
5
- /**
6
- * W5 终扫片 15(共享 CSS 片):desktop-surfaces.css 的 cmt/评审、定时任务、浏览器、
7
- * 会话上下文面板、站点五族。断言只锁本片改掉的痕迹,防回流。
8
- */
9
- const surfaces = await readFile(new URL("../../styles/desktop-surfaces.css", import.meta.url), "utf8")
10
- /** 只看声明,不看注释——注释里逐条记着「原来是什么」,会误伤 doesNotMatch。 */
11
- const decls = surfaces.replace(/\/\*[\s\S]*?\*\//g, "")
12
-
13
- test("死码清除:批注 .cmt-* / 评审 .sa-review__* / .cr-* 三族整族退场", () => {
14
- for (const dead of [".cmt-bar", ".cmt-pop", ".cmt-hl", ".sa-review__", ".cr-item", ".cr-ck"]) {
15
- assert.ok(!decls.includes(dead), `${dead} 应已整族删除(零消费方死码)`)
16
- }
17
- })
18
-
19
- test("死码清除:.browser-toggle 手搓开关退场,开关归口 primitives/Switch", () => {
20
- assert.ok(!decls.includes(".browser-toggle"), ".browser-toggle 全族应已删除")
21
- assert.doesNotMatch(decls, /\.browser-toggle__thumb/)
22
- })
23
-
24
- test("§9 动效:.cseg__opt 时长走 --ow-dur-1,缓动唯一 --ow-ease-beacon(原 140ms + --ow-ease)", () => {
25
- assert.match(
26
- decls,
27
- /\.cseg__opt \{[^}]*transition: background var\(--ow-dur-1\) var\(--ow-ease-beacon\), color var\(--ow-dur-1\) var\(--ow-ease-beacon\)/s,
28
- )
29
- assert.doesNotMatch(decls, /140ms/)
30
- })
31
-
32
- test("§6 disabled 逐 token:.cseg__opt:disabled 不再用统一透明度", () => {
33
- assert.match(decls, /\.cseg__opt:disabled \{[^}]*color: var\(--ow-disabled-text\)/s)
34
- assert.doesNotMatch(decls, /\.cseg__opt:disabled \{[^}]*opacity/s)
35
- })
36
-
37
- // W6 曾把这枚彩色图标章由表外的 38 归到 40;A3-B3 把它整条撤了 —— 三屏页头统一换成
38
- // composite/PageHead 的「眉标/32px 大标题/说明句」,最后一处消费方(定时任务列表页)
39
- // 随之退役,全仓零渲染方。§4 也不认这枚:页头标识不是状态,不该独占一枚 info-tint 面。
40
- test("§7 / §4:.desktop-page-head__icon 彩色图标章整条退役,全仓零消费方", () => {
41
- assert.doesNotMatch(decls, /\.desktop-page-head__icon/)
42
- })
43
-
44
- test("§5 立面:.session-ctx-panel 弹层底走 --ow-popover-bg,不用地色 --ow-bg", () => {
45
- assert.match(decls, /\.session-ctx-panel \{[^}]*background: var\(--ow-popover-bg\)/s)
46
- assert.match(decls, /\.session-ctx-panel \{[^}]*box-shadow: var\(--ow-shadow-pop\)/s)
47
- })
48
-
49
- test("§5/§14 已知坑:会话上下文面板内的行 hover/press 走 pop 档", () => {
50
- assert.match(decls, /\.session-ctx-agent:hover \{ background: var\(--ow-hover-pop\); \}/)
51
- assert.match(decls, /\.session-ctx-agent:active \{ background: var\(--ow-press-pop\); \}/)
52
- assert.match(
53
- decls,
54
- /\.session-ctx-panel__artifacts \[data-slot="attachment"\]:hover \{ background: var\(--ow-hover-pop\) !important; \}/,
55
- )
56
- assert.doesNotMatch(decls, /\.session-ctx-agent:hover \{ background: var\(--ow-surface\)/)
57
- })
58
-
59
- test("§7 读数:会话上下文面板的条数计数 mono + tabular-nums", () => {
60
- assert.match(
61
- decls,
62
- /\.session-ctx-panel__count \{[^}]*var\(--ow-font-mono\);[^}]*font-variant-numeric: tabular-nums/s,
63
- )
64
- })
65
-
66
- test("§6 焦点环:.session-ctx-btn 不再抹平 focus-visible,改出三件套", () => {
67
- assert.doesNotMatch(decls, /\.session-ctx-btn:focus, \.session-ctx-btn:focus-visible \{ outline: none/)
68
- assert.match(
69
- decls,
70
- /\.session-ctx-btn:focus-visible \{ outline: var\(--ow-focus-ring-w\) solid var\(--ow-focus-ring\); outline-offset: var\(--ow-focus-ring-offset\); \}/,
71
- )
72
- })
73
-
74
- test("R2:.published-sites__state 整族退役——站点页错态归口 primitives/InlineMessage", () => {
75
- // 原断言是「去掉 V1 虚线框、错误态不带框」;错态归口原语后整族零消费方,正向翻反向。
76
- assert.doesNotMatch(decls, /\.published-sites__state[\s.:>{,]/)
77
- })
@@ -1,90 +0,0 @@
1
- import assert from "node:assert/strict"
2
- import { readFile } from "node:fs/promises"
3
- import test from "node:test"
4
-
5
- const read = (name) => readFile(new URL(`../../styles/${name}`, import.meta.url), "utf8")
6
- /** 只看声明,不看注释——这些文件的注释里逐条记着「原来是什么」,会误伤 doesNotMatch。 */
7
- const decls = (css) => css.replace(/\/\*[\s\S]*?\*\//g, "")
8
- const utilities = await read("utilities.css")
9
- const tokens = await read("tokens.css")
10
- const onboarding = await read("onboarding.css")
11
- const assistant = await read("assistant-settings.css")
12
- const pet = await read("desktop-pet.css")
13
-
14
- // W5 终扫片 12(共享 CSS 片):utilities / onboarding / assistant-settings / desktop-pet。
15
-
16
- test("§2 零裸 hex:.ow-brand-auto 的 divider/cn 四色上移 tokens.css,工具类只做主题切换", () => {
17
- assert.doesNotMatch(decls(utilities), /#[0-9A-Fa-f]{3,8}\s*;/)
18
- for (const name of [
19
- "--ow-brand-divider-light: #D8D5CC",
20
- "--ow-brand-divider-dark: var(--ow-gray-70)",
21
- "--ow-brand-cn-light: #3A3E46",
22
- "--ow-brand-cn-dark: #C9CBD1",
23
- ]) {
24
- assert.ok(tokens.includes(name), `tokens.css 缺 ${name}`)
25
- }
26
- assert.match(
27
- utilities,
28
- /\[data-theme="dark"\] \.ow-brand-auto \{[^}]*var\(--ow-brand-divider-dark\)[^}]*var\(--ow-brand-cn-dark\)/s,
29
- )
30
- })
31
-
32
- test("§7 形状:.ow-scrollbar 滑块走 --ow-radius-pill,不写 999px 裸值", () => {
33
- assert.doesNotMatch(decls(utilities), /border-radius: 999px/)
34
- assert.match(utilities, /\.ow-scrollbar::-webkit-scrollbar-thumb \{[^}]*border-radius: var\(--ow-radius-pill\)/s)
35
- })
36
-
37
- test("§7 真圆件:信标点/待命环/pending 点走 --ow-radius-pill,不再写死 50%", () => {
38
- // R2:形状表是 px 表——真圆件(正方形上 999px 与 50% 同形)一律走 token;
39
- // checkRadiusLiteral 已补 % / rem 分支,裸 50% 现在会报错。
40
- assert.match(utilities, /\.ow-beacon \{[^}]*border-radius: var\(--ow-radius-pill\)/s)
41
- assert.match(utilities, /\.ow-pending-dot \{[^}]*border-radius: var\(--ow-radius-pill\)/s)
42
- assert.doesNotMatch(utilities, /border-radius: 50%/)
43
- })
44
-
45
- /**
46
- * R2 T5b:引导层整份按原型(template 2975–2999)改写,三处旧结构随之退役——
47
- * 右上 ✕(原型脚部只有「跳过」)、三点进度(改行末 mono 「1 / 5」)、
48
- * 700/19 的标题(原型是 --ow-fs-subtitle/500)。断言跟着换口径。
49
- */
50
- test("§2/§5 引导层:不引灰阶原语,也不再有右上 ✕ 与三点进度", () => {
51
- assert.doesNotMatch(decls(onboarding), /--ow-gray-\d/)
52
- assert.doesNotMatch(onboarding, /\.onboarding-tour__close/)
53
- assert.doesNotMatch(onboarding, /\.onboarding-tour__dots/)
54
- })
55
-
56
- test("§7 引导气泡:296 宽 · padding 16 · 槽 10 · radius-lg · popover 面", () => {
57
- assert.match(onboarding, /\.onboarding-tour__card \{[^}]*width: 296px;/s)
58
- assert.match(onboarding, /\.onboarding-tour__card \{[^}]*padding: var\(--ow-space-4, 16px\);/s)
59
- assert.match(onboarding, /\.onboarding-tour__card \{[^}]*gap: 10px;/s)
60
- assert.match(onboarding, /\.onboarding-tour__card \{[^}]*border-radius: var\(--ow-radius-lg\);/s)
61
- assert.match(onboarding, /\.onboarding-tour__card \{[^}]*background: var\(--ow-popover-bg\);/s)
62
- // 计数是读数:mono + tabular-nums(§7)
63
- assert.match(onboarding, /\.onboarding-tour__count \{[^}]*var\(--ow-font-mono\)/s)
64
- assert.match(onboarding, /\.onboarding-tour__count \{[^}]*font-variant-numeric: tabular-nums;/s)
65
- })
66
-
67
- test("§3/§4:引导两层遮罩走 token,高亮环走 --ow-stage-accent(不占状态极,也不借焦点环)", () => {
68
- // 第一层:整屏 scrim;第二层:环外 9999px 挖洞,色走 --ow-navy 的 color-mix,不写裸 rgba
69
- assert.match(onboarding, /\.onboarding-tour \{[^}]*background: var\(--ow-scrim\);/s)
70
- assert.match(onboarding, /--ow-tour-veil: color-mix\(in srgb, var\(--ow-navy\) 42%, transparent\);/)
71
- assert.doesNotMatch(decls(onboarding), /rgba\(/)
72
- assert.match(onboarding, /--ow-tour-ring: var\(--ow-stage-accent\);/)
73
- assert.match(onboarding, /\.onboarding-tour__ring \{[^}]*box-shadow: 0 0 0 9999px var\(--ow-tour-veil\);/s)
74
- // 装饰环不得借焦点语义色,也不得点信标黄
75
- assert.doesNotMatch(decls(onboarding), /--ow-focus-ring\b/)
76
- assert.doesNotMatch(decls(onboarding), /--ow-beacon\b/)
77
- assert.doesNotMatch(decls(onboarding), /var\(--ow-primary[)-]/)
78
- })
79
-
80
- test("§7 形状:「已自定义」是纯文字分类标,走直角 tag 档而非 999 胶囊", () => {
81
- assert.match(assistant, /\.assistant-advanced__active \{[^}]*border-radius: var\(--ow-radius-tag\)/s)
82
- })
83
-
84
- test("§9 唯一缓动:桌宠加载骨架呼吸走 --ow-ease-beacon,无裸缓动、无 .2s/.15s/.18s 裸时长", () => {
85
- assert.doesNotMatch(decls(pet), /ease-in-out|\bease-out\b|(?<![\d.])\.\d+s\b|\b0\.\d+s\b/)
86
- // R2 归并:桌宠自带的 ow-pet-skeleton 帧与共享 ow-breathe 逐字节同体,已删帧改挂共享那一支
87
- assert.match(pet, /animation: ow-breathe var\(--ow-dur-spin\) var\(--ow-ease-beacon\) infinite/)
88
- // 退役的是「帧」不是注释里的追溯记载——按 @keyframes 规则形状断言
89
- assert.doesNotMatch(pet, /@keyframes ow-pet-skeleton\s*\{/)
90
- })
@@ -1,129 +0,0 @@
1
- import assert from "node:assert/strict"
2
- import { readFile } from "node:fs/promises"
3
- import test from "node:test"
4
-
5
- /**
6
- * 出类面(@theme inline)与守卫面必须同向。
7
- *
8
- * R2 之前它们是反的:check-ds2 按 HARD 拦 `text-ow-fg-1` / `border-ow-line-1`(v1-naming)、
9
- * `bg-ow-primary`(primary-nonpole)、`shadow-ow-shadow-1|2`(grounded-shadow)、
10
- * `disabled:opacity-disabled`(disabled),而 tokens-tailwind.css 一边照常把这些类发出去。
11
- * 「一边禁用、一边供货」的结果是:谁都能写,写了才发现被守卫拦——或者更糟,写在
12
- * 守卫扫不到的地方(apps/、screens/)就一直活着。
13
- */
14
- const theme = await readFile(new URL("../../styles/tokens-tailwind.css", import.meta.url), "utf8")
15
- const tokens = await readFile(new URL("../../styles/tokens.css", import.meta.url), "utf8")
16
-
17
- test("@theme 不再发 check-ds2 按 HARD 拦的那批类", () => {
18
- const banned = [
19
- // v1-naming:V1 梯队
20
- /--color-ow-fg-\d/,
21
- /--color-ow-fg-link\b/,
22
- /--color-ow-line-\d/,
23
- /--color-ow-bg-\d/,
24
- // primary-nonpole:行动极不做通用色档
25
- /--color-ow-primary\b/,
26
- /--color-ow-primary-/,
27
- /--color-primary\b/,
28
- // grounded-shadow:贴地零影
29
- /--shadow-ow-shadow-\d/,
30
- /--shadow-md\b/,
31
- // disabled:统一透明度禁用态
32
- /--opacity-disabled\b/,
33
- ]
34
- const hits = banned.filter((re) => re.test(theme)).map(String)
35
- assert.deepEqual(hits, [])
36
- })
37
-
38
- test("shadcn 兼容别名指向 DS2 语义名,不再挂在 V1 梯队上", () => {
39
- // globals.css 的 `@apply border-border` 与 `@apply bg-background text-foreground`
40
- // 是全库唯一消费方——这三条一错,整个应用的地、字与默认边就都是 V1 值。
41
- const expected = {
42
- "--color-background": "--ow-bg",
43
- "--color-foreground": "--ow-text",
44
- "--color-card": "--ow-surface",
45
- "--color-popover": "--ow-popover-bg",
46
- "--color-secondary": "--ow-surface-2",
47
- "--color-muted": "--ow-surface-2",
48
- "--color-accent": "--ow-surface-2",
49
- "--color-border": "--ow-border",
50
- "--color-input": "--ow-input-border",
51
- "--color-ring": "--ow-focus-ring",
52
- }
53
- for (const [key, token] of Object.entries(expected)) {
54
- assert.match(theme, new RegExp(`${key}: var\\(${token}\\);`), `${key} 应指向 ${token}`)
55
- }
56
- })
57
-
58
- // R2:--ow-focus-border 是焦点色的第三个口径(暗档 #ECEBE5,既不是 outline 版的
59
- // --ow-focus-ring #F7F6F1,也不是 box-shadow 版的环色),已随 ring 改指一并退役。
60
- test("焦点只剩一个色源:--ow-focus-ring", () => {
61
- assert.doesNotMatch(tokens, /--ow-focus-border\s*:/)
62
- assert.doesNotMatch(theme, /--color-ow-focus-border\b/)
63
- // box-shadow 版的环色必须引 --ow-focus-ring,不许另取一个色
64
- for (const m of tokens.matchAll(/--ow-focus-shadow: ([^;]+);/g)) {
65
- assert.match(m[1], /var\(--ow-focus-ring\)/, `--ow-focus-shadow 环色应引 --ow-focus-ring,实为 ${m[1]}`)
66
- }
67
- })
68
-
69
- // R2:生成器不再产出被守卫禁用的名字(禁消费就不该继续供货)。
70
- test("tokens.css 不再产出 V1 中性梯队与一批零消费死 token", () => {
71
- for (const dead of [
72
- "--ow-n-50",
73
- "--ow-n-1000",
74
- "--ow-red-500",
75
- "--ow-green-600",
76
- "--ow-error-disabled",
77
- "--ow-shadow-focus",
78
- "--ow-shadow-inset",
79
- // 注:--ow-accent-contrast 虽同为零消费,但 tokens/ds2-spec.json 有值,
80
- // 删了会变成 drift-miss(「规格有名、实现未落地」),故保留在实现里。
81
- "--ow-radius-text-btn",
82
- "--ow-radius-input",
83
- "--ow-radius-button",
84
- "--ow-opacity-disabled",
85
- "--ow-fg-link",
86
- "--ow-fg-on-dark",
87
- "--ow-font:",
88
- ]) {
89
- assert.ok(!tokens.includes(`${dead.replace(/:$/, "")}:`), `${dead} 应已删除`)
90
- }
91
- })
92
-
93
- // R2:8px 这一档原先挂了五个在用的名字(sm/action/control/input/button),
94
- // 「改按钮圆角」在树上没有唯一落点。收成两层:刻度名 + 角色名。
95
- test("圆角只剩「刻度名 + 角色名」两层", () => {
96
- for (const scale of [
97
- "--ow-radius-2xs",
98
- "--ow-radius-xs",
99
- "--ow-radius-sm",
100
- "--ow-radius-md",
101
- "--ow-radius-lg",
102
- "--ow-radius-xl",
103
- "--ow-radius-pill",
104
- ]) {
105
- assert.match(tokens, new RegExp(`${scale}:`), `刻度名 ${scale} 缺失`)
106
- }
107
- for (const role of [
108
- "--ow-radius-action",
109
- "--ow-radius-control",
110
- "--ow-radius-menu",
111
- "--ow-radius-card",
112
- "--ow-radius-modal",
113
- "--ow-radius-tag",
114
- "--ow-radius-chip",
115
- "--ow-radius-key",
116
- ]) {
117
- assert.match(tokens, new RegExp(`${role}:`), `角色名 ${role} 缺失`)
118
- }
119
- })
120
-
121
- // R2:浅档 --ow-border 曾被排在语义段之后的 legacy 别名反压(生效的是标着 deprecated 的那条),
122
- // 暗档又没有对应 legacy 段——两档结构不对称。
123
- test("tokens.css 里同一档不再重复声明 --ow-border", () => {
124
- const blocks = tokens.split(/(?=\/\* ═+ )/)
125
- for (const block of blocks) {
126
- const count = (block.match(/^\s*--ow-border:/gm) ?? []).length
127
- assert.ok(count <= 1, `同一档里 --ow-border 声明了 ${count} 次`)
128
- }
129
- })