moonbridge-ts 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (655) hide show
  1. package/.eslintignore +5 -0
  2. package/.eslintrc.cjs +27 -0
  3. package/.prettierignore +5 -0
  4. package/.prettierrc +7 -0
  5. package/DEPENDENCIES.md +8 -0
  6. package/README.md +303 -0
  7. package/dist/bridge_module-2N398tJq.d.ts +126 -0
  8. package/dist/bridge_module-Dd27cxv9.d.mts +126 -0
  9. package/dist/index.d.mts +30 -0
  10. package/dist/index.d.ts +4 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +28 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/index.mjs +5 -0
  15. package/dist/index.mjs.map +1 -0
  16. package/dist/ipc_client_component_provider-CayqZGuB.d.ts +205 -0
  17. package/dist/ipc_client_component_provider-kXpa5anm.d.mts +205 -0
  18. package/dist/moonbridge/annotation/decorators.d.mts +48 -0
  19. package/dist/moonbridge/annotation/decorators.d.ts +43 -0
  20. package/dist/moonbridge/annotation/decorators.d.ts.map +1 -0
  21. package/dist/moonbridge/annotation/decorators.js +55 -0
  22. package/dist/moonbridge/annotation/decorators.js.map +1 -0
  23. package/dist/moonbridge/annotation/decorators.mjs +52 -0
  24. package/dist/moonbridge/annotation/decorators.mjs.map +1 -0
  25. package/dist/moonbridge/annotation/registry.d.mts +77 -0
  26. package/dist/moonbridge/annotation/registry.d.ts +72 -0
  27. package/dist/moonbridge/annotation/registry.d.ts.map +1 -0
  28. package/dist/moonbridge/annotation/registry.js +79 -0
  29. package/dist/moonbridge/annotation/registry.js.map +1 -0
  30. package/dist/moonbridge/annotation/registry.mjs +77 -0
  31. package/dist/moonbridge/annotation/registry.mjs.map +1 -0
  32. package/dist/moonbridge/index.d.mts +7 -0
  33. package/dist/moonbridge/index.d.ts +6 -0
  34. package/dist/moonbridge/index.d.ts.map +1 -0
  35. package/dist/moonbridge/index.js +42 -0
  36. package/dist/moonbridge/index.js.map +1 -0
  37. package/dist/moonbridge/index.mjs +7 -0
  38. package/dist/moonbridge/index.mjs.map +1 -0
  39. package/dist/moonbridge/kernel/bridge.d.mts +4 -0
  40. package/dist/moonbridge/kernel/bridge.d.ts +22 -0
  41. package/dist/moonbridge/kernel/bridge.d.ts.map +1 -0
  42. package/dist/moonbridge/kernel/bridge.js +4 -0
  43. package/dist/moonbridge/kernel/bridge.js.map +1 -0
  44. package/dist/moonbridge/kernel/bridge.mjs +3 -0
  45. package/dist/moonbridge/kernel/bridge.mjs.map +1 -0
  46. package/dist/moonbridge/kernel/bridge_module.d.mts +4 -0
  47. package/dist/moonbridge/kernel/bridge_module.d.ts +53 -0
  48. package/dist/moonbridge/kernel/bridge_module.d.ts.map +1 -0
  49. package/dist/moonbridge/kernel/bridge_module.js +22 -0
  50. package/dist/moonbridge/kernel/bridge_module.js.map +1 -0
  51. package/dist/moonbridge/kernel/bridge_module.mjs +20 -0
  52. package/dist/moonbridge/kernel/bridge_module.mjs.map +1 -0
  53. package/dist/moonbridge/kernel/executor.d.mts +4 -0
  54. package/dist/moonbridge/kernel/executor.d.ts +24 -0
  55. package/dist/moonbridge/kernel/executor.d.ts.map +1 -0
  56. package/dist/moonbridge/kernel/executor.js +22 -0
  57. package/dist/moonbridge/kernel/executor.js.map +1 -0
  58. package/dist/moonbridge/kernel/executor.mjs +20 -0
  59. package/dist/moonbridge/kernel/executor.mjs.map +1 -0
  60. package/dist/moonbridge/kernel/result_callback.d.mts +19 -0
  61. package/dist/moonbridge/kernel/result_callback.d.ts +18 -0
  62. package/dist/moonbridge/kernel/result_callback.d.ts.map +1 -0
  63. package/dist/moonbridge/kernel/result_callback.js +4 -0
  64. package/dist/moonbridge/kernel/result_callback.js.map +1 -0
  65. package/dist/moonbridge/kernel/result_callback.mjs +3 -0
  66. package/dist/moonbridge/kernel/result_callback.mjs.map +1 -0
  67. package/dist/moonbridge/logger/logger.d.mts +55 -0
  68. package/dist/moonbridge/logger/logger.d.ts +54 -0
  69. package/dist/moonbridge/logger/logger.d.ts.map +1 -0
  70. package/dist/moonbridge/logger/logger.js +67 -0
  71. package/dist/moonbridge/logger/logger.js.map +1 -0
  72. package/dist/moonbridge/logger/logger.mjs +65 -0
  73. package/dist/moonbridge/logger/logger.mjs.map +1 -0
  74. package/dist/moonbridge/message/internal/generic_message_parser.internal.d.mts +18 -0
  75. package/dist/moonbridge/message/internal/generic_message_parser.internal.d.ts +16 -0
  76. package/dist/moonbridge/message/internal/generic_message_parser.internal.d.ts.map +1 -0
  77. package/dist/moonbridge/message/internal/generic_message_parser.internal.js +29 -0
  78. package/dist/moonbridge/message/internal/generic_message_parser.internal.js.map +1 -0
  79. package/dist/moonbridge/message/internal/generic_message_parser.internal.mjs +27 -0
  80. package/dist/moonbridge/message/internal/generic_message_parser.internal.mjs.map +1 -0
  81. package/dist/moonbridge/message/message.d.mts +13 -0
  82. package/dist/moonbridge/message/message.d.ts +12 -0
  83. package/dist/moonbridge/message/message.d.ts.map +1 -0
  84. package/dist/moonbridge/message/message.js +4 -0
  85. package/dist/moonbridge/message/message.js.map +1 -0
  86. package/dist/moonbridge/message/message.mjs +3 -0
  87. package/dist/moonbridge/message/message.mjs.map +1 -0
  88. package/dist/moonbridge/message/message_parser.d.mts +28 -0
  89. package/dist/moonbridge/message/message_parser.d.ts +26 -0
  90. package/dist/moonbridge/message/message_parser.d.ts.map +1 -0
  91. package/dist/moonbridge/message/message_parser.js +11 -0
  92. package/dist/moonbridge/message/message_parser.js.map +1 -0
  93. package/dist/moonbridge/message/message_parser.mjs +8 -0
  94. package/dist/moonbridge/message/message_parser.mjs.map +1 -0
  95. package/dist/moonbridge/message/message_parser_manager.d.mts +21 -0
  96. package/dist/moonbridge/message/message_parser_manager.d.ts +19 -0
  97. package/dist/moonbridge/message/message_parser_manager.d.ts.map +1 -0
  98. package/dist/moonbridge/message/message_parser_manager.js +60 -0
  99. package/dist/moonbridge/message/message_parser_manager.js.map +1 -0
  100. package/dist/moonbridge/message/message_parser_manager.mjs +58 -0
  101. package/dist/moonbridge/message/message_parser_manager.mjs.map +1 -0
  102. package/dist/moonbridge/module/method_invoker.d.mts +43 -0
  103. package/dist/moonbridge/module/method_invoker.d.ts +38 -0
  104. package/dist/moonbridge/module/method_invoker.d.ts.map +1 -0
  105. package/dist/moonbridge/module/method_invoker.js +68 -0
  106. package/dist/moonbridge/module/method_invoker.js.map +1 -0
  107. package/dist/moonbridge/module/method_invoker.mjs +65 -0
  108. package/dist/moonbridge/module/method_invoker.mjs.map +1 -0
  109. package/dist/moonbridge/module/module_creator.d.mts +4 -0
  110. package/dist/moonbridge/module/module_creator.d.ts +28 -0
  111. package/dist/moonbridge/module/module_creator.d.ts.map +1 -0
  112. package/dist/moonbridge/module/module_creator.js +45 -0
  113. package/dist/moonbridge/module/module_creator.js.map +1 -0
  114. package/dist/moonbridge/module/module_creator.mjs +43 -0
  115. package/dist/moonbridge/module/module_creator.mjs.map +1 -0
  116. package/dist/moonbridge/utils/logger.d.mts +9 -0
  117. package/dist/moonbridge/utils/logger.d.ts +6 -0
  118. package/dist/moonbridge/utils/logger.d.ts.map +1 -0
  119. package/dist/moonbridge/utils/logger.js +9 -0
  120. package/dist/moonbridge/utils/logger.js.map +1 -0
  121. package/dist/moonbridge/utils/logger.mjs +7 -0
  122. package/dist/moonbridge/utils/logger.mjs.map +1 -0
  123. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.d.mts +23 -0
  124. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.d.ts +41 -0
  125. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.d.ts.map +1 -0
  126. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.js +45 -0
  127. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.js.map +1 -0
  128. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.mjs +43 -0
  129. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.mjs.map +1 -0
  130. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_executor.d.mts +68 -0
  131. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_executor.d.ts +47 -0
  132. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_executor.d.ts.map +1 -0
  133. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_executor.js +163 -0
  134. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_executor.js.map +1 -0
  135. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_executor.mjs +161 -0
  136. package/dist/moonbridge-ipc/client/internal/bridge/ipc_client_executor.mjs.map +1 -0
  137. package/dist/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.d.mts +23 -0
  138. package/dist/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.d.ts +37 -0
  139. package/dist/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.d.ts.map +1 -0
  140. package/dist/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.js +161 -0
  141. package/dist/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.js.map +1 -0
  142. package/dist/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.mjs +159 -0
  143. package/dist/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.mjs.map +1 -0
  144. package/dist/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.d.mts +23 -0
  145. package/dist/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.d.ts +59 -0
  146. package/dist/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.d.ts.map +1 -0
  147. package/dist/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.js +364 -0
  148. package/dist/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.js.map +1 -0
  149. package/dist/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.mjs +362 -0
  150. package/dist/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.mjs.map +1 -0
  151. package/dist/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.d.mts +23 -0
  152. package/dist/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.d.ts +28 -0
  153. package/dist/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.d.ts.map +1 -0
  154. package/dist/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.js +102 -0
  155. package/dist/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.js.map +1 -0
  156. package/dist/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.mjs +100 -0
  157. package/dist/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.mjs.map +1 -0
  158. package/dist/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.d.mts +23 -0
  159. package/dist/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.d.ts +16 -0
  160. package/dist/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.d.ts.map +1 -0
  161. package/dist/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.js +62 -0
  162. package/dist/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.js.map +1 -0
  163. package/dist/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.mjs +60 -0
  164. package/dist/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.mjs.map +1 -0
  165. package/dist/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.d.mts +23 -0
  166. package/dist/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.d.ts +27 -0
  167. package/dist/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.d.ts.map +1 -0
  168. package/dist/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.js +4 -0
  169. package/dist/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.js.map +1 -0
  170. package/dist/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.mjs +3 -0
  171. package/dist/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.mjs.map +1 -0
  172. package/dist/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.d.mts +23 -0
  173. package/dist/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.d.ts +15 -0
  174. package/dist/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.d.ts.map +1 -0
  175. package/dist/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.js +56 -0
  176. package/dist/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.js.map +1 -0
  177. package/dist/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.mjs +54 -0
  178. package/dist/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.mjs.map +1 -0
  179. package/dist/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.d.mts +54 -0
  180. package/dist/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.d.ts +40 -0
  181. package/dist/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.d.ts.map +1 -0
  182. package/dist/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.js +102 -0
  183. package/dist/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.js.map +1 -0
  184. package/dist/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.mjs +100 -0
  185. package/dist/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.mjs.map +1 -0
  186. package/dist/moonbridge-ipc/client/internal/settings/ipc_client_settings.d.mts +90 -0
  187. package/dist/moonbridge-ipc/client/internal/settings/ipc_client_settings.d.ts +82 -0
  188. package/dist/moonbridge-ipc/client/internal/settings/ipc_client_settings.d.ts.map +1 -0
  189. package/dist/moonbridge-ipc/client/internal/settings/ipc_client_settings.js +55 -0
  190. package/dist/moonbridge-ipc/client/internal/settings/ipc_client_settings.js.map +1 -0
  191. package/dist/moonbridge-ipc/client/internal/settings/ipc_client_settings.mjs +53 -0
  192. package/dist/moonbridge-ipc/client/internal/settings/ipc_client_settings.mjs.map +1 -0
  193. package/dist/moonbridge-ipc/client/moonbridge_ipc_client.d.mts +134 -0
  194. package/dist/moonbridge-ipc/client/moonbridge_ipc_client.d.ts +124 -0
  195. package/dist/moonbridge-ipc/client/moonbridge_ipc_client.d.ts.map +1 -0
  196. package/dist/moonbridge-ipc/client/moonbridge_ipc_client.js +156 -0
  197. package/dist/moonbridge-ipc/client/moonbridge_ipc_client.js.map +1 -0
  198. package/dist/moonbridge-ipc/client/moonbridge_ipc_client.mjs +153 -0
  199. package/dist/moonbridge-ipc/client/moonbridge_ipc_client.mjs.map +1 -0
  200. package/dist/moonbridge-ipc/client/types/ipc_event_bus.d.mts +29 -0
  201. package/dist/moonbridge-ipc/client/types/ipc_event_bus.d.ts +26 -0
  202. package/dist/moonbridge-ipc/client/types/ipc_event_bus.d.ts.map +1 -0
  203. package/dist/moonbridge-ipc/client/types/ipc_event_bus.js +12 -0
  204. package/dist/moonbridge-ipc/client/types/ipc_event_bus.js.map +1 -0
  205. package/dist/moonbridge-ipc/client/types/ipc_event_bus.mjs +10 -0
  206. package/dist/moonbridge-ipc/client/types/ipc_event_bus.mjs.map +1 -0
  207. package/dist/moonbridge-ipc/client/types/ipc_message_strategy.d.mts +17 -0
  208. package/dist/moonbridge-ipc/client/types/ipc_message_strategy.d.ts +16 -0
  209. package/dist/moonbridge-ipc/client/types/ipc_message_strategy.d.ts.map +1 -0
  210. package/dist/moonbridge-ipc/client/types/ipc_message_strategy.js +18 -0
  211. package/dist/moonbridge-ipc/client/types/ipc_message_strategy.js.map +1 -0
  212. package/dist/moonbridge-ipc/client/types/ipc_message_strategy.mjs +16 -0
  213. package/dist/moonbridge-ipc/client/types/ipc_message_strategy.mjs.map +1 -0
  214. package/dist/moonbridge-ipc/client/types/ipc_messenger.d.mts +45 -0
  215. package/dist/moonbridge-ipc/client/types/ipc_messenger.d.ts +38 -0
  216. package/dist/moonbridge-ipc/client/types/ipc_messenger.d.ts.map +1 -0
  217. package/dist/moonbridge-ipc/client/types/ipc_messenger.js +4 -0
  218. package/dist/moonbridge-ipc/client/types/ipc_messenger.js.map +1 -0
  219. package/dist/moonbridge-ipc/client/types/ipc_messenger.mjs +3 -0
  220. package/dist/moonbridge-ipc/client/types/ipc_messenger.mjs.map +1 -0
  221. package/dist/moonbridge-ipc/client/types/ipc_types.d.mts +52 -0
  222. package/dist/moonbridge-ipc/client/types/ipc_types.d.ts +49 -0
  223. package/dist/moonbridge-ipc/client/types/ipc_types.d.ts.map +1 -0
  224. package/dist/moonbridge-ipc/client/types/ipc_types.js +20 -0
  225. package/dist/moonbridge-ipc/client/types/ipc_types.js.map +1 -0
  226. package/dist/moonbridge-ipc/client/types/ipc_types.mjs +17 -0
  227. package/dist/moonbridge-ipc/client/types/ipc_types.mjs.map +1 -0
  228. package/dist/moonbridge-ipc/extension/bridge_extension.d.mts +33 -0
  229. package/dist/moonbridge-ipc/extension/bridge_extension.d.ts +15 -0
  230. package/dist/moonbridge-ipc/extension/bridge_extension.d.ts.map +1 -0
  231. package/dist/moonbridge-ipc/extension/bridge_extension.js +31 -0
  232. package/dist/moonbridge-ipc/extension/bridge_extension.js.map +1 -0
  233. package/dist/moonbridge-ipc/extension/bridge_extension.mjs +29 -0
  234. package/dist/moonbridge-ipc/extension/bridge_extension.mjs.map +1 -0
  235. package/dist/moonbridge-ipc/general/app_launch/app_launcher.d.mts +23 -0
  236. package/dist/moonbridge-ipc/general/app_launch/app_launcher.d.ts +20 -0
  237. package/dist/moonbridge-ipc/general/app_launch/app_launcher.d.ts.map +1 -0
  238. package/dist/moonbridge-ipc/general/app_launch/app_launcher.js +4 -0
  239. package/dist/moonbridge-ipc/general/app_launch/app_launcher.js.map +1 -0
  240. package/dist/moonbridge-ipc/general/app_launch/app_launcher.mjs +3 -0
  241. package/dist/moonbridge-ipc/general/app_launch/app_launcher.mjs.map +1 -0
  242. package/dist/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.d.mts +34 -0
  243. package/dist/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.d.ts +33 -0
  244. package/dist/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.d.ts.map +1 -0
  245. package/dist/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.js +70 -0
  246. package/dist/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.js.map +1 -0
  247. package/dist/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.mjs +66 -0
  248. package/dist/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.mjs.map +1 -0
  249. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.d.mts +19 -0
  250. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.d.ts +16 -0
  251. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.d.ts.map +1 -0
  252. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.js +19 -0
  253. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.js.map +1 -0
  254. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.mjs +17 -0
  255. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.mjs.map +1 -0
  256. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.d.mts +37 -0
  257. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.d.ts +34 -0
  258. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.d.ts.map +1 -0
  259. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.js +116 -0
  260. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.js.map +1 -0
  261. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.mjs +114 -0
  262. package/dist/moonbridge-ipc/general/app_launch/launcher/node_launcher.mjs.map +1 -0
  263. package/dist/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.d.mts +32 -0
  264. package/dist/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.d.ts +29 -0
  265. package/dist/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.d.ts.map +1 -0
  266. package/dist/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.js +60 -0
  267. package/dist/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.js.map +1 -0
  268. package/dist/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.mjs +58 -0
  269. package/dist/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.mjs.map +1 -0
  270. package/dist/moonbridge-ipc/general/app_launch/model/app_info.d.mts +40 -0
  271. package/dist/moonbridge-ipc/general/app_launch/model/app_info.d.ts +39 -0
  272. package/dist/moonbridge-ipc/general/app_launch/model/app_info.d.ts.map +1 -0
  273. package/dist/moonbridge-ipc/general/app_launch/model/app_info.js +41 -0
  274. package/dist/moonbridge-ipc/general/app_launch/model/app_info.js.map +1 -0
  275. package/dist/moonbridge-ipc/general/app_launch/model/app_info.mjs +38 -0
  276. package/dist/moonbridge-ipc/general/app_launch/model/app_info.mjs.map +1 -0
  277. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.d.mts +14 -0
  278. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.d.ts +13 -0
  279. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.d.ts.map +1 -0
  280. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.js +13 -0
  281. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.js.map +1 -0
  282. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.mjs +8 -0
  283. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.mjs.map +1 -0
  284. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models.d.mts +27 -0
  285. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models.d.ts +26 -0
  286. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models.d.ts.map +1 -0
  287. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models.js +28 -0
  288. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models.js.map +1 -0
  289. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models.mjs +24 -0
  290. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models.mjs.map +1 -0
  291. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.d.mts +28 -0
  292. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.d.ts +25 -0
  293. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.d.ts.map +1 -0
  294. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.js +49 -0
  295. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.js.map +1 -0
  296. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.mjs +47 -0
  297. package/dist/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.mjs.map +1 -0
  298. package/dist/moonbridge-ipc/general/app_launch/platform_app_launcher.d.mts +46 -0
  299. package/dist/moonbridge-ipc/general/app_launch/platform_app_launcher.d.ts +44 -0
  300. package/dist/moonbridge-ipc/general/app_launch/platform_app_launcher.d.ts.map +1 -0
  301. package/dist/moonbridge-ipc/general/app_launch/platform_app_launcher.js +47 -0
  302. package/dist/moonbridge-ipc/general/app_launch/platform_app_launcher.js.map +1 -0
  303. package/dist/moonbridge-ipc/general/app_launch/platform_app_launcher.mjs +45 -0
  304. package/dist/moonbridge-ipc/general/app_launch/platform_app_launcher.mjs.map +1 -0
  305. package/dist/moonbridge-ipc/general/config/port_candidate_rule.d.mts +41 -0
  306. package/dist/moonbridge-ipc/general/config/port_candidate_rule.d.ts +40 -0
  307. package/dist/moonbridge-ipc/general/config/port_candidate_rule.d.ts.map +1 -0
  308. package/dist/moonbridge-ipc/general/config/port_candidate_rule.js +65 -0
  309. package/dist/moonbridge-ipc/general/config/port_candidate_rule.js.map +1 -0
  310. package/dist/moonbridge-ipc/general/config/port_candidate_rule.mjs +62 -0
  311. package/dist/moonbridge-ipc/general/config/port_candidate_rule.mjs.map +1 -0
  312. package/dist/moonbridge-ipc/general/config/websocket_server_endpoint.d.mts +33 -0
  313. package/dist/moonbridge-ipc/general/config/websocket_server_endpoint.d.ts +30 -0
  314. package/dist/moonbridge-ipc/general/config/websocket_server_endpoint.d.ts.map +1 -0
  315. package/dist/moonbridge-ipc/general/config/websocket_server_endpoint.js +32 -0
  316. package/dist/moonbridge-ipc/general/config/websocket_server_endpoint.js.map +1 -0
  317. package/dist/moonbridge-ipc/general/config/websocket_server_endpoint.mjs +30 -0
  318. package/dist/moonbridge-ipc/general/config/websocket_server_endpoint.mjs.map +1 -0
  319. package/dist/moonbridge-ipc/general/encode/ipc_message_decoder.d.mts +29 -0
  320. package/dist/moonbridge-ipc/general/encode/ipc_message_decoder.d.ts +26 -0
  321. package/dist/moonbridge-ipc/general/encode/ipc_message_decoder.d.ts.map +1 -0
  322. package/dist/moonbridge-ipc/general/encode/ipc_message_decoder.js +118 -0
  323. package/dist/moonbridge-ipc/general/encode/ipc_message_decoder.js.map +1 -0
  324. package/dist/moonbridge-ipc/general/encode/ipc_message_decoder.mjs +116 -0
  325. package/dist/moonbridge-ipc/general/encode/ipc_message_decoder.mjs.map +1 -0
  326. package/dist/moonbridge-ipc/general/encode/ipc_message_encoder.d.mts +29 -0
  327. package/dist/moonbridge-ipc/general/encode/ipc_message_encoder.d.ts +26 -0
  328. package/dist/moonbridge-ipc/general/encode/ipc_message_encoder.d.ts.map +1 -0
  329. package/dist/moonbridge-ipc/general/encode/ipc_message_encoder.js +93 -0
  330. package/dist/moonbridge-ipc/general/encode/ipc_message_encoder.js.map +1 -0
  331. package/dist/moonbridge-ipc/general/encode/ipc_message_encoder.mjs +91 -0
  332. package/dist/moonbridge-ipc/general/encode/ipc_message_encoder.mjs.map +1 -0
  333. package/dist/moonbridge-ipc/general/error/ipc_error.d.mts +28 -0
  334. package/dist/moonbridge-ipc/general/error/ipc_error.d.ts +27 -0
  335. package/dist/moonbridge-ipc/general/error/ipc_error.d.ts.map +1 -0
  336. package/dist/moonbridge-ipc/general/error/ipc_error.js +30 -0
  337. package/dist/moonbridge-ipc/general/error/ipc_error.js.map +1 -0
  338. package/dist/moonbridge-ipc/general/error/ipc_error.mjs +28 -0
  339. package/dist/moonbridge-ipc/general/error/ipc_error.mjs.map +1 -0
  340. package/dist/moonbridge-ipc/general/index.d.mts +10 -0
  341. package/dist/moonbridge-ipc/general/index.d.ts +10 -0
  342. package/dist/moonbridge-ipc/general/index.d.ts.map +1 -0
  343. package/dist/moonbridge-ipc/general/index.js +70 -0
  344. package/dist/moonbridge-ipc/general/index.js.map +1 -0
  345. package/dist/moonbridge-ipc/general/index.mjs +11 -0
  346. package/dist/moonbridge-ipc/general/index.mjs.map +1 -0
  347. package/dist/moonbridge-ipc/general/lock/async_lock.d.mts +26 -0
  348. package/dist/moonbridge-ipc/general/lock/async_lock.d.ts +23 -0
  349. package/dist/moonbridge-ipc/general/lock/async_lock.d.ts.map +1 -0
  350. package/dist/moonbridge-ipc/general/lock/async_lock.js +48 -0
  351. package/dist/moonbridge-ipc/general/lock/async_lock.js.map +1 -0
  352. package/dist/moonbridge-ipc/general/lock/async_lock.mjs +46 -0
  353. package/dist/moonbridge-ipc/general/lock/async_lock.mjs.map +1 -0
  354. package/dist/moonbridge-ipc/general/lock/lock.d.mts +10 -0
  355. package/dist/moonbridge-ipc/general/lock/lock.d.ts +9 -0
  356. package/dist/moonbridge-ipc/general/lock/lock.d.ts.map +1 -0
  357. package/dist/moonbridge-ipc/general/lock/lock.js +4 -0
  358. package/dist/moonbridge-ipc/general/lock/lock.js.map +1 -0
  359. package/dist/moonbridge-ipc/general/lock/lock.mjs +3 -0
  360. package/dist/moonbridge-ipc/general/lock/lock.mjs.map +1 -0
  361. package/dist/moonbridge-ipc/general/message/constants/message_types.d.mts +19 -0
  362. package/dist/moonbridge-ipc/general/message/constants/message_types.d.ts +18 -0
  363. package/dist/moonbridge-ipc/general/message/constants/message_types.d.ts.map +1 -0
  364. package/dist/moonbridge-ipc/general/message/constants/message_types.js +19 -0
  365. package/dist/moonbridge-ipc/general/message/constants/message_types.js.map +1 -0
  366. package/dist/moonbridge-ipc/general/message/constants/message_types.mjs +17 -0
  367. package/dist/moonbridge-ipc/general/message/constants/message_types.mjs.map +1 -0
  368. package/dist/moonbridge-ipc/general/message/error.d.mts +14 -0
  369. package/dist/moonbridge-ipc/general/message/error.d.ts +13 -0
  370. package/dist/moonbridge-ipc/general/message/error.d.ts.map +1 -0
  371. package/dist/moonbridge-ipc/general/message/error.js +16 -0
  372. package/dist/moonbridge-ipc/general/message/error.js.map +1 -0
  373. package/dist/moonbridge-ipc/general/message/error.mjs +14 -0
  374. package/dist/moonbridge-ipc/general/message/error.mjs.map +1 -0
  375. package/dist/moonbridge-ipc/general/message/event.d.mts +11 -0
  376. package/dist/moonbridge-ipc/general/message/event.d.ts +10 -0
  377. package/dist/moonbridge-ipc/general/message/event.d.ts.map +1 -0
  378. package/dist/moonbridge-ipc/general/message/event.js +13 -0
  379. package/dist/moonbridge-ipc/general/message/event.js.map +1 -0
  380. package/dist/moonbridge-ipc/general/message/event.mjs +11 -0
  381. package/dist/moonbridge-ipc/general/message/event.mjs.map +1 -0
  382. package/dist/moonbridge-ipc/general/message/handshake.d.mts +16 -0
  383. package/dist/moonbridge-ipc/general/message/handshake.d.ts +15 -0
  384. package/dist/moonbridge-ipc/general/message/handshake.d.ts.map +1 -0
  385. package/dist/moonbridge-ipc/general/message/handshake.js +18 -0
  386. package/dist/moonbridge-ipc/general/message/handshake.js.map +1 -0
  387. package/dist/moonbridge-ipc/general/message/handshake.mjs +16 -0
  388. package/dist/moonbridge-ipc/general/message/handshake.mjs.map +1 -0
  389. package/dist/moonbridge-ipc/general/message/ping.d.mts +9 -0
  390. package/dist/moonbridge-ipc/general/message/ping.d.ts +8 -0
  391. package/dist/moonbridge-ipc/general/message/ping.d.ts.map +1 -0
  392. package/dist/moonbridge-ipc/general/message/ping.js +11 -0
  393. package/dist/moonbridge-ipc/general/message/ping.js.map +1 -0
  394. package/dist/moonbridge-ipc/general/message/ping.mjs +9 -0
  395. package/dist/moonbridge-ipc/general/message/ping.mjs.map +1 -0
  396. package/dist/moonbridge-ipc/general/message/registration.d.mts +9 -0
  397. package/dist/moonbridge-ipc/general/message/registration.d.ts +8 -0
  398. package/dist/moonbridge-ipc/general/message/registration.d.ts.map +1 -0
  399. package/dist/moonbridge-ipc/general/message/registration.js +11 -0
  400. package/dist/moonbridge-ipc/general/message/registration.js.map +1 -0
  401. package/dist/moonbridge-ipc/general/message/registration.mjs +9 -0
  402. package/dist/moonbridge-ipc/general/message/registration.mjs.map +1 -0
  403. package/dist/moonbridge-ipc/general/message/request.d.mts +15 -0
  404. package/dist/moonbridge-ipc/general/message/request.d.ts +14 -0
  405. package/dist/moonbridge-ipc/general/message/request.d.ts.map +1 -0
  406. package/dist/moonbridge-ipc/general/message/request.js +16 -0
  407. package/dist/moonbridge-ipc/general/message/request.js.map +1 -0
  408. package/dist/moonbridge-ipc/general/message/request.mjs +14 -0
  409. package/dist/moonbridge-ipc/general/message/request.mjs.map +1 -0
  410. package/dist/moonbridge-ipc/general/message/response.d.mts +14 -0
  411. package/dist/moonbridge-ipc/general/message/response.d.ts +13 -0
  412. package/dist/moonbridge-ipc/general/message/response.d.ts.map +1 -0
  413. package/dist/moonbridge-ipc/general/message/response.js +16 -0
  414. package/dist/moonbridge-ipc/general/message/response.js.map +1 -0
  415. package/dist/moonbridge-ipc/general/message/response.mjs +14 -0
  416. package/dist/moonbridge-ipc/general/message/response.mjs.map +1 -0
  417. package/dist/moonbridge-ipc/general/message/session_setup.d.mts +23 -0
  418. package/dist/moonbridge-ipc/general/message/session_setup.d.ts +22 -0
  419. package/dist/moonbridge-ipc/general/message/session_setup.d.ts.map +1 -0
  420. package/dist/moonbridge-ipc/general/message/session_setup.js +27 -0
  421. package/dist/moonbridge-ipc/general/message/session_setup.js.map +1 -0
  422. package/dist/moonbridge-ipc/general/message/session_setup.mjs +24 -0
  423. package/dist/moonbridge-ipc/general/message/session_setup.mjs.map +1 -0
  424. package/dist/moonbridge-ipc/general/message/unregistration.d.mts +9 -0
  425. package/dist/moonbridge-ipc/general/message/unregistration.d.ts +8 -0
  426. package/dist/moonbridge-ipc/general/message/unregistration.d.ts.map +1 -0
  427. package/dist/moonbridge-ipc/general/message/unregistration.js +11 -0
  428. package/dist/moonbridge-ipc/general/message/unregistration.js.map +1 -0
  429. package/dist/moonbridge-ipc/general/message/unregistration.mjs +9 -0
  430. package/dist/moonbridge-ipc/general/message/unregistration.mjs.map +1 -0
  431. package/dist/moonbridge-ipc/general/transport/encode/data_frame_codec.d.mts +26 -0
  432. package/dist/moonbridge-ipc/general/transport/encode/data_frame_codec.d.ts +25 -0
  433. package/dist/moonbridge-ipc/general/transport/encode/data_frame_codec.d.ts.map +1 -0
  434. package/dist/moonbridge-ipc/general/transport/encode/data_frame_codec.js +112 -0
  435. package/dist/moonbridge-ipc/general/transport/encode/data_frame_codec.js.map +1 -0
  436. package/dist/moonbridge-ipc/general/transport/encode/data_frame_codec.mjs +109 -0
  437. package/dist/moonbridge-ipc/general/transport/encode/data_frame_codec.mjs.map +1 -0
  438. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel.d.mts +40 -0
  439. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel.d.ts +39 -0
  440. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel.d.ts.map +1 -0
  441. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel.js +4 -0
  442. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel.js.map +1 -0
  443. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel.mjs +3 -0
  444. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel.mjs.map +1 -0
  445. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.d.mts +23 -0
  446. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.d.ts +20 -0
  447. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.d.ts.map +1 -0
  448. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.js +35 -0
  449. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.js.map +1 -0
  450. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.mjs +27 -0
  451. package/dist/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.mjs.map +1 -0
  452. package/dist/moonbridge-ipc/general/transport/interface/transport_client.d.mts +44 -0
  453. package/dist/moonbridge-ipc/general/transport/interface/transport_client.d.ts +43 -0
  454. package/dist/moonbridge-ipc/general/transport/interface/transport_client.d.ts.map +1 -0
  455. package/dist/moonbridge-ipc/general/transport/interface/transport_client.js +4 -0
  456. package/dist/moonbridge-ipc/general/transport/interface/transport_client.js.map +1 -0
  457. package/dist/moonbridge-ipc/general/transport/interface/transport_client.mjs +3 -0
  458. package/dist/moonbridge-ipc/general/transport/interface/transport_client.mjs.map +1 -0
  459. package/dist/moonbridge-ipc/general/transport/interface/transport_client_extension.d.mts +27 -0
  460. package/dist/moonbridge-ipc/general/transport/interface/transport_client_extension.d.ts +24 -0
  461. package/dist/moonbridge-ipc/general/transport/interface/transport_client_extension.d.ts.map +1 -0
  462. package/dist/moonbridge-ipc/general/transport/interface/transport_client_extension.js +43 -0
  463. package/dist/moonbridge-ipc/general/transport/interface/transport_client_extension.js.map +1 -0
  464. package/dist/moonbridge-ipc/general/transport/interface/transport_client_extension.mjs +33 -0
  465. package/dist/moonbridge-ipc/general/transport/interface/transport_client_extension.mjs.map +1 -0
  466. package/dist/moonbridge-ipc/general/transport/websocket/websocket_client.d.mts +36 -0
  467. package/dist/moonbridge-ipc/general/transport/websocket/websocket_client.d.ts +33 -0
  468. package/dist/moonbridge-ipc/general/transport/websocket/websocket_client.d.ts.map +1 -0
  469. package/dist/moonbridge-ipc/general/transport/websocket/websocket_client.js +109 -0
  470. package/dist/moonbridge-ipc/general/transport/websocket/websocket_client.js.map +1 -0
  471. package/dist/moonbridge-ipc/general/transport/websocket/websocket_client.mjs +107 -0
  472. package/dist/moonbridge-ipc/general/transport/websocket/websocket_client.mjs.map +1 -0
  473. package/dist/moonbridge-ipc/general/transport/websocket/websocket_message_channel.d.mts +44 -0
  474. package/dist/moonbridge-ipc/general/transport/websocket/websocket_message_channel.d.ts +41 -0
  475. package/dist/moonbridge-ipc/general/transport/websocket/websocket_message_channel.d.ts.map +1 -0
  476. package/dist/moonbridge-ipc/general/transport/websocket/websocket_message_channel.js +109 -0
  477. package/dist/moonbridge-ipc/general/transport/websocket/websocket_message_channel.js.map +1 -0
  478. package/dist/moonbridge-ipc/general/transport/websocket/websocket_message_channel.mjs +107 -0
  479. package/dist/moonbridge-ipc/general/transport/websocket/websocket_message_channel.mjs.map +1 -0
  480. package/dist/moonbridge-ipc/general/transport/websocket/websocket_server.d.mts +71 -0
  481. package/dist/moonbridge-ipc/general/transport/websocket/websocket_server.d.ts +68 -0
  482. package/dist/moonbridge-ipc/general/transport/websocket/websocket_server.d.ts.map +1 -0
  483. package/dist/moonbridge-ipc/general/transport/websocket/websocket_server.js +155 -0
  484. package/dist/moonbridge-ipc/general/transport/websocket/websocket_server.js.map +1 -0
  485. package/dist/moonbridge-ipc/general/transport/websocket/websocket_server.mjs +151 -0
  486. package/dist/moonbridge-ipc/general/transport/websocket/websocket_server.mjs.map +1 -0
  487. package/dist/moonbridge-ipc/index.d.mts +26 -0
  488. package/dist/moonbridge-ipc/index.d.ts +10 -0
  489. package/dist/moonbridge-ipc/index.d.ts.map +1 -0
  490. package/dist/moonbridge-ipc/index.js +70 -0
  491. package/dist/moonbridge-ipc/index.js.map +1 -0
  492. package/dist/moonbridge-ipc/index.mjs +11 -0
  493. package/dist/moonbridge-ipc/index.mjs.map +1 -0
  494. package/dist/moonbridge-ipc/server/credential/client_identity.d.mts +38 -0
  495. package/dist/moonbridge-ipc/server/credential/client_identity.d.ts +35 -0
  496. package/dist/moonbridge-ipc/server/credential/client_identity.d.ts.map +1 -0
  497. package/dist/moonbridge-ipc/server/credential/client_identity.js +27 -0
  498. package/dist/moonbridge-ipc/server/credential/client_identity.js.map +1 -0
  499. package/dist/moonbridge-ipc/server/credential/client_identity.mjs +25 -0
  500. package/dist/moonbridge-ipc/server/credential/client_identity.mjs.map +1 -0
  501. package/dist/moonbridge-ipc/server/internal/identity/client_identity_manager.d.mts +33 -0
  502. package/dist/moonbridge-ipc/server/internal/identity/client_identity_manager.d.ts +29 -0
  503. package/dist/moonbridge-ipc/server/internal/identity/client_identity_manager.d.ts.map +1 -0
  504. package/dist/moonbridge-ipc/server/internal/identity/client_identity_manager.js +39 -0
  505. package/dist/moonbridge-ipc/server/internal/identity/client_identity_manager.js.map +1 -0
  506. package/dist/moonbridge-ipc/server/internal/identity/client_identity_manager.mjs +37 -0
  507. package/dist/moonbridge-ipc/server/internal/identity/client_identity_manager.mjs.map +1 -0
  508. package/dist/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.d.mts +54 -0
  509. package/dist/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.d.ts +49 -0
  510. package/dist/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.d.ts.map +1 -0
  511. package/dist/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.js +369 -0
  512. package/dist/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.js.map +1 -0
  513. package/dist/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.mjs +367 -0
  514. package/dist/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.mjs.map +1 -0
  515. package/dist/moonbridge-ipc/server/moonbridge_ipc_server.d.mts +76 -0
  516. package/dist/moonbridge-ipc/server/moonbridge_ipc_server.d.ts +71 -0
  517. package/dist/moonbridge-ipc/server/moonbridge_ipc_server.d.ts.map +1 -0
  518. package/dist/moonbridge-ipc/server/moonbridge_ipc_server.js +101 -0
  519. package/dist/moonbridge-ipc/server/moonbridge_ipc_server.js.map +1 -0
  520. package/dist/moonbridge-ipc/server/moonbridge_ipc_server.mjs +97 -0
  521. package/dist/moonbridge-ipc/server/moonbridge_ipc_server.mjs.map +1 -0
  522. package/dist/moonbridge-ipc/utils/env.d.mts +7 -0
  523. package/dist/moonbridge-ipc/utils/env.d.ts +6 -0
  524. package/dist/moonbridge-ipc/utils/env.d.ts.map +1 -0
  525. package/dist/moonbridge-ipc/utils/env.js +9 -0
  526. package/dist/moonbridge-ipc/utils/env.js.map +1 -0
  527. package/dist/moonbridge-ipc/utils/env.mjs +7 -0
  528. package/dist/moonbridge-ipc/utils/env.mjs.map +1 -0
  529. package/dist/moonbridge-ipc/utils/logger.d.mts +9 -0
  530. package/dist/moonbridge-ipc/utils/logger.d.ts +6 -0
  531. package/dist/moonbridge-ipc/utils/logger.d.ts.map +1 -0
  532. package/dist/moonbridge-ipc/utils/logger.js +9 -0
  533. package/dist/moonbridge-ipc/utils/logger.js.map +1 -0
  534. package/dist/moonbridge-ipc/utils/logger.mjs +7 -0
  535. package/dist/moonbridge-ipc/utils/logger.mjs.map +1 -0
  536. package/dist/moonbridge-ipc/utils/string_utils.d.mts +10 -0
  537. package/dist/moonbridge-ipc/utils/string_utils.d.ts +9 -0
  538. package/dist/moonbridge-ipc/utils/string_utils.d.ts.map +1 -0
  539. package/dist/moonbridge-ipc/utils/string_utils.js +14 -0
  540. package/dist/moonbridge-ipc/utils/string_utils.js.map +1 -0
  541. package/dist/moonbridge-ipc/utils/string_utils.mjs +12 -0
  542. package/dist/moonbridge-ipc/utils/string_utils.mjs.map +1 -0
  543. package/dist/wps-launcher/index.d.mts +3 -0
  544. package/dist/wps-launcher/index.d.ts +5 -0
  545. package/dist/wps-launcher/index.d.ts.map +1 -0
  546. package/dist/wps-launcher/index.js +14 -0
  547. package/dist/wps-launcher/index.js.map +1 -0
  548. package/dist/wps-launcher/index.mjs +3 -0
  549. package/dist/wps-launcher/index.mjs.map +1 -0
  550. package/dist/wps-launcher/launcher/wps_app_launcher.d.mts +61 -0
  551. package/dist/wps-launcher/launcher/wps_app_launcher.d.ts +58 -0
  552. package/dist/wps-launcher/launcher/wps_app_launcher.d.ts.map +1 -0
  553. package/dist/wps-launcher/launcher/wps_app_launcher.js +83 -0
  554. package/dist/wps-launcher/launcher/wps_app_launcher.js.map +1 -0
  555. package/dist/wps-launcher/launcher/wps_app_launcher.mjs +81 -0
  556. package/dist/wps-launcher/launcher/wps_app_launcher.mjs.map +1 -0
  557. package/docs/REFACTOR_SCOPE.md +53 -0
  558. package/docs/ROADMAP.md +143 -0
  559. package/docs/STRUCTURE.md +47 -0
  560. package/package.json +64 -0
  561. package/src/index.ts +3 -0
  562. package/src/moonbridge/annotation/decorators.ts +109 -0
  563. package/src/moonbridge/annotation/registry.ts +118 -0
  564. package/src/moonbridge/index.ts +5 -0
  565. package/src/moonbridge/kernel/bridge.ts +28 -0
  566. package/src/moonbridge/kernel/bridge_module.ts +38 -0
  567. package/src/moonbridge/kernel/executor.ts +41 -0
  568. package/src/moonbridge/kernel/result_callback.ts +19 -0
  569. package/src/moonbridge/logger/logger.ts +95 -0
  570. package/src/moonbridge/message/internal/generic_message_parser.internal.ts +39 -0
  571. package/src/moonbridge/message/message.ts +16 -0
  572. package/src/moonbridge/message/message_parser.ts +31 -0
  573. package/src/moonbridge/message/message_parser_manager.ts +96 -0
  574. package/src/moonbridge/module/method_invoker.ts +90 -0
  575. package/src/moonbridge/module/module_creator.ts +60 -0
  576. package/src/moonbridge/utils/logger.ts +6 -0
  577. package/src/moonbridge-ipc/client/internal/bridge/ipc_client_bridge.ts +74 -0
  578. package/src/moonbridge-ipc/client/internal/bridge/ipc_client_executor.ts +208 -0
  579. package/src/moonbridge-ipc/client/internal/ipc/communication/ipc_communication_agent.ts +226 -0
  580. package/src/moonbridge-ipc/client/internal/ipc/connect/ipc_connection_manager.ts +454 -0
  581. package/src/moonbridge-ipc/client/internal/ipc/coordinator/ipc_request_coordinator.ts +147 -0
  582. package/src/moonbridge-ipc/client/internal/ipc/eventbus/ipc_event_bus.ts +75 -0
  583. package/src/moonbridge-ipc/client/internal/ipc/ipc_client_component_provider.ts +28 -0
  584. package/src/moonbridge-ipc/client/internal/ipc/keep/ipc_connection_keeper.ts +70 -0
  585. package/src/moonbridge-ipc/client/internal/moonbridge_ipc_client.internal.ts +154 -0
  586. package/src/moonbridge-ipc/client/internal/settings/ipc_client_settings.ts +142 -0
  587. package/src/moonbridge-ipc/client/moonbridge_ipc_client.ts +222 -0
  588. package/src/moonbridge-ipc/client/types/ipc_event_bus.ts +28 -0
  589. package/src/moonbridge-ipc/client/types/ipc_message_strategy.ts +21 -0
  590. package/src/moonbridge-ipc/client/types/ipc_messenger.ts +42 -0
  591. package/src/moonbridge-ipc/client/types/ipc_types.ts +50 -0
  592. package/src/moonbridge-ipc/extension/bridge_extension.ts +32 -0
  593. package/src/moonbridge-ipc/general/app_launch/app_launcher.ts +21 -0
  594. package/src/moonbridge-ipc/general/app_launch/internal/real_platform_app_launcher.ts +97 -0
  595. package/src/moonbridge-ipc/general/app_launch/launcher/node_launcher.browser.ts +23 -0
  596. package/src/moonbridge-ipc/general/app_launch/launcher/node_launcher.ts +138 -0
  597. package/src/moonbridge-ipc/general/app_launch/launcher/url_scheme_launcher.ts +83 -0
  598. package/src/moonbridge-ipc/general/app_launch/model/app_info.ts +57 -0
  599. package/src/moonbridge-ipc/general/app_launch/model/app_launch_error_codes.ts +16 -0
  600. package/src/moonbridge-ipc/general/app_launch/model/app_launch_models.ts +35 -0
  601. package/src/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.ts +65 -0
  602. package/src/moonbridge-ipc/general/app_launch/platform_app_launcher.ts +89 -0
  603. package/src/moonbridge-ipc/general/config/port_candidate_rule.ts +81 -0
  604. package/src/moonbridge-ipc/general/config/websocket_server_endpoint.ts +48 -0
  605. package/src/moonbridge-ipc/general/encode/ipc_message_decoder.ts +122 -0
  606. package/src/moonbridge-ipc/general/encode/ipc_message_encoder.ts +108 -0
  607. package/src/moonbridge-ipc/general/error/ipc_error.ts +28 -0
  608. package/src/moonbridge-ipc/general/index.ts +9 -0
  609. package/src/moonbridge-ipc/general/lock/async_lock.ts +58 -0
  610. package/src/moonbridge-ipc/general/lock/lock.ts +9 -0
  611. package/src/moonbridge-ipc/general/message/constants/message_types.ts +18 -0
  612. package/src/moonbridge-ipc/general/message/error.ts +13 -0
  613. package/src/moonbridge-ipc/general/message/event.ts +10 -0
  614. package/src/moonbridge-ipc/general/message/handshake.ts +16 -0
  615. package/src/moonbridge-ipc/general/message/ping.ts +6 -0
  616. package/src/moonbridge-ipc/general/message/registration.ts +6 -0
  617. package/src/moonbridge-ipc/general/message/request.ts +14 -0
  618. package/src/moonbridge-ipc/general/message/response.ts +13 -0
  619. package/src/moonbridge-ipc/general/message/session_setup.ts +25 -0
  620. package/src/moonbridge-ipc/general/message/unregistration.ts +6 -0
  621. package/src/moonbridge-ipc/general/transport/encode/data_frame_codec.ts +148 -0
  622. package/src/moonbridge-ipc/general/transport/interface/serial_message_channel.ts +49 -0
  623. package/src/moonbridge-ipc/general/transport/interface/serial_message_channel_extension.ts +45 -0
  624. package/src/moonbridge-ipc/general/transport/interface/transport_client.ts +44 -0
  625. package/src/moonbridge-ipc/general/transport/interface/transport_client_extension.ts +52 -0
  626. package/src/moonbridge-ipc/general/transport/websocket/websocket_client.ts +130 -0
  627. package/src/moonbridge-ipc/general/transport/websocket/websocket_message_channel.ts +145 -0
  628. package/src/moonbridge-ipc/general/transport/websocket/websocket_server.ts +205 -0
  629. package/src/moonbridge-ipc/index.ts +9 -0
  630. package/src/moonbridge-ipc/server/credential/client_identity.ts +54 -0
  631. package/src/moonbridge-ipc/server/internal/identity/client_identity_manager.ts +42 -0
  632. package/src/moonbridge-ipc/server/internal/moonbridge_ipc_server.internal.ts +441 -0
  633. package/src/moonbridge-ipc/server/moonbridge_ipc_server.ts +149 -0
  634. package/src/moonbridge-ipc/utils/env.ts +7 -0
  635. package/src/moonbridge-ipc/utils/logger.ts +6 -0
  636. package/src/moonbridge-ipc/utils/string_utils.ts +21 -0
  637. package/src/wps-launcher/index.ts +4 -0
  638. package/src/wps-launcher/launcher/wps_app_launcher.ts +135 -0
  639. package/tests/integration/.gitkeep +0 -0
  640. package/tests/integration/moonbridge_ipc_server_client.test.ts +64 -0
  641. package/tests/unit/.gitkeep +0 -0
  642. package/tests/unit/app_launcher.test.ts +32 -0
  643. package/tests/unit/data_frame_codec.test.ts +72 -0
  644. package/tests/unit/event_bus.test.ts +39 -0
  645. package/tests/unit/handler_registry.test.ts +34 -0
  646. package/tests/unit/handshake.test.ts +47 -0
  647. package/tests/unit/heartbeat.test.ts +18 -0
  648. package/tests/unit/interceptors.test.ts +43 -0
  649. package/tests/unit/ipc_connection_manager.handshake.test.ts +72 -0
  650. package/tests/unit/moonbridge_ipc_server.test.ts +78 -0
  651. package/tests/unit/result_callback.test.ts +49 -0
  652. package/tests/unit/websocket_server.test.ts +101 -0
  653. package/tsconfig.json +36 -0
  654. package/tsup.config.ts +15 -0
  655. package/vitest.config.ts +13 -0
@@ -0,0 +1,25 @@
1
+ /**
2
+ * 基于当前运行环境(typeof window / process.platform)从 AppLaunchIdentifier、AppInstallationPath、AppLaunchArguments 取当前平台对应值。
3
+ * 与 Flutter 平台扩展语义一致。
4
+ */
5
+ import { AppLaunchArguments } from './app_launch_models.js';
6
+ import { AppInstallationPath, AppLaunchIdentifier } from './app_info.js';
7
+ /**
8
+ * 基于当前运行环境的模型扩展(013:一级函数收敛为类静态方法)。
9
+ */
10
+ export declare class AppLaunchModelsExtension {
11
+ /**
12
+ * 当前平台下应用标识(可执行名/Bundle ID/Scheme/包名)。
13
+ * 浏览器视为 Web,返回 iOSScheme;Node 按 process.platform 返回对应字段。
14
+ */
15
+ static getCurrentPlatformIdentifier(id: AppLaunchIdentifier): string | undefined;
16
+ /**
17
+ * 当前平台下安装路径。仅 Node 桌面端有效;浏览器返回 undefined。
18
+ */
19
+ static getCurrentPlatformPath(path: AppInstallationPath): string | undefined;
20
+ /**
21
+ * 当前平台下启动参数数组。浏览器返回 iOS;Node 返回 windows/macOS 命令行参数。
22
+ */
23
+ static getCurrentPlatformArguments(args: AppLaunchArguments): string[];
24
+ }
25
+ //# sourceMappingURL=app_launch_models_extension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app_launch_models_extension.d.ts","sourceRoot":"","sources":["../../../../../src/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAKzE;;GAEG;AACH,qBAAa,wBAAwB;IACnC;;;OAGG;IACH,MAAM,CAAC,4BAA4B,CACjC,EAAE,EAAE,mBAAmB,GACtB,MAAM,GAAG,SAAS;IAWrB;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAC3B,IAAI,EAAE,mBAAmB,GACxB,MAAM,GAAG,SAAS;IAWrB;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAChC,IAAI,EAAE,kBAAkB,GACvB,MAAM,EAAE;CAUZ"}
@@ -0,0 +1,49 @@
1
+ 'use strict';
2
+
3
+ const isBrowser = typeof window !== "undefined" && typeof window.document !== "undefined";
4
+ class AppLaunchModelsExtension {
5
+ /**
6
+ * 当前平台下应用标识(可执行名/Bundle ID/Scheme/包名)。
7
+ * 浏览器视为 Web,返回 iOSScheme;Node 按 process.platform 返回对应字段。
8
+ */
9
+ static getCurrentPlatformIdentifier(id) {
10
+ if (isBrowser) return id.iOSScheme;
11
+ if (typeof process !== "undefined" && process.platform === "win32") {
12
+ return id.windowsExecutable;
13
+ }
14
+ if (typeof process !== "undefined" && process.platform === "darwin") {
15
+ return id.macOSBundleId;
16
+ }
17
+ return void 0;
18
+ }
19
+ /**
20
+ * 当前平台下安装路径。仅 Node 桌面端有效;浏览器返回 undefined。
21
+ */
22
+ static getCurrentPlatformPath(path) {
23
+ if (isBrowser) return void 0;
24
+ if (typeof process !== "undefined" && process.platform === "win32") {
25
+ return path.windows;
26
+ }
27
+ if (typeof process !== "undefined" && process.platform === "darwin") {
28
+ return path.macOS;
29
+ }
30
+ return void 0;
31
+ }
32
+ /**
33
+ * 当前平台下启动参数数组。浏览器返回 iOS;Node 返回 windows/macOS 命令行参数。
34
+ */
35
+ static getCurrentPlatformArguments(args) {
36
+ if (isBrowser) return args.iOS;
37
+ if (typeof process !== "undefined" && process.platform === "win32") {
38
+ return args.windows;
39
+ }
40
+ if (typeof process !== "undefined" && process.platform === "darwin") {
41
+ return args.macOS;
42
+ }
43
+ return [];
44
+ }
45
+ }
46
+
47
+ exports.AppLaunchModelsExtension = AppLaunchModelsExtension;
48
+ //# sourceMappingURL=app_launch_models_extension.js.map
49
+ //# sourceMappingURL=app_launch_models_extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.ts"],"names":[],"mappings":";;AAQA,MAAM,YACJ,OAAO,MAAA,KAAW,WAAA,IAAe,OAAO,OAAO,QAAA,KAAa,WAAA;AAKvD,MAAM,wBAAA,CAAyB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKpC,OAAO,6BACL,EAAA,EACoB;AACpB,IAAA,IAAI,SAAA,SAAkB,EAAA,CAAG,SAAA;AACzB,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,OAAA,EAAS;AAClE,MAAA,OAAO,EAAA,CAAG,iBAAA;AAAA,IACZ;AACA,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,QAAA,EAAU;AACnE,MAAA,OAAO,EAAA,CAAG,aAAA;AAAA,IACZ;AACA,IAAA,OAAO,MAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,uBACL,IAAA,EACoB;AACpB,IAAA,IAAI,WAAW,OAAO,MAAA;AACtB,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,OAAA,EAAS;AAClE,MAAA,OAAO,IAAA,CAAK,OAAA;AAAA,IACd;AACA,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,QAAA,EAAU;AACnE,MAAA,OAAO,IAAA,CAAK,KAAA;AAAA,IACd;AACA,IAAA,OAAO,MAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,4BACL,IAAA,EACU;AACV,IAAA,IAAI,SAAA,SAAkB,IAAA,CAAK,GAAA;AAC3B,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,OAAA,EAAS;AAClE,MAAA,OAAO,IAAA,CAAK,OAAA;AAAA,IACd;AACA,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,QAAA,EAAU;AACnE,MAAA,OAAO,IAAA,CAAK,KAAA;AAAA,IACd;AACA,IAAA,OAAO,EAAC;AAAA,EACV;AACF","file":"app_launch_models_extension.js","sourcesContent":["/**\n * 基于当前运行环境(typeof window / process.platform)从 AppLaunchIdentifier、AppInstallationPath、AppLaunchArguments 取当前平台对应值。\n * 与 Flutter 平台扩展语义一致。\n */\n\nimport { AppLaunchArguments } from './app_launch_models.js';\nimport { AppInstallationPath, AppLaunchIdentifier } from './app_info.js';\n\nconst isBrowser =\n typeof window !== 'undefined' && typeof window.document !== 'undefined';\n\n/**\n * 基于当前运行环境的模型扩展(013:一级函数收敛为类静态方法)。\n */\nexport class AppLaunchModelsExtension {\n /**\n * 当前平台下应用标识(可执行名/Bundle ID/Scheme/包名)。\n * 浏览器视为 Web,返回 iOSScheme;Node 按 process.platform 返回对应字段。\n */\n static getCurrentPlatformIdentifier(\n id: AppLaunchIdentifier,\n ): string | undefined {\n if (isBrowser) return id.iOSScheme;\n if (typeof process !== 'undefined' && process.platform === 'win32') {\n return id.windowsExecutable;\n }\n if (typeof process !== 'undefined' && process.platform === 'darwin') {\n return id.macOSBundleId;\n }\n return undefined;\n }\n\n /**\n * 当前平台下安装路径。仅 Node 桌面端有效;浏览器返回 undefined。\n */\n static getCurrentPlatformPath(\n path: AppInstallationPath,\n ): string | undefined {\n if (isBrowser) return undefined;\n if (typeof process !== 'undefined' && process.platform === 'win32') {\n return path.windows;\n }\n if (typeof process !== 'undefined' && process.platform === 'darwin') {\n return path.macOS;\n }\n return undefined;\n }\n\n /**\n * 当前平台下启动参数数组。浏览器返回 iOS;Node 返回 windows/macOS 命令行参数。\n */\n static getCurrentPlatformArguments(\n args: AppLaunchArguments,\n ): string[] {\n if (isBrowser) return args.iOS;\n if (typeof process !== 'undefined' && process.platform === 'win32') {\n return args.windows;\n }\n if (typeof process !== 'undefined' && process.platform === 'darwin') {\n return args.macOS;\n }\n return [];\n }\n}\n\n"]}
@@ -0,0 +1,47 @@
1
+ const isBrowser = typeof window !== "undefined" && typeof window.document !== "undefined";
2
+ class AppLaunchModelsExtension {
3
+ /**
4
+ * 当前平台下应用标识(可执行名/Bundle ID/Scheme/包名)。
5
+ * 浏览器视为 Web,返回 iOSScheme;Node 按 process.platform 返回对应字段。
6
+ */
7
+ static getCurrentPlatformIdentifier(id) {
8
+ if (isBrowser) return id.iOSScheme;
9
+ if (typeof process !== "undefined" && process.platform === "win32") {
10
+ return id.windowsExecutable;
11
+ }
12
+ if (typeof process !== "undefined" && process.platform === "darwin") {
13
+ return id.macOSBundleId;
14
+ }
15
+ return void 0;
16
+ }
17
+ /**
18
+ * 当前平台下安装路径。仅 Node 桌面端有效;浏览器返回 undefined。
19
+ */
20
+ static getCurrentPlatformPath(path) {
21
+ if (isBrowser) return void 0;
22
+ if (typeof process !== "undefined" && process.platform === "win32") {
23
+ return path.windows;
24
+ }
25
+ if (typeof process !== "undefined" && process.platform === "darwin") {
26
+ return path.macOS;
27
+ }
28
+ return void 0;
29
+ }
30
+ /**
31
+ * 当前平台下启动参数数组。浏览器返回 iOS;Node 返回 windows/macOS 命令行参数。
32
+ */
33
+ static getCurrentPlatformArguments(args) {
34
+ if (isBrowser) return args.iOS;
35
+ if (typeof process !== "undefined" && process.platform === "win32") {
36
+ return args.windows;
37
+ }
38
+ if (typeof process !== "undefined" && process.platform === "darwin") {
39
+ return args.macOS;
40
+ }
41
+ return [];
42
+ }
43
+ }
44
+
45
+ export { AppLaunchModelsExtension };
46
+ //# sourceMappingURL=app_launch_models_extension.mjs.map
47
+ //# sourceMappingURL=app_launch_models_extension.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/moonbridge-ipc/general/app_launch/model/app_launch_models_extension.ts"],"names":[],"mappings":"AAQA,MAAM,YACJ,OAAO,MAAA,KAAW,WAAA,IAAe,OAAO,OAAO,QAAA,KAAa,WAAA;AAKvD,MAAM,wBAAA,CAAyB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKpC,OAAO,6BACL,EAAA,EACoB;AACpB,IAAA,IAAI,SAAA,SAAkB,EAAA,CAAG,SAAA;AACzB,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,OAAA,EAAS;AAClE,MAAA,OAAO,EAAA,CAAG,iBAAA;AAAA,IACZ;AACA,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,QAAA,EAAU;AACnE,MAAA,OAAO,EAAA,CAAG,aAAA;AAAA,IACZ;AACA,IAAA,OAAO,MAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,uBACL,IAAA,EACoB;AACpB,IAAA,IAAI,WAAW,OAAO,MAAA;AACtB,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,OAAA,EAAS;AAClE,MAAA,OAAO,IAAA,CAAK,OAAA;AAAA,IACd;AACA,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,QAAA,EAAU;AACnE,MAAA,OAAO,IAAA,CAAK,KAAA;AAAA,IACd;AACA,IAAA,OAAO,MAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,4BACL,IAAA,EACU;AACV,IAAA,IAAI,SAAA,SAAkB,IAAA,CAAK,GAAA;AAC3B,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,OAAA,EAAS;AAClE,MAAA,OAAO,IAAA,CAAK,OAAA;AAAA,IACd;AACA,IAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,aAAa,QAAA,EAAU;AACnE,MAAA,OAAO,IAAA,CAAK,KAAA;AAAA,IACd;AACA,IAAA,OAAO,EAAC;AAAA,EACV;AACF","file":"app_launch_models_extension.mjs","sourcesContent":["/**\n * 基于当前运行环境(typeof window / process.platform)从 AppLaunchIdentifier、AppInstallationPath、AppLaunchArguments 取当前平台对应值。\n * 与 Flutter 平台扩展语义一致。\n */\n\nimport { AppLaunchArguments } from './app_launch_models.js';\nimport { AppInstallationPath, AppLaunchIdentifier } from './app_info.js';\n\nconst isBrowser =\n typeof window !== 'undefined' && typeof window.document !== 'undefined';\n\n/**\n * 基于当前运行环境的模型扩展(013:一级函数收敛为类静态方法)。\n */\nexport class AppLaunchModelsExtension {\n /**\n * 当前平台下应用标识(可执行名/Bundle ID/Scheme/包名)。\n * 浏览器视为 Web,返回 iOSScheme;Node 按 process.platform 返回对应字段。\n */\n static getCurrentPlatformIdentifier(\n id: AppLaunchIdentifier,\n ): string | undefined {\n if (isBrowser) return id.iOSScheme;\n if (typeof process !== 'undefined' && process.platform === 'win32') {\n return id.windowsExecutable;\n }\n if (typeof process !== 'undefined' && process.platform === 'darwin') {\n return id.macOSBundleId;\n }\n return undefined;\n }\n\n /**\n * 当前平台下安装路径。仅 Node 桌面端有效;浏览器返回 undefined。\n */\n static getCurrentPlatformPath(\n path: AppInstallationPath,\n ): string | undefined {\n if (isBrowser) return undefined;\n if (typeof process !== 'undefined' && process.platform === 'win32') {\n return path.windows;\n }\n if (typeof process !== 'undefined' && process.platform === 'darwin') {\n return path.macOS;\n }\n return undefined;\n }\n\n /**\n * 当前平台下启动参数数组。浏览器返回 iOS;Node 返回 windows/macOS 命令行参数。\n */\n static getCurrentPlatformArguments(\n args: AppLaunchArguments,\n ): string[] {\n if (isBrowser) return args.iOS;\n if (typeof process !== 'undefined' && process.platform === 'win32') {\n return args.windows;\n }\n if (typeof process !== 'undefined' && process.platform === 'darwin') {\n return args.macOS;\n }\n return [];\n }\n}\n\n"]}
@@ -0,0 +1,46 @@
1
+ import { AppLaunchIdentifier, AppInstallationPath } from './model/app_info.mjs';
2
+ import { AppLaunchArguments, AppLaunchResult } from './model/app_launch_models.mjs';
3
+
4
+ /**
5
+ * 平台应用启动器接口与工厂,与 Flutter PlatformAppLauncher 行为对齐。
6
+ * 与 contracts/app_launch_api.md 一致。
7
+ * 平台分派:浏览器且存在 iOSScheme → BrowserPlatformAppLauncher;
8
+ * Node (win32/darwin) 且存在当前平台安装路径 → NodePlatformAppLauncher;否则 → StubPlatformAppLauncher。
9
+ */
10
+
11
+ /** launchApp 可选参数,与 Flutter 语义一致 */
12
+ interface LaunchAppOptions {
13
+ /** 应用启动标识对应的启动参数 */
14
+ argumentsForIdentifier?: AppLaunchArguments;
15
+ /** 应用安装路径对应的启动参数 */
16
+ argumentsForInstallationPath?: AppLaunchArguments;
17
+ /** 状态检查间隔(秒),默认 0.3 */
18
+ statusCheckInterval?: number;
19
+ /** 操作超时(秒),默认 3.0 */
20
+ operationTimeout?: number;
21
+ }
22
+ /**
23
+ * 平台应用启动器:按标识符或安装路径启动应用,并支持进程/运行状态检测。
24
+ */
25
+ interface PlatformAppLauncher {
26
+ launchApp(options?: LaunchAppOptions): Promise<AppLaunchResult>;
27
+ isAppRunning(): Promise<boolean>;
28
+ }
29
+ /**
30
+ * 平台启动器工厂(013:一级函数收敛为类静态方法)。
31
+ * 根据当前运行环境返回平台启动器实例。
32
+ */
33
+ declare class PlatformAppLauncherFactory {
34
+ /**
35
+ * 根据当前运行环境返回平台启动器实例。
36
+ * 浏览器且 appIdentifier 含 iOSScheme 时返回 BrowserPlatformAppLauncher;
37
+ * Node 且 (win32/darwin) 且 appInstallationPath 含当前平台路径时返回 NodePlatformAppLauncher;
38
+ * 否则返回 Stub。
39
+ */
40
+ static create({ appIdentifier, appInstallationPath, }: {
41
+ appIdentifier?: AppLaunchIdentifier;
42
+ appInstallationPath?: AppInstallationPath;
43
+ }): PlatformAppLauncher;
44
+ }
45
+
46
+ export { type LaunchAppOptions, type PlatformAppLauncher, PlatformAppLauncherFactory };
@@ -0,0 +1,44 @@
1
+ /**
2
+ * 平台应用启动器接口与工厂,与 Flutter PlatformAppLauncher 行为对齐。
3
+ * 与 contracts/app_launch_api.md 一致。
4
+ * 平台分派:浏览器且存在 iOSScheme → BrowserPlatformAppLauncher;
5
+ * Node (win32/darwin) 且存在当前平台安装路径 → NodePlatformAppLauncher;否则 → StubPlatformAppLauncher。
6
+ */
7
+ import { AppInstallationPath } from './model/app_info.js';
8
+ import { AppLaunchArguments, AppLaunchResult } from './model/app_launch_models.js';
9
+ import { AppLaunchIdentifier } from './model/app_info.js';
10
+ /** launchApp 可选参数,与 Flutter 语义一致 */
11
+ export interface LaunchAppOptions {
12
+ /** 应用启动标识对应的启动参数 */
13
+ argumentsForIdentifier?: AppLaunchArguments;
14
+ /** 应用安装路径对应的启动参数 */
15
+ argumentsForInstallationPath?: AppLaunchArguments;
16
+ /** 状态检查间隔(秒),默认 0.3 */
17
+ statusCheckInterval?: number;
18
+ /** 操作超时(秒),默认 3.0 */
19
+ operationTimeout?: number;
20
+ }
21
+ /**
22
+ * 平台应用启动器:按标识符或安装路径启动应用,并支持进程/运行状态检测。
23
+ */
24
+ export interface PlatformAppLauncher {
25
+ launchApp(options?: LaunchAppOptions): Promise<AppLaunchResult>;
26
+ isAppRunning(): Promise<boolean>;
27
+ }
28
+ /**
29
+ * 平台启动器工厂(013:一级函数收敛为类静态方法)。
30
+ * 根据当前运行环境返回平台启动器实例。
31
+ */
32
+ export declare class PlatformAppLauncherFactory {
33
+ /**
34
+ * 根据当前运行环境返回平台启动器实例。
35
+ * 浏览器且 appIdentifier 含 iOSScheme 时返回 BrowserPlatformAppLauncher;
36
+ * Node 且 (win32/darwin) 且 appInstallationPath 含当前平台路径时返回 NodePlatformAppLauncher;
37
+ * 否则返回 Stub。
38
+ */
39
+ static create({ appIdentifier, appInstallationPath, }: {
40
+ appIdentifier?: AppLaunchIdentifier;
41
+ appInstallationPath?: AppInstallationPath;
42
+ }): PlatformAppLauncher;
43
+ }
44
+ //# sourceMappingURL=platform_app_launcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform_app_launcher.d.ts","sourceRoot":"","sources":["../../../../src/moonbridge-ipc/general/app_launch/platform_app_launcher.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAO1D,oCAAoC;AACpC,MAAM,WAAW,gBAAgB;IAC/B,oBAAoB;IACpB,sBAAsB,CAAC,EAAE,kBAAkB,CAAC;IAC5C,oBAAoB;IACpB,4BAA4B,CAAC,EAAE,kBAAkB,CAAC;IAClD,uBAAuB;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAChE,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAClC;AAwBD;;;GAGG;AACH,qBAAa,0BAA0B;IACrC;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,EACZ,aAAa,EACb,mBAAmB,GACpB,EAAE;QACD,aAAa,CAAC,EAAE,mBAAmB,CAAC;QACpC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;KAC3C,GAAG,mBAAmB;CAaxB"}
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ var app_info_js = require('./model/app_info.js');
4
+ var real_platform_app_launcher_js = require('./internal/real_platform_app_launcher.js');
5
+
6
+ const isBrowser = typeof window !== "undefined" && typeof window.document !== "undefined";
7
+ const NODE_PLATFORMS = [
8
+ "aix",
9
+ "android",
10
+ "darwin",
11
+ "freebsd",
12
+ "haiku",
13
+ "linux",
14
+ "openbsd",
15
+ "sunos",
16
+ "win32",
17
+ "cygwin",
18
+ "netbsd"
19
+ ];
20
+ const isNode = typeof process !== "undefined" && typeof process.platform === "string" && NODE_PLATFORMS.includes(process.platform);
21
+ class PlatformAppLauncherFactory {
22
+ /**
23
+ * 根据当前运行环境返回平台启动器实例。
24
+ * 浏览器且 appIdentifier 含 iOSScheme 时返回 BrowserPlatformAppLauncher;
25
+ * Node 且 (win32/darwin) 且 appInstallationPath 含当前平台路径时返回 NodePlatformAppLauncher;
26
+ * 否则返回 Stub。
27
+ */
28
+ static create({
29
+ appIdentifier,
30
+ appInstallationPath
31
+ }) {
32
+ if (!appIdentifier && !appInstallationPath) {
33
+ throw new Error("appIdentifier \u6216 appInstallationPath \u4E0D\u80FD\u4E3A\u7A7A");
34
+ }
35
+ if (isBrowser) {
36
+ return new real_platform_app_launcher_js.BrowserPlatformAppLauncher(appIdentifier != null ? appIdentifier : new app_info_js.AppLaunchIdentifier({}));
37
+ } else if (isNode) {
38
+ return new real_platform_app_launcher_js.NodePlatformAppLauncher(appInstallationPath != null ? appInstallationPath : new app_info_js.AppInstallationPath({}));
39
+ } else {
40
+ return new real_platform_app_launcher_js.StubPlatformAppLauncher();
41
+ }
42
+ }
43
+ }
44
+
45
+ exports.PlatformAppLauncherFactory = PlatformAppLauncherFactory;
46
+ //# sourceMappingURL=platform_app_launcher.js.map
47
+ //# sourceMappingURL=platform_app_launcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/moonbridge-ipc/general/app_launch/platform_app_launcher.ts"],"names":["BrowserPlatformAppLauncher","AppLaunchIdentifier","NodePlatformAppLauncher","AppInstallationPath","StubPlatformAppLauncher"],"mappings":";;;;;AAuCA,MAAM,YACJ,OAAO,MAAA,KAAW,WAAA,IAAe,OAAO,OAAO,QAAA,KAAa,WAAA;AAK9D,MAAM,cAAA,GAA6C;AAAA,EACjD,KAAA;AAAA,EAAO,SAAA;AAAA,EAAW,QAAA;AAAA,EAAU,SAAA;AAAA,EAAW,OAAA;AAAA,EAAS,OAAA;AAAA,EAChD,SAAA;AAAA,EAAW,OAAA;AAAA,EAAS,OAAA;AAAA,EAAS,QAAA;AAAA,EAAU;AACzC,CAAA;AAKA,MAAM,MAAA,GACJ,OAAO,OAAA,KAAY,WAAA,IACnB,OAAO,OAAA,CAAQ,QAAA,KAAa,QAAA,IAC5B,cAAA,CAAe,QAAA,CAAS,OAAA,CAAQ,QAA2B,CAAA;AAMtD,MAAM,0BAAA,CAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOtC,OAAO,MAAA,CAAO;AAAA,IACZ,aAAA;AAAA,IACA;AAAA,GACF,EAGwB;AACtB,IAAA,IAAI,CAAC,aAAA,IAAiB,CAAC,mBAAA,EAAqB;AAC1C,MAAA,MAAM,IAAI,MAAM,mEAA0C,CAAA;AAAA,IAC5D;AAEA,IAAA,IAAI,SAAA,EAAW;AACb,MAAA,OAAO,IAAIA,wDAAA,CAA2B,aAAA,IAAA,IAAA,GAAA,aAAA,GAAiB,IAAIC,+BAAA,CAAoB,EAAE,CAAC,CAAA;AAAA,IACpF,WAAW,MAAA,EAAQ;AACjB,MAAA,OAAO,IAAIC,qDAAA,CAAwB,mBAAA,IAAA,IAAA,GAAA,mBAAA,GAAuB,IAAIC,+BAAA,CAAoB,EAAE,CAAC,CAAA;AAAA,IACvF,CAAA,MAAO;AACL,MAAA,OAAO,IAAIC,qDAAA,EAAwB;AAAA,IACrC;AAAA,EACF;AACF","file":"platform_app_launcher.js","sourcesContent":["/**\n * 平台应用启动器接口与工厂,与 Flutter PlatformAppLauncher 行为对齐。\n * 与 contracts/app_launch_api.md 一致。\n * 平台分派:浏览器且存在 iOSScheme → BrowserPlatformAppLauncher;\n * Node (win32/darwin) 且存在当前平台安装路径 → NodePlatformAppLauncher;否则 → StubPlatformAppLauncher。\n */\n\nimport { AppInstallationPath } from './model/app_info.js';\nimport { AppLaunchArguments, AppLaunchResult } from './model/app_launch_models.js';\nimport { AppLaunchIdentifier } from './model/app_info.js';\nimport {\n BrowserPlatformAppLauncher,\n NodePlatformAppLauncher,\n StubPlatformAppLauncher,\n} from './internal/real_platform_app_launcher.js';\n\n/** launchApp 可选参数,与 Flutter 语义一致 */\nexport interface LaunchAppOptions {\n /** 应用启动标识对应的启动参数 */\n argumentsForIdentifier?: AppLaunchArguments;\n /** 应用安装路径对应的启动参数 */\n argumentsForInstallationPath?: AppLaunchArguments;\n /** 状态检查间隔(秒),默认 0.3 */\n statusCheckInterval?: number;\n /** 操作超时(秒),默认 3.0 */\n operationTimeout?: number;\n}\n\n/**\n * 平台应用启动器:按标识符或安装路径启动应用,并支持进程/运行状态检测。\n */\nexport interface PlatformAppLauncher {\n launchApp(options?: LaunchAppOptions): Promise<AppLaunchResult>;\n isAppRunning(): Promise<boolean>;\n}\n\n/** \n * 是否为浏览器环境 \n */\nconst isBrowser =\n typeof window !== 'undefined' && typeof window.document !== 'undefined';\n\n/** \n * Node 官方 Platform 集合(@types/node process.d.ts),用于区分 Node 与浏览器等环境 \n */\nconst NODE_PLATFORMS: readonly NodeJS.Platform[] = [\n 'aix', 'android', 'darwin', 'freebsd', 'haiku', 'linux',\n 'openbsd', 'sunos', 'win32', 'cygwin', 'netbsd',\n];\n\n/** \n * 是否为 Node 环境 \n */\nconst isNode =\n typeof process !== 'undefined' &&\n typeof process.platform === 'string' &&\n NODE_PLATFORMS.includes(process.platform as NodeJS.Platform);\n\n/**\n * 平台启动器工厂(013:一级函数收敛为类静态方法)。\n * 根据当前运行环境返回平台启动器实例。\n */\nexport class PlatformAppLauncherFactory {\n /**\n * 根据当前运行环境返回平台启动器实例。\n * 浏览器且 appIdentifier 含 iOSScheme 时返回 BrowserPlatformAppLauncher;\n * Node 且 (win32/darwin) 且 appInstallationPath 含当前平台路径时返回 NodePlatformAppLauncher;\n * 否则返回 Stub。\n */\n static create({\n appIdentifier,\n appInstallationPath,\n }: {\n appIdentifier?: AppLaunchIdentifier;\n appInstallationPath?: AppInstallationPath;\n }): PlatformAppLauncher {\n if (!appIdentifier && !appInstallationPath) {\n throw new Error('appIdentifier 或 appInstallationPath 不能为空');\n }\n\n if (isBrowser) {\n return new BrowserPlatformAppLauncher(appIdentifier ?? new AppLaunchIdentifier({}));\n } else if (isNode) {\n return new NodePlatformAppLauncher(appInstallationPath ?? new AppInstallationPath({}));\n } else {\n return new StubPlatformAppLauncher();\n }\n }\n}\n"]}
@@ -0,0 +1,45 @@
1
+ import { AppLaunchIdentifier, AppInstallationPath } from './model/app_info.js';
2
+ import { BrowserPlatformAppLauncher, NodePlatformAppLauncher, StubPlatformAppLauncher } from './internal/real_platform_app_launcher.js';
3
+
4
+ const isBrowser = typeof window !== "undefined" && typeof window.document !== "undefined";
5
+ const NODE_PLATFORMS = [
6
+ "aix",
7
+ "android",
8
+ "darwin",
9
+ "freebsd",
10
+ "haiku",
11
+ "linux",
12
+ "openbsd",
13
+ "sunos",
14
+ "win32",
15
+ "cygwin",
16
+ "netbsd"
17
+ ];
18
+ const isNode = typeof process !== "undefined" && typeof process.platform === "string" && NODE_PLATFORMS.includes(process.platform);
19
+ class PlatformAppLauncherFactory {
20
+ /**
21
+ * 根据当前运行环境返回平台启动器实例。
22
+ * 浏览器且 appIdentifier 含 iOSScheme 时返回 BrowserPlatformAppLauncher;
23
+ * Node 且 (win32/darwin) 且 appInstallationPath 含当前平台路径时返回 NodePlatformAppLauncher;
24
+ * 否则返回 Stub。
25
+ */
26
+ static create({
27
+ appIdentifier,
28
+ appInstallationPath
29
+ }) {
30
+ if (!appIdentifier && !appInstallationPath) {
31
+ throw new Error("appIdentifier \u6216 appInstallationPath \u4E0D\u80FD\u4E3A\u7A7A");
32
+ }
33
+ if (isBrowser) {
34
+ return new BrowserPlatformAppLauncher(appIdentifier != null ? appIdentifier : new AppLaunchIdentifier({}));
35
+ } else if (isNode) {
36
+ return new NodePlatformAppLauncher(appInstallationPath != null ? appInstallationPath : new AppInstallationPath({}));
37
+ } else {
38
+ return new StubPlatformAppLauncher();
39
+ }
40
+ }
41
+ }
42
+
43
+ export { PlatformAppLauncherFactory };
44
+ //# sourceMappingURL=platform_app_launcher.mjs.map
45
+ //# sourceMappingURL=platform_app_launcher.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/moonbridge-ipc/general/app_launch/platform_app_launcher.ts"],"names":[],"mappings":";;;AAuCA,MAAM,YACJ,OAAO,MAAA,KAAW,WAAA,IAAe,OAAO,OAAO,QAAA,KAAa,WAAA;AAK9D,MAAM,cAAA,GAA6C;AAAA,EACjD,KAAA;AAAA,EAAO,SAAA;AAAA,EAAW,QAAA;AAAA,EAAU,SAAA;AAAA,EAAW,OAAA;AAAA,EAAS,OAAA;AAAA,EAChD,SAAA;AAAA,EAAW,OAAA;AAAA,EAAS,OAAA;AAAA,EAAS,QAAA;AAAA,EAAU;AACzC,CAAA;AAKA,MAAM,MAAA,GACJ,OAAO,OAAA,KAAY,WAAA,IACnB,OAAO,OAAA,CAAQ,QAAA,KAAa,QAAA,IAC5B,cAAA,CAAe,QAAA,CAAS,OAAA,CAAQ,QAA2B,CAAA;AAMtD,MAAM,0BAAA,CAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOtC,OAAO,MAAA,CAAO;AAAA,IACZ,aAAA;AAAA,IACA;AAAA,GACF,EAGwB;AACtB,IAAA,IAAI,CAAC,aAAA,IAAiB,CAAC,mBAAA,EAAqB;AAC1C,MAAA,MAAM,IAAI,MAAM,mEAA0C,CAAA;AAAA,IAC5D;AAEA,IAAA,IAAI,SAAA,EAAW;AACb,MAAA,OAAO,IAAI,0BAAA,CAA2B,aAAA,IAAA,IAAA,GAAA,aAAA,GAAiB,IAAI,mBAAA,CAAoB,EAAE,CAAC,CAAA;AAAA,IACpF,WAAW,MAAA,EAAQ;AACjB,MAAA,OAAO,IAAI,uBAAA,CAAwB,mBAAA,IAAA,IAAA,GAAA,mBAAA,GAAuB,IAAI,mBAAA,CAAoB,EAAE,CAAC,CAAA;AAAA,IACvF,CAAA,MAAO;AACL,MAAA,OAAO,IAAI,uBAAA,EAAwB;AAAA,IACrC;AAAA,EACF;AACF","file":"platform_app_launcher.mjs","sourcesContent":["/**\n * 平台应用启动器接口与工厂,与 Flutter PlatformAppLauncher 行为对齐。\n * 与 contracts/app_launch_api.md 一致。\n * 平台分派:浏览器且存在 iOSScheme → BrowserPlatformAppLauncher;\n * Node (win32/darwin) 且存在当前平台安装路径 → NodePlatformAppLauncher;否则 → StubPlatformAppLauncher。\n */\n\nimport { AppInstallationPath } from './model/app_info.js';\nimport { AppLaunchArguments, AppLaunchResult } from './model/app_launch_models.js';\nimport { AppLaunchIdentifier } from './model/app_info.js';\nimport {\n BrowserPlatformAppLauncher,\n NodePlatformAppLauncher,\n StubPlatformAppLauncher,\n} from './internal/real_platform_app_launcher.js';\n\n/** launchApp 可选参数,与 Flutter 语义一致 */\nexport interface LaunchAppOptions {\n /** 应用启动标识对应的启动参数 */\n argumentsForIdentifier?: AppLaunchArguments;\n /** 应用安装路径对应的启动参数 */\n argumentsForInstallationPath?: AppLaunchArguments;\n /** 状态检查间隔(秒),默认 0.3 */\n statusCheckInterval?: number;\n /** 操作超时(秒),默认 3.0 */\n operationTimeout?: number;\n}\n\n/**\n * 平台应用启动器:按标识符或安装路径启动应用,并支持进程/运行状态检测。\n */\nexport interface PlatformAppLauncher {\n launchApp(options?: LaunchAppOptions): Promise<AppLaunchResult>;\n isAppRunning(): Promise<boolean>;\n}\n\n/** \n * 是否为浏览器环境 \n */\nconst isBrowser =\n typeof window !== 'undefined' && typeof window.document !== 'undefined';\n\n/** \n * Node 官方 Platform 集合(@types/node process.d.ts),用于区分 Node 与浏览器等环境 \n */\nconst NODE_PLATFORMS: readonly NodeJS.Platform[] = [\n 'aix', 'android', 'darwin', 'freebsd', 'haiku', 'linux',\n 'openbsd', 'sunos', 'win32', 'cygwin', 'netbsd',\n];\n\n/** \n * 是否为 Node 环境 \n */\nconst isNode =\n typeof process !== 'undefined' &&\n typeof process.platform === 'string' &&\n NODE_PLATFORMS.includes(process.platform as NodeJS.Platform);\n\n/**\n * 平台启动器工厂(013:一级函数收敛为类静态方法)。\n * 根据当前运行环境返回平台启动器实例。\n */\nexport class PlatformAppLauncherFactory {\n /**\n * 根据当前运行环境返回平台启动器实例。\n * 浏览器且 appIdentifier 含 iOSScheme 时返回 BrowserPlatformAppLauncher;\n * Node 且 (win32/darwin) 且 appInstallationPath 含当前平台路径时返回 NodePlatformAppLauncher;\n * 否则返回 Stub。\n */\n static create({\n appIdentifier,\n appInstallationPath,\n }: {\n appIdentifier?: AppLaunchIdentifier;\n appInstallationPath?: AppInstallationPath;\n }): PlatformAppLauncher {\n if (!appIdentifier && !appInstallationPath) {\n throw new Error('appIdentifier 或 appInstallationPath 不能为空');\n }\n\n if (isBrowser) {\n return new BrowserPlatformAppLauncher(appIdentifier ?? new AppLaunchIdentifier({}));\n } else if (isNode) {\n return new NodePlatformAppLauncher(appInstallationPath ?? new AppInstallationPath({}));\n } else {\n return new StubPlatformAppLauncher();\n }\n }\n}\n"]}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * 端口候选规则,对应 Flutter lib/general/config/port_candidate_rule.dart。
3
+ * 生成确定性有序端口列表,服务端按序 try-bind,客户端按序 try-connect。
4
+ */
5
+ declare const maxAttemptsCap = 128;
6
+ /**
7
+ * 端口候选规则
8
+ */
9
+ declare class PortCandidateRule {
10
+ private readonly _preferredPort;
11
+ private readonly _step;
12
+ private readonly _maxAttempts;
13
+ private readonly _ports;
14
+ private constructor();
15
+ /**
16
+ * 策略一:首选端口 + 步长。生成 [preferredPort, preferredPort+step, ...],长度不超过 maxAttempts。
17
+ * @param preferredPort 首选端口
18
+ * @param options 选项
19
+ * @returns 端口候选规则
20
+ */
21
+ static preferred(preferredPort: number, options?: {
22
+ step?: number;
23
+ maxAttempts?: number;
24
+ }): PortCandidateRule;
25
+ /**
26
+ * 策略二:显式端口列表。按 ports 顺序使用,截断至 maxAttempts 并过滤非法端口。
27
+ * @param ports 端口列表
28
+ * @param options 选项
29
+ * @returns 端口候选规则
30
+ */
31
+ static explicit(ports: number[], options?: {
32
+ maxAttempts?: number;
33
+ }): PortCandidateRule;
34
+ /**
35
+ * 生成有序端口列表,每项 1..65535,长度不超过 maxAttempts。
36
+ * @returns 有序端口列表
37
+ */
38
+ toOrderedPortList(): number[];
39
+ }
40
+
41
+ export { PortCandidateRule, maxAttemptsCap };
@@ -0,0 +1,40 @@
1
+ /**
2
+ * 端口候选规则,对应 Flutter lib/general/config/port_candidate_rule.dart。
3
+ * 生成确定性有序端口列表,服务端按序 try-bind,客户端按序 try-connect。
4
+ */
5
+ export declare const maxAttemptsCap = 128;
6
+ /**
7
+ * 端口候选规则
8
+ */
9
+ export declare class PortCandidateRule {
10
+ private readonly _preferredPort;
11
+ private readonly _step;
12
+ private readonly _maxAttempts;
13
+ private readonly _ports;
14
+ private constructor();
15
+ /**
16
+ * 策略一:首选端口 + 步长。生成 [preferredPort, preferredPort+step, ...],长度不超过 maxAttempts。
17
+ * @param preferredPort 首选端口
18
+ * @param options 选项
19
+ * @returns 端口候选规则
20
+ */
21
+ static preferred(preferredPort: number, options?: {
22
+ step?: number;
23
+ maxAttempts?: number;
24
+ }): PortCandidateRule;
25
+ /**
26
+ * 策略二:显式端口列表。按 ports 顺序使用,截断至 maxAttempts 并过滤非法端口。
27
+ * @param ports 端口列表
28
+ * @param options 选项
29
+ * @returns 端口候选规则
30
+ */
31
+ static explicit(ports: number[], options?: {
32
+ maxAttempts?: number;
33
+ }): PortCandidateRule;
34
+ /**
35
+ * 生成有序端口列表,每项 1..65535,长度不超过 maxAttempts。
36
+ * @returns 有序端口列表
37
+ */
38
+ toOrderedPortList(): number[];
39
+ }
40
+ //# sourceMappingURL=port_candidate_rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"port_candidate_rule.d.ts","sourceRoot":"","sources":["../../../../src/moonbridge-ipc/general/config/port_candidate_rule.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuB;IAE9C,OAAO;IAYP;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CACd,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACpD,iBAAiB;IASpB;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,iBAAiB;IAO3F;;;OAGG;IACH,iBAAiB,IAAI,MAAM,EAAE;CAiB9B"}
@@ -0,0 +1,65 @@
1
+ 'use strict';
2
+
3
+ const maxAttemptsCap = 128;
4
+ class PortCandidateRule {
5
+ constructor(preferredPort, step, maxAttempts, ports) {
6
+ this._preferredPort = preferredPort;
7
+ this._step = step;
8
+ this._maxAttempts = maxAttempts;
9
+ this._ports = ports;
10
+ }
11
+ /**
12
+ * 策略一:首选端口 + 步长。生成 [preferredPort, preferredPort+step, ...],长度不超过 maxAttempts。
13
+ * @param preferredPort 首选端口
14
+ * @param options 选项
15
+ * @returns 端口候选规则
16
+ */
17
+ static preferred(preferredPort, options = {}) {
18
+ var _a, _b;
19
+ const step = (_a = options.step) != null ? _a : 1;
20
+ const maxAttempts = (_b = options.maxAttempts) != null ? _b : 32;
21
+ if (preferredPort < 1 || preferredPort > 65535) throw new Error("preferredPort must be in 1..65535");
22
+ if (step < 1) throw new Error("step must be >= 1");
23
+ if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);
24
+ return new PortCandidateRule(preferredPort, step, maxAttempts, void 0);
25
+ }
26
+ /**
27
+ * 策略二:显式端口列表。按 ports 顺序使用,截断至 maxAttempts 并过滤非法端口。
28
+ * @param ports 端口列表
29
+ * @param options 选项
30
+ * @returns 端口候选规则
31
+ */
32
+ static explicit(ports, options = {}) {
33
+ var _a;
34
+ const maxAttempts = (_a = options.maxAttempts) != null ? _a : 32;
35
+ if (ports.length === 0) throw new Error("ports must not be empty");
36
+ if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);
37
+ return new PortCandidateRule(0, 1, maxAttempts, [...ports]);
38
+ }
39
+ /**
40
+ * 生成有序端口列表,每项 1..65535,长度不超过 maxAttempts。
41
+ * @returns 有序端口列表
42
+ */
43
+ toOrderedPortList() {
44
+ if (this._ports != null && this._ports.length > 0) {
45
+ const list2 = [];
46
+ for (const p of this._ports) {
47
+ if (list2.length >= this._maxAttempts) break;
48
+ if (p >= 1 && p <= 65535) list2.push(p);
49
+ }
50
+ return list2;
51
+ }
52
+ const list = [];
53
+ for (let i = 0; i < this._maxAttempts; i++) {
54
+ const p = this._preferredPort + i * this._step;
55
+ if (p > 65535) break;
56
+ if (p >= 1) list.push(p);
57
+ }
58
+ return list;
59
+ }
60
+ }
61
+
62
+ exports.PortCandidateRule = PortCandidateRule;
63
+ exports.maxAttemptsCap = maxAttemptsCap;
64
+ //# sourceMappingURL=port_candidate_rule.js.map
65
+ //# sourceMappingURL=port_candidate_rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/moonbridge-ipc/general/config/port_candidate_rule.ts"],"names":["list"],"mappings":"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","file":"port_candidate_rule.js","sourcesContent":["/**\n * 端口候选规则,对应 Flutter lib/general/config/port_candidate_rule.dart。\n * 生成确定性有序端口列表,服务端按序 try-bind,客户端按序 try-connect。\n */\n\nexport const maxAttemptsCap = 128;\n\n/**\n * 端口候选规则\n */\nexport class PortCandidateRule {\n private readonly _preferredPort: number;\n private readonly _step: number;\n private readonly _maxAttempts: number;\n private readonly _ports: number[] | undefined;\n\n private constructor(\n preferredPort: number,\n step: number,\n maxAttempts: number,\n ports: number[] | undefined,\n ) {\n this._preferredPort = preferredPort;\n this._step = step;\n this._maxAttempts = maxAttempts;\n this._ports = ports;\n }\n\n /** \n * 策略一:首选端口 + 步长。生成 [preferredPort, preferredPort+step, ...],长度不超过 maxAttempts。\n * @param preferredPort 首选端口\n * @param options 选项\n * @returns 端口候选规则\n */\n static preferred(\n preferredPort: number,\n options: { step?: number; maxAttempts?: number } = {},\n ): PortCandidateRule {\n const step = options.step ?? 1;\n const maxAttempts = options.maxAttempts ?? 32;\n if (preferredPort < 1 || preferredPort > 65535) throw new Error('preferredPort must be in 1..65535');\n if (step < 1) throw new Error('step must be >= 1');\n if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);\n return new PortCandidateRule(preferredPort, step, maxAttempts, undefined);\n }\n\n /** \n * 策略二:显式端口列表。按 ports 顺序使用,截断至 maxAttempts 并过滤非法端口。\n * @param ports 端口列表\n * @param options 选项\n * @returns 端口候选规则\n */\n static explicit(ports: number[], options: { maxAttempts?: number } = {}): PortCandidateRule {\n const maxAttempts = options.maxAttempts ?? 32;\n if (ports.length === 0) throw new Error('ports must not be empty');\n if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);\n return new PortCandidateRule(0, 1, maxAttempts, [...ports]);\n }\n\n /** \n * 生成有序端口列表,每项 1..65535,长度不超过 maxAttempts。\n * @returns 有序端口列表\n */\n toOrderedPortList(): number[] {\n if (this._ports != null && this._ports.length > 0) {\n const list: number[] = [];\n for (const p of this._ports) {\n if (list.length >= this._maxAttempts) break;\n if (p >= 1 && p <= 65535) list.push(p);\n }\n return list;\n }\n const list: number[] = [];\n for (let i = 0; i < this._maxAttempts; i++) {\n const p = this._preferredPort + i * this._step;\n if (p > 65535) break;\n if (p >= 1) list.push(p);\n }\n return list;\n }\n}\n"]}
@@ -0,0 +1,62 @@
1
+ const maxAttemptsCap = 128;
2
+ class PortCandidateRule {
3
+ constructor(preferredPort, step, maxAttempts, ports) {
4
+ this._preferredPort = preferredPort;
5
+ this._step = step;
6
+ this._maxAttempts = maxAttempts;
7
+ this._ports = ports;
8
+ }
9
+ /**
10
+ * 策略一:首选端口 + 步长。生成 [preferredPort, preferredPort+step, ...],长度不超过 maxAttempts。
11
+ * @param preferredPort 首选端口
12
+ * @param options 选项
13
+ * @returns 端口候选规则
14
+ */
15
+ static preferred(preferredPort, options = {}) {
16
+ var _a, _b;
17
+ const step = (_a = options.step) != null ? _a : 1;
18
+ const maxAttempts = (_b = options.maxAttempts) != null ? _b : 32;
19
+ if (preferredPort < 1 || preferredPort > 65535) throw new Error("preferredPort must be in 1..65535");
20
+ if (step < 1) throw new Error("step must be >= 1");
21
+ if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);
22
+ return new PortCandidateRule(preferredPort, step, maxAttempts, void 0);
23
+ }
24
+ /**
25
+ * 策略二:显式端口列表。按 ports 顺序使用,截断至 maxAttempts 并过滤非法端口。
26
+ * @param ports 端口列表
27
+ * @param options 选项
28
+ * @returns 端口候选规则
29
+ */
30
+ static explicit(ports, options = {}) {
31
+ var _a;
32
+ const maxAttempts = (_a = options.maxAttempts) != null ? _a : 32;
33
+ if (ports.length === 0) throw new Error("ports must not be empty");
34
+ if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);
35
+ return new PortCandidateRule(0, 1, maxAttempts, [...ports]);
36
+ }
37
+ /**
38
+ * 生成有序端口列表,每项 1..65535,长度不超过 maxAttempts。
39
+ * @returns 有序端口列表
40
+ */
41
+ toOrderedPortList() {
42
+ if (this._ports != null && this._ports.length > 0) {
43
+ const list2 = [];
44
+ for (const p of this._ports) {
45
+ if (list2.length >= this._maxAttempts) break;
46
+ if (p >= 1 && p <= 65535) list2.push(p);
47
+ }
48
+ return list2;
49
+ }
50
+ const list = [];
51
+ for (let i = 0; i < this._maxAttempts; i++) {
52
+ const p = this._preferredPort + i * this._step;
53
+ if (p > 65535) break;
54
+ if (p >= 1) list.push(p);
55
+ }
56
+ return list;
57
+ }
58
+ }
59
+
60
+ export { PortCandidateRule, maxAttemptsCap };
61
+ //# sourceMappingURL=port_candidate_rule.mjs.map
62
+ //# sourceMappingURL=port_candidate_rule.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/moonbridge-ipc/general/config/port_candidate_rule.ts"],"names":["list"],"mappings":"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","file":"port_candidate_rule.mjs","sourcesContent":["/**\n * 端口候选规则,对应 Flutter lib/general/config/port_candidate_rule.dart。\n * 生成确定性有序端口列表,服务端按序 try-bind,客户端按序 try-connect。\n */\n\nexport const maxAttemptsCap = 128;\n\n/**\n * 端口候选规则\n */\nexport class PortCandidateRule {\n private readonly _preferredPort: number;\n private readonly _step: number;\n private readonly _maxAttempts: number;\n private readonly _ports: number[] | undefined;\n\n private constructor(\n preferredPort: number,\n step: number,\n maxAttempts: number,\n ports: number[] | undefined,\n ) {\n this._preferredPort = preferredPort;\n this._step = step;\n this._maxAttempts = maxAttempts;\n this._ports = ports;\n }\n\n /** \n * 策略一:首选端口 + 步长。生成 [preferredPort, preferredPort+step, ...],长度不超过 maxAttempts。\n * @param preferredPort 首选端口\n * @param options 选项\n * @returns 端口候选规则\n */\n static preferred(\n preferredPort: number,\n options: { step?: number; maxAttempts?: number } = {},\n ): PortCandidateRule {\n const step = options.step ?? 1;\n const maxAttempts = options.maxAttempts ?? 32;\n if (preferredPort < 1 || preferredPort > 65535) throw new Error('preferredPort must be in 1..65535');\n if (step < 1) throw new Error('step must be >= 1');\n if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);\n return new PortCandidateRule(preferredPort, step, maxAttempts, undefined);\n }\n\n /** \n * 策略二:显式端口列表。按 ports 顺序使用,截断至 maxAttempts 并过滤非法端口。\n * @param ports 端口列表\n * @param options 选项\n * @returns 端口候选规则\n */\n static explicit(ports: number[], options: { maxAttempts?: number } = {}): PortCandidateRule {\n const maxAttempts = options.maxAttempts ?? 32;\n if (ports.length === 0) throw new Error('ports must not be empty');\n if (maxAttempts < 1 || maxAttempts > maxAttemptsCap) throw new Error(`maxAttempts must be in 1..${maxAttemptsCap}`);\n return new PortCandidateRule(0, 1, maxAttempts, [...ports]);\n }\n\n /** \n * 生成有序端口列表,每项 1..65535,长度不超过 maxAttempts。\n * @returns 有序端口列表\n */\n toOrderedPortList(): number[] {\n if (this._ports != null && this._ports.length > 0) {\n const list: number[] = [];\n for (const p of this._ports) {\n if (list.length >= this._maxAttempts) break;\n if (p >= 1 && p <= 65535) list.push(p);\n }\n return list;\n }\n const list: number[] = [];\n for (let i = 0; i < this._maxAttempts; i++) {\n const p = this._preferredPort + i * this._step;\n if (p > 65535) break;\n if (p >= 1) list.push(p);\n }\n return list;\n }\n}\n"]}
@@ -0,0 +1,33 @@
1
+ import { PortCandidateRule } from './port_candidate_rule.mjs';
2
+
3
+ /**
4
+ * WebSocket 服务端端点配置,对应 Flutter lib/general/config/websocket_server_endpoint.dart WebSocketServerEndpoint。
5
+ */
6
+
7
+ /**
8
+ * WebSocket 服务端端点配置
9
+ */
10
+ declare class WebSocketServerEndpoint {
11
+ readonly address: string;
12
+ readonly port: number;
13
+ readonly path: string;
14
+ readonly useTls: boolean;
15
+ readonly portCandidateRule?: PortCandidateRule;
16
+ /**
17
+ * 构造函数
18
+ * @param address 地址
19
+ * @param port 端口
20
+ * @param path 路径
21
+ * @param useTls 是否使用 TLS
22
+ * @param portCandidateRule 端口候选规则
23
+ */
24
+ constructor({ address, port, path, useTls, portCandidateRule, }: {
25
+ address: string;
26
+ port: number;
27
+ path: string;
28
+ useTls: boolean;
29
+ portCandidateRule?: PortCandidateRule;
30
+ });
31
+ }
32
+
33
+ export { WebSocketServerEndpoint };