@windypro-rourou/dsh-eda 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (407) hide show
  1. package/README.md +71 -119
  2. package/cordis.patch.yml +9 -7
  3. package/lib/board.js +80 -0
  4. package/lib/client.js +2 -2
  5. package/lib/index.js +339 -11
  6. package/lib/installer.js +4 -4
  7. package/lib/skill.js +138 -0
  8. package/package.json +3 -2
  9. package/skill/INDEX.md +193 -0
  10. package/skill/README.official.md +125 -0
  11. package/skill/README.zh-Hans.official.md +125 -0
  12. package/skill/SKILL.md +746 -0
  13. package/skill/format/index.md +152 -0
  14. package/skill/format/pcb/3d.md +166 -0
  15. package/skill/format/pcb/attr.md +63 -0
  16. package/skill/format/pcb/common.md +306 -0
  17. package/skill/format/pcb/component.md +132 -0
  18. package/skill/format/pcb/dimension.md +58 -0
  19. package/skill/format/pcb/index.md +17 -0
  20. package/skill/format/pcb/obj.md +43 -0
  21. package/skill/format/pcb/pad_via.md +151 -0
  22. package/skill/format/pcb/panel.md +64 -0
  23. package/skill/format/pcb/partition.md +43 -0
  24. package/skill/format/pcb/primitive.md +196 -0
  25. package/skill/format/pcb/rule.md +71 -0
  26. package/skill/format/pcb/shape.md +441 -0
  27. package/skill/format/pcb/text.md +62 -0
  28. package/skill/format/project/blob.md +30 -0
  29. package/skill/format/project/common.md +42 -0
  30. package/skill/format/project/group.md +62 -0
  31. package/skill/format/project/index.md +12 -0
  32. package/skill/format/project/instance.md +32 -0
  33. package/skill/format/project/meta.md +189 -0
  34. package/skill/format/project/variant.md +30 -0
  35. package/skill/format/schematic/attr.md +41 -0
  36. package/skill/format/schematic/common.md +47 -0
  37. package/skill/format/schematic/component.md +91 -0
  38. package/skill/format/schematic/index.md +14 -0
  39. package/skill/format/schematic/obj.md +41 -0
  40. package/skill/format/schematic/pin.md +59 -0
  41. package/skill/format/schematic/shape.md +231 -0
  42. package/skill/format/schematic/structure.md +53 -0
  43. package/skill/format/schematic/table.md +109 -0
  44. package/skill/format/schematic/text.md +47 -0
  45. package/skill/format/schematic/wire.md +132 -0
  46. package/skill/guide/ancillary-projects/pro-api-sdk.md +1 -0
  47. package/skill/guide/ancillary-projects/pro-api-types.md +5 -0
  48. package/skill/guide/ancillary-projects.md +10 -0
  49. package/skill/guide/error-handling.md +38 -0
  50. package/skill/guide/extension-json.md +135 -0
  51. package/skill/guide/extensions-marketplace.md +61 -0
  52. package/skill/guide/how-to-start.md +301 -0
  53. package/skill/guide/i18n.md +57 -0
  54. package/skill/guide/index.md +7 -0
  55. package/skill/guide/inline-frame.md +20 -0
  56. package/skill/guide/invoke-apis.md +81 -0
  57. package/skill/guide/stability.md +37 -0
  58. package/skill/references/_index.md +398 -0
  59. package/skill/references/_quick-reference.md +3028 -0
  60. package/skill/references/classes/DMT_Board.md +533 -0
  61. package/skill/references/classes/DMT_EditorControl.md +1736 -0
  62. package/skill/references/classes/DMT_Event.md +356 -0
  63. package/skill/references/classes/DMT_Folder.md +775 -0
  64. package/skill/references/classes/DMT_Panel.md +531 -0
  65. package/skill/references/classes/DMT_Pcb.md +575 -0
  66. package/skill/references/classes/DMT_Project.md +573 -0
  67. package/skill/references/classes/DMT_Schematic.md +1477 -0
  68. package/skill/references/classes/DMT_SelectControl.md +96 -0
  69. package/skill/references/classes/DMT_Team.md +172 -0
  70. package/skill/references/classes/DMT_Workspace.md +198 -0
  71. package/skill/references/classes/EDA.md +961 -0
  72. package/skill/references/classes/IPCB_ComplexPolygon.md +299 -0
  73. package/skill/references/classes/IPCB_Polygon.md +175 -0
  74. package/skill/references/classes/IPCB_PrimitiveArc.md +1901 -0
  75. package/skill/references/classes/IPCB_PrimitiveAttribute.md +2993 -0
  76. package/skill/references/classes/IPCB_PrimitiveComponent.md +2627 -0
  77. package/skill/references/classes/IPCB_PrimitiveComponentPad.md +410 -0
  78. package/skill/references/classes/IPCB_PrimitiveDimension.md +1419 -0
  79. package/skill/references/classes/IPCB_PrimitiveFill.md +1325 -0
  80. package/skill/references/classes/IPCB_PrimitiveImage.md +1461 -0
  81. package/skill/references/classes/IPCB_PrimitiveLine.md +1639 -0
  82. package/skill/references/classes/IPCB_PrimitiveObject.md +1700 -0
  83. package/skill/references/classes/IPCB_PrimitivePad.md +3155 -0
  84. package/skill/references/classes/IPCB_PrimitivePolyline.md +1193 -0
  85. package/skill/references/classes/IPCB_PrimitivePour.md +1858 -0
  86. package/skill/references/classes/IPCB_PrimitivePoured.md +556 -0
  87. package/skill/references/classes/IPCB_PrimitiveRegion.md +1332 -0
  88. package/skill/references/classes/IPCB_PrimitiveString.md +2315 -0
  89. package/skill/references/classes/IPCB_PrimitiveVia.md +1588 -0
  90. package/skill/references/classes/ISCH_PrimitiveArc.md +1676 -0
  91. package/skill/references/classes/ISCH_PrimitiveAttribute.md +2541 -0
  92. package/skill/references/classes/ISCH_PrimitiveBus.md +973 -0
  93. package/skill/references/classes/ISCH_PrimitiveCbbSymbolComponent.md +260 -0
  94. package/skill/references/classes/ISCH_PrimitiveCircle.md +1392 -0
  95. package/skill/references/classes/ISCH_PrimitiveComponent.md +2913 -0
  96. package/skill/references/classes/ISCH_PrimitiveComponentPin.md +155 -0
  97. package/skill/references/classes/ISCH_PrimitiveObject.md +960 -0
  98. package/skill/references/classes/ISCH_PrimitivePin.md +2402 -0
  99. package/skill/references/classes/ISCH_PrimitivePolygon.md +1028 -0
  100. package/skill/references/classes/ISCH_PrimitiveRectangle.md +1777 -0
  101. package/skill/references/classes/ISCH_PrimitiveText.md +1771 -0
  102. package/skill/references/classes/ISCH_PrimitiveWire.md +973 -0
  103. package/skill/references/classes/LIB_3DModel.md +780 -0
  104. package/skill/references/classes/LIB_Cbb.md +957 -0
  105. package/skill/references/classes/LIB_Classification.md +965 -0
  106. package/skill/references/classes/LIB_Device.md +1221 -0
  107. package/skill/references/classes/LIB_Footprint.md +1153 -0
  108. package/skill/references/classes/LIB_LibrariesList.md +329 -0
  109. package/skill/references/classes/LIB_PanelLibrary.md +855 -0
  110. package/skill/references/classes/LIB_SelectControl.md +89 -0
  111. package/skill/references/classes/LIB_SimulationModel.md +821 -0
  112. package/skill/references/classes/LIB_Symbol.md +1195 -0
  113. package/skill/references/classes/PCB_Document.md +1754 -0
  114. package/skill/references/classes/PCB_Drc.md +3375 -0
  115. package/skill/references/classes/PCB_Event.md +1081 -0
  116. package/skill/references/classes/PCB_Layer.md +1911 -0
  117. package/skill/references/classes/PCB_ManufactureData.md +2968 -0
  118. package/skill/references/classes/PCB_MathPolygon.md +785 -0
  119. package/skill/references/classes/PCB_Net.md +1128 -0
  120. package/skill/references/classes/PCB_Primitive.md +217 -0
  121. package/skill/references/classes/PCB_PrimitiveArc.md +894 -0
  122. package/skill/references/classes/PCB_PrimitiveAttribute.md +717 -0
  123. package/skill/references/classes/PCB_PrimitiveComponent.md +1050 -0
  124. package/skill/references/classes/PCB_PrimitiveDimension.md +833 -0
  125. package/skill/references/classes/PCB_PrimitiveFill.md +861 -0
  126. package/skill/references/classes/PCB_PrimitiveImage.md +875 -0
  127. package/skill/references/classes/PCB_PrimitiveLine.md +858 -0
  128. package/skill/references/classes/PCB_PrimitiveObject.md +800 -0
  129. package/skill/references/classes/PCB_PrimitivePad.md +944 -0
  130. package/skill/references/classes/PCB_PrimitivePolyline.md +819 -0
  131. package/skill/references/classes/PCB_PrimitivePour.md +845 -0
  132. package/skill/references/classes/PCB_PrimitivePoured.md +363 -0
  133. package/skill/references/classes/PCB_PrimitiveRegion.md +799 -0
  134. package/skill/references/classes/PCB_PrimitiveString.md +910 -0
  135. package/skill/references/classes/PCB_PrimitiveVia.md +765 -0
  136. package/skill/references/classes/PCB_RayTracerEngine.md +263 -0
  137. package/skill/references/classes/PCB_SelectControl.md +495 -0
  138. package/skill/references/classes/PNL_Document.md +83 -0
  139. package/skill/references/classes/SCH_Document.md +809 -0
  140. package/skill/references/classes/SCH_Drc.md +242 -0
  141. package/skill/references/classes/SCH_Event.md +583 -0
  142. package/skill/references/classes/SCH_ManufactureData.md +1205 -0
  143. package/skill/references/classes/SCH_Net.md +200 -0
  144. package/skill/references/classes/SCH_Netlist.md +191 -0
  145. package/skill/references/classes/SCH_Primitive.md +337 -0
  146. package/skill/references/classes/SCH_PrimitiveArc.md +692 -0
  147. package/skill/references/classes/SCH_PrimitiveAttribute.md +590 -0
  148. package/skill/references/classes/SCH_PrimitiveBus.md +624 -0
  149. package/skill/references/classes/SCH_PrimitiveCircle.md +683 -0
  150. package/skill/references/classes/SCH_PrimitiveComponent.md +2240 -0
  151. package/skill/references/classes/SCH_PrimitiveObject.md +666 -0
  152. package/skill/references/classes/SCH_PrimitivePin.md +754 -0
  153. package/skill/references/classes/SCH_PrimitivePolygon.md +627 -0
  154. package/skill/references/classes/SCH_PrimitiveRectangle.md +731 -0
  155. package/skill/references/classes/SCH_PrimitiveText.md +746 -0
  156. package/skill/references/classes/SCH_PrimitiveWire.md +703 -0
  157. package/skill/references/classes/SCH_SelectControl.md +520 -0
  158. package/skill/references/classes/SCH_SimulationEngine.md +133 -0
  159. package/skill/references/classes/SCH_Utils.md +121 -0
  160. package/skill/references/classes/SYS_ClientUrl.md +173 -0
  161. package/skill/references/classes/SYS_Dialog.md +825 -0
  162. package/skill/references/classes/SYS_Environment.md +502 -0
  163. package/skill/references/classes/SYS_FileManager.md +1686 -0
  164. package/skill/references/classes/SYS_FileSystem.md +1171 -0
  165. package/skill/references/classes/SYS_FontManager.md +224 -0
  166. package/skill/references/classes/SYS_FormatConversion.md +349 -0
  167. package/skill/references/classes/SYS_HeaderMenu.md +479 -0
  168. package/skill/references/classes/SYS_I18n.md +861 -0
  169. package/skill/references/classes/SYS_IFrame.md +535 -0
  170. package/skill/references/classes/SYS_LoadingAndProgressBar.md +246 -0
  171. package/skill/references/classes/SYS_Log.md +424 -0
  172. package/skill/references/classes/SYS_Math.md +1565 -0
  173. package/skill/references/classes/SYS_Message.md +363 -0
  174. package/skill/references/classes/SYS_MessageBox.md +285 -0
  175. package/skill/references/classes/SYS_MessageBus.md +1618 -0
  176. package/skill/references/classes/SYS_PanelControl.md +696 -0
  177. package/skill/references/classes/SYS_RightClickMenu.md +175 -0
  178. package/skill/references/classes/SYS_Setting.md +85 -0
  179. package/skill/references/classes/SYS_ShortcutKey.md +623 -0
  180. package/skill/references/classes/SYS_Storage.md +484 -0
  181. package/skill/references/classes/SYS_Timer.md +447 -0
  182. package/skill/references/classes/SYS_ToastMessage.md +194 -0
  183. package/skill/references/classes/SYS_Tool.md +241 -0
  184. package/skill/references/classes/SYS_Unit.md +594 -0
  185. package/skill/references/classes/SYS_WebSocket.md +401 -0
  186. package/skill/references/classes/SYS_Window.md +850 -0
  187. package/skill/references/enums/EDMT_EditorDocumentType.md +279 -0
  188. package/skill/references/enums/EDMT_EditorSplitScreenDirection.md +48 -0
  189. package/skill/references/enums/EDMT_EditorTabEventType.md +63 -0
  190. package/skill/references/enums/EDMT_IndicatorMarkerType.md +81 -0
  191. package/skill/references/enums/EDMT_ItemType.md +158 -0
  192. package/skill/references/enums/EDMT_ProjectCollaborationMode.md +48 -0
  193. package/skill/references/enums/ELIB_DeviceJlcLibraryCategory.md +48 -0
  194. package/skill/references/enums/ELIB_LibraryType.md +114 -0
  195. package/skill/references/enums/ELIB_PreviewType.md +70 -0
  196. package/skill/references/enums/ELIB_SimulationModelType.md +48 -0
  197. package/skill/references/enums/ELIB_SymbolType.md +125 -0
  198. package/skill/references/enums/EPCB_AutoRoutingCornerStyle.md +48 -0
  199. package/skill/references/enums/EPCB_AutoRoutingExistingPrimitiveMode.md +48 -0
  200. package/skill/references/enums/EPCB_AutoRoutingOptimization.md +48 -0
  201. package/skill/references/enums/EPCB_DocumentCanvasUpdateCalculationActiveStatus.md +48 -0
  202. package/skill/references/enums/EPCB_DocumentRatlineCalculatingActiveStatus.md +52 -0
  203. package/skill/references/enums/EPCB_InactiveLayerDisplayMode.md +59 -0
  204. package/skill/references/enums/EPCB_LayerColorConfiguration.md +81 -0
  205. package/skill/references/enums/EPCB_LayerId.md +882 -0
  206. package/skill/references/enums/EPCB_LayerStatus.md +59 -0
  207. package/skill/references/enums/EPCB_LayerType.md +114 -0
  208. package/skill/references/enums/EPCB_MouseEventType.md +59 -0
  209. package/skill/references/enums/EPCB_NetEventType.md +59 -0
  210. package/skill/references/enums/EPCB_PcbPlateType.md +48 -0
  211. package/skill/references/enums/EPCB_PdfOutputMethod.md +59 -0
  212. package/skill/references/enums/EPCB_PrimitiveArcInteractiveMode.md +48 -0
  213. package/skill/references/enums/EPCB_PrimitiveDimensionType.md +59 -0
  214. package/skill/references/enums/EPCB_PrimitiveEventType.md +59 -0
  215. package/skill/references/enums/EPCB_PrimitiveFillMode.md +63 -0
  216. package/skill/references/enums/EPCB_PrimitivePadHeatWeldingConnectionMethod.md +59 -0
  217. package/skill/references/enums/EPCB_PrimitivePadHoleType.md +59 -0
  218. package/skill/references/enums/EPCB_PrimitivePadShapeType.md +81 -0
  219. package/skill/references/enums/EPCB_PrimitivePadType.md +59 -0
  220. package/skill/references/enums/EPCB_PrimitivePourFillMethod.md +59 -0
  221. package/skill/references/enums/EPCB_PrimitiveRegionRuleType.md +96 -0
  222. package/skill/references/enums/EPCB_PrimitiveStringAlignMode.md +125 -0
  223. package/skill/references/enums/EPCB_PrimitiveType.md +202 -0
  224. package/skill/references/enums/EPCB_PrimitiveViaType.md +59 -0
  225. package/skill/references/enums/ESCH_DynamicSimulationEnginePullEventType.md +103 -0
  226. package/skill/references/enums/ESCH_DynamicSimulationEnginePushEventType.md +81 -0
  227. package/skill/references/enums/ESCH_ExportDocumentFileType.md +59 -0
  228. package/skill/references/enums/ESCH_MouseEventType.md +48 -0
  229. package/skill/references/enums/ESCH_PrimitiveComponentType.md +125 -0
  230. package/skill/references/enums/ESCH_PrimitiveEventType.md +70 -0
  231. package/skill/references/enums/ESCH_PrimitiveFillStyle.md +114 -0
  232. package/skill/references/enums/ESCH_PrimitiveLineType.md +70 -0
  233. package/skill/references/enums/ESCH_PrimitivePinShape.md +70 -0
  234. package/skill/references/enums/ESCH_PrimitivePinType.md +147 -0
  235. package/skill/references/enums/ESCH_PrimitiveTextAlignMode.md +125 -0
  236. package/skill/references/enums/ESCH_PrimitiveType.md +180 -0
  237. package/skill/references/enums/ESCH_SimulationNetlistType.md +37 -0
  238. package/skill/references/enums/ESCH_SpiceSimulationEnginePullEventType.md +48 -0
  239. package/skill/references/enums/ESCH_SpiceSimulationEnginePushEventType.md +70 -0
  240. package/skill/references/enums/ESYS_BottomPanelTab.md +81 -0
  241. package/skill/references/enums/ESYS_HeaderMenuEnvironment.md +158 -0
  242. package/skill/references/enums/ESYS_ImportProjectBoardOutlineSource.md +52 -0
  243. package/skill/references/enums/ESYS_ImportProjectImportOption.md +59 -0
  244. package/skill/references/enums/ESYS_ImportProjectSchematicObjectStyle.md +48 -0
  245. package/skill/references/enums/ESYS_ImportProjectViaSolderMaskExpansion.md +52 -0
  246. package/skill/references/enums/ESYS_LeftPanelTab.md +81 -0
  247. package/skill/references/enums/ESYS_LogType.md +103 -0
  248. package/skill/references/enums/ESYS_NetlistType.md +114 -0
  249. package/skill/references/enums/ESYS_RightPanelTab.md +202 -0
  250. package/skill/references/enums/ESYS_ShortcutKeyEffectiveEditorRange.md +191 -0
  251. package/skill/references/enums/ESYS_ShortcutKeyEffectiveEditorScene.md +92 -0
  252. package/skill/references/enums/ESYS_StartPageQuickStartItem.md +206 -0
  253. package/skill/references/enums/ESYS_Theme.md +48 -0
  254. package/skill/references/enums/ESYS_ToastMessageType.md +81 -0
  255. package/skill/references/enums/ESYS_Unit.md +103 -0
  256. package/skill/references/enums/ESYS_WindowEventType.md +48 -0
  257. package/skill/references/enums/ESYS_WindowOpenTarget.md +48 -0
  258. package/skill/references/enums/NetportDeviceName.md +147 -0
  259. package/skill/references/enums/SchToolBarDeviceName.md +279 -0
  260. package/skill/references/interfaces/BoardProps.md +169 -0
  261. package/skill/references/interfaces/ButtonProps.md +169 -0
  262. package/skill/references/interfaces/CheckBoxProps.md +196 -0
  263. package/skill/references/interfaces/ComponentPropsMap.md +448 -0
  264. package/skill/references/interfaces/DialogProps.md +385 -0
  265. package/skill/references/interfaces/FlexItemProps.md +116 -0
  266. package/skill/references/interfaces/FlexProps.md +224 -0
  267. package/skill/references/interfaces/GridItemProps.md +143 -0
  268. package/skill/references/interfaces/GridProps.md +143 -0
  269. package/skill/references/interfaces/IDMT_BoardItem.md +171 -0
  270. package/skill/references/interfaces/IDMT_BriefProjectItem.md +171 -0
  271. package/skill/references/interfaces/IDMT_EditorDocumentItem.md +169 -0
  272. package/skill/references/interfaces/IDMT_EditorSplitScreenItem.md +173 -0
  273. package/skill/references/interfaces/IDMT_EditorTabItem.md +169 -0
  274. package/skill/references/interfaces/IDMT_FolderItem.md +225 -0
  275. package/skill/references/interfaces/IDMT_IndicatorMarkerShape.md +393 -0
  276. package/skill/references/interfaces/IDMT_PanelItem.md +144 -0
  277. package/skill/references/interfaces/IDMT_PcbItem.md +171 -0
  278. package/skill/references/interfaces/IDMT_ProjectItem.md +143 -0
  279. package/skill/references/interfaces/IDMT_SchematicItem.md +225 -0
  280. package/skill/references/interfaces/IDMT_SchematicPageItem.md +198 -0
  281. package/skill/references/interfaces/IDMT_TeamItem.md +144 -0
  282. package/skill/references/interfaces/IDMT_WorkspaceItem.md +117 -0
  283. package/skill/references/interfaces/IDesignPortal.md +103 -0
  284. package/skill/references/interfaces/ILIB_3DModelItem.md +198 -0
  285. package/skill/references/interfaces/ILIB_3DModelSearchItem.md +277 -0
  286. package/skill/references/interfaces/ILIB_CbbItem.md +225 -0
  287. package/skill/references/interfaces/ILIB_CbbSearchItem.md +277 -0
  288. package/skill/references/interfaces/ILIB_ClassificationIndex.md +150 -0
  289. package/skill/references/interfaces/ILIB_DeviceAssociationItem.md +210 -0
  290. package/skill/references/interfaces/ILIB_DeviceExtendPropertyItem.md +304 -0
  291. package/skill/references/interfaces/ILIB_DeviceItem.md +279 -0
  292. package/skill/references/interfaces/ILIB_DevicePropertiesForSearch.md +250 -0
  293. package/skill/references/interfaces/ILIB_DeviceSearchItem.md +521 -0
  294. package/skill/references/interfaces/ILIB_ExtendLibrary3DModelFunctions.md +64 -0
  295. package/skill/references/interfaces/ILIB_ExtendLibraryCbbFunctions.md +99 -0
  296. package/skill/references/interfaces/ILIB_ExtendLibraryClassificationIndex.md +150 -0
  297. package/skill/references/interfaces/ILIB_ExtendLibraryDeviceFunctions.md +157 -0
  298. package/skill/references/interfaces/ILIB_ExtendLibraryFootprintFunctions.md +63 -0
  299. package/skill/references/interfaces/ILIB_ExtendLibraryFunctions.md +123 -0
  300. package/skill/references/interfaces/ILIB_ExtendLibraryItem.md +97 -0
  301. package/skill/references/interfaces/ILIB_ExtendLibraryItemIndex.md +98 -0
  302. package/skill/references/interfaces/ILIB_ExtendLibrarySearchProperty.md +115 -0
  303. package/skill/references/interfaces/ILIB_ExtendLibrarySearchResult.md +169 -0
  304. package/skill/references/interfaces/ILIB_ExtendLibrarySearchResultDataLine.md +234 -0
  305. package/skill/references/interfaces/ILIB_ExtendLibrarySymbolFunctions.md +105 -0
  306. package/skill/references/interfaces/ILIB_ExtendLibraryUserIndex.md +96 -0
  307. package/skill/references/interfaces/ILIB_FootprintItem.md +198 -0
  308. package/skill/references/interfaces/ILIB_FootprintPropertiesForSearch.md +61 -0
  309. package/skill/references/interfaces/ILIB_FootprintSearchItem.md +277 -0
  310. package/skill/references/interfaces/ILIB_LibraryInfo.md +92 -0
  311. package/skill/references/interfaces/ILIB_LibraryItem.md +115 -0
  312. package/skill/references/interfaces/ILIB_PanelLibraryItem.md +198 -0
  313. package/skill/references/interfaces/ILIB_PanelLibrarySearchItem.md +277 -0
  314. package/skill/references/interfaces/ILIB_SimulationModelItem.md +306 -0
  315. package/skill/references/interfaces/ILIB_SimulationModelSearchItem.md +304 -0
  316. package/skill/references/interfaces/ILIB_SymbolItem.md +279 -0
  317. package/skill/references/interfaces/ILIB_SymbolPropertiesForSearch.md +61 -0
  318. package/skill/references/interfaces/ILIB_SymbolSearchItem.md +304 -0
  319. package/skill/references/interfaces/IPCB_AutoLayoutResult.md +169 -0
  320. package/skill/references/interfaces/IPCB_AutoRoutingProps.md +220 -0
  321. package/skill/references/interfaces/IPCB_AutoRoutingResult.md +169 -0
  322. package/skill/references/interfaces/IPCB_BomPropertiesTableColumns.md +169 -0
  323. package/skill/references/interfaces/IPCB_DifferentialPairItem.md +115 -0
  324. package/skill/references/interfaces/IPCB_DiscretizeOptions.md +65 -0
  325. package/skill/references/interfaces/IPCB_DiscretizedPoint.md +88 -0
  326. package/skill/references/interfaces/IPCB_EqualLengthNetGroupItem.md +115 -0
  327. package/skill/references/interfaces/IPCB_LayerItem.md +277 -0
  328. package/skill/references/interfaces/IPCB_NetClassItem.md +115 -0
  329. package/skill/references/interfaces/IPCB_NetInfo.md +115 -0
  330. package/skill/references/interfaces/IPCB_PadPairGroupItem.md +88 -0
  331. package/skill/references/interfaces/IPCB_PadPairMinWireLengthItem.md +88 -0
  332. package/skill/references/interfaces/IPCB_PhysicalStackingConfiguration.md +115 -0
  333. package/skill/references/interfaces/IPCB_Primitive.md +218 -0
  334. package/skill/references/interfaces/IPCB_PrimitiveAPI.md +175 -0
  335. package/skill/references/interfaces/IPCB_PrimitivePadHeatWelding.md +151 -0
  336. package/skill/references/interfaces/IPCB_PrimitivePouredPourFill.md +142 -0
  337. package/skill/references/interfaces/IPCB_PrimitiveSolderMaskAndPasteMaskExpansion.md +154 -0
  338. package/skill/references/interfaces/IPCB_SubstratePhysicalProperties.md +88 -0
  339. package/skill/references/interfaces/IRawNet.md +103 -0
  340. package/skill/references/interfaces/IRawPureSchematic.md +80 -0
  341. package/skill/references/interfaces/IRawSchematic.md +103 -0
  342. package/skill/references/interfaces/IRawWire.md +149 -0
  343. package/skill/references/interfaces/ISCH_DrcError.md +142 -0
  344. package/skill/references/interfaces/ISCH_DrcErrorPrimitive.md +142 -0
  345. package/skill/references/interfaces/ISCH_ExportPngResolution.md +94 -0
  346. package/skill/references/interfaces/ISCH_NetInfo.md +88 -0
  347. package/skill/references/interfaces/ISCH_Primitive.md +219 -0
  348. package/skill/references/interfaces/ISCH_PrimitiveAPI.md +175 -0
  349. package/skill/references/interfaces/ISCH_ProjectNetInfo.md +142 -0
  350. package/skill/references/interfaces/ISCH_WireInfo.md +169 -0
  351. package/skill/references/interfaces/ISYS_FileSystemFileList.md +169 -0
  352. package/skill/references/interfaces/ISYS_HeaderMenuSub1MenuItem.md +174 -0
  353. package/skill/references/interfaces/ISYS_HeaderMenuSub2MenuItem.md +147 -0
  354. package/skill/references/interfaces/ISYS_HeaderMenuTopMenuItem.md +115 -0
  355. package/skill/references/interfaces/ISYS_HeaderMenus.md +408 -0
  356. package/skill/references/interfaces/ISYS_LogLine.md +115 -0
  357. package/skill/references/interfaces/ISYS_MathBBox.md +142 -0
  358. package/skill/references/interfaces/ISYS_MathPoint.md +88 -0
  359. package/skill/references/interfaces/ISYS_MathPolygonWithHoles.md +92 -0
  360. package/skill/references/interfaces/ISYS_MessageBusTask.md +115 -0
  361. package/skill/references/interfaces/ISYS_MultilingualLanguagesData.md +13 -0
  362. package/skill/references/interfaces/ISYS_PcbComparisonResponse.md +115 -0
  363. package/skill/references/interfaces/ISYS_RightClickMenuItem.md +174 -0
  364. package/skill/references/interfaces/ISYS_ShortcutKeyData.md +169 -0
  365. package/skill/references/interfaces/ISYS_ShortcutKeyDataWithCallFn.md +62 -0
  366. package/skill/references/interfaces/ISYS_ShortcutKeyDataWithUserDefinedShortcutKey.md +62 -0
  367. package/skill/references/interfaces/ISYS_WindowEventListenerRemovableObject.md +109 -0
  368. package/skill/references/interfaces/IconProps.md +88 -0
  369. package/skill/references/interfaces/ImageProps.md +115 -0
  370. package/skill/references/interfaces/InputProps.md +520 -0
  371. package/skill/references/interfaces/ListChildren.md +223 -0
  372. package/skill/references/interfaces/ListProps.md +223 -0
  373. package/skill/references/interfaces/ModalProps.md +358 -0
  374. package/skill/references/interfaces/RadioGroupProps.md +196 -0
  375. package/skill/references/interfaces/RadioItem.md +115 -0
  376. package/skill/references/interfaces/ScrollerProps.md +169 -0
  377. package/skill/references/interfaces/SelectListItem.md +142 -0
  378. package/skill/references/interfaces/SelectProps.md +169 -0
  379. package/skill/references/interfaces/SlotProps.md +88 -0
  380. package/skill/references/interfaces/StyleProps.md +385 -0
  381. package/skill/references/interfaces/TextAreaProps.md +196 -0
  382. package/skill/references/interfaces/TextProps.md +169 -0
  383. package/skill/references/types/ISYS_LanguageKeyValuePairs.md +13 -0
  384. package/skill/references/types/TPCB_LayerTypesOfInnerLayer.md +12 -0
  385. package/skill/references/types/TPCB_LayersInTheSelectable.md +43 -0
  386. package/skill/references/types/TPCB_LayersOfComponent.md +12 -0
  387. package/skill/references/types/TPCB_LayersOfCopper.md +16 -0
  388. package/skill/references/types/TPCB_LayersOfCustom.md +42 -0
  389. package/skill/references/types/TPCB_LayersOfDimension.md +17 -0
  390. package/skill/references/types/TPCB_LayersOfFill.md +29 -0
  391. package/skill/references/types/TPCB_LayersOfImage.md +23 -0
  392. package/skill/references/types/TPCB_LayersOfInner.md +42 -0
  393. package/skill/references/types/TPCB_LayersOfLine.md +26 -0
  394. package/skill/references/types/TPCB_LayersOfObject.md +13 -0
  395. package/skill/references/types/TPCB_LayersOfPad.md +12 -0
  396. package/skill/references/types/TPCB_LayersOfRegion.md +12 -0
  397. package/skill/references/types/TPCB_NumberOfCopperLayers.md +10 -0
  398. package/skill/references/types/TPCB_PolygonSourceArray.md +83 -0
  399. package/skill/references/types/TPCB_PrimitiveDimensionCoordinateSet.md +67 -0
  400. package/skill/references/types/TPCB_PrimitivePadHole.md +31 -0
  401. package/skill/references/types/TPCB_PrimitivePadShape.md +62 -0
  402. package/skill/references/types/TPCB_PrimitiveSpecialPadShape.md +20 -0
  403. package/skill/references/types/TSYS_MathPolygonGroup.md +16 -0
  404. package/skill/references/types/TSYS_MathPolygonInput.md +21 -0
  405. package/skill/references/types/TSYS_PcbComparisonErrorCode.md +10 -0
  406. package/skill/references/types/TSYS_ShortcutKeys.md +97 -0
  407. package/skill/user-guide/using-extension.md +47 -0
@@ -0,0 +1,1477 @@
1
+ # DMT\_Schematic class
2
+
3
+ Document tree / Schematic management class
4
+
5
+ ## Signature
6
+
7
+ ```typescript
8
+ class DMT_Schematic
9
+ ```
10
+
11
+ ## Remarks
12
+
13
+ Operations related to schematic management in the currently open project
14
+
15
+ ## Methods
16
+
17
+ <table><thead><tr><th>
18
+
19
+ Method
20
+
21
+ </th><th>
22
+
23
+ Modifiers
24
+
25
+ </th><th>
26
+
27
+ Description
28
+
29
+ </th></tr></thead>
30
+ <tbody><tr><td>
31
+
32
+ [copySchematic(schematicUuid, boardName)](./DMT_Schematic.md)
33
+
34
+ </td><td>
35
+
36
+ </td><td>
37
+
38
+ **_(BETA)_** Copy Schematic
39
+
40
+ </td></tr>
41
+ <tr><td>
42
+
43
+ [copySchematicPage(schematicPageUuid, schematicUuid)](./DMT_Schematic.md)
44
+
45
+ </td><td>
46
+
47
+ </td><td>
48
+
49
+ **_(BETA)_** Copy Schematic sheet
50
+
51
+ </td></tr>
52
+ <tr><td>
53
+
54
+ [createSchematic(boardName)](./DMT_Schematic.md)
55
+
56
+ </td><td>
57
+
58
+ </td><td>
59
+
60
+ **_(BETA)_** Create Schematic
61
+
62
+ </td></tr>
63
+ <tr><td>
64
+
65
+ [createSchematicPage(schematicUuid)](./DMT_Schematic.md)
66
+
67
+ </td><td>
68
+
69
+ </td><td>
70
+
71
+ **_(BETA)_** Create Schematic sheet
72
+
73
+ </td></tr>
74
+ <tr><td>
75
+
76
+ [deleteSchematic(schematicUuid)](./DMT_Schematic.md)
77
+
78
+ </td><td>
79
+
80
+ </td><td>
81
+
82
+ **_(BETA)_** Delete Schematic
83
+
84
+ </td></tr>
85
+ <tr><td>
86
+
87
+ [deleteSchematicPage(schematicPageUuid)](./DMT_Schematic.md)
88
+
89
+ </td><td>
90
+
91
+ </td><td>
92
+
93
+ **_(BETA)_** Delete Schematic sheet
94
+
95
+ </td></tr>
96
+ <tr><td>
97
+
98
+ [getAllSchematicPagesInfo()](./DMT_Schematic.md)
99
+
100
+ </td><td>
101
+
102
+ </td><td>
103
+
104
+ **_(BETA)_** Get all in the project schematic sheet detailed properties of
105
+
106
+ </td></tr>
107
+ <tr><td>
108
+
109
+ [getAllSchematicsInfo()](./DMT_Schematic.md)
110
+
111
+ </td><td>
112
+
113
+ </td><td>
114
+
115
+ **_(BETA)_** Get all in the project schematic detailed properties of
116
+
117
+ </td></tr>
118
+ <tr><td>
119
+
120
+ [getCurrentSchematicAllSchematicPagesInfo()](./DMT_Schematic.md)
121
+
122
+ </td><td>
123
+
124
+ </td><td>
125
+
126
+ **_(BETA)_** Get the detailed properties of all schematic sheets in the current schematic
127
+
128
+ </td></tr>
129
+ <tr><td>
130
+
131
+ [getCurrentSchematicInfo()](./DMT_Schematic.md)
132
+
133
+ </td><td>
134
+
135
+ </td><td>
136
+
137
+ **_(BETA)_** Get detailed properties of Current schematic
138
+
139
+ </td></tr>
140
+ <tr><td>
141
+
142
+ [getCurrentSchematicPageInfo()](./DMT_Schematic.md)
143
+
144
+ </td><td>
145
+
146
+ </td><td>
147
+
148
+ **_(BETA)_** Get detailed properties of Current schematic sheet
149
+
150
+ </td></tr>
151
+ <tr><td>
152
+
153
+ [getSchematicInfo(schematicUuid)](./DMT_Schematic.md)
154
+
155
+ </td><td>
156
+
157
+ </td><td>
158
+
159
+ **_(BETA)_** Get detailed properties of Schematic
160
+
161
+ </td></tr>
162
+ <tr><td>
163
+
164
+ [getSchematicPageInfo(schematicPageUuid)](./DMT_Schematic.md)
165
+
166
+ </td><td>
167
+
168
+ </td><td>
169
+
170
+ **_(BETA)_** Get detailed properties of Schematic sheet
171
+
172
+ </td></tr>
173
+ <tr><td>
174
+
175
+ [modifySchematicName(schematicUuid, schematicName)](./DMT_Schematic.md)
176
+
177
+ </td><td>
178
+
179
+ </td><td>
180
+
181
+ **_(BETA)_** Modify Schematic name
182
+
183
+ </td></tr>
184
+ <tr><td>
185
+
186
+ [modifySchematicPageName(schematicPageUuid, schematicPageName)](./DMT_Schematic.md)
187
+
188
+ </td><td>
189
+
190
+ </td><td>
191
+
192
+ **_(BETA)_** Modify Schematic sheet name
193
+
194
+ </td></tr>
195
+ <tr><td>
196
+
197
+ [modifySchematicPageTitleBlock(showTitleBlock, titleBlockData)](./DMT_Schematic.md)
198
+
199
+ </td><td>
200
+
201
+ </td><td>
202
+
203
+ **_(BETA)_** Modify the title block of a schematic sheet
204
+
205
+ </td></tr>
206
+ <tr><td>
207
+
208
+ [reorderSchematicPages(schematicUuid, schematicPageItemsArray)](./DMT_Schematic.md)
209
+
210
+ </td><td>
211
+
212
+ </td><td>
213
+
214
+ **_(BETA)_** Reorder schematic sheets
215
+
216
+ </td></tr>
217
+ </tbody></table>
218
+
219
+ ---
220
+
221
+ ## 方法详情
222
+
223
+ ### copyschematic
224
+
225
+ # DMT\_Schematic.copySchematic() method
226
+
227
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
228
+
229
+ Copy Schematic
230
+
231
+ ## Signature
232
+
233
+ ```typescript
234
+ function copySchematic(schematicUuid: string, boardName?: string): Promise<string | undefined>;
235
+ ```
236
+
237
+ ## Parameters
238
+
239
+ <table><thead><tr><th>
240
+
241
+ Parameter
242
+
243
+ </th><th>
244
+
245
+ Type
246
+
247
+ </th><th>
248
+
249
+ Description
250
+
251
+ </th></tr></thead>
252
+ <tbody><tr><td>
253
+
254
+ schematicUuid
255
+
256
+ </td><td>
257
+
258
+ string
259
+
260
+ </td><td>
261
+
262
+ Source schematic UUID
263
+
264
+ </td></tr>
265
+ <tr><td>
266
+
267
+ boardName
268
+
269
+ </td><td>
270
+
271
+ string
272
+
273
+ </td><td>
274
+
275
+ _(Optional)_ Name of the board the new schematic belongs to. If not specified, it is a free schematic
276
+
277
+ </td></tr>
278
+ </tbody></table>
279
+
280
+ ## Returns
281
+
282
+ Promise&lt;string \| undefined&gt;
283
+
284
+ New schematic UUID. If it is `undefined`<!-- -->, the copy failed
285
+
286
+ ## Remarks
287
+
288
+ If the schematic is already associated with a reuse block (a reuse block symbol with the same name exists in the project library), copying the schematic will also create a new reuse block symbol
289
+
290
+ ## Example
291
+
292
+ ```javascript
293
+ // 1. 创建专用源原理图(自带图页 p1),等 1.5s 同步
294
+ const sourceUuid = await eda.dmt_Schematic.createSchematic();
295
+ await new Promise(r => setTimeout(r, 1500));
296
+
297
+ // 2. 复制源原理图,返回副本 UUID
298
+ const copiedUuid = await eda.dmt_Schematic.copySchematic(sourceUuid);
299
+ await new Promise(r => setTimeout(r, 1500));
300
+
301
+ // 3. 回读副本,确认名称与图页被完整复制
302
+ const copyInfo = await eda.dmt_Schematic.getSchematicInfo(copiedUuid);
303
+ console.log('copiedUuid:', copiedUuid);
304
+ console.log('copyName:', copyInfo?.name);
305
+ console.log('copyPages:', (copyInfo?.page || []).map(p => p.name).join(', '));
306
+
307
+ // 4. 清理本例创建的两个原理图(先删副本再删源),保持工程整洁
308
+ await new Promise(r => setTimeout(r, 1000));
309
+ const deletedCopy = await eda.dmt_Schematic.deleteSchematic(copiedUuid);
310
+ console.log('deleted:', deletedCopy);
311
+ await new Promise(r => setTimeout(r, 1000));
312
+ const deletedSource = await eda.dmt_Schematic.deleteSchematic(sourceUuid);
313
+ console.log('deleted:', deletedSource);
314
+ ```
315
+
316
+ ### copyschematicpage
317
+
318
+ # DMT\_Schematic.copySchematicPage() method
319
+
320
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
321
+
322
+ Copy Schematic sheet
323
+
324
+ ## Signature
325
+
326
+ ```typescript
327
+ function copySchematicPage(
328
+ schematicPageUuid: string,
329
+ schematicUuid?: string,
330
+ ): Promise<string | undefined>;
331
+ ```
332
+
333
+ ## Parameters
334
+
335
+ <table><thead><tr><th>
336
+
337
+ Parameter
338
+
339
+ </th><th>
340
+
341
+ Type
342
+
343
+ </th><th>
344
+
345
+ Description
346
+
347
+ </th></tr></thead>
348
+ <tbody><tr><td>
349
+
350
+ schematicPageUuid
351
+
352
+ </td><td>
353
+
354
+ string
355
+
356
+ </td><td>
357
+
358
+ Source schematic sheet UUID
359
+
360
+ </td></tr>
361
+ <tr><td>
362
+
363
+ schematicUuid
364
+
365
+ </td><td>
366
+
367
+ string
368
+
369
+ </td><td>
370
+
371
+ _(Optional)_ Target schematic UUID. If not specified, it is the current schematic
372
+
373
+ </td></tr>
374
+ </tbody></table>
375
+
376
+ ## Returns
377
+
378
+ Promise&lt;string \| undefined&gt;
379
+
380
+ New schematic sheet UUID. If it is `undefined`<!-- -->, the copy failed
381
+
382
+ ## Example
383
+
384
+ ```javascript
385
+ // 1. 创建专用测试原理图(自带图页 p1 作为复制源),等 1.5s 同步
386
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
387
+ await new Promise(r => setTimeout(r, 1500));
388
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
389
+ const sourcePageUuid = info.page[0].uuid;
390
+
391
+ // 2. 复制该图页,目标显式指定为同一原理图,返回新图页 UUID
392
+ const copiedUuid = await eda.dmt_Schematic.copySchematicPage(sourcePageUuid, schematicUuid);
393
+ await new Promise(r => setTimeout(r, 1500));
394
+
395
+ // 3. 回读副本图页,确认名称与归属
396
+ const copyPage = await eda.dmt_Schematic.getSchematicPageInfo(copiedUuid);
397
+ console.log('copiedUuid:', copiedUuid);
398
+ console.log('copyPageName:', copyPage?.name);
399
+ console.log('belongsToSchematic:', copyPage?.parentSchematicUuid === schematicUuid);
400
+
401
+ // 4. 清理本例创建的原理图(副本图页随之删除)
402
+ await new Promise(r => setTimeout(r, 1000));
403
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
404
+ console.log('deleted:', deleted);
405
+ ```
406
+
407
+ ### createschematic
408
+
409
+ # DMT\_Schematic.createSchematic() method
410
+
411
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
412
+
413
+ Create Schematic
414
+
415
+ ## Signature
416
+
417
+ ```typescript
418
+ function createSchematic(boardName?: string): Promise<string | undefined>;
419
+ ```
420
+
421
+ ## Parameters
422
+
423
+ <table><thead><tr><th>
424
+
425
+ Parameter
426
+
427
+ </th><th>
428
+
429
+ Type
430
+
431
+ </th><th>
432
+
433
+ Description
434
+
435
+ </th></tr></thead>
436
+ <tbody><tr><td>
437
+
438
+ boardName
439
+
440
+ </td><td>
441
+
442
+ string
443
+
444
+ </td><td>
445
+
446
+ _(Optional)_ Name of the board it belongs to. If not specified, it is a free schematic
447
+
448
+ </td></tr>
449
+ </tbody></table>
450
+
451
+ ## Returns
452
+
453
+ Promise&lt;string \| undefined&gt;
454
+
455
+ Schematic UUID, if it is `undefined` creation fails
456
+
457
+ ## Example
458
+
459
+ ```javascript
460
+ // 1. 创建原理图(不指定 boardName,得到游离原理图),返回新原理图 UUID
461
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
462
+ console.log('schematicUuid:', schematicUuid);
463
+
464
+ // 2. 等 1.5s 让原理图在工作区落地,回读确认(自带图页 p1)
465
+ await new Promise(r => setTimeout(r, 1500));
466
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
467
+ console.log('name:', info?.name);
468
+ console.log('pages:', (info?.page || []).map(p => p.name).join(', '));
469
+ console.log('parentBoardName:', info?.parentBoardName);
470
+
471
+ // 3. 删除本例创建的原理图,保持工程整洁
472
+ await new Promise(r => setTimeout(r, 1000));
473
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
474
+ console.log('deleted:', deleted);
475
+ ```
476
+
477
+ ### createschematicpage
478
+
479
+ # DMT\_Schematic.createSchematicPage() method
480
+
481
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
482
+
483
+ Create Schematic sheet
484
+
485
+ ## Signature
486
+
487
+ ```typescript
488
+ function createSchematicPage(schematicUuid: string): Promise<string | undefined>;
489
+ ```
490
+
491
+ ## Parameters
492
+
493
+ <table><thead><tr><th>
494
+
495
+ Parameter
496
+
497
+ </th><th>
498
+
499
+ Type
500
+
501
+ </th><th>
502
+
503
+ Description
504
+
505
+ </th></tr></thead>
506
+ <tbody><tr><td>
507
+
508
+ schematicUuid
509
+
510
+ </td><td>
511
+
512
+ string
513
+
514
+ </td><td>
515
+
516
+ UUID of the schematic it belongs to
517
+
518
+ </td></tr>
519
+ </tbody></table>
520
+
521
+ ## Returns
522
+
523
+ Promise&lt;string \| undefined&gt;
524
+
525
+ Schematic sheet UUID, if it is `undefined` creation fails
526
+
527
+ ## Example
528
+
529
+ ```javascript
530
+ // 1. 创建专用测试原理图(自带图页 p1),等 1.5s 同步
531
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
532
+ await new Promise(r => setTimeout(r, 1500));
533
+
534
+ // 2. 在该原理图下创建新图页,返回图页 UUID
535
+ const pageUuid = await eda.dmt_Schematic.createSchematicPage(schematicUuid);
536
+ console.log('pageUuid:', pageUuid);
537
+
538
+ // 3. 等 1.5s 同步,回读图页属性,确认归属
539
+ await new Promise(r => setTimeout(r, 1500));
540
+ const pageInfo = await eda.dmt_Schematic.getSchematicPageInfo(pageUuid);
541
+ console.log('pageName:', pageInfo?.name);
542
+ console.log('belongsToSchematic:', pageInfo?.parentSchematicUuid === schematicUuid);
543
+
544
+ // 4. 清理本例创建的原理图(图页随原理图一起删除)
545
+ await new Promise(r => setTimeout(r, 1000));
546
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
547
+ console.log('deleted:', deleted);
548
+ ```
549
+
550
+ ### deleteschematic
551
+
552
+ # DMT\_Schematic.deleteSchematic() method
553
+
554
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
555
+
556
+ Delete Schematic
557
+
558
+ ## Signature
559
+
560
+ ```typescript
561
+ function deleteSchematic(schematicUuid: string): Promise<boolean>;
562
+ ```
563
+
564
+ ## Parameters
565
+
566
+ <table><thead><tr><th>
567
+
568
+ Parameter
569
+
570
+ </th><th>
571
+
572
+ Type
573
+
574
+ </th><th>
575
+
576
+ Description
577
+
578
+ </th></tr></thead>
579
+ <tbody><tr><td>
580
+
581
+ schematicUuid
582
+
583
+ </td><td>
584
+
585
+ string
586
+
587
+ </td><td>
588
+
589
+ Schematic UUID
590
+
591
+ </td></tr>
592
+ </tbody></table>
593
+
594
+ ## Returns
595
+
596
+ Promise&lt;boolean&gt;
597
+
598
+ Whether the operation is successful
599
+
600
+ ## Remarks
601
+
602
+ If the schematic is already associated with a reuse block (a reuse block symbol with the same name exists in the project library), deleting the schematic will also delete the associated PCB and reuse block symbol. If the reuse block symbol cannot be deleted, it will be skipped
603
+
604
+ ## Example
605
+
606
+ ```javascript
607
+ // 1. 创建专用测试原理图(避免误删工程里的现有原理图),等 1.5s 同步
608
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
609
+ await new Promise(r => setTimeout(r, 1500));
610
+
611
+ // 2. 删除该原理图
612
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
613
+ console.log('deleted:', deleted);
614
+
615
+ // 3. 回读确认已删除(返回 undefined 说明原理图已不存在)
616
+ await new Promise(r => setTimeout(r, 1500));
617
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
618
+ console.log('info after delete:', info === undefined ? '已不存在' : info.name);
619
+ ```
620
+
621
+ ### deleteschematicpage
622
+
623
+ # DMT\_Schematic.deleteSchematicPage() method
624
+
625
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
626
+
627
+ Delete Schematic sheet
628
+
629
+ ## Signature
630
+
631
+ ```typescript
632
+ function deleteSchematicPage(schematicPageUuid: string): Promise<boolean>;
633
+ ```
634
+
635
+ ## Parameters
636
+
637
+ <table><thead><tr><th>
638
+
639
+ Parameter
640
+
641
+ </th><th>
642
+
643
+ Type
644
+
645
+ </th><th>
646
+
647
+ Description
648
+
649
+ </th></tr></thead>
650
+ <tbody><tr><td>
651
+
652
+ schematicPageUuid
653
+
654
+ </td><td>
655
+
656
+ string
657
+
658
+ </td><td>
659
+
660
+ Schematic sheet UUID
661
+
662
+ </td></tr>
663
+ </tbody></table>
664
+
665
+ ## Returns
666
+
667
+ Promise&lt;boolean&gt;
668
+
669
+ Whether the operation is successful
670
+
671
+ ## Example
672
+
673
+ ```javascript
674
+ // 1. 创建专用测试原理图(自带图页 p1),等 1.5s 同步
675
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
676
+ await new Promise(r => setTimeout(r, 1500));
677
+
678
+ // 2. 再追加一个测试图页 p2 作为删除目标
679
+ const pageUuid = await eda.dmt_Schematic.createSchematicPage(schematicUuid);
680
+ await new Promise(r => setTimeout(r, 1500));
681
+
682
+ // 3. 删除测试图页 p2(只删这一页,原理图保留)
683
+ const deleted = await eda.dmt_Schematic.deleteSchematicPage(pageUuid);
684
+ console.log('deleted:', deleted);
685
+
686
+ // 4. 回读确认:图页已不存在,原理图回到只剩 p1
687
+ await new Promise(r => setTimeout(r, 1500));
688
+ const pageInfo = await eda.dmt_Schematic.getSchematicPageInfo(pageUuid);
689
+ console.log('page after delete:', pageInfo === undefined ? '已不存在' : pageInfo.name);
690
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
691
+ console.log('remaining pages:', (info?.page || []).map(p => p.name).join(', '));
692
+
693
+ // 5. 清理测试原理图
694
+ await new Promise(r => setTimeout(r, 1000));
695
+ const deletedSch = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
696
+ console.log('deleted:', deletedSch);
697
+ ```
698
+
699
+ ### getallschematicpagesinfo
700
+
701
+ # DMT\_Schematic.getAllSchematicPagesInfo() method
702
+
703
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
704
+
705
+ Get all in the project schematic sheet detailed properties of
706
+
707
+ ## Signature
708
+
709
+ ```typescript
710
+ function getAllSchematicPagesInfo(): Promise<Array<IDMT_SchematicPageItem>>;
711
+ ```
712
+
713
+ ## Returns
714
+
715
+ Promise&lt;Array&lt;[IDMT\_SchematicPageItem](../interfaces/IDMT_SchematicPageItem.md)<!-- -->&gt;&gt;
716
+
717
+ Array of detailed properties of all schematic sheets
718
+
719
+ ## Example
720
+
721
+ ```javascript
722
+ // 1. 创建测试原理图并追加一页(共 2 页),保证列表里有新近创建的页
723
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
724
+ await new Promise(r => setTimeout(r, 1500));
725
+ await eda.dmt_Schematic.createSchematicPage(schematicUuid);
726
+ await new Promise(r => setTimeout(r, 1500));
727
+
728
+ // 2. 获取工程内所有图页的详细属性
729
+ const pages = await eda.dmt_Schematic.getAllSchematicPagesInfo();
730
+
731
+ // 3. 输出每页名称、UUID 与所属原理图,确认测试页在列
732
+ pages.slice(0, 10).forEach((p, i) => {
733
+ console.log(`page[${i}]:`, p.name, p.uuid, 'parent:', p.parentSchematicUuid);
734
+ });
735
+ console.log('total:', pages.length);
736
+ console.log('testPagesIncluded:', pages.filter(p => p.parentSchematicUuid === schematicUuid).length === 2);
737
+
738
+ // 4. 清理测试原理图
739
+ await new Promise(r => setTimeout(r, 1000));
740
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
741
+ console.log('deleted:', deleted);
742
+ ```
743
+
744
+ ### getallschematicsinfo
745
+
746
+ # DMT\_Schematic.getAllSchematicsInfo() method
747
+
748
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
749
+
750
+ Get all in the project schematic detailed properties of
751
+
752
+ ## Signature
753
+
754
+ ```typescript
755
+ function getAllSchematicsInfo(): Promise<Array<IDMT_SchematicItem>>;
756
+ ```
757
+
758
+ ## Returns
759
+
760
+ Promise&lt;Array&lt;[IDMT\_SchematicItem](../interfaces/IDMT_SchematicItem.md)<!-- -->&gt;&gt;
761
+
762
+ Array of detailed properties of all schematics
763
+
764
+ ## Example
765
+
766
+ ```javascript
767
+ // 1. 创建一个测试原理图并等 1.5s 同步,保证列表里有新近创建的对象
768
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
769
+ await new Promise(r => setTimeout(r, 1500));
770
+
771
+ // 2. 获取所有原理图的详细属性
772
+ const schematics = await eda.dmt_Schematic.getAllSchematicsInfo();
773
+
774
+ // 3. 输出每个原理图的名称、UUID 与图页数,确认测试原理图在列
775
+ schematics.slice(0, 10).forEach((s, i) => {
776
+ console.log(`schematic[${i}]:`, s.name, s.uuid, 'pages:', (s.page || []).length, 'board:', s.parentBoardName ?? '游离');
777
+ });
778
+ console.log('total:', schematics.length);
779
+ console.log('testSchematicIncluded:', schematics.some(s => s.uuid === schematicUuid));
780
+
781
+ // 4. 清理测试原理图
782
+ await new Promise(r => setTimeout(r, 1000));
783
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
784
+ console.log('deleted:', deleted);
785
+ ```
786
+
787
+ ### getcurrentschematicallschematicpagesinfo
788
+
789
+ # DMT\_Schematic.getCurrentSchematicAllSchematicPagesInfo() method
790
+
791
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
792
+
793
+ Get the detailed properties of all schematic sheets in the current schematic
794
+
795
+ ## Signature
796
+
797
+ ```typescript
798
+ function getCurrentSchematicAllSchematicPagesInfo(): Promise<Array<IDMT_SchematicPageItem>>;
799
+ ```
800
+
801
+ ## Returns
802
+
803
+ Promise&lt;Array&lt;[IDMT\_SchematicPageItem](../interfaces/IDMT_SchematicPageItem.md)<!-- -->&gt;&gt;
804
+
805
+ Array of detailed properties of all schematic sheets
806
+
807
+ ## Example
808
+
809
+ ```javascript
810
+ // 1. 创建专用测试原理图(自带图页 p1)并追加一页
811
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
812
+ await new Promise(r => setTimeout(r, 1500));
813
+ await eda.dmt_Schematic.createSchematicPage(schematicUuid);
814
+ await new Promise(r => setTimeout(r, 1500));
815
+
816
+ // 2. 打开测试原理图的自带图页 p1,把焦点切到该原理图上
817
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
818
+ await eda.dmt_EditorControl.openDocument(info.page[0].uuid);
819
+ await new Promise(r => setTimeout(r, 1000));
820
+
821
+ // 3. 获取当前原理图内所有图页的详细属性
822
+ const pages = await eda.dmt_Schematic.getCurrentSchematicAllSchematicPagesInfo();
823
+
824
+ // 4. 输出每页名称与 UUID,确认全部归属当前原理图
825
+ pages.forEach((p, i) => {
826
+ console.log(`page[${i}]:`, p.name, p.uuid);
827
+ });
828
+ console.log('total:', pages.length);
829
+ console.log('allBelongToCurrent:', pages.every(p => p.parentSchematicUuid === schematicUuid));
830
+
831
+ // 5. 清理测试原理图(处于打开状态也可以直接删除)
832
+ await new Promise(r => setTimeout(r, 1000));
833
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
834
+ console.log('deleted:', deleted);
835
+ ```
836
+
837
+ ### getcurrentschematicinfo
838
+
839
+ # DMT\_Schematic.getCurrentSchematicInfo() method
840
+
841
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
842
+
843
+ Get detailed properties of Current schematic
844
+
845
+ ## Signature
846
+
847
+ ```typescript
848
+ function getCurrentSchematicInfo(): Promise<IDMT_SchematicItem | undefined>;
849
+ ```
850
+
851
+ ## Returns
852
+
853
+ Promise&lt;[IDMT\_SchematicItem](../interfaces/IDMT_SchematicItem.md) \| undefined&gt;
854
+
855
+ Schematic detailed properties of; if it is `undefined`<!-- -->, the retrieval failed
856
+
857
+ ## Remarks
858
+
859
+ It will get the detailed properties of the schematic associated with the currently open schematic sheet that has the last input focus
860
+
861
+ ## Example
862
+
863
+ ```javascript
864
+ // 1. 创建专用测试原理图(自带图页 p1),打开该页让焦点落到测试原理图上
865
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
866
+ await new Promise(r => setTimeout(r, 1500));
867
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
868
+ await eda.dmt_EditorControl.openDocument(info.page[0].uuid);
869
+ await new Promise(r => setTimeout(r, 1000));
870
+
871
+ // 2. 获取当前焦点原理图的详细属性
872
+ const current = await eda.dmt_Schematic.getCurrentSchematicInfo();
873
+
874
+ // 3. 输出原理图的名称、UUID 与图页,确认正是测试原理图
875
+ console.log('name:', current?.name);
876
+ console.log('schematicUuid:', current?.uuid);
877
+ console.log('pages:', (current?.page || []).map(p => p.name).join(', '));
878
+ console.log('isFocusedSchematic:', current?.uuid === schematicUuid);
879
+
880
+ // 4. 清理测试原理图(处于打开状态也可以直接删除)
881
+ await new Promise(r => setTimeout(r, 1000));
882
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
883
+ console.log('deleted:', deleted);
884
+ ```
885
+
886
+ ### getcurrentschematicpageinfo
887
+
888
+ # DMT\_Schematic.getCurrentSchematicPageInfo() method
889
+
890
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
891
+
892
+ Get detailed properties of Current schematic sheet
893
+
894
+ ## Signature
895
+
896
+ ```typescript
897
+ function getCurrentSchematicPageInfo(): Promise<IDMT_SchematicPageItem | undefined>;
898
+ ```
899
+
900
+ ## Returns
901
+
902
+ Promise&lt;[IDMT\_SchematicPageItem](../interfaces/IDMT_SchematicPageItem.md) \| undefined&gt;
903
+
904
+ Schematic sheet detailed properties of; if it is `undefined`<!-- -->, the retrieval failed
905
+
906
+ ## Remarks
907
+
908
+ It will get the detailed properties of the currently open schematic sheet that has the last input focus
909
+
910
+ ## Example
911
+
912
+ ```javascript
913
+ // 1. 创建专用测试原理图(自带图页 p1)并打开该页,让焦点落到测试页上
914
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
915
+ await new Promise(r => setTimeout(r, 1500));
916
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
917
+ const pageUuid = info.page[0].uuid;
918
+ await eda.dmt_EditorControl.openDocument(pageUuid);
919
+ await new Promise(r => setTimeout(r, 1000));
920
+
921
+ // 2. 获取当前焦点图页的详细属性
922
+ const currentPage = await eda.dmt_Schematic.getCurrentSchematicPageInfo();
923
+
924
+ // 3. 输出图页名称、UUID、所属原理图与明细表开关,确认正是测试页
925
+ console.log('name:', currentPage?.name);
926
+ console.log('pageUuid:', currentPage?.uuid);
927
+ console.log('parentSchematicUuid:', currentPage?.parentSchematicUuid);
928
+ console.log('showTitleBlock:', currentPage?.showTitleBlock);
929
+ console.log('isFocusedPage:', currentPage?.uuid === pageUuid);
930
+
931
+ // 4. 清理测试原理图(处于打开状态也可以直接删除)
932
+ await new Promise(r => setTimeout(r, 1000));
933
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
934
+ console.log('deleted:', deleted);
935
+ ```
936
+
937
+ ### getschematicinfo
938
+
939
+ # DMT\_Schematic.getSchematicInfo() method
940
+
941
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
942
+
943
+ Get detailed properties of Schematic
944
+
945
+ ## Signature
946
+
947
+ ```typescript
948
+ function getSchematicInfo(schematicUuid: string): Promise<IDMT_SchematicItem | undefined>;
949
+ ```
950
+
951
+ ## Parameters
952
+
953
+ <table><thead><tr><th>
954
+
955
+ Parameter
956
+
957
+ </th><th>
958
+
959
+ Type
960
+
961
+ </th><th>
962
+
963
+ Description
964
+
965
+ </th></tr></thead>
966
+ <tbody><tr><td>
967
+
968
+ schematicUuid
969
+
970
+ </td><td>
971
+
972
+ string
973
+
974
+ </td><td>
975
+
976
+ Schematic UUID
977
+
978
+ </td></tr>
979
+ </tbody></table>
980
+
981
+ ## Returns
982
+
983
+ Promise&lt;[IDMT\_SchematicItem](../interfaces/IDMT_SchematicItem.md) \| undefined&gt;
984
+
985
+ Schematic detailed properties of; if it is `undefined`<!-- -->, the retrieval failed
986
+
987
+ ## Example
988
+
989
+ ```javascript
990
+ // 1. 创建测试原理图并等 1.5s 同步
991
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
992
+ await new Promise(r => setTimeout(r, 1500));
993
+
994
+ // 2. 按 UUID 查询原理图详细属性
995
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
996
+
997
+ // 3. 输出属性
998
+ console.log('name:', info?.name);
999
+ console.log('itemType:', info?.itemType);
1000
+ console.log('parentProjectUuid:', info?.parentProjectUuid);
1001
+ console.log('pages:', (info?.page || []).map(p => p.name).join(', '));
1002
+
1003
+ // 4. 清理测试原理图
1004
+ await new Promise(r => setTimeout(r, 1000));
1005
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
1006
+ console.log('deleted:', deleted);
1007
+ ```
1008
+
1009
+ ### getschematicpageinfo
1010
+
1011
+ # DMT\_Schematic.getSchematicPageInfo() method
1012
+
1013
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
1014
+
1015
+ Get detailed properties of Schematic sheet
1016
+
1017
+ ## Signature
1018
+
1019
+ ```typescript
1020
+ function getSchematicPageInfo(
1021
+ schematicPageUuid: string,
1022
+ ): Promise<IDMT_SchematicPageItem | undefined>;
1023
+ ```
1024
+
1025
+ ## Parameters
1026
+
1027
+ <table><thead><tr><th>
1028
+
1029
+ Parameter
1030
+
1031
+ </th><th>
1032
+
1033
+ Type
1034
+
1035
+ </th><th>
1036
+
1037
+ Description
1038
+
1039
+ </th></tr></thead>
1040
+ <tbody><tr><td>
1041
+
1042
+ schematicPageUuid
1043
+
1044
+ </td><td>
1045
+
1046
+ string
1047
+
1048
+ </td><td>
1049
+
1050
+ Schematic sheet UUID
1051
+
1052
+ </td></tr>
1053
+ </tbody></table>
1054
+
1055
+ ## Returns
1056
+
1057
+ Promise&lt;[IDMT\_SchematicPageItem](../interfaces/IDMT_SchematicPageItem.md) \| undefined&gt;
1058
+
1059
+ Schematic sheet detailed properties of; if it is `undefined`<!-- -->, the retrieval failed
1060
+
1061
+ ## Example
1062
+
1063
+ ```javascript
1064
+ // 1. 创建测试原理图(自带图页 p1)并等 1.5s 同步
1065
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
1066
+ await new Promise(r => setTimeout(r, 1500));
1067
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
1068
+ const pageUuid = info.page[0].uuid;
1069
+
1070
+ // 2. 按 UUID 查询图页详细属性
1071
+ const pageInfo = await eda.dmt_Schematic.getSchematicPageInfo(pageUuid);
1072
+
1073
+ // 3. 输出属性
1074
+ console.log('name:', pageInfo?.name);
1075
+ console.log('itemType:', pageInfo?.itemType);
1076
+ console.log('parentSchematicUuid:', pageInfo?.parentSchematicUuid);
1077
+ console.log('showTitleBlock:', pageInfo?.showTitleBlock);
1078
+ console.log('titleBlockFields:', Object.keys(pageInfo?.titleBlockData || {}).length);
1079
+
1080
+ // 4. 清理测试原理图
1081
+ await new Promise(r => setTimeout(r, 1000));
1082
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
1083
+ console.log('deleted:', deleted);
1084
+ ```
1085
+
1086
+ ### modifyschematicname
1087
+
1088
+ # DMT\_Schematic.modifySchematicName() method
1089
+
1090
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
1091
+
1092
+ Modify Schematic name
1093
+
1094
+ ## Signature
1095
+
1096
+ ```typescript
1097
+ function modifySchematicName(schematicUuid: string, schematicName: string): Promise<boolean>;
1098
+ ```
1099
+
1100
+ ## Parameters
1101
+
1102
+ <table><thead><tr><th>
1103
+
1104
+ Parameter
1105
+
1106
+ </th><th>
1107
+
1108
+ Type
1109
+
1110
+ </th><th>
1111
+
1112
+ Description
1113
+
1114
+ </th></tr></thead>
1115
+ <tbody><tr><td>
1116
+
1117
+ schematicUuid
1118
+
1119
+ </td><td>
1120
+
1121
+ string
1122
+
1123
+ </td><td>
1124
+
1125
+ Schematic UUID
1126
+
1127
+ </td></tr>
1128
+ <tr><td>
1129
+
1130
+ schematicName
1131
+
1132
+ </td><td>
1133
+
1134
+ string
1135
+
1136
+ </td><td>
1137
+
1138
+ Schematic name
1139
+
1140
+ </td></tr>
1141
+ </tbody></table>
1142
+
1143
+ ## Returns
1144
+
1145
+ Promise&lt;boolean&gt;
1146
+
1147
+ Whether Modify Successful
1148
+
1149
+ ## Remarks
1150
+
1151
+ If the schematic is already associated with a reuse block (a reuse block symbol with the same name exists in the project library), modifying the name will also modify the reuse block symbol name and the associated PCB name
1152
+
1153
+ ## Example
1154
+
1155
+ ```javascript
1156
+ // 1. 创建专用测试原理图(自带图页 p1)并等 1.5s 同步
1157
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
1158
+ await new Promise(r => setTimeout(r, 1500));
1159
+
1160
+ // 2. 打开自带图页 p1(改名只对已打开的原理图生效)
1161
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
1162
+ await eda.dmt_EditorControl.openDocument(info.page[0].uuid);
1163
+ await new Promise(r => setTimeout(r, 1000));
1164
+
1165
+ // 3. 修改原理图名称(只对本例创建的测试原理图改名)
1166
+ const newName = '嘉立创示例_原理图新名称';
1167
+ const renamed = await eda.dmt_Schematic.modifySchematicName(schematicUuid, newName);
1168
+ console.log('renamed:', renamed);
1169
+
1170
+ // 4. 等 1.5s 让改名同步,回读验证(英文名可能被归一化为小写,按不区分大小写比较)
1171
+ await new Promise(r => setTimeout(r, 1500));
1172
+ const after = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
1173
+ console.log('renamedTo:', after?.name);
1174
+ console.log('renameVerified:', (after?.name ?? '').toLowerCase() === newName.toLowerCase());
1175
+
1176
+ // 5. 清理测试原理图,保持工程整洁
1177
+ await new Promise(r => setTimeout(r, 1000));
1178
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
1179
+ console.log('deleted:', deleted);
1180
+ ```
1181
+
1182
+ ### modifyschematicpagename
1183
+
1184
+ # DMT\_Schematic.modifySchematicPageName() method
1185
+
1186
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
1187
+
1188
+ Modify Schematic sheet name
1189
+
1190
+ ## Signature
1191
+
1192
+ ```typescript
1193
+ function modifySchematicPageName(
1194
+ schematicPageUuid: string,
1195
+ schematicPageName: string,
1196
+ ): Promise<boolean>;
1197
+ ```
1198
+
1199
+ ## Parameters
1200
+
1201
+ <table><thead><tr><th>
1202
+
1203
+ Parameter
1204
+
1205
+ </th><th>
1206
+
1207
+ Type
1208
+
1209
+ </th><th>
1210
+
1211
+ Description
1212
+
1213
+ </th></tr></thead>
1214
+ <tbody><tr><td>
1215
+
1216
+ schematicPageUuid
1217
+
1218
+ </td><td>
1219
+
1220
+ string
1221
+
1222
+ </td><td>
1223
+
1224
+ Schematic sheet UUID
1225
+
1226
+ </td></tr>
1227
+ <tr><td>
1228
+
1229
+ schematicPageName
1230
+
1231
+ </td><td>
1232
+
1233
+ string
1234
+
1235
+ </td><td>
1236
+
1237
+ Schematic sheet name
1238
+
1239
+ </td></tr>
1240
+ </tbody></table>
1241
+
1242
+ ## Returns
1243
+
1244
+ Promise&lt;boolean&gt;
1245
+
1246
+ Whether Modify Successful
1247
+
1248
+ ## Example
1249
+
1250
+ ```javascript
1251
+ // 1. 创建专用测试原理图(自带图页 p1 作为改名目标)并等 1.5s 同步
1252
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
1253
+ await new Promise(r => setTimeout(r, 1500));
1254
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
1255
+ const pageUuid = info.page[0].uuid;
1256
+
1257
+ // 2. 修改图页名称(只对本例创建的测试图页改名)
1258
+ const newName = '嘉立创示例_电源页';
1259
+ const renamed = await eda.dmt_Schematic.modifySchematicPageName(pageUuid, newName);
1260
+ console.log('renamed:', renamed);
1261
+
1262
+ // 3. 等 1.5s 让改名同步,回读验证(英文名可能被归一化为小写,按不区分大小写比较)
1263
+ await new Promise(r => setTimeout(r, 1500));
1264
+ const after = await eda.dmt_Schematic.getSchematicPageInfo(pageUuid);
1265
+ console.log('renamedTo:', after?.name);
1266
+ console.log('renameVerified:', (after?.name ?? '').toLowerCase() === newName.toLowerCase());
1267
+
1268
+ // 4. 清理测试原理图,保持工程整洁
1269
+ await new Promise(r => setTimeout(r, 1000));
1270
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
1271
+ console.log('deleted:', deleted);
1272
+ ```
1273
+
1274
+ ### modifyschematicpagetitleblock
1275
+
1276
+ # DMT\_Schematic.modifySchematicPageTitleBlock() method
1277
+
1278
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
1279
+
1280
+ Modify the title block of a schematic sheet
1281
+
1282
+ ## Signature
1283
+
1284
+ ```typescript
1285
+ function modifySchematicPageTitleBlock(
1286
+ showTitleBlock?: boolean,
1287
+ titleBlockData?: Record<
1288
+ string,
1289
+ { showTitle?: undefined | false | true; showValue?: undefined | false | true; value?: any }
1290
+ >,
1291
+ ): Promise<boolean>;
1292
+ ```
1293
+
1294
+ ## Parameters
1295
+
1296
+ <table><thead><tr><th>
1297
+
1298
+ Parameter
1299
+
1300
+ </th><th>
1301
+
1302
+ Type
1303
+
1304
+ </th><th>
1305
+
1306
+ Description
1307
+
1308
+ </th></tr></thead>
1309
+ <tbody><tr><td>
1310
+
1311
+ showTitleBlock
1312
+
1313
+ </td><td>
1314
+
1315
+ boolean
1316
+
1317
+ </td><td>
1318
+
1319
+ _(Optional)_ Whether to show the title block. If undefined, the current state will be kept
1320
+
1321
+ </td></tr>
1322
+ <tr><td>
1323
+
1324
+ titleBlockData
1325
+
1326
+ </td><td>
1327
+
1328
+ Record&lt;string, { showTitle?: undefined \| false \| true; showValue?: undefined \| false \| true; value?: any }&gt;
1329
+
1330
+ </td><td>
1331
+
1332
+ _(Optional)_ The title block items to be modified and their modified values
1333
+
1334
+ </td></tr>
1335
+ </tbody></table>
1336
+
1337
+ ## Returns
1338
+
1339
+ Promise&lt;boolean&gt;
1340
+
1341
+ Whether the modification was successful. If `showTitleBlock` and `titleBlockData` are not passed in, `false` will be returned. Note that if unrecognized title block items exist but the program does not report an error, `true` will be returned because the unrecognized items are ignored
1342
+
1343
+ ## Remarks
1344
+
1345
+ `titleBlockData` only needs to pass in any title block items to be modified as `key`<!-- -->, along with the values to modify them to. Any unrecognized title block items will be ignored, and any unpassed items and values will remain in their default state
1346
+
1347
+ ## Example
1348
+
1349
+ ```javascript
1350
+ // 1. 创建专用测试原理图并打开自带图页 p1,让焦点落到目标页上
1351
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
1352
+ await new Promise(r => setTimeout(r, 1500));
1353
+ const info = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
1354
+ const pageUuid = info.page[0].uuid;
1355
+ await eda.dmt_EditorControl.openDocument(pageUuid);
1356
+ await new Promise(r => setTimeout(r, 1000));
1357
+
1358
+ // 2. 修改明细表:显示明细表,并把"公司"改为示例值(三个字段缺一不可)
1359
+ const modified = await eda.dmt_Schematic.modifySchematicPageTitleBlock(true, {
1360
+ Company: { showTitle: true, showValue: true, value: '嘉立创示例科技' },
1361
+ });
1362
+ console.log('modified:', modified);
1363
+
1364
+ // 3. 等 1.5s 同步,回读验证明细项已更新
1365
+ await new Promise(r => setTimeout(r, 1500));
1366
+ const after = await eda.dmt_Schematic.getSchematicPageInfo(pageUuid);
1367
+ console.log('showTitleBlock:', after?.showTitleBlock);
1368
+ console.log('company:', after?.titleBlockData?.Company?.value);
1369
+ console.log('modifyVerified:', after?.titleBlockData?.Company?.value === '嘉立创示例科技');
1370
+
1371
+ // 4. 清理测试原理图,保持工程整洁
1372
+ await new Promise(r => setTimeout(r, 1000));
1373
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
1374
+ console.log('deleted:', deleted);
1375
+ ```
1376
+
1377
+ ### reorderschematicpages
1378
+
1379
+ # DMT\_Schematic.reorderSchematicPages() method
1380
+
1381
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
1382
+
1383
+ Reorder schematic sheets
1384
+
1385
+ ## Signature
1386
+
1387
+ ```typescript
1388
+ function reorderSchematicPages(
1389
+ schematicUuid: string,
1390
+ schematicPageItemsArray: Array<IDMT_SchematicPageItem>,
1391
+ ): Promise<boolean>;
1392
+ ```
1393
+
1394
+ ## Parameters
1395
+
1396
+ <table><thead><tr><th>
1397
+
1398
+ Parameter
1399
+
1400
+ </th><th>
1401
+
1402
+ Type
1403
+
1404
+ </th><th>
1405
+
1406
+ Description
1407
+
1408
+ </th></tr></thead>
1409
+ <tbody><tr><td>
1410
+
1411
+ schematicUuid
1412
+
1413
+ </td><td>
1414
+
1415
+ string
1416
+
1417
+ </td><td>
1418
+
1419
+ The UUID of the schematic associated with the sheets being sorted
1420
+
1421
+ </td></tr>
1422
+ <tr><td>
1423
+
1424
+ schematicPageItemsArray
1425
+
1426
+ </td><td>
1427
+
1428
+ Array&lt;[IDMT\_SchematicPageItem](../interfaces/IDMT_SchematicPageItem.md)<!-- -->&gt;
1429
+
1430
+ </td><td>
1431
+
1432
+ Array of all schematic sheet properties
1433
+
1434
+ </td></tr>
1435
+ </tbody></table>
1436
+
1437
+ ## Returns
1438
+
1439
+ Promise&lt;boolean&gt;
1440
+
1441
+ Sorting whether the operation is successful
1442
+
1443
+ ## Remarks
1444
+
1445
+ Here, the array of source schematic sheet properties needs to be obtained through [DMT\_Schematic.getAllSchematicPagesInfo()](./DMT_Schematic.md) or other upstream methods. After sorting the array, pass it in
1446
+
1447
+ ## Example
1448
+
1449
+ ```javascript
1450
+ // 1. 创建专用测试原理图(自带图页 p1)并再追加两页,凑出可排序的页序列
1451
+ const schematicUuid = await eda.dmt_Schematic.createSchematic();
1452
+ await new Promise(r => setTimeout(r, 1500));
1453
+ await eda.dmt_Schematic.createSchematicPage(schematicUuid);
1454
+ await new Promise(r => setTimeout(r, 1500));
1455
+ await eda.dmt_Schematic.createSchematicPage(schematicUuid);
1456
+ await new Promise(r => setTimeout(r, 1500));
1457
+
1458
+ // 2. 从上游接口取得该原理图的全部图页,输出当前顺序
1459
+ const allPages = await eda.dmt_Schematic.getAllSchematicPagesInfo();
1460
+ const myPages = allPages.filter(p => p.parentSchematicUuid === schematicUuid);
1461
+ console.log('orderBefore:', myPages.map(p => p.name).join(' -> '));
1462
+
1463
+ // 3. 反转页序列后传入,执行重排
1464
+ const reversed = [...myPages].reverse();
1465
+ const reorderOk = await eda.dmt_Schematic.reorderSchematicPages(schematicUuid, reversed);
1466
+ console.log('reorderOk:', reorderOk);
1467
+
1468
+ // 4. 等 1.5s 同步,回读当前页顺序
1469
+ await new Promise(r => setTimeout(r, 1500));
1470
+ const after = await eda.dmt_Schematic.getSchematicInfo(schematicUuid);
1471
+ console.log('orderAfter:', (after?.page || []).map(p => p.name).join(' -> '));
1472
+
1473
+ // 5. 清理测试原理图,保持工程整洁
1474
+ await new Promise(r => setTimeout(r, 1000));
1475
+ const deleted = await eda.dmt_Schematic.deleteSchematic(schematicUuid);
1476
+ console.log('deleted:', deleted);
1477
+ ```