@start9labs/start-sdk 0.4.0-beta.5 → 0.4.0-beta.51

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 (834) hide show
  1. package/base/lib/Effects.d.ts +35 -39
  2. package/base/lib/actions/index.d.ts +18 -19
  3. package/base/lib/actions/index.js +4 -4
  4. package/base/lib/actions/index.js.map +1 -1
  5. package/base/lib/actions/input/builder/index.d.ts +4 -4
  6. package/base/lib/actions/input/builder/inputSpec.d.ts +33 -31
  7. package/base/lib/actions/input/builder/inputSpec.js +29 -25
  8. package/base/lib/actions/input/builder/inputSpec.js.map +1 -1
  9. package/base/lib/actions/input/builder/inputSpecTools.d.ts +173 -0
  10. package/base/lib/actions/input/builder/inputSpecTools.js +16 -0
  11. package/base/lib/actions/input/builder/inputSpecTools.js.map +1 -0
  12. package/base/lib/actions/input/builder/list.d.ts +18 -29
  13. package/base/lib/actions/input/builder/list.js +28 -39
  14. package/base/lib/actions/input/builder/list.js.map +1 -1
  15. package/base/lib/actions/input/builder/value.d.ts +428 -76
  16. package/base/lib/actions/input/builder/value.js +567 -230
  17. package/base/lib/actions/input/builder/value.js.map +1 -1
  18. package/base/lib/actions/input/builder/variants.d.ts +32 -29
  19. package/base/lib/actions/input/builder/variants.js +26 -25
  20. package/base/lib/actions/input/builder/variants.js.map +1 -1
  21. package/base/lib/actions/input/index.d.ts +3 -3
  22. package/base/lib/actions/input/inputSpecConstants.d.ts +27 -19
  23. package/base/lib/actions/input/inputSpecConstants.js +30 -26
  24. package/base/lib/actions/input/inputSpecConstants.js.map +1 -1
  25. package/base/lib/actions/input/inputSpecTypes.d.ts +24 -23
  26. package/base/lib/actions/input/inputSpecTypes.js +1 -1
  27. package/base/lib/actions/input/inputSpecTypes.js.map +1 -1
  28. package/base/lib/actions/setupActions.d.ts +27 -19
  29. package/base/lib/actions/setupActions.js +42 -7
  30. package/base/lib/actions/setupActions.js.map +1 -1
  31. package/base/lib/dependencies/dependencies.d.ts +8 -4
  32. package/base/lib/dependencies/dependencies.js +41 -32
  33. package/base/lib/dependencies/dependencies.js.map +1 -1
  34. package/base/lib/dependencies/setupDependencies.d.ts +7 -9
  35. package/base/lib/dependencies/setupDependencies.js +3 -10
  36. package/base/lib/dependencies/setupDependencies.js.map +1 -1
  37. package/base/lib/exver/exver.d.ts +5 -5
  38. package/base/lib/exver/exver.js +42 -73
  39. package/base/lib/exver/exver.js.map +1 -1
  40. package/base/lib/exver/index.d.ts +12 -12
  41. package/base/lib/exver/index.js +153 -153
  42. package/base/lib/exver/index.js.map +1 -1
  43. package/base/lib/index.d.ts +11 -10
  44. package/base/lib/index.js +4 -2
  45. package/base/lib/index.js.map +1 -1
  46. package/base/lib/inits/index.d.ts +2 -0
  47. package/base/lib/inits/index.js +19 -0
  48. package/base/lib/inits/index.js.map +1 -0
  49. package/base/lib/inits/setupInit.d.ts +9 -0
  50. package/base/lib/inits/setupInit.js +40 -0
  51. package/base/lib/inits/setupInit.js.map +1 -0
  52. package/base/lib/inits/setupUninit.d.ts +25 -0
  53. package/base/lib/inits/setupUninit.js +24 -0
  54. package/base/lib/inits/setupUninit.js.map +1 -0
  55. package/base/lib/interfaces/Host.d.ts +6 -6
  56. package/base/lib/interfaces/Host.js +28 -18
  57. package/base/lib/interfaces/Host.js.map +1 -1
  58. package/base/lib/interfaces/Origin.d.ts +6 -6
  59. package/base/lib/interfaces/Origin.js +5 -5
  60. package/base/lib/interfaces/Origin.js.map +1 -1
  61. package/base/lib/interfaces/ServiceInterfaceBuilder.d.ts +5 -5
  62. package/base/lib/interfaces/setupExportedUrls.d.ts +7 -0
  63. package/base/lib/interfaces/setupExportedUrls.js +27 -0
  64. package/base/lib/interfaces/setupExportedUrls.js.map +1 -0
  65. package/base/lib/interfaces/setupInterfaces.d.ts +4 -6
  66. package/base/lib/interfaces/setupInterfaces.js +8 -17
  67. package/base/lib/interfaces/setupInterfaces.js.map +1 -1
  68. package/base/lib/osBindings/AcceptSigners.d.ts +1 -1
  69. package/base/lib/osBindings/ActionInput.d.ts +2 -0
  70. package/base/lib/osBindings/ActionInput.js +0 -1
  71. package/base/lib/osBindings/ActionInput.js.map +1 -1
  72. package/base/lib/osBindings/ActionMetadata.d.ts +2 -2
  73. package/base/lib/osBindings/ActionResult.d.ts +4 -4
  74. package/base/lib/osBindings/ActionResultMember.d.ts +2 -2
  75. package/base/lib/osBindings/ActionResultV1.d.ts +1 -1
  76. package/base/lib/osBindings/ActionResultValue.d.ts +3 -3
  77. package/base/lib/osBindings/ActionVisibility.d.ts +2 -2
  78. package/base/lib/osBindings/AddAdminParams.d.ts +1 -1
  79. package/base/lib/osBindings/AddAssetParams.d.ts +2 -2
  80. package/base/lib/osBindings/AddCategoryParams.d.ts +2 -3
  81. package/base/lib/osBindings/AddCategoryParams.js +0 -1
  82. package/base/lib/osBindings/AddCategoryParams.js.map +1 -1
  83. package/base/lib/osBindings/AddMirrorParams.d.ts +7 -0
  84. package/base/lib/osBindings/AddMirrorParams.js +3 -0
  85. package/base/lib/osBindings/AddMirrorParams.js.map +1 -0
  86. package/base/lib/osBindings/AddPackageParams.d.ts +3 -3
  87. package/base/lib/osBindings/AddPackageSignerParams.d.ts +7 -0
  88. package/base/lib/osBindings/AddPackageSignerParams.js +3 -0
  89. package/base/lib/osBindings/AddPackageSignerParams.js.map +1 -0
  90. package/base/lib/osBindings/AddPackageToCategoryParams.d.ts +5 -0
  91. package/base/lib/osBindings/AddPackageToCategoryParams.js +3 -0
  92. package/base/lib/osBindings/AddPackageToCategoryParams.js.map +1 -0
  93. package/base/lib/osBindings/AddPrivateDomainParams.d.ts +5 -0
  94. package/base/lib/osBindings/AddPrivateDomainParams.js +3 -0
  95. package/base/lib/osBindings/AddPrivateDomainParams.js.map +1 -0
  96. package/base/lib/osBindings/AddPublicDomainParams.d.ts +7 -0
  97. package/base/lib/osBindings/AddPublicDomainParams.js +3 -0
  98. package/base/lib/osBindings/AddPublicDomainParams.js.map +1 -0
  99. package/base/lib/osBindings/AddSslOptions.d.ts +2 -1
  100. package/base/lib/osBindings/AddTunnelParams.d.ts +7 -0
  101. package/base/lib/osBindings/AddTunnelParams.js +3 -0
  102. package/base/lib/osBindings/AddTunnelParams.js.map +1 -0
  103. package/base/lib/osBindings/AddressInfo.d.ts +1 -1
  104. package/base/lib/osBindings/Alerts.d.ts +6 -5
  105. package/base/lib/osBindings/Alerts.js +0 -1
  106. package/base/lib/osBindings/Alerts.js.map +1 -1
  107. package/base/lib/osBindings/Algorithm.d.ts +1 -1
  108. package/base/lib/osBindings/AllPackageData.d.ts +2 -2
  109. package/base/lib/osBindings/AllowedStatuses.d.ts +1 -1
  110. package/base/lib/osBindings/AlpnInfo.d.ts +2 -2
  111. package/base/lib/osBindings/ApiState.d.ts +1 -1
  112. package/base/lib/osBindings/AttachParams.d.ts +3 -2
  113. package/base/lib/osBindings/BackupInfo.d.ts +9 -0
  114. package/base/lib/osBindings/{MainStatus.js → BackupInfo.js} +1 -1
  115. package/base/lib/osBindings/BackupInfo.js.map +1 -0
  116. package/base/lib/osBindings/BackupParams.d.ts +9 -0
  117. package/base/lib/osBindings/{DomainConfig.js → BackupParams.js} +1 -1
  118. package/base/lib/osBindings/BackupParams.js.map +1 -0
  119. package/base/lib/osBindings/BackupReport.d.ts +9 -0
  120. package/base/lib/osBindings/BackupReport.js +3 -0
  121. package/base/lib/osBindings/BackupReport.js.map +1 -0
  122. package/base/lib/osBindings/BackupTarget.d.ts +17 -0
  123. package/base/lib/osBindings/BackupTarget.js +3 -0
  124. package/base/lib/osBindings/BackupTarget.js.map +1 -0
  125. package/base/lib/osBindings/BackupTargetFS.d.ts +4 -4
  126. package/base/lib/osBindings/BackupTargetId.d.ts +1 -0
  127. package/base/lib/osBindings/{DependencyKind.js → BackupTargetId.js} +1 -1
  128. package/base/lib/osBindings/BackupTargetId.js.map +1 -0
  129. package/base/lib/osBindings/BindId.d.ts +1 -1
  130. package/base/lib/osBindings/BindInfo.d.ts +4 -2
  131. package/base/lib/osBindings/BindOptions.d.ts +2 -2
  132. package/base/lib/osBindings/BindParams.d.ts +3 -3
  133. package/base/lib/osBindings/BindingGatewaySetEnabledParams.d.ts +6 -0
  134. package/base/lib/osBindings/BindingGatewaySetEnabledParams.js +3 -0
  135. package/base/lib/osBindings/BindingGatewaySetEnabledParams.js.map +1 -0
  136. package/base/lib/osBindings/BindingSetAddressEnabledParams.d.ts +5 -0
  137. package/base/lib/osBindings/BindingSetAddressEnabledParams.js +4 -0
  138. package/base/lib/osBindings/BindingSetAddressEnabledParams.js.map +1 -0
  139. package/base/lib/osBindings/Bindings.d.ts +4 -0
  140. package/base/lib/osBindings/{HostAddress.js → Bindings.js} +1 -1
  141. package/base/lib/osBindings/Bindings.js.map +1 -0
  142. package/base/lib/osBindings/Blake3Commitment.d.ts +1 -1
  143. package/base/lib/osBindings/CancelInstallParams.d.ts +4 -0
  144. package/base/lib/osBindings/CancelInstallParams.js +3 -0
  145. package/base/lib/osBindings/CancelInstallParams.js.map +1 -0
  146. package/base/lib/osBindings/Category.d.ts +2 -3
  147. package/base/lib/osBindings/Celsius.d.ts +4 -1
  148. package/base/lib/osBindings/CheckDependenciesParam.d.ts +1 -1
  149. package/base/lib/osBindings/CheckDependenciesResult.d.ts +8 -8
  150. package/base/lib/osBindings/CheckDnsParams.d.ts +4 -0
  151. package/base/lib/osBindings/{GetStoreParams.js → CheckDnsParams.js} +1 -1
  152. package/base/lib/osBindings/CheckDnsParams.js.map +1 -0
  153. package/base/lib/osBindings/CheckPortParams.d.ts +5 -0
  154. package/base/lib/osBindings/CheckPortParams.js +3 -0
  155. package/base/lib/osBindings/CheckPortParams.js.map +1 -0
  156. package/base/lib/osBindings/CheckPortRes.d.ts +5 -0
  157. package/base/lib/osBindings/{ActionSeverity.js → CheckPortRes.js} +1 -1
  158. package/base/lib/osBindings/CheckPortRes.js.map +1 -0
  159. package/base/lib/osBindings/CifsAddParams.d.ts +6 -0
  160. package/base/lib/osBindings/{SetStoreParams.js → CifsAddParams.js} +1 -1
  161. package/base/lib/osBindings/CifsAddParams.js.map +1 -0
  162. package/base/lib/osBindings/CifsBackupTarget.d.ts +10 -0
  163. package/base/lib/osBindings/CifsBackupTarget.js +3 -0
  164. package/base/lib/osBindings/CifsBackupTarget.js.map +1 -0
  165. package/base/lib/osBindings/CifsRemoveParams.d.ts +4 -0
  166. package/base/lib/osBindings/CifsRemoveParams.js +3 -0
  167. package/base/lib/osBindings/CifsRemoveParams.js.map +1 -0
  168. package/base/lib/osBindings/CifsUpdateParams.d.ts +8 -0
  169. package/base/lib/osBindings/CifsUpdateParams.js +3 -0
  170. package/base/lib/osBindings/CifsUpdateParams.js.map +1 -0
  171. package/base/lib/osBindings/ClearActionsParams.d.ts +1 -1
  172. package/base/lib/osBindings/ClearBindingsParams.d.ts +1 -1
  173. package/base/lib/osBindings/ClearServiceInterfacesParams.d.ts +1 -1
  174. package/base/lib/osBindings/ClearTaskParams.d.ts +7 -0
  175. package/base/lib/osBindings/ClearTaskParams.js +3 -0
  176. package/base/lib/osBindings/ClearTaskParams.js.map +1 -0
  177. package/base/lib/osBindings/{ClearActionRequestsParams.d.ts → ClearTasksParams.d.ts} +1 -1
  178. package/base/lib/osBindings/{UnsetPublicParams.js → ClearTasksParams.js} +1 -1
  179. package/base/lib/osBindings/ClearTasksParams.js.map +1 -0
  180. package/base/lib/osBindings/ControlParams.d.ts +4 -0
  181. package/base/lib/osBindings/{ActionRequest.js → ControlParams.js} +1 -1
  182. package/base/lib/osBindings/ControlParams.js.map +1 -0
  183. package/base/lib/osBindings/CreateSubcontainerFsParams.d.ts +1 -1
  184. package/base/lib/osBindings/CreateTaskParams.d.ts +15 -0
  185. package/base/lib/osBindings/CreateTaskParams.js +3 -0
  186. package/base/lib/osBindings/CreateTaskParams.js.map +1 -0
  187. package/base/lib/osBindings/CurrentDependencies.d.ts +2 -2
  188. package/base/lib/osBindings/CurrentDependencyInfo.d.ts +5 -4
  189. package/base/lib/osBindings/DepInfo.d.ts +4 -4
  190. package/base/lib/osBindings/Dependencies.d.ts +2 -2
  191. package/base/lib/osBindings/DependencyMetadata.d.ts +4 -3
  192. package/base/lib/osBindings/DependencyRequirement.d.ts +4 -4
  193. package/base/lib/osBindings/DerivedAddressInfo.d.ts +15 -0
  194. package/base/lib/osBindings/{ActionRequestEntry.js → DerivedAddressInfo.js} +1 -1
  195. package/base/lib/osBindings/DerivedAddressInfo.js.map +1 -0
  196. package/base/lib/osBindings/Description.d.ts +3 -2
  197. package/base/lib/osBindings/Description.js +0 -1
  198. package/base/lib/osBindings/Description.js.map +1 -1
  199. package/base/lib/osBindings/DesiredStatus.d.ts +11 -0
  200. package/base/lib/osBindings/DesiredStatus.js +3 -0
  201. package/base/lib/osBindings/DesiredStatus.js.map +1 -0
  202. package/base/lib/osBindings/DestroySubcontainerFsParams.d.ts +1 -1
  203. package/base/lib/osBindings/DeviceFilter.d.ts +6 -3
  204. package/base/lib/osBindings/DnsSettings.d.ts +4 -0
  205. package/base/lib/osBindings/DnsSettings.js +4 -0
  206. package/base/lib/osBindings/DnsSettings.js.map +1 -0
  207. package/base/lib/osBindings/DomainSettings.d.ts +4 -0
  208. package/base/lib/osBindings/DomainSettings.js +3 -0
  209. package/base/lib/osBindings/DomainSettings.js.map +1 -0
  210. package/base/lib/osBindings/EditSignerParams.d.ts +3 -3
  211. package/base/lib/osBindings/EffectsRunActionParams.d.ts +7 -0
  212. package/base/lib/osBindings/EffectsRunActionParams.js +3 -0
  213. package/base/lib/osBindings/EffectsRunActionParams.js.map +1 -0
  214. package/base/lib/osBindings/ErrorData.d.ts +5 -0
  215. package/base/lib/osBindings/ErrorData.js +4 -0
  216. package/base/lib/osBindings/ErrorData.js.map +1 -0
  217. package/base/lib/osBindings/EventId.d.ts +4 -0
  218. package/base/lib/osBindings/{ProcedureId.js → EventId.js} +1 -1
  219. package/base/lib/osBindings/EventId.js.map +1 -0
  220. package/base/lib/osBindings/ExportActionParams.d.ts +2 -2
  221. package/base/lib/osBindings/ExportServiceInterfaceParams.d.ts +3 -3
  222. package/base/lib/osBindings/FileType.d.ts +1 -0
  223. package/base/lib/osBindings/FileType.js +4 -0
  224. package/base/lib/osBindings/FileType.js.map +1 -0
  225. package/base/lib/osBindings/ForgetGatewayParams.d.ts +4 -0
  226. package/base/lib/osBindings/ForgetGatewayParams.js +3 -0
  227. package/base/lib/osBindings/ForgetGatewayParams.js.map +1 -0
  228. package/base/lib/osBindings/FullIndex.d.ts +5 -5
  229. package/base/lib/osBindings/FullProgress.d.ts +2 -2
  230. package/base/lib/osBindings/GatewayId.d.ts +1 -0
  231. package/base/lib/osBindings/GatewayId.js +4 -0
  232. package/base/lib/osBindings/GatewayId.js.map +1 -0
  233. package/base/lib/osBindings/GatewayInfo.d.ts +6 -0
  234. package/base/lib/osBindings/GatewayInfo.js +3 -0
  235. package/base/lib/osBindings/GatewayInfo.js.map +1 -0
  236. package/base/lib/osBindings/GatewayType.d.ts +1 -0
  237. package/base/lib/osBindings/GatewayType.js +4 -0
  238. package/base/lib/osBindings/GatewayType.js.map +1 -0
  239. package/base/lib/osBindings/GetActionInputParams.d.ts +3 -2
  240. package/base/lib/osBindings/GetContainerIpParams.d.ts +2 -2
  241. package/base/lib/osBindings/GetHostInfoParams.d.ts +3 -3
  242. package/base/lib/osBindings/GetOsVersionParams.d.ts +3 -3
  243. package/base/lib/osBindings/GetOutboundGatewayParams.d.ts +4 -0
  244. package/base/lib/osBindings/GetOutboundGatewayParams.js +3 -0
  245. package/base/lib/osBindings/GetOutboundGatewayParams.js.map +1 -0
  246. package/base/lib/osBindings/GetPackageParams.d.ts +5 -5
  247. package/base/lib/osBindings/GetPackageResponse.d.ts +3 -3
  248. package/base/lib/osBindings/GetPackageResponseFull.d.ts +2 -2
  249. package/base/lib/osBindings/GetServiceInterfaceParams.d.ts +3 -3
  250. package/base/lib/osBindings/GetServiceManifestParams.d.ts +6 -0
  251. package/base/lib/osBindings/GetServiceManifestParams.js +3 -0
  252. package/base/lib/osBindings/GetServiceManifestParams.js.map +1 -0
  253. package/base/lib/osBindings/GetServicePortForwardParams.d.ts +2 -2
  254. package/base/lib/osBindings/GetSslCertificateParams.d.ts +2 -2
  255. package/base/lib/osBindings/GetSslKeyParams.d.ts +1 -1
  256. package/base/lib/osBindings/GetStatusParams.d.ts +2 -2
  257. package/base/lib/osBindings/GetSystemSmtpParams.d.ts +1 -1
  258. package/base/lib/osBindings/GigaBytes.d.ts +4 -1
  259. package/base/lib/osBindings/HardwareRequirements.d.ts +1 -1
  260. package/base/lib/osBindings/Host.d.ts +11 -12
  261. package/base/lib/osBindings/Hostname.d.ts +1 -0
  262. package/base/lib/osBindings/Hostname.js +4 -0
  263. package/base/lib/osBindings/Hostname.js.map +1 -0
  264. package/base/lib/osBindings/HostnameInfo.d.ts +5 -8
  265. package/base/lib/osBindings/HostnameMetadata.d.ts +26 -0
  266. package/base/lib/osBindings/HostnameMetadata.js +3 -0
  267. package/base/lib/osBindings/HostnameMetadata.js.map +1 -0
  268. package/base/lib/osBindings/Hosts.d.ts +2 -2
  269. package/base/lib/osBindings/IdMap.d.ts +5 -0
  270. package/base/lib/osBindings/IdMap.js +4 -0
  271. package/base/lib/osBindings/IdMap.js.map +1 -0
  272. package/base/lib/osBindings/ImageConfig.d.ts +2 -1
  273. package/base/lib/osBindings/ImageSource.d.ts +2 -2
  274. package/base/lib/osBindings/InfoParams.d.ts +6 -0
  275. package/base/lib/osBindings/InfoParams.js +3 -0
  276. package/base/lib/osBindings/InfoParams.js.map +1 -0
  277. package/base/lib/osBindings/InitAcmeParams.d.ts +5 -0
  278. package/base/lib/osBindings/InitAcmeParams.js +3 -0
  279. package/base/lib/osBindings/InitAcmeParams.js.map +1 -0
  280. package/base/lib/osBindings/InitProgressRes.d.ts +2 -2
  281. package/base/lib/osBindings/InstallParams.d.ts +2 -2
  282. package/base/lib/osBindings/InstalledState.d.ts +1 -1
  283. package/base/lib/osBindings/InstalledVersionParams.d.ts +1 -1
  284. package/base/lib/osBindings/InstallingInfo.d.ts +2 -2
  285. package/base/lib/osBindings/InstallingState.d.ts +1 -1
  286. package/base/lib/osBindings/IpHostname.d.ts +5 -6
  287. package/base/lib/osBindings/IpInfo.d.ts +3 -1
  288. package/base/lib/osBindings/KeyboardOptions.d.ts +7 -0
  289. package/base/lib/osBindings/KeyboardOptions.js +4 -0
  290. package/base/lib/osBindings/KeyboardOptions.js.map +1 -0
  291. package/base/lib/osBindings/KillParams.d.ts +3 -0
  292. package/base/lib/osBindings/KillParams.js +4 -0
  293. package/base/lib/osBindings/KillParams.js.map +1 -0
  294. package/base/lib/osBindings/ListNotificationParams.d.ts +4 -0
  295. package/base/lib/osBindings/{ActionRequestCondition.js → ListNotificationParams.js} +1 -1
  296. package/base/lib/osBindings/ListNotificationParams.js.map +1 -0
  297. package/base/lib/osBindings/ListPackageSignersParams.d.ts +1 -1
  298. package/base/lib/osBindings/ListServiceInterfacesParams.d.ts +2 -2
  299. package/base/lib/osBindings/LocaleString.d.ts +1 -0
  300. package/base/lib/osBindings/LocaleString.js +4 -0
  301. package/base/lib/osBindings/LocaleString.js.map +1 -0
  302. package/base/lib/osBindings/LogEntry.d.ts +5 -0
  303. package/base/lib/osBindings/LogEntry.js +4 -0
  304. package/base/lib/osBindings/LogEntry.js.map +1 -0
  305. package/base/lib/osBindings/LogFollowResponse.d.ts +5 -0
  306. package/base/lib/osBindings/LogFollowResponse.js +3 -0
  307. package/base/lib/osBindings/LogFollowResponse.js.map +1 -0
  308. package/base/lib/osBindings/LogResponse.d.ts +6 -0
  309. package/base/lib/osBindings/LogResponse.js +3 -0
  310. package/base/lib/osBindings/LogResponse.js.map +1 -0
  311. package/base/lib/osBindings/LoginParams.d.ts +1 -2
  312. package/base/lib/osBindings/LoginParams.js +1 -0
  313. package/base/lib/osBindings/LoginParams.js.map +1 -1
  314. package/base/lib/osBindings/LogsParams.d.ts +6 -0
  315. package/base/lib/osBindings/LogsParams.js +4 -0
  316. package/base/lib/osBindings/LogsParams.js.map +1 -0
  317. package/base/lib/osBindings/LshwDevice.d.ts +4 -4
  318. package/base/lib/osBindings/LshwDisplay.d.ts +4 -1
  319. package/base/lib/osBindings/LshwProcessor.d.ts +3 -1
  320. package/base/lib/osBindings/Manifest.d.ts +26 -21
  321. package/base/lib/osBindings/MebiBytes.d.ts +4 -1
  322. package/base/lib/osBindings/MerkleArchiveCommitment.d.ts +1 -1
  323. package/base/lib/osBindings/Metadata.d.ts +6 -0
  324. package/base/lib/osBindings/Metadata.js +3 -0
  325. package/base/lib/osBindings/Metadata.js.map +1 -0
  326. package/base/lib/osBindings/MetadataSrc.d.ts +7 -0
  327. package/base/lib/osBindings/MetadataSrc.js +3 -0
  328. package/base/lib/osBindings/MetadataSrc.js.map +1 -0
  329. package/base/lib/osBindings/Metrics.d.ts +4 -4
  330. package/base/lib/osBindings/MetricsCpu.d.ts +1 -1
  331. package/base/lib/osBindings/MetricsDisk.d.ts +2 -2
  332. package/base/lib/osBindings/MetricsFollowResponse.d.ts +6 -0
  333. package/base/lib/osBindings/MetricsFollowResponse.js +3 -0
  334. package/base/lib/osBindings/MetricsFollowResponse.js.map +1 -0
  335. package/base/lib/osBindings/MetricsGeneral.d.ts +1 -1
  336. package/base/lib/osBindings/MetricsMemory.d.ts +2 -2
  337. package/base/lib/osBindings/ModifyNotificationBeforeParams.d.ts +3 -0
  338. package/base/lib/osBindings/ModifyNotificationBeforeParams.js +4 -0
  339. package/base/lib/osBindings/ModifyNotificationBeforeParams.js.map +1 -0
  340. package/base/lib/osBindings/ModifyNotificationParams.d.ts +3 -0
  341. package/base/lib/osBindings/{BindingSetPublicParams.js → ModifyNotificationParams.js} +1 -1
  342. package/base/lib/osBindings/ModifyNotificationParams.js.map +1 -0
  343. package/base/lib/osBindings/MountParams.d.ts +1 -1
  344. package/base/lib/osBindings/MountTarget.d.ts +4 -2
  345. package/base/lib/osBindings/NamedHealthCheckResult.d.ts +8 -5
  346. package/base/lib/osBindings/NamedProgress.d.ts +1 -1
  347. package/base/lib/osBindings/NetInfo.d.ts +0 -1
  348. package/base/lib/osBindings/NetworkInfo.d.ts +11 -7
  349. package/base/lib/osBindings/NetworkInterfaceInfo.d.ts +5 -3
  350. package/base/lib/osBindings/NetworkInterfaceType.d.ts +1 -1
  351. package/base/lib/osBindings/Notification.d.ts +12 -0
  352. package/base/lib/osBindings/Notification.js +3 -0
  353. package/base/lib/osBindings/Notification.js.map +1 -0
  354. package/base/lib/osBindings/NotificationLevel.d.ts +1 -0
  355. package/base/lib/osBindings/NotificationLevel.js +4 -0
  356. package/base/lib/osBindings/NotificationLevel.js.map +1 -0
  357. package/base/lib/osBindings/NotificationWithId.d.ts +13 -0
  358. package/base/lib/osBindings/NotificationWithId.js +3 -0
  359. package/base/lib/osBindings/NotificationWithId.js.map +1 -0
  360. package/base/lib/osBindings/OsIndex.d.ts +1 -1
  361. package/base/lib/osBindings/OsVersionInfo.d.ts +3 -3
  362. package/base/lib/osBindings/OsVersionInfoMap.d.ts +1 -1
  363. package/base/lib/osBindings/PackageBackupInfo.d.ts +7 -0
  364. package/base/lib/osBindings/PackageBackupInfo.js +3 -0
  365. package/base/lib/osBindings/PackageBackupInfo.js.map +1 -0
  366. package/base/lib/osBindings/PackageBackupReport.d.ts +3 -0
  367. package/base/lib/osBindings/PackageBackupReport.js +4 -0
  368. package/base/lib/osBindings/PackageBackupReport.js.map +1 -0
  369. package/base/lib/osBindings/PackageDataEntry.d.ts +18 -15
  370. package/base/lib/osBindings/PackageDetailLevel.d.ts +1 -1
  371. package/base/lib/osBindings/PackageIndex.d.ts +3 -3
  372. package/base/lib/osBindings/PackageInfo.d.ts +6 -4
  373. package/base/lib/osBindings/PackageInfoShort.d.ts +2 -1
  374. package/base/lib/osBindings/PackageInfoShort.js +0 -1
  375. package/base/lib/osBindings/PackageInfoShort.js.map +1 -1
  376. package/base/lib/osBindings/PackagePlugin.d.ts +4 -0
  377. package/base/lib/osBindings/PackagePlugin.js +3 -0
  378. package/base/lib/osBindings/PackagePlugin.js.map +1 -0
  379. package/base/lib/osBindings/PackageState.d.ts +8 -8
  380. package/base/lib/osBindings/PackageVersionInfo.d.ts +24 -20
  381. package/base/lib/osBindings/PartitionInfo.d.ts +11 -0
  382. package/base/lib/osBindings/PartitionInfo.js +3 -0
  383. package/base/lib/osBindings/PartitionInfo.js.map +1 -0
  384. package/base/lib/osBindings/PasswordType.d.ts +1 -1
  385. package/base/lib/osBindings/Pem.d.ts +1 -0
  386. package/base/lib/osBindings/Pem.js +4 -0
  387. package/base/lib/osBindings/Pem.js.map +1 -0
  388. package/base/lib/osBindings/Percentage.d.ts +4 -1
  389. package/base/lib/osBindings/PluginHostnameInfo.d.ts +12 -0
  390. package/base/lib/osBindings/PluginHostnameInfo.js +3 -0
  391. package/base/lib/osBindings/PluginHostnameInfo.js.map +1 -0
  392. package/base/lib/osBindings/PluginId.d.ts +1 -0
  393. package/base/lib/osBindings/PluginId.js +4 -0
  394. package/base/lib/osBindings/PluginId.js.map +1 -0
  395. package/base/lib/osBindings/PortForward.d.ts +6 -0
  396. package/base/lib/osBindings/PortForward.js +3 -0
  397. package/base/lib/osBindings/PortForward.js.map +1 -0
  398. package/base/lib/osBindings/Progress.d.ts +2 -0
  399. package/base/lib/osBindings/Progress.js +0 -1
  400. package/base/lib/osBindings/Progress.js.map +1 -1
  401. package/base/lib/osBindings/ProgressUnits.d.ts +1 -0
  402. package/base/lib/osBindings/ProgressUnits.js +4 -0
  403. package/base/lib/osBindings/ProgressUnits.js.map +1 -0
  404. package/base/lib/osBindings/Public.d.ts +2 -2
  405. package/base/lib/osBindings/PublicDomainConfig.d.ts +6 -0
  406. package/base/lib/osBindings/PublicDomainConfig.js +3 -0
  407. package/base/lib/osBindings/PublicDomainConfig.js.map +1 -0
  408. package/base/lib/osBindings/QueryDnsParams.d.ts +3 -0
  409. package/base/lib/osBindings/QueryDnsParams.js +4 -0
  410. package/base/lib/osBindings/QueryDnsParams.js.map +1 -0
  411. package/base/lib/osBindings/RebuildParams.d.ts +4 -0
  412. package/base/lib/osBindings/RebuildParams.js +3 -0
  413. package/base/lib/osBindings/RebuildParams.js.map +1 -0
  414. package/base/lib/osBindings/RecoverySource.d.ts +3 -3
  415. package/base/lib/osBindings/RegistryAsset.d.ts +3 -3
  416. package/base/lib/osBindings/RegistryInfo.d.ts +2 -2
  417. package/base/lib/osBindings/RemoveAcmeParams.d.ts +4 -0
  418. package/base/lib/osBindings/RemoveAcmeParams.js +3 -0
  419. package/base/lib/osBindings/RemoveAcmeParams.js.map +1 -0
  420. package/base/lib/osBindings/RemoveAdminParams.d.ts +4 -0
  421. package/base/lib/osBindings/RemoveAdminParams.js +3 -0
  422. package/base/lib/osBindings/RemoveAdminParams.js.map +1 -0
  423. package/base/lib/osBindings/RemoveAssetParams.d.ts +4 -0
  424. package/base/lib/osBindings/RemoveAssetParams.js +4 -0
  425. package/base/lib/osBindings/RemoveAssetParams.js.map +1 -0
  426. package/base/lib/osBindings/RemoveDomainParams.d.ts +3 -0
  427. package/base/lib/osBindings/{ActionRequestInput.js → RemoveDomainParams.js} +1 -1
  428. package/base/lib/osBindings/RemoveDomainParams.js.map +1 -0
  429. package/base/lib/osBindings/RemoveMirrorParams.d.ts +7 -0
  430. package/base/lib/osBindings/RemoveMirrorParams.js +3 -0
  431. package/base/lib/osBindings/RemoveMirrorParams.js.map +1 -0
  432. package/base/lib/osBindings/RemovePackageFromCategoryParams.d.ts +5 -0
  433. package/base/lib/osBindings/RemovePackageFromCategoryParams.js +3 -0
  434. package/base/lib/osBindings/RemovePackageFromCategoryParams.js.map +1 -0
  435. package/base/lib/osBindings/RemovePackageParams.d.ts +8 -0
  436. package/base/lib/osBindings/RemovePackageParams.js +3 -0
  437. package/base/lib/osBindings/RemovePackageParams.js.map +1 -0
  438. package/base/lib/osBindings/RemovePackageSignerParams.d.ts +6 -0
  439. package/base/lib/osBindings/RemovePackageSignerParams.js +3 -0
  440. package/base/lib/osBindings/RemovePackageSignerParams.js.map +1 -0
  441. package/base/lib/osBindings/RemoveTunnelParams.d.ts +4 -0
  442. package/base/lib/osBindings/RemoveTunnelParams.js +3 -0
  443. package/base/lib/osBindings/RemoveTunnelParams.js.map +1 -0
  444. package/base/lib/osBindings/RenameGatewayParams.d.ts +5 -0
  445. package/base/lib/osBindings/RenameGatewayParams.js +3 -0
  446. package/base/lib/osBindings/RenameGatewayParams.js.map +1 -0
  447. package/base/lib/osBindings/RequestCommitment.d.ts +1 -1
  448. package/base/lib/osBindings/ResetPasswordParams.d.ts +5 -0
  449. package/base/lib/osBindings/ResetPasswordParams.js +3 -0
  450. package/base/lib/osBindings/ResetPasswordParams.js.map +1 -0
  451. package/base/lib/osBindings/RestorePackageParams.d.ts +7 -0
  452. package/base/lib/osBindings/{ActionRequestTrigger.js → RestorePackageParams.js} +1 -1
  453. package/base/lib/osBindings/RestorePackageParams.js.map +1 -0
  454. package/base/lib/osBindings/RunActionParams.d.ts +6 -4
  455. package/base/lib/osBindings/ServerBackupReport.d.ts +4 -0
  456. package/base/lib/osBindings/ServerBackupReport.js +4 -0
  457. package/base/lib/osBindings/ServerBackupReport.js.map +1 -0
  458. package/base/lib/osBindings/ServerInfo.d.ts +11 -6
  459. package/base/lib/osBindings/ServerStatus.d.ts +3 -3
  460. package/base/lib/osBindings/ServiceInterface.d.ts +3 -3
  461. package/base/lib/osBindings/ServiceInterfaceType.d.ts +1 -1
  462. package/base/lib/osBindings/SessionList.d.ts +1 -1
  463. package/base/lib/osBindings/Sessions.d.ts +2 -5
  464. package/base/lib/osBindings/Sessions.js +0 -1
  465. package/base/lib/osBindings/Sessions.js.map +1 -1
  466. package/base/lib/osBindings/SetCountryParams.d.ts +3 -0
  467. package/base/lib/osBindings/SetCountryParams.js +4 -0
  468. package/base/lib/osBindings/SetCountryParams.js.map +1 -0
  469. package/base/lib/osBindings/SetDefaultOutboundParams.d.ts +4 -0
  470. package/base/lib/osBindings/SetDefaultOutboundParams.js +3 -0
  471. package/base/lib/osBindings/SetDefaultOutboundParams.js.map +1 -0
  472. package/base/lib/osBindings/SetDependenciesParams.d.ts +1 -1
  473. package/base/lib/osBindings/SetHealth.d.ts +9 -6
  474. package/base/lib/osBindings/SetIconParams.d.ts +1 -1
  475. package/base/lib/osBindings/SetLanguageParams.d.ts +3 -0
  476. package/base/lib/osBindings/SetLanguageParams.js +4 -0
  477. package/base/lib/osBindings/SetLanguageParams.js.map +1 -0
  478. package/base/lib/osBindings/SetMainStatus.d.ts +1 -1
  479. package/base/lib/osBindings/SetMainStatusStatus.d.ts +1 -1
  480. package/base/lib/osBindings/SetOutboundGatewayParams.d.ts +6 -0
  481. package/base/lib/osBindings/SetOutboundGatewayParams.js +3 -0
  482. package/base/lib/osBindings/SetOutboundGatewayParams.js.map +1 -0
  483. package/base/lib/osBindings/SetStaticDnsParams.d.ts +3 -0
  484. package/base/lib/osBindings/SetStaticDnsParams.js +4 -0
  485. package/base/lib/osBindings/SetStaticDnsParams.js.map +1 -0
  486. package/base/lib/osBindings/SetWifiEnabledParams.d.ts +3 -0
  487. package/base/lib/osBindings/SetWifiEnabledParams.js +4 -0
  488. package/base/lib/osBindings/SetWifiEnabledParams.js.map +1 -0
  489. package/base/lib/osBindings/SetupExecuteParams.d.ts +5 -4
  490. package/base/lib/osBindings/SetupInfo.d.ts +4 -0
  491. package/base/lib/osBindings/SetupInfo.js +4 -0
  492. package/base/lib/osBindings/SetupInfo.js.map +1 -0
  493. package/base/lib/osBindings/SetupProgress.d.ts +2 -2
  494. package/base/lib/osBindings/SetupResult.d.ts +3 -3
  495. package/base/lib/osBindings/SetupResult.js +0 -1
  496. package/base/lib/osBindings/SetupResult.js.map +1 -1
  497. package/base/lib/osBindings/SetupStatusRes.d.ts +12 -7
  498. package/base/lib/osBindings/SideloadParams.d.ts +1 -0
  499. package/base/lib/osBindings/SideloadParams.js +4 -0
  500. package/base/lib/osBindings/SideloadParams.js.map +1 -0
  501. package/base/lib/osBindings/SideloadResponse.d.ts +5 -0
  502. package/base/lib/osBindings/SideloadResponse.js +3 -0
  503. package/base/lib/osBindings/SideloadResponse.js.map +1 -0
  504. package/base/lib/osBindings/SignAssetParams.d.ts +1 -1
  505. package/base/lib/osBindings/SignalStrength.d.ts +4 -0
  506. package/base/lib/osBindings/SignalStrength.js +4 -0
  507. package/base/lib/osBindings/SignalStrength.js.map +1 -0
  508. package/base/lib/osBindings/SignerInfo.d.ts +2 -2
  509. package/base/lib/osBindings/SshAddParams.d.ts +4 -0
  510. package/base/lib/osBindings/SshAddParams.js +3 -0
  511. package/base/lib/osBindings/SshAddParams.js.map +1 -0
  512. package/base/lib/osBindings/SshDeleteParams.d.ts +3 -0
  513. package/base/lib/osBindings/SshDeleteParams.js +4 -0
  514. package/base/lib/osBindings/SshDeleteParams.js.map +1 -0
  515. package/base/lib/osBindings/SshKeyResponse.d.ts +6 -0
  516. package/base/lib/osBindings/SshKeyResponse.js +4 -0
  517. package/base/lib/osBindings/SshKeyResponse.js.map +1 -0
  518. package/base/lib/osBindings/SshPubKey.d.ts +1 -0
  519. package/base/lib/osBindings/SshPubKey.js +4 -0
  520. package/base/lib/osBindings/SshPubKey.js.map +1 -0
  521. package/base/lib/osBindings/Ssid.d.ts +4 -0
  522. package/base/lib/osBindings/Ssid.js +4 -0
  523. package/base/lib/osBindings/Ssid.js.map +1 -0
  524. package/base/lib/osBindings/StartOsRecoveryInfo.d.ts +8 -0
  525. package/base/lib/osBindings/StartOsRecoveryInfo.js +3 -0
  526. package/base/lib/osBindings/StartOsRecoveryInfo.js.map +1 -0
  527. package/base/lib/osBindings/StartStop.d.ts +1 -1
  528. package/base/lib/osBindings/StatusInfo.d.ts +12 -0
  529. package/base/lib/osBindings/StatusInfo.js +3 -0
  530. package/base/lib/osBindings/StatusInfo.js.map +1 -0
  531. package/base/lib/osBindings/Task.d.ts +13 -0
  532. package/base/lib/osBindings/Task.js +3 -0
  533. package/base/lib/osBindings/Task.js.map +1 -0
  534. package/base/lib/osBindings/TaskCondition.d.ts +1 -0
  535. package/base/lib/osBindings/TaskCondition.js +4 -0
  536. package/base/lib/osBindings/TaskCondition.js.map +1 -0
  537. package/base/lib/osBindings/TaskEntry.d.ts +5 -0
  538. package/base/lib/osBindings/TaskEntry.js +3 -0
  539. package/base/lib/osBindings/TaskEntry.js.map +1 -0
  540. package/base/lib/osBindings/TaskInput.d.ts +4 -0
  541. package/base/lib/osBindings/TaskInput.js +4 -0
  542. package/base/lib/osBindings/TaskInput.js.map +1 -0
  543. package/base/lib/osBindings/TaskSeverity.d.ts +1 -0
  544. package/base/lib/osBindings/TaskSeverity.js +4 -0
  545. package/base/lib/osBindings/TaskSeverity.js.map +1 -0
  546. package/base/lib/osBindings/TaskTrigger.d.ts +5 -0
  547. package/base/lib/osBindings/TaskTrigger.js +3 -0
  548. package/base/lib/osBindings/TaskTrigger.js.map +1 -0
  549. package/base/lib/osBindings/TestSmtpParams.d.ts +1 -1
  550. package/base/lib/osBindings/TimeInfo.d.ts +4 -0
  551. package/base/lib/osBindings/TimeInfo.js +4 -0
  552. package/base/lib/osBindings/TimeInfo.js.map +1 -0
  553. package/base/lib/osBindings/UmountParams.d.ts +4 -0
  554. package/base/lib/osBindings/UmountParams.js +3 -0
  555. package/base/lib/osBindings/UmountParams.js.map +1 -0
  556. package/base/lib/osBindings/UninstallParams.d.ts +6 -0
  557. package/base/lib/osBindings/UninstallParams.js +3 -0
  558. package/base/lib/osBindings/UninstallParams.js.map +1 -0
  559. package/base/lib/osBindings/UpdatingState.d.ts +3 -2
  560. package/base/lib/osBindings/UrlPluginClearUrlsParams.d.ts +4 -0
  561. package/base/lib/osBindings/UrlPluginClearUrlsParams.js +3 -0
  562. package/base/lib/osBindings/UrlPluginClearUrlsParams.js.map +1 -0
  563. package/base/lib/osBindings/UrlPluginExportUrlParams.d.ts +7 -0
  564. package/base/lib/osBindings/UrlPluginExportUrlParams.js +3 -0
  565. package/base/lib/osBindings/UrlPluginExportUrlParams.js.map +1 -0
  566. package/base/lib/osBindings/UrlPluginRegisterParams.d.ts +4 -0
  567. package/base/lib/osBindings/UrlPluginRegisterParams.js +3 -0
  568. package/base/lib/osBindings/UrlPluginRegisterParams.js.map +1 -0
  569. package/base/lib/osBindings/UrlPluginRegistration.d.ts +4 -0
  570. package/base/lib/osBindings/UrlPluginRegistration.js +3 -0
  571. package/base/lib/osBindings/UrlPluginRegistration.js.map +1 -0
  572. package/base/lib/osBindings/VerifyCifsParams.d.ts +1 -1
  573. package/base/lib/osBindings/VersionSignerParams.d.ts +1 -1
  574. package/base/lib/osBindings/WifiAddParams.d.ts +4 -0
  575. package/base/lib/osBindings/WifiAddParams.js +4 -0
  576. package/base/lib/osBindings/WifiAddParams.js.map +1 -0
  577. package/base/lib/osBindings/WifiListInfo.d.ts +12 -0
  578. package/base/lib/osBindings/WifiListInfo.js +3 -0
  579. package/base/lib/osBindings/WifiListInfo.js.map +1 -0
  580. package/base/lib/osBindings/WifiListOut.d.ts +7 -0
  581. package/base/lib/osBindings/WifiListOut.js +3 -0
  582. package/base/lib/osBindings/WifiListOut.js.map +1 -0
  583. package/base/lib/osBindings/WifiSsidParams.d.ts +3 -0
  584. package/base/lib/osBindings/WifiSsidParams.js +4 -0
  585. package/base/lib/osBindings/WifiSsidParams.js.map +1 -0
  586. package/base/lib/osBindings/index.d.ts +304 -208
  587. package/base/lib/s9pk/index.d.ts +3 -4
  588. package/base/lib/s9pk/index.js +19 -25
  589. package/base/lib/s9pk/index.js.map +1 -1
  590. package/base/lib/s9pk/merkleArchive/directoryContents.d.ts +1 -1
  591. package/base/lib/s9pk/merkleArchive/directoryContents.js +2 -2
  592. package/base/lib/s9pk/merkleArchive/fileContents.d.ts +1 -1
  593. package/base/lib/s9pk/merkleArchive/fileContents.js +1 -1
  594. package/base/lib/s9pk/merkleArchive/index.d.ts +3 -3
  595. package/base/lib/s9pk/merkleArchive/index.js +8 -8
  596. package/base/lib/s9pk/merkleArchive/varint.js +1 -1
  597. package/base/lib/types/ManifestTypes.d.ts +47 -30
  598. package/base/lib/types.d.ts +33 -45
  599. package/base/lib/types.js +15 -2
  600. package/base/lib/types.js.map +1 -1
  601. package/base/lib/util/Drop.d.ts +47 -0
  602. package/base/lib/util/Drop.js +130 -0
  603. package/base/lib/util/Drop.js.map +1 -0
  604. package/base/lib/util/GetOutboundGateway.d.ts +30 -0
  605. package/base/lib/util/GetOutboundGateway.js +90 -0
  606. package/base/lib/util/GetOutboundGateway.js.map +1 -0
  607. package/base/lib/util/GetSystemSmtp.d.ts +13 -4
  608. package/base/lib/util/GetSystemSmtp.js +36 -9
  609. package/base/lib/util/GetSystemSmtp.js.map +1 -1
  610. package/base/lib/util/asError.js +1 -1
  611. package/base/lib/util/deepEqual.d.ts +1 -1
  612. package/base/lib/util/deepEqual.js +3 -4
  613. package/base/lib/util/deepEqual.js.map +1 -1
  614. package/base/lib/util/deepMerge.js +9 -4
  615. package/base/lib/util/deepMerge.js.map +1 -1
  616. package/base/lib/util/getDefaultString.d.ts +1 -1
  617. package/base/lib/util/getDefaultString.js +1 -1
  618. package/base/lib/util/getRandomCharInSet.js +9 -9
  619. package/base/lib/util/getRandomString.d.ts +1 -1
  620. package/base/lib/util/getRandomString.js +1 -1
  621. package/base/lib/util/getServiceInterface.d.ts +83 -33
  622. package/base/lib/util/getServiceInterface.js +170 -133
  623. package/base/lib/util/getServiceInterface.js.map +1 -1
  624. package/base/lib/util/getServiceInterfaces.d.ts +26 -9
  625. package/base/lib/util/getServiceInterfaces.js +66 -24
  626. package/base/lib/util/getServiceInterfaces.js.map +1 -1
  627. package/base/lib/util/graph.d.ts +2 -1
  628. package/base/lib/util/graph.js +12 -0
  629. package/base/lib/util/graph.js.map +1 -1
  630. package/base/lib/util/inMs.js +7 -7
  631. package/base/lib/util/index.d.ts +19 -19
  632. package/base/lib/util/index.js +8 -8
  633. package/base/lib/util/index.js.map +1 -1
  634. package/base/lib/util/ip.d.ts +30 -0
  635. package/base/lib/util/ip.js +257 -0
  636. package/base/lib/util/ip.js.map +1 -0
  637. package/base/lib/util/patterns.d.ts +1 -3
  638. package/base/lib/util/patterns.js +10 -18
  639. package/base/lib/util/patterns.js.map +1 -1
  640. package/base/lib/util/regexes.d.ts +3 -2
  641. package/base/lib/util/regexes.js +7 -3
  642. package/base/lib/util/regexes.js.map +1 -1
  643. package/base/lib/util/splitCommand.js +2 -3
  644. package/base/lib/util/splitCommand.js.map +1 -1
  645. package/base/lib/util/typeHelpers.d.ts +4 -4
  646. package/base/lib/util/typeHelpers.js +1 -1
  647. package/package/lib/StartSdk.d.ts +185 -609
  648. package/package/lib/StartSdk.js +144 -445
  649. package/package/lib/StartSdk.js.map +1 -1
  650. package/package/lib/backup/Backups.d.ts +14 -8
  651. package/package/lib/backup/Backups.js +57 -42
  652. package/package/lib/backup/Backups.js.map +1 -1
  653. package/package/lib/backup/index.d.ts +2 -2
  654. package/package/lib/backup/setupBackups.d.ts +8 -5
  655. package/package/lib/backup/setupBackups.js +7 -5
  656. package/package/lib/backup/setupBackups.js.map +1 -1
  657. package/package/lib/health/HealthCheck.d.ts +4 -5
  658. package/package/lib/health/HealthCheck.js +9 -16
  659. package/package/lib/health/HealthCheck.js.map +1 -1
  660. package/package/lib/health/checkFns/HealthCheckResult.d.ts +2 -2
  661. package/package/lib/health/checkFns/checkPortListening.d.ts +2 -2
  662. package/package/lib/health/checkFns/checkPortListening.js +7 -7
  663. package/package/lib/health/checkFns/checkWebUrl.d.ts +3 -3
  664. package/package/lib/health/checkFns/checkWebUrl.js +2 -2
  665. package/package/lib/health/checkFns/index.d.ts +4 -4
  666. package/package/lib/health/checkFns/index.js +1 -1
  667. package/package/lib/health/checkFns/runHealthScript.d.ts +3 -3
  668. package/package/lib/health/checkFns/runHealthScript.js +3 -3
  669. package/package/lib/health/checkFns/runHealthScript.js.map +1 -1
  670. package/package/lib/health/index.d.ts +2 -2
  671. package/package/lib/i18n/index.d.ts +24 -0
  672. package/package/lib/i18n/index.js +59 -0
  673. package/package/lib/i18n/index.js.map +1 -0
  674. package/package/lib/index.d.ts +21 -23
  675. package/package/lib/index.js +4 -9
  676. package/package/lib/index.js.map +1 -1
  677. package/package/lib/mainFn/CommandController.d.ts +8 -18
  678. package/package/lib/mainFn/CommandController.js +74 -38
  679. package/package/lib/mainFn/CommandController.js.map +1 -1
  680. package/package/lib/mainFn/Daemon.d.ts +20 -20
  681. package/package/lib/mainFn/Daemon.js +79 -20
  682. package/package/lib/mainFn/Daemon.js.map +1 -1
  683. package/package/lib/mainFn/Daemons.d.ts +81 -39
  684. package/package/lib/mainFn/Daemons.js +122 -35
  685. package/package/lib/mainFn/Daemons.js.map +1 -1
  686. package/package/lib/mainFn/HealthDaemon.d.ts +12 -11
  687. package/package/lib/mainFn/HealthDaemon.js +90 -49
  688. package/package/lib/mainFn/HealthDaemon.js.map +1 -1
  689. package/package/lib/mainFn/Mounts.d.ts +34 -47
  690. package/package/lib/mainFn/Mounts.js +19 -58
  691. package/package/lib/mainFn/Mounts.js.map +1 -1
  692. package/package/lib/mainFn/Oneshot.d.ts +12 -0
  693. package/package/lib/mainFn/Oneshot.js +23 -0
  694. package/package/lib/mainFn/Oneshot.js.map +1 -0
  695. package/package/lib/mainFn/index.d.ts +6 -7
  696. package/package/lib/mainFn/index.js +1 -1
  697. package/package/lib/mainFn/index.js.map +1 -1
  698. package/package/lib/manifest/setupManifest.d.ts +4 -4
  699. package/package/lib/manifest/setupManifest.js +19 -15
  700. package/package/lib/manifest/setupManifest.js.map +1 -1
  701. package/package/lib/test/health.readyCheck.test.js +2 -2
  702. package/package/lib/test/host.test.js +11 -11
  703. package/package/lib/test/host.test.js.map +1 -1
  704. package/package/lib/test/inputSpecBuilder.test.js +351 -353
  705. package/package/lib/test/inputSpecBuilder.test.js.map +1 -1
  706. package/package/lib/test/makeOutput.js +197 -197
  707. package/package/lib/test/output.d.ts +10 -39
  708. package/package/lib/test/output.js +419 -327
  709. package/package/lib/test/output.js.map +1 -1
  710. package/package/lib/test/output.sdk.d.ts +197 -967
  711. package/package/lib/test/output.sdk.js +15 -19
  712. package/package/lib/test/output.sdk.js.map +1 -1
  713. package/package/lib/test/output.test.js +31 -27
  714. package/package/lib/test/output.test.js.map +1 -1
  715. package/package/lib/trigger/TriggerInput.d.ts +1 -1
  716. package/package/lib/trigger/changeOnFirstSuccess.d.ts +1 -1
  717. package/package/lib/trigger/changeOnFirstSuccess.js +1 -1
  718. package/package/lib/trigger/index.d.ts +3 -3
  719. package/package/lib/trigger/lastStatus.d.ts +2 -2
  720. package/package/lib/trigger/lastStatus.js +1 -1
  721. package/package/lib/trigger/successFailure.d.ts +1 -1
  722. package/package/lib/types.d.ts +2 -2
  723. package/package/lib/util/GetServiceManifest.d.ts +36 -0
  724. package/package/lib/util/GetServiceManifest.js +116 -0
  725. package/package/lib/util/GetServiceManifest.js.map +1 -0
  726. package/package/lib/util/GetSslCertificate.d.ts +13 -4
  727. package/package/lib/util/GetSslCertificate.js +36 -9
  728. package/package/lib/util/GetSslCertificate.js.map +1 -1
  729. package/package/lib/util/SubContainer.d.ts +194 -49
  730. package/package/lib/util/SubContainer.js +265 -99
  731. package/package/lib/util/SubContainer.js.map +1 -1
  732. package/package/lib/util/Volume.d.ts +48 -0
  733. package/package/lib/util/Volume.js +91 -0
  734. package/package/lib/util/Volume.js.map +1 -0
  735. package/package/lib/util/fileHelper.d.ts +53 -20
  736. package/package/lib/util/fileHelper.js +161 -67
  737. package/package/lib/util/fileHelper.js.map +1 -1
  738. package/package/lib/util/index.d.ts +5 -4
  739. package/package/lib/util/index.js +7 -4
  740. package/package/lib/util/index.js.map +1 -1
  741. package/package/lib/version/VersionGraph.d.ts +20 -8
  742. package/package/lib/version/VersionGraph.js +101 -30
  743. package/package/lib/version/VersionGraph.js.map +1 -1
  744. package/package/lib/version/VersionInfo.d.ts +11 -6
  745. package/package/lib/version/VersionInfo.js +10 -10
  746. package/package/lib/version/VersionInfo.js.map +1 -1
  747. package/package/lib/version/index.d.ts +2 -2
  748. package/package/package.json +63 -0
  749. package/package/scripts/oldSpecToBuilder.js +52 -49
  750. package/package/scripts/oldSpecToBuilder.js.map +1 -1
  751. package/package.json +13 -14
  752. package/base/lib/osBindings/ActionRequest.d.ts +0 -13
  753. package/base/lib/osBindings/ActionRequest.js.map +0 -1
  754. package/base/lib/osBindings/ActionRequestCondition.d.ts +0 -1
  755. package/base/lib/osBindings/ActionRequestCondition.js.map +0 -1
  756. package/base/lib/osBindings/ActionRequestEntry.d.ts +0 -5
  757. package/base/lib/osBindings/ActionRequestEntry.js.map +0 -1
  758. package/base/lib/osBindings/ActionRequestInput.d.ts +0 -4
  759. package/base/lib/osBindings/ActionRequestInput.js.map +0 -1
  760. package/base/lib/osBindings/ActionRequestTrigger.d.ts +0 -5
  761. package/base/lib/osBindings/ActionRequestTrigger.js.map +0 -1
  762. package/base/lib/osBindings/ActionSeverity.d.ts +0 -1
  763. package/base/lib/osBindings/ActionSeverity.js.map +0 -1
  764. package/base/lib/osBindings/BindingSetPublicParams.d.ts +0 -4
  765. package/base/lib/osBindings/BindingSetPublicParams.js.map +0 -1
  766. package/base/lib/osBindings/ClearActionRequestsParams.js +0 -4
  767. package/base/lib/osBindings/ClearActionRequestsParams.js.map +0 -1
  768. package/base/lib/osBindings/DependencyKind.d.ts +0 -1
  769. package/base/lib/osBindings/DependencyKind.js.map +0 -1
  770. package/base/lib/osBindings/DomainConfig.d.ts +0 -5
  771. package/base/lib/osBindings/DomainConfig.js.map +0 -1
  772. package/base/lib/osBindings/ExposeForDependentsParams.d.ts +0 -3
  773. package/base/lib/osBindings/ExposeForDependentsParams.js +0 -4
  774. package/base/lib/osBindings/ExposeForDependentsParams.js.map +0 -1
  775. package/base/lib/osBindings/ForgetInterfaceParams.d.ts +0 -3
  776. package/base/lib/osBindings/ForgetInterfaceParams.js +0 -4
  777. package/base/lib/osBindings/ForgetInterfaceParams.js.map +0 -1
  778. package/base/lib/osBindings/GetStoreParams.d.ts +0 -7
  779. package/base/lib/osBindings/GetStoreParams.js.map +0 -1
  780. package/base/lib/osBindings/HostAddress.d.ts +0 -10
  781. package/base/lib/osBindings/HostAddress.js.map +0 -1
  782. package/base/lib/osBindings/MainStatus.d.ts +0 -31
  783. package/base/lib/osBindings/MainStatus.js.map +0 -1
  784. package/base/lib/osBindings/NetworkInterfaceSetInboundParams.d.ts +0 -4
  785. package/base/lib/osBindings/NetworkInterfaceSetInboundParams.js +0 -4
  786. package/base/lib/osBindings/NetworkInterfaceSetInboundParams.js.map +0 -1
  787. package/base/lib/osBindings/NetworkInterfaceSetPublicParams.d.ts +0 -4
  788. package/base/lib/osBindings/NetworkInterfaceSetPublicParams.js +0 -4
  789. package/base/lib/osBindings/NetworkInterfaceSetPublicParams.js.map +0 -1
  790. package/base/lib/osBindings/PackageSignerParams.d.ts +0 -6
  791. package/base/lib/osBindings/PackageSignerParams.js +0 -3
  792. package/base/lib/osBindings/PackageSignerParams.js.map +0 -1
  793. package/base/lib/osBindings/ProcedureId.d.ts +0 -4
  794. package/base/lib/osBindings/ProcedureId.js.map +0 -1
  795. package/base/lib/osBindings/RequestActionParams.d.ts +0 -15
  796. package/base/lib/osBindings/RequestActionParams.js +0 -3
  797. package/base/lib/osBindings/RequestActionParams.js.map +0 -1
  798. package/base/lib/osBindings/SetStoreParams.d.ts +0 -4
  799. package/base/lib/osBindings/SetStoreParams.js.map +0 -1
  800. package/base/lib/osBindings/UnsetInboundParams.d.ts +0 -3
  801. package/base/lib/osBindings/UnsetInboundParams.js +0 -4
  802. package/base/lib/osBindings/UnsetInboundParams.js.map +0 -1
  803. package/base/lib/osBindings/UnsetPublicParams.d.ts +0 -3
  804. package/base/lib/osBindings/UnsetPublicParams.js.map +0 -1
  805. package/base/lib/util/Hostname.d.ts +0 -2
  806. package/base/lib/util/Hostname.js +0 -25
  807. package/base/lib/util/Hostname.js.map +0 -1
  808. package/base/lib/util/PathBuilder.d.ts +0 -13
  809. package/base/lib/util/PathBuilder.js +0 -23
  810. package/base/lib/util/PathBuilder.js.map +0 -1
  811. package/package/lib/inits/index.d.ts +0 -3
  812. package/package/lib/inits/index.js +0 -6
  813. package/package/lib/inits/index.js.map +0 -1
  814. package/package/lib/inits/setupInit.d.ts +0 -14
  815. package/package/lib/inits/setupInit.js +0 -56
  816. package/package/lib/inits/setupInit.js.map +0 -1
  817. package/package/lib/inits/setupInstall.d.ts +0 -20
  818. package/package/lib/inits/setupInstall.js +0 -46
  819. package/package/lib/inits/setupInstall.js.map +0 -1
  820. package/package/lib/inits/setupUninstall.d.ts +0 -11
  821. package/package/lib/inits/setupUninstall.js +0 -23
  822. package/package/lib/inits/setupUninstall.js.map +0 -1
  823. package/package/lib/store/getStore.d.ts +0 -34
  824. package/package/lib/store/getStore.js +0 -77
  825. package/package/lib/store/getStore.js.map +0 -1
  826. package/package/lib/store/setupExposeStore.d.ts +0 -16
  827. package/package/lib/store/setupExposeStore.js +0 -21
  828. package/package/lib/store/setupExposeStore.js.map +0 -1
  829. package/package/lib/test/store.test.d.ts +0 -1
  830. package/package/lib/test/store.test.js +0 -90
  831. package/package/lib/test/store.test.js.map +0 -1
  832. package/package/lib/util/Drop.d.ts +0 -11
  833. package/package/lib/util/Drop.js +0 -30
  834. package/package/lib/util/Drop.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runHealthScript.js","sourceRoot":"","sources":["../../../../../package/lib/health/checkFns/runHealthScript.ts"],"names":[],"mappings":";;;AACA,mCAAwC;AAIxC;;;;;;GAMG;AACI,MAAM,eAAe,GAAG,KAAK,EAClC,UAAoB,EACpB,YAAoC,EACpC,EACE,OAAO,GAAG,KAAK,EACf,YAAY,GAAG,gCAAgC,UAAU,EAAE,EAC3D,OAAO,GAAG,CAAC,GAAW,EAAE,EAAE,CACxB,mBAAmB,UAAU,oBAAoB,GAAG,EAAE,MACtD,EAAE,EACsB,EAAE;IAC9B,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;QAC7B,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;QAC7B,IAAA,sBAAc,EAAC,OAAO,CAAC;KACxB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC1B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC1B,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAuB,CAAA;IACzE,CAAC,CAAC,CAAA;IACF,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;KACnB,CAAA;AACxB,CAAC,CAAA;AAvBY,QAAA,eAAe,mBAuB3B"}
1
+ {"version":3,"file":"runHealthScript.js","sourceRoot":"","sources":["../../../../../package/lib/health/checkFns/runHealthScript.ts"],"names":[],"mappings":";;;AACA,mCAAwC;AAIxC;;;;;;GAMG;AACI,MAAM,eAAe,GAAG,KAAK,EAClC,UAAoB,EACpB,YAAoC,EACpC,EACE,OAAO,GAAG,KAAK,EACf,YAAY,GAAG,gCAAgC,UAAU,EAAE,EAC3D,OAAO,GAAG,CAAC,GAAW,EAAE,EAAE,CACxB,mBAAmB,UAAU,oBAAoB,GAAG,EAAE,MACtD,EAAE,EACsB,EAAE;IAC9B,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;QAC7B,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC;QACjC,IAAA,sBAAc,EAAC,OAAO,CAAC;KACxB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC1B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC1B,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAuB,CAAA;IACzE,CAAC,CAAC,CAAA;IACF,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;KACnB,CAAA;AACxB,CAAC,CAAA;AAvBY,QAAA,eAAe,mBAuB3B"}
@@ -1,2 +1,2 @@
1
- import "./checkFns";
2
- export { HealthCheck } from "./HealthCheck";
1
+ import './checkFns';
2
+ export { HealthCheck } from './HealthCheck';
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Internationalization (i18n) utilities for StartOS packages.
3
+ *
4
+ * @example
5
+ * ```typescript
6
+ * // In package's i18n/index.ts:
7
+ * import { setupI18n } from '@start9labs/start-sdk'
8
+ * import defaultDict, { DEFAULT_LANG } from './dictionaries/default'
9
+ * import translations from './dictionaries/translations'
10
+ *
11
+ * export const i18n = setupI18n(defaultDict, translations, DEFAULT_LANG)
12
+ * ```
13
+ */
14
+ type ParamValue = string | number | Date;
15
+ /**
16
+ * Creates a typed i18n function for a package.
17
+ *
18
+ * @param defaultDict - The default language dictionary mapping strings to numeric indices
19
+ * @param translations - Translation dictionaries for each supported locale
20
+ * @param defaultLang - The default language code (e.g., 'en_US')
21
+ * @returns A typed i18n function that accepts dictionary keys and optional parameters
22
+ */
23
+ export declare function setupI18n<Dict extends Record<string, number>, Translations extends Record<string, Record<number, string>>>(defaultDict: Dict, translations: Translations, defaultLang: string): (key: keyof Dict, params?: Record<string, ParamValue>) => string;
24
+ export {};
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ /**
3
+ * Internationalization (i18n) utilities for StartOS packages.
4
+ *
5
+ * @example
6
+ * ```typescript
7
+ * // In package's i18n/index.ts:
8
+ * import { setupI18n } from '@start9labs/start-sdk'
9
+ * import defaultDict, { DEFAULT_LANG } from './dictionaries/default'
10
+ * import translations from './dictionaries/translations'
11
+ *
12
+ * export const i18n = setupI18n(defaultDict, translations, DEFAULT_LANG)
13
+ * ```
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.setupI18n = setupI18n;
17
+ /**
18
+ * Creates a typed i18n function for a package.
19
+ *
20
+ * @param defaultDict - The default language dictionary mapping strings to numeric indices
21
+ * @param translations - Translation dictionaries for each supported locale
22
+ * @param defaultLang - The default language code (e.g., 'en_US')
23
+ * @returns A typed i18n function that accepts dictionary keys and optional parameters
24
+ */
25
+ function setupI18n(defaultDict, translations, defaultLang) {
26
+ const lang = process.env.LANG?.replace(/\.UTF-8$/, '') || defaultLang;
27
+ // Convert locale format from en_US to en-US for Intl APIs
28
+ const intlLocale = lang.replace('_', '-');
29
+ function getTranslation() {
30
+ if (lang === defaultLang)
31
+ return null;
32
+ const availableLangs = Object.keys(translations);
33
+ const match = availableLangs.find((l) => l === lang) ??
34
+ availableLangs.find((l) => String(l).startsWith(lang.split('_')[0] + '_'));
35
+ return match ? translations[match] : null;
36
+ }
37
+ const translation = getTranslation();
38
+ function formatValue(value) {
39
+ if (typeof value === 'number') {
40
+ return new Intl.NumberFormat(intlLocale).format(value);
41
+ }
42
+ if (value instanceof Date) {
43
+ return new Intl.DateTimeFormat(intlLocale).format(value);
44
+ }
45
+ return value;
46
+ }
47
+ return function i18n(key, params) {
48
+ let result = translation
49
+ ? translation[defaultDict[key]]
50
+ : key;
51
+ if (params) {
52
+ for (const [paramName, value] of Object.entries(params)) {
53
+ result = result.replace(`\${${paramName}}`, formatValue(value));
54
+ }
55
+ }
56
+ return result;
57
+ };
58
+ }
59
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../package/lib/i18n/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;AAYH,8BAiDC;AAzDD;;;;;;;GAOG;AACH,SAAgB,SAAS,CAGvB,WAAiB,EAAE,YAA0B,EAAE,WAAmB;IAClE,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,WAAW,CAAA;IAErE,0DAA0D;IAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAEzC,SAAS,cAAc;QACrB,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO,IAAI,CAAA;QAErC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAA2B,CAAA;QAE1E,MAAM,KAAK,GACT,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;YACtC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;QAE5E,OAAO,KAAK,CAAC,CAAC,CAAE,YAAY,CAAC,KAAK,CAA4B,CAAC,CAAC,CAAC,IAAI,CAAA;IACvE,CAAC;IAED,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,SAAS,WAAW,CAAC,KAAiB;QACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACxD,CAAC;QACD,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC1D,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,SAAS,IAAI,CAClB,GAAe,EACf,MAAmC;QAEnC,IAAI,MAAM,GAAG,WAAW;YACtB,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,GAAa,CAAC,CAAC;YACzC,CAAC,CAAE,GAAc,CAAA;QAEnB,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,SAAS,GAAG,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AACH,CAAC"}
@@ -1,23 +1,21 @@
1
- import { S9pk, Version, VersionRange, ExtendedVersion, inputSpec, ISB, IST, types, matches, utils } from "../../base/lib";
2
- export { S9pk, Version, VersionRange, ExtendedVersion, inputSpec, ISB, IST, types, matches, utils, };
3
- export * as T from "./types";
4
- export { Daemons } from "./mainFn/Daemons";
5
- export { SubContainer } from "./util/SubContainer";
6
- export { StartSdk } from "./StartSdk";
7
- export { setupManifest, buildManifest } from "./manifest/setupManifest";
8
- export { FileHelper } from "./util/fileHelper";
9
- export { setupExposeStore } from "./store/setupExposeStore";
10
- export { pathBuilder } from "../../base/lib/util/PathBuilder";
11
- export * as actions from "../../base/lib/actions";
12
- export * as backup from "./backup";
13
- export * as daemons from "./mainFn/Daemons";
14
- export * as health from "./health";
15
- export * as healthFns from "./health/checkFns";
16
- export * as inits from "./inits";
17
- export * as mainFn from "./mainFn";
18
- export * as toml from "@iarna/toml";
19
- export * as yaml from "yaml";
20
- export * as startSdk from "./StartSdk";
21
- export * as YAML from "yaml";
22
- export * as TOML from "@iarna/toml";
23
- export * from "./version";
1
+ import { S9pk, Version, VersionRange, ExtendedVersion, inputSpec, ISB, IST, types, z, utils } from '../../base/lib';
2
+ export { S9pk, Version, VersionRange, ExtendedVersion, inputSpec, ISB, IST, types, z, utils, };
3
+ export { setupI18n } from './i18n';
4
+ export * as T from './types';
5
+ export { Daemons } from './mainFn/Daemons';
6
+ export { SubContainer } from './util/SubContainer';
7
+ export { StartSdk } from './StartSdk';
8
+ export { setupManifest, buildManifest } from './manifest/setupManifest';
9
+ export { FileHelper } from './util/fileHelper';
10
+ export * as actions from '../../base/lib/actions';
11
+ export * as backup from './backup';
12
+ export * as daemons from './mainFn/Daemons';
13
+ export * as health from './health';
14
+ export * as healthFns from './health/checkFns';
15
+ export * as mainFn from './mainFn';
16
+ export * as toml from '@iarna/toml';
17
+ export * as yaml from 'yaml';
18
+ export * as startSdk from './StartSdk';
19
+ export * as YAML from 'yaml';
20
+ export * as TOML from '@iarna/toml';
21
+ export * from './version';
@@ -36,7 +36,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.TOML = exports.YAML = exports.startSdk = exports.yaml = exports.toml = exports.mainFn = exports.inits = exports.healthFns = exports.health = exports.daemons = exports.backup = exports.actions = exports.pathBuilder = exports.setupExposeStore = exports.FileHelper = exports.buildManifest = exports.setupManifest = exports.StartSdk = exports.SubContainer = exports.Daemons = exports.T = exports.utils = exports.matches = exports.types = exports.IST = exports.ISB = exports.inputSpec = exports.ExtendedVersion = exports.VersionRange = exports.Version = exports.S9pk = void 0;
39
+ exports.TOML = exports.YAML = exports.startSdk = exports.yaml = exports.toml = exports.mainFn = exports.healthFns = exports.health = exports.daemons = exports.backup = exports.actions = exports.FileHelper = exports.buildManifest = exports.setupManifest = exports.StartSdk = exports.Daemons = exports.T = exports.setupI18n = exports.utils = exports.z = exports.types = exports.IST = exports.ISB = exports.inputSpec = exports.ExtendedVersion = exports.VersionRange = exports.Version = exports.S9pk = void 0;
40
40
  const lib_1 = require("../../base/lib");
41
41
  Object.defineProperty(exports, "S9pk", { enumerable: true, get: function () { return lib_1.S9pk; } });
42
42
  Object.defineProperty(exports, "Version", { enumerable: true, get: function () { return lib_1.Version; } });
@@ -46,13 +46,13 @@ Object.defineProperty(exports, "inputSpec", { enumerable: true, get: function ()
46
46
  Object.defineProperty(exports, "ISB", { enumerable: true, get: function () { return lib_1.ISB; } });
47
47
  Object.defineProperty(exports, "IST", { enumerable: true, get: function () { return lib_1.IST; } });
48
48
  Object.defineProperty(exports, "types", { enumerable: true, get: function () { return lib_1.types; } });
49
- Object.defineProperty(exports, "matches", { enumerable: true, get: function () { return lib_1.matches; } });
49
+ Object.defineProperty(exports, "z", { enumerable: true, get: function () { return lib_1.z; } });
50
50
  Object.defineProperty(exports, "utils", { enumerable: true, get: function () { return lib_1.utils; } });
51
+ var i18n_1 = require("./i18n");
52
+ Object.defineProperty(exports, "setupI18n", { enumerable: true, get: function () { return i18n_1.setupI18n; } });
51
53
  exports.T = __importStar(require("./types"));
52
54
  var Daemons_1 = require("./mainFn/Daemons");
53
55
  Object.defineProperty(exports, "Daemons", { enumerable: true, get: function () { return Daemons_1.Daemons; } });
54
- var SubContainer_1 = require("./util/SubContainer");
55
- Object.defineProperty(exports, "SubContainer", { enumerable: true, get: function () { return SubContainer_1.SubContainer; } });
56
56
  var StartSdk_1 = require("./StartSdk");
57
57
  Object.defineProperty(exports, "StartSdk", { enumerable: true, get: function () { return StartSdk_1.StartSdk; } });
58
58
  var setupManifest_1 = require("./manifest/setupManifest");
@@ -60,16 +60,11 @@ Object.defineProperty(exports, "setupManifest", { enumerable: true, get: functio
60
60
  Object.defineProperty(exports, "buildManifest", { enumerable: true, get: function () { return setupManifest_1.buildManifest; } });
61
61
  var fileHelper_1 = require("./util/fileHelper");
62
62
  Object.defineProperty(exports, "FileHelper", { enumerable: true, get: function () { return fileHelper_1.FileHelper; } });
63
- var setupExposeStore_1 = require("./store/setupExposeStore");
64
- Object.defineProperty(exports, "setupExposeStore", { enumerable: true, get: function () { return setupExposeStore_1.setupExposeStore; } });
65
- var PathBuilder_1 = require("../../base/lib/util/PathBuilder");
66
- Object.defineProperty(exports, "pathBuilder", { enumerable: true, get: function () { return PathBuilder_1.pathBuilder; } });
67
63
  exports.actions = __importStar(require("../../base/lib/actions"));
68
64
  exports.backup = __importStar(require("./backup"));
69
65
  exports.daemons = __importStar(require("./mainFn/Daemons"));
70
66
  exports.health = __importStar(require("./health"));
71
67
  exports.healthFns = __importStar(require("./health/checkFns"));
72
- exports.inits = __importStar(require("./inits"));
73
68
  exports.mainFn = __importStar(require("./mainFn"));
74
69
  exports.toml = __importStar(require("@iarna/toml"));
75
70
  exports.yaml = __importStar(require("yaml"));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../package/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAWuB;AAGrB,qFAbA,UAAI,OAaA;AACJ,wFAbA,aAAO,OAaA;AACP,6FAbA,kBAAY,OAaA;AACZ,gGAbA,qBAAe,OAaA;AACf,0FAbA,eAAS,OAaA;AACT,oFAbA,SAAG,OAaA;AACH,oFAbA,SAAG,OAaA;AACH,sFAbA,WAAK,OAaA;AACL,wFAbA,aAAO,OAaA;AACP,sFAbA,WAAK,OAaA;AAEP,6CAA4B;AAC5B,4CAA0C;AAAjC,kGAAA,OAAO,OAAA;AAChB,oDAAkD;AAAzC,4GAAA,YAAY,OAAA;AACrB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,0DAAuE;AAA9D,8GAAA,aAAa,OAAA;AAAE,8GAAA,aAAa,OAAA;AACrC,gDAA8C;AAArC,wGAAA,UAAU,OAAA;AACnB,6DAA2D;AAAlD,oHAAA,gBAAgB,OAAA;AACzB,+DAA6D;AAApD,0GAAA,WAAW,OAAA;AAEpB,kEAAiD;AACjD,mDAAkC;AAClC,4DAA2C;AAC3C,mDAAkC;AAClC,+DAA8C;AAC9C,iDAAgC;AAChC,mDAAkC;AAClC,oDAAmC;AACnC,6CAA4B;AAC5B,uDAAsC;AACtC,6CAA4B;AAC5B,oDAAmC;AACnC,4CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../package/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAWuB;AAGrB,qFAbA,UAAI,OAaA;AACJ,wFAbA,aAAO,OAaA;AACP,6FAbA,kBAAY,OAaA;AACZ,gGAbA,qBAAe,OAaA;AACf,0FAbA,eAAS,OAaA;AACT,oFAbA,SAAG,OAaA;AACH,oFAbA,SAAG,OAaA;AACH,sFAbA,WAAK,OAaA;AACL,kFAbA,OAAC,OAaA;AACD,sFAbA,WAAK,OAaA;AAEP,+BAAkC;AAAzB,iGAAA,SAAS,OAAA;AAClB,6CAA4B;AAC5B,4CAA0C;AAAjC,kGAAA,OAAO,OAAA;AAEhB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,0DAAuE;AAA9D,8GAAA,aAAa,OAAA;AAAE,8GAAA,aAAa,OAAA;AACrC,gDAA8C;AAArC,wGAAA,UAAU,OAAA;AAEnB,kEAAiD;AACjD,mDAAkC;AAClC,4DAA2C;AAC3C,mDAAkC;AAClC,+DAA8C;AAC9C,mDAAkC;AAClC,oDAAmC;AACnC,6CAA4B;AAC5B,uDAAsC;AACtC,6CAA4B;AAC5B,oDAAmC;AACnC,4CAAyB"}
@@ -1,28 +1,18 @@
1
- import * as T from "../../../base/lib/types";
2
- import { SubContainerHandle, SubContainer } from "../util/SubContainer";
3
- import { Drop } from "../util";
4
- export declare class CommandController<Manifest extends T.SDKManifest> extends Drop {
5
- readonly runningAnswer: Promise<unknown>;
1
+ import * as T from '../../../base/lib/types';
2
+ import { SubContainer } from '../util/SubContainer';
3
+ import { Drop } from '../util';
4
+ import { DaemonCommandType } from './Daemons';
5
+ export declare class CommandController<Manifest extends T.SDKManifest, C extends SubContainer<Manifest> | null> extends Drop {
6
+ readonly runningAnswer: Promise<null>;
6
7
  private state;
7
8
  private readonly subcontainer;
8
9
  private process;
9
10
  readonly sigtermTimeout: number;
10
11
  private constructor();
11
- static of<Manifest extends T.SDKManifest>(): (effects: T.Effects, subcontainer: SubContainer<Manifest>, command: T.CommandType, options: {
12
- sigtermTimeout?: number;
13
- runAsInit?: boolean;
14
- env?: {
15
- [variable: string]: string;
16
- } | undefined;
17
- cwd?: string | undefined;
18
- user?: string | undefined;
19
- onStdout?: (chunk: Buffer | string | any) => void;
20
- onStderr?: (chunk: Buffer | string | any) => void;
21
- }) => Promise<CommandController<Manifest>>;
22
- get subContainerHandle(): SubContainerHandle;
12
+ static of<Manifest extends T.SDKManifest, C extends SubContainer<Manifest> | null>(): (effects: T.Effects, subcontainer: C, exec: DaemonCommandType<Manifest, C>) => Promise<CommandController<Manifest, C>>;
23
13
  wait({ timeout }?: {
24
14
  timeout?: number | undefined;
25
- }): Promise<unknown>;
15
+ }): Promise<void>;
26
16
  term({ signal, timeout }?: {
27
17
  signal?: NodeJS.Signals | undefined;
28
18
  timeout?: number | undefined;
@@ -37,7 +37,6 @@ exports.CommandController = void 0;
37
37
  const _1 = require(".");
38
38
  const types_1 = require("../../../base/lib/types");
39
39
  const T = __importStar(require("../../../base/lib/types"));
40
- const SubContainer_1 = require("../util/SubContainer");
41
40
  const util_1 = require("../util");
42
41
  const fs = __importStar(require("node:fs/promises"));
43
42
  class CommandController extends util_1.Drop {
@@ -50,44 +49,65 @@ class CommandController extends util_1.Drop {
50
49
  this.sigtermTimeout = sigtermTimeout;
51
50
  }
52
51
  static of() {
53
- return async (effects, subcontainer, command, options) => {
54
- let commands;
55
- if (command instanceof T.UseEntrypoint) {
56
- const imageMeta = await fs
57
- .readFile(`/media/startos/images/${subcontainer.imageId}.json`, {
58
- encoding: "utf8",
59
- })
60
- .catch(() => "{}")
61
- .then(JSON.parse);
62
- commands = imageMeta.entrypoint ?? [];
63
- commands.concat(...(command.overridCmd ?? imageMeta.cmd ?? []));
64
- }
65
- else
66
- commands = (0, util_1.splitCommand)(command);
52
+ return async (effects, subcontainer, exec) => {
67
53
  try {
54
+ if ('fn' in exec) {
55
+ const abort = new AbortController();
56
+ const cell = {
57
+ ctrl: new CommandController(exec.fn(subcontainer, abort.signal).then(async (command) => {
58
+ if (subcontainer && command && !abort.signal.aborted) {
59
+ const newCtrl = (await CommandController.of()(effects, subcontainer, command)).leak();
60
+ Object.assign(cell.ctrl, newCtrl);
61
+ return await cell.ctrl.runningAnswer;
62
+ }
63
+ else {
64
+ cell.ctrl.state.exited = true;
65
+ }
66
+ return null;
67
+ }), { exited: false }, subcontainer, abort, exec.sigtermTimeout),
68
+ };
69
+ return cell.ctrl;
70
+ }
71
+ let commands;
72
+ if (T.isUseEntrypoint(exec.command)) {
73
+ const imageMeta = await fs
74
+ .readFile(`/media/startos/images/${subcontainer.imageId}.json`, {
75
+ encoding: 'utf8',
76
+ })
77
+ .catch(() => '{}')
78
+ .then(JSON.parse);
79
+ commands = imageMeta.entrypoint ?? [];
80
+ commands = commands.concat(...(exec.command.overridCmd ?? imageMeta.cmd ?? []));
81
+ }
82
+ else
83
+ commands = (0, util_1.splitCommand)(exec.command);
68
84
  let childProcess;
69
- if (options.runAsInit) {
85
+ if (exec.runAsInit) {
70
86
  childProcess = await subcontainer.launch(commands, {
71
- env: options.env,
87
+ env: exec.env,
88
+ user: exec.user,
89
+ cwd: exec.cwd,
72
90
  });
73
91
  }
74
92
  else {
75
93
  childProcess = await subcontainer.spawn(commands, {
76
- env: options.env,
77
- stdio: options.onStdout || options.onStderr ? "pipe" : "inherit",
94
+ env: exec.env,
95
+ user: exec.user,
96
+ cwd: exec.cwd,
97
+ stdio: exec.onStdout || exec.onStderr ? 'pipe' : 'inherit',
78
98
  });
79
99
  }
80
- if (options.onStdout)
81
- childProcess.stdout?.on("data", options.onStdout);
82
- if (options.onStderr)
83
- childProcess.stderr?.on("data", options.onStderr);
100
+ if (exec.onStdout)
101
+ childProcess.stdout?.on('data', exec.onStdout);
102
+ if (exec.onStderr)
103
+ childProcess.stderr?.on('data', exec.onStderr);
84
104
  const state = { exited: false };
85
105
  const answer = new Promise((resolve, reject) => {
86
- childProcess.on("exit", (code) => {
106
+ childProcess.on('exit', (code) => {
87
107
  state.exited = true;
88
108
  if (code === 0 ||
89
109
  code === 143 ||
90
- (code === null && childProcess.signalCode == "SIGTERM")) {
110
+ (code === null && childProcess.signalCode == 'SIGTERM')) {
91
111
  return resolve(null);
92
112
  }
93
113
  if (code) {
@@ -98,49 +118,65 @@ class CommandController extends util_1.Drop {
98
118
  }
99
119
  });
100
120
  });
101
- return new CommandController(answer, state, subcontainer, childProcess, options.sigtermTimeout);
121
+ return new CommandController(answer, state, subcontainer, childProcess, exec.sigtermTimeout);
102
122
  }
103
123
  catch (e) {
104
- await subcontainer.destroy();
124
+ await subcontainer?.destroy();
105
125
  throw e;
106
126
  }
107
127
  };
108
128
  }
109
- get subContainerHandle() {
110
- return new SubContainer_1.SubContainerHandle(this.subcontainer);
111
- }
112
129
  async wait({ timeout = types_1.NO_TIMEOUT } = {}) {
113
130
  if (timeout > 0)
114
131
  setTimeout(() => {
115
132
  this.term();
116
133
  }, timeout);
117
134
  try {
118
- return await this.runningAnswer;
135
+ if (timeout > 0 && this.process instanceof AbortController)
136
+ await Promise.race([
137
+ this.runningAnswer,
138
+ new Promise((_, reject) => setTimeout(() => reject(new Error('Timed out waiting for js command to exit')), timeout * 2)),
139
+ ]);
140
+ else
141
+ await this.runningAnswer;
119
142
  }
120
143
  finally {
121
144
  if (!this.state.exited) {
122
- this.process.kill("SIGKILL");
145
+ if (this.process instanceof AbortController)
146
+ this.process.abort();
147
+ else
148
+ this.process.kill('SIGKILL');
123
149
  }
124
- await this.subcontainer.destroy().catch((_) => { });
150
+ await this.subcontainer?.destroy();
125
151
  }
126
152
  }
127
153
  async term({ signal = types_1.SIGTERM, timeout = this.sigtermTimeout } = {}) {
128
154
  try {
129
155
  if (!this.state.exited) {
130
- if (signal !== "SIGKILL") {
156
+ if (this.process instanceof AbortController)
157
+ return this.process.abort();
158
+ if (signal !== 'SIGKILL') {
131
159
  setTimeout(() => {
132
- if (!this.state.exited)
133
- this.process.kill("SIGKILL");
160
+ if (this.process instanceof AbortController)
161
+ this.process.abort();
162
+ else
163
+ this.process.kill('SIGKILL');
134
164
  }, timeout);
135
165
  }
136
166
  if (!this.process.kill(signal)) {
137
167
  console.error(`failed to send signal ${signal} to pid ${this.process.pid}`);
138
168
  }
139
169
  }
140
- await this.runningAnswer;
170
+ if (this.process instanceof AbortController)
171
+ await Promise.race([
172
+ this.runningAnswer,
173
+ new Promise((_, reject) => setTimeout(() => reject(new Error('Timed out waiting for js command to exit')), timeout * 2)),
174
+ ]);
175
+ else
176
+ await this.runningAnswer;
141
177
  }
142
178
  finally {
143
- await this.subcontainer.destroy();
179
+ await this.subcontainer?.destroy();
144
180
  }
145
181
  }
146
182
  onDrop() {
@@ -1 +1 @@
1
- {"version":3,"file":"CommandController.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/CommandController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommandController.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/CommandController.ts"],"names":[],"mappings":"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"}
@@ -1,33 +1,33 @@
1
- import * as T from "../../../base/lib/types";
2
- import { ExecSpawnable, SubContainer } from "../util/SubContainer";
3
- import { CommandController } from "./CommandController";
1
+ import * as T from '../../../base/lib/types';
2
+ import { Drop } from '../util';
3
+ import { SubContainer, SubContainerRc } from '../util/SubContainer';
4
+ import { CommandController } from './CommandController';
5
+ import { DaemonCommandType } from './Daemons';
6
+ import { Oneshot } from './Oneshot';
4
7
  /**
5
8
  * This is a wrapper around CommandController that has a state of off, where the command shouldn't be running
6
9
  * and the others state of running, where it will keep a living running command
7
10
  */
8
- export declare class Daemon<Manifest extends T.SDKManifest> {
11
+ export declare class Daemon<Manifest extends T.SDKManifest, C extends SubContainer<Manifest> | null = SubContainer<Manifest> | null> extends Drop {
12
+ private subcontainer;
9
13
  private startCommand;
14
+ readonly oneshot: boolean;
10
15
  private commandController;
11
16
  private shouldBeRunning;
12
- constructor(startCommand: () => Promise<CommandController<Manifest>>);
13
- get subContainerHandle(): undefined | ExecSpawnable;
14
- static of<Manifest extends T.SDKManifest>(): <A extends string>(effects: T.Effects, subcontainer: SubContainer<Manifest>, command: T.CommandType, options: {
15
- env?: {
16
- [variable: string]: string;
17
- } | undefined;
18
- cwd?: string | undefined;
19
- user?: string | undefined;
20
- onStdout?: (chunk: Buffer | string | any) => void;
21
- onStderr?: (chunk: Buffer | string | any) => void;
22
- sigtermTimeout?: number;
23
- }) => Promise<Daemon<Manifest>>;
17
+ protected exitedSuccess: boolean;
18
+ private exiting;
19
+ private onExitFns;
20
+ protected constructor(subcontainer: C, startCommand: () => Promise<CommandController<Manifest, C>>, oneshot?: boolean);
21
+ isOneshot(): this is Oneshot<Manifest>;
22
+ static of<Manifest extends T.SDKManifest>(): <C extends SubContainer<Manifest> | null>(effects: T.Effects, subcontainer: C, exec: DaemonCommandType<Manifest, C>) => Daemon<Manifest, SubContainer<Manifest, T.Effects> | null>;
24
23
  start(): Promise<void>;
25
24
  term(termOptions?: {
26
25
  signal?: NodeJS.Signals | undefined;
27
26
  timeout?: number | undefined;
27
+ destroySubcontainer?: boolean;
28
28
  }): Promise<void>;
29
- stop(termOptions?: {
30
- signal?: NodeJS.Signals | undefined;
31
- timeout?: number | undefined;
32
- }): Promise<void>;
29
+ subcontainerRc(): SubContainerRc<Manifest> | null;
30
+ sharesSubcontainerWith(other: Daemon<Manifest, SubContainer<Manifest> | null>): boolean;
31
+ onExit(fn: (success: boolean) => void): void;
32
+ onDrop(): void;
33
33
  }
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Daemon = void 0;
4
4
  const asError_1 = require("../../../base/lib/util/asError");
5
+ const util_1 = require("../util");
5
6
  const CommandController_1 = require("./CommandController");
6
7
  const TIMEOUT_INCREMENT_MS = 1000;
7
8
  const MAX_TIMEOUT_MS = 30000;
@@ -9,19 +10,32 @@ const MAX_TIMEOUT_MS = 30000;
9
10
  * This is a wrapper around CommandController that has a state of off, where the command shouldn't be running
10
11
  * and the others state of running, where it will keep a living running command
11
12
  */
12
- class Daemon {
13
- constructor(startCommand) {
13
+ class Daemon extends util_1.Drop {
14
+ constructor(subcontainer, startCommand, oneshot = false) {
15
+ super();
16
+ this.subcontainer = subcontainer;
14
17
  this.startCommand = startCommand;
18
+ this.oneshot = oneshot;
15
19
  this.commandController = null;
16
20
  this.shouldBeRunning = false;
21
+ this.exitedSuccess = false;
22
+ this.exiting = null;
23
+ this.onExitFns = [];
17
24
  }
18
- get subContainerHandle() {
19
- return this.commandController?.subContainerHandle;
25
+ isOneshot() {
26
+ return this.oneshot;
20
27
  }
21
28
  static of() {
22
- return async (effects, subcontainer, command, options) => {
23
- const startCommand = () => CommandController_1.CommandController.of()(effects, subcontainer, command, options);
24
- return new Daemon(startCommand);
29
+ return (effects, subcontainer, exec) => {
30
+ let subc = subcontainer;
31
+ if (subcontainer && subcontainer.isOwned())
32
+ subc = subcontainer.rc();
33
+ const startCommand = () => CommandController_1.CommandController.of()(effects, (subc?.rc() ?? null), exec);
34
+ const res = new Daemon(subc, startCommand);
35
+ effects.onLeaveContext(() => {
36
+ res.term({ destroySubcontainer: true }).catch((e) => console.error(e));
37
+ });
38
+ return res;
25
39
  };
26
40
  }
27
41
  async start() {
@@ -30,29 +44,74 @@ class Daemon {
30
44
  }
31
45
  this.shouldBeRunning = true;
32
46
  let timeoutCounter = 0;
33
- new Promise(async () => {
47
+ (async () => {
34
48
  while (this.shouldBeRunning) {
35
49
  if (this.commandController)
36
- await this.commandController.term().catch((err) => console.error(err));
37
- this.commandController = await this.startCommand();
38
- await this.commandController.wait().catch((err) => console.error(err));
50
+ await this.commandController
51
+ .term({})
52
+ .catch((err) => console.error(err));
53
+ try {
54
+ this.commandController = await this.startCommand();
55
+ if (!this.shouldBeRunning) {
56
+ // handles race condition if stopped while starting
57
+ await this.term();
58
+ break;
59
+ }
60
+ const success = await this.commandController.wait().then((_) => true, (err) => {
61
+ console.error(err);
62
+ return false;
63
+ });
64
+ for (const fn of this.onExitFns) {
65
+ try {
66
+ fn(success);
67
+ }
68
+ catch (e) {
69
+ console.error('EXIT handler', e);
70
+ }
71
+ }
72
+ if (success && this.oneshot) {
73
+ this.exitedSuccess = true;
74
+ break;
75
+ }
76
+ }
77
+ catch (e) {
78
+ console.error(e);
79
+ }
39
80
  await new Promise((resolve) => setTimeout(resolve, timeoutCounter));
40
81
  timeoutCounter += TIMEOUT_INCREMENT_MS;
41
- timeoutCounter = Math.max(MAX_TIMEOUT_MS, timeoutCounter);
82
+ timeoutCounter = Math.min(MAX_TIMEOUT_MS, timeoutCounter);
42
83
  }
43
- }).catch((err) => {
84
+ })().catch((err) => {
44
85
  console.error((0, asError_1.asError)(err));
45
86
  });
46
87
  }
47
88
  async term(termOptions) {
48
- return this.stop(termOptions);
49
- }
50
- async stop(termOptions) {
51
89
  this.shouldBeRunning = false;
52
- await this.commandController
53
- ?.term({ ...termOptions })
54
- .catch((e) => console.error((0, asError_1.asError)(e)));
55
- this.commandController = null;
90
+ this.exitedSuccess = false;
91
+ if (this.commandController) {
92
+ this.exiting = this.commandController.term({ ...termOptions });
93
+ this.commandController = null;
94
+ this.onExitFns = [];
95
+ }
96
+ if (this.exiting) {
97
+ await this.exiting.catch(console.error);
98
+ if (termOptions?.destroySubcontainer) {
99
+ await this.subcontainer?.destroy();
100
+ }
101
+ this.exiting = null;
102
+ }
103
+ }
104
+ subcontainerRc() {
105
+ return this.subcontainer?.rc() ?? null;
106
+ }
107
+ sharesSubcontainerWith(other) {
108
+ return this.subcontainer?.guid === other.subcontainer?.guid;
109
+ }
110
+ onExit(fn) {
111
+ this.onExitFns.push(fn);
112
+ }
113
+ onDrop() {
114
+ this.term().catch((e) => console.error((0, asError_1.asError)(e)));
56
115
  }
57
116
  }
58
117
  exports.Daemon = Daemon;