dsh-plugin-core 0.2.14 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (432) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +52 -83
  3. package/dist/design/tokens-css.d.ts +1 -1
  4. package/dist/design/tokens-css.d.ts.map +1 -1
  5. package/dist/design/tokens-css.generated.d.ts +2 -0
  6. package/dist/design/tokens-css.generated.d.ts.map +1 -0
  7. package/dist/design/tokens-css.generated.js +4 -0
  8. package/dist/design/tokens-css.generated.js.map +1 -0
  9. package/dist/design/tokens-css.js +1 -252
  10. package/dist/design/tokens-css.js.map +1 -1
  11. package/dist/explorer/FileBrowser.d.ts +41 -0
  12. package/dist/explorer/FileBrowser.d.ts.map +1 -0
  13. package/dist/explorer/FileBrowser.js +659 -0
  14. package/dist/explorer/FileBrowser.js.map +1 -0
  15. package/dist/explorer/explorer-css.d.ts +1 -1
  16. package/dist/explorer/explorer-css.d.ts.map +1 -1
  17. package/dist/explorer/explorer-css.generated.d.ts +2 -0
  18. package/dist/explorer/explorer-css.generated.d.ts.map +1 -0
  19. package/dist/explorer/explorer-css.generated.js +4 -0
  20. package/dist/explorer/explorer-css.generated.js.map +1 -0
  21. package/dist/explorer/explorer-css.js +1 -31
  22. package/dist/explorer/explorer-css.js.map +1 -1
  23. package/dist/explorer/index.d.ts +4 -2
  24. package/dist/explorer/index.d.ts.map +1 -1
  25. package/dist/explorer/index.js +4 -2
  26. package/dist/explorer/index.js.map +1 -1
  27. package/dist/explorer/open.d.ts +103 -0
  28. package/dist/explorer/open.d.ts.map +1 -0
  29. package/dist/explorer/open.js +282 -0
  30. package/dist/explorer/open.js.map +1 -0
  31. package/dist/explorer/preview/BytesPreview.d.ts +13 -0
  32. package/dist/explorer/preview/BytesPreview.d.ts.map +1 -0
  33. package/dist/explorer/preview/BytesPreview.js +56 -0
  34. package/dist/explorer/preview/BytesPreview.js.map +1 -0
  35. package/dist/explorer/preview/HtmlPreview.d.ts +18 -0
  36. package/dist/explorer/preview/HtmlPreview.d.ts.map +1 -0
  37. package/dist/explorer/preview/HtmlPreview.js +112 -0
  38. package/dist/explorer/preview/HtmlPreview.js.map +1 -0
  39. package/dist/explorer/preview/OfficePreview.d.ts +11 -0
  40. package/dist/explorer/preview/OfficePreview.d.ts.map +1 -0
  41. package/dist/explorer/preview/OfficePreview.js +53 -0
  42. package/dist/explorer/preview/OfficePreview.js.map +1 -0
  43. package/dist/explorer/preview/TextPreview.d.ts +17 -0
  44. package/dist/explorer/preview/TextPreview.d.ts.map +1 -0
  45. package/dist/explorer/preview/TextPreview.js +95 -0
  46. package/dist/explorer/preview/TextPreview.js.map +1 -0
  47. package/dist/explorer/preview/index.d.ts +10 -3
  48. package/dist/explorer/preview/index.d.ts.map +1 -1
  49. package/dist/explorer/preview/index.js +52 -55
  50. package/dist/explorer/preview/index.js.map +1 -1
  51. package/dist/explorer/preview/md-labels.d.ts +3 -0
  52. package/dist/explorer/preview/md-labels.d.ts.map +1 -0
  53. package/dist/explorer/preview/md-labels.js +12 -0
  54. package/dist/explorer/preview/md-labels.js.map +1 -0
  55. package/dist/explorer/types.d.ts +186 -4
  56. package/dist/explorer/types.d.ts.map +1 -1
  57. package/dist/explorer/types.js +401 -14
  58. package/dist/explorer/types.js.map +1 -1
  59. package/dist/host/index.d.ts +66 -0
  60. package/dist/host/index.d.ts.map +1 -0
  61. package/dist/host/index.js +60 -0
  62. package/dist/host/index.js.map +1 -0
  63. package/dist/session/SessionViewModal.d.ts +42 -0
  64. package/dist/session/SessionViewModal.d.ts.map +1 -0
  65. package/dist/session/SessionViewModal.js +997 -0
  66. package/dist/session/SessionViewModal.js.map +1 -0
  67. package/dist/session/changes.d.ts +73 -0
  68. package/dist/session/changes.d.ts.map +1 -0
  69. package/dist/session/changes.js +134 -0
  70. package/dist/session/changes.js.map +1 -0
  71. package/dist/session/faces.d.ts +198 -0
  72. package/dist/session/faces.d.ts.map +1 -0
  73. package/dist/session/faces.js +17 -0
  74. package/dist/session/faces.js.map +1 -0
  75. package/dist/session/index.d.ts +5 -23
  76. package/dist/session/index.d.ts.map +1 -1
  77. package/dist/session/index.js +25 -70
  78. package/dist/session/index.js.map +1 -1
  79. package/dist/session/mirror/ChangedFileDiff.d.ts +22 -0
  80. package/dist/session/mirror/ChangedFileDiff.d.ts.map +1 -0
  81. package/dist/session/mirror/ChangedFileDiff.js +157 -0
  82. package/dist/session/mirror/ChangedFileDiff.js.map +1 -0
  83. package/dist/session/mirror/ChangedFilesCard.d.ts +18 -0
  84. package/dist/session/mirror/ChangedFilesCard.d.ts.map +1 -0
  85. package/dist/session/mirror/ChangedFilesCard.js +158 -0
  86. package/dist/session/mirror/ChangedFilesCard.js.map +1 -0
  87. package/dist/session/mirror/ChatGroupSeat.d.ts +24 -0
  88. package/dist/session/mirror/ChatGroupSeat.d.ts.map +1 -0
  89. package/dist/session/mirror/ChatGroupSeat.js +134 -0
  90. package/dist/session/mirror/ChatGroupSeat.js.map +1 -0
  91. package/dist/session/mirror/ChatNodeSeat.d.ts +43 -0
  92. package/dist/session/mirror/ChatNodeSeat.d.ts.map +1 -0
  93. package/dist/session/mirror/ChatNodeSeat.js +133 -0
  94. package/dist/session/mirror/ChatNodeSeat.js.map +1 -0
  95. package/dist/session/mirror/ChatView.d.ts +47 -0
  96. package/dist/session/mirror/ChatView.d.ts.map +1 -0
  97. package/dist/session/mirror/ChatView.js +127 -0
  98. package/dist/session/mirror/ChatView.js.map +1 -0
  99. package/dist/session/mirror/CommandCard.d.ts +20 -0
  100. package/dist/session/mirror/CommandCard.d.ts.map +1 -0
  101. package/dist/session/mirror/CommandCard.js +69 -0
  102. package/dist/session/mirror/CommandCard.js.map +1 -0
  103. package/dist/session/mirror/Deliverables.d.ts +24 -0
  104. package/dist/session/mirror/Deliverables.d.ts.map +1 -0
  105. package/dist/session/mirror/Deliverables.js +134 -0
  106. package/dist/session/mirror/Deliverables.js.map +1 -0
  107. package/dist/session/mirror/GenericCommandCard.d.ts +25 -0
  108. package/dist/session/mirror/GenericCommandCard.d.ts.map +1 -0
  109. package/dist/session/mirror/GenericCommandCard.js +567 -0
  110. package/dist/session/mirror/GenericCommandCard.js.map +1 -0
  111. package/dist/session/mirror/MessageIconActions.d.ts +16 -0
  112. package/dist/session/mirror/MessageIconActions.d.ts.map +1 -0
  113. package/dist/session/mirror/MessageIconActions.js +71 -0
  114. package/dist/session/mirror/MessageIconActions.js.map +1 -0
  115. package/dist/session/mirror/MessageItem.d.ts +66 -0
  116. package/dist/session/mirror/MessageItem.d.ts.map +1 -0
  117. package/dist/session/mirror/MessageItem.js +135 -0
  118. package/dist/session/mirror/MessageItem.js.map +1 -0
  119. package/dist/session/mirror/ReasoningRow.d.ts +11 -0
  120. package/dist/session/mirror/ReasoningRow.d.ts.map +1 -0
  121. package/dist/session/mirror/ReasoningRow.js +49 -0
  122. package/dist/session/mirror/ReasoningRow.js.map +1 -0
  123. package/dist/session/mirror/StatDialog.d.ts +20 -0
  124. package/dist/session/mirror/StatDialog.d.ts.map +1 -0
  125. package/dist/session/mirror/StatDialog.js +36 -0
  126. package/dist/session/mirror/StatDialog.js.map +1 -0
  127. package/dist/session/mirror/TurnProcessNodeView.d.ts +10 -0
  128. package/dist/session/mirror/TurnProcessNodeView.d.ts.map +1 -0
  129. package/dist/session/mirror/TurnProcessNodeView.js +68 -0
  130. package/dist/session/mirror/TurnProcessNodeView.js.map +1 -0
  131. package/dist/session/mirror/TurnTailNodeView.d.ts +32 -0
  132. package/dist/session/mirror/TurnTailNodeView.d.ts.map +1 -0
  133. package/dist/session/mirror/TurnTailNodeView.js +48 -0
  134. package/dist/session/mirror/TurnTailNodeView.js.map +1 -0
  135. package/dist/session/mirror/TurnTriggerNodeView.d.ts +14 -0
  136. package/dist/session/mirror/TurnTriggerNodeView.d.ts.map +1 -0
  137. package/dist/session/mirror/TurnTriggerNodeView.js +87 -0
  138. package/dist/session/mirror/TurnTriggerNodeView.js.map +1 -0
  139. package/dist/session/mirror/TurnUsagePanel.d.ts +21 -0
  140. package/dist/session/mirror/TurnUsagePanel.d.ts.map +1 -0
  141. package/dist/session/mirror/TurnUsagePanel.js +41 -0
  142. package/dist/session/mirror/TurnUsagePanel.js.map +1 -0
  143. package/dist/session/mirror/message-chrome.d.ts +33 -0
  144. package/dist/session/mirror/message-chrome.d.ts.map +1 -0
  145. package/dist/session/mirror/message-chrome.js +158 -0
  146. package/dist/session/mirror/message-chrome.js.map +1 -0
  147. package/dist/session/mirror/process-groups.d.ts +56 -0
  148. package/dist/session/mirror/process-groups.d.ts.map +1 -0
  149. package/dist/session/mirror/process-groups.js +202 -0
  150. package/dist/session/mirror/process-groups.js.map +1 -0
  151. package/dist/session/official-classes.d.ts +28 -0
  152. package/dist/session/official-classes.d.ts.map +1 -0
  153. package/dist/session/official-classes.js +146 -0
  154. package/dist/session/official-classes.js.map +1 -0
  155. package/dist/session/open-session-view.d.ts +17 -0
  156. package/dist/session/open-session-view.d.ts.map +1 -0
  157. package/dist/session/open-session-view.js +136 -0
  158. package/dist/session/open-session-view.js.map +1 -0
  159. package/dist/session/session-css.d.ts +1 -1
  160. package/dist/session/session-css.d.ts.map +1 -1
  161. package/dist/session/session-css.generated.d.ts +2 -0
  162. package/dist/session/session-css.generated.d.ts.map +1 -0
  163. package/dist/session/session-css.generated.js +4 -0
  164. package/dist/session/session-css.generated.js.map +1 -0
  165. package/dist/session/session-css.js +1 -17
  166. package/dist/session/session-css.js.map +1 -1
  167. package/dist/ui/AlertModal.d.ts +28 -0
  168. package/dist/ui/AlertModal.d.ts.map +1 -0
  169. package/dist/ui/AlertModal.js +29 -0
  170. package/dist/ui/AlertModal.js.map +1 -0
  171. package/dist/ui/Button.d.ts.map +1 -1
  172. package/dist/ui/Button.js +14 -1
  173. package/dist/ui/Button.js.map +1 -1
  174. package/dist/ui/Card.d.ts +4 -2
  175. package/dist/ui/Card.d.ts.map +1 -1
  176. package/dist/ui/Card.js +12 -6
  177. package/dist/ui/Card.js.map +1 -1
  178. package/dist/ui/Chip.d.ts +9 -1
  179. package/dist/ui/Chip.d.ts.map +1 -1
  180. package/dist/ui/Chip.js +8 -2
  181. package/dist/ui/Chip.js.map +1 -1
  182. package/dist/ui/CodeViewer.d.ts +36 -0
  183. package/dist/ui/CodeViewer.d.ts.map +1 -0
  184. package/dist/ui/CodeViewer.js +90 -0
  185. package/dist/ui/CodeViewer.js.map +1 -0
  186. package/dist/ui/ConfirmModal.d.ts +30 -0
  187. package/dist/ui/ConfirmModal.d.ts.map +1 -0
  188. package/dist/ui/ConfirmModal.js +23 -0
  189. package/dist/ui/ConfirmModal.js.map +1 -0
  190. package/dist/ui/DateTimePicker.d.ts +45 -0
  191. package/dist/ui/DateTimePicker.d.ts.map +1 -0
  192. package/dist/ui/DateTimePicker.js +447 -0
  193. package/dist/ui/DateTimePicker.js.map +1 -0
  194. package/dist/ui/Field.d.ts +11 -2
  195. package/dist/ui/Field.d.ts.map +1 -1
  196. package/dist/ui/Field.js +15 -5
  197. package/dist/ui/Field.js.map +1 -1
  198. package/dist/ui/MarqueeText.d.ts.map +1 -1
  199. package/dist/ui/MarqueeText.js +3 -1
  200. package/dist/ui/MarqueeText.js.map +1 -1
  201. package/dist/ui/Modal.d.ts +25 -3
  202. package/dist/ui/Modal.d.ts.map +1 -1
  203. package/dist/ui/Modal.js +41 -7
  204. package/dist/ui/Modal.js.map +1 -1
  205. package/dist/ui/ModelPicker.d.ts +25 -12
  206. package/dist/ui/ModelPicker.d.ts.map +1 -1
  207. package/dist/ui/ModelPicker.js +67 -19
  208. package/dist/ui/ModelPicker.js.map +1 -1
  209. package/dist/ui/PanelDock.d.ts +127 -0
  210. package/dist/ui/PanelDock.d.ts.map +1 -0
  211. package/dist/ui/PanelDock.js +297 -0
  212. package/dist/ui/PanelDock.js.map +1 -0
  213. package/dist/ui/Picker.d.ts +8 -2
  214. package/dist/ui/Picker.d.ts.map +1 -1
  215. package/dist/ui/Picker.js +86 -18
  216. package/dist/ui/Picker.js.map +1 -1
  217. package/dist/ui/SectionHead.d.ts +3 -3
  218. package/dist/ui/SectionHead.d.ts.map +1 -1
  219. package/dist/ui/SectionHead.js +4 -4
  220. package/dist/ui/SectionHead.js.map +1 -1
  221. package/dist/ui/Segmented.d.ts +4 -0
  222. package/dist/ui/Segmented.d.ts.map +1 -1
  223. package/dist/ui/Segmented.js +88 -31
  224. package/dist/ui/Segmented.js.map +1 -1
  225. package/dist/ui/Textarea.d.ts +2 -0
  226. package/dist/ui/Textarea.d.ts.map +1 -1
  227. package/dist/ui/Textarea.js +6 -1
  228. package/dist/ui/Textarea.js.map +1 -1
  229. package/dist/ui/Toast.d.ts +41 -8
  230. package/dist/ui/Toast.d.ts.map +1 -1
  231. package/dist/ui/Toast.js +216 -28
  232. package/dist/ui/Toast.js.map +1 -1
  233. package/dist/ui/WorkspacePicker.d.ts +15 -28
  234. package/dist/ui/WorkspacePicker.d.ts.map +1 -1
  235. package/dist/ui/WorkspacePicker.js +18 -27
  236. package/dist/ui/WorkspacePicker.js.map +1 -1
  237. package/dist/ui/card-css.d.ts +1 -1
  238. package/dist/ui/card-css.d.ts.map +1 -1
  239. package/dist/ui/card-css.generated.d.ts +2 -0
  240. package/dist/ui/card-css.generated.d.ts.map +1 -0
  241. package/dist/ui/card-css.generated.js +4 -0
  242. package/dist/ui/card-css.generated.js.map +1 -0
  243. package/dist/ui/card-css.js +1 -35
  244. package/dist/ui/card-css.js.map +1 -1
  245. package/dist/ui/chip-css.d.ts +1 -1
  246. package/dist/ui/chip-css.d.ts.map +1 -1
  247. package/dist/ui/chip-css.generated.d.ts +2 -0
  248. package/dist/ui/chip-css.generated.d.ts.map +1 -0
  249. package/dist/ui/chip-css.generated.js +4 -0
  250. package/dist/ui/chip-css.generated.js.map +1 -0
  251. package/dist/ui/chip-css.js +1 -17
  252. package/dist/ui/chip-css.js.map +1 -1
  253. package/dist/ui/code-viewer-css.d.ts +2 -0
  254. package/dist/ui/code-viewer-css.d.ts.map +1 -0
  255. package/dist/ui/code-viewer-css.generated.d.ts +2 -0
  256. package/dist/ui/code-viewer-css.generated.d.ts.map +1 -0
  257. package/dist/ui/code-viewer-css.generated.js +4 -0
  258. package/dist/ui/code-viewer-css.generated.js.map +1 -0
  259. package/dist/ui/code-viewer-css.js +3 -0
  260. package/dist/ui/code-viewer-css.js.map +1 -0
  261. package/dist/ui/code-viewer-lang.d.ts +15 -0
  262. package/dist/ui/code-viewer-lang.d.ts.map +1 -0
  263. package/dist/ui/code-viewer-lang.js +190 -0
  264. package/dist/ui/code-viewer-lang.js.map +1 -0
  265. package/dist/ui/code-viewer-theme.d.ts +5 -0
  266. package/dist/ui/code-viewer-theme.d.ts.map +1 -0
  267. package/dist/ui/code-viewer-theme.js +138 -0
  268. package/dist/ui/code-viewer-theme.js.map +1 -0
  269. package/dist/ui/controls/back-to-top-css.generated.d.ts +2 -0
  270. package/dist/ui/controls/back-to-top-css.generated.d.ts.map +1 -0
  271. package/dist/ui/controls/back-to-top-css.generated.js +4 -0
  272. package/dist/ui/controls/back-to-top-css.generated.js.map +1 -0
  273. package/dist/ui/controls/button-css.generated.d.ts +2 -0
  274. package/dist/ui/controls/button-css.generated.d.ts.map +1 -0
  275. package/dist/ui/controls/button-css.generated.js +4 -0
  276. package/dist/ui/controls/button-css.generated.js.map +1 -0
  277. package/dist/ui/controls/datetime-css.generated.d.ts +2 -0
  278. package/dist/ui/controls/datetime-css.generated.d.ts.map +1 -0
  279. package/dist/ui/controls/datetime-css.generated.js +4 -0
  280. package/dist/ui/controls/datetime-css.generated.js.map +1 -0
  281. package/dist/ui/controls/field-css.generated.d.ts +2 -0
  282. package/dist/ui/controls/field-css.generated.d.ts.map +1 -0
  283. package/dist/ui/controls/field-css.generated.js +4 -0
  284. package/dist/ui/controls/field-css.generated.js.map +1 -0
  285. package/dist/ui/controls/hint-css.generated.d.ts +2 -0
  286. package/dist/ui/controls/hint-css.generated.d.ts.map +1 -0
  287. package/dist/ui/controls/hint-css.generated.js +4 -0
  288. package/dist/ui/controls/hint-css.generated.js.map +1 -0
  289. package/dist/ui/controls/loading-css.generated.d.ts +2 -0
  290. package/dist/ui/controls/loading-css.generated.d.ts.map +1 -0
  291. package/dist/ui/controls/loading-css.generated.js +4 -0
  292. package/dist/ui/controls/loading-css.generated.js.map +1 -0
  293. package/dist/ui/controls/segmented-css.generated.d.ts +2 -0
  294. package/dist/ui/controls/segmented-css.generated.d.ts.map +1 -0
  295. package/dist/ui/controls/segmented-css.generated.js +4 -0
  296. package/dist/ui/controls/segmented-css.generated.js.map +1 -0
  297. package/dist/ui/controls-css.d.ts +7 -8
  298. package/dist/ui/controls-css.d.ts.map +1 -1
  299. package/dist/ui/controls-css.js +13 -11
  300. package/dist/ui/controls-css.js.map +1 -1
  301. package/dist/ui/css.d.ts +5 -0
  302. package/dist/ui/css.d.ts.map +1 -1
  303. package/dist/ui/css.js +13 -4
  304. package/dist/ui/css.js.map +1 -1
  305. package/dist/ui/datetime-logic.d.ts +100 -0
  306. package/dist/ui/datetime-logic.d.ts.map +1 -0
  307. package/dist/ui/datetime-logic.js +193 -0
  308. package/dist/ui/datetime-logic.js.map +1 -0
  309. package/dist/ui/feedback-css.d.ts +1 -1
  310. package/dist/ui/feedback-css.d.ts.map +1 -1
  311. package/dist/ui/feedback-css.generated.d.ts +2 -0
  312. package/dist/ui/feedback-css.generated.d.ts.map +1 -0
  313. package/dist/ui/feedback-css.generated.js +4 -0
  314. package/dist/ui/feedback-css.generated.js.map +1 -0
  315. package/dist/ui/feedback-css.js +1 -53
  316. package/dist/ui/feedback-css.js.map +1 -1
  317. package/dist/ui/host-data.d.ts +103 -0
  318. package/dist/ui/host-data.d.ts.map +1 -0
  319. package/dist/ui/host-data.js +106 -0
  320. package/dist/ui/host-data.js.map +1 -0
  321. package/dist/ui/host-toast.d.ts +23 -0
  322. package/dist/ui/host-toast.d.ts.map +1 -0
  323. package/dist/ui/host-toast.js +34 -0
  324. package/dist/ui/host-toast.js.map +1 -0
  325. package/dist/ui/index.d.ts +12 -6
  326. package/dist/ui/index.d.ts.map +1 -1
  327. package/dist/ui/index.js +10 -4
  328. package/dist/ui/index.js.map +1 -1
  329. package/dist/ui/marquee-css.d.ts +2 -0
  330. package/dist/ui/marquee-css.d.ts.map +1 -0
  331. package/dist/ui/marquee-css.generated.d.ts +2 -0
  332. package/dist/ui/marquee-css.generated.d.ts.map +1 -0
  333. package/dist/ui/marquee-css.generated.js +4 -0
  334. package/dist/ui/marquee-css.generated.js.map +1 -0
  335. package/dist/ui/marquee-css.js +4 -0
  336. package/dist/ui/marquee-css.js.map +1 -0
  337. package/dist/ui/modal-host.d.ts +30 -0
  338. package/dist/ui/modal-host.d.ts.map +1 -0
  339. package/dist/ui/modal-host.js +101 -0
  340. package/dist/ui/modal-host.js.map +1 -0
  341. package/dist/ui/official.d.ts.map +1 -1
  342. package/dist/ui/official.js +45 -1
  343. package/dist/ui/official.js.map +1 -1
  344. package/dist/ui/panel-dock-css.d.ts +2 -0
  345. package/dist/ui/panel-dock-css.d.ts.map +1 -0
  346. package/dist/ui/panel-dock-css.generated.d.ts +2 -0
  347. package/dist/ui/panel-dock-css.generated.d.ts.map +1 -0
  348. package/dist/ui/panel-dock-css.generated.js +4 -0
  349. package/dist/ui/panel-dock-css.generated.js.map +1 -0
  350. package/dist/ui/panel-dock-css.js +4 -0
  351. package/dist/ui/panel-dock-css.js.map +1 -0
  352. package/dist/ui/panel-dock-logic.d.ts +50 -0
  353. package/dist/ui/panel-dock-logic.d.ts.map +1 -0
  354. package/dist/ui/panel-dock-logic.js +64 -0
  355. package/dist/ui/panel-dock-logic.js.map +1 -0
  356. package/dist/ui/picker-css.d.ts +1 -1
  357. package/dist/ui/picker-css.d.ts.map +1 -1
  358. package/dist/ui/picker-css.generated.d.ts +2 -0
  359. package/dist/ui/picker-css.generated.d.ts.map +1 -0
  360. package/dist/ui/picker-css.generated.js +4 -0
  361. package/dist/ui/picker-css.generated.js.map +1 -0
  362. package/dist/ui/picker-css.js +1 -48
  363. package/dist/ui/picker-css.js.map +1 -1
  364. package/dist/ui/picker-icons.d.ts +12 -0
  365. package/dist/ui/picker-icons.d.ts.map +1 -0
  366. package/dist/ui/picker-icons.js +29 -0
  367. package/dist/ui/picker-icons.js.map +1 -0
  368. package/dist/ui/picker-logic.d.ts +4 -1
  369. package/dist/ui/picker-logic.d.ts.map +1 -1
  370. package/dist/ui/picker-logic.js +1 -2
  371. package/dist/ui/picker-logic.js.map +1 -1
  372. package/dist/ui/resizer.d.ts +3 -1
  373. package/dist/ui/resizer.d.ts.map +1 -1
  374. package/dist/ui/resizer.js +1 -1
  375. package/dist/ui/resizer.js.map +1 -1
  376. package/dist/ui/toast-host.d.ts +24 -0
  377. package/dist/ui/toast-host.d.ts.map +1 -0
  378. package/dist/ui/toast-host.js +20 -0
  379. package/dist/ui/toast-host.js.map +1 -0
  380. package/dist/utils/date.d.ts +8 -0
  381. package/dist/utils/date.d.ts.map +1 -1
  382. package/dist/utils/date.js +16 -0
  383. package/dist/utils/date.js.map +1 -1
  384. package/dist/utils/i18n.d.ts +1 -1
  385. package/dist/utils/i18n.d.ts.map +1 -1
  386. package/dist/utils/i18n.js +437 -18
  387. package/dist/utils/i18n.js.map +1 -1
  388. package/dist/utils/index.d.ts +1 -1
  389. package/dist/utils/index.d.ts.map +1 -1
  390. package/dist/utils/index.js +1 -1
  391. package/dist/utils/index.js.map +1 -1
  392. package/dist/utils/path.d.ts.map +1 -1
  393. package/dist/utils/path.js +1 -0
  394. package/dist/utils/path.js.map +1 -1
  395. package/docs/README.md +12 -5
  396. package/docs/design/architecture.md +38 -8
  397. package/docs/design/copywriting.md +95 -0
  398. package/docs/design/doc-format.md +80 -0
  399. package/docs/design/doc-format.ts +39 -0
  400. package/docs/design/external/dsh-host.md +150 -1
  401. package/docs/design/features.md +4 -17
  402. package/docs/design/methods.md +13 -34
  403. package/docs/design/structure.md +25 -22
  404. package/docs/design/style.md +24 -50
  405. package/docs/help/design.doc.ts +112 -0
  406. package/docs/help/design.md +88 -0
  407. package/docs/help/explorer.doc.ts +136 -0
  408. package/docs/help/explorer.md +68 -0
  409. package/docs/help/index.doc.ts +79 -0
  410. package/docs/help/index.md +28 -0
  411. package/docs/help/integration.doc.ts +114 -0
  412. package/docs/help/integration.md +127 -0
  413. package/docs/help/methods.md +58 -0
  414. package/docs/help/session.doc.ts +154 -0
  415. package/docs/help/session.md +91 -0
  416. package/docs/help/style.md +80 -0
  417. package/docs/help/ui.doc.ts +404 -0
  418. package/docs/help/ui.md +342 -0
  419. package/docs/help/utils.doc.ts +133 -0
  420. package/docs/help/utils.md +96 -0
  421. package/docs/requirements.md +33 -12
  422. package/package.json +44 -3
  423. package/dist/ui/ErrorBoundary.d.ts +0 -22
  424. package/dist/ui/ErrorBoundary.d.ts.map +0 -1
  425. package/dist/ui/ErrorBoundary.js +0 -30
  426. package/dist/ui/ErrorBoundary.js.map +0 -1
  427. package/docs/design/features/design.md +0 -55
  428. package/docs/design/features/explorer.md +0 -73
  429. package/docs/design/features/session.md +0 -70
  430. package/docs/design/features/ui.md +0 -225
  431. package/docs/design/features/utils.md +0 -64
  432. package/docs/examples/integration.md +0 -103
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/explorer/preview/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/explorer/preview/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,4CAA4C;AAC5C,OAAO,EAAE,aAAa,IAAI,CAAC,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,CAAC,EAAkB,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAiD,MAAM,aAAa,CAAA;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,OAAO,EAAE,YAAY,EAA0B,MAAM,mBAAmB,CAAA;AACxE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAyB,MAAM,kBAAkB,CAAA;AACtF,OAAO,EAAE,aAAa,EAA2B,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAyB,MAAM,kBAAkB,CAAA;AAarE,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,cAAc,EAAE,CAAA;IAChB,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACtC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;IAC5C,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,OAAO,CAAC;QACb,KAAK,KAAK;YACR,OAAO,CAAC,CAAC,YAAY,EAAE;gBACrB,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,0BAA0B;gBAC7C,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;QACJ,KAAK,QAAQ;YACX,OAAO,CAAC,CAAC,aAAa,EAAE;gBACtB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;gBACtC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;QACJ,KAAK,MAAM;YACT,OAAO,CAAC,CAAC,WAAW,EAAE;gBACpB,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,UAAU;gBACV,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;QACJ,KAAK,IAAI,CAAC;QACV,KAAK,MAAM;YACT,OAAO,CAAC,CAAC,WAAW,EAAE;gBACpB,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI;gBAC5B,UAAU;gBACV,SAAS,EAAE,EAAE;aACd,CAAC,CAAA;IACN,CAAC;IACD,+CAA+C;IAC/C,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { MarkdownLabels } from '../../ui/official.js';
2
+ export declare function markdownLabels(): MarkdownLabels;
3
+ //# sourceMappingURL=md-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"md-labels.d.ts","sourceRoot":"","sources":["../../../src/explorer/preview/md-labels.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAG1D,wBAAgB,cAAc,IAAI,cAAc,CAS/C"}
@@ -0,0 +1,12 @@
1
+ import { t } from '../../utils/i18n.js';
2
+ export function markdownLabels() {
3
+ return {
4
+ code: {
5
+ copyLabel: t('mdCopy'),
6
+ copiedLabel: t('mdCopied'),
7
+ toolbarLabels: { codeLabel: t('mdCode'), wrapLabel: t('mdWrap'), unwrapLabel: t('mdUnwrap') },
8
+ },
9
+ footnotes: t('mdFootnotes'),
10
+ };
11
+ }
12
+ //# sourceMappingURL=md-labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"md-labels.js","sourceRoot":"","sources":["../../../src/explorer/preview/md-labels.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAA;AAEvC,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,IAAI,EAAE;YACJ,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC;YACtB,WAAW,EAAE,CAAC,CAAC,UAAU,CAAC;YAC1B,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE;SAC9F;QACD,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC;KAC5B,CAAA;AACH,CAAC"}
@@ -1,5 +1,7 @@
1
+ import { extOf, mimeOf } from '../utils/path.js';
2
+ import type { UtilMessageKey } from '../utils/i18n.js';
1
3
  export interface WorkspaceFilesFace {
2
- /** 文本分页读。⚠️ `range` **必传**(官方按位置参数个数校验,省了会被远端拒)。 */
4
+ /** 文本分页读。⚠️ `range` **必传**(官方按位置参数个数校验,省了会被远端拒),读全量传 `{}`。 */
3
5
  read(sessionId: string, path: string, range: {
4
6
  offset?: number;
5
7
  limit?: number;
@@ -41,6 +43,14 @@ export interface WorkspaceFilesFace {
41
43
  bytes?: number;
42
44
  }>;
43
45
  }
46
+ /**
47
+ * 官方 `remote.officeToPdf` 的消费面(本地结构化声明,零 npm 依赖,同 WorkspaceFilesFace 做法)。
48
+ * 运行时服务由宿主提供(宿主装了 @deepseek-ai/dsh-office-to-pdf 才有);未装 ⇒ 调用方传 null ⇒
49
+ * Office 文件呈现「预览不可用」,不发起请求、不崩。
50
+ */
51
+ export interface OfficeToPdfFace {
52
+ render(sessionId: string, path: string, priority: 'foreground' | 'background', signal?: AbortSignal): Promise<unknown>;
53
+ }
44
54
  export interface DirEntry {
45
55
  name: string;
46
56
  type: 'file' | 'directory' | 'other';
@@ -51,8 +61,180 @@ export interface Listing {
51
61
  entries: DirEntry[];
52
62
  truncated: boolean;
53
63
  }
54
- /** 预览类型(决定用哪个预览体)。 */
55
- export type PreviewKind = 'text' | 'image' | 'unsupported';
56
- /** 按扩展名猜预览类型;猜不出就 `unsupported`(不硬撑,交给调用方决定兜底)。 */
64
+ export type PreviewKind = 'image' | 'pdf' | 'md' | 'html' | 'office' | 'text';
65
+ export interface PreviewInfo {
66
+ kind: PreviewKind;
67
+ ext: string;
68
+ mime?: string;
69
+ }
70
+ /** HTML 静态预览的扩展名(与官方 htmlBodyDefinition 同款)。 */
71
+ export declare const HTML_KINDS: readonly string[];
72
+ /**
73
+ * Office 预览扩展名(官方 remote.officeToPdf 转 PDF 后再渲染)。
74
+ * ⚠️ 官方 OfficeExtension 还含 xls / xlsx,按兄弟项目 2026-10-05 拍板「Excel 向后讨论」不纳入。
75
+ */
76
+ export declare const OFFICE_KINDS: readonly string[];
77
+ /** 源码态读取上限(256K,UTF-8 边界安全由截断处处理)。 */
78
+ export declare const SOURCE_MAX_BYTES: number;
79
+ /**
80
+ * 按扩展名分发预览类型。**没有 unsupported 档**:认不出的扩展名一律按 text 走,
81
+ * 由 read 抛 not-text 落「不是文本文件」空态——官方 read 才是真源,不本地猜二进制清单。
82
+ */
83
+ export declare function previewInfoOf(path: string): PreviewInfo;
84
+ /** 只要 kind(兼容旧用法);要 ext/mime 用 previewInfoOf。 */
57
85
  export declare function previewKindOf(path: string): PreviewKind;
86
+ type Envelope = {
87
+ kind: 'ok';
88
+ payload: unknown;
89
+ } | {
90
+ kind: 'error';
91
+ error: unknown;
92
+ };
93
+ export declare function unwrapEnvelope(result: unknown): Envelope;
94
+ /** 失败分支判空(TS 收窄用)。 */
95
+ export declare function isFailed(value: unknown): value is {
96
+ failed: unknown;
97
+ };
98
+ export type Listed = Listing | {
99
+ failed: unknown;
100
+ };
101
+ /** `list` 结果防御解析:返回 Listing 或失败/非法信封。 */
102
+ export declare function listingOf(result: unknown): Listed | null;
103
+ export type TextPage = {
104
+ text: string;
105
+ offset: number;
106
+ lines: number;
107
+ eof: boolean;
108
+ } | {
109
+ failed: unknown;
110
+ } | null;
111
+ /** `read` 结果防御解析:page.text 必须是字符串,否则错误态(防渲染器内部抛错整页黑屏)。 */
112
+ export declare function textPageOf(result: unknown): TextPage;
113
+ export type BytesRead = Uint8Array | {
114
+ failed: unknown;
115
+ } | null;
116
+ /** `readBytes` 结果防御解析:data 必须是 Uint8Array,否则错误态。 */
117
+ export declare function bytesOf(result: unknown): BytesRead;
118
+ /** `stat` 结果防御解析:只取 absolutePath(信封剥壳同款;stat 仅认 regular file)。 */
119
+ export declare function absolutePathOf(result: unknown): string | null;
120
+ /** 剥 wire 命名空间前缀(如 `workspace-file/not-found` ⇒ `not-found`)。 */
121
+ export declare function bareCode(raw: unknown): string;
122
+ /** 错误视图:文案键 + 占位参数。 */
123
+ export interface ErrView {
124
+ key: UtilMessageKey;
125
+ params?: Record<string, string | number>;
126
+ }
127
+ /** 任意抛错/reject ⇒ 文案键。官方 code 分支 + 未知回落,绝不按消息文本猜。 */
128
+ export declare function errView(error: unknown): ErrView;
129
+ /** 子项排序:目录在前,文件在后,各自按名称(不区分大小写)升序。 */
130
+ export declare function sortEntries(entries: readonly DirEntry[]): DirEntry[];
131
+ /**
132
+ * 0.2.0-rc.1 起官方 list **拒绝空路径** ⇒ 空串(= 工作区根)一律以 `'.'` 上线
133
+ * (`'.'` 按 cwd = 工作区根归一解析为根本身;响应里根的 path 仍是 `''`)。
134
+ */
135
+ export declare function listPathOf(dir: string): string;
136
+ export interface RootCache {
137
+ get(sessionId: string): string | undefined;
138
+ set(sessionId: string, root: string): void;
139
+ }
140
+ export declare function createRootCache(): RootCache;
141
+ /** 宿主绝对路径形态(/ 开头或 Windows 盘符)。 */
142
+ export declare function isAbsoluteish(p: string): boolean;
143
+ /** 工作区相对拼接(根下直接 name,不补前导 /)。 */
144
+ export declare function relJoin(dir: string, name: string): string;
145
+ /** 由「相对路径 + 该文件宿主绝对路径」反推工作区根并写入缓存;学不出返回 null。 */
146
+ export declare function learnRoot(cache: RootCache, sessionId: string, relativePath: string, absolutePath: string): string | null;
147
+ /** 把宿主绝对路径剥回工作区相对(根未知或不在根下 ⇒ 原样返回,退化)。 */
148
+ export declare function relativizeToRoot(cache: RootCache, sessionId: string, dir: string): string;
149
+ /**
150
+ * 在相对目录树里找**任意一个文件**并 stat(广度优先、有界:每层最多 5 个目录、最多 3 层)。
151
+ * 用于目标目录本身没有文件子项(空目录 / 只有子目录)时反推工作区根。
152
+ */
153
+ export declare function findAnyFileAbs(workspaceFiles: WorkspaceFilesFace, sessionId: string, startDir: string): Promise<{
154
+ absolutePath: string;
155
+ relativePath: string;
156
+ } | null>;
157
+ /**
158
+ * 把「工作区相对名」的目录解析成宿主绝对路径(面包屑才能从工作区根往下列)。
159
+ * 优先级:① 根已缓存 ⇒ 根 + '/' + 规范相对路径(覆盖空目录 / 只有子目录);
160
+ * ② 目录里有文件子项 ⇒ stat 它反推根;③ 有界 BFS 找任一文件反推根。
161
+ * 全部失败 ⇒ 退回入参,浏览不受影响。
162
+ */
163
+ export declare function absolutizeDir(cache: RootCache, workspaceFiles: WorkspaceFilesFace, sessionId: string, dir: string, canonical: string, entries: readonly DirEntry[]): Promise<string>;
164
+ /** 选择器过滤:`exts` = 只要这些扩展名(小写无点);`dirs` = 只要文件夹;都不传 = 不限。 */
165
+ export interface PickFilter {
166
+ exts?: readonly string[];
167
+ dirs?: boolean;
168
+ }
169
+ export declare function matchesFilter(path: string, isDir: boolean, filter: PickFilter | undefined): boolean;
170
+ /** 面包屑段:把目录路径拆成可点层级(绝对路径保留前导 /)。 */
171
+ export declare function crumbsOfDir(dir: string): {
172
+ label: string;
173
+ path: string;
174
+ }[];
175
+ /** 文件/目录的显示名(末段)。 */
176
+ export declare function baseNameOfPath(p: string): string;
177
+ /** 父目录(无父 = 空串)。 */
178
+ export declare function dirnameOf(p: string): string;
179
+ /** 路径拼接(处理根与绝对/相对;沿用 utils/path 的 joinPath 语义)。 */
180
+ export { joinPath } from '../utils/path.js';
181
+ /** mimeOf 再导出(预览体要用,避免各自 import utils)。 */
182
+ export { extOf, mimeOf };
183
+ /**
184
+ * 工作区锚点的候选结构(官方 `workspaces` 服务快照 `WorkspaceView` 的消费子集,
185
+ * 见 docs/design/external/dsh-host.md §11)。只要够必要的字段,谁都能传。
186
+ */
187
+ export interface WorkspaceAnchorItem {
188
+ /** 工作区显示名(面包屑首段 / 传给 FileBrowser 的 rootName)。 */
189
+ title: string;
190
+ /**
191
+ * 工作区绝对路径(宿主 registry / `workspaces` 快照的 `path`,realpath 归一形态)。
192
+ * **按路径匹配的必需字段**:不传 = 该工作区不参与 `workspaceAnchorForPath` 匹配
193
+ * (仍可被 `pickWorkspaceAnchor` 按更新时间挑中)。
194
+ */
195
+ path?: string;
196
+ /** 本工作区名下的会话 id(追加序);没有一个会话的工作区无法浏览。 */
197
+ sessionIds?: readonly string[];
198
+ /** 更新时间戳(毫秒/数字口径由宿主给);用于「最近打开」排序。 */
199
+ updatedAt?: number;
200
+ }
201
+ export interface WorkspaceAnchor {
202
+ /** 该工作区的显示名。 */
203
+ title: string;
204
+ /** 用来 list / read 的会话 id(该工作区最近一个会话)。 */
205
+ sessionId: string;
206
+ }
207
+ /**
208
+ * 从宿主工作区清单里挑一个**真实浏览锚点**:最近更新过、且有会话的工作区。
209
+ *
210
+ * `workspaceFiles` 是会话作用域服务(list/read 都要 sessionId),所以「打开文件夹」必须先
211
+ * 落到一个真会话上 —— 这里是它的唯一落点。
212
+ *
213
+ * @param items 宿主工作区清单(真实快照)。
214
+ * @returns 锚点;清单为空 / 都没有会话则返回 null。
215
+ */
216
+ export declare function pickWorkspaceAnchor(items: readonly WorkspaceAnchorItem[]): WorkspaceAnchor | null;
217
+ /**
218
+ * 按**工作区 title** 取浏览锚点会话(`workspaceAnchors` 里该 title 最近一个会话)。
219
+ *
220
+ * 与 `workspaceAnchorForPath`(按路径匹配)互补:调用方有 title 归属信息时用这个
221
+ * (兄弟项目 `GET /options` 的 `Record<title, 会话id>` 同口径,无歧义);
222
+ * 只有裸绝对路径时才走路径匹配。没有该 title / 没有会话 ⇒ null。
223
+ */
224
+ export declare function anchorSessionForTitle(items: readonly WorkspaceAnchorItem[], title: string): string | null;
225
+ /**
226
+ * 目标**绝对路径**落在哪个工作区 ⇒ 该工作区最近一个会话 id(list 的 sessionId)。
227
+ *
228
+ * 为什么需要:`workspaceFiles.list` 是会话作用域服务(按 sessionId 解析工作区根,目录 confinement
229
+ * 检查 `contains(root, target)`,官方 `lib/index.js:576-583`)。调用方只甩一个绝对路径进来时,
230
+ * 默认 sessionId 的工作区根未必含它 ⇒ 官方报 `outside-workspace` ⇒ 面板整条退化成只读。
231
+ * 这里把「路径 → 工作区 → 会话」的解析收敛到核心,调用方只需把宿主工作区清单(带 path)传进来。
232
+ *
233
+ * 口径:**最长前缀**赢(嵌套工作区取最具体的);尾斜杠归一;字面大小写(宿主 path 与调用方
234
+ * 路径同源,不做大小写折叠——Windows 跨形态比较是调用方归一的责任)。
235
+ * shortcut: 只解一次(入口 path),不跟踪 dir 切换;跨工作区跳转由调用方经 onSelectWorkspace 处理。
236
+ *
237
+ * @returns 锚点;无 path 字段 / 都不匹配 / 命中工作区没有会话 ⇒ null(调用方回落默认 sessionId)。
238
+ */
239
+ export declare function workspaceAnchorForPath(path: string, items: readonly WorkspaceAnchorItem[]): WorkspaceAnchor | null;
58
240
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/explorer/types.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAC1C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QACT,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,GAAG,EAAE,OAAO,CAAA;QACZ,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;QACzB,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAC,CAAA;IACF,0CAA0C;IAC1C,SAAS,CACP,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,EACzD,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,GAAG,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC9E,wCAAwC;IACxC,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QACT,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,aAAa,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;QAC7F,SAAS,EAAE,OAAO,CAAA;KACnB,CAAC,CAAA;IACF,6CAA6C;IAC7C,IAAI,CAAC,CACH,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChF;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAA;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,QAAQ,EAAE,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,sBAAsB;AACtB,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,CAAA;AAE1D,mDAAmD;AACnD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAUvD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/explorer/types.ts"],"names":[],"mappings":"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"}