dsh-plugin-core 0.32.0 → 0.33.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (634) hide show
  1. package/README.md +197 -64
  2. package/README.zh-CN.md +242 -0
  3. package/dist/adv/explorer/FileBrowser.d.ts +58 -0
  4. package/dist/adv/explorer/FileBrowser.d.ts.map +1 -0
  5. package/dist/adv/explorer/FileBrowser.js +632 -0
  6. package/dist/adv/explorer/FileBrowser.js.map +1 -0
  7. package/dist/adv/explorer/crumb-nav.d.ts +45 -0
  8. package/dist/adv/explorer/crumb-nav.d.ts.map +1 -0
  9. package/dist/adv/explorer/crumb-nav.js +78 -0
  10. package/dist/adv/explorer/crumb-nav.js.map +1 -0
  11. package/dist/adv/explorer/crumbs-menu.d.ts +37 -0
  12. package/dist/adv/explorer/crumbs-menu.d.ts.map +1 -0
  13. package/dist/adv/explorer/crumbs-menu.js +102 -0
  14. package/dist/adv/explorer/crumbs-menu.js.map +1 -0
  15. package/dist/adv/explorer/explorer-css.d.ts +2 -0
  16. package/dist/adv/explorer/explorer-css.d.ts.map +1 -0
  17. package/dist/adv/explorer/explorer-css.generated.d.ts +2 -0
  18. package/dist/adv/explorer/explorer-css.generated.d.ts.map +1 -0
  19. package/dist/adv/explorer/explorer-css.generated.js +4 -0
  20. package/dist/adv/explorer/explorer-css.generated.js.map +1 -0
  21. package/dist/adv/explorer/explorer-css.js +3 -0
  22. package/dist/adv/explorer/explorer-css.js.map +1 -0
  23. package/dist/adv/explorer/fs-face.d.ts +36 -0
  24. package/dist/adv/explorer/fs-face.d.ts.map +1 -0
  25. package/dist/adv/explorer/fs-face.js +74 -0
  26. package/dist/adv/explorer/fs-face.js.map +1 -0
  27. package/dist/adv/explorer/index.d.ts +6 -0
  28. package/dist/adv/explorer/index.d.ts.map +1 -0
  29. package/dist/adv/explorer/index.js +6 -0
  30. package/dist/adv/explorer/index.js.map +1 -0
  31. package/dist/adv/explorer/landing.d.ts +26 -0
  32. package/dist/adv/explorer/landing.d.ts.map +1 -0
  33. package/dist/adv/explorer/landing.js +43 -0
  34. package/dist/adv/explorer/landing.js.map +1 -0
  35. package/dist/adv/explorer/open.d.ts +137 -0
  36. package/dist/adv/explorer/open.d.ts.map +1 -0
  37. package/dist/adv/explorer/open.js +350 -0
  38. package/dist/adv/explorer/open.js.map +1 -0
  39. package/dist/adv/explorer/picker-placement.d.ts +69 -0
  40. package/dist/adv/explorer/picker-placement.d.ts.map +1 -0
  41. package/dist/adv/explorer/picker-placement.js +122 -0
  42. package/dist/adv/explorer/picker-placement.js.map +1 -0
  43. package/dist/adv/explorer/preview/BytesPreview.d.ts +12 -0
  44. package/dist/adv/explorer/preview/BytesPreview.d.ts.map +1 -0
  45. package/dist/adv/explorer/preview/BytesPreview.js +60 -0
  46. package/dist/adv/explorer/preview/BytesPreview.js.map +1 -0
  47. package/dist/adv/explorer/preview/HtmlPreview.d.ts +17 -0
  48. package/dist/adv/explorer/preview/HtmlPreview.d.ts.map +1 -0
  49. package/dist/adv/explorer/preview/HtmlPreview.js +113 -0
  50. package/dist/adv/explorer/preview/HtmlPreview.js.map +1 -0
  51. package/dist/adv/explorer/preview/OfficePreview.d.ts +12 -0
  52. package/dist/adv/explorer/preview/OfficePreview.d.ts.map +1 -0
  53. package/dist/adv/explorer/preview/OfficePreview.js +63 -0
  54. package/dist/adv/explorer/preview/OfficePreview.js.map +1 -0
  55. package/dist/adv/explorer/preview/TextPreview.d.ts +18 -0
  56. package/dist/adv/explorer/preview/TextPreview.d.ts.map +1 -0
  57. package/dist/adv/explorer/preview/TextPreview.js +122 -0
  58. package/dist/adv/explorer/preview/TextPreview.js.map +1 -0
  59. package/dist/adv/explorer/preview/index.d.ts +24 -0
  60. package/dist/adv/explorer/preview/index.d.ts.map +1 -0
  61. package/dist/adv/explorer/preview/index.js +58 -0
  62. package/dist/adv/explorer/preview/index.js.map +1 -0
  63. package/dist/adv/explorer/preview/md-labels.d.ts +3 -0
  64. package/dist/adv/explorer/preview/md-labels.d.ts.map +1 -0
  65. package/dist/adv/explorer/preview/md-labels.js +12 -0
  66. package/dist/adv/explorer/preview/md-labels.js.map +1 -0
  67. package/dist/adv/explorer/preview-title-bar.d.ts +26 -0
  68. package/dist/adv/explorer/preview-title-bar.d.ts.map +1 -0
  69. package/dist/adv/explorer/preview-title-bar.js +48 -0
  70. package/dist/adv/explorer/preview-title-bar.js.map +1 -0
  71. package/dist/adv/explorer/types.d.ts +259 -0
  72. package/dist/adv/explorer/types.d.ts.map +1 -0
  73. package/dist/adv/explorer/types.js +379 -0
  74. package/dist/adv/explorer/types.js.map +1 -0
  75. package/dist/adv/session/SessionViewModal.d.ts +37 -0
  76. package/dist/adv/session/SessionViewModal.d.ts.map +1 -0
  77. package/dist/adv/session/SessionViewModal.js +1133 -0
  78. package/dist/adv/session/SessionViewModal.js.map +1 -0
  79. package/dist/adv/session/changes.d.ts +73 -0
  80. package/dist/adv/session/changes.d.ts.map +1 -0
  81. package/dist/adv/session/changes.js +134 -0
  82. package/dist/adv/session/changes.js.map +1 -0
  83. package/dist/adv/session/faces.d.ts +244 -0
  84. package/dist/adv/session/faces.d.ts.map +1 -0
  85. package/dist/adv/session/faces.js +17 -0
  86. package/dist/adv/session/faces.js.map +1 -0
  87. package/dist/adv/session/index.d.ts +7 -0
  88. package/dist/adv/session/index.d.ts.map +1 -0
  89. package/dist/adv/session/index.js +27 -0
  90. package/dist/adv/session/index.js.map +1 -0
  91. package/dist/adv/session/mirror/AskCard.d.ts +35 -0
  92. package/dist/adv/session/mirror/AskCard.d.ts.map +1 -0
  93. package/dist/adv/session/mirror/AskCard.js +131 -0
  94. package/dist/adv/session/mirror/AskCard.js.map +1 -0
  95. package/dist/adv/session/mirror/BashRow.d.ts +14 -0
  96. package/dist/adv/session/mirror/BashRow.d.ts.map +1 -0
  97. package/dist/adv/session/mirror/BashRow.js +143 -0
  98. package/dist/adv/session/mirror/BashRow.js.map +1 -0
  99. package/dist/adv/session/mirror/ChangedFileDiff.d.ts +25 -0
  100. package/dist/adv/session/mirror/ChangedFileDiff.d.ts.map +1 -0
  101. package/dist/adv/session/mirror/ChangedFileDiff.js +178 -0
  102. package/dist/adv/session/mirror/ChangedFileDiff.js.map +1 -0
  103. package/dist/adv/session/mirror/ChangedFilesCard.d.ts +18 -0
  104. package/dist/adv/session/mirror/ChangedFilesCard.d.ts.map +1 -0
  105. package/dist/adv/session/mirror/ChangedFilesCard.js +165 -0
  106. package/dist/adv/session/mirror/ChangedFilesCard.js.map +1 -0
  107. package/dist/adv/session/mirror/ChatGroupSeat.d.ts +24 -0
  108. package/dist/adv/session/mirror/ChatGroupSeat.d.ts.map +1 -0
  109. package/dist/adv/session/mirror/ChatGroupSeat.js +135 -0
  110. package/dist/adv/session/mirror/ChatGroupSeat.js.map +1 -0
  111. package/dist/adv/session/mirror/ChatNodeSeat.d.ts +43 -0
  112. package/dist/adv/session/mirror/ChatNodeSeat.d.ts.map +1 -0
  113. package/dist/adv/session/mirror/ChatNodeSeat.js +133 -0
  114. package/dist/adv/session/mirror/ChatNodeSeat.js.map +1 -0
  115. package/dist/adv/session/mirror/ChatView.d.ts +47 -0
  116. package/dist/adv/session/mirror/ChatView.d.ts.map +1 -0
  117. package/dist/adv/session/mirror/ChatView.js +138 -0
  118. package/dist/adv/session/mirror/ChatView.js.map +1 -0
  119. package/dist/adv/session/mirror/CommandCard.d.ts +20 -0
  120. package/dist/adv/session/mirror/CommandCard.d.ts.map +1 -0
  121. package/dist/adv/session/mirror/CommandCard.js +69 -0
  122. package/dist/adv/session/mirror/CommandCard.js.map +1 -0
  123. package/dist/adv/session/mirror/ContextInjectionRow.d.ts +18 -0
  124. package/dist/adv/session/mirror/ContextInjectionRow.d.ts.map +1 -0
  125. package/dist/adv/session/mirror/ContextInjectionRow.js +50 -0
  126. package/dist/adv/session/mirror/ContextInjectionRow.js.map +1 -0
  127. package/dist/adv/session/mirror/Deliverables.d.ts +24 -0
  128. package/dist/adv/session/mirror/Deliverables.d.ts.map +1 -0
  129. package/dist/adv/session/mirror/Deliverables.js +175 -0
  130. package/dist/adv/session/mirror/Deliverables.js.map +1 -0
  131. package/dist/adv/session/mirror/GenericCommandCard.d.ts +136 -0
  132. package/dist/adv/session/mirror/GenericCommandCard.d.ts.map +1 -0
  133. package/dist/adv/session/mirror/GenericCommandCard.js +948 -0
  134. package/dist/adv/session/mirror/GenericCommandCard.js.map +1 -0
  135. package/dist/adv/session/mirror/MessageIconActions.d.ts +16 -0
  136. package/dist/adv/session/mirror/MessageIconActions.d.ts.map +1 -0
  137. package/dist/adv/session/mirror/MessageIconActions.js +69 -0
  138. package/dist/adv/session/mirror/MessageIconActions.js.map +1 -0
  139. package/dist/adv/session/mirror/MessageItem.d.ts +93 -0
  140. package/dist/adv/session/mirror/MessageItem.d.ts.map +1 -0
  141. package/dist/adv/session/mirror/MessageItem.js +194 -0
  142. package/dist/adv/session/mirror/MessageItem.js.map +1 -0
  143. package/dist/adv/session/mirror/ReasoningRow.d.ts +11 -0
  144. package/dist/adv/session/mirror/ReasoningRow.d.ts.map +1 -0
  145. package/dist/adv/session/mirror/ReasoningRow.js +111 -0
  146. package/dist/adv/session/mirror/ReasoningRow.js.map +1 -0
  147. package/dist/adv/session/mirror/RunningStatus.d.ts +12 -0
  148. package/dist/adv/session/mirror/RunningStatus.d.ts.map +1 -0
  149. package/dist/adv/session/mirror/RunningStatus.js +57 -0
  150. package/dist/adv/session/mirror/RunningStatus.js.map +1 -0
  151. package/dist/adv/session/mirror/StatDialog.d.ts +20 -0
  152. package/dist/adv/session/mirror/StatDialog.d.ts.map +1 -0
  153. package/dist/adv/session/mirror/StatDialog.js +49 -0
  154. package/dist/adv/session/mirror/StatDialog.js.map +1 -0
  155. package/dist/adv/session/mirror/ToolDetails.d.ts +65 -0
  156. package/dist/adv/session/mirror/ToolDetails.d.ts.map +1 -0
  157. package/dist/adv/session/mirror/ToolDetails.js +268 -0
  158. package/dist/adv/session/mirror/ToolDetails.js.map +1 -0
  159. package/dist/adv/session/mirror/TurnProcessNodeView.d.ts +10 -0
  160. package/dist/adv/session/mirror/TurnProcessNodeView.d.ts.map +1 -0
  161. package/dist/adv/session/mirror/TurnProcessNodeView.js +57 -0
  162. package/dist/adv/session/mirror/TurnProcessNodeView.js.map +1 -0
  163. package/dist/adv/session/mirror/TurnTailNodeView.d.ts +57 -0
  164. package/dist/adv/session/mirror/TurnTailNodeView.d.ts.map +1 -0
  165. package/dist/adv/session/mirror/TurnTailNodeView.js +106 -0
  166. package/dist/adv/session/mirror/TurnTailNodeView.js.map +1 -0
  167. package/dist/adv/session/mirror/TurnTriggerNodeView.d.ts +16 -0
  168. package/dist/adv/session/mirror/TurnTriggerNodeView.d.ts.map +1 -0
  169. package/dist/adv/session/mirror/TurnTriggerNodeView.js +103 -0
  170. package/dist/adv/session/mirror/TurnTriggerNodeView.js.map +1 -0
  171. package/dist/adv/session/mirror/TurnUsagePanel.d.ts +21 -0
  172. package/dist/adv/session/mirror/TurnUsagePanel.d.ts.map +1 -0
  173. package/dist/adv/session/mirror/TurnUsagePanel.js +41 -0
  174. package/dist/adv/session/mirror/TurnUsagePanel.js.map +1 -0
  175. package/dist/adv/session/mirror/control-details.d.ts +9 -0
  176. package/dist/adv/session/mirror/control-details.d.ts.map +1 -0
  177. package/dist/adv/session/mirror/control-details.js +549 -0
  178. package/dist/adv/session/mirror/control-details.js.map +1 -0
  179. package/dist/adv/session/mirror/detail-i18n.d.ts +4 -0
  180. package/dist/adv/session/mirror/detail-i18n.d.ts.map +1 -0
  181. package/dist/adv/session/mirror/detail-i18n.js +153 -0
  182. package/dist/adv/session/mirror/detail-i18n.js.map +1 -0
  183. package/dist/adv/session/mirror/message-chrome.d.ts +39 -0
  184. package/dist/adv/session/mirror/message-chrome.d.ts.map +1 -0
  185. package/dist/adv/session/mirror/message-chrome.js +153 -0
  186. package/dist/adv/session/mirror/message-chrome.js.map +1 -0
  187. package/dist/adv/session/mirror/process-groups.d.ts +56 -0
  188. package/dist/adv/session/mirror/process-groups.d.ts.map +1 -0
  189. package/dist/adv/session/mirror/process-groups.js +204 -0
  190. package/dist/adv/session/mirror/process-groups.js.map +1 -0
  191. package/dist/adv/session/official-classes.d.ts +28 -0
  192. package/dist/adv/session/official-classes.d.ts.map +1 -0
  193. package/dist/adv/session/official-classes.js +152 -0
  194. package/dist/adv/session/official-classes.js.map +1 -0
  195. package/dist/adv/session/open-review.d.ts +13 -0
  196. package/dist/adv/session/open-review.d.ts.map +1 -0
  197. package/dist/adv/session/open-review.js +32 -0
  198. package/dist/adv/session/open-review.js.map +1 -0
  199. package/dist/adv/session/open-session-view.d.ts +19 -0
  200. package/dist/adv/session/open-session-view.d.ts.map +1 -0
  201. package/dist/adv/session/open-session-view.js +147 -0
  202. package/dist/adv/session/open-session-view.js.map +1 -0
  203. package/dist/adv/session/pending-inputs.d.ts +33 -0
  204. package/dist/adv/session/pending-inputs.d.ts.map +1 -0
  205. package/dist/adv/session/pending-inputs.js +130 -0
  206. package/dist/adv/session/pending-inputs.js.map +1 -0
  207. package/dist/adv/session/session-css.d.ts +2 -0
  208. package/dist/adv/session/session-css.d.ts.map +1 -0
  209. package/dist/adv/session/session-css.generated.d.ts +2 -0
  210. package/dist/adv/session/session-css.generated.d.ts.map +1 -0
  211. package/dist/adv/session/session-css.generated.js +4 -0
  212. package/dist/adv/session/session-css.generated.js.map +1 -0
  213. package/dist/adv/session/session-css.js +3 -0
  214. package/dist/adv/session/session-css.js.map +1 -0
  215. package/dist/adv/session/tail-follow.d.ts +29 -0
  216. package/dist/adv/session/tail-follow.d.ts.map +1 -0
  217. package/dist/adv/session/tail-follow.js +106 -0
  218. package/dist/adv/session/tail-follow.js.map +1 -0
  219. package/dist/ui/actions/Button.d.ts +102 -0
  220. package/dist/ui/actions/Button.d.ts.map +1 -0
  221. package/dist/ui/actions/Button.js +233 -0
  222. package/dist/ui/actions/Button.js.map +1 -0
  223. package/dist/ui/actions/button-css.generated.d.ts +2 -0
  224. package/dist/ui/actions/button-css.generated.d.ts.map +1 -0
  225. package/dist/ui/actions/button-css.generated.js +4 -0
  226. package/dist/ui/actions/button-css.generated.js.map +1 -0
  227. package/dist/ui/display/Card.d.ts +65 -0
  228. package/dist/ui/display/Card.d.ts.map +1 -0
  229. package/dist/ui/display/Card.js +109 -0
  230. package/dist/ui/display/Card.js.map +1 -0
  231. package/dist/ui/display/Chip.d.ts +28 -0
  232. package/dist/ui/display/Chip.d.ts.map +1 -0
  233. package/dist/ui/display/Chip.js +36 -0
  234. package/dist/ui/display/Chip.js.map +1 -0
  235. package/dist/ui/display/CodeViewer.d.ts +38 -0
  236. package/dist/ui/display/CodeViewer.d.ts.map +1 -0
  237. package/dist/ui/display/CodeViewer.js +107 -0
  238. package/dist/ui/display/CodeViewer.js.map +1 -0
  239. package/dist/ui/display/FieldHint.d.ts +18 -0
  240. package/dist/ui/display/FieldHint.d.ts.map +1 -0
  241. package/dist/ui/display/FieldHint.js +40 -0
  242. package/dist/ui/display/FieldHint.js.map +1 -0
  243. package/dist/ui/display/FlipText.d.ts +43 -0
  244. package/dist/ui/display/FlipText.d.ts.map +1 -0
  245. package/dist/ui/display/FlipText.js +59 -0
  246. package/dist/ui/display/FlipText.js.map +1 -0
  247. package/dist/ui/display/LiveText.d.ts +13 -0
  248. package/dist/ui/display/LiveText.d.ts.map +1 -0
  249. package/dist/ui/display/LiveText.js +19 -0
  250. package/dist/ui/display/LiveText.js.map +1 -0
  251. package/dist/ui/display/MarqueeText.d.ts +22 -0
  252. package/dist/ui/display/MarqueeText.d.ts.map +1 -0
  253. package/dist/ui/display/MarqueeText.js +52 -0
  254. package/dist/ui/display/MarqueeText.js.map +1 -0
  255. package/dist/ui/display/SectionHead.d.ts +35 -0
  256. package/dist/ui/display/SectionHead.d.ts.map +1 -0
  257. package/dist/ui/display/SectionHead.js +45 -0
  258. package/dist/ui/display/SectionHead.js.map +1 -0
  259. package/dist/ui/display/Surface.d.ts +43 -0
  260. package/dist/ui/display/Surface.d.ts.map +1 -0
  261. package/dist/ui/display/Surface.js +39 -0
  262. package/dist/ui/display/Surface.js.map +1 -0
  263. package/dist/ui/display/Table.d.ts +30 -0
  264. package/dist/ui/display/Table.d.ts.map +1 -0
  265. package/dist/ui/display/Table.js +96 -0
  266. package/dist/ui/display/Table.js.map +1 -0
  267. package/dist/ui/display/card-css.d.ts +2 -0
  268. package/dist/ui/display/card-css.d.ts.map +1 -0
  269. package/dist/ui/display/card-css.generated.d.ts +2 -0
  270. package/dist/ui/display/card-css.generated.d.ts.map +1 -0
  271. package/dist/ui/display/card-css.generated.js +4 -0
  272. package/dist/ui/display/card-css.generated.js.map +1 -0
  273. package/dist/ui/display/card-css.js +5 -0
  274. package/dist/ui/display/card-css.js.map +1 -0
  275. package/dist/ui/display/chip-css.d.ts +2 -0
  276. package/dist/ui/display/chip-css.d.ts.map +1 -0
  277. package/dist/ui/display/chip-css.generated.d.ts +2 -0
  278. package/dist/ui/display/chip-css.generated.d.ts.map +1 -0
  279. package/dist/ui/display/chip-css.generated.js +4 -0
  280. package/dist/ui/display/chip-css.generated.js.map +1 -0
  281. package/dist/ui/display/chip-css.js +12 -0
  282. package/dist/ui/display/chip-css.js.map +1 -0
  283. package/dist/ui/display/code-viewer-css.d.ts +2 -0
  284. package/dist/ui/display/code-viewer-css.d.ts.map +1 -0
  285. package/dist/ui/display/code-viewer-css.generated.d.ts +2 -0
  286. package/dist/ui/display/code-viewer-css.generated.d.ts.map +1 -0
  287. package/dist/ui/display/code-viewer-css.generated.js +4 -0
  288. package/dist/ui/display/code-viewer-css.generated.js.map +1 -0
  289. package/dist/ui/display/code-viewer-css.js +3 -0
  290. package/dist/ui/display/code-viewer-css.js.map +1 -0
  291. package/dist/ui/display/code-viewer-lang.d.ts +15 -0
  292. package/dist/ui/display/code-viewer-lang.d.ts.map +1 -0
  293. package/dist/ui/display/code-viewer-lang.js +190 -0
  294. package/dist/ui/display/code-viewer-lang.js.map +1 -0
  295. package/dist/ui/display/code-viewer-theme.d.ts +5 -0
  296. package/dist/ui/display/code-viewer-theme.d.ts.map +1 -0
  297. package/dist/ui/display/code-viewer-theme.js +138 -0
  298. package/dist/ui/display/code-viewer-theme.js.map +1 -0
  299. package/dist/ui/display/flip-css.d.ts +2 -0
  300. package/dist/ui/display/flip-css.d.ts.map +1 -0
  301. package/dist/ui/display/flip-css.generated.d.ts +2 -0
  302. package/dist/ui/display/flip-css.generated.d.ts.map +1 -0
  303. package/dist/ui/display/flip-css.generated.js +4 -0
  304. package/dist/ui/display/flip-css.generated.js.map +1 -0
  305. package/dist/ui/display/flip-css.js +4 -0
  306. package/dist/ui/display/flip-css.js.map +1 -0
  307. package/dist/ui/display/hint-css.generated.d.ts +2 -0
  308. package/dist/ui/display/hint-css.generated.d.ts.map +1 -0
  309. package/dist/ui/display/hint-css.generated.js +4 -0
  310. package/dist/ui/display/hint-css.generated.js.map +1 -0
  311. package/dist/ui/display/marquee-css.d.ts +2 -0
  312. package/dist/ui/display/marquee-css.d.ts.map +1 -0
  313. package/dist/ui/display/marquee-css.generated.d.ts +2 -0
  314. package/dist/ui/display/marquee-css.generated.d.ts.map +1 -0
  315. package/dist/ui/display/marquee-css.generated.js +4 -0
  316. package/dist/ui/display/marquee-css.generated.js.map +1 -0
  317. package/dist/ui/display/marquee-css.js +4 -0
  318. package/dist/ui/display/marquee-css.js.map +1 -0
  319. package/dist/ui/display/section-head-css.generated.d.ts +2 -0
  320. package/dist/ui/display/section-head-css.generated.d.ts.map +1 -0
  321. package/dist/ui/display/section-head-css.generated.js +4 -0
  322. package/dist/ui/display/section-head-css.generated.js.map +1 -0
  323. package/dist/ui/display/surface-css.d.ts +2 -0
  324. package/dist/ui/display/surface-css.d.ts.map +1 -0
  325. package/dist/ui/display/surface-css.generated.d.ts +2 -0
  326. package/dist/ui/display/surface-css.generated.d.ts.map +1 -0
  327. package/dist/ui/display/surface-css.generated.js +4 -0
  328. package/dist/ui/display/surface-css.generated.js.map +1 -0
  329. package/dist/ui/display/surface-css.js +7 -0
  330. package/dist/ui/display/surface-css.js.map +1 -0
  331. package/dist/ui/display/table-css.generated.d.ts +2 -0
  332. package/dist/ui/display/table-css.generated.d.ts.map +1 -0
  333. package/dist/ui/display/table-css.generated.js +4 -0
  334. package/dist/ui/display/table-css.generated.js.map +1 -0
  335. package/dist/ui/display/table-logic.d.ts +110 -0
  336. package/dist/ui/display/table-logic.d.ts.map +1 -0
  337. package/dist/ui/display/table-logic.js +81 -0
  338. package/dist/ui/display/table-logic.js.map +1 -0
  339. package/dist/ui/display/table-plain-css.generated.d.ts +2 -0
  340. package/dist/ui/display/table-plain-css.generated.d.ts.map +1 -0
  341. package/dist/ui/display/table-plain-css.generated.js +4 -0
  342. package/dist/ui/display/table-plain-css.generated.js.map +1 -0
  343. package/dist/ui/display/table-shared.d.ts +101 -0
  344. package/dist/ui/display/table-shared.d.ts.map +1 -0
  345. package/dist/ui/display/table-shared.js +229 -0
  346. package/dist/ui/display/table-shared.js.map +1 -0
  347. package/dist/ui/feedback/AlertModal.d.ts +41 -0
  348. package/dist/ui/feedback/AlertModal.d.ts.map +1 -0
  349. package/dist/ui/feedback/AlertModal.js +45 -0
  350. package/dist/ui/feedback/AlertModal.js.map +1 -0
  351. package/dist/ui/feedback/ConfirmModal.d.ts +50 -0
  352. package/dist/ui/feedback/ConfirmModal.d.ts.map +1 -0
  353. package/dist/ui/feedback/ConfirmModal.js +47 -0
  354. package/dist/ui/feedback/ConfirmModal.js.map +1 -0
  355. package/dist/ui/feedback/Loader.d.ts +49 -0
  356. package/dist/ui/feedback/Loader.d.ts.map +1 -0
  357. package/dist/ui/feedback/Loader.js +79 -0
  358. package/dist/ui/feedback/Loader.js.map +1 -0
  359. package/dist/ui/feedback/LoaderBar.d.ts +38 -0
  360. package/dist/ui/feedback/LoaderBar.d.ts.map +1 -0
  361. package/dist/ui/feedback/LoaderBar.js +79 -0
  362. package/dist/ui/feedback/LoaderBar.js.map +1 -0
  363. package/dist/ui/feedback/Loading.d.ts +69 -0
  364. package/dist/ui/feedback/Loading.d.ts.map +1 -0
  365. package/dist/ui/feedback/Loading.js +164 -0
  366. package/dist/ui/feedback/Loading.js.map +1 -0
  367. package/dist/ui/feedback/Modal.d.ts +73 -0
  368. package/dist/ui/feedback/Modal.d.ts.map +1 -0
  369. package/dist/ui/feedback/Modal.js +83 -0
  370. package/dist/ui/feedback/Modal.js.map +1 -0
  371. package/dist/ui/feedback/SideSheet.d.ts +70 -0
  372. package/dist/ui/feedback/SideSheet.d.ts.map +1 -0
  373. package/dist/ui/feedback/SideSheet.js +130 -0
  374. package/dist/ui/feedback/SideSheet.js.map +1 -0
  375. package/dist/ui/feedback/Toast.d.ts +45 -0
  376. package/dist/ui/feedback/Toast.d.ts.map +1 -0
  377. package/dist/ui/feedback/Toast.js +225 -0
  378. package/dist/ui/feedback/Toast.js.map +1 -0
  379. package/dist/ui/feedback/feedback-css.d.ts +2 -0
  380. package/dist/ui/feedback/feedback-css.d.ts.map +1 -0
  381. package/dist/ui/feedback/feedback-css.generated.d.ts +2 -0
  382. package/dist/ui/feedback/feedback-css.generated.d.ts.map +1 -0
  383. package/dist/ui/feedback/feedback-css.generated.js +4 -0
  384. package/dist/ui/feedback/feedback-css.generated.js.map +1 -0
  385. package/dist/ui/feedback/feedback-css.js +4 -0
  386. package/dist/ui/feedback/feedback-css.js.map +1 -0
  387. package/dist/ui/feedback/host-toast.d.ts +23 -0
  388. package/dist/ui/feedback/host-toast.d.ts.map +1 -0
  389. package/dist/ui/feedback/host-toast.js +34 -0
  390. package/dist/ui/feedback/host-toast.js.map +1 -0
  391. package/dist/ui/feedback/loader-bar-art.d.ts +6 -0
  392. package/dist/ui/feedback/loader-bar-art.d.ts.map +1 -0
  393. package/dist/ui/feedback/loader-bar-art.js +6 -0
  394. package/dist/ui/feedback/loader-bar-art.js.map +1 -0
  395. package/dist/ui/feedback/loader-bar-css.generated.d.ts +2 -0
  396. package/dist/ui/feedback/loader-bar-css.generated.d.ts.map +1 -0
  397. package/dist/ui/feedback/loader-bar-css.generated.js +4 -0
  398. package/dist/ui/feedback/loader-bar-css.generated.js.map +1 -0
  399. package/dist/ui/feedback/loader-css.generated.d.ts +2 -0
  400. package/dist/ui/feedback/loader-css.generated.d.ts.map +1 -0
  401. package/dist/ui/feedback/loader-css.generated.js +4 -0
  402. package/dist/ui/feedback/loader-css.generated.js.map +1 -0
  403. package/dist/ui/feedback/loading-css.generated.d.ts +2 -0
  404. package/dist/ui/feedback/loading-css.generated.d.ts.map +1 -0
  405. package/dist/ui/feedback/loading-css.generated.js +4 -0
  406. package/dist/ui/feedback/loading-css.generated.js.map +1 -0
  407. package/dist/ui/feedback/loading-host.d.ts +49 -0
  408. package/dist/ui/feedback/loading-host.d.ts.map +1 -0
  409. package/dist/ui/feedback/loading-host.js +57 -0
  410. package/dist/ui/feedback/loading-host.js.map +1 -0
  411. package/dist/ui/feedback/modal-host.d.ts +51 -0
  412. package/dist/ui/feedback/modal-host.d.ts.map +1 -0
  413. package/dist/ui/feedback/modal-host.js +170 -0
  414. package/dist/ui/feedback/modal-host.js.map +1 -0
  415. package/dist/ui/feedback/side-sheet-css.d.ts +2 -0
  416. package/dist/ui/feedback/side-sheet-css.d.ts.map +1 -0
  417. package/dist/ui/feedback/side-sheet-css.generated.d.ts +2 -0
  418. package/dist/ui/feedback/side-sheet-css.generated.d.ts.map +1 -0
  419. package/dist/ui/feedback/side-sheet-css.generated.js +4 -0
  420. package/dist/ui/feedback/side-sheet-css.generated.js.map +1 -0
  421. package/dist/ui/feedback/side-sheet-css.js +2 -0
  422. package/dist/ui/feedback/side-sheet-css.js.map +1 -0
  423. package/dist/ui/feedback/toast-host.d.ts +24 -0
  424. package/dist/ui/feedback/toast-host.d.ts.map +1 -0
  425. package/dist/ui/feedback/toast-host.js +20 -0
  426. package/dist/ui/feedback/toast-host.js.map +1 -0
  427. package/dist/ui/index.d.ts +44 -44
  428. package/dist/ui/index.d.ts.map +1 -1
  429. package/dist/ui/index.js +44 -44
  430. package/dist/ui/index.js.map +1 -1
  431. package/dist/ui/infra/chevron.d.ts +22 -0
  432. package/dist/ui/infra/chevron.d.ts.map +1 -0
  433. package/dist/ui/infra/chevron.js +33 -0
  434. package/dist/ui/infra/chevron.js.map +1 -0
  435. package/dist/ui/infra/controls-css.d.ts +16 -0
  436. package/dist/ui/infra/controls-css.d.ts.map +1 -0
  437. package/dist/ui/infra/controls-css.js +26 -0
  438. package/dist/ui/infra/controls-css.js.map +1 -0
  439. package/dist/ui/infra/css.d.ts +35 -0
  440. package/dist/ui/infra/css.d.ts.map +1 -0
  441. package/dist/ui/infra/css.js +52 -0
  442. package/dist/ui/infra/css.js.map +1 -0
  443. package/dist/ui/infra/host-data.d.ts +119 -0
  444. package/dist/ui/infra/host-data.d.ts.map +1 -0
  445. package/dist/ui/infra/host-data.js +122 -0
  446. package/dist/ui/infra/host-data.js.map +1 -0
  447. package/dist/ui/infra/locale.d.ts +4 -0
  448. package/dist/ui/infra/locale.d.ts.map +1 -0
  449. package/dist/ui/infra/locale.js +17 -0
  450. package/dist/ui/infra/locale.js.map +1 -0
  451. package/dist/ui/infra/overlay-css.d.ts +2 -0
  452. package/dist/ui/infra/overlay-css.d.ts.map +1 -0
  453. package/dist/ui/infra/overlay-css.generated.d.ts +2 -0
  454. package/dist/ui/infra/overlay-css.generated.d.ts.map +1 -0
  455. package/dist/ui/infra/overlay-css.generated.js +4 -0
  456. package/dist/ui/infra/overlay-css.generated.js.map +1 -0
  457. package/dist/ui/infra/overlay-css.js +2 -0
  458. package/dist/ui/infra/overlay-css.js.map +1 -0
  459. package/dist/ui/infra/overlay.d.ts +62 -0
  460. package/dist/ui/infra/overlay.d.ts.map +1 -0
  461. package/dist/ui/infra/overlay.js +94 -0
  462. package/dist/ui/infra/overlay.js.map +1 -0
  463. package/dist/ui/infra/panel-css.d.ts +2 -0
  464. package/dist/ui/infra/panel-css.d.ts.map +1 -0
  465. package/dist/ui/infra/panel-css.generated.d.ts +2 -0
  466. package/dist/ui/infra/panel-css.generated.d.ts.map +1 -0
  467. package/dist/ui/infra/panel-css.generated.js +4 -0
  468. package/dist/ui/infra/panel-css.generated.js.map +1 -0
  469. package/dist/ui/infra/panel-css.js +2 -0
  470. package/dist/ui/infra/panel-css.js.map +1 -0
  471. package/dist/ui/infra/panel.d.ts +41 -0
  472. package/dist/ui/infra/panel.d.ts.map +1 -0
  473. package/dist/ui/infra/panel.js +37 -0
  474. package/dist/ui/infra/panel.js.map +1 -0
  475. package/dist/ui/infra/side-panel-css.d.ts +2 -0
  476. package/dist/ui/infra/side-panel-css.d.ts.map +1 -0
  477. package/dist/ui/infra/side-panel-css.generated.d.ts +2 -0
  478. package/dist/ui/infra/side-panel-css.generated.d.ts.map +1 -0
  479. package/dist/ui/infra/side-panel-css.generated.js +4 -0
  480. package/dist/ui/infra/side-panel-css.generated.js.map +1 -0
  481. package/dist/ui/infra/side-panel-css.js +2 -0
  482. package/dist/ui/infra/side-panel-css.js.map +1 -0
  483. package/dist/ui/infra/thenable.d.ts +9 -0
  484. package/dist/ui/infra/thenable.d.ts.map +1 -0
  485. package/dist/ui/infra/thenable.js +15 -0
  486. package/dist/ui/infra/thenable.js.map +1 -0
  487. package/dist/ui/infra/ticker.d.ts +8 -0
  488. package/dist/ui/infra/ticker.d.ts.map +1 -0
  489. package/dist/ui/infra/ticker.js +49 -0
  490. package/dist/ui/infra/ticker.js.map +1 -0
  491. package/dist/ui/infra/tooltip.d.ts +29 -0
  492. package/dist/ui/infra/tooltip.d.ts.map +1 -0
  493. package/dist/ui/infra/tooltip.js +10 -0
  494. package/dist/ui/infra/tooltip.js.map +1 -0
  495. package/dist/ui/inputs/Checkbox.d.ts +24 -0
  496. package/dist/ui/inputs/Checkbox.d.ts.map +1 -0
  497. package/dist/ui/inputs/Checkbox.js +35 -0
  498. package/dist/ui/inputs/Checkbox.js.map +1 -0
  499. package/dist/ui/inputs/DateTimePicker.d.ts +45 -0
  500. package/dist/ui/inputs/DateTimePicker.d.ts.map +1 -0
  501. package/dist/ui/inputs/DateTimePicker.js +462 -0
  502. package/dist/ui/inputs/DateTimePicker.js.map +1 -0
  503. package/dist/ui/inputs/Field.d.ts +125 -0
  504. package/dist/ui/inputs/Field.d.ts.map +1 -0
  505. package/dist/ui/inputs/Field.js +175 -0
  506. package/dist/ui/inputs/Field.js.map +1 -0
  507. package/dist/ui/inputs/InputGroup.d.ts +91 -0
  508. package/dist/ui/inputs/InputGroup.d.ts.map +1 -0
  509. package/dist/ui/inputs/InputGroup.js +125 -0
  510. package/dist/ui/inputs/InputGroup.js.map +1 -0
  511. package/dist/ui/inputs/ModelPicker.d.ts +48 -0
  512. package/dist/ui/inputs/ModelPicker.d.ts.map +1 -0
  513. package/dist/ui/inputs/ModelPicker.js +101 -0
  514. package/dist/ui/inputs/ModelPicker.js.map +1 -0
  515. package/dist/ui/inputs/Picker.d.ts +56 -0
  516. package/dist/ui/inputs/Picker.d.ts.map +1 -0
  517. package/dist/ui/inputs/Picker.js +244 -0
  518. package/dist/ui/inputs/Picker.js.map +1 -0
  519. package/dist/ui/inputs/Segmented.d.ts +99 -0
  520. package/dist/ui/inputs/Segmented.d.ts.map +1 -0
  521. package/dist/ui/inputs/Segmented.js +135 -0
  522. package/dist/ui/inputs/Segmented.js.map +1 -0
  523. package/dist/ui/inputs/Textarea.d.ts +36 -0
  524. package/dist/ui/inputs/Textarea.d.ts.map +1 -0
  525. package/dist/ui/inputs/Textarea.js +35 -0
  526. package/dist/ui/inputs/Textarea.js.map +1 -0
  527. package/dist/ui/inputs/WorkspacePicker.d.ts +35 -0
  528. package/dist/ui/inputs/WorkspacePicker.d.ts.map +1 -0
  529. package/dist/ui/inputs/WorkspacePicker.js +39 -0
  530. package/dist/ui/inputs/WorkspacePicker.js.map +1 -0
  531. package/dist/ui/inputs/datetime-css.generated.d.ts +2 -0
  532. package/dist/ui/inputs/datetime-css.generated.d.ts.map +1 -0
  533. package/dist/ui/inputs/datetime-css.generated.js +4 -0
  534. package/dist/ui/inputs/datetime-css.generated.js.map +1 -0
  535. package/dist/ui/inputs/datetime-logic.d.ts +102 -0
  536. package/dist/ui/inputs/datetime-logic.d.ts.map +1 -0
  537. package/dist/ui/inputs/datetime-logic.js +200 -0
  538. package/dist/ui/inputs/datetime-logic.js.map +1 -0
  539. package/dist/ui/inputs/field-css.generated.d.ts +2 -0
  540. package/dist/ui/inputs/field-css.generated.d.ts.map +1 -0
  541. package/dist/ui/inputs/field-css.generated.js +4 -0
  542. package/dist/ui/inputs/field-css.generated.js.map +1 -0
  543. package/dist/ui/inputs/input-group-css.generated.d.ts +2 -0
  544. package/dist/ui/inputs/input-group-css.generated.d.ts.map +1 -0
  545. package/dist/ui/inputs/input-group-css.generated.js +4 -0
  546. package/dist/ui/inputs/input-group-css.generated.js.map +1 -0
  547. package/dist/ui/inputs/picker-css.d.ts +2 -0
  548. package/dist/ui/inputs/picker-css.d.ts.map +1 -0
  549. package/dist/ui/inputs/picker-css.generated.d.ts +2 -0
  550. package/dist/ui/inputs/picker-css.generated.d.ts.map +1 -0
  551. package/dist/ui/inputs/picker-css.generated.js +4 -0
  552. package/dist/ui/inputs/picker-css.generated.js.map +1 -0
  553. package/dist/ui/inputs/picker-css.js +4 -0
  554. package/dist/ui/inputs/picker-css.js.map +1 -0
  555. package/dist/ui/inputs/picker-icons.d.ts +12 -0
  556. package/dist/ui/inputs/picker-icons.d.ts.map +1 -0
  557. package/dist/ui/inputs/picker-icons.js +29 -0
  558. package/dist/ui/inputs/picker-icons.js.map +1 -0
  559. package/dist/ui/inputs/picker-logic.d.ts +33 -0
  560. package/dist/ui/inputs/picker-logic.d.ts.map +1 -0
  561. package/dist/ui/inputs/picker-logic.js +68 -0
  562. package/dist/ui/inputs/picker-logic.js.map +1 -0
  563. package/dist/ui/inputs/segmented-css.generated.d.ts +2 -0
  564. package/dist/ui/inputs/segmented-css.generated.d.ts.map +1 -0
  565. package/dist/ui/inputs/segmented-css.generated.js +4 -0
  566. package/dist/ui/inputs/segmented-css.generated.js.map +1 -0
  567. package/dist/ui/layout/PanelDock.d.ts +132 -0
  568. package/dist/ui/layout/PanelDock.d.ts.map +1 -0
  569. package/dist/ui/layout/PanelDock.js +390 -0
  570. package/dist/ui/layout/PanelDock.js.map +1 -0
  571. package/dist/ui/layout/QuickToolbar.d.ts +54 -0
  572. package/dist/ui/layout/QuickToolbar.d.ts.map +1 -0
  573. package/dist/ui/layout/QuickToolbar.js +254 -0
  574. package/dist/ui/layout/QuickToolbar.js.map +1 -0
  575. package/dist/ui/layout/SplitGroup.d.ts +37 -0
  576. package/dist/ui/layout/SplitGroup.d.ts.map +1 -0
  577. package/dist/ui/layout/SplitGroup.js +36 -0
  578. package/dist/ui/layout/SplitGroup.js.map +1 -0
  579. package/dist/ui/layout/panel-dock-css.d.ts +2 -0
  580. package/dist/ui/layout/panel-dock-css.d.ts.map +1 -0
  581. package/dist/ui/layout/panel-dock-css.generated.d.ts +2 -0
  582. package/dist/ui/layout/panel-dock-css.generated.d.ts.map +1 -0
  583. package/dist/ui/layout/panel-dock-css.generated.js +4 -0
  584. package/dist/ui/layout/panel-dock-css.generated.js.map +1 -0
  585. package/dist/ui/layout/panel-dock-css.js +4 -0
  586. package/dist/ui/layout/panel-dock-css.js.map +1 -0
  587. package/dist/ui/layout/panel-dock-logic.d.ts +67 -0
  588. package/dist/ui/layout/panel-dock-logic.d.ts.map +1 -0
  589. package/dist/ui/layout/panel-dock-logic.js +110 -0
  590. package/dist/ui/layout/panel-dock-logic.js.map +1 -0
  591. package/dist/ui/layout/quick-toolbar-css.generated.d.ts +2 -0
  592. package/dist/ui/layout/quick-toolbar-css.generated.d.ts.map +1 -0
  593. package/dist/ui/layout/quick-toolbar-css.generated.js +4 -0
  594. package/dist/ui/layout/quick-toolbar-css.generated.js.map +1 -0
  595. package/dist/ui/layout/quick-toolbar-logic.d.ts +76 -0
  596. package/dist/ui/layout/quick-toolbar-logic.d.ts.map +1 -0
  597. package/dist/ui/layout/quick-toolbar-logic.js +40 -0
  598. package/dist/ui/layout/quick-toolbar-logic.js.map +1 -0
  599. package/dist/ui/layout/resizer.d.ts +29 -0
  600. package/dist/ui/layout/resizer.d.ts.map +1 -0
  601. package/dist/ui/layout/resizer.js +42 -0
  602. package/dist/ui/layout/resizer.js.map +1 -0
  603. package/dist/ui/layout/split-group-css.generated.d.ts +2 -0
  604. package/dist/ui/layout/split-group-css.generated.d.ts.map +1 -0
  605. package/dist/ui/layout/split-group-css.generated.js +4 -0
  606. package/dist/ui/layout/split-group-css.generated.js.map +1 -0
  607. package/dist/ui/navigation/Pagination.d.ts +59 -0
  608. package/dist/ui/navigation/Pagination.d.ts.map +1 -0
  609. package/dist/ui/navigation/Pagination.js +112 -0
  610. package/dist/ui/navigation/Pagination.js.map +1 -0
  611. package/dist/ui/navigation/pagination-css.generated.d.ts +2 -0
  612. package/dist/ui/navigation/pagination-css.generated.d.ts.map +1 -0
  613. package/dist/ui/navigation/pagination-css.generated.js +4 -0
  614. package/dist/ui/navigation/pagination-css.generated.js.map +1 -0
  615. package/dist/ui/navigation/pagination-logic.d.ts +36 -0
  616. package/dist/ui/navigation/pagination-logic.d.ts.map +1 -0
  617. package/dist/ui/navigation/pagination-logic.js +73 -0
  618. package/dist/ui/navigation/pagination-logic.js.map +1 -0
  619. package/dist/ui/official.js +2 -2
  620. package/dist/ui/official.js.map +1 -1
  621. package/dist/utils/i18n.d.ts +2 -2
  622. package/dist/utils/i18n.d.ts.map +1 -1
  623. package/dist/utils/i18n.js +1 -1
  624. package/dist/utils/i18n.js.map +1 -1
  625. package/docs/README.md +2 -1
  626. package/docs/design/architecture.md +9 -8
  627. package/docs/design/copywriting.md +23 -0
  628. package/docs/design/external/dsh-host.md +5 -5
  629. package/docs/design/structure.md +132 -128
  630. package/docs/design/style.md +5 -5
  631. package/docs/help/utils.doc.ts +3 -3
  632. package/docs/help/utils.md +3 -3
  633. package/docs/requirements.md +30 -290
  634. package/package.json +1 -1
@@ -0,0 +1,3 @@
1
+ // CodeViewer 样式(类名固定 dshpc-cv*;颜色吃 --dshpc-* token)。
2
+ export { CODE_VIEWER_CSS } from './code-viewer-css.generated.js';
3
+ //# sourceMappingURL=code-viewer-css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-viewer-css.js","sourceRoot":"","sources":["../../../src/ui/display/code-viewer-css.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * 源码态语法高亮:扩展名 → CodeMirror 语言映射。
3
+ *
4
+ * 移植自兄弟项目 dsh-task-dispatch-table(src/client/ui/lang.ts),仅保留本仓已引入的语言包:
5
+ * javascript/json/markdown/python/html/css/yaml + legacy-modes 长尾,避免引入新品类依赖。
6
+ * 纯函数、可单测。
7
+ */
8
+ import { Language, LanguageSupport } from '@codemirror/language';
9
+ /** 取路径的扩展名(小写,无点)。 */
10
+ export declare function extOf(path: string): string;
11
+ /** 扩展名对应的语言键;无匹配返回 null(纯文本)。 */
12
+ export declare function languageKeyForExt(ext: string): string | null;
13
+ /** 路径对应的 CodeMirror 语法扩展;未知扩展回落 null(纯文本)。 */
14
+ export declare function languageForPath(path: string): Language | LanguageSupport | null;
15
+ //# sourceMappingURL=code-viewer-lang.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-viewer-lang.d.ts","sourceRoot":"","sources":["../../../src/ui/display/code-viewer-lang.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAkB,MAAM,sBAAsB,CAAA;AAsChF,sBAAsB;AACtB,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI1C;AAED,iCAAiC;AACjC,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgD5D;AAqDD,8CAA8C;AAC9C,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,IAAI,CAU/E"}
@@ -0,0 +1,190 @@
1
+ /**
2
+ * 源码态语法高亮:扩展名 → CodeMirror 语言映射。
3
+ *
4
+ * 移植自兄弟项目 dsh-task-dispatch-table(src/client/ui/lang.ts),仅保留本仓已引入的语言包:
5
+ * javascript/json/markdown/python/html/css/yaml + legacy-modes 长尾,避免引入新品类依赖。
6
+ * 纯函数、可单测。
7
+ */
8
+ import { StreamLanguage } from '@codemirror/language';
9
+ import { javascript } from '@codemirror/lang-javascript';
10
+ import { json } from '@codemirror/lang-json';
11
+ import { markdown } from '@codemirror/lang-markdown';
12
+ import { python } from '@codemirror/lang-python';
13
+ import { html } from '@codemirror/lang-html';
14
+ import { css } from '@codemirror/lang-css';
15
+ import { yaml } from '@codemirror/lang-yaml';
16
+ import { shell } from '@codemirror/legacy-modes/mode/shell';
17
+ import { toml } from '@codemirror/legacy-modes/mode/toml';
18
+ import { nginx } from '@codemirror/legacy-modes/mode/nginx';
19
+ import { dockerFile } from '@codemirror/legacy-modes/mode/dockerfile';
20
+ import { properties } from '@codemirror/legacy-modes/mode/properties';
21
+ import { csharp, kotlin, dart, scala, objectiveCpp } from '@codemirror/legacy-modes/mode/clike';
22
+ import { swift } from '@codemirror/legacy-modes/mode/swift';
23
+ import { sCSS, less } from '@codemirror/legacy-modes/mode/css';
24
+ import { sass } from '@codemirror/legacy-modes/mode/sass';
25
+ import { stylus } from '@codemirror/legacy-modes/mode/stylus';
26
+ import { ruby } from '@codemirror/legacy-modes/mode/ruby';
27
+ import { lua } from '@codemirror/legacy-modes/mode/lua';
28
+ import { perl } from '@codemirror/legacy-modes/mode/perl';
29
+ import { r } from '@codemirror/legacy-modes/mode/r';
30
+ import { groovy } from '@codemirror/legacy-modes/mode/groovy';
31
+ import { powerShell } from '@codemirror/legacy-modes/mode/powershell';
32
+ import { diff } from '@codemirror/legacy-modes/mode/diff';
33
+ import { protobuf } from '@codemirror/legacy-modes/mode/protobuf';
34
+ import { cmake } from '@codemirror/legacy-modes/mode/cmake';
35
+ import { pug } from '@codemirror/legacy-modes/mode/pug';
36
+ import { tcl } from '@codemirror/legacy-modes/mode/tcl';
37
+ import { haskell } from '@codemirror/legacy-modes/mode/haskell';
38
+ import { clojure } from '@codemirror/legacy-modes/mode/clojure';
39
+ import { erlang } from '@codemirror/legacy-modes/mode/erlang';
40
+ import { julia } from '@codemirror/legacy-modes/mode/julia';
41
+ import { pascal } from '@codemirror/legacy-modes/mode/pascal';
42
+ import { vb } from '@codemirror/legacy-modes/mode/vb';
43
+ import { vhdl } from '@codemirror/legacy-modes/mode/vhdl';
44
+ import { stex } from '@codemirror/legacy-modes/mode/stex';
45
+ /** 取路径的扩展名(小写,无点)。 */
46
+ export function extOf(path) {
47
+ const base = path.slice(path.lastIndexOf('/') + 1);
48
+ const dot = base.lastIndexOf('.');
49
+ return dot <= 0 ? '' : base.slice(dot + 1).toLowerCase();
50
+ }
51
+ /** 扩展名对应的语言键;无匹配返回 null(纯文本)。 */
52
+ export function languageKeyForExt(ext) {
53
+ switch (ext) {
54
+ case 'js':
55
+ case 'mjs':
56
+ case 'cjs': return 'js';
57
+ case 'jsx': return 'jsx';
58
+ case 'ts':
59
+ case 'mts':
60
+ case 'cts': return 'ts';
61
+ case 'tsx': return 'tsx';
62
+ case 'json':
63
+ case 'jsonc': return 'json';
64
+ case 'md':
65
+ case 'markdown': return 'md';
66
+ case 'py':
67
+ case 'pyw': return 'python';
68
+ case 'html':
69
+ case 'htm': return 'html';
70
+ case 'css': return 'css';
71
+ case 'yaml':
72
+ case 'yml': return 'yaml';
73
+ case 'sh':
74
+ case 'bash':
75
+ case 'zsh': return 'shell';
76
+ case 'toml': return 'toml';
77
+ case 'nginx':
78
+ case 'conf': return 'nginx';
79
+ case 'dockerfile':
80
+ case 'docker': return 'dockerfile';
81
+ case 'properties':
82
+ case 'env': return 'properties';
83
+ case 'scss': return 'scss';
84
+ case 'sass': return 'sass';
85
+ case 'less': return 'less';
86
+ case 'styl': return 'stylus';
87
+ case 'rb': return 'ruby';
88
+ case 'lua': return 'lua';
89
+ case 'pl':
90
+ case 'pm': return 'perl';
91
+ case 'r': return 'r';
92
+ case 'groovy': return 'groovy';
93
+ case 'ps1':
94
+ case 'psm1': return 'powershell';
95
+ case 'diff':
96
+ case 'patch': return 'diff';
97
+ case 'proto': return 'protobuf';
98
+ case 'cmake': return 'cmake';
99
+ case 'pug': return 'pug';
100
+ case 'tcl': return 'tcl';
101
+ case 'hs': return 'haskell';
102
+ case 'clj':
103
+ case 'cljs': return 'clojure';
104
+ case 'erl': return 'erlang';
105
+ case 'jl': return 'julia';
106
+ case 'pas': return 'pascal';
107
+ case 'vb': return 'vb';
108
+ case 'vhd': return 'vhdl';
109
+ case 'tex': return 'stex';
110
+ case 'cs': return 'csharp';
111
+ case 'kt':
112
+ case 'kts': return 'kotlin';
113
+ case 'dart': return 'dart';
114
+ case 'scala':
115
+ case 'sc': return 'scala';
116
+ case 'mm': return 'objectivecpp';
117
+ case 'c':
118
+ case 'h':
119
+ case 'cc':
120
+ case 'cpp':
121
+ case 'cxx':
122
+ case 'hpp':
123
+ case 'hh':
124
+ case 'hxx': return 'cpp';
125
+ default: return null;
126
+ }
127
+ }
128
+ const FACTORIES = {
129
+ js: () => javascript({ jsx: true }),
130
+ jsx: () => javascript({ jsx: true }),
131
+ ts: () => javascript({ typescript: true }),
132
+ tsx: () => javascript({ typescript: true, jsx: true }),
133
+ json: () => json(),
134
+ md: () => markdown(),
135
+ python: () => python(),
136
+ html: () => html(),
137
+ css: () => css(),
138
+ yaml: () => yaml(),
139
+ shell: () => StreamLanguage.define(shell),
140
+ toml: () => StreamLanguage.define(toml),
141
+ nginx: () => StreamLanguage.define(nginx),
142
+ dockerfile: () => StreamLanguage.define(dockerFile),
143
+ properties: () => StreamLanguage.define(properties),
144
+ csharp: () => StreamLanguage.define(csharp),
145
+ kotlin: () => StreamLanguage.define(kotlin),
146
+ dart: () => StreamLanguage.define(dart),
147
+ scala: () => StreamLanguage.define(scala),
148
+ objectivecpp: () => StreamLanguage.define(objectiveCpp),
149
+ swift: () => StreamLanguage.define(swift),
150
+ scss: () => StreamLanguage.define(sCSS),
151
+ sass: () => StreamLanguage.define(sass),
152
+ less: () => StreamLanguage.define(less),
153
+ stylus: () => StreamLanguage.define(stylus),
154
+ ruby: () => StreamLanguage.define(ruby),
155
+ lua: () => StreamLanguage.define(lua),
156
+ perl: () => StreamLanguage.define(perl),
157
+ r: () => StreamLanguage.define(r),
158
+ groovy: () => StreamLanguage.define(groovy),
159
+ powershell: () => StreamLanguage.define(powerShell),
160
+ diff: () => StreamLanguage.define(diff),
161
+ protobuf: () => StreamLanguage.define(protobuf),
162
+ cmake: () => StreamLanguage.define(cmake),
163
+ pug: () => StreamLanguage.define(pug),
164
+ tcl: () => StreamLanguage.define(tcl),
165
+ haskell: () => StreamLanguage.define(haskell),
166
+ clojure: () => StreamLanguage.define(clojure),
167
+ erlang: () => StreamLanguage.define(erlang),
168
+ julia: () => StreamLanguage.define(julia),
169
+ pascal: () => StreamLanguage.define(pascal),
170
+ vb: () => StreamLanguage.define(vb),
171
+ vhdl: () => StreamLanguage.define(vhdl),
172
+ stex: () => StreamLanguage.define(stex),
173
+ // C/C++/Obj-C 无独立 lang 包,回落到 C 系 StreamLanguage(近似上色,纯只读渲染足够)。
174
+ cpp: () => StreamLanguage.define(csharp),
175
+ };
176
+ /** 路径对应的 CodeMirror 语法扩展;未知扩展回落 null(纯文本)。 */
177
+ export function languageForPath(path) {
178
+ const key = languageKeyForExt(extOf(path));
179
+ if (key === null)
180
+ return null;
181
+ try {
182
+ return FACTORIES[key]();
183
+ }
184
+ catch (error) {
185
+ // 单个语言工厂失败 ⇒ 退化为纯文本,绝不让查看器崩。
186
+ console.warn(`[dsh-plugin-core:code-viewer] language factory "${key}" failed:`, error);
187
+ return null;
188
+ }
189
+ }
190
+ //# sourceMappingURL=code-viewer-lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-viewer-lang.js","sourceRoot":"","sources":["../../../src/ui/display/code-viewer-lang.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { type Extension } from '@codemirror/state';
2
+ export declare const cmSurfaceTheme: Extension;
3
+ /** 返回 CodeMirror 6 主题扩展数组(表面 + 选区微调 + one-dark/one-light 语法色)。 */
4
+ export declare function codeMirrorTheme(dark: boolean): Extension[];
5
+ //# sourceMappingURL=code-viewer-theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-viewer-theme.d.ts","sourceRoot":"","sources":["../../../src/ui/display/code-viewer-theme.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAgBlD,eAAO,MAAM,cAAc,WAyBzB,CAAA;AAyFF,kEAAkE;AAClE,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CAM1D"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * CodeMirror 6 主题(DSH 共享底座版)。
3
+ *
4
+ * 移植自兄弟项目 dsh-task-dispatch-table(src/client/ui/cm-themes.ts),token 名换成
5
+ * 本仓的 --dshpc-*;语法配色沿用 one-dark / one-light 调色板(已真机验证的观感)。
6
+ * 提供:
7
+ * - cmSurfaceTheme:透明底 + 13px + 等宽字体 + 行号槽用 --dshpc-fg-3,随宿主滚动;
8
+ * - codeMirrorTheme(dark):表面主题 + 选区/激活行微调 + one-dark/one-light 语法色。
9
+ *
10
+ * ⚠️ 选区配色的硬约束:CodeMirror 把选区画成**文字底下的一层背景**,**不会**给选中文字重新上色
11
+ * ⇒ 选区色必须自己保证与语法色有对比度。旧实现给暗色用 rgba(255,255,255,.22) 半透明白 ⇒ 选区发白、
12
+ * one-dark 的浅/白字压上去直接隐身。现按官方 @codemirror/theme-one-dark 取**不透明实色**
13
+ * (暗 #3E4451 / 浅 #c8d3f0)。
14
+ */
15
+ import { HighlightStyle, syntaxHighlighting } from '@codemirror/language';
16
+ import { tags } from '@lezer/highlight';
17
+ import { EditorView } from '@codemirror/view';
18
+ const ONE_DARK = {
19
+ black: '#282c34', gray: '#abb2bf', faintGray: '#5c6370', white: '#ffffff',
20
+ red: '#e06c75', green: '#98c379', yellow: '#e5c07b', blue: '#61afef',
21
+ magenta: '#c678dd', cyan: '#56b6c2', orange: '#d19a66', link: '#56b6c2',
22
+ };
23
+ const ONE_LIGHT = {
24
+ black: '#383a42', gray: '#a0a1a7', faintGray: '#4f525e', white: '#ffffff',
25
+ red: '#e45649', green: '#50a14f', yellow: '#c18401', blue: '#0184bc',
26
+ magenta: '#a626a4', cyan: '#0997b3', orange: '#986801', link: '#4078f2',
27
+ };
28
+ // 表面层:透明底、13px、等宽字体、行号槽取 --dshpc-fg-3;不抢背景,叠在宿主面板上。
29
+ export const cmSurfaceTheme = EditorView.theme({
30
+ '&': {
31
+ height: '100%',
32
+ fontSize: '13px',
33
+ backgroundColor: 'transparent',
34
+ color: 'var(--dshpc-fg, #1f2328)',
35
+ },
36
+ '.cm-scroller': {
37
+ overflow: 'auto',
38
+ fontFamily: 'var(--dshpc-font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)',
39
+ },
40
+ '.cm-content': {
41
+ caretColor: 'var(--dshpc-fg, #1f2328)',
42
+ },
43
+ '.cm-gutters': {
44
+ backgroundColor: 'transparent',
45
+ color: 'var(--dshpc-fg-3, rgba(128,128,128,0.8))',
46
+ border: 'none',
47
+ },
48
+ '.cm-activeLine': {
49
+ backgroundColor: 'transparent',
50
+ },
51
+ '.cm-activeLineGutter': {
52
+ backgroundColor: 'transparent',
53
+ },
54
+ });
55
+ /**
56
+ * 选区色:暗 #3E4451(官方 one-dark 原值,比深底更深的实色 ⇒ 浅字压上去仍清晰)、
57
+ * 浅 #c8d3f0(one-light 同族浅底 ⇒ 深字压上去仍清晰)。一律**不透明**:半透明会让
58
+ * 选区色随宿主面板深浅漂移,对比度不可控。
59
+ */
60
+ const SELECTION_DARK = '#3E4451';
61
+ const SELECTION_LIGHT = '#c8d3f0';
62
+ function cmSurfaceTint(dark) {
63
+ return EditorView.theme({
64
+ // 选择器照抄官方 @codemirror/theme-one-dark(dist/index.js:41):
65
+ // 聚焦态选区画在 .cm-selectionLayer 里,未聚焦走 .cm-selectionBackground,
66
+ // 浏览器原生取 .cm-content ::selection —— 三条都盖住,避免任一路径漏配。
67
+ '&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection': {
68
+ backgroundColor: dark ? SELECTION_DARK : SELECTION_LIGHT,
69
+ },
70
+ });
71
+ }
72
+ const HIGHLIGHTS_DARK = [
73
+ { tag: [tags.comment, tags.lineComment, tags.blockComment], color: ONE_DARK.faintGray, fontStyle: 'italic' },
74
+ { tag: [tags.keyword, tags.modifier, tags.controlKeyword, tags.moduleKeyword], color: ONE_DARK.magenta },
75
+ { tag: [tags.operator, tags.operatorKeyword, tags.compareOperator, tags.logicOperator, tags.bitwiseOperator], color: ONE_DARK.cyan },
76
+ { tag: [tags.definitionKeyword, tags.atom], color: ONE_DARK.cyan },
77
+ { tag: [tags.number, tags.bool, tags.null, tags.escape], color: ONE_DARK.orange },
78
+ { tag: [tags.string, tags.special(tags.string), tags.regexp], color: ONE_DARK.green },
79
+ { tag: [tags.character, tags.special(tags.character)], color: ONE_DARK.orange },
80
+ { tag: [tags.propertyName], color: ONE_DARK.yellow },
81
+ // 变量名取 ivory(#abb2bf) 而非纯白:官方 one-dark 的正文色就是 ivory,纯白在深底上过曝、
82
+ // 且压在选区上对比度更差(旧值 #ffffff)。
83
+ { tag: [tags.variableName], color: ONE_DARK.gray },
84
+ { tag: [tags.function(tags.variableName), tags.function(tags.propertyName), tags.labelName], color: ONE_DARK.blue },
85
+ { tag: [tags.className, tags.typeName, tags.namespace], color: ONE_DARK.yellow },
86
+ { tag: [tags.definition(tags.typeName), tags.definition(tags.className), tags.definition(tags.namespace)], color: ONE_DARK.yellow },
87
+ { tag: [tags.tagName], color: ONE_DARK.red },
88
+ { tag: [tags.attributeName], color: ONE_DARK.yellow },
89
+ { tag: [tags.self, tags.standard(tags.variableName), tags.constant(tags.variableName)], color: ONE_DARK.orange },
90
+ { tag: [tags.punctuation, tags.separator, tags.bracket], color: ONE_DARK.gray },
91
+ { tag: [tags.squareBracket, tags.paren, tags.brace], color: ONE_DARK.gray },
92
+ { tag: [tags.meta, tags.documentMeta, tags.annotation], color: ONE_DARK.gray },
93
+ { tag: [tags.link, tags.url], color: ONE_DARK.link, fontStyle: 'underline' },
94
+ { tag: [tags.heading], color: ONE_DARK.blue, fontStyle: 'bold' },
95
+ { tag: [tags.emphasis], fontStyle: 'italic' },
96
+ { tag: [tags.strong], fontWeight: 'bold' },
97
+ { tag: [tags.strikethrough], textDecoration: 'line-through' },
98
+ { tag: [tags.monospace], color: ONE_DARK.green },
99
+ { tag: [tags.contentSeparator], color: ONE_DARK.faintGray },
100
+ { tag: [tags.invalid], color: ONE_DARK.red },
101
+ ];
102
+ const HIGHLIGHTS_LIGHT = [
103
+ { tag: [tags.comment, tags.lineComment, tags.blockComment], color: ONE_LIGHT.faintGray, fontStyle: 'italic' },
104
+ { tag: [tags.keyword, tags.modifier, tags.controlKeyword, tags.moduleKeyword], color: ONE_LIGHT.magenta },
105
+ { tag: [tags.operator, tags.operatorKeyword, tags.compareOperator, tags.logicOperator, tags.bitwiseOperator], color: ONE_LIGHT.cyan },
106
+ { tag: [tags.definitionKeyword, tags.atom], color: ONE_LIGHT.cyan },
107
+ { tag: [tags.number, tags.bool, tags.null, tags.escape], color: ONE_LIGHT.orange },
108
+ { tag: [tags.string, tags.special(tags.string), tags.regexp], color: ONE_LIGHT.green },
109
+ { tag: [tags.character, tags.special(tags.character)], color: ONE_LIGHT.orange },
110
+ { tag: [tags.propertyName], color: ONE_LIGHT.black },
111
+ { tag: [tags.variableName], color: ONE_LIGHT.black },
112
+ { tag: [tags.function(tags.variableName), tags.function(tags.propertyName), tags.labelName], color: ONE_LIGHT.blue },
113
+ { tag: [tags.className, tags.typeName, tags.namespace], color: ONE_LIGHT.yellow },
114
+ { tag: [tags.definition(tags.typeName), tags.definition(tags.className), tags.definition(tags.namespace)], color: ONE_LIGHT.yellow },
115
+ { tag: [tags.tagName], color: ONE_LIGHT.red },
116
+ { tag: [tags.attributeName], color: ONE_LIGHT.yellow },
117
+ { tag: [tags.self, tags.standard(tags.variableName), tags.constant(tags.variableName)], color: ONE_LIGHT.orange },
118
+ { tag: [tags.punctuation, tags.separator, tags.bracket], color: ONE_LIGHT.gray },
119
+ { tag: [tags.squareBracket, tags.paren, tags.brace], color: ONE_LIGHT.gray },
120
+ { tag: [tags.meta, tags.documentMeta, tags.annotation], color: ONE_LIGHT.gray },
121
+ { tag: [tags.link, tags.url], color: ONE_LIGHT.link, fontStyle: 'underline' },
122
+ { tag: [tags.heading], color: ONE_LIGHT.blue, fontStyle: 'bold' },
123
+ { tag: [tags.emphasis], fontStyle: 'italic' },
124
+ { tag: [tags.strong], fontWeight: 'bold' },
125
+ { tag: [tags.strikethrough], textDecoration: 'line-through' },
126
+ { tag: [tags.monospace], color: ONE_LIGHT.green },
127
+ { tag: [tags.contentSeparator], color: ONE_LIGHT.faintGray },
128
+ { tag: [tags.invalid], color: ONE_LIGHT.red },
129
+ ];
130
+ /** 返回 CodeMirror 6 主题扩展数组(表面 + 选区微调 + one-dark/one-light 语法色)。 */
131
+ export function codeMirrorTheme(dark) {
132
+ return [
133
+ cmSurfaceTheme,
134
+ cmSurfaceTint(dark),
135
+ syntaxHighlighting(HighlightStyle.define(dark ? HIGHLIGHTS_DARK : HIGHLIGHTS_LIGHT)),
136
+ ];
137
+ }
138
+ //# sourceMappingURL=code-viewer-theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-viewer-theme.js","sourceRoot":"","sources":["../../../src/ui/display/code-viewer-theme.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { FLIP_CSS } from './flip-css.generated.js';
2
+ //# sourceMappingURL=flip-css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flip-css.d.ts","sourceRoot":"","sources":["../../../src/ui/display/flip-css.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const FLIP_CSS = "/* \u7FFB\u724C\u6587\u672C\uFF08FlipText\uFF09\uFF1A\u4E00\u4E2A\u5355\u884C\u7A97\u53E3 + \u4E24\u5C42\u540C\u683C\u53E0\u653E\uFF0C\u6362\u5B57\u65F6\u65E7\u7684\u4E0A\u79FB\u51FA\u3001\u65B0\u7684\u4ECE\u4E0B\u8FDB\u3002\n \u6EA2\u51FA\uFF08\u4E09\u70B9\u7701\u7565 + hover \u8DD1\u9A6C\u706F\uFF09\u4E0D\u5728\u8FD9\u91CC\u505A \u2014\u2014 \u4EA4\u7ED9 MarqueeText\uFF0C\u672C\u6587\u4EF6\u53EA\u7BA1\u88C1\u526A\u4E0E\u5207\u6362\u52A8\u6548\u3002\n \u53E0\u653E\u7528 grid \u540C\u683C\u800C\u4E0D\u662F\u7EDD\u5BF9\u5B9A\u4F4D\uFF1A\u5BB9\u5668\u9AD8\u5EA6\u5929\u7136\u7B49\u4E8E\u4E00\u884C\uFF0C\u4E0D\u7528\u6D4B\u91CF\u3001\u4E5F\u4E0D\u4F9D\u8D56 lh \u5355\u4F4D\u3002 */\n.dshpc-flip{--dshpc-flip-dur:260ms;--dshpc-flip-ease:cubic-bezier(.22,.61,.36,1);display:grid;min-width:0;overflow:hidden}\n.dshpc-flip__item{grid-area:1/1;min-width:0}\n.dshpc-flip__in{animation:dshpc-flip-in var(--dshpc-flip-dur) var(--dshpc-flip-ease) both}\n.dshpc-flip__out{animation:dshpc-flip-out var(--dshpc-flip-dur) var(--dshpc-flip-ease) both}\n@keyframes dshpc-flip-in{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}\n@keyframes dshpc-flip-out{from{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}\n/* \u524D\u5EAD\u654F\u611F / \u4F4E\u6027\u80FD\u8BBE\u5907\u5173\u6389\u4F4D\u79FB\u52A8\u753B\uFF1A\u6362\u5B57\u4ECD\u5728\uFF0C\u53EA\u662F\u4E0D\u518D\u7FFB\u3002\n \u65E7\u5E27\u6CA1\u6709\u52A8\u753B\u53EF\u64AD\uFF0C\u5FC5\u987B\u81EA\u5DF1\u9690\u5F62 \u2014\u2014 \u4E24\u5C42\u540C\u683C\u53E0\u653E\uFF0C\u7559\u7740\u5C31\u91CD\u5F71\u3002 */\n@media (prefers-reduced-motion:reduce){\n .dshpc-flip__in,.dshpc-flip__out{animation:none}\n .dshpc-flip__out{opacity:0}\n}\n/* \u626B\u5149\uFF08sweep\uFF09\uFF1A\u5E38\u9A7B\u5FAA\u73AF\uFF0C\u505C\u5728\u539F\u5730\u7684\u63D0\u793A\u4E5F\u770B\u5F97\u51FA\u5728\u52A8\u3002\u5F00\u5173\u9ED8\u8BA4\u5173\uFF0C\u5F39\u7A97 / \u62BD\u5C49\u5E95\u680F\u9ED8\u8BA4\u5F00\u3002\n \u5149\u5FC5\u987B\u53EA\u843D\u5728\u5B57\u4E0A\uFF1A\u76D6\u4E00\u5C42\u534A\u900F\u660E\u5149\u5E26\u7684\u8BDD\uFF0Cnotice \u662F flex:1 \u6491\u5F00\u7684\u5BBD\u5BB9\u5668\uFF0C\u53F3\u4FA7\u5927\u7247\u7A7A\u767D\n \u91CC\u4F1A\u51FA\u73B0\u4E00\u6761\u767D\u5149\u5728\u626B\u3002\u6545\u628A\u5149\u505A\u6210\u6587\u5B57\u81EA\u5DF1\u7684 background + background-clip:text \u88C1\u5230\u5B57\u5F62\uFF1B\n \u57FA\u8272\u53D6 currentColor \u21D2 \u8C03\u7528\u65B9\u6362\u5B57\u8272\u4E5F\u8DDF\u7740\u8D70\uFF0C\u4E0D\u9700\u8981\u77E5\u9053\u6587\u5B57\u5BBD\u5EA6\u3002 */\n.dshpc-flip--sweep .dshpc-mq-in{\n background-image:linear-gradient(105deg,currentColor 0,currentColor 47%,color-mix(in srgb,var(--dshpc-on-signal) 70%,currentColor) 50%,currentColor 53%,currentColor 100%);\n background-size:300% 100%;background-repeat:no-repeat;\n background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;\n animation:dshpc-flip-sweep 1.5s linear infinite;\n}\n/* 1.5s \u4E00\u8F6E\uFF1A\u524D 40% \u626B\u5B8C\uFF0C\u5176\u4F59\u505C\u5728\u89C6\u91CE\u5916\u4F11\u606F \u2014\u2014 \u4E00\u76F4\u626B\u4F1A\u6643\u773C\uFF0C\u95F4\u6B47\u624D\u50CF\u300C\u8FD8\u5728\u5E72\u6D3B\u300D\u3002 */\n@keyframes dshpc-flip-sweep{0%{background-position:100% 0}40%,100%{background-position:0 0}}\n@media (prefers-reduced-motion:reduce){\n .dshpc-flip--sweep .dshpc-mq-in{animation:none;background-image:none;-webkit-text-fill-color:currentColor}\n}\n";
2
+ //# sourceMappingURL=flip-css.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flip-css.generated.d.ts","sourceRoot":"","sources":["../../../src/ui/display/flip-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,06GAA21D,CAAA"}
@@ -0,0 +1,4 @@
1
+ // ⚠️ 生成物,勿手改。真源 = src/ui/display/flip.css
2
+ // 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
3
+ export const FLIP_CSS = "/* 翻牌文本(FlipText):一个单行窗口 + 两层同格叠放,换字时旧的上移出、新的从下进。\n 溢出(三点省略 + hover 跑马灯)不在这里做 —— 交给 MarqueeText,本文件只管裁剪与切换动效。\n 叠放用 grid 同格而不是绝对定位:容器高度天然等于一行,不用测量、也不依赖 lh 单位。 */\n.dshpc-flip{--dshpc-flip-dur:260ms;--dshpc-flip-ease:cubic-bezier(.22,.61,.36,1);display:grid;min-width:0;overflow:hidden}\n.dshpc-flip__item{grid-area:1/1;min-width:0}\n.dshpc-flip__in{animation:dshpc-flip-in var(--dshpc-flip-dur) var(--dshpc-flip-ease) both}\n.dshpc-flip__out{animation:dshpc-flip-out var(--dshpc-flip-dur) var(--dshpc-flip-ease) both}\n@keyframes dshpc-flip-in{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}\n@keyframes dshpc-flip-out{from{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}\n/* 前庭敏感 / 低性能设备关掉位移动画:换字仍在,只是不再翻。\n 旧帧没有动画可播,必须自己隐形 —— 两层同格叠放,留着就重影。 */\n@media (prefers-reduced-motion:reduce){\n .dshpc-flip__in,.dshpc-flip__out{animation:none}\n .dshpc-flip__out{opacity:0}\n}\n/* 扫光(sweep):常驻循环,停在原地的提示也看得出在动。开关默认关,弹窗 / 抽屉底栏默认开。\n 光必须只落在字上:盖一层半透明光带的话,notice 是 flex:1 撑开的宽容器,右侧大片空白\n 里会出现一条白光在扫。故把光做成文字自己的 background + background-clip:text 裁到字形;\n 基色取 currentColor ⇒ 调用方换字色也跟着走,不需要知道文字宽度。 */\n.dshpc-flip--sweep .dshpc-mq-in{\n background-image:linear-gradient(105deg,currentColor 0,currentColor 47%,color-mix(in srgb,var(--dshpc-on-signal) 70%,currentColor) 50%,currentColor 53%,currentColor 100%);\n background-size:300% 100%;background-repeat:no-repeat;\n background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;\n animation:dshpc-flip-sweep 1.5s linear infinite;\n}\n/* 1.5s 一轮:前 40% 扫完,其余停在视野外休息 —— 一直扫会晃眼,间歇才像「还在干活」。 */\n@keyframes dshpc-flip-sweep{0%{background-position:100% 0}40%,100%{background-position:0 0}}\n@media (prefers-reduced-motion:reduce){\n .dshpc-flip--sweep .dshpc-mq-in{animation:none;background-image:none;-webkit-text-fill-color:currentColor}\n}\n";
4
+ //# sourceMappingURL=flip-css.generated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flip-css.generated.js","sourceRoot":"","sources":["../../../src/ui/display/flip-css.generated.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,qEAAqE;AACrE,MAAM,CAAC,MAAM,QAAQ,GAAG,w1DAAw1D,CAAA"}
@@ -0,0 +1,4 @@
1
+ // 翻牌文本(FlipText)样式。
2
+ // 类名与变量统一 dshpc 前缀。
3
+ export { FLIP_CSS } from './flip-css.generated.js';
4
+ //# sourceMappingURL=flip-css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flip-css.js","sourceRoot":"","sources":["../../../src/ui/display/flip-css.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,oBAAoB;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const HINT_CSS = "\n/* \u2500\u2500 \u95EE\u53F7\u63D0\u793A P4\uFF08\u7528\u6237 2026-10-18\uFF1A\u5BF9\u9F50\u771F\u5B9E\u63D2\u4EF6 HelpButton\u2014\u2014**\u5E26\u5708\u7684\u95EE\u53F7\u56FE\u6807**\uFF09\u2500\u2500\n \u672C\u4F53 14px \u7EC6\u5708 + \u5708\u5185 ?\uFF0C\u989C\u8272 fg-3\u3001hover \u53EA\u63D0\u4EAE\u4E0D\u52A0\u5E95\uFF08\u4E0E dshpc-ed-help \u540C\u89C4\u77E9\uFF09\u3002\n \u6C14\u6CE1\u4E0D\u5728\u672C\u6587\u4EF6\uFF1A2026-10-19 \u7528\u6237\u62CD\u677F\u300C\u95EE\u53F7\u5FC5\u987B\u7528\u5B98\u65B9 Tooltip \u90A3\u4E00\u4E2A\u300D\u21D2 \u6C14\u6CE1\u7531\u6CE8\u5165\u7684\n \u5B98\u65B9\u7EC4\u4EF6\u6E32\u67D3\uFF08src/ui/tooltip.ts\uFF09\uFF0C\u8FD9\u91CC\u53EA\u7BA1\u95EE\u53F7\u56FE\u6807\u672C\u8EAB\u3002 */\n.dshpc-hint{display:inline-flex;align-items:center;justify-content:center;flex:none;\n box-sizing:border-box;width:14px;height:14px;padding:0;border:1px solid currentColor;border-radius:50%;background:transparent;\n color:var(--dshpc-fg-3);font-family:inherit;font-size:8px;font-weight:600;line-height:12px;cursor:help;vertical-align:middle;\n transition:color var(--dshpc-dur-fast) var(--dshpc-ease);}\n.dshpc-hint:hover,.dshpc-hint:focus-visible{color:var(--dshpc-fg);background:0 0;}\n.dshpc-hint:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px;}\n";
2
+ //# sourceMappingURL=hint-css.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hint-css.generated.d.ts","sourceRoot":"","sources":["../../../src/ui/display/hint-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,2yCAA6yB,CAAA"}
@@ -0,0 +1,4 @@
1
+ // ⚠️ 生成物,勿手改。真源 = src/ui/display/hint.css
2
+ // 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
3
+ export const HINT_CSS = "\n/* ── 问号提示 P4(用户 2026-10-18:对齐真实插件 HelpButton——**带圈的问号图标**)──\n 本体 14px 细圈 + 圈内 ?,颜色 fg-3、hover 只提亮不加底(与 dshpc-ed-help 同规矩)。\n 气泡不在本文件:2026-10-19 用户拍板「问号必须用官方 Tooltip 那一个」⇒ 气泡由注入的\n 官方组件渲染(src/ui/tooltip.ts),这里只管问号图标本身。 */\n.dshpc-hint{display:inline-flex;align-items:center;justify-content:center;flex:none;\n box-sizing:border-box;width:14px;height:14px;padding:0;border:1px solid currentColor;border-radius:50%;background:transparent;\n color:var(--dshpc-fg-3);font-family:inherit;font-size:8px;font-weight:600;line-height:12px;cursor:help;vertical-align:middle;\n transition:color var(--dshpc-dur-fast) var(--dshpc-ease);}\n.dshpc-hint:hover,.dshpc-hint:focus-visible{color:var(--dshpc-fg);background:0 0;}\n.dshpc-hint:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px;}\n";
4
+ //# sourceMappingURL=hint-css.generated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hint-css.generated.js","sourceRoot":"","sources":["../../../src/ui/display/hint-css.generated.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,qEAAqE;AACrE,MAAM,CAAC,MAAM,QAAQ,GAAG,0yBAA0yB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { MARQUEE_CSS } from './marquee-css.generated.js';
2
+ //# sourceMappingURL=marquee-css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee-css.d.ts","sourceRoot":"","sources":["../../../src/ui/display/marquee-css.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const MARQUEE_CSS = "/* \u8DD1\u9A6C\u706F\uFF08MarqueeText\uFF09\uFF1A\u53CC\u5C42\u2014\u2014\u5916\u5C42\u53EA\u88C1\u526A\uFF0C\u5185\u5C42\u624D transform \u6EDA\u52A8\uFF1B\u975E hover \u5185\u5C42\u81EA\u5E26\u7701\u7565\u53F7\u3002\n 2026-10-20\uFF1A\u672C\u6587\u4EF6\u539F\u662F\u6742\u70E9\u300Cselect.css\u300D\uFF08\u4E0B\u62C9 / \u65E5\u5386 / \u65F6\u5206\u7684\u76AE\u80A4\u90FD\u88C5\u8FC7\uFF09\uFF0C\u968F\u7740\u90A3\u4E9B\u63A7\u4EF6\n \u4E00\u4E2A\u4E2A\u5220\u5B8C\uFF0C\u6700\u540E\u53EA\u5269\u8DD1\u9A6C\u706F\uFF0C\u6545\u6309\u672C\u5305\u300C\u4E00\u4E2A css \u670D\u52A1\u4E00\u4E2A\u5BF9\u8C61\u300D\u7684\u683C\u5C40\u6539\u540D\u5F52\u6863\u3002\n \u540C\u6279\u6E05\u6389\u7684\u8FD8\u6709\u96F6\u5F15\u7528\u7684\u7701\u7565\u53F7\u7C7B .dshpc-ellipsis \u2014\u2014 \u672C\u5305\u4E09\u4E2A\u7528\u5230\u622A\u65AD\u7684\u5730\u65B9\u90FD\u6CA1\u91C7\u7EB3\u5B83\u3002 */\n.dshpc-mq{display:block;overflow:hidden;white-space:nowrap;}\n.dshpc-mq .dshpc-mq-in{display:inline-block;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:top;}\n/* \u26A0\uFE0F \u8DD1\u6CD5\uFF08\u7528\u6237 2026-10-03 \u62CD\u677F\uFF09\uFF1A**\u8DD1\u4E00\u904D\u3001\u505C\u5728\u5C3E\u5B57**\uFF08\u64AD\u653E 1 \u6B21 + forwards\uFF09\uFF0C\u4E0D\u6765\u56DE\u5F39\u3001\u4E0D\u65E0\u9650\u8DD1\u3002\n \u6EDA\u8DDD = \u7CBE\u786E\u6EA2\u51FA\u91CF \u21D2 \u505C\u4E0B\u65F6\u6700\u540E\u4E00\u4E2A\u5B57\u6B63\u597D\u8D34\u53F3\u7F18\uFF0C**\u4E0D\u4F1A\u8DD1\u8FDB\u9ED1\u5757**\uFF08\u9ED1\u5757\u662F\u65E7\u624B\u5199\u7248\u628A\n \u5185\u5C42\u76D2\u5B50\u88C1\u4E86\u3001\u6309\u300C\u534A\u622A\u6587\u672C\u300D\u5E73\u79FB\u5BFC\u81F4\u7684\uFF09\u3002\u9F20\u6807\u79FB\u5F00 \u21D2 :hover \u5931\u6548 \u21D2 \u81EA\u52A8\u590D\u4F4D\u56DE\u7701\u7565\u53F7\u6001\u3002 */\n.dshpc-mq-run:hover .dshpc-mq-in{max-width:none;overflow:visible;animation:dshpc-mq-scroll var(--dshpc-mq-dur,6s) linear .4s 1 forwards;}\n@keyframes dshpc-mq-scroll{from{transform:translateX(0)}to{transform:translateX(var(--dshpc-mq-dist,-40px))}}\n/* \u6EA2\u51FA\u6E10\u5F71\uFF08\u7528\u6237 2026-10-24 \u62CD\u677F\u300C\u5DE6\u53F3\u7A0D\u5FAE\u6709\u70B9\u6E10\u5F71\u300D\uFF1B\u5B98\u65B9\u53E3\u5F84 = dsh-client-ui-primitives@0.2.1-rc.2\n PathLabel.module.css:13-15\uFF1Amask-image \u7EBF\u6027\u6E10\u9690 + 28px \u968F\u5B98\u65B9\uFF09\u3002\u26A0\uFE0F \u53EA\u5728 **hover \u6EDA\u52A8\u6001** \u52A0\uFF1A\n \u9759\u6001\u6001\uFF08\u4E09\u4E2A\u70B9\uFF09\u4E0D\u8981\u6E10\u5F71\uFF08\u7528\u6237 2026-10-24 \u4E8C\u6B21\u62CD\u677F\uFF09\uFF0Chover \u6EDA\u52A8\u65F6\u4E24\u7AEF\u6E10\u5F71\u2014\u2014\u5DE6\u7F18\u67D4\u5316\u88AB\u88C1\u7684\u6587\u5B57\u5934\u3002 */\n/* token-ok\uFF1A\u906E\u7F69\u6A21\u677F\u8272\uFF08\u7EAF\u9ED1 = \u5B8C\u5168\u4E0D\u900F\u660E\uFF09\uFF0C\u4E0D\u662F\u4E3B\u9898\u8272\uFF1B\u6362\u4E3B\u9898\u4E5F\u4E0D\u8BE5\u53D8\u3002 */\n.dshpc-mq-run:hover{mask-image:linear-gradient(to right, transparent, #000 28px, #000 calc(100% - 28px), transparent);}\n";
2
+ //# sourceMappingURL=marquee-css.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee-css.generated.d.ts","sourceRoot":"","sources":["../../../src/ui/display/marquee-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,4+FAAmvC,CAAA"}
@@ -0,0 +1,4 @@
1
+ // ⚠️ 生成物,勿手改。真源 = src/ui/display/marquee.css
2
+ // 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
3
+ export const MARQUEE_CSS = "/* 跑马灯(MarqueeText):双层——外层只裁剪,内层才 transform 滚动;非 hover 内层自带省略号。\n 2026-10-20:本文件原是杂烩「select.css」(下拉 / 日历 / 时分的皮肤都装过),随着那些控件\n 一个个删完,最后只剩跑马灯,故按本包「一个 css 服务一个对象」的格局改名归档。\n 同批清掉的还有零引用的省略号类 .dshpc-ellipsis —— 本包三个用到截断的地方都没采纳它。 */\n.dshpc-mq{display:block;overflow:hidden;white-space:nowrap;}\n.dshpc-mq .dshpc-mq-in{display:inline-block;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:top;}\n/* ⚠️ 跑法(用户 2026-10-03 拍板):**跑一遍、停在尾字**(播放 1 次 + forwards),不来回弹、不无限跑。\n 滚距 = 精确溢出量 ⇒ 停下时最后一个字正好贴右缘,**不会跑进黑块**(黑块是旧手写版把\n 内层盒子裁了、按「半截文本」平移导致的)。鼠标移开 ⇒ :hover 失效 ⇒ 自动复位回省略号态。 */\n.dshpc-mq-run:hover .dshpc-mq-in{max-width:none;overflow:visible;animation:dshpc-mq-scroll var(--dshpc-mq-dur,6s) linear .4s 1 forwards;}\n@keyframes dshpc-mq-scroll{from{transform:translateX(0)}to{transform:translateX(var(--dshpc-mq-dist,-40px))}}\n/* 溢出渐影(用户 2026-10-24 拍板「左右稍微有点渐影」;官方口径 = dsh-client-ui-primitives@0.2.1-rc.2\n PathLabel.module.css:13-15:mask-image 线性渐隐 + 28px 随官方)。⚠️ 只在 **hover 滚动态** 加:\n 静态态(三个点)不要渐影(用户 2026-10-24 二次拍板),hover 滚动时两端渐影——左缘柔化被裁的文字头。 */\n/* token-ok:遮罩模板色(纯黑 = 完全不透明),不是主题色;换主题也不该变。 */\n.dshpc-mq-run:hover{mask-image:linear-gradient(to right, transparent, #000 28px, #000 calc(100% - 28px), transparent);}\n";
4
+ //# sourceMappingURL=marquee-css.generated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee-css.generated.js","sourceRoot":"","sources":["../../../src/ui/display/marquee-css.generated.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qEAAqE;AACrE,MAAM,CAAC,MAAM,WAAW,GAAG,gvCAAgvC,CAAA"}
@@ -0,0 +1,4 @@
1
+ // 跑马灯(MarqueeText)样式。
2
+ // 类名与变量统一 dshpc 前缀。
3
+ export { MARQUEE_CSS } from './marquee-css.generated.js';
4
+ //# sourceMappingURL=marquee-css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee-css.js","sourceRoot":"","sources":["../../../src/ui/display/marquee-css.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,oBAAoB;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const SECTION_HEAD_CSS = "/* \u5206\u533A\u6807\u9898\u884C\uFF1A\u6807\u7B7E\uFF08\u53EF\u9009\uFF0C\u753B\u51FA\u6765\u7684\u77ED\u7AD6\u7EBF\uFF09/ icon + \u6807\u9898 + \u53F3\u4FA7\u63A7\u4EF6\u3002 */\n.dshpc-section-head{display:flex;align-items:center;gap:var(--dshpc-space-2);\n margin-bottom:var(--dshpc-space-3);}\n.dshpc-section-head--flush{margin-bottom:0;}\n\n.dshpc-section-head__bar{flex:none;width:4px;height:1em;border-radius:999px;\n font-size:var(--dshpc-font-lg);background:var(--dshpc-fg-2);}\n\n.dshpc-section-head__icon{display:inline-flex;align-items:center;flex:none;\n line-height:var(--dshpc-line-lg);color:var(--dshpc-fg-3);}\n\n.dshpc-section-head__title{font-size:var(--dshpc-font-lg);line-height:var(--dshpc-line-lg);\n font-weight:600;color:var(--dshpc-fg);flex:none;}\n\n.dshpc-section-head__right{flex:1;display:flex;align-items:center;\n justify-content:flex-end;gap:var(--dshpc-space-2);min-width:0;}\n";
2
+ //# sourceMappingURL=section-head-css.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"section-head-css.generated.d.ts","sourceRoot":"","sources":["../../../src/ui/display/section-head-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,25BAAoxB,CAAA"}
@@ -0,0 +1,4 @@
1
+ // ⚠️ 生成物,勿手改。真源 = src/ui/display/section-head.css
2
+ // 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
3
+ export const SECTION_HEAD_CSS = "/* 分区标题行:标签(可选,画出来的短竖线)/ icon + 标题 + 右侧控件。 */\n.dshpc-section-head{display:flex;align-items:center;gap:var(--dshpc-space-2);\n margin-bottom:var(--dshpc-space-3);}\n.dshpc-section-head--flush{margin-bottom:0;}\n\n.dshpc-section-head__bar{flex:none;width:4px;height:1em;border-radius:999px;\n font-size:var(--dshpc-font-lg);background:var(--dshpc-fg-2);}\n\n.dshpc-section-head__icon{display:inline-flex;align-items:center;flex:none;\n line-height:var(--dshpc-line-lg);color:var(--dshpc-fg-3);}\n\n.dshpc-section-head__title{font-size:var(--dshpc-font-lg);line-height:var(--dshpc-line-lg);\n font-weight:600;color:var(--dshpc-fg);flex:none;}\n\n.dshpc-section-head__right{flex:1;display:flex;align-items:center;\n justify-content:flex-end;gap:var(--dshpc-space-2);min-width:0;}\n";
4
+ //# sourceMappingURL=section-head-css.generated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"section-head-css.generated.js","sourceRoot":"","sources":["../../../src/ui/display/section-head-css.generated.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,qEAAqE;AACrE,MAAM,CAAC,MAAM,gBAAgB,GAAG,ixBAAixB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { SURFACE_CSS } from './surface-css.generated.js';
2
+ //# sourceMappingURL=surface-css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surface-css.d.ts","sourceRoot":"","sources":["../../../src/ui/display/surface-css.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const SURFACE_CSS = "\n/* \u2500\u2500 Surface \u00B7 \u7EAF\u6846\u5BB9\u5668 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n \u53EA\u56DE\u7B54\u300C\u4E00\u5757\u9762\u957F\u4EC0\u4E48\u6837\u300D\uFF1A\u5E95 / \u8FB9 / \u5706\u89D2 / \u5185\u8DDD\uFF0C\u56DB\u6839\u8F74\uFF0C\u96F6\u4E1A\u52A1\u8BED\u4E49\u3002\n \u5B83\u662F**\u5706\u89D2\u5951\u7EA6\u7684\u552F\u4E00\u771F\u6E90**\uFF1A\u5BB9\u5668\u6863 = --dshpc-radius-md(12)\uFF0C\u4E0E Button / Input \u540C\u6863\uFF0C\n \u5916\u6846\u6C38\u8FDC\u4E0D\u5C0F\u4E8E\u91CC\u9762\u7684\u63A7\u4EF6 \u2014\u2014 \u675C\u7EDD\u300C\u5361\u7247 8 < \u6309\u94AE 12\u300D\u8FD9\u7C7B\u5012\u6302\uFF082026-11-01\uFF09\u3002\n\n \u6240\u6709\u8F74\u90FD\u7528**\u53D8\u91CF**\u8868\u8FBE\uFF0C\u4FEE\u9970\u7C7B\u53EA\u6539\u8FD9\u4E9B\u53D8\u91CF\u3001\u4E0D\u6539\u5C5E\u6027\uFF1A\n \u6D88\u8D39\u65B9\uFF08Card\u3001\u4E0B\u6E38\u63D2\u4EF6\uFF09\u81EA\u5DF1\u5199\u89C4\u5219\u65F6\uFF0C\u65E0\u8BBA\u4E24\u4EFD CSS \u8C01\u5148\u6CE8\u5165\uFF0C\u80DC\u8D1F\u90FD\u4E0D\u4F9D\u8D56\u987A\u5E8F\u3002\n\n tone plain(\u9ED8\u8BA4 surface-1) / raised / sunken / subtle\n border \u9ED8\u8BA4 1px \u5B9E\u7EBF\uFF1Bfaint \u66F4\u6DE1\uFF1Bnone \u900F\u660E\uFF08\u4FDD\u7559 1px \u5360\u4F4D\uFF0C\u4E0D\u8DF3\u9AD8\uFF09\uFF1B\n dashed \u865A\u7EBF\uFF08\u5360\u4F4D\u6846\u7528\uFF0C\u7EBF\u8272\u4ECD\u662F border token\uFF09\n radius \u9ED8\u8BA4 md\uFF1Bnone / sm / lg\n padding \u9ED8\u8BA4\u7531\u8C03\u7528\u65B9\u9009\u6863\uFF1Bnone / sm(8) / md(12) / lg(16)\n \u57FA\u7C7B\u4E0D\u5E26\u5185\u8DDD\uFF1A\u5BB9\u5668\u8981\u81EA\u5DF1\u7B97\u56DB\u8FB9\u5185\u8DDD\u65F6\uFF08\u5982 Card \u7684\u8272\u6761\u8D34\u8FB9\uFF09\uFF0C\u4E0D\u4F20 pad \u6863\u5373\u53EF\uFF0C\u4E0D\u9700\u8981\u8986\u76D6\u3002 */\n.dshpc-surface{\n position:relative;box-sizing:border-box;color:var(--dshpc-fg);font:inherit;text-align:left;\n --surface-bg:var(--dshpc-surface-1);\n --surface-border:var(--dshpc-border);\n --surface-border-style:solid;\n --surface-radius:var(--dshpc-radius-md);\n --surface-pad:0;\n border:1px var(--surface-border-style) var(--surface-border);\n border-radius:var(--surface-radius);\n background:var(--surface-bg);\n padding:var(--surface-pad);\n}\n.dshpc-surface--tone-raised{--surface-bg:var(--dshpc-surface-raised)}\n.dshpc-surface--tone-sunken{--surface-bg:var(--dshpc-surface-sunken)}\n.dshpc-surface--tone-subtle{--surface-bg:var(--dshpc-chip-bg)}\n.dshpc-surface--border-faint{--surface-border:var(--dshpc-border-faint)}\n.dshpc-surface--border-none{--surface-border:transparent}\n.dshpc-surface--border-dashed{--surface-border-style:dashed}\n.dshpc-surface--radius-none{--surface-radius:0}\n.dshpc-surface--radius-sm{--surface-radius:var(--dshpc-radius-sm)}\n.dshpc-surface--radius-lg{--surface-radius:var(--dshpc-radius-lg)}\n.dshpc-surface--pad-none{--surface-pad:0}\n.dshpc-surface--pad-sm{--surface-pad:var(--dshpc-space-2)}\n.dshpc-surface--pad-md{--surface-pad:var(--dshpc-space-3)}\n.dshpc-surface--pad-lg{--surface-pad:var(--dshpc-space-4)}\n";
2
+ //# sourceMappingURL=surface-css.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surface-css.generated.d.ts","sourceRoot":"","sources":["../../../src/ui/display/surface-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,2wGAA+3D,CAAA"}
@@ -0,0 +1,4 @@
1
+ // ⚠️ 生成物,勿手改。真源 = src/ui/display/surface.css
2
+ // 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
3
+ export const SURFACE_CSS = "\n/* ── Surface · 纯框容器 ───────────────────────────────────────────────────\n 只回答「一块面长什么样」:底 / 边 / 圆角 / 内距,四根轴,零业务语义。\n 它是**圆角契约的唯一真源**:容器档 = --dshpc-radius-md(12),与 Button / Input 同档,\n 外框永远不小于里面的控件 —— 杜绝「卡片 8 < 按钮 12」这类倒挂(2026-11-01)。\n\n 所有轴都用**变量**表达,修饰类只改这些变量、不改属性:\n 消费方(Card、下游插件)自己写规则时,无论两份 CSS 谁先注入,胜负都不依赖顺序。\n\n tone plain(默认 surface-1) / raised / sunken / subtle\n border 默认 1px 实线;faint 更淡;none 透明(保留 1px 占位,不跳高);\n dashed 虚线(占位框用,线色仍是 border token)\n radius 默认 md;none / sm / lg\n padding 默认由调用方选档;none / sm(8) / md(12) / lg(16)\n 基类不带内距:容器要自己算四边内距时(如 Card 的色条贴边),不传 pad 档即可,不需要覆盖。 */\n.dshpc-surface{\n position:relative;box-sizing:border-box;color:var(--dshpc-fg);font:inherit;text-align:left;\n --surface-bg:var(--dshpc-surface-1);\n --surface-border:var(--dshpc-border);\n --surface-border-style:solid;\n --surface-radius:var(--dshpc-radius-md);\n --surface-pad:0;\n border:1px var(--surface-border-style) var(--surface-border);\n border-radius:var(--surface-radius);\n background:var(--surface-bg);\n padding:var(--surface-pad);\n}\n.dshpc-surface--tone-raised{--surface-bg:var(--dshpc-surface-raised)}\n.dshpc-surface--tone-sunken{--surface-bg:var(--dshpc-surface-sunken)}\n.dshpc-surface--tone-subtle{--surface-bg:var(--dshpc-chip-bg)}\n.dshpc-surface--border-faint{--surface-border:var(--dshpc-border-faint)}\n.dshpc-surface--border-none{--surface-border:transparent}\n.dshpc-surface--border-dashed{--surface-border-style:dashed}\n.dshpc-surface--radius-none{--surface-radius:0}\n.dshpc-surface--radius-sm{--surface-radius:var(--dshpc-radius-sm)}\n.dshpc-surface--radius-lg{--surface-radius:var(--dshpc-radius-lg)}\n.dshpc-surface--pad-none{--surface-pad:0}\n.dshpc-surface--pad-sm{--surface-pad:var(--dshpc-space-2)}\n.dshpc-surface--pad-md{--surface-pad:var(--dshpc-space-3)}\n.dshpc-surface--pad-lg{--surface-pad:var(--dshpc-space-4)}\n";
4
+ //# sourceMappingURL=surface-css.generated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surface-css.generated.js","sourceRoot":"","sources":["../../../src/ui/display/surface-css.generated.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qEAAqE;AACrE,MAAM,CAAC,MAAM,WAAW,GAAG,43DAA43D,CAAA"}
@@ -0,0 +1,7 @@
1
+ // Surface(纯框容器)样式 —— **圆角契约的唯一真源**:容器档 = --dshpc-radius-md(12)。
2
+ //
3
+ // 四根轴(底 / 边 / 圆角 / 内距)全用变量表达,修饰类只改变量,任何消费方规则与它
4
+ // 同时命中时都不依赖注入顺序。要加新档:在 surface.css 里加一条只改变量的修饰类。
5
+ // 生成物 surface-css.generated.ts 由 scripts/gen-css.mjs 产出,勿手改。
6
+ export { SURFACE_CSS } from './surface-css.generated.js';
7
+ //# sourceMappingURL=surface-css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surface-css.js","sourceRoot":"","sources":["../../../src/ui/display/surface-css.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,EAAE;AACF,+CAA+C;AAC/C,iDAAiD;AACjD,6DAA6D;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA"}