@windypro-rourou/dsh-eda 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +12 -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,1171 @@
1
+ # SYS\_FileSystem class
2
+
3
+ System / file system interaction class
4
+
5
+ ## Signature
6
+
7
+ ```typescript
8
+ class SYS_FileSystem
9
+ ```
10
+
11
+ ## Remarks
12
+
13
+ ## Methods
14
+
15
+ <table><thead><tr><th>
16
+
17
+ Method
18
+
19
+ </th><th>
20
+
21
+ Modifiers
22
+
23
+ </th><th>
24
+
25
+ Description
26
+
27
+ </th></tr></thead>
28
+ <tbody><tr><td>
29
+
30
+ [createDirectoryInFileSystem(folderPath)](./SYS_FileSystem.md)
31
+
32
+ </td><td>
33
+
34
+ </td><td>
35
+
36
+ **_(BETA)_** In file system in create folder
37
+
38
+ </td></tr>
39
+ <tr><td>
40
+
41
+ [createObjectURL(blob)](./SYS_FileSystem.md)
42
+
43
+ </td><td>
44
+
45
+ </td><td>
46
+
47
+ Create ObjectURL
48
+
49
+ </td></tr>
50
+ <tr><td>
51
+
52
+ [deleteFileInFileSystem(uri, force)](./SYS_FileSystem.md)
53
+
54
+ </td><td>
55
+
56
+ </td><td>
57
+
58
+ **_(BETA)_** Delete a file in the file system
59
+
60
+ </td></tr>
61
+ <tr><td>
62
+
63
+ [existsPathInFileSystem(uri)](./SYS_FileSystem.md)
64
+
65
+ </td><td>
66
+
67
+ </td><td>
68
+
69
+ **_(BETA)_** Check whether a file or directory exists in the file system
70
+
71
+ </td></tr>
72
+ <tr><td>
73
+
74
+ [getDocumentsPath()](./SYS_FileSystem.md)
75
+
76
+ </td><td>
77
+
78
+ </td><td>
79
+
80
+ **_(BETA)_** Get the document directory path
81
+
82
+ </td></tr>
83
+ <tr><td>
84
+
85
+ [getEdaPath()](./SYS_FileSystem.md)
86
+
87
+ </td><td>
88
+
89
+ </td><td>
90
+
91
+ **_(BETA)_** Get the EDA document directory path
92
+
93
+ </td></tr>
94
+ <tr><td>
95
+
96
+ [getExtensionFile(uri)](./SYS_FileSystem.md)
97
+
98
+ </td><td>
99
+
100
+ </td><td>
101
+
102
+ Get a file from the extension
103
+
104
+ </td></tr>
105
+ <tr><td>
106
+
107
+ [getLibrariesPaths()](./SYS_FileSystem.md)
108
+
109
+ </td><td>
110
+
111
+ </td><td>
112
+
113
+ **_(BETA)_** Get the library directory paths
114
+
115
+ </td></tr>
116
+ <tr><td>
117
+
118
+ [getProjectsPaths()](./SYS_FileSystem.md)
119
+
120
+ </td><td>
121
+
122
+ </td><td>
123
+
124
+ **_(BETA)_** Get the project directory paths
125
+
126
+ </td></tr>
127
+ <tr><td>
128
+
129
+ [listFilesOfFileSystem(folderPath, recursive)](./SYS_FileSystem.md)
130
+
131
+ </td><td>
132
+
133
+ </td><td>
134
+
135
+ **_(BETA)_** View the file list under a file system path
136
+
137
+ </td></tr>
138
+ <tr><td>
139
+
140
+ [openReadFileDialog(filenameExtensions, multiFiles)](./SYS_FileSystem.md)
141
+
142
+ </td><td>
143
+
144
+ </td><td>
145
+
146
+ **_(BETA)_** Open the read-file dialog
147
+
148
+ </td></tr>
149
+ <tr><td>
150
+
151
+ [openReadFileDialog(filenameExtensions, multiFiles)](./SYS_FileSystem.md)
152
+
153
+ </td><td>
154
+
155
+ </td><td>
156
+
157
+ **_(BETA)_** Open the read-file dialog
158
+
159
+ </td></tr>
160
+ <tr><td>
161
+
162
+ [openReadFolderDialog()](./SYS_FileSystem.md)
163
+
164
+ </td><td>
165
+
166
+ </td><td>
167
+
168
+ **_(BETA)_** Open the read-folder dialog
169
+
170
+ </td></tr>
171
+ <tr><td>
172
+
173
+ [readFileFromFileSystem(uri)](./SYS_FileSystem.md)
174
+
175
+ </td><td>
176
+
177
+ </td><td>
178
+
179
+ **_(BETA)_** Read a file from the file system
180
+
181
+ </td></tr>
182
+ <tr><td>
183
+
184
+ [revokeObjectURL(url)](./SYS_FileSystem.md)
185
+
186
+ </td><td>
187
+
188
+ </td><td>
189
+
190
+ Revoke the ObjectURL
191
+
192
+ </td></tr>
193
+ <tr><td>
194
+
195
+ [saveFile(fileData, fileName)](./SYS_FileSystem.md)
196
+
197
+ </td><td>
198
+
199
+ </td><td>
200
+
201
+ Save File
202
+
203
+ </td></tr>
204
+ <tr><td>
205
+
206
+ [saveFileToFileSystem(uri, fileData, fileName, force)](./SYS_FileSystem.md)
207
+
208
+ </td><td>
209
+
210
+ </td><td>
211
+
212
+ **_(BETA)_** Write a file to the file system
213
+
214
+ </td></tr>
215
+ </tbody></table>
216
+
217
+ ---
218
+
219
+ ## 方法详情
220
+
221
+ ### createdirectoryinfilesystem
222
+
223
+ # SYS\_FileSystem.createDirectoryInFileSystem() method
224
+
225
+ > 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.
226
+
227
+ In file system in create folder
228
+
229
+ ## Signature
230
+
231
+ ```typescript
232
+ function createDirectoryInFileSystem(folderPath: string): Promise<boolean>;
233
+ ```
234
+
235
+ ## Parameters
236
+
237
+ <table><thead><tr><th>
238
+
239
+ Parameter
240
+
241
+ </th><th>
242
+
243
+ Type
244
+
245
+ </th><th>
246
+
247
+ Description
248
+
249
+ </th></tr></thead>
250
+ <tbody><tr><td>
251
+
252
+ folderPath
253
+
254
+ </td><td>
255
+
256
+ string
257
+
258
+ </td><td>
259
+
260
+ Folder path
261
+
262
+ </td></tr>
263
+ </tbody></table>
264
+
265
+ ## Returns
266
+
267
+ Promise&lt;boolean&gt;
268
+
269
+ Create Whether the operation is successful
270
+
271
+ ## Remarks
272
+
273
+ Supports recursively creating multi-level directories
274
+
275
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
276
+
277
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error` ADD since EDA v3.2.166
278
+
279
+ ### createobjecturl
280
+
281
+ # SYS\_FileSystem.createObjectURL() method
282
+
283
+ Create ObjectURL
284
+
285
+ ## Signature
286
+
287
+ ```typescript
288
+ function createObjectURL(blob: Blob | File): string;
289
+ ```
290
+
291
+ ## Parameters
292
+
293
+ <table><thead><tr><th>
294
+
295
+ Parameter
296
+
297
+ </th><th>
298
+
299
+ Type
300
+
301
+ </th><th>
302
+
303
+ Description
304
+
305
+ </th></tr></thead>
306
+ <tbody><tr><td>
307
+
308
+ blob
309
+
310
+ </td><td>
311
+
312
+ Blob \| File
313
+
314
+ </td><td>
315
+
316
+ Blob or File object
317
+
318
+ </td></tr>
319
+ </tbody></table>
320
+
321
+ ## Returns
322
+
323
+ string
324
+
325
+ ObjectURL string
326
+
327
+ ## Remarks
328
+
329
+ Create an ObjectURL pointing to the passed-in Blob / File object ADD since EDA v3.2.162
330
+
331
+ ## Example
332
+
333
+ ```javascript
334
+ // 1. 构造一段文本数据
335
+ const blob = new Blob(['嘉立创示例数据'], { type: 'text/plain' });
336
+
337
+ // 2. 创建 ObjectURL(同步方法,直接返回字符串)
338
+ const url = eda.sys_FileSystem.createObjectURL(blob);
339
+
340
+ console.log('ObjectURL:', url);
341
+ ```
342
+
343
+ ### deletefileinfilesystem
344
+
345
+ # SYS\_FileSystem.deleteFileInFileSystem() method
346
+
347
+ > 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.
348
+
349
+ Delete a file in the file system
350
+
351
+ ## Signature
352
+
353
+ ```typescript
354
+ function deleteFileInFileSystem(uri: string, force?: boolean): Promise<boolean>;
355
+ ```
356
+
357
+ ## Parameters
358
+
359
+ <table><thead><tr><th>
360
+
361
+ Parameter
362
+
363
+ </th><th>
364
+
365
+ Type
366
+
367
+ </th><th>
368
+
369
+ Description
370
+
371
+ </th></tr></thead>
372
+ <tbody><tr><td>
373
+
374
+ uri
375
+
376
+ </td><td>
377
+
378
+ string
379
+
380
+ </td><td>
381
+
382
+ File resource locator. If it ends with a slash `/` (a backslash `\` on Windows), it is recognized as a folder; if it does not end with a slash, it is recognized as a complete file name, in which case the `fileName` parameter is ignored
383
+
384
+ </td></tr>
385
+ <tr><td>
386
+
387
+ force
388
+
389
+ </td><td>
390
+
391
+ boolean
392
+
393
+ </td><td>
394
+
395
+ _(Optional)_ Force delete the folder (whether to force delete the folder when the target is a folder containing files)
396
+
397
+ </td></tr>
398
+ </tbody></table>
399
+
400
+ ## Returns
401
+
402
+ Promise&lt;boolean&gt;
403
+
404
+ Delete Whether the operation is successful
405
+
406
+ ## Remarks
407
+
408
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
409
+
410
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`
411
+
412
+ ### existspathinfilesystem
413
+
414
+ # SYS\_FileSystem.existsPathInFileSystem() method
415
+
416
+ > 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.
417
+
418
+ Check whether a file or directory exists in the file system
419
+
420
+ ## Signature
421
+
422
+ ```typescript
423
+ function existsPathInFileSystem(uri: string): Promise<boolean>;
424
+ ```
425
+
426
+ ## Parameters
427
+
428
+ <table><thead><tr><th>
429
+
430
+ Parameter
431
+
432
+ </th><th>
433
+
434
+ Type
435
+
436
+ </th><th>
437
+
438
+ Description
439
+
440
+ </th></tr></thead>
441
+ <tbody><tr><td>
442
+
443
+ uri
444
+
445
+ </td><td>
446
+
447
+ string
448
+
449
+ </td><td>
450
+
451
+ File resource locator. An absolute path containing the complete file name is required
452
+
453
+ </td></tr>
454
+ </tbody></table>
455
+
456
+ ## Returns
457
+
458
+ Promise&lt;boolean&gt;
459
+
460
+ Whether the file or directory exists
461
+
462
+ ## Remarks
463
+
464
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
465
+
466
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error` ADD since EDA v3.2.167
467
+
468
+ ### getdocumentspath
469
+
470
+ # SYS\_FileSystem.getDocumentsPath() method
471
+
472
+ > 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.
473
+
474
+ Get the document directory path
475
+
476
+ ## Signature
477
+
478
+ ```typescript
479
+ function getDocumentsPath(): Promise<string>;
480
+ ```
481
+
482
+ ## Returns
483
+
484
+ Promise&lt;string&gt;
485
+
486
+ Document directory path
487
+
488
+ ## Remarks
489
+
490
+ In the returned path, the end does not contain a slash `/` (or a backslash `\`<!-- -->)
491
+
492
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
493
+
494
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`
495
+
496
+ ### getedapath
497
+
498
+ # SYS\_FileSystem.getEdaPath() method
499
+
500
+ > 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.
501
+
502
+ Get the EDA document directory path
503
+
504
+ ## Signature
505
+
506
+ ```typescript
507
+ function getEdaPath(): Promise<string>;
508
+ ```
509
+
510
+ ## Returns
511
+
512
+ Promise&lt;string&gt;
513
+
514
+ EDA document directory path
515
+
516
+ ## Remarks
517
+
518
+ In the returned path, the end does not contain a slash `/` (or a backslash `\`<!-- -->)
519
+
520
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
521
+
522
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`
523
+
524
+ ### getextensionfile
525
+
526
+ # SYS\_FileSystem.getExtensionFile() method
527
+
528
+ Get a file from the extension
529
+
530
+ ## Signature
531
+
532
+ ```typescript
533
+ function getExtensionFile(uri: string): Promise<File | undefined>;
534
+ ```
535
+
536
+ ## Parameters
537
+
538
+ <table><thead><tr><th>
539
+
540
+ Parameter
541
+
542
+ </th><th>
543
+
544
+ Type
545
+
546
+ </th><th>
547
+
548
+ Description
549
+
550
+ </th></tr></thead>
551
+ <tbody><tr><td>
552
+
553
+ uri
554
+
555
+ </td><td>
556
+
557
+ string
558
+
559
+ </td><td>
560
+
561
+ File path
562
+
563
+ </td></tr>
564
+ </tbody></table>
565
+
566
+ ## Returns
567
+
568
+ Promise&lt;File \| undefined&gt;
569
+
570
+ File format file
571
+
572
+ ## Example
573
+
574
+ ```javascript
575
+ // 1. 读取扩展安装目录下的 extension.json
576
+ const file = await eda.sys_FileSystem.getExtensionFile('extension.json');
577
+
578
+ // 2. 输出文件信息(size 单位为字节,内容可用 file.text() 读取)
579
+ console.log('文件名:', file.name);
580
+ console.log('文件大小:', file.size);
581
+ ```
582
+
583
+ ### getlibrariespaths
584
+
585
+ # SYS\_FileSystem.getLibrariesPaths() method
586
+
587
+ > 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.
588
+
589
+ Get the library directory paths
590
+
591
+ ## Signature
592
+
593
+ ```typescript
594
+ function getLibrariesPaths(): Promise<Array<string>>;
595
+ ```
596
+
597
+ ## Returns
598
+
599
+ Promise&lt;Array&lt;string&gt;&gt;
600
+
601
+ Array of library directory paths
602
+
603
+ ## Remarks
604
+
605
+ Note 1: This API is only valid for fully offline clients. Calling it in a browser environment will always `throw Error`
606
+
607
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`
608
+
609
+ ### getprojectspaths
610
+
611
+ # SYS\_FileSystem.getProjectsPaths() method
612
+
613
+ > 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.
614
+
615
+ Get the project directory paths
616
+
617
+ ## Signature
618
+
619
+ ```typescript
620
+ function getProjectsPaths(): Promise<Array<string>>;
621
+ ```
622
+
623
+ ## Returns
624
+
625
+ Promise&lt;Array&lt;string&gt;&gt;
626
+
627
+ Array of project directory paths
628
+
629
+ ## Remarks
630
+
631
+ Note 1: This API is only valid for semi-offline and fully offline clients. Calling it in a browser environment will always `throw Error`
632
+
633
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`
634
+
635
+ ### listfilesoffilesystem
636
+
637
+ # SYS\_FileSystem.listFilesOfFileSystem() method
638
+
639
+ > 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.
640
+
641
+ View the file list under a file system path
642
+
643
+ ## Signature
644
+
645
+ ```typescript
646
+ function listFilesOfFileSystem(
647
+ folderPath: string,
648
+ recursive?: boolean,
649
+ ): Promise<Array<ISYS_FileSystemFileList>>;
650
+ ```
651
+
652
+ ## Parameters
653
+
654
+ <table><thead><tr><th>
655
+
656
+ Parameter
657
+
658
+ </th><th>
659
+
660
+ Type
661
+
662
+ </th><th>
663
+
664
+ Description
665
+
666
+ </th></tr></thead>
667
+ <tbody><tr><td>
668
+
669
+ folderPath
670
+
671
+ </td><td>
672
+
673
+ string
674
+
675
+ </td><td>
676
+
677
+ Directory path
678
+
679
+ </td></tr>
680
+ <tr><td>
681
+
682
+ recursive
683
+
684
+ </td><td>
685
+
686
+ boolean
687
+
688
+ </td><td>
689
+
690
+ _(Optional)_ Whether to recursively get all sub-files
691
+
692
+ </td></tr>
693
+ </tbody></table>
694
+
695
+ ## Returns
696
+
697
+ Promise&lt;Array&lt;[ISYS\_FileSystemFileList](../interfaces/ISYS_FileSystemFileList.md)<!-- -->&gt;&gt;
698
+
699
+ File list in the current directory
700
+
701
+ ## Remarks
702
+
703
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
704
+
705
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`
706
+
707
+ ### openreadfiledialog
708
+
709
+ # SYS\_FileSystem.openReadFileDialog() method
710
+
711
+ > 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.
712
+
713
+ Open the read-file dialog
714
+
715
+ ## Signature
716
+
717
+ ```typescript
718
+ function openReadFileDialog(
719
+ filenameExtensions?: string | Array<string>,
720
+ multiFiles?: true,
721
+ ): Promise<Array<File> | undefined>;
722
+ ```
723
+
724
+ ## Parameters
725
+
726
+ <table><thead><tr><th>
727
+
728
+ Parameter
729
+
730
+ </th><th>
731
+
732
+ Type
733
+
734
+ </th><th>
735
+
736
+ Description
737
+
738
+ </th></tr></thead>
739
+ <tbody><tr><td>
740
+
741
+ filenameExtensions
742
+
743
+ </td><td>
744
+
745
+ string \| Array&lt;string&gt;
746
+
747
+ </td><td>
748
+
749
+ _(Optional)_ File extension
750
+
751
+ </td></tr>
752
+ <tr><td>
753
+
754
+ multiFiles
755
+
756
+ </td><td>
757
+
758
+ true
759
+
760
+ </td><td>
761
+
762
+ _(Optional)_ Whether multiple files are allowed to be read
763
+
764
+ </td></tr>
765
+ </tbody></table>
766
+
767
+ ## Returns
768
+
769
+ Promise&lt;Array&lt;File&gt; \| undefined&gt;
770
+
771
+ File format file array
772
+
773
+ ## Example
774
+
775
+ ```javascript
776
+ // 1. 打开选择窗口(限定 .json 文件,单选;用户选择前 Promise 一直挂起)
777
+ eda.sys_FileSystem.openReadFileDialog('.json').then((file) => {
778
+ // 用户完成选择后触发;直接关闭窗口时 file 为 undefined
779
+ if (file) {
780
+ console.log('已选择文件:', file.name);
781
+ }
782
+ });
783
+
784
+ // 2. 窗口已弹出,主流程不等待用户操作
785
+ console.log('已打开文件选择窗口');
786
+ ```
787
+
788
+ ### openreadfiledialog_1
789
+
790
+ # SYS\_FileSystem.openReadFileDialog() method
791
+
792
+ > 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.
793
+
794
+ Open the read-file dialog
795
+
796
+ ## Signature
797
+
798
+ ```typescript
799
+ function openReadFileDialog(
800
+ filenameExtensions?: string | Array<string>,
801
+ multiFiles?: false,
802
+ ): Promise<File | undefined>;
803
+ ```
804
+
805
+ ## Parameters
806
+
807
+ <table><thead><tr><th>
808
+
809
+ Parameter
810
+
811
+ </th><th>
812
+
813
+ Type
814
+
815
+ </th><th>
816
+
817
+ Description
818
+
819
+ </th></tr></thead>
820
+ <tbody><tr><td>
821
+
822
+ filenameExtensions
823
+
824
+ </td><td>
825
+
826
+ string \| Array&lt;string&gt;
827
+
828
+ </td><td>
829
+
830
+ _(Optional)_ File extension
831
+
832
+ </td></tr>
833
+ <tr><td>
834
+
835
+ multiFiles
836
+
837
+ </td><td>
838
+
839
+ false
840
+
841
+ </td><td>
842
+
843
+ _(Optional)_ Whether multiple files are allowed to be read
844
+
845
+ </td></tr>
846
+ </tbody></table>
847
+
848
+ ## Returns
849
+
850
+ Promise&lt;File \| undefined&gt;
851
+
852
+ File format file
853
+
854
+ ### openreadfolderdialog
855
+
856
+ # SYS\_FileSystem.openReadFolderDialog() method
857
+
858
+ > 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.
859
+
860
+ Open the read-folder dialog
861
+
862
+ ## Signature
863
+
864
+ ```typescript
865
+ function openReadFolderDialog(): Promise<Array<{ relativePath: string; file: File }>>;
866
+ ```
867
+
868
+ ## Returns
869
+
870
+ Promise&lt;Array&lt;{ relativePath: string; file: File }&gt;&gt;
871
+
872
+ All read files and their path information
873
+
874
+ ## Remarks
875
+
876
+ developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory \| MDN<!-- -->} ADD since EDA v4.2
877
+
878
+ ### readfilefromfilesystem
879
+
880
+ # SYS\_FileSystem.readFileFromFileSystem() method
881
+
882
+ > 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.
883
+
884
+ Read a file from the file system
885
+
886
+ ## Signature
887
+
888
+ ```typescript
889
+ function readFileFromFileSystem(uri: string): Promise<File | undefined>;
890
+ ```
891
+
892
+ ## Parameters
893
+
894
+ <table><thead><tr><th>
895
+
896
+ Parameter
897
+
898
+ </th><th>
899
+
900
+ Type
901
+
902
+ </th><th>
903
+
904
+ Description
905
+
906
+ </th></tr></thead>
907
+ <tbody><tr><td>
908
+
909
+ uri
910
+
911
+ </td><td>
912
+
913
+ string
914
+
915
+ </td><td>
916
+
917
+ File resource locator. An absolute path containing the complete file name is required
918
+
919
+ </td></tr>
920
+ </tbody></table>
921
+
922
+ ## Returns
923
+
924
+ Promise&lt;File \| undefined&gt;
925
+
926
+ File format file
927
+
928
+ ## Remarks
929
+
930
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
931
+
932
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`
933
+
934
+ ### revokeobjecturl
935
+
936
+ # SYS\_FileSystem.revokeObjectURL() method
937
+
938
+ Revoke the ObjectURL
939
+
940
+ ## Signature
941
+
942
+ ```typescript
943
+ function revokeObjectURL(url: string): void;
944
+ ```
945
+
946
+ ## Parameters
947
+
948
+ <table><thead><tr><th>
949
+
950
+ Parameter
951
+
952
+ </th><th>
953
+
954
+ Type
955
+
956
+ </th><th>
957
+
958
+ Description
959
+
960
+ </th></tr></thead>
961
+ <tbody><tr><td>
962
+
963
+ url
964
+
965
+ </td><td>
966
+
967
+ string
968
+
969
+ </td><td>
970
+
971
+ ObjectURL string
972
+
973
+ </td></tr>
974
+ </tbody></table>
975
+
976
+ ## Returns
977
+
978
+ void
979
+
980
+ ## Remarks
981
+
982
+ Revoke the specified ObjectURL ADD since EDA v3.2.162
983
+
984
+ ## Example
985
+
986
+ ```javascript
987
+ // 1. 先创建一个 ObjectURL
988
+ const blob = new Blob(['嘉立创示例数据']);
989
+ const url = eda.sys_FileSystem.createObjectURL(blob);
990
+ console.log('创建的 ObjectURL:', url);
991
+
992
+ // 2. 用完后吊销(同步方法,无返回值)
993
+ eda.sys_FileSystem.revokeObjectURL(url);
994
+ console.log('已吊销');
995
+ ```
996
+
997
+ ### savefile
998
+
999
+ # SYS\_FileSystem.saveFile() method
1000
+
1001
+ Save File
1002
+
1003
+ ## Signature
1004
+
1005
+ ```typescript
1006
+ function saveFile(fileData: File | Blob, fileName?: string): Promise<void>;
1007
+ ```
1008
+
1009
+ ## Parameters
1010
+
1011
+ <table><thead><tr><th>
1012
+
1013
+ Parameter
1014
+
1015
+ </th><th>
1016
+
1017
+ Type
1018
+
1019
+ </th><th>
1020
+
1021
+ Description
1022
+
1023
+ </th></tr></thead>
1024
+ <tbody><tr><td>
1025
+
1026
+ fileData
1027
+
1028
+ </td><td>
1029
+
1030
+ File \| Blob
1031
+
1032
+ </td><td>
1033
+
1034
+ File data
1035
+
1036
+ </td></tr>
1037
+ <tr><td>
1038
+
1039
+ fileName
1040
+
1041
+ </td><td>
1042
+
1043
+ string
1044
+
1045
+ </td><td>
1046
+
1047
+ _(Optional)_ File name
1048
+
1049
+ </td></tr>
1050
+ </tbody></table>
1051
+
1052
+ ## Returns
1053
+
1054
+ Promise&lt;void&gt;
1055
+
1056
+ ## Remarks
1057
+
1058
+ Calls the browser download API or the Electron save-file API to save the passed-in file stream locally
1059
+
1060
+ ## Example
1061
+
1062
+ ```javascript
1063
+ // 1. 构造要保存的 CSV 内容
1064
+ const content = '编号,器件,数量\n1,C0402,10\n2,C0603,20';
1065
+ const blob = new Blob([content], { type: 'text/csv' });
1066
+
1067
+ // 2. 保存到本地(完成后 Promise 才结束)
1068
+ await eda.sys_FileSystem.saveFile(blob, '嘉立创示例_BOM导出.csv');
1069
+
1070
+ console.log('已保存文件:', '嘉立创示例_BOM导出.csv', blob.size, '字节');
1071
+ ```
1072
+
1073
+ ### savefiletofilesystem
1074
+
1075
+ # SYS\_FileSystem.saveFileToFileSystem() method
1076
+
1077
+ > 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.
1078
+
1079
+ Write a file to the file system
1080
+
1081
+ ## Signature
1082
+
1083
+ ```typescript
1084
+ function saveFileToFileSystem(
1085
+ uri: string,
1086
+ fileData: File | Blob,
1087
+ fileName?: string,
1088
+ force?: boolean,
1089
+ ): Promise<boolean>;
1090
+ ```
1091
+
1092
+ ## Parameters
1093
+
1094
+ <table><thead><tr><th>
1095
+
1096
+ Parameter
1097
+
1098
+ </th><th>
1099
+
1100
+ Type
1101
+
1102
+ </th><th>
1103
+
1104
+ Description
1105
+
1106
+ </th></tr></thead>
1107
+ <tbody><tr><td>
1108
+
1109
+ uri
1110
+
1111
+ </td><td>
1112
+
1113
+ string
1114
+
1115
+ </td><td>
1116
+
1117
+ File resource locator. If it ends with a slash `/` (a backslash `\` on Windows), it is recognized as a folder; if it does not end with a slash, it is recognized as a complete file name, in which case the `fileName` parameter is ignored
1118
+
1119
+ </td></tr>
1120
+ <tr><td>
1121
+
1122
+ fileData
1123
+
1124
+ </td><td>
1125
+
1126
+ File \| Blob
1127
+
1128
+ </td><td>
1129
+
1130
+ File data
1131
+
1132
+ </td></tr>
1133
+ <tr><td>
1134
+
1135
+ fileName
1136
+
1137
+ </td><td>
1138
+
1139
+ string
1140
+
1141
+ </td><td>
1142
+
1143
+ _(Optional)_ File name
1144
+
1145
+ </td></tr>
1146
+ <tr><td>
1147
+
1148
+ force
1149
+
1150
+ </td><td>
1151
+
1152
+ boolean
1153
+
1154
+ </td><td>
1155
+
1156
+ _(Optional)_ Force write (overwrite the file if it exists)
1157
+
1158
+ </td></tr>
1159
+ </tbody></table>
1160
+
1161
+ ## Returns
1162
+
1163
+ Promise&lt;boolean&gt;
1164
+
1165
+ Whether the write operation was successful. If overwriting is not allowed but the file already exists, `false` is returned
1166
+
1167
+ ## Remarks
1168
+
1169
+ Note 1: This API is only valid for clients. Calling it in a browser environment will always `throw Error`
1170
+
1171
+ Note 2: This API requires the user to enable the extension external interaction permission, if not enabled, it will always `throw Error`