pycompiler-ark 1.1.0__py3-none-any.whl

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 (455) hide show
  1. pycompiler_ark/Core/AdvancedConfigEditor.py +141 -0
  2. pycompiler_ark/Core/Auto_Command_Builder/__init__.py +45 -0
  3. pycompiler_ark/Core/Auto_Command_Builder/auto_build.py +876 -0
  4. pycompiler_ark/Core/Compiler/__init__.py +82 -0
  5. pycompiler_ark/Core/Compiler/engine_runner.py +495 -0
  6. pycompiler_ark/Core/Compiler/utils.py +526 -0
  7. pycompiler_ark/Core/Configs/__init__.py +675 -0
  8. pycompiler_ark/Core/Globals.py +74 -0
  9. pycompiler_ark/Core/Locking/__init__.py +398 -0
  10. pycompiler_ark/Core/SysDependencyManager.py +584 -0
  11. pycompiler_ark/Core/Venv_Manager/Manager.py +2086 -0
  12. pycompiler_ark/Core/Venv_Manager/__init__.py +9 -0
  13. pycompiler_ark/Core/WorkSpaceManager/SetupWorkspace.py +65 -0
  14. pycompiler_ark/Core/WorkSpaceManager/WorkspaceManipulation.py +139 -0
  15. pycompiler_ark/Core/WorkSpaceManager/__init__.py +28 -0
  16. pycompiler_ark/Core/__init__.py +73 -0
  17. pycompiler_ark/Core/allversion.py +234 -0
  18. pycompiler_ark/Core/compatibility.py +459 -0
  19. pycompiler_ark/Core/deps_analyser/__init__.py +47 -0
  20. pycompiler_ark/Core/deps_analyser/analyser.py +899 -0
  21. pycompiler_ark/Core/engine/ConfigManager.py +206 -0
  22. pycompiler_ark/Core/engine/__init__.py +92 -0
  23. pycompiler_ark/Core/engine/base.py +701 -0
  24. pycompiler_ark/Core/engine/build_context.py +41 -0
  25. pycompiler_ark/Core/engine/registry.py +580 -0
  26. pycompiler_ark/Core/engine/validator.py +232 -0
  27. pycompiler_ark/Core/process_killer.py +374 -0
  28. pycompiler_ark/Core/process_security.py +104 -0
  29. pycompiler_ark/Loaders/EngineLoader/loader.py +167 -0
  30. pycompiler_ark/Plugins/Cleaner/__init__.py +246 -0
  31. pycompiler_ark/Plugins/Cleaner/languages/af.json +11 -0
  32. pycompiler_ark/Plugins/Cleaner/languages/de.json +11 -0
  33. pycompiler_ark/Plugins/Cleaner/languages/en.json +11 -0
  34. pycompiler_ark/Plugins/Cleaner/languages/es.json +11 -0
  35. pycompiler_ark/Plugins/Cleaner/languages/fr.json +11 -0
  36. pycompiler_ark/Plugins/Cleaner/languages/it.json +11 -0
  37. pycompiler_ark/Plugins/Cleaner/languages/ja.json +11 -0
  38. pycompiler_ark/Plugins/Cleaner/languages/ko.json +11 -0
  39. pycompiler_ark/Plugins/Cleaner/languages/pt-BR.json +11 -0
  40. pycompiler_ark/Plugins/Cleaner/languages/ru.json +11 -0
  41. pycompiler_ark/Plugins/Cleaner/languages/zh-CN.json +11 -0
  42. pycompiler_ark/Plugins/OutputCleaner/__init__.py +143 -0
  43. pycompiler_ark/Plugins_SDK/BcPluginContext/Context.py +330 -0
  44. pycompiler_ark/Plugins_SDK/BcPluginContext/__init__.py +47 -0
  45. pycompiler_ark/Plugins_SDK/GeneralContext/Dialog.py +242 -0
  46. pycompiler_ark/Plugins_SDK/GeneralContext/__init__.py +47 -0
  47. pycompiler_ark/Plugins_SDK/GeneralContext/i18n.py +244 -0
  48. pycompiler_ark/Plugins_SDK/__init__.py +41 -0
  49. pycompiler_ark/Services/AdvancedAuth.py +55 -0
  50. pycompiler_ark/Ui/Cli/__init__.py +6 -0
  51. pycompiler_ark/Ui/Cli/app.py +594 -0
  52. pycompiler_ark/Ui/Cli/discovery.py +311 -0
  53. pycompiler_ark/Ui/Cli/entrypoint.py +5 -0
  54. pycompiler_ark/Ui/Cli/helpers.py +804 -0
  55. pycompiler_ark/Ui/Cli/icons.py +38 -0
  56. pycompiler_ark/Ui/Cli/interactive.py +168 -0
  57. pycompiler_ark/Ui/Cli/launchers.py +156 -0
  58. pycompiler_ark/Ui/Cli/output.py +101 -0
  59. pycompiler_ark/Ui/Cli/runtime.py +293 -0
  60. pycompiler_ark/Ui/Forms/classic_main_window.ui +1025 -0
  61. pycompiler_ark/Ui/Forms/ide_main_window.ui +608 -0
  62. pycompiler_ark/Ui/Gui/Compilation/compiler.py +464 -0
  63. pycompiler_ark/Ui/Gui/Compilation/helpers.py +178 -0
  64. pycompiler_ark/Ui/Gui/Compilation/mainprocess.py +485 -0
  65. pycompiler_ark/Ui/Gui/Dialogs/AdvancedAuthUI.py +45 -0
  66. pycompiler_ark/Ui/Gui/Dialogs/AdvancedConfigEditor.py +504 -0
  67. pycompiler_ark/Ui/Gui/Dialogs/BcaslDialog.py +1253 -0
  68. pycompiler_ark/Ui/Gui/Dialogs/CompilerDialog.py +1109 -0
  69. pycompiler_ark/Ui/Gui/Dialogs/DepsAnalyserUI.py +446 -0
  70. pycompiler_ark/Ui/Gui/Dialogs/InitWorkspaceDialog.py +180 -0
  71. pycompiler_ark/Ui/Gui/Dialogs/LockDialog.py +294 -0
  72. pycompiler_ark/Ui/Gui/Dialogs/SysDependencyUI.py +792 -0
  73. pycompiler_ark/Ui/Gui/Dialogs/VenvDialog.py +448 -0
  74. pycompiler_ark/Ui/Gui/Dialogs/WorkspaceDialog.py +400 -0
  75. pycompiler_ark/Ui/Gui/Dialogs/__init__.py +8 -0
  76. pycompiler_ark/Ui/Gui/Gui.py +613 -0
  77. pycompiler_ark/Ui/Gui/IdeLikeGui/__init__.py +12 -0
  78. pycompiler_ark/Ui/Gui/IdeLikeGui/connections.py +831 -0
  79. pycompiler_ark/Ui/Gui/UiConnection.py +965 -0
  80. pycompiler_ark/Ui/Gui/UiFeatures.py +712 -0
  81. pycompiler_ark/Ui/Gui/WidgetsCreator.py +484 -0
  82. pycompiler_ark/Ui/Gui/WorkspaceManipulation.py +268 -0
  83. pycompiler_ark/Ui/Gui/__init__.py +8 -0
  84. pycompiler_ark/Ui/PreferencesManager.py +311 -0
  85. pycompiler_ark/Ui/__init__.py +5 -0
  86. pycompiler_ark/Ui/forms.py +10 -0
  87. pycompiler_ark/Ui/i18n.py +1319 -0
  88. pycompiler_ark/__init__.py +0 -0
  89. pycompiler_ark/__main__.py +25 -0
  90. pycompiler_ark/bcasl/Base.py +302 -0
  91. pycompiler_ark/bcasl/Loader.py +581 -0
  92. pycompiler_ark/bcasl/__init__.py +108 -0
  93. pycompiler_ark/bcasl/executor.py +875 -0
  94. pycompiler_ark/bcasl/tagging.py +156 -0
  95. pycompiler_ark/bcasl/validator.py +195 -0
  96. pycompiler_ark/data/ManagerMapping.yml +7 -0
  97. pycompiler_ark/data/icons/activity.svg +1 -0
  98. pycompiler_ark/data/icons/airplay.svg +1 -0
  99. pycompiler_ark/data/icons/alert-circle.svg +1 -0
  100. pycompiler_ark/data/icons/alert-octagon.svg +1 -0
  101. pycompiler_ark/data/icons/alert-triangle.svg +1 -0
  102. pycompiler_ark/data/icons/align-center.svg +1 -0
  103. pycompiler_ark/data/icons/align-justify.svg +1 -0
  104. pycompiler_ark/data/icons/align-left.svg +1 -0
  105. pycompiler_ark/data/icons/align-right.svg +1 -0
  106. pycompiler_ark/data/icons/anchor.svg +1 -0
  107. pycompiler_ark/data/icons/aperture.svg +1 -0
  108. pycompiler_ark/data/icons/archive.svg +1 -0
  109. pycompiler_ark/data/icons/arrow-down-circle.svg +1 -0
  110. pycompiler_ark/data/icons/arrow-down-left.svg +1 -0
  111. pycompiler_ark/data/icons/arrow-down-right.svg +1 -0
  112. pycompiler_ark/data/icons/arrow-down.svg +1 -0
  113. pycompiler_ark/data/icons/arrow-left-circle.svg +1 -0
  114. pycompiler_ark/data/icons/arrow-left.svg +1 -0
  115. pycompiler_ark/data/icons/arrow-right-circle.svg +1 -0
  116. pycompiler_ark/data/icons/arrow-right.svg +1 -0
  117. pycompiler_ark/data/icons/arrow-up-circle.svg +1 -0
  118. pycompiler_ark/data/icons/arrow-up-left.svg +1 -0
  119. pycompiler_ark/data/icons/arrow-up-right.svg +1 -0
  120. pycompiler_ark/data/icons/arrow-up.svg +1 -0
  121. pycompiler_ark/data/icons/at-sign.svg +1 -0
  122. pycompiler_ark/data/icons/award.svg +1 -0
  123. pycompiler_ark/data/icons/bar-chart-2.svg +1 -0
  124. pycompiler_ark/data/icons/bar-chart.svg +1 -0
  125. pycompiler_ark/data/icons/battery-charging.svg +1 -0
  126. pycompiler_ark/data/icons/battery.svg +1 -0
  127. pycompiler_ark/data/icons/bell-off.svg +1 -0
  128. pycompiler_ark/data/icons/bell.svg +1 -0
  129. pycompiler_ark/data/icons/bluetooth.svg +1 -0
  130. pycompiler_ark/data/icons/bold.svg +1 -0
  131. pycompiler_ark/data/icons/book-open.svg +1 -0
  132. pycompiler_ark/data/icons/book.svg +1 -0
  133. pycompiler_ark/data/icons/bookmark.svg +1 -0
  134. pycompiler_ark/data/icons/box.svg +1 -0
  135. pycompiler_ark/data/icons/briefcase.svg +1 -0
  136. pycompiler_ark/data/icons/calendar.svg +1 -0
  137. pycompiler_ark/data/icons/camera-off.svg +1 -0
  138. pycompiler_ark/data/icons/camera.svg +1 -0
  139. pycompiler_ark/data/icons/cast.svg +1 -0
  140. pycompiler_ark/data/icons/check-circle.svg +1 -0
  141. pycompiler_ark/data/icons/check-square.svg +1 -0
  142. pycompiler_ark/data/icons/check.svg +1 -0
  143. pycompiler_ark/data/icons/chevron-down.svg +1 -0
  144. pycompiler_ark/data/icons/chevron-left.svg +1 -0
  145. pycompiler_ark/data/icons/chevron-right.svg +1 -0
  146. pycompiler_ark/data/icons/chevron-up.svg +1 -0
  147. pycompiler_ark/data/icons/chevrons-down.svg +1 -0
  148. pycompiler_ark/data/icons/chevrons-left.svg +1 -0
  149. pycompiler_ark/data/icons/chevrons-right.svg +1 -0
  150. pycompiler_ark/data/icons/chevrons-up.svg +1 -0
  151. pycompiler_ark/data/icons/chrome.svg +1 -0
  152. pycompiler_ark/data/icons/circle.svg +1 -0
  153. pycompiler_ark/data/icons/clipboard.svg +1 -0
  154. pycompiler_ark/data/icons/clock.svg +1 -0
  155. pycompiler_ark/data/icons/cloud-drizzle.svg +1 -0
  156. pycompiler_ark/data/icons/cloud-lightning.svg +1 -0
  157. pycompiler_ark/data/icons/cloud-off.svg +1 -0
  158. pycompiler_ark/data/icons/cloud-rain.svg +1 -0
  159. pycompiler_ark/data/icons/cloud-snow.svg +1 -0
  160. pycompiler_ark/data/icons/cloud.svg +1 -0
  161. pycompiler_ark/data/icons/code.svg +1 -0
  162. pycompiler_ark/data/icons/codepen.svg +1 -0
  163. pycompiler_ark/data/icons/codesandbox.svg +1 -0
  164. pycompiler_ark/data/icons/coffee.svg +1 -0
  165. pycompiler_ark/data/icons/columns.svg +1 -0
  166. pycompiler_ark/data/icons/command.svg +1 -0
  167. pycompiler_ark/data/icons/compass.svg +1 -0
  168. pycompiler_ark/data/icons/copy.svg +1 -0
  169. pycompiler_ark/data/icons/corner-down-left.svg +1 -0
  170. pycompiler_ark/data/icons/corner-down-right.svg +1 -0
  171. pycompiler_ark/data/icons/corner-left-down.svg +1 -0
  172. pycompiler_ark/data/icons/corner-left-up.svg +1 -0
  173. pycompiler_ark/data/icons/corner-right-down.svg +1 -0
  174. pycompiler_ark/data/icons/corner-right-up.svg +1 -0
  175. pycompiler_ark/data/icons/corner-up-left.svg +1 -0
  176. pycompiler_ark/data/icons/corner-up-right.svg +1 -0
  177. pycompiler_ark/data/icons/cpu.svg +1 -0
  178. pycompiler_ark/data/icons/credit-card.svg +1 -0
  179. pycompiler_ark/data/icons/crop.svg +1 -0
  180. pycompiler_ark/data/icons/crosshair.svg +1 -0
  181. pycompiler_ark/data/icons/database.svg +1 -0
  182. pycompiler_ark/data/icons/delete.svg +1 -0
  183. pycompiler_ark/data/icons/disc.svg +1 -0
  184. pycompiler_ark/data/icons/divide-circle.svg +1 -0
  185. pycompiler_ark/data/icons/divide-square.svg +1 -0
  186. pycompiler_ark/data/icons/divide.svg +1 -0
  187. pycompiler_ark/data/icons/dollar-sign.svg +1 -0
  188. pycompiler_ark/data/icons/download-cloud.svg +1 -0
  189. pycompiler_ark/data/icons/download.svg +1 -0
  190. pycompiler_ark/data/icons/dribbble.svg +1 -0
  191. pycompiler_ark/data/icons/droplet.svg +1 -0
  192. pycompiler_ark/data/icons/edit-2.svg +1 -0
  193. pycompiler_ark/data/icons/edit-3.svg +1 -0
  194. pycompiler_ark/data/icons/edit.svg +1 -0
  195. pycompiler_ark/data/icons/external-link.svg +1 -0
  196. pycompiler_ark/data/icons/eye-off.svg +1 -0
  197. pycompiler_ark/data/icons/eye.svg +1 -0
  198. pycompiler_ark/data/icons/facebook.svg +1 -0
  199. pycompiler_ark/data/icons/fast-forward.svg +1 -0
  200. pycompiler_ark/data/icons/feather.svg +1 -0
  201. pycompiler_ark/data/icons/figma.svg +1 -0
  202. pycompiler_ark/data/icons/file-minus.svg +1 -0
  203. pycompiler_ark/data/icons/file-plus.svg +1 -0
  204. pycompiler_ark/data/icons/file-text.svg +1 -0
  205. pycompiler_ark/data/icons/file.svg +1 -0
  206. pycompiler_ark/data/icons/film.svg +1 -0
  207. pycompiler_ark/data/icons/filter.svg +1 -0
  208. pycompiler_ark/data/icons/flag.svg +1 -0
  209. pycompiler_ark/data/icons/folder-minus.svg +1 -0
  210. pycompiler_ark/data/icons/folder-plus.svg +1 -0
  211. pycompiler_ark/data/icons/folder.svg +1 -0
  212. pycompiler_ark/data/icons/framer.svg +1 -0
  213. pycompiler_ark/data/icons/frown.svg +1 -0
  214. pycompiler_ark/data/icons/gift.svg +1 -0
  215. pycompiler_ark/data/icons/git-branch.svg +1 -0
  216. pycompiler_ark/data/icons/git-commit.svg +1 -0
  217. pycompiler_ark/data/icons/git-merge.svg +1 -0
  218. pycompiler_ark/data/icons/git-pull-request.svg +1 -0
  219. pycompiler_ark/data/icons/github.svg +1 -0
  220. pycompiler_ark/data/icons/gitlab.svg +1 -0
  221. pycompiler_ark/data/icons/globe.svg +1 -0
  222. pycompiler_ark/data/icons/grid.svg +1 -0
  223. pycompiler_ark/data/icons/hard-drive.svg +1 -0
  224. pycompiler_ark/data/icons/hash.svg +1 -0
  225. pycompiler_ark/data/icons/headphones.svg +1 -0
  226. pycompiler_ark/data/icons/heart.svg +1 -0
  227. pycompiler_ark/data/icons/help-circle.svg +1 -0
  228. pycompiler_ark/data/icons/hexagon.svg +1 -0
  229. pycompiler_ark/data/icons/home.svg +1 -0
  230. pycompiler_ark/data/icons/image.svg +1 -0
  231. pycompiler_ark/data/icons/inbox.svg +1 -0
  232. pycompiler_ark/data/icons/info.svg +1 -0
  233. pycompiler_ark/data/icons/instagram.svg +1 -0
  234. pycompiler_ark/data/icons/italic.svg +1 -0
  235. pycompiler_ark/data/icons/key.svg +1 -0
  236. pycompiler_ark/data/icons/layers.svg +1 -0
  237. pycompiler_ark/data/icons/layout.svg +1 -0
  238. pycompiler_ark/data/icons/life-buoy.svg +1 -0
  239. pycompiler_ark/data/icons/link-2.svg +1 -0
  240. pycompiler_ark/data/icons/link.svg +1 -0
  241. pycompiler_ark/data/icons/linkedin.svg +1 -0
  242. pycompiler_ark/data/icons/list.svg +1 -0
  243. pycompiler_ark/data/icons/loader.svg +1 -0
  244. pycompiler_ark/data/icons/lock.svg +1 -0
  245. pycompiler_ark/data/icons/log-in.svg +1 -0
  246. pycompiler_ark/data/icons/log-out.svg +1 -0
  247. pycompiler_ark/data/icons/mail.svg +1 -0
  248. pycompiler_ark/data/icons/map-pin.svg +1 -0
  249. pycompiler_ark/data/icons/map.svg +1 -0
  250. pycompiler_ark/data/icons/maximize-2.svg +1 -0
  251. pycompiler_ark/data/icons/maximize.svg +1 -0
  252. pycompiler_ark/data/icons/meh.svg +1 -0
  253. pycompiler_ark/data/icons/menu.svg +1 -0
  254. pycompiler_ark/data/icons/message-circle.svg +1 -0
  255. pycompiler_ark/data/icons/message-square.svg +1 -0
  256. pycompiler_ark/data/icons/mic-off.svg +1 -0
  257. pycompiler_ark/data/icons/mic.svg +1 -0
  258. pycompiler_ark/data/icons/minimize-2.svg +1 -0
  259. pycompiler_ark/data/icons/minimize.svg +1 -0
  260. pycompiler_ark/data/icons/minus-circle.svg +1 -0
  261. pycompiler_ark/data/icons/minus-square.svg +1 -0
  262. pycompiler_ark/data/icons/minus.svg +1 -0
  263. pycompiler_ark/data/icons/monitor.svg +1 -0
  264. pycompiler_ark/data/icons/moon.svg +1 -0
  265. pycompiler_ark/data/icons/more-horizontal.svg +1 -0
  266. pycompiler_ark/data/icons/more-vertical.svg +1 -0
  267. pycompiler_ark/data/icons/mouse-pointer.svg +1 -0
  268. pycompiler_ark/data/icons/move.svg +1 -0
  269. pycompiler_ark/data/icons/music.svg +1 -0
  270. pycompiler_ark/data/icons/navigation-2.svg +1 -0
  271. pycompiler_ark/data/icons/navigation.svg +1 -0
  272. pycompiler_ark/data/icons/octagon.svg +1 -0
  273. pycompiler_ark/data/icons/package.svg +1 -0
  274. pycompiler_ark/data/icons/paperclip.svg +1 -0
  275. pycompiler_ark/data/icons/pause-circle.svg +1 -0
  276. pycompiler_ark/data/icons/pause.svg +1 -0
  277. pycompiler_ark/data/icons/pen-tool.svg +1 -0
  278. pycompiler_ark/data/icons/percent.svg +1 -0
  279. pycompiler_ark/data/icons/phone-call.svg +1 -0
  280. pycompiler_ark/data/icons/phone-forwarded.svg +1 -0
  281. pycompiler_ark/data/icons/phone-incoming.svg +1 -0
  282. pycompiler_ark/data/icons/phone-missed.svg +1 -0
  283. pycompiler_ark/data/icons/phone-off.svg +1 -0
  284. pycompiler_ark/data/icons/phone-outgoing.svg +1 -0
  285. pycompiler_ark/data/icons/phone.svg +1 -0
  286. pycompiler_ark/data/icons/pie-chart.svg +1 -0
  287. pycompiler_ark/data/icons/play-circle.svg +1 -0
  288. pycompiler_ark/data/icons/play.svg +1 -0
  289. pycompiler_ark/data/icons/plus-circle.svg +1 -0
  290. pycompiler_ark/data/icons/plus-square.svg +1 -0
  291. pycompiler_ark/data/icons/plus.svg +1 -0
  292. pycompiler_ark/data/icons/pocket.svg +1 -0
  293. pycompiler_ark/data/icons/power.svg +1 -0
  294. pycompiler_ark/data/icons/printer.svg +1 -0
  295. pycompiler_ark/data/icons/radio.svg +1 -0
  296. pycompiler_ark/data/icons/refresh-ccw.svg +1 -0
  297. pycompiler_ark/data/icons/refresh-cw.svg +1 -0
  298. pycompiler_ark/data/icons/repeat.svg +1 -0
  299. pycompiler_ark/data/icons/rewind.svg +1 -0
  300. pycompiler_ark/data/icons/rotate-ccw.svg +1 -0
  301. pycompiler_ark/data/icons/rotate-cw.svg +1 -0
  302. pycompiler_ark/data/icons/rss.svg +1 -0
  303. pycompiler_ark/data/icons/save.svg +1 -0
  304. pycompiler_ark/data/icons/scissors.svg +1 -0
  305. pycompiler_ark/data/icons/search.svg +1 -0
  306. pycompiler_ark/data/icons/send.svg +1 -0
  307. pycompiler_ark/data/icons/server.svg +1 -0
  308. pycompiler_ark/data/icons/settings.svg +1 -0
  309. pycompiler_ark/data/icons/share-2.svg +1 -0
  310. pycompiler_ark/data/icons/share.svg +1 -0
  311. pycompiler_ark/data/icons/shield-off.svg +1 -0
  312. pycompiler_ark/data/icons/shield.svg +1 -0
  313. pycompiler_ark/data/icons/shopping-bag.svg +1 -0
  314. pycompiler_ark/data/icons/shopping-cart.svg +1 -0
  315. pycompiler_ark/data/icons/shuffle.svg +1 -0
  316. pycompiler_ark/data/icons/sidebar.svg +1 -0
  317. pycompiler_ark/data/icons/skip-back.svg +1 -0
  318. pycompiler_ark/data/icons/skip-forward.svg +1 -0
  319. pycompiler_ark/data/icons/slack.svg +1 -0
  320. pycompiler_ark/data/icons/slash.svg +1 -0
  321. pycompiler_ark/data/icons/sliders.svg +1 -0
  322. pycompiler_ark/data/icons/smartphone.svg +1 -0
  323. pycompiler_ark/data/icons/smile.svg +1 -0
  324. pycompiler_ark/data/icons/speaker.svg +1 -0
  325. pycompiler_ark/data/icons/square.svg +1 -0
  326. pycompiler_ark/data/icons/star.svg +1 -0
  327. pycompiler_ark/data/icons/stop-circle.svg +1 -0
  328. pycompiler_ark/data/icons/sun.svg +1 -0
  329. pycompiler_ark/data/icons/sunrise.svg +1 -0
  330. pycompiler_ark/data/icons/sunset.svg +1 -0
  331. pycompiler_ark/data/icons/table.svg +1 -0
  332. pycompiler_ark/data/icons/tablet.svg +1 -0
  333. pycompiler_ark/data/icons/tag.svg +1 -0
  334. pycompiler_ark/data/icons/target.svg +1 -0
  335. pycompiler_ark/data/icons/terminal.svg +1 -0
  336. pycompiler_ark/data/icons/thermometer.svg +1 -0
  337. pycompiler_ark/data/icons/thumbs-down.svg +1 -0
  338. pycompiler_ark/data/icons/thumbs-up.svg +1 -0
  339. pycompiler_ark/data/icons/toggle-left.svg +1 -0
  340. pycompiler_ark/data/icons/toggle-right.svg +1 -0
  341. pycompiler_ark/data/icons/tool.svg +1 -0
  342. pycompiler_ark/data/icons/trash-2.svg +1 -0
  343. pycompiler_ark/data/icons/trash.svg +1 -0
  344. pycompiler_ark/data/icons/trello.svg +1 -0
  345. pycompiler_ark/data/icons/trending-down.svg +1 -0
  346. pycompiler_ark/data/icons/trending-up.svg +1 -0
  347. pycompiler_ark/data/icons/triangle.svg +1 -0
  348. pycompiler_ark/data/icons/truck.svg +1 -0
  349. pycompiler_ark/data/icons/tv.svg +1 -0
  350. pycompiler_ark/data/icons/twitch.svg +1 -0
  351. pycompiler_ark/data/icons/twitter.svg +1 -0
  352. pycompiler_ark/data/icons/type.svg +1 -0
  353. pycompiler_ark/data/icons/umbrella.svg +1 -0
  354. pycompiler_ark/data/icons/underline.svg +1 -0
  355. pycompiler_ark/data/icons/unlock.svg +1 -0
  356. pycompiler_ark/data/icons/upload-cloud.svg +1 -0
  357. pycompiler_ark/data/icons/upload.svg +1 -0
  358. pycompiler_ark/data/icons/user-check.svg +1 -0
  359. pycompiler_ark/data/icons/user-minus.svg +1 -0
  360. pycompiler_ark/data/icons/user-plus.svg +1 -0
  361. pycompiler_ark/data/icons/user-x.svg +1 -0
  362. pycompiler_ark/data/icons/user.svg +1 -0
  363. pycompiler_ark/data/icons/users.svg +1 -0
  364. pycompiler_ark/data/icons/video-off.svg +1 -0
  365. pycompiler_ark/data/icons/video.svg +1 -0
  366. pycompiler_ark/data/icons/voicemail.svg +1 -0
  367. pycompiler_ark/data/icons/volume-1.svg +1 -0
  368. pycompiler_ark/data/icons/volume-2.svg +1 -0
  369. pycompiler_ark/data/icons/volume-x.svg +1 -0
  370. pycompiler_ark/data/icons/volume.svg +1 -0
  371. pycompiler_ark/data/icons/watch.svg +1 -0
  372. pycompiler_ark/data/icons/wifi-off.svg +1 -0
  373. pycompiler_ark/data/icons/wifi.svg +1 -0
  374. pycompiler_ark/data/icons/wind.svg +1 -0
  375. pycompiler_ark/data/icons/x-circle.svg +1 -0
  376. pycompiler_ark/data/icons/x-octagon.svg +1 -0
  377. pycompiler_ark/data/icons/x-square.svg +1 -0
  378. pycompiler_ark/data/icons/x.svg +1 -0
  379. pycompiler_ark/data/icons/youtube.svg +1 -0
  380. pycompiler_ark/data/icons/zap-off.svg +1 -0
  381. pycompiler_ark/data/icons/zap.svg +1 -0
  382. pycompiler_ark/data/icons/zoom-in.svg +1 -0
  383. pycompiler_ark/data/icons/zoom-out.svg +1 -0
  384. pycompiler_ark/data/schemas/mapping.schema.json +136 -0
  385. pycompiler_ark/data/stblib.yml +54 -0
  386. pycompiler_ark/engine_sdk/Sys_Deps.py +21 -0
  387. pycompiler_ark/engine_sdk/__init__.py +313 -0
  388. pycompiler_ark/engine_sdk/auto_build_command.py +10 -0
  389. pycompiler_ark/engine_sdk/base.py +21 -0
  390. pycompiler_ark/engine_sdk/i18n.py +35 -0
  391. pycompiler_ark/engine_sdk/ui_helpers.py +74 -0
  392. pycompiler_ark/engine_sdk/utils.py +660 -0
  393. pycompiler_ark/engines/cx_freeze/__init__.py +338 -0
  394. pycompiler_ark/engines/cx_freeze/languages/de.json +17 -0
  395. pycompiler_ark/engines/cx_freeze/languages/en.json +17 -0
  396. pycompiler_ark/engines/cx_freeze/languages/es.json +17 -0
  397. pycompiler_ark/engines/cx_freeze/languages/fr.json +17 -0
  398. pycompiler_ark/engines/cx_freeze/languages/ja.json +17 -0
  399. pycompiler_ark/engines/cx_freeze/languages/pt-BR.json +17 -0
  400. pycompiler_ark/engines/cx_freeze/languages/zh-CN.json +17 -0
  401. pycompiler_ark/engines/cx_freeze/mapping.json +75 -0
  402. pycompiler_ark/engines/nuitka/__init__.py +340 -0
  403. pycompiler_ark/engines/nuitka/languages/af.json +20 -0
  404. pycompiler_ark/engines/nuitka/languages/de.json +20 -0
  405. pycompiler_ark/engines/nuitka/languages/en.json +20 -0
  406. pycompiler_ark/engines/nuitka/languages/es.json +20 -0
  407. pycompiler_ark/engines/nuitka/languages/fr.json +20 -0
  408. pycompiler_ark/engines/nuitka/languages/it.json +20 -0
  409. pycompiler_ark/engines/nuitka/languages/ja.json +20 -0
  410. pycompiler_ark/engines/nuitka/languages/ko.json +20 -0
  411. pycompiler_ark/engines/nuitka/languages/pt-BR.json +20 -0
  412. pycompiler_ark/engines/nuitka/languages/ru.json +20 -0
  413. pycompiler_ark/engines/nuitka/languages/zh-CN.json +20 -0
  414. pycompiler_ark/engines/nuitka/mapping.json +87 -0
  415. pycompiler_ark/engines/pyinstaller/__init__.py +300 -0
  416. pycompiler_ark/engines/pyinstaller/languages/af.json +23 -0
  417. pycompiler_ark/engines/pyinstaller/languages/de.json +28 -0
  418. pycompiler_ark/engines/pyinstaller/languages/en.json +28 -0
  419. pycompiler_ark/engines/pyinstaller/languages/es.json +28 -0
  420. pycompiler_ark/engines/pyinstaller/languages/fr.json +28 -0
  421. pycompiler_ark/engines/pyinstaller/languages/it.json +23 -0
  422. pycompiler_ark/engines/pyinstaller/languages/ja.json +28 -0
  423. pycompiler_ark/engines/pyinstaller/languages/ko.json +23 -0
  424. pycompiler_ark/engines/pyinstaller/languages/pt-BR.json +28 -0
  425. pycompiler_ark/engines/pyinstaller/languages/ru.json +23 -0
  426. pycompiler_ark/engines/pyinstaller/languages/zh-CN.json +28 -0
  427. pycompiler_ark/engines/pyinstaller/mapping.json +76 -0
  428. pycompiler_ark/images/1splash.png +0 -0
  429. pycompiler_ark/images/logo.png +0 -0
  430. pycompiler_ark/images/logo2.png +0 -0
  431. pycompiler_ark/images/splash.png +0 -0
  432. pycompiler_ark/languages/af.json +87 -0
  433. pycompiler_ark/languages/de.json +87 -0
  434. pycompiler_ark/languages/en.json +87 -0
  435. pycompiler_ark/languages/es.json +87 -0
  436. pycompiler_ark/languages/fr.json +95 -0
  437. pycompiler_ark/languages/it.json +87 -0
  438. pycompiler_ark/languages/ja.json +87 -0
  439. pycompiler_ark/languages/ko.json +87 -0
  440. pycompiler_ark/languages/pt-BR.json +87 -0
  441. pycompiler_ark/languages/ru.json +87 -0
  442. pycompiler_ark/languages/zh-CN.json +87 -0
  443. pycompiler_ark/themes/arctic_light.qss +486 -0
  444. pycompiler_ark/themes/dark.qss +474 -0
  445. pycompiler_ark/themes/forest.qss +474 -0
  446. pycompiler_ark/themes/light.qss +486 -0
  447. pycompiler_ark/themes/mint_light.qss +486 -0
  448. pycompiler_ark/themes/rose_light.qss +486 -0
  449. pycompiler_ark/themes/sand.qss +486 -0
  450. pycompiler_ark/themes/slate.qss +474 -0
  451. pycompiler_ark-1.1.0.dist-info/METADATA +224 -0
  452. pycompiler_ark-1.1.0.dist-info/RECORD +455 -0
  453. pycompiler_ark-1.1.0.dist-info/WHEEL +4 -0
  454. pycompiler_ark-1.1.0.dist-info/entry_points.txt +2 -0
  455. pycompiler_ark-1.1.0.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,141 @@
1
+ # SPDX-License-Identifier: Apache-2.0
2
+ # Copyright 2026 Ague Samuel Amen
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ """
17
+ ConfigEditorService — business logic for the structured Project Config Editor.
18
+ """
19
+
20
+ from __future__ import annotations
21
+
22
+ from typing import Any
23
+
24
+
25
+ def flatten_keys(data: Any, prefix: str = "") -> list[str]:
26
+ """Recursively flatten dict/list keys into dotted paths."""
27
+ lines: list[str] = []
28
+ if isinstance(data, dict):
29
+ for key, value in data.items():
30
+ k = str(key)
31
+ path = f"{prefix}.{k}" if prefix else k
32
+ lines.append(path)
33
+ lines.extend(flatten_keys(value, path))
34
+ elif isinstance(data, list):
35
+ for idx, value in enumerate(data):
36
+ path = f"{prefix}[{idx}]"
37
+ lines.append(path)
38
+ lines.extend(flatten_keys(value, path))
39
+ return lines
40
+
41
+
42
+ def validate_ark_payload(data: Any) -> tuple[list[str], list[str]]:
43
+ """Validate ark.yml data structure.
44
+
45
+ Returns:
46
+ (errors, warnings)
47
+ """
48
+ errs: list[str] = []
49
+ warns: list[str] = []
50
+
51
+ if not isinstance(data, dict):
52
+ errs.append("Root must be an object/map.")
53
+ return errs, warns
54
+
55
+ allowed_top = {
56
+ "project",
57
+ "workspace",
58
+ "build",
59
+ "plugins",
60
+ }
61
+ unknown = sorted(k for k in data.keys() if k not in allowed_top)
62
+ if unknown:
63
+ warns.append("Unknown top-level keys: " + ", ".join(unknown))
64
+
65
+ # project
66
+ project = data.get("project")
67
+ if project is not None:
68
+ if not isinstance(project, dict):
69
+ errs.append("project must be an object.")
70
+ else:
71
+ for k in ("name", "version", "entry"):
72
+ v = project.get(k)
73
+ if v is not None and not isinstance(v, str):
74
+ errs.append(f"project.{k} must be a string.")
75
+
76
+ # workspace
77
+ workspace_cfg = data.get("workspace")
78
+ if workspace_cfg is not None:
79
+ if not isinstance(workspace_cfg, dict):
80
+ errs.append("workspace must be an object.")
81
+ else:
82
+ exclude = workspace_cfg.get("exclude")
83
+ if exclude is not None and (
84
+ not isinstance(exclude, list)
85
+ or not all(isinstance(item, str) for item in exclude)
86
+ ):
87
+ errs.append("workspace.exclude must be a list of strings.")
88
+
89
+ # build
90
+ build = data.get("build")
91
+ if build is not None:
92
+ if not isinstance(build, dict):
93
+ errs.append("build must be an object.")
94
+ else:
95
+ for k in ("engine", "output", "icon", "entrypoint"):
96
+ v = build.get(k)
97
+ if v is not None and not isinstance(v, (str, type(None))):
98
+ errs.append(f"build.{k} must be a string or null.")
99
+
100
+ exclude = build.get("exclude")
101
+ if exclude is not None and (
102
+ not isinstance(exclude, list)
103
+ or not all(isinstance(item, str) for item in exclude)
104
+ ):
105
+ errs.append("build.exclude must be a list of strings.")
106
+
107
+ include = build.get("include")
108
+ if include is not None and (
109
+ not isinstance(include, list)
110
+ or not all(isinstance(item, str) for item in include)
111
+ ):
112
+ errs.append("build.include must be a list of strings.")
113
+
114
+ data_map = build.get("data")
115
+ if data_map is not None:
116
+ if not isinstance(data_map, list):
117
+ errs.append("build.data must be a list.")
118
+ else:
119
+ for idx, item in enumerate(data_map):
120
+ if not isinstance(item, dict):
121
+ errs.append(f"build.data[{idx}] must be an object.")
122
+ else:
123
+ if not item.get("source"):
124
+ errs.append(f"build.data[{idx}] missing 'source'.")
125
+ m_type = item.get("type")
126
+ if m_type is not None and m_type not in ("file", "dir"):
127
+ errs.append(
128
+ f"build.data[{idx}].type must be 'file' or 'dir'."
129
+ )
130
+
131
+ # plugins
132
+ plugins = data.get("plugins")
133
+ if plugins is not None:
134
+ if not isinstance(plugins, dict):
135
+ errs.append("plugins must be an object.")
136
+ else:
137
+ bcasl_enabled = plugins.get("bcasl_enabled")
138
+ if bcasl_enabled is not None and not isinstance(bcasl_enabled, bool):
139
+ errs.append("plugins.bcasl_enabled must be a boolean.")
140
+
141
+ return errs, warns
@@ -0,0 +1,45 @@
1
+ from .auto_build import (
2
+ _default_builder_for_engine,
3
+ _detect_modules_preferring_requirements,
4
+ _is_stdlib_module,
5
+ _load_engine_package_mapping,
6
+ _load_mapping,
7
+ _match_modules_to_mapping,
8
+ _match_with_requirements_aware,
9
+ _maybe_load_plugin_auto_builder,
10
+ _norm,
11
+ _parse_requirements,
12
+ _read_json_file,
13
+ _scan_imports,
14
+ _tr,
15
+ _write_report_if_enabled,
16
+ compute_auto_for_engine,
17
+ compute_for_all,
18
+ register_aliases,
19
+ register_auto_builder,
20
+ register_import_alias,
21
+ register_package_import_name,
22
+ )
23
+
24
+ __all__ = [
25
+ "_default_builder_for_engine",
26
+ "_detect_modules_preferring_requirements",
27
+ "compute_auto_for_engine",
28
+ "compute_for_all",
29
+ "_is_stdlib_module",
30
+ "_load_engine_package_mapping",
31
+ "_load_mapping",
32
+ "_match_modules_to_mapping",
33
+ "_match_with_requirements_aware",
34
+ "_maybe_load_plugin_auto_builder",
35
+ "_norm",
36
+ "_parse_requirements",
37
+ "_read_json_file",
38
+ "_scan_imports",
39
+ "_write_report_if_enabled",
40
+ "register_package_import_name",
41
+ "register_import_alias",
42
+ "register_auto_builder",
43
+ "register_aliases",
44
+ "_tr",
45
+ ]