@sprucelabs/spruce-cli 19.2.2 → 19.2.4

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 (620) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/build/GlobalEmitter.js +2 -3
  3. package/build/GlobalEmitter.js.map +1 -1
  4. package/build/InFlightEntertainment.js +1 -2
  5. package/build/InFlightEntertainment.js.map +1 -1
  6. package/build/__tests__/behavioral/AddingADependency.test.js +2 -3
  7. package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
  8. package/build/__tests__/behavioral/BlockingCommands.test.js +2 -3
  9. package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
  10. package/build/__tests__/behavioral/BootingTheCli.test.js +2 -3
  11. package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
  12. package/build/__tests__/behavioral/BootingWithBadFiles.test.js +2 -3
  13. package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
  14. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js +2 -3
  15. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
  16. package/build/__tests__/behavioral/DeployingASkill.test.js +2 -3
  17. package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
  18. package/build/__tests__/behavioral/DeployingToSandbox.test.js +2 -3
  19. package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
  20. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js +2 -3
  21. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
  22. package/build/__tests__/behavioral/GettingCliVersion.test.js +2 -3
  23. package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
  24. package/build/__tests__/behavioral/ManagingDependencies.test.js +2 -3
  25. package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
  26. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js +2 -3
  27. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
  28. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js +2 -3
  29. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
  30. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js +2 -3
  31. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
  32. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js +2 -3
  33. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
  34. package/build/__tests__/behavioral/SettingRemote.test.js +2 -3
  35. package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
  36. package/build/__tests__/behavioral/SettingUpVscode.test.js +2 -3
  37. package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
  38. package/build/__tests__/behavioral/TestingAConversation.test.js +2 -3
  39. package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
  40. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js +2 -3
  41. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
  42. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js +2 -3
  43. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
  44. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js +2 -3
  45. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
  46. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js +2 -3
  47. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
  48. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +2 -3
  49. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
  50. package/build/__tests__/behavioral/events/CreatingAListener.test.js +2 -3
  51. package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
  52. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +2 -3
  53. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
  54. package/build/__tests__/behavioral/events/EventWriter.test.js +2 -3
  55. package/build/__tests__/behavioral/events/EventWriter.test.js.map +1 -1
  56. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js +2 -3
  57. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
  58. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js +2 -3
  59. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
  60. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js +2 -3
  61. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
  62. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js +2 -3
  63. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
  64. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js +2 -3
  65. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js.map +1 -1
  66. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js +2 -3
  67. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js.map +1 -1
  68. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js +2 -3
  69. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js.map +1 -1
  70. package/build/__tests__/behavioral/events/SettingUpEvents.test.js +2 -3
  71. package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
  72. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +2 -3
  73. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
  74. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js +2 -3
  75. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
  76. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js +2 -3
  77. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
  78. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +5 -7
  79. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
  80. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js +2 -3
  81. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
  82. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js +2 -3
  83. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
  84. package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js +2 -3
  85. package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js.map +1 -1
  86. package/build/__tests__/behavioral/permissions/PermissionStore.test.js +2 -3
  87. package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
  88. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js +2 -3
  89. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js.map +1 -1
  90. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +4 -6
  91. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
  92. package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js +2 -3
  93. package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js.map +1 -1
  94. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js +2 -3
  95. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
  96. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js +2 -3
  97. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
  98. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js +2 -3
  99. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js.map +1 -1
  100. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js +2 -3
  101. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
  102. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js +2 -3
  103. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js.map +1 -1
  104. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js +2 -3
  105. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
  106. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js +2 -3
  107. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
  108. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js +2 -3
  109. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
  110. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js +2 -3
  111. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
  112. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js +2 -3
  113. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
  114. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js +2 -3
  115. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
  116. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js +2 -3
  117. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
  118. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js +2 -3
  119. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
  120. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js +3 -4
  121. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
  122. package/build/__tests__/behavioral/skill/BootingASkill.test.js +2 -3
  123. package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
  124. package/build/__tests__/behavioral/skill/CreatingASkill.test.js +2 -3
  125. package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
  126. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js +2 -3
  127. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js.map +1 -1
  128. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js +2 -3
  129. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js.map +1 -1
  130. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js +2 -3
  131. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js.map +1 -1
  132. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js +2 -3
  133. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
  134. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js +2 -3
  135. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
  136. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js +2 -3
  137. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
  138. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js +2 -3
  139. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
  140. package/build/__tests__/behavioral/tests/CreatingATest.test.js +2 -3
  141. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  142. package/build/__tests__/behavioral/tests/RunningTests.test.js +2 -3
  143. package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
  144. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +2 -3
  145. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
  146. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js +2 -3
  147. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js.map +1 -1
  148. package/build/__tests__/behavioral/tests/SettingUpTests.test.js +2 -3
  149. package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
  150. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js +2 -3
  151. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js.map +1 -1
  152. package/build/__tests__/behavioral/tests/TestingDataStores.test.js +2 -3
  153. package/build/__tests__/behavioral/tests/TestingDataStores.test.js.map +1 -1
  154. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js +2 -3
  155. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
  156. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js +2 -3
  157. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
  158. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js +2 -3
  159. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
  160. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js +2 -3
  161. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
  162. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js +2 -3
  163. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
  164. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js +2 -3
  165. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
  166. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js +2 -3
  167. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
  168. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js +5 -8
  169. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
  170. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js +2 -3
  171. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
  172. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js +2 -3
  173. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
  174. package/build/__tests__/behavioral/views/CreatingASkillView.test.js +2 -3
  175. package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
  176. package/build/__tests__/behavioral/views/CreatingATheme.test.js +2 -3
  177. package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
  178. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js +2 -3
  179. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
  180. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js +2 -3
  181. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js.map +1 -1
  182. package/build/__tests__/behavioral/views/SettingUpViews.test.js +2 -3
  183. package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
  184. package/build/__tests__/behavioral/views/TestingViewControllers.test.js +2 -3
  185. package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
  186. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js +2 -3
  187. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js.map +1 -1
  188. package/build/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.js +2 -3
  189. package/build/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.js.map +1 -1
  190. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js +2 -3
  191. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
  192. package/build/__tests__/implementation/ActionExecuter.test.js +2 -3
  193. package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
  194. package/build/__tests__/implementation/ActionExecuter2.test.js +2 -3
  195. package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
  196. package/build/__tests__/implementation/ActionExecuter3.test.js +2 -3
  197. package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
  198. package/build/__tests__/implementation/ActionExecuter4.test.js +2 -3
  199. package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
  200. package/build/__tests__/implementation/ArgParser.test.js +3 -4
  201. package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
  202. package/build/__tests__/implementation/BuildService.test.js +2 -3
  203. package/build/__tests__/implementation/BuildService.test.js.map +1 -1
  204. package/build/__tests__/implementation/BulkImporting.test.js +3 -4
  205. package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
  206. package/build/__tests__/implementation/CachingImports.test.js +2 -3
  207. package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
  208. package/build/__tests__/implementation/CommandOptionBuilder.test.js +2 -3
  209. package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
  210. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js +3 -4
  211. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
  212. package/build/__tests__/implementation/DataStoreStore.test.js +2 -3
  213. package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
  214. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js +2 -3
  215. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
  216. package/build/__tests__/implementation/EventContractCleanerUtil.test.js +3 -4
  217. package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
  218. package/build/__tests__/implementation/EventStore.test.js +2 -3
  219. package/build/__tests__/implementation/EventStore.test.js.map +1 -1
  220. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js +2 -3
  221. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
  222. package/build/__tests__/implementation/FeatureCommandAttacher.test.js +2 -3
  223. package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
  224. package/build/__tests__/implementation/FeatureFixture.test.js +2 -3
  225. package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
  226. package/build/__tests__/implementation/FeatureInstaller.test.js +2 -3
  227. package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
  228. package/build/__tests__/implementation/FeaturesUtil.test.js +3 -4
  229. package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
  230. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js +2 -3
  231. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
  232. package/build/__tests__/implementation/GlobalEmitter.test.js +2 -3
  233. package/build/__tests__/implementation/GlobalEmitter.test.js.map +1 -1
  234. package/build/__tests__/implementation/Introspection.test.js +2 -3
  235. package/build/__tests__/implementation/Introspection.test.js.map +1 -1
  236. package/build/__tests__/implementation/JestJsonParser.test.js +3 -4
  237. package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
  238. package/build/__tests__/implementation/LintService.test.js +2 -3
  239. package/build/__tests__/implementation/LintService.test.js.map +1 -1
  240. package/build/__tests__/implementation/ListenerStore.test.js +2 -3
  241. package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
  242. package/build/__tests__/implementation/OnboardingScriptLoader.test.js +2 -3
  243. package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
  244. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js +2 -3
  245. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
  246. package/build/__tests__/implementation/OnboardingStore.test.js +2 -3
  247. package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
  248. package/build/__tests__/implementation/OrganizationStore.test.js +2 -3
  249. package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
  250. package/build/__tests__/implementation/ParentTestFinder.test.js +2 -3
  251. package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
  252. package/build/__tests__/implementation/PkgService.test.js +2 -3
  253. package/build/__tests__/implementation/PkgService.test.js.map +1 -1
  254. package/build/__tests__/implementation/SchemaStore.test.js +2 -3
  255. package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
  256. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js +2 -3
  257. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
  258. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js +2 -3
  259. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
  260. package/build/__tests__/implementation/ServiceFactory.test.js +2 -3
  261. package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
  262. package/build/__tests__/implementation/SettingUpANodeModule.test.js +2 -3
  263. package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
  264. package/build/__tests__/implementation/SkillStore.test.js +2 -3
  265. package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
  266. package/build/__tests__/implementation/StoreFeature.test.js +2 -3
  267. package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
  268. package/build/__tests__/implementation/TestReporter.test.js +2 -3
  269. package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
  270. package/build/__tests__/implementation/TestRunner.test.js +2 -3
  271. package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
  272. package/build/__tests__/implementation/ValueTypeMapping.test.js +2 -3
  273. package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
  274. package/build/__tests__/implementation/Widgets.test.js +2 -3
  275. package/build/__tests__/implementation/Widgets.test.js.map +1 -1
  276. package/build/__tests__/support/EventFaker.js +1 -2
  277. package/build/__tests__/support/EventFaker.js.map +1 -1
  278. package/build/cli/Cli.js +1 -2
  279. package/build/cli/Cli.js.map +1 -1
  280. package/build/components/AbstractComponent.js +1 -2
  281. package/build/components/AbstractComponent.js.map +1 -1
  282. package/build/components/FormComponent.js +4 -6
  283. package/build/components/FormComponent.js.map +1 -1
  284. package/build/components/QuizComponent.js +1 -2
  285. package/build/components/QuizComponent.js.map +1 -1
  286. package/build/errors/SpruceError.js +2 -3
  287. package/build/errors/SpruceError.js.map +1 -1
  288. package/build/features/AbstractAction.js +1 -2
  289. package/build/features/AbstractAction.js.map +1 -1
  290. package/build/features/AbstractFeature.js +1 -2
  291. package/build/features/AbstractFeature.js.map +1 -1
  292. package/build/features/ActionExecuter.js +1 -2
  293. package/build/features/ActionExecuter.js.map +1 -1
  294. package/build/features/ActionFactory.js +1 -2
  295. package/build/features/ActionFactory.js.map +1 -1
  296. package/build/features/ActionQuestionAsker.js +1 -2
  297. package/build/features/ActionQuestionAsker.js.map +1 -1
  298. package/build/features/FeatureCommandAttacher.js +1 -2
  299. package/build/features/FeatureCommandAttacher.js.map +1 -1
  300. package/build/features/FeatureInstaller.js +1 -2
  301. package/build/features/FeatureInstaller.js.map +1 -1
  302. package/build/features/FeatureInstallerFactory.js +1 -2
  303. package/build/features/FeatureInstallerFactory.js.map +1 -1
  304. package/build/features/OverrideActionDecorator.js +1 -2
  305. package/build/features/OverrideActionDecorator.js.map +1 -1
  306. package/build/features/cache/CacheFeature.js +6 -8
  307. package/build/features/cache/CacheFeature.js.map +1 -1
  308. package/build/features/cache/actions/DisableAction.js +5 -7
  309. package/build/features/cache/actions/DisableAction.js.map +1 -1
  310. package/build/features/cache/actions/EnableAction.js +5 -7
  311. package/build/features/cache/actions/EnableAction.js.map +1 -1
  312. package/build/features/conversation/ConversationFeature.js +9 -11
  313. package/build/features/conversation/ConversationFeature.js.map +1 -1
  314. package/build/features/conversation/actions/CreateAction.js +4 -6
  315. package/build/features/conversation/actions/CreateAction.js.map +1 -1
  316. package/build/features/conversation/actions/TestAction.js +6 -8
  317. package/build/features/conversation/actions/TestAction.js.map +1 -1
  318. package/build/features/conversation/stores/ConversationStore.js +3 -5
  319. package/build/features/conversation/stores/ConversationStore.js.map +1 -1
  320. package/build/features/conversation/writers/ConversationWriter.js +2 -3
  321. package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
  322. package/build/features/dependencies/DependencyFeature.js +8 -10
  323. package/build/features/dependencies/DependencyFeature.js.map +1 -1
  324. package/build/features/dependencies/actions/AddAction.js +5 -7
  325. package/build/features/dependencies/actions/AddAction.js.map +1 -1
  326. package/build/features/dependencies/actions/ManageAction.js +5 -7
  327. package/build/features/dependencies/actions/ManageAction.js.map +1 -1
  328. package/build/features/deploy/DeployFeature.js +8 -10
  329. package/build/features/deploy/DeployFeature.js.map +1 -1
  330. package/build/features/deploy/actions/HerokuAction.js +5 -7
  331. package/build/features/deploy/actions/HerokuAction.js.map +1 -1
  332. package/build/features/deploy/writers/DeployWriter.js +2 -3
  333. package/build/features/deploy/writers/DeployWriter.js.map +1 -1
  334. package/build/features/error/ErrorFeature.js +9 -11
  335. package/build/features/error/ErrorFeature.js.map +1 -1
  336. package/build/features/error/ParentTestFinder.js +1 -2
  337. package/build/features/error/ParentTestFinder.js.map +1 -1
  338. package/build/features/error/actions/CreateAction.js +4 -6
  339. package/build/features/error/actions/CreateAction.js.map +1 -1
  340. package/build/features/error/actions/SyncAction.js +5 -7
  341. package/build/features/error/actions/SyncAction.js.map +1 -1
  342. package/build/features/error/writers/ErrorWriter.js +2 -3
  343. package/build/features/error/writers/ErrorWriter.js.map +1 -1
  344. package/build/features/event/EventFeature.js +14 -16
  345. package/build/features/event/EventFeature.js.map +1 -1
  346. package/build/features/event/actions/CreateAction.js +4 -6
  347. package/build/features/event/actions/CreateAction.js.map +1 -1
  348. package/build/features/event/actions/ListenAction.js +5 -7
  349. package/build/features/event/actions/ListenAction.js.map +1 -1
  350. package/build/features/event/actions/SetRemoteAction.js +5 -7
  351. package/build/features/event/actions/SetRemoteAction.js.map +1 -1
  352. package/build/features/event/actions/SyncAction.js +5 -7
  353. package/build/features/event/actions/SyncAction.js.map +1 -1
  354. package/build/features/event/actions/SyncListenersAction.js +5 -7
  355. package/build/features/event/actions/SyncListenersAction.js.map +1 -1
  356. package/build/features/event/builders/EventContractBuilder.js +1 -2
  357. package/build/features/event/builders/EventContractBuilder.js.map +1 -1
  358. package/build/features/event/builders/ListenerTemplateItemBuilder.js +1 -2
  359. package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
  360. package/build/features/event/services/EventSettingsService.js +1 -2
  361. package/build/features/event/services/EventSettingsService.js.map +1 -1
  362. package/build/features/event/stores/EventStore.js +3 -5
  363. package/build/features/event/stores/EventStore.js.map +1 -1
  364. package/build/features/event/stores/ListenerStore.js +3 -5
  365. package/build/features/event/stores/ListenerStore.js.map +1 -1
  366. package/build/features/event/writers/EventWriter.js +2 -3
  367. package/build/features/event/writers/EventWriter.js.map +1 -1
  368. package/build/features/eventContract/EventContractFeature.js +9 -10
  369. package/build/features/eventContract/EventContractFeature.js.map +1 -1
  370. package/build/features/eventContract/actions/PullAction.js +5 -7
  371. package/build/features/eventContract/actions/PullAction.js.map +1 -1
  372. package/build/features/log/LogFeature.js +7 -9
  373. package/build/features/log/LogFeature.js.map +1 -1
  374. package/build/features/log/actions/CreateTransportAction.js +5 -7
  375. package/build/features/log/actions/CreateTransportAction.js.map +1 -1
  376. package/build/features/log/writers/LogWriter.js +2 -3
  377. package/build/features/log/writers/LogWriter.js.map +1 -1
  378. package/build/features/node/NodeFeature.js +12 -14
  379. package/build/features/node/NodeFeature.js.map +1 -1
  380. package/build/features/node/actions/CreateAction.js +5 -7
  381. package/build/features/node/actions/CreateAction.js.map +1 -1
  382. package/build/features/node/actions/UpdateDependenciesAction.js +6 -8
  383. package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
  384. package/build/features/node/actions/UpgradeAction.js +5 -7
  385. package/build/features/node/actions/UpgradeAction.js.map +1 -1
  386. package/build/features/node/writers/NodeWriter.js +2 -3
  387. package/build/features/node/writers/NodeWriter.js.map +1 -1
  388. package/build/features/onboard/OnboardFeature.js +13 -15
  389. package/build/features/onboard/OnboardFeature.js.map +1 -1
  390. package/build/features/onboard/ScriptLoader.js +1 -2
  391. package/build/features/onboard/ScriptLoader.js.map +1 -1
  392. package/build/features/onboard/ScriptPlayer.js +1 -2
  393. package/build/features/onboard/ScriptPlayer.js.map +1 -1
  394. package/build/features/onboard/actions/OnboardAction.js +4 -6
  395. package/build/features/onboard/actions/OnboardAction.js.map +1 -1
  396. package/build/features/onboard/stores/OnboardingStore.js +3 -5
  397. package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
  398. package/build/features/organization/OrganizationFeature.js +7 -8
  399. package/build/features/organization/OrganizationFeature.js.map +1 -1
  400. package/build/features/organization/actions/CreateAction.js +4 -6
  401. package/build/features/organization/actions/CreateAction.js.map +1 -1
  402. package/build/features/organization/actions/InstallAction.js +5 -7
  403. package/build/features/organization/actions/InstallAction.js.map +1 -1
  404. package/build/features/organization/stores/OrganizationStore.js +3 -5
  405. package/build/features/organization/stores/OrganizationStore.js.map +1 -1
  406. package/build/features/permission/PermissionFeature.js +10 -12
  407. package/build/features/permission/PermissionFeature.js.map +1 -1
  408. package/build/features/permission/actions/CreateAction.js +5 -7
  409. package/build/features/permission/actions/CreateAction.js.map +1 -1
  410. package/build/features/permission/actions/SyncAction.js +7 -9
  411. package/build/features/permission/actions/SyncAction.js.map +1 -1
  412. package/build/features/permission/stores/PermissionStore.js +3 -5
  413. package/build/features/permission/stores/PermissionStore.js.map +1 -1
  414. package/build/features/permission/writers/PermissionWriter.js +2 -3
  415. package/build/features/permission/writers/PermissionWriter.js.map +1 -1
  416. package/build/features/person/PersonFeature.js +8 -9
  417. package/build/features/person/PersonFeature.js.map +1 -1
  418. package/build/features/person/actions/LoginAction.js +5 -7
  419. package/build/features/person/actions/LoginAction.js.map +1 -1
  420. package/build/features/person/actions/LogoutAction.js +5 -7
  421. package/build/features/person/actions/LogoutAction.js.map +1 -1
  422. package/build/features/person/actions/WhoamiAction.js +5 -7
  423. package/build/features/person/actions/WhoamiAction.js.map +1 -1
  424. package/build/features/polish/PolishFeature.js +8 -9
  425. package/build/features/polish/PolishFeature.js.map +1 -1
  426. package/build/features/polish/actions/SetupAction.js +4 -6
  427. package/build/features/polish/actions/SetupAction.js.map +1 -1
  428. package/build/features/polish/writers/PolishWriter.js +2 -3
  429. package/build/features/polish/writers/PolishWriter.js.map +1 -1
  430. package/build/features/sandbox/SandboxFeature.js +7 -8
  431. package/build/features/sandbox/SandboxFeature.js.map +1 -1
  432. package/build/features/sandbox/actions/SetupAction.js +4 -6
  433. package/build/features/sandbox/actions/SetupAction.js.map +1 -1
  434. package/build/features/sandbox/writers/SandboxWriter.js +2 -3
  435. package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
  436. package/build/features/schema/SchemaFeature.js +10 -12
  437. package/build/features/schema/SchemaFeature.js.map +1 -1
  438. package/build/features/schema/ValueTypeBuilder.js +1 -2
  439. package/build/features/schema/ValueTypeBuilder.js.map +1 -1
  440. package/build/features/schema/actions/CreateAction.js +4 -6
  441. package/build/features/schema/actions/CreateAction.js.map +1 -1
  442. package/build/features/schema/actions/SyncAction.js +7 -9
  443. package/build/features/schema/actions/SyncAction.js.map +1 -1
  444. package/build/features/schema/actions/SyncFieldsAction.js +5 -7
  445. package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
  446. package/build/features/schema/services/SchemaService.js +2 -3
  447. package/build/features/schema/services/SchemaService.js.map +1 -1
  448. package/build/features/schema/stores/SchemaStore.js +3 -5
  449. package/build/features/schema/stores/SchemaStore.js.map +1 -1
  450. package/build/features/schema/writers/SchemaWriter.js +3 -5
  451. package/build/features/schema/writers/SchemaWriter.js.map +1 -1
  452. package/build/features/skill/SkillFeature.js +14 -16
  453. package/build/features/skill/SkillFeature.js.map +1 -1
  454. package/build/features/skill/actions/BootAction.js +7 -9
  455. package/build/features/skill/actions/BootAction.js.map +1 -1
  456. package/build/features/skill/actions/CreateAction.js +5 -7
  457. package/build/features/skill/actions/CreateAction.js.map +1 -1
  458. package/build/features/skill/actions/DashboardAction.js +5 -7
  459. package/build/features/skill/actions/DashboardAction.js.map +1 -1
  460. package/build/features/skill/actions/LoginAction.js +5 -7
  461. package/build/features/skill/actions/LoginAction.js.map +1 -1
  462. package/build/features/skill/actions/RebuildAction.js +5 -7
  463. package/build/features/skill/actions/RebuildAction.js.map +1 -1
  464. package/build/features/skill/actions/RegisterAction.js +5 -7
  465. package/build/features/skill/actions/RegisterAction.js.map +1 -1
  466. package/build/features/skill/stores/SkillStore.js +3 -5
  467. package/build/features/skill/stores/SkillStore.js.map +1 -1
  468. package/build/features/skill/updaters/Updater.js +1 -2
  469. package/build/features/skill/updaters/Updater.js.map +1 -1
  470. package/build/features/skill/writers/SkillWriter.js +2 -3
  471. package/build/features/skill/writers/SkillWriter.js.map +1 -1
  472. package/build/features/store/StoreFeature.js +10 -12
  473. package/build/features/store/StoreFeature.js.map +1 -1
  474. package/build/features/store/actions/CreateAction.js +4 -6
  475. package/build/features/store/actions/CreateAction.js.map +1 -1
  476. package/build/features/store/actions/SyncAction.js +5 -7
  477. package/build/features/store/actions/SyncAction.js.map +1 -1
  478. package/build/features/store/stores/StoreStore.js +3 -5
  479. package/build/features/store/stores/StoreStore.js.map +1 -1
  480. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js +1 -2
  481. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
  482. package/build/features/store/writers/StoreWriter.js +2 -3
  483. package/build/features/store/writers/StoreWriter.js.map +1 -1
  484. package/build/features/test/TestFeature.js +8 -10
  485. package/build/features/test/TestFeature.js.map +1 -1
  486. package/build/features/test/TestLogItemGenerator.js +1 -2
  487. package/build/features/test/TestLogItemGenerator.js.map +1 -1
  488. package/build/features/test/TestReporter.js +1 -2
  489. package/build/features/test/TestReporter.js.map +1 -1
  490. package/build/features/test/TestRunner.js +6 -8
  491. package/build/features/test/TestRunner.js.map +1 -1
  492. package/build/features/test/actions/CreateAction.js +4 -6
  493. package/build/features/test/actions/CreateAction.js.map +1 -1
  494. package/build/features/test/actions/SetupAction.js +5 -7
  495. package/build/features/test/actions/SetupAction.js.map +1 -1
  496. package/build/features/test/actions/TestAction.js +17 -19
  497. package/build/features/test/actions/TestAction.js.map +1 -1
  498. package/build/features/test/writers/TestWriter.js +2 -3
  499. package/build/features/test/writers/TestWriter.js.map +1 -1
  500. package/build/features/view/ViewFeature.js +8 -10
  501. package/build/features/view/ViewFeature.js.map +1 -1
  502. package/build/features/view/actions/CreateAction.js +5 -7
  503. package/build/features/view/actions/CreateAction.js.map +1 -1
  504. package/build/features/view/actions/CreatePluginAction.js +5 -7
  505. package/build/features/view/actions/CreatePluginAction.js.map +1 -1
  506. package/build/features/view/actions/CreateThemeAction.js +5 -7
  507. package/build/features/view/actions/CreateThemeAction.js.map +1 -1
  508. package/build/features/view/actions/SyncAction.js +5 -7
  509. package/build/features/view/actions/SyncAction.js.map +1 -1
  510. package/build/features/view/actions/WatchAction.js +7 -9
  511. package/build/features/view/actions/WatchAction.js.map +1 -1
  512. package/build/features/view/stores/ViewStore.js +3 -5
  513. package/build/features/view/stores/ViewStore.js.map +1 -1
  514. package/build/features/view/writers/ViewWriter.js +2 -3
  515. package/build/features/view/writers/ViewWriter.js.map +1 -1
  516. package/build/features/vscode/VsCodeFeature.js +7 -8
  517. package/build/features/vscode/VsCodeFeature.js.map +1 -1
  518. package/build/features/vscode/actions/SetupAction.js +6 -8
  519. package/build/features/vscode/actions/SetupAction.js.map +1 -1
  520. package/build/features/vscode/services/VsCodeService.js +2 -3
  521. package/build/features/vscode/services/VsCodeService.js.map +1 -1
  522. package/build/features/vscode/writers/VsCodeWriter.js +2 -3
  523. package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
  524. package/build/features/watch/WatchFeature.js +9 -11
  525. package/build/features/watch/WatchFeature.js.map +1 -1
  526. package/build/interfaces/SpyInterface.js +1 -2
  527. package/build/interfaces/SpyInterface.js.map +1 -1
  528. package/build/interfaces/TerminalInterface.js +2 -3
  529. package/build/interfaces/TerminalInterface.js.map +1 -1
  530. package/build/services/BuildService.js +1 -2
  531. package/build/services/BuildService.js.map +1 -1
  532. package/build/services/CommandService.js +1 -2
  533. package/build/services/CommandService.js.map +1 -1
  534. package/build/services/DependencyService.js +1 -2
  535. package/build/services/DependencyService.js.map +1 -1
  536. package/build/services/GameService.js +1 -2
  537. package/build/services/GameService.js.map +1 -1
  538. package/build/services/ImportService.js +1 -2
  539. package/build/services/ImportService.js.map +1 -1
  540. package/build/services/LintService.js +1 -2
  541. package/build/services/LintService.js.map +1 -1
  542. package/build/services/PkgService.js +3 -5
  543. package/build/services/PkgService.js.map +1 -1
  544. package/build/services/ServiceFactory.js +1 -2
  545. package/build/services/ServiceFactory.js.map +1 -1
  546. package/build/stores/AbstractLocalStore.js +2 -3
  547. package/build/stores/AbstractLocalStore.js.map +1 -1
  548. package/build/stores/AbstractStore.js +1 -2
  549. package/build/stores/AbstractStore.js.map +1 -1
  550. package/build/stores/StoreFactory.js +1 -2
  551. package/build/stores/StoreFactory.js.map +1 -1
  552. package/build/templateItemBuilders/EventTemplateItemBuilder.js +1 -2
  553. package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
  554. package/build/templateItemBuilders/FieldTemplateItemBuilder.js +1 -2
  555. package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
  556. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js +1 -2
  557. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
  558. package/build/tests/AbstractCliTest.js +3 -4
  559. package/build/tests/AbstractCliTest.js.map +1 -1
  560. package/build/tests/AbstractErrorTest.js +2 -3
  561. package/build/tests/AbstractErrorTest.js.map +1 -1
  562. package/build/tests/AbstractEventTest.js +2 -3
  563. package/build/tests/AbstractEventTest.js.map +1 -1
  564. package/build/tests/AbstractSchemaTest.js +2 -3
  565. package/build/tests/AbstractSchemaTest.js.map +1 -1
  566. package/build/tests/AbstractSkillTest.js +2 -3
  567. package/build/tests/AbstractSkillTest.js.map +1 -1
  568. package/build/tests/AbstractTestTest.js +2 -3
  569. package/build/tests/AbstractTestTest.js.map +1 -1
  570. package/build/tests/CommandFaker.js +1 -2
  571. package/build/tests/CommandFaker.js.map +1 -1
  572. package/build/tests/JestJsonParser.js +1 -2
  573. package/build/tests/JestJsonParser.js.map +1 -1
  574. package/build/tests/MockProgramFactory.js +1 -2
  575. package/build/tests/MockProgramFactory.js.map +1 -1
  576. package/build/tests/cleanTestData.js +1 -1
  577. package/build/tests/cleanTestData.js.map +1 -1
  578. package/build/tests/fixtures/FeatureFixture.js +1 -2
  579. package/build/tests/fixtures/FeatureFixture.js.map +1 -1
  580. package/build/tests/fixtures/MercuryFixture.js +1 -2
  581. package/build/tests/fixtures/MercuryFixture.js.map +1 -1
  582. package/build/tests/fixtures/OrganizationFixture.js +1 -2
  583. package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
  584. package/build/tests/fixtures/PersonFixture.js +1 -2
  585. package/build/tests/fixtures/PersonFixture.js.map +1 -1
  586. package/build/tests/fixtures/SkillFixture.js +1 -2
  587. package/build/tests/fixtures/SkillFixture.js.map +1 -1
  588. package/build/tests/fixtures/ViewFixture.js +1 -2
  589. package/build/tests/fixtures/ViewFixture.js.map +1 -1
  590. package/build/updaters/ScriptUpdater.js +1 -2
  591. package/build/updaters/ScriptUpdater.js.map +1 -1
  592. package/build/utilities/introspection.utility.js +1 -1
  593. package/build/utilities/introspection.utility.js.map +1 -1
  594. package/build/widgets/WidgetFactory.js +1 -2
  595. package/build/widgets/WidgetFactory.js.map +1 -1
  596. package/build/widgets/terminalKit/TKButtonWidget.js +6 -8
  597. package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
  598. package/build/widgets/terminalKit/TkBaseWidget.js +14 -16
  599. package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
  600. package/build/widgets/terminalKit/TkInputWidget.js +7 -9
  601. package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
  602. package/build/widgets/terminalKit/TkLayoutCellWidget.js +5 -7
  603. package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
  604. package/build/widgets/terminalKit/TkLayoutWidget.js +5 -7
  605. package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
  606. package/build/widgets/terminalKit/TkMenuBarWidget.js +6 -8
  607. package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
  608. package/build/widgets/terminalKit/TkPopupWidget.js +5 -7
  609. package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
  610. package/build/widgets/terminalKit/TkProgressBarWidget.js +5 -7
  611. package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
  612. package/build/widgets/terminalKit/TkTextWidget.js +7 -9
  613. package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
  614. package/build/widgets/terminalKit/TkWindowWidget.js +15 -17
  615. package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
  616. package/build/writers/AbstractWriter.js +1 -2
  617. package/build/writers/AbstractWriter.js.map +1 -1
  618. package/build/writers/WriterFactory.js +1 -2
  619. package/build/writers/WriterFactory.js.map +1 -1
  620. package/package.json +27 -27
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureCommandAttacher.js","names":["_schema","require","_SpruceError","_interopRequireDefault","_commander","_ui","_feature","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createForOfIteratorHelper","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","i","F","s","n","done","value","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","FeatureCommandAttacher","exports","options","_classCallCheck2","program","term","ui","actionExecuter","_createClass2","key","_attachFeature","_asyncToGenerator2","_regenerator","mark","_callee","feature","actionCodes","_iterator","_step","actionCode","wrap","_callee$","_context","prev","getAvailableActionCodes","sent","attachCode","stop","attachFeature","_x","code","_this","_action$optionsSchema","commandStr","featuresUtil","generateCommand","action","Action","aliases","commandAliases","_toConsumableArray2","shift","command","_callee2","_feature$optionsSchem","startTime","_len","args","_key","results","endTime","totalTime","_args2","_callee2$","_context2","clearAndRenderMasthead","Date","getTime","commanderUtil","mapIncomingToOptions","concat","optionsSchema","execute","clearAndRenderResults","featureCode","abrupt","description","schema","attachOptions","stopLoading","clear","renderActionSummary","headline","uiUtil","renderActionMastHead","entity","SchemaEntityFactory","Entity","theProgram","fields","getNamedFields","generateOptionAliases","_ref2","field","option","hint","definition","defaultValue","undefined","SpruceError","fieldName","id","schemaId","originalError","friendlyMessage"],"sources":["../../src/features/FeatureCommandAttacher.ts"],"sourcesContent":["import { Schema, SchemaEntityFactory } from '@sprucelabs/schema'\nimport { CommanderStatic } from 'commander'\nimport SpruceError from '../errors/SpruceError'\nimport { GraphicsInterface } from '../types/cli.types'\nimport commanderUtil from '../utilities/commander.utility'\nimport uiUtil from '../utilities/ui.utility'\nimport AbstractFeature from './AbstractFeature'\nimport ActionExecuter from './ActionExecuter'\nimport featuresUtil from './feature.utilities'\nimport { FeatureAction, FeatureActionResponse } from './features.types'\n\nexport default class FeatureCommandAttacher {\n\tprivate program: CommanderStatic['program']\n\tprivate ui: GraphicsInterface\n\tprivate actionExecuter: ActionExecuter\n\n\tpublic constructor(options: {\n\t\tprogram: CommanderStatic['program']\n\t\tui: GraphicsInterface\n\t\tactionExecuter: ActionExecuter\n\t}) {\n\t\tconst { program, ui: term, actionExecuter } = options\n\n\t\tthis.program = program\n\t\tthis.ui = term\n\t\tthis.actionExecuter = actionExecuter\n\t}\n\n\tpublic async attachFeature(feature: AbstractFeature) {\n\t\tconst actionCodes = await feature.getAvailableActionCodes()\n\n\t\tfor (const actionCode of actionCodes) {\n\t\t\tthis.attachCode(actionCode, feature)\n\t\t}\n\t}\n\n\tprivate attachCode(code: string, feature: AbstractFeature) {\n\t\tlet commandStr = featuresUtil.generateCommand(feature.code, code)\n\t\tconst action = this.actionExecuter.Action(feature.code, code)\n\n\t\tconst aliases = action.commandAliases ? [...action.commandAliases] : []\n\n\t\tif (aliases.length > 0) {\n\t\t\tcommandStr = aliases.shift() as string\n\t\t}\n\n\t\tlet command = this.program.command(commandStr)\n\n\t\tif (aliases.length > 0) {\n\t\t\tcommand = command.aliases(aliases)\n\t\t}\n\n\t\tcommand = command.action(async (...args: any[]) => {\n\t\t\tthis.clearAndRenderMasthead(action)\n\t\t\tconst startTime = new Date().getTime()\n\n\t\t\tconst options = commanderUtil.mapIncomingToOptions(\n\t\t\t\t...args,\n\t\t\t\tfeature.optionsSchema ?? action.optionsSchema\n\t\t\t)\n\n\t\t\tconst results = await action.execute({\n\t\t\t\t...options,\n\t\t\t})\n\n\t\t\tconst endTime = new Date().getTime()\n\t\t\tconst totalTime = endTime - startTime\n\n\t\t\tthis.clearAndRenderResults({\n\t\t\t\tfeatureCode: feature.code,\n\t\t\t\tactionCode: code,\n\t\t\t\ttotalTime,\n\t\t\t\tresults,\n\t\t\t\taction,\n\t\t\t})\n\n\t\t\treturn results as any\n\t\t})\n\n\t\tconst description = action.optionsSchema?.description\n\n\t\tif (description) {\n\t\t\tcommand = command.description(description)\n\t\t}\n\n\t\tconst schema = action.optionsSchema\n\n\t\tif (schema) {\n\t\t\tthis.attachOptions(command, schema)\n\t\t}\n\t}\n\n\tprivate clearAndRenderResults(options: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t\ttotalTime: number\n\t\taction: FeatureAction\n\t\tresults: FeatureActionResponse\n\t}) {\n\t\tconst { featureCode, actionCode, results, totalTime, action } = options\n\n\t\tthis.ui.stopLoading()\n\t\tthis.ui.clear()\n\n\t\tthis.ui.renderActionSummary({\n\t\t\t//@ts-ignore\n\t\t\theadline: `${actionCode} finished!`,\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\ttotalTime,\n\t\t\taction,\n\t\t\t...results,\n\t\t})\n\t}\n\n\tprivate clearAndRenderMasthead(action: FeatureAction<Schema>) {\n\t\tuiUtil.renderActionMastHead(this.ui, action)\n\t}\n\n\tprivate attachOptions(command: CommanderStatic['program'], schema: Schema) {\n\t\tconst entity = SchemaEntityFactory.Entity(schema)\n\n\t\tlet theProgram = command\n\n\t\tconst fields = entity.getNamedFields()\n\t\tconst aliases = featuresUtil.generateOptionAliases(schema)\n\n\t\tfields.forEach(({ field, name }) => {\n\t\t\ttry {\n\t\t\t\ttheProgram = theProgram.option(\n\t\t\t\t\taliases[name],\n\t\t\t\t\tfield.hint,\n\t\t\t\t\tfield.definition.defaultValue\n\t\t\t\t\t\t? `${field.definition.defaultValue}`\n\t\t\t\t\t\t: undefined\n\t\t\t\t)\n\t\t\t} catch (err: any) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\tcode: 'FAILED_TO_ATTACH_COMMAND',\n\t\t\t\t\tfieldName: name,\n\t\t\t\t\tid: entity.schemaId,\n\t\t\t\t\toriginalError: err,\n\t\t\t\t\tfriendlyMessage: `Could not attach option ${aliases[name]} from ${entity.schemaId}.${name} to the command`,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\t}\n}\n\nexport interface OptionOverrides {\n\t[command: string]: Record<string, any>\n}\n\nexport interface BlockedCommands {\n\t[command: string]: string\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FeatureCommandAttacher.js","names":["_schema","require","_SpruceError","_interopRequireDefault","_commander","_ui","_feature","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createForOfIteratorHelper","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","i","F","s","n","done","value","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","FeatureCommandAttacher","exports","options","_classCallCheck2","program","term","ui","actionExecuter","_createClass2","key","_attachFeature","_asyncToGenerator2","_regenerator","mark","_callee","feature","actionCodes","_iterator","_step","actionCode","wrap","_callee$","_context","prev","getAvailableActionCodes","sent","attachCode","stop","attachFeature","_x","code","_this","_action$optionsSchema","commandStr","featuresUtil","generateCommand","action","Action","aliases","commandAliases","_toConsumableArray2","shift","command","_callee2","_feature$optionsSchem","startTime","_len","args","_key","results","endTime","totalTime","_args2","_callee2$","_context2","clearAndRenderMasthead","Date","getTime","commanderUtil","mapIncomingToOptions","concat","optionsSchema","execute","clearAndRenderResults","featureCode","abrupt","description","schema","attachOptions","stopLoading","clear","renderActionSummary","headline","uiUtil","renderActionMastHead","entity","SchemaEntityFactory","Entity","theProgram","fields","getNamedFields","generateOptionAliases","_ref2","field","option","hint","definition","defaultValue","undefined","SpruceError","fieldName","id","schemaId","originalError","friendlyMessage"],"sources":["../../src/features/FeatureCommandAttacher.ts"],"sourcesContent":["import { Schema, SchemaEntityFactory } from '@sprucelabs/schema'\nimport { CommanderStatic } from 'commander'\nimport SpruceError from '../errors/SpruceError'\nimport { GraphicsInterface } from '../types/cli.types'\nimport commanderUtil from '../utilities/commander.utility'\nimport uiUtil from '../utilities/ui.utility'\nimport AbstractFeature from './AbstractFeature'\nimport ActionExecuter from './ActionExecuter'\nimport featuresUtil from './feature.utilities'\nimport { FeatureAction, FeatureActionResponse } from './features.types'\n\nexport default class FeatureCommandAttacher {\n\tprivate program: CommanderStatic['program']\n\tprivate ui: GraphicsInterface\n\tprivate actionExecuter: ActionExecuter\n\n\tpublic constructor(options: {\n\t\tprogram: CommanderStatic['program']\n\t\tui: GraphicsInterface\n\t\tactionExecuter: ActionExecuter\n\t}) {\n\t\tconst { program, ui: term, actionExecuter } = options\n\n\t\tthis.program = program\n\t\tthis.ui = term\n\t\tthis.actionExecuter = actionExecuter\n\t}\n\n\tpublic async attachFeature(feature: AbstractFeature) {\n\t\tconst actionCodes = await feature.getAvailableActionCodes()\n\n\t\tfor (const actionCode of actionCodes) {\n\t\t\tthis.attachCode(actionCode, feature)\n\t\t}\n\t}\n\n\tprivate attachCode(code: string, feature: AbstractFeature) {\n\t\tlet commandStr = featuresUtil.generateCommand(feature.code, code)\n\t\tconst action = this.actionExecuter.Action(feature.code, code)\n\n\t\tconst aliases = action.commandAliases ? [...action.commandAliases] : []\n\n\t\tif (aliases.length > 0) {\n\t\t\tcommandStr = aliases.shift() as string\n\t\t}\n\n\t\tlet command = this.program.command(commandStr)\n\n\t\tif (aliases.length > 0) {\n\t\t\tcommand = command.aliases(aliases)\n\t\t}\n\n\t\tcommand = command.action(async (...args: any[]) => {\n\t\t\tthis.clearAndRenderMasthead(action)\n\t\t\tconst startTime = new Date().getTime()\n\n\t\t\tconst options = commanderUtil.mapIncomingToOptions(\n\t\t\t\t...args,\n\t\t\t\tfeature.optionsSchema ?? action.optionsSchema\n\t\t\t)\n\n\t\t\tconst results = await action.execute({\n\t\t\t\t...options,\n\t\t\t})\n\n\t\t\tconst endTime = new Date().getTime()\n\t\t\tconst totalTime = endTime - startTime\n\n\t\t\tthis.clearAndRenderResults({\n\t\t\t\tfeatureCode: feature.code,\n\t\t\t\tactionCode: code,\n\t\t\t\ttotalTime,\n\t\t\t\tresults,\n\t\t\t\taction,\n\t\t\t})\n\n\t\t\treturn results as any\n\t\t})\n\n\t\tconst description = action.optionsSchema?.description\n\n\t\tif (description) {\n\t\t\tcommand = command.description(description)\n\t\t}\n\n\t\tconst schema = action.optionsSchema\n\n\t\tif (schema) {\n\t\t\tthis.attachOptions(command, schema)\n\t\t}\n\t}\n\n\tprivate clearAndRenderResults(options: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t\ttotalTime: number\n\t\taction: FeatureAction\n\t\tresults: FeatureActionResponse\n\t}) {\n\t\tconst { featureCode, actionCode, results, totalTime, action } = options\n\n\t\tthis.ui.stopLoading()\n\t\tthis.ui.clear()\n\n\t\tthis.ui.renderActionSummary({\n\t\t\t//@ts-ignore\n\t\t\theadline: `${actionCode} finished!`,\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\ttotalTime,\n\t\t\taction,\n\t\t\t...results,\n\t\t})\n\t}\n\n\tprivate clearAndRenderMasthead(action: FeatureAction<Schema>) {\n\t\tuiUtil.renderActionMastHead(this.ui, action)\n\t}\n\n\tprivate attachOptions(command: CommanderStatic['program'], schema: Schema) {\n\t\tconst entity = SchemaEntityFactory.Entity(schema)\n\n\t\tlet theProgram = command\n\n\t\tconst fields = entity.getNamedFields()\n\t\tconst aliases = featuresUtil.generateOptionAliases(schema)\n\n\t\tfields.forEach(({ field, name }) => {\n\t\t\ttry {\n\t\t\t\ttheProgram = theProgram.option(\n\t\t\t\t\taliases[name],\n\t\t\t\t\tfield.hint,\n\t\t\t\t\tfield.definition.defaultValue\n\t\t\t\t\t\t? `${field.definition.defaultValue}`\n\t\t\t\t\t\t: undefined\n\t\t\t\t)\n\t\t\t} catch (err: any) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\tcode: 'FAILED_TO_ATTACH_COMMAND',\n\t\t\t\t\tfieldName: name,\n\t\t\t\t\tid: entity.schemaId,\n\t\t\t\t\toriginalError: err,\n\t\t\t\t\tfriendlyMessage: `Could not attach option ${aliases[name]} from ${entity.schemaId}.${name} to the command`,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\t}\n}\n\nexport interface OptionOverrides {\n\t[command: string]: Record<string, any>\n}\n\nexport interface BlockedCommands {\n\t[command: string]: string\n}\n"],"mappings":"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","ignoreList":[]}
@@ -35,7 +35,7 @@ var FeatureInstallerImpl = exports.FeatureInstallerImpl = /*#__PURE__*/function
35
35
  this.cwd = cwd;
36
36
  this.serviceFactory = serviceFactory;
37
37
  }
38
- (0, _createClass2["default"])(FeatureInstallerImpl, [{
38
+ return (0, _createClass2["default"])(FeatureInstallerImpl, [{
39
39
  key: "isInstalled",
40
40
  value: function () {
41
41
  var _isInstalled = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(code) {
@@ -682,7 +682,6 @@ var FeatureInstallerImpl = exports.FeatureInstallerImpl = /*#__PURE__*/function
682
682
  return getInstalledFeatures;
683
683
  }()
684
684
  }]);
685
- return FeatureInstallerImpl;
686
685
  }();
687
686
  (0, _defineProperty2["default"])(FeatureInstallerImpl, "startInFlightIntertainmentHandler", void 0);
688
687
  (0, _defineProperty2["default"])(FeatureInstallerImpl, "stopInFlightIntertainmentHandler", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureInstaller.js","names":["_schema","require","_lodash","_merge","_interopRequireDefault","_SpruceError","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","ownKeys","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","FeatureInstallerImpl","exports","cwd","serviceFactory","_classCallCheck2","_createClass2","key","_isInstalled","_asyncToGenerator2","_regenerator","mark","_callee","code","feature","wrap","_callee$","_context","prev","getFeature","isInstalled","abrupt","Service","isMarkedAsInstalled","stop","_x3","markAsSkippedThisRun","isMarkedAsSkipped","featuresMarkedAsSkippedThisRun","markAsPermanentlySkipped","indexOf","isMarkedAsPermanentlySkipped","mapFeature","featureMap","SpruceError","featureCode","_areInstalled","_callee2","codes","_this","results","result","_callee2$","_context2","Promise","all","map","sent","areInstalled","_x4","getFeatureDependencies","deps","getFeatureDependenciesIncludingSelf","isRequired","sortFeatures","featureDependency","trackedFeatures","undefined","features","isDependencyInTracker","dependencies","dependency","x","dependencyDependencies","_toConsumableArray2","find","_install","_callee3","options","_this2","_options$installFeatu","installFeatureDependencies","didUpdateHandler","shouldAllowEntertainment","dependenciesToInstall","_didUpdateHandler","_code","_isInstalled2","_didUpdateHandler2","_loop","pendingResults","_callee3$","_context4","startInFlightIntertainmentHandler","handler","pendingFeatureInstalls","concat","uniq","_dependenciesToInstal","_options$features$fin","_didUpdateHandler3","installOptions","installFeature","installResults","_loop$","_context3","isInstalledOrPendingInstall","merge","delegateYield","installAllPending","stopInFlightIntertainmentHandler","install","_x5","_installFeature2","_callee4","_beforeInstallResults","_installFeature$optio","beforeInstallResults","packagesInstalled","files","_callee4$","_context5","optionsSchema","validateSchemaValues","beforePackageInstall","queueInstallPackageDependenciesWithoutEntertainment","afterPackageInstalls","featuresToMarkAsInstalled","_x6","_x7","_installPackageDependencies","_callee5","_callee5$","_context6","installPackageDependenciesForFeatures","installPackageDependencies","_x8","_x9","_installPackageDependenciesForFeatures","_callee6","_iterator","_step","_feature","_callee6$","_context7","t0","finish","_x10","_x11","_installAllPending","_callee7","pkgService","settings","_iterator2","_step2","_code2","_iterator3","_step3","_feature2","afterInstallResults","_callee7$","_context8","packagesToInstall","devPackagesToInstall","isDev","markAsInstalled","afterPackageInstall","_x12","_queueInstallPackageDependenciesWithoutEntertainment","_callee8","_feature$packageDepen","_this3","_callee8$","_context9","packageDependencies","pkg","packageName","buildPackageName","getFeatureNameAndDesc","_x13","_x14","nameReadable","description","featureDependencies","_this4","sort","a","b","aFeature","bFeature","aDependsOnB","d","bDependsOnA","installOrderWeight","_Service","_x","_x2","type","getOptionsForFeature","getAllCodes","dep","_getInstalledFeatures","_callee10","_this5","installed","_callee10$","_context11","_ref","_callee9","_callee9$","_context10","_x15","getInstalledFeatures"],"sources":["../../src/features/FeatureInstaller.ts"],"sourcesContent":["import { validateSchemaValues } from '@sprucelabs/schema'\nimport { uniq } from 'lodash'\nimport merge from 'lodash/merge'\nimport SpruceError from '../errors/SpruceError'\nimport ServiceFactory, {\n\tService,\n\tServiceProvider,\n\tServiceMap,\n} from '../services/ServiceFactory'\nimport { InternalUpdateHandler, NpmPackage } from '../types/cli.types'\nimport AbstractFeature, { FeatureDependency } from './AbstractFeature'\nimport {\n\tInstallFeatureOptions,\n\tFeatureInstallResponse,\n\tFeatureCode,\n\tInstallFeature,\n\tFeatureMap,\n} from './features.types'\n\nexport class FeatureInstallerImpl implements ServiceProvider, FeatureInstaller {\n\tpublic cwd: string\n\n\tprivate featureMap: Partial<FeatureMap> = {}\n\tprivate serviceFactory: ServiceFactory\n\tprivate featuresMarkedAsSkippedThisRun: FeatureCode[] = []\n\tpublic static startInFlightIntertainmentHandler?: (\n\t\tdidUpdateHandler: (handler: (message: string) => void) => void\n\t) => void\n\tpublic static stopInFlightIntertainmentHandler?: () => void\n\tprivate packagesToInstall: string[] = []\n\tprivate devPackagesToInstall: string[] = []\n\tprivate featuresToMarkAsInstalled: string[] = []\n\tprivate afterPackageInstalls: InstallFeature[] = []\n\tprivate pendingFeatureInstalls: Record<string, boolean> = {}\n\n\tpublic constructor(cwd: string, serviceFactory: ServiceFactory) {\n\t\tthis.cwd = cwd\n\t\tthis.serviceFactory = serviceFactory\n\t}\n\n\tpublic async isInstalled(code: FeatureCode): Promise<boolean> {\n\t\tconst feature = this.getFeature(code)\n\n\t\tif (feature.isInstalled) {\n\t\t\treturn feature.isInstalled()\n\t\t}\n\n\t\treturn this.Service('settings').isMarkedAsInstalled(code)\n\t}\n\n\tpublic markAsSkippedThisRun(code: FeatureCode) {\n\t\tif (!this.isMarkedAsSkipped(code)) {\n\t\t\tthis.featuresMarkedAsSkippedThisRun.push(code)\n\t\t}\n\t}\n\tpublic markAsPermanentlySkipped(code: FeatureCode) {\n\t\tif (!this.isMarkedAsSkipped(code)) {\n\t\t\tthis.Service('settings').markAsPermanentlySkipped(code)\n\t\t}\n\t}\n\n\tpublic isMarkedAsSkipped(code: FeatureCode) {\n\t\treturn (\n\t\t\tthis.featuresMarkedAsSkippedThisRun.indexOf(code) > -1 ||\n\t\t\tthis.Service('settings').isMarkedAsPermanentlySkipped(code)\n\t\t)\n\t}\n\n\tpublic mapFeature<C extends FeatureCode>(code: C, feature: FeatureMap[C]) {\n\t\tthis.featureMap[code] = feature\n\t}\n\n\tpublic getFeature<C extends FeatureCode>(code: C): FeatureMap[C] {\n\t\tconst feature = this.featureMap[code]\n\t\tif (!feature) {\n\t\t\tthrow new SpruceError({ code: 'INVALID_FEATURE_CODE', featureCode: code })\n\t\t}\n\n\t\treturn feature as FeatureMap[C]\n\t}\n\n\tpublic async areInstalled(codes: FeatureCode[]) {\n\t\tconst results = await Promise.all(\n\t\t\tcodes.map((f) => {\n\t\t\t\treturn this.isInstalled(f)\n\t\t\t})\n\t\t)\n\n\t\tfor (let i = 0; i < results.length; i += 1) {\n\t\t\tconst result = results[i]\n\t\t\tif (!result) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\n\t\treturn true\n\t}\n\n\tpublic getFeatureDependencies<C extends FeatureCode>(\n\t\tfeatureCode: C\n\t\t// trackedFeatures: FeatureDependency[] = []\n\t): FeatureDependency[] {\n\t\tlet deps = this.getFeatureDependenciesIncludingSelf(\n\t\t\t{ code: featureCode, isRequired: true },\n\t\t\t[] // trackedFeatures\n\t\t).filter((f) => f.code !== featureCode)\n\n\t\tdeps = this.sortFeatures(deps)\n\n\t\treturn deps\n\t}\n\n\tprivate getFeatureDependenciesIncludingSelf(\n\t\tfeatureDependency: FeatureDependency,\n\t\ttrackedFeatures: FeatureDependency[] = []\n\t): FeatureDependency[] {\n\t\tconst features: FeatureDependency[] = []\n\n\t\tif (!this.isDependencyInTracker(trackedFeatures, featureDependency)) {\n\t\t\tfeatures.push(featureDependency)\n\t\t\ttrackedFeatures.push(featureDependency)\n\t\t}\n\n\t\tconst feature = this.getFeature(featureDependency.code)\n\t\tconst dependencies = feature.dependencies\n\n\t\tfor (let i = 0; i < dependencies.length; i += 1) {\n\t\t\tconst dependency = dependencies[i]\n\t\t\tif (!this.isDependencyInTracker(trackedFeatures, dependency)) {\n\t\t\t\tfeatures.push(dependency)\n\t\t\t\ttrackedFeatures.push(dependency)\n\t\t\t}\n\t\t}\n\n\t\tfor (let x = 0; x < dependencies.length; x += 1) {\n\t\t\tconst dependency = dependencies[x]\n\t\t\tlet dependencyDependencies = this.getFeatureDependenciesIncludingSelf(\n\t\t\t\tdependency,\n\t\t\t\ttrackedFeatures\n\t\t\t)\n\t\t\tif (!dependency.isRequired) {\n\t\t\t\tdependencyDependencies = dependencyDependencies.map((f) => ({\n\t\t\t\t\t...f,\n\t\t\t\t\tisRequired: false,\n\t\t\t\t}))\n\t\t\t}\n\n\t\t\tfeatures.push(...dependencyDependencies)\n\t\t}\n\n\t\treturn features\n\t}\n\n\tprivate isDependencyInTracker(\n\t\ttrackedFeatures: FeatureDependency[],\n\t\tdependency: FeatureDependency\n\t) {\n\t\treturn !!trackedFeatures.find((f) => f.code === dependency.code)\n\t}\n\n\tpublic async install(\n\t\toptions: InstallFeatureOptions\n\t): Promise<FeatureInstallResponse> {\n\t\tlet {\n\t\t\tfeatures,\n\t\t\tinstallFeatureDependencies = true,\n\t\t\tdidUpdateHandler,\n\t\t} = options\n\n\t\tconst shouldAllowEntertainment = !!features.find((f) => f.code === 'skill')\n\n\t\tif (\n\t\t\tFeatureInstallerImpl.startInFlightIntertainmentHandler &&\n\t\t\tshouldAllowEntertainment\n\t\t) {\n\t\t\tFeatureInstallerImpl.startInFlightIntertainmentHandler(\n\t\t\t\t(handler: InternalUpdateHandler) => {\n\t\t\t\t\tdidUpdateHandler = handler\n\t\t\t\t}\n\t\t\t)\n\t\t}\n\n\t\tthis.pendingFeatureInstalls = {}\n\n\t\tlet results: FeatureInstallResponse = {}\n\n\t\tlet dependenciesToInstall: FeatureDependency[] = []\n\n\t\tfor (let i = 0; i < features.length; i += 1) {\n\t\t\tconst f = features[i]\n\t\t\tconst code = f.code\n\n\t\t\tdidUpdateHandler?.(`Checking if ${code} is installed...`)\n\n\t\t\tconst isInstalled = await this.isInstalled(code)\n\n\t\t\tif (!isInstalled && installFeatureDependencies) {\n\t\t\t\tdidUpdateHandler?.(`It is not, checking dependencies...`)\n\t\t\t\tdependenciesToInstall = dependenciesToInstall.concat(\n\t\t\t\t\tthis.getFeatureDependenciesIncludingSelf({ code, isRequired: true })\n\t\t\t\t)\n\t\t\t} else if (!isInstalled) {\n\t\t\t\tdependenciesToInstall.push({ code, isRequired: true })\n\t\t\t}\n\t\t}\n\n\t\tdependenciesToInstall = uniq(dependenciesToInstall)\n\t\tdependenciesToInstall = this.sortFeatures(dependenciesToInstall)\n\n\t\tfor (let x = 0; x < dependenciesToInstall.length; x += 1) {\n\t\t\tconst { code, isRequired } = dependenciesToInstall[x]\n\n\t\t\tconst isInstalled = await this.isInstalledOrPendingInstall(code)\n\n\t\t\tif (!isInstalled && isRequired) {\n\t\t\t\tconst installOptions = //@ts-ignore\n\t\t\t\t\toptions.features.find((f) => f.code === code)?.options\n\n\t\t\t\tconst installFeature = {\n\t\t\t\t\tcode,\n\t\t\t\t\toptions: installOptions,\n\t\t\t\t} as InstallFeature\n\n\t\t\t\tdidUpdateHandler?.(`Installing the ${installFeature.code} feature....`)\n\n\t\t\t\tconst installResults = await this.installFeature(\n\t\t\t\t\tinstallFeature,\n\t\t\t\t\tdidUpdateHandler\n\t\t\t\t)\n\n\t\t\t\tresults = merge(results, installResults)\n\t\t\t}\n\t\t}\n\n\t\tconst pendingResults = await this.installAllPending(didUpdateHandler)\n\t\tresults = merge(results, pendingResults)\n\n\t\tif (\n\t\t\tFeatureInstallerImpl.stopInFlightIntertainmentHandler &&\n\t\t\tshouldAllowEntertainment\n\t\t) {\n\t\t\tFeatureInstallerImpl.stopInFlightIntertainmentHandler()\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate isInstalledOrPendingInstall(code: string) {\n\t\treturn this.pendingFeatureInstalls[code] || this.isInstalled(code as any)\n\t}\n\n\tprivate async installFeature(\n\t\tinstallFeature: InstallFeature,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t): Promise<FeatureInstallResponse> {\n\t\tthis.pendingFeatureInstalls[installFeature.code] = true\n\n\t\tconst feature = this.getFeature(installFeature.code) as AbstractFeature\n\n\t\tif (feature.optionsSchema) {\n\t\t\t//@ts-ignore\n\t\t\tvalidateSchemaValues(feature.optionsSchema, installFeature.options ?? {})\n\t\t}\n\n\t\tdidUpdateHandler?.(`Running before package install hook...`)\n\t\tconst beforeInstallResults = await feature.beforePackageInstall(\n\t\t\t//@ts-ignore\n\t\t\tinstallFeature.options\n\t\t)\n\n\t\tif (beforeInstallResults.cwd) {\n\t\t\tthis.cwd = beforeInstallResults.cwd\n\t\t}\n\n\t\tdidUpdateHandler?.(`Installing package dependencies...`)\n\t\tconst packagesInstalled =\n\t\t\tawait this.queueInstallPackageDependenciesWithoutEntertainment(\n\t\t\t\tfeature,\n\t\t\t\tdidUpdateHandler\n\t\t\t)\n\n\t\tdidUpdateHandler?.(`Running after package install hook...`)\n\n\t\tthis.afterPackageInstalls.push(installFeature)\n\n\t\tif (!feature.isInstalled) {\n\t\t\tthis.featuresToMarkAsInstalled.push(feature.code)\n\t\t}\n\n\t\tconst files = [...(beforeInstallResults.files ?? [])]\n\n\t\treturn {\n\t\t\tfiles: files ?? undefined,\n\t\t\tpackagesInstalled,\n\t\t}\n\t}\n\n\tpublic async installPackageDependencies(\n\t\tfeature: AbstractFeature,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t) {\n\t\treturn this.installPackageDependenciesForFeatures(\n\t\t\t[feature],\n\t\t\tdidUpdateHandler\n\t\t)\n\t}\n\n\tpublic async installPackageDependenciesForFeatures(\n\t\tfeatures: AbstractFeature[],\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t) {\n\t\tif (FeatureInstallerImpl.startInFlightIntertainmentHandler) {\n\t\t\tFeatureInstallerImpl.startInFlightIntertainmentHandler(\n\t\t\t\t(handler: InternalUpdateHandler) => {\n\t\t\t\t\tdidUpdateHandler = handler\n\t\t\t\t}\n\t\t\t)\n\t\t}\n\n\t\tfor (const feature of features) {\n\t\t\tawait this.queueInstallPackageDependenciesWithoutEntertainment(\n\t\t\t\tfeature,\n\t\t\t\tdidUpdateHandler\n\t\t\t)\n\t\t}\n\n\t\tawait this.installAllPending(didUpdateHandler)\n\n\t\tif (FeatureInstallerImpl.stopInFlightIntertainmentHandler) {\n\t\t\tFeatureInstallerImpl.stopInFlightIntertainmentHandler()\n\t\t}\n\t}\n\n\tprivate async installAllPending(\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t): Promise<FeatureInstallResponse> {\n\t\tconst pkgService = this.Service('pkg')\n\n\t\tif (this.packagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Installing ${this.packagesToInstall.length} node module${\n\t\t\t\t\tthis.packagesToInstall.length === 1 ? '' : 's'\n\t\t\t\t}. Please be patient.`\n\t\t\t)\n\n\t\t\tawait pkgService.install(this.packagesToInstall, {})\n\t\t}\n\n\t\tif (this.devPackagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Now installing ${this.devPackagesToInstall.length} DEV node module${\n\t\t\t\t\tthis.devPackagesToInstall.length === 1 ? '' : 's'\n\t\t\t\t}. Please be patient.`\n\t\t\t)\n\n\t\t\tawait pkgService.install(this.devPackagesToInstall, {\n\t\t\t\tisDev: true,\n\t\t\t})\n\t\t}\n\n\t\tthis.packagesToInstall = []\n\t\tthis.devPackagesToInstall = []\n\n\t\tconst settings = this.Service('settings')\n\n\t\tfor (const code of this.featuresToMarkAsInstalled) {\n\t\t\tsettings.markAsInstalled(code)\n\t\t}\n\n\t\tthis.featuresToMarkAsInstalled = []\n\n\t\tlet results: FeatureInstallResponse = {}\n\n\t\tfor (const installFeature of this.afterPackageInstalls) {\n\t\t\tconst feature = this.getFeature(installFeature.code)\n\t\t\tconst afterInstallResults = await feature.afterPackageInstall(\n\t\t\t\t//@ts-ignore\n\t\t\t\tinstallFeature.options\n\t\t\t)\n\n\t\t\tresults = merge(results, afterInstallResults)\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async queueInstallPackageDependenciesWithoutEntertainment(\n\t\tfeature: AbstractFeature,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t) {\n\t\tconst packagesInstalled: NpmPackage[] = []\n\t\tconst pkgService = this.Service('pkg')\n\n\t\tfeature.packageDependencies?.forEach((pkg) => {\n\t\t\tconst packageName = pkgService.buildPackageName(pkg)\n\n\t\t\tpackagesInstalled.push(pkg)\n\n\t\t\tdidUpdateHandler?.(`Checking node dependency: ${pkg.name}`)\n\n\t\t\tif (pkg.isDev && this.devPackagesToInstall.indexOf(packageName) === -1) {\n\t\t\t\tthis.devPackagesToInstall.push(packageName)\n\t\t\t} else if (\n\t\t\t\t!pkg.isDev &&\n\t\t\t\tthis.packagesToInstall.indexOf(packageName) === -1\n\t\t\t) {\n\t\t\t\tthis.packagesToInstall.push(packageName)\n\t\t\t}\n\t\t})\n\n\t\tif (this.packagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Queueing install of ${this.packagesToInstall.length} node dependenc${\n\t\t\t\t\tthis.packagesToInstall.length === 1\n\t\t\t\t\t\t? 'y.'\n\t\t\t\t\t\t: 'ies for ' + this.getFeatureNameAndDesc(feature) + '...'\n\t\t\t\t}.`\n\t\t\t)\n\t\t}\n\n\t\tif (this.devPackagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Queueing install of ${\n\t\t\t\t\tthis.devPackagesToInstall.length\n\t\t\t\t} DEV node dependenc${\n\t\t\t\t\tthis.devPackagesToInstall.length === 1\n\t\t\t\t\t\t? 'y.'\n\t\t\t\t\t\t: 'ies for ' + this.getFeatureNameAndDesc(feature) + '. 🤘'\n\t\t\t\t}.`\n\t\t\t)\n\t\t}\n\n\t\treturn packagesInstalled\n\t}\n\n\tprivate getFeatureNameAndDesc(feature: AbstractFeature) {\n\t\treturn `${feature.nameReadable}${\n\t\t\tfeature.description ? ' (' + feature.description + ')' : ''\n\t\t}`\n\t}\n\n\tprivate sortFeatures(\n\t\tfeatureDependencies: FeatureDependency[]\n\t): FeatureDependency[] {\n\t\treturn [...featureDependencies].sort((a, b) => {\n\t\t\tconst aFeature = this.getFeature(a.code)\n\t\t\tconst bFeature = this.getFeature(b.code)\n\n\t\t\tconst aDependsOnB = aFeature.dependencies.find((d) => d.code === b.code)\n\t\t\tconst bDependsOnA = bFeature.dependencies.find((d) => d.code === a.code)\n\n\t\t\tif (\n\t\t\t\taDependsOnB ||\n\t\t\t\taFeature.installOrderWeight < bFeature.installOrderWeight\n\t\t\t) {\n\t\t\t\treturn 1\n\t\t\t} else if (\n\t\t\t\tbDependsOnA ||\n\t\t\t\taFeature.installOrderWeight > bFeature.installOrderWeight\n\t\t\t) {\n\t\t\t\treturn -1\n\t\t\t}\n\t\t\treturn 0\n\t\t})\n\t}\n\n\tpublic Service<S extends Service>(type: S, cwd?: string): ServiceMap[S] {\n\t\treturn this.serviceFactory.Service(cwd ?? this.cwd, type)\n\t}\n\n\tpublic getOptionsForFeature(code: FeatureCode) {\n\t\treturn this.getFeature(code).optionsSchema\n\t}\n\n\tpublic getAllCodes(): FeatureCode[] {\n\t\tconst codes = Object.keys(this.featureMap) as FeatureCode[]\n\t\treturn this.sortFeatures(\n\t\t\tcodes.map((code) => ({ code, isRequired: true }))\n\t\t).map((dep) => dep.code)\n\t}\n\n\tpublic async getInstalledFeatures() {\n\t\tconst installed = await Promise.all(\n\t\t\tthis.getAllCodes().map(async (code) => {\n\t\t\t\tconst isInstalled = await this.isInstalled(code)\n\t\t\t\tif (isInstalled) {\n\t\t\t\t\treturn this.getFeature(code)\n\t\t\t\t}\n\n\t\t\t\treturn false\n\t\t\t})\n\t\t)\n\n\t\treturn installed.filter((f) => !!f) as FeatureMap[keyof FeatureMap][]\n\t}\n}\n\nexport default interface FeatureInstaller {\n\tisInstalled(code: FeatureCode): Promise<boolean>\n\tmarkAsSkippedThisRun(code: FeatureCode): void\n\tmarkAsPermanentlySkipped(code: FeatureCode): void\n\tisMarkedAsSkipped(code: FeatureCode): boolean\n\tgetFeature<C extends FeatureCode>(code: C): FeatureMap[C]\n\tareInstalled(codes: FeatureCode[]): Promise<boolean>\n\tinstall(options: InstallFeatureOptions): Promise<FeatureInstallResponse>\n\tgetInstalledFeatures(): Promise<FeatureMap[keyof FeatureMap][]>\n\tgetFeatureDependencies<C extends FeatureCode>(\n\t\tfeatureCode: C\n\t): FeatureDependency[]\n\tgetAllCodes(): FeatureCode[]\n\tmapFeature<C extends FeatureCode>(code: C, feature: FeatureMap[C]): void\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FeatureInstaller.js","names":["_schema","require","_lodash","_merge","_interopRequireDefault","_SpruceError","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","ownKeys","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","FeatureInstallerImpl","exports","cwd","serviceFactory","_classCallCheck2","_createClass2","key","_isInstalled","_asyncToGenerator2","_regenerator","mark","_callee","code","feature","wrap","_callee$","_context","prev","getFeature","isInstalled","abrupt","Service","isMarkedAsInstalled","stop","_x3","markAsSkippedThisRun","isMarkedAsSkipped","featuresMarkedAsSkippedThisRun","markAsPermanentlySkipped","indexOf","isMarkedAsPermanentlySkipped","mapFeature","featureMap","SpruceError","featureCode","_areInstalled","_callee2","codes","_this","results","result","_callee2$","_context2","Promise","all","map","sent","areInstalled","_x4","getFeatureDependencies","deps","getFeatureDependenciesIncludingSelf","isRequired","sortFeatures","featureDependency","trackedFeatures","undefined","features","isDependencyInTracker","dependencies","dependency","x","dependencyDependencies","_toConsumableArray2","find","_install","_callee3","options","_this2","_options$installFeatu","installFeatureDependencies","didUpdateHandler","shouldAllowEntertainment","dependenciesToInstall","_didUpdateHandler","_code","_isInstalled2","_didUpdateHandler2","_loop","pendingResults","_callee3$","_context4","startInFlightIntertainmentHandler","handler","pendingFeatureInstalls","concat","uniq","_dependenciesToInstal","_options$features$fin","_didUpdateHandler3","installOptions","installFeature","installResults","_loop$","_context3","isInstalledOrPendingInstall","merge","delegateYield","installAllPending","stopInFlightIntertainmentHandler","install","_x5","_installFeature2","_callee4","_beforeInstallResults","_installFeature$optio","beforeInstallResults","packagesInstalled","files","_callee4$","_context5","optionsSchema","validateSchemaValues","beforePackageInstall","queueInstallPackageDependenciesWithoutEntertainment","afterPackageInstalls","featuresToMarkAsInstalled","_x6","_x7","_installPackageDependencies","_callee5","_callee5$","_context6","installPackageDependenciesForFeatures","installPackageDependencies","_x8","_x9","_installPackageDependenciesForFeatures","_callee6","_iterator","_step","_feature","_callee6$","_context7","t0","finish","_x10","_x11","_installAllPending","_callee7","pkgService","settings","_iterator2","_step2","_code2","_iterator3","_step3","_feature2","afterInstallResults","_callee7$","_context8","packagesToInstall","devPackagesToInstall","isDev","markAsInstalled","afterPackageInstall","_x12","_queueInstallPackageDependenciesWithoutEntertainment","_callee8","_feature$packageDepen","_this3","_callee8$","_context9","packageDependencies","pkg","packageName","buildPackageName","getFeatureNameAndDesc","_x13","_x14","nameReadable","description","featureDependencies","_this4","sort","a","b","aFeature","bFeature","aDependsOnB","d","bDependsOnA","installOrderWeight","_Service","_x","_x2","type","getOptionsForFeature","getAllCodes","dep","_getInstalledFeatures","_callee10","_this5","installed","_callee10$","_context11","_ref","_callee9","_callee9$","_context10","_x15","getInstalledFeatures"],"sources":["../../src/features/FeatureInstaller.ts"],"sourcesContent":["import { validateSchemaValues } from '@sprucelabs/schema'\nimport { uniq } from 'lodash'\nimport merge from 'lodash/merge'\nimport SpruceError from '../errors/SpruceError'\nimport ServiceFactory, {\n\tService,\n\tServiceProvider,\n\tServiceMap,\n} from '../services/ServiceFactory'\nimport { InternalUpdateHandler, NpmPackage } from '../types/cli.types'\nimport AbstractFeature, { FeatureDependency } from './AbstractFeature'\nimport {\n\tInstallFeatureOptions,\n\tFeatureInstallResponse,\n\tFeatureCode,\n\tInstallFeature,\n\tFeatureMap,\n} from './features.types'\n\nexport class FeatureInstallerImpl implements ServiceProvider, FeatureInstaller {\n\tpublic cwd: string\n\n\tprivate featureMap: Partial<FeatureMap> = {}\n\tprivate serviceFactory: ServiceFactory\n\tprivate featuresMarkedAsSkippedThisRun: FeatureCode[] = []\n\tpublic static startInFlightIntertainmentHandler?: (\n\t\tdidUpdateHandler: (handler: (message: string) => void) => void\n\t) => void\n\tpublic static stopInFlightIntertainmentHandler?: () => void\n\tprivate packagesToInstall: string[] = []\n\tprivate devPackagesToInstall: string[] = []\n\tprivate featuresToMarkAsInstalled: string[] = []\n\tprivate afterPackageInstalls: InstallFeature[] = []\n\tprivate pendingFeatureInstalls: Record<string, boolean> = {}\n\n\tpublic constructor(cwd: string, serviceFactory: ServiceFactory) {\n\t\tthis.cwd = cwd\n\t\tthis.serviceFactory = serviceFactory\n\t}\n\n\tpublic async isInstalled(code: FeatureCode): Promise<boolean> {\n\t\tconst feature = this.getFeature(code)\n\n\t\tif (feature.isInstalled) {\n\t\t\treturn feature.isInstalled()\n\t\t}\n\n\t\treturn this.Service('settings').isMarkedAsInstalled(code)\n\t}\n\n\tpublic markAsSkippedThisRun(code: FeatureCode) {\n\t\tif (!this.isMarkedAsSkipped(code)) {\n\t\t\tthis.featuresMarkedAsSkippedThisRun.push(code)\n\t\t}\n\t}\n\tpublic markAsPermanentlySkipped(code: FeatureCode) {\n\t\tif (!this.isMarkedAsSkipped(code)) {\n\t\t\tthis.Service('settings').markAsPermanentlySkipped(code)\n\t\t}\n\t}\n\n\tpublic isMarkedAsSkipped(code: FeatureCode) {\n\t\treturn (\n\t\t\tthis.featuresMarkedAsSkippedThisRun.indexOf(code) > -1 ||\n\t\t\tthis.Service('settings').isMarkedAsPermanentlySkipped(code)\n\t\t)\n\t}\n\n\tpublic mapFeature<C extends FeatureCode>(code: C, feature: FeatureMap[C]) {\n\t\tthis.featureMap[code] = feature\n\t}\n\n\tpublic getFeature<C extends FeatureCode>(code: C): FeatureMap[C] {\n\t\tconst feature = this.featureMap[code]\n\t\tif (!feature) {\n\t\t\tthrow new SpruceError({ code: 'INVALID_FEATURE_CODE', featureCode: code })\n\t\t}\n\n\t\treturn feature as FeatureMap[C]\n\t}\n\n\tpublic async areInstalled(codes: FeatureCode[]) {\n\t\tconst results = await Promise.all(\n\t\t\tcodes.map((f) => {\n\t\t\t\treturn this.isInstalled(f)\n\t\t\t})\n\t\t)\n\n\t\tfor (let i = 0; i < results.length; i += 1) {\n\t\t\tconst result = results[i]\n\t\t\tif (!result) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\n\t\treturn true\n\t}\n\n\tpublic getFeatureDependencies<C extends FeatureCode>(\n\t\tfeatureCode: C\n\t\t// trackedFeatures: FeatureDependency[] = []\n\t): FeatureDependency[] {\n\t\tlet deps = this.getFeatureDependenciesIncludingSelf(\n\t\t\t{ code: featureCode, isRequired: true },\n\t\t\t[] // trackedFeatures\n\t\t).filter((f) => f.code !== featureCode)\n\n\t\tdeps = this.sortFeatures(deps)\n\n\t\treturn deps\n\t}\n\n\tprivate getFeatureDependenciesIncludingSelf(\n\t\tfeatureDependency: FeatureDependency,\n\t\ttrackedFeatures: FeatureDependency[] = []\n\t): FeatureDependency[] {\n\t\tconst features: FeatureDependency[] = []\n\n\t\tif (!this.isDependencyInTracker(trackedFeatures, featureDependency)) {\n\t\t\tfeatures.push(featureDependency)\n\t\t\ttrackedFeatures.push(featureDependency)\n\t\t}\n\n\t\tconst feature = this.getFeature(featureDependency.code)\n\t\tconst dependencies = feature.dependencies\n\n\t\tfor (let i = 0; i < dependencies.length; i += 1) {\n\t\t\tconst dependency = dependencies[i]\n\t\t\tif (!this.isDependencyInTracker(trackedFeatures, dependency)) {\n\t\t\t\tfeatures.push(dependency)\n\t\t\t\ttrackedFeatures.push(dependency)\n\t\t\t}\n\t\t}\n\n\t\tfor (let x = 0; x < dependencies.length; x += 1) {\n\t\t\tconst dependency = dependencies[x]\n\t\t\tlet dependencyDependencies = this.getFeatureDependenciesIncludingSelf(\n\t\t\t\tdependency,\n\t\t\t\ttrackedFeatures\n\t\t\t)\n\t\t\tif (!dependency.isRequired) {\n\t\t\t\tdependencyDependencies = dependencyDependencies.map((f) => ({\n\t\t\t\t\t...f,\n\t\t\t\t\tisRequired: false,\n\t\t\t\t}))\n\t\t\t}\n\n\t\t\tfeatures.push(...dependencyDependencies)\n\t\t}\n\n\t\treturn features\n\t}\n\n\tprivate isDependencyInTracker(\n\t\ttrackedFeatures: FeatureDependency[],\n\t\tdependency: FeatureDependency\n\t) {\n\t\treturn !!trackedFeatures.find((f) => f.code === dependency.code)\n\t}\n\n\tpublic async install(\n\t\toptions: InstallFeatureOptions\n\t): Promise<FeatureInstallResponse> {\n\t\tlet {\n\t\t\tfeatures,\n\t\t\tinstallFeatureDependencies = true,\n\t\t\tdidUpdateHandler,\n\t\t} = options\n\n\t\tconst shouldAllowEntertainment = !!features.find((f) => f.code === 'skill')\n\n\t\tif (\n\t\t\tFeatureInstallerImpl.startInFlightIntertainmentHandler &&\n\t\t\tshouldAllowEntertainment\n\t\t) {\n\t\t\tFeatureInstallerImpl.startInFlightIntertainmentHandler(\n\t\t\t\t(handler: InternalUpdateHandler) => {\n\t\t\t\t\tdidUpdateHandler = handler\n\t\t\t\t}\n\t\t\t)\n\t\t}\n\n\t\tthis.pendingFeatureInstalls = {}\n\n\t\tlet results: FeatureInstallResponse = {}\n\n\t\tlet dependenciesToInstall: FeatureDependency[] = []\n\n\t\tfor (let i = 0; i < features.length; i += 1) {\n\t\t\tconst f = features[i]\n\t\t\tconst code = f.code\n\n\t\t\tdidUpdateHandler?.(`Checking if ${code} is installed...`)\n\n\t\t\tconst isInstalled = await this.isInstalled(code)\n\n\t\t\tif (!isInstalled && installFeatureDependencies) {\n\t\t\t\tdidUpdateHandler?.(`It is not, checking dependencies...`)\n\t\t\t\tdependenciesToInstall = dependenciesToInstall.concat(\n\t\t\t\t\tthis.getFeatureDependenciesIncludingSelf({ code, isRequired: true })\n\t\t\t\t)\n\t\t\t} else if (!isInstalled) {\n\t\t\t\tdependenciesToInstall.push({ code, isRequired: true })\n\t\t\t}\n\t\t}\n\n\t\tdependenciesToInstall = uniq(dependenciesToInstall)\n\t\tdependenciesToInstall = this.sortFeatures(dependenciesToInstall)\n\n\t\tfor (let x = 0; x < dependenciesToInstall.length; x += 1) {\n\t\t\tconst { code, isRequired } = dependenciesToInstall[x]\n\n\t\t\tconst isInstalled = await this.isInstalledOrPendingInstall(code)\n\n\t\t\tif (!isInstalled && isRequired) {\n\t\t\t\tconst installOptions = //@ts-ignore\n\t\t\t\t\toptions.features.find((f) => f.code === code)?.options\n\n\t\t\t\tconst installFeature = {\n\t\t\t\t\tcode,\n\t\t\t\t\toptions: installOptions,\n\t\t\t\t} as InstallFeature\n\n\t\t\t\tdidUpdateHandler?.(`Installing the ${installFeature.code} feature....`)\n\n\t\t\t\tconst installResults = await this.installFeature(\n\t\t\t\t\tinstallFeature,\n\t\t\t\t\tdidUpdateHandler\n\t\t\t\t)\n\n\t\t\t\tresults = merge(results, installResults)\n\t\t\t}\n\t\t}\n\n\t\tconst pendingResults = await this.installAllPending(didUpdateHandler)\n\t\tresults = merge(results, pendingResults)\n\n\t\tif (\n\t\t\tFeatureInstallerImpl.stopInFlightIntertainmentHandler &&\n\t\t\tshouldAllowEntertainment\n\t\t) {\n\t\t\tFeatureInstallerImpl.stopInFlightIntertainmentHandler()\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate isInstalledOrPendingInstall(code: string) {\n\t\treturn this.pendingFeatureInstalls[code] || this.isInstalled(code as any)\n\t}\n\n\tprivate async installFeature(\n\t\tinstallFeature: InstallFeature,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t): Promise<FeatureInstallResponse> {\n\t\tthis.pendingFeatureInstalls[installFeature.code] = true\n\n\t\tconst feature = this.getFeature(installFeature.code) as AbstractFeature\n\n\t\tif (feature.optionsSchema) {\n\t\t\t//@ts-ignore\n\t\t\tvalidateSchemaValues(feature.optionsSchema, installFeature.options ?? {})\n\t\t}\n\n\t\tdidUpdateHandler?.(`Running before package install hook...`)\n\t\tconst beforeInstallResults = await feature.beforePackageInstall(\n\t\t\t//@ts-ignore\n\t\t\tinstallFeature.options\n\t\t)\n\n\t\tif (beforeInstallResults.cwd) {\n\t\t\tthis.cwd = beforeInstallResults.cwd\n\t\t}\n\n\t\tdidUpdateHandler?.(`Installing package dependencies...`)\n\t\tconst packagesInstalled =\n\t\t\tawait this.queueInstallPackageDependenciesWithoutEntertainment(\n\t\t\t\tfeature,\n\t\t\t\tdidUpdateHandler\n\t\t\t)\n\n\t\tdidUpdateHandler?.(`Running after package install hook...`)\n\n\t\tthis.afterPackageInstalls.push(installFeature)\n\n\t\tif (!feature.isInstalled) {\n\t\t\tthis.featuresToMarkAsInstalled.push(feature.code)\n\t\t}\n\n\t\tconst files = [...(beforeInstallResults.files ?? [])]\n\n\t\treturn {\n\t\t\tfiles: files ?? undefined,\n\t\t\tpackagesInstalled,\n\t\t}\n\t}\n\n\tpublic async installPackageDependencies(\n\t\tfeature: AbstractFeature,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t) {\n\t\treturn this.installPackageDependenciesForFeatures(\n\t\t\t[feature],\n\t\t\tdidUpdateHandler\n\t\t)\n\t}\n\n\tpublic async installPackageDependenciesForFeatures(\n\t\tfeatures: AbstractFeature[],\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t) {\n\t\tif (FeatureInstallerImpl.startInFlightIntertainmentHandler) {\n\t\t\tFeatureInstallerImpl.startInFlightIntertainmentHandler(\n\t\t\t\t(handler: InternalUpdateHandler) => {\n\t\t\t\t\tdidUpdateHandler = handler\n\t\t\t\t}\n\t\t\t)\n\t\t}\n\n\t\tfor (const feature of features) {\n\t\t\tawait this.queueInstallPackageDependenciesWithoutEntertainment(\n\t\t\t\tfeature,\n\t\t\t\tdidUpdateHandler\n\t\t\t)\n\t\t}\n\n\t\tawait this.installAllPending(didUpdateHandler)\n\n\t\tif (FeatureInstallerImpl.stopInFlightIntertainmentHandler) {\n\t\t\tFeatureInstallerImpl.stopInFlightIntertainmentHandler()\n\t\t}\n\t}\n\n\tprivate async installAllPending(\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t): Promise<FeatureInstallResponse> {\n\t\tconst pkgService = this.Service('pkg')\n\n\t\tif (this.packagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Installing ${this.packagesToInstall.length} node module${\n\t\t\t\t\tthis.packagesToInstall.length === 1 ? '' : 's'\n\t\t\t\t}. Please be patient.`\n\t\t\t)\n\n\t\t\tawait pkgService.install(this.packagesToInstall, {})\n\t\t}\n\n\t\tif (this.devPackagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Now installing ${this.devPackagesToInstall.length} DEV node module${\n\t\t\t\t\tthis.devPackagesToInstall.length === 1 ? '' : 's'\n\t\t\t\t}. Please be patient.`\n\t\t\t)\n\n\t\t\tawait pkgService.install(this.devPackagesToInstall, {\n\t\t\t\tisDev: true,\n\t\t\t})\n\t\t}\n\n\t\tthis.packagesToInstall = []\n\t\tthis.devPackagesToInstall = []\n\n\t\tconst settings = this.Service('settings')\n\n\t\tfor (const code of this.featuresToMarkAsInstalled) {\n\t\t\tsettings.markAsInstalled(code)\n\t\t}\n\n\t\tthis.featuresToMarkAsInstalled = []\n\n\t\tlet results: FeatureInstallResponse = {}\n\n\t\tfor (const installFeature of this.afterPackageInstalls) {\n\t\t\tconst feature = this.getFeature(installFeature.code)\n\t\t\tconst afterInstallResults = await feature.afterPackageInstall(\n\t\t\t\t//@ts-ignore\n\t\t\t\tinstallFeature.options\n\t\t\t)\n\n\t\t\tresults = merge(results, afterInstallResults)\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async queueInstallPackageDependenciesWithoutEntertainment(\n\t\tfeature: AbstractFeature,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t) {\n\t\tconst packagesInstalled: NpmPackage[] = []\n\t\tconst pkgService = this.Service('pkg')\n\n\t\tfeature.packageDependencies?.forEach((pkg) => {\n\t\t\tconst packageName = pkgService.buildPackageName(pkg)\n\n\t\t\tpackagesInstalled.push(pkg)\n\n\t\t\tdidUpdateHandler?.(`Checking node dependency: ${pkg.name}`)\n\n\t\t\tif (pkg.isDev && this.devPackagesToInstall.indexOf(packageName) === -1) {\n\t\t\t\tthis.devPackagesToInstall.push(packageName)\n\t\t\t} else if (\n\t\t\t\t!pkg.isDev &&\n\t\t\t\tthis.packagesToInstall.indexOf(packageName) === -1\n\t\t\t) {\n\t\t\t\tthis.packagesToInstall.push(packageName)\n\t\t\t}\n\t\t})\n\n\t\tif (this.packagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Queueing install of ${this.packagesToInstall.length} node dependenc${\n\t\t\t\t\tthis.packagesToInstall.length === 1\n\t\t\t\t\t\t? 'y.'\n\t\t\t\t\t\t: 'ies for ' + this.getFeatureNameAndDesc(feature) + '...'\n\t\t\t\t}.`\n\t\t\t)\n\t\t}\n\n\t\tif (this.devPackagesToInstall.length > 0) {\n\t\t\tdidUpdateHandler?.(\n\t\t\t\t`Queueing install of ${\n\t\t\t\t\tthis.devPackagesToInstall.length\n\t\t\t\t} DEV node dependenc${\n\t\t\t\t\tthis.devPackagesToInstall.length === 1\n\t\t\t\t\t\t? 'y.'\n\t\t\t\t\t\t: 'ies for ' + this.getFeatureNameAndDesc(feature) + '. 🤘'\n\t\t\t\t}.`\n\t\t\t)\n\t\t}\n\n\t\treturn packagesInstalled\n\t}\n\n\tprivate getFeatureNameAndDesc(feature: AbstractFeature) {\n\t\treturn `${feature.nameReadable}${\n\t\t\tfeature.description ? ' (' + feature.description + ')' : ''\n\t\t}`\n\t}\n\n\tprivate sortFeatures(\n\t\tfeatureDependencies: FeatureDependency[]\n\t): FeatureDependency[] {\n\t\treturn [...featureDependencies].sort((a, b) => {\n\t\t\tconst aFeature = this.getFeature(a.code)\n\t\t\tconst bFeature = this.getFeature(b.code)\n\n\t\t\tconst aDependsOnB = aFeature.dependencies.find((d) => d.code === b.code)\n\t\t\tconst bDependsOnA = bFeature.dependencies.find((d) => d.code === a.code)\n\n\t\t\tif (\n\t\t\t\taDependsOnB ||\n\t\t\t\taFeature.installOrderWeight < bFeature.installOrderWeight\n\t\t\t) {\n\t\t\t\treturn 1\n\t\t\t} else if (\n\t\t\t\tbDependsOnA ||\n\t\t\t\taFeature.installOrderWeight > bFeature.installOrderWeight\n\t\t\t) {\n\t\t\t\treturn -1\n\t\t\t}\n\t\t\treturn 0\n\t\t})\n\t}\n\n\tpublic Service<S extends Service>(type: S, cwd?: string): ServiceMap[S] {\n\t\treturn this.serviceFactory.Service(cwd ?? this.cwd, type)\n\t}\n\n\tpublic getOptionsForFeature(code: FeatureCode) {\n\t\treturn this.getFeature(code).optionsSchema\n\t}\n\n\tpublic getAllCodes(): FeatureCode[] {\n\t\tconst codes = Object.keys(this.featureMap) as FeatureCode[]\n\t\treturn this.sortFeatures(\n\t\t\tcodes.map((code) => ({ code, isRequired: true }))\n\t\t).map((dep) => dep.code)\n\t}\n\n\tpublic async getInstalledFeatures() {\n\t\tconst installed = await Promise.all(\n\t\t\tthis.getAllCodes().map(async (code) => {\n\t\t\t\tconst isInstalled = await this.isInstalled(code)\n\t\t\t\tif (isInstalled) {\n\t\t\t\t\treturn this.getFeature(code)\n\t\t\t\t}\n\n\t\t\t\treturn false\n\t\t\t})\n\t\t)\n\n\t\treturn installed.filter((f) => !!f) as FeatureMap[keyof FeatureMap][]\n\t}\n}\n\nexport default interface FeatureInstaller {\n\tisInstalled(code: FeatureCode): Promise<boolean>\n\tmarkAsSkippedThisRun(code: FeatureCode): void\n\tmarkAsPermanentlySkipped(code: FeatureCode): void\n\tisMarkedAsSkipped(code: FeatureCode): boolean\n\tgetFeature<C extends FeatureCode>(code: C): FeatureMap[C]\n\tareInstalled(codes: FeatureCode[]): Promise<boolean>\n\tinstall(options: InstallFeatureOptions): Promise<FeatureInstallResponse>\n\tgetInstalledFeatures(): Promise<FeatureMap[keyof FeatureMap][]>\n\tgetFeatureDependencies<C extends FeatureCode>(\n\t\tfeatureCode: C\n\t): FeatureDependency[]\n\tgetAllCodes(): FeatureCode[]\n\tmapFeature<C extends FeatureCode>(code: C, feature: FeatureMap[C]): void\n}\n"],"mappings":"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","ignoreList":[]}
@@ -36,7 +36,7 @@ var FeatureInstallerFactory = exports["default"] = /*#__PURE__*/function () {
36
36
  function FeatureInstallerFactory() {
37
37
  (0, _classCallCheck2["default"])(this, FeatureInstallerFactory);
38
38
  }
39
- (0, _createClass2["default"])(FeatureInstallerFactory, null, [{
39
+ return (0, _createClass2["default"])(FeatureInstallerFactory, null, [{
40
40
  key: "WithAllFeatures",
41
41
  value: function WithAllFeatures(options) {
42
42
  var _options$featureInsta;
@@ -65,7 +65,6 @@ var FeatureInstallerFactory = exports["default"] = /*#__PURE__*/function () {
65
65
  return featureInstaller;
66
66
  }
67
67
  }]);
68
- return FeatureInstallerFactory;
69
68
  }();
70
69
  (0, _defineProperty2["default"])(FeatureInstallerFactory, "features", [_ErrorFeature["default"], _SchemaFeature["default"], _SkillFeature["default"], _TestFeature["default"], _VsCodeFeature["default"], _EventFeature["default"], _WatchFeature["default"], _NodeFeature["default"], _OnboardFeature["default"], _PersonFeature["default"], _OrganizationFeature["default"], _ConversationFeature["default"], _EventContractFeature["default"], _DeployFeature["default"], _SandboxFeature["default"], _StoreFeature["default"], _ViewFeature["default"], _CacheFeature["default"], _LogFeature["default"], _DependencyFeature["default"], _PolishFeature["default"], _PermissionFeature["default"]]);
71
70
  (0, _defineProperty2["default"])(FeatureInstallerFactory, "featureCodes", ['error', 'schema', 'skill', 'test', 'vscode', 'event', 'watch', 'node', 'onboard', 'person', 'organization', 'conversation', 'eventContract', 'deploy', 'sandbox', 'store', 'view', 'cache', 'log', 'dependency', 'polish', 'permission']);
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureInstallerFactory.js","names":["_spruceTemplates","require","_CacheFeature","_interopRequireDefault","_ConversationFeature","_DependencyFeature","_DeployFeature","_ErrorFeature","_EventFeature","_EventContractFeature","_FeatureInstaller","_LogFeature","_NodeFeature","_OnboardFeature","_OrganizationFeature","_PermissionFeature","_PersonFeature","_PolishFeature","_SandboxFeature","_SchemaFeature","_SkillFeature","_StoreFeature","_TestFeature","_ViewFeature","_VsCodeFeature","_WatchFeature","FeatureInstallerFactory","exports","_classCallCheck2","_createClass2","key","value","WithAllFeatures","options","_options$featureInsta","cwd","serviceFactory","storeFactory","ui","emitter","actionExecuter","featureInstaller","FeatureInstallerImpl","featureOptions","templates","apiClientFactory","features","forEach","Feature","feature","mapFeature","code","_defineProperty2","ErrorFeature","SchemaFeature","SkillFeature","TestFeature","VsCodeFeature","EventFeature","WatchFeature","NodeFeature","OnboardFeature","PersonFeature","OrganizationFeature","ConversationFeature","EventContractFeature","DeployFeature","SandboxFeature","StoreFeature","ViewFeature","CacheFeature","LogFeature","DependencyFeature","PolishFeature","PermissionFeature"],"sources":["../../src/features/FeatureInstallerFactory.ts"],"sourcesContent":["import { templates } from '@sprucelabs/spruce-templates'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory from '../services/ServiceFactory'\nimport StoreFactory from '../stores/StoreFactory'\nimport { ApiClientFactory } from '../types/apiClient.types'\nimport { GraphicsInterface } from '../types/cli.types'\nimport { FeatureOptions } from './AbstractFeature'\nimport ActionExecuter from './ActionExecuter'\nimport CacheFeature from './cache/CacheFeature'\nimport ConversationFeature from './conversation/ConversationFeature'\nimport DependencyFeature from './dependencies/DependencyFeature'\nimport DeployFeature from './deploy/DeployFeature'\nimport ErrorFeature from './error/ErrorFeature'\nimport EventFeature from './event/EventFeature'\nimport EventContractFeature from './eventContract/EventContractFeature'\nimport FeatureInstaller, { FeatureInstallerImpl } from './FeatureInstaller'\nimport { FeatureCode } from './features.types'\nimport LogFeature from './log/LogFeature'\nimport NodeFeature from './node/NodeFeature'\nimport OnboardFeature from './onboard/OnboardFeature'\nimport OrganizationFeature from './organization/OrganizationFeature'\nimport PermissionFeature from './permission/PermissionFeature'\nimport PersonFeature from './person/PersonFeature'\nimport PolishFeature from './polish/PolishFeature'\nimport SandboxFeature from './sandbox/SandboxFeature'\nimport SchemaFeature from './schema/SchemaFeature'\nimport SkillFeature from './skill/SkillFeature'\nimport StoreFeature from './store/StoreFeature'\nimport TestFeature from './test/TestFeature'\nimport ViewFeature from './view/ViewFeature'\nimport VsCodeFeature from './vscode/VsCodeFeature'\nimport WatchFeature from './watch/WatchFeature'\n\nexport default class FeatureInstallerFactory {\n\tprivate static readonly features: any[] = [\n\t\tErrorFeature,\n\t\tSchemaFeature,\n\t\tSkillFeature,\n\t\tTestFeature,\n\t\tVsCodeFeature,\n\t\tEventFeature,\n\t\tWatchFeature,\n\t\tNodeFeature,\n\t\tOnboardFeature,\n\t\tPersonFeature,\n\t\tOrganizationFeature,\n\t\tConversationFeature,\n\t\tEventContractFeature,\n\t\tDeployFeature,\n\t\tSandboxFeature,\n\t\tStoreFeature,\n\t\tViewFeature,\n\t\tCacheFeature,\n\t\tLogFeature,\n\t\tDependencyFeature,\n\t\tPolishFeature,\n\t\tPermissionFeature,\n\t]\n\n\tpublic static readonly featureCodes: FeatureCode[] = [\n\t\t'error',\n\t\t'schema',\n\t\t'skill',\n\t\t'test',\n\t\t'vscode',\n\t\t'event',\n\t\t'watch',\n\t\t'node',\n\t\t'onboard',\n\t\t'person',\n\t\t'organization',\n\t\t'conversation',\n\t\t'eventContract',\n\t\t'deploy',\n\t\t'sandbox',\n\t\t'store',\n\t\t'view',\n\t\t'cache',\n\t\t'log',\n\t\t'dependency',\n\t\t'polish',\n\t\t'permission',\n\t]\n\n\tpublic static WithAllFeatures(\n\t\toptions: InstallerWithAllFeaturesOptions\n\t): FeatureInstaller {\n\t\tconst { cwd, serviceFactory, storeFactory, ui, emitter, actionExecuter } =\n\t\t\toptions\n\n\t\tconst featureInstaller =\n\t\t\toptions.featureInstaller ?? new FeatureInstallerImpl(cwd, serviceFactory)\n\n\t\tconst featureOptions: FeatureOptions = {\n\t\t\tcwd,\n\t\t\tserviceFactory,\n\t\t\ttemplates,\n\t\t\tstoreFactory,\n\t\t\tfeatureInstaller,\n\t\t\tui,\n\t\t\temitter,\n\t\t\tactionExecuter,\n\t\t\tapiClientFactory: options.apiClientFactory,\n\t\t}\n\n\t\tthis.features.forEach((Feature) => {\n\t\t\tconst feature = new Feature(featureOptions)\n\t\t\tfeatureInstaller.mapFeature(feature.code, feature)\n\t\t})\n\n\t\treturn featureInstaller\n\t}\n}\n\ninterface InstallerWithAllFeaturesOptions {\n\tcwd: string\n\tserviceFactory: ServiceFactory\n\tstoreFactory: StoreFactory\n\tfeatureInstaller?: FeatureInstaller\n\tui: GraphicsInterface\n\temitter: GlobalEmitter\n\tapiClientFactory: ApiClientFactory\n\tactionExecuter: ActionExecuter\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAQA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,kBAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,cAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,aAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,aAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,qBAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,iBAAA,GAAAT,OAAA;AAEA,IAAAU,WAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,YAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,eAAA,GAAAV,sBAAA,CAAAF,OAAA;AACA,IAAAa,oBAAA,GAAAX,sBAAA,CAAAF,OAAA;AACA,IAAAc,kBAAA,GAAAZ,sBAAA,CAAAF,OAAA;AACA,IAAAe,cAAA,GAAAb,sBAAA,CAAAF,OAAA;AACA,IAAAgB,cAAA,GAAAd,sBAAA,CAAAF,OAAA;AACA,IAAAiB,eAAA,GAAAf,sBAAA,CAAAF,OAAA;AACA,IAAAkB,cAAA,GAAAhB,sBAAA,CAAAF,OAAA;AACA,IAAAmB,aAAA,GAAAjB,sBAAA,CAAAF,OAAA;AACA,IAAAoB,aAAA,GAAAlB,sBAAA,CAAAF,OAAA;AACA,IAAAqB,YAAA,GAAAnB,sBAAA,CAAAF,OAAA;AACA,IAAAsB,YAAA,GAAApB,sBAAA,CAAAF,OAAA;AACA,IAAAuB,cAAA,GAAArB,sBAAA,CAAAF,OAAA;AACA,IAAAwB,aAAA,GAAAtB,sBAAA,CAAAF,OAAA;AAA+C,IAE1ByB,uBAAuB,GAAAC,OAAA;EAAA,SAAAD,wBAAA;IAAA,IAAAE,gBAAA,mBAAAF,uBAAA;EAAA;EAAA,IAAAG,aAAA,aAAAH,uBAAA;IAAAI,GAAA;IAAAC,KAAA,EAmD3C,SAAAC,gBACCC,OAAwC,EACrB;MAAA,IAAAC,qBAAA;MACnB,IAAQC,GAAG,GACVF,OAAO,CADAE,GAAG;QAAEC,cAAc,GAC1BH,OAAO,CADKG,cAAc;QAAEC,YAAY,GACxCJ,OAAO,CADqBI,YAAY;QAAEC,EAAE,GAC5CL,OAAO,CADmCK,EAAE;QAAEC,OAAO,GACrDN,OAAO,CADuCM,OAAO;QAAEC,cAAc,GACrEP,OAAO,CADgDO,cAAc;MAGtE,IAAMC,gBAAgB,IAAAP,qBAAA,GACrBD,OAAO,CAACQ,gBAAgB,cAAAP,qBAAA,cAAAA,qBAAA,GAAI,IAAIQ,sCAAoB,CAACP,GAAG,EAAEC,cAAc,CAAC;MAE1E,IAAMO,cAA8B,GAAG;QACtCR,GAAG,EAAHA,GAAG;QACHC,cAAc,EAAdA,cAAc;QACdQ,SAAS,EAATA,0BAAS;QACTP,YAAY,EAAZA,YAAY;QACZI,gBAAgB,EAAhBA,gBAAgB;QAChBH,EAAE,EAAFA,EAAE;QACFC,OAAO,EAAPA,OAAO;QACPC,cAAc,EAAdA,cAAc;QACdK,gBAAgB,EAAEZ,OAAO,CAACY;MAC3B,CAAC;MAED,IAAI,CAACC,QAAQ,CAACC,OAAO,CAAC,UAACC,OAAO,EAAK;QAClC,IAAMC,OAAO,GAAG,IAAID,OAAO,CAACL,cAAc,CAAC;QAC3CF,gBAAgB,CAACS,UAAU,CAACD,OAAO,CAACE,IAAI,EAAEF,OAAO,CAAC;MACnD,CAAC,CAAC;MAEF,OAAOR,gBAAgB;IACxB;EAAC;EAAA,OAAAf,uBAAA;AAAA;AAAA,IAAA0B,gBAAA,aA9EmB1B,uBAAuB,cACD,CACzC2B,wBAAY,EACZC,yBAAa,EACbC,wBAAY,EACZC,uBAAW,EACXC,yBAAa,EACbC,wBAAY,EACZC,wBAAY,EACZC,uBAAW,EACXC,0BAAc,EACdC,yBAAa,EACbC,+BAAmB,EACnBC,+BAAmB,EACnBC,gCAAoB,EACpBC,yBAAa,EACbC,0BAAc,EACdC,wBAAY,EACZC,uBAAW,EACXC,wBAAY,EACZC,sBAAU,EACVC,6BAAiB,EACjBC,yBAAa,EACbC,6BAAiB,CACjB;AAAA,IAAAtB,gBAAA,aAxBmB1B,uBAAuB,kBA0BU,CACpD,OAAO,EACP,QAAQ,EACR,OAAO,EACP,MAAM,EACN,QAAQ,EACR,OAAO,EACP,OAAO,EACP,MAAM,EACN,SAAS,EACT,QAAQ,EACR,cAAc,EACd,cAAc,EACd,eAAe,EACf,QAAQ,EACR,SAAS,EACT,OAAO,EACP,MAAM,EACN,OAAO,EACP,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,YAAY,CACZ","ignoreList":[]}
1
+ {"version":3,"file":"FeatureInstallerFactory.js","names":["_spruceTemplates","require","_CacheFeature","_interopRequireDefault","_ConversationFeature","_DependencyFeature","_DeployFeature","_ErrorFeature","_EventFeature","_EventContractFeature","_FeatureInstaller","_LogFeature","_NodeFeature","_OnboardFeature","_OrganizationFeature","_PermissionFeature","_PersonFeature","_PolishFeature","_SandboxFeature","_SchemaFeature","_SkillFeature","_StoreFeature","_TestFeature","_ViewFeature","_VsCodeFeature","_WatchFeature","FeatureInstallerFactory","exports","_classCallCheck2","_createClass2","key","value","WithAllFeatures","options","_options$featureInsta","cwd","serviceFactory","storeFactory","ui","emitter","actionExecuter","featureInstaller","FeatureInstallerImpl","featureOptions","templates","apiClientFactory","features","forEach","Feature","feature","mapFeature","code","_defineProperty2","ErrorFeature","SchemaFeature","SkillFeature","TestFeature","VsCodeFeature","EventFeature","WatchFeature","NodeFeature","OnboardFeature","PersonFeature","OrganizationFeature","ConversationFeature","EventContractFeature","DeployFeature","SandboxFeature","StoreFeature","ViewFeature","CacheFeature","LogFeature","DependencyFeature","PolishFeature","PermissionFeature"],"sources":["../../src/features/FeatureInstallerFactory.ts"],"sourcesContent":["import { templates } from '@sprucelabs/spruce-templates'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory from '../services/ServiceFactory'\nimport StoreFactory from '../stores/StoreFactory'\nimport { ApiClientFactory } from '../types/apiClient.types'\nimport { GraphicsInterface } from '../types/cli.types'\nimport { FeatureOptions } from './AbstractFeature'\nimport ActionExecuter from './ActionExecuter'\nimport CacheFeature from './cache/CacheFeature'\nimport ConversationFeature from './conversation/ConversationFeature'\nimport DependencyFeature from './dependencies/DependencyFeature'\nimport DeployFeature from './deploy/DeployFeature'\nimport ErrorFeature from './error/ErrorFeature'\nimport EventFeature from './event/EventFeature'\nimport EventContractFeature from './eventContract/EventContractFeature'\nimport FeatureInstaller, { FeatureInstallerImpl } from './FeatureInstaller'\nimport { FeatureCode } from './features.types'\nimport LogFeature from './log/LogFeature'\nimport NodeFeature from './node/NodeFeature'\nimport OnboardFeature from './onboard/OnboardFeature'\nimport OrganizationFeature from './organization/OrganizationFeature'\nimport PermissionFeature from './permission/PermissionFeature'\nimport PersonFeature from './person/PersonFeature'\nimport PolishFeature from './polish/PolishFeature'\nimport SandboxFeature from './sandbox/SandboxFeature'\nimport SchemaFeature from './schema/SchemaFeature'\nimport SkillFeature from './skill/SkillFeature'\nimport StoreFeature from './store/StoreFeature'\nimport TestFeature from './test/TestFeature'\nimport ViewFeature from './view/ViewFeature'\nimport VsCodeFeature from './vscode/VsCodeFeature'\nimport WatchFeature from './watch/WatchFeature'\n\nexport default class FeatureInstallerFactory {\n\tprivate static readonly features: any[] = [\n\t\tErrorFeature,\n\t\tSchemaFeature,\n\t\tSkillFeature,\n\t\tTestFeature,\n\t\tVsCodeFeature,\n\t\tEventFeature,\n\t\tWatchFeature,\n\t\tNodeFeature,\n\t\tOnboardFeature,\n\t\tPersonFeature,\n\t\tOrganizationFeature,\n\t\tConversationFeature,\n\t\tEventContractFeature,\n\t\tDeployFeature,\n\t\tSandboxFeature,\n\t\tStoreFeature,\n\t\tViewFeature,\n\t\tCacheFeature,\n\t\tLogFeature,\n\t\tDependencyFeature,\n\t\tPolishFeature,\n\t\tPermissionFeature,\n\t]\n\n\tpublic static readonly featureCodes: FeatureCode[] = [\n\t\t'error',\n\t\t'schema',\n\t\t'skill',\n\t\t'test',\n\t\t'vscode',\n\t\t'event',\n\t\t'watch',\n\t\t'node',\n\t\t'onboard',\n\t\t'person',\n\t\t'organization',\n\t\t'conversation',\n\t\t'eventContract',\n\t\t'deploy',\n\t\t'sandbox',\n\t\t'store',\n\t\t'view',\n\t\t'cache',\n\t\t'log',\n\t\t'dependency',\n\t\t'polish',\n\t\t'permission',\n\t]\n\n\tpublic static WithAllFeatures(\n\t\toptions: InstallerWithAllFeaturesOptions\n\t): FeatureInstaller {\n\t\tconst { cwd, serviceFactory, storeFactory, ui, emitter, actionExecuter } =\n\t\t\toptions\n\n\t\tconst featureInstaller =\n\t\t\toptions.featureInstaller ?? new FeatureInstallerImpl(cwd, serviceFactory)\n\n\t\tconst featureOptions: FeatureOptions = {\n\t\t\tcwd,\n\t\t\tserviceFactory,\n\t\t\ttemplates,\n\t\t\tstoreFactory,\n\t\t\tfeatureInstaller,\n\t\t\tui,\n\t\t\temitter,\n\t\t\tactionExecuter,\n\t\t\tapiClientFactory: options.apiClientFactory,\n\t\t}\n\n\t\tthis.features.forEach((Feature) => {\n\t\t\tconst feature = new Feature(featureOptions)\n\t\t\tfeatureInstaller.mapFeature(feature.code, feature)\n\t\t})\n\n\t\treturn featureInstaller\n\t}\n}\n\ninterface InstallerWithAllFeaturesOptions {\n\tcwd: string\n\tserviceFactory: ServiceFactory\n\tstoreFactory: StoreFactory\n\tfeatureInstaller?: FeatureInstaller\n\tui: GraphicsInterface\n\temitter: GlobalEmitter\n\tapiClientFactory: ApiClientFactory\n\tactionExecuter: ActionExecuter\n}\n"],"mappings":"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","ignoreList":[]}
@@ -110,7 +110,7 @@ var OverrideActionDecorator = exports["default"] = /*#__PURE__*/function () {
110
110
  this.actionCode = actionCode;
111
111
  methodDelegator.delegateFunctionCalls(this, action);
112
112
  }
113
- (0, _createClass2["default"])(OverrideActionDecorator, [{
113
+ return (0, _createClass2["default"])(OverrideActionDecorator, [{
114
114
  key: "invocationMessage",
115
115
  get: function get() {
116
116
  return this.childAction.invocationMessage;
@@ -186,6 +186,5 @@ var OverrideActionDecorator = exports["default"] = /*#__PURE__*/function () {
186
186
  return options;
187
187
  }
188
188
  }]);
189
- return OverrideActionDecorator;
190
189
  }();
191
190
  //# sourceMappingURL=OverrideActionDecorator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverrideActionDecorator.js","names":["_SpruceError","_interopRequireDefault","require","_feature","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createForOfIteratorHelper","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","i","F","s","n","done","value","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","methodDelegator","getAllFuncs","toCheck","props","obj","_toConsumableArray2","getOwnPropertyNames","getPrototypeOf","sort","delegateFunctionCalls","to","_iterator","_step","_loop","prop","OverrideActionDecorator","exports","options","_this","_classCallCheck2","_ref","_asyncToGenerator2","_regenerator","mark","_callee","optionsArg","response","wrap","_callee$","_context","prev","assertCommandIsNotBlocked","mixinOptionOverrides","childAction","execute","sent","abrupt","stop","_x","action","feature","ui","blockedCommands","optionOverrides","actionCode","SpruceError","code","friendlyMessage","concat","nameReadable","parent","_createClass2","key","get","invocationMessage","commandAliases","optionsSchema","getChild","commands","getCommands","_iterator2","_step2","_this$blockedCommands","commandStr","command","hint","featuresUtil","generateCommandsIncludingAliases","optionsArgs","_extends2","_objectDestructuringEmpty2","_iterator3","_step3","_this$optionOverrides","overrides","_this$ui","_this$ui2","renderLine","renderObject"],"sources":["../../src/features/OverrideActionDecorator.ts"],"sourcesContent":["import { GraphicsInterface } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../errors/SpruceError'\nimport { FeatureAction } from '../features/features.types'\nimport { BlockedCommands, OptionOverrides } from '../types/cli.types'\nimport AbstractFeature from './AbstractFeature'\nimport featuresUtil from './feature.utilities'\n\nconst methodDelegator = {\n\tgetAllFuncs(toCheck: any) {\n\t\tconst props = []\n\t\tlet obj = toCheck\n\t\tdo {\n\t\t\tprops.push(...Object.getOwnPropertyNames(obj))\n\t\t} while ((obj = Object.getPrototypeOf(obj)))\n\n\t\treturn props.sort().filter((e: any, i: any, arr: any) => {\n\t\t\treturn e != arr[i + 1] && typeof toCheck[e] == 'function'\n\t\t})\n\t},\n\n\tdelegateFunctionCalls(from: any, to: any) {\n\t\tconst props = this.getAllFuncs(to)\n\t\tfor (const prop of props) {\n\t\t\t//@ts-ignore\n\t\t\tif (!from[prop]) {\n\t\t\t\t//@ts-ignore\n\t\t\t\tfrom[prop] = (...args: []) => {\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\treturn to[prop](...args)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n}\n\nexport default class OverrideActionDecorator implements FeatureAction {\n\tprivate blockedCommands?: BlockedCommands\n\tprivate optionOverrides?: OptionOverrides\n\tprivate ui?: GraphicsInterface\n\tprivate actionCode: string\n\n\tpublic get invocationMessage() {\n\t\treturn this.childAction.invocationMessage\n\t}\n\n\tpublic get commandAliases() {\n\t\treturn this.childAction.commandAliases\n\t}\n\n\tprivate childAction: FeatureAction\n\tprivate parent: AbstractFeature\n\n\tpublic get optionsSchema() {\n\t\treturn this.childAction.optionsSchema\n\t}\n\n\tpublic getChild() {\n\t\treturn this.childAction\n\t}\n\n\tpublic constructor(options: {\n\t\taction: FeatureAction\n\t\tfeature: AbstractFeature\n\t\tui?: GraphicsInterface\n\t\tblockedCommands?: BlockedCommands\n\t\toptionOverrides?: OptionOverrides\n\t\tactionCode: string\n\t}) {\n\t\tconst {\n\t\t\taction,\n\t\t\tfeature,\n\t\t\tui,\n\t\t\tblockedCommands,\n\t\t\toptionOverrides,\n\t\t\tactionCode,\n\t\t} = options\n\n\t\tif (!action || !action.execute) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `${feature.nameReadable} failed to load action.`,\n\t\t\t})\n\t\t}\n\n\t\tthis.childAction = action\n\t\tthis.parent = feature\n\t\tthis.blockedCommands = blockedCommands\n\t\tthis.optionOverrides = optionOverrides\n\t\tthis.ui = ui\n\t\tthis.actionCode = actionCode\n\n\t\tmethodDelegator.delegateFunctionCalls(this, action)\n\t}\n\n\tprivate assertCommandIsNotBlocked() {\n\t\tconst commands = this.getCommands()\n\n\t\tfor (const commandStr of commands) {\n\t\t\tif (this.blockedCommands?.[commandStr]) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'COMMAND_BLOCKED',\n\t\t\t\t\tcommand: commandStr,\n\t\t\t\t\thint: this.blockedCommands[commandStr],\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic execute = async (optionsArg: any) => {\n\t\tthis.assertCommandIsNotBlocked()\n\n\t\tconst options = this.mixinOptionOverrides(optionsArg)\n\t\tconst response = await this.childAction.execute(options)\n\n\t\treturn response\n\t}\n\n\tprivate getCommands() {\n\t\treturn featuresUtil.generateCommandsIncludingAliases(\n\t\t\tthis.parent.code,\n\t\t\tthis.actionCode,\n\t\t\tthis\n\t\t)\n\t}\n\n\tprivate mixinOptionOverrides(optionsArgs: any) {\n\t\tlet { ...options } = optionsArgs\n\n\t\tconst commands = this.getCommands()\n\n\t\tfor (const commandStr of commands) {\n\t\t\tconst overrides = this.optionOverrides?.[commandStr]\n\t\t\tif (overrides) {\n\t\t\t\tthis.ui?.renderLine(`Overrides found in package.json`)\n\t\t\t\tthis.ui?.renderObject(overrides)\n\t\t\t\toptions = {\n\t\t\t\t\t...options,\n\t\t\t\t\t...overrides,\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn options\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"OverrideActionDecorator.js","names":["_SpruceError","_interopRequireDefault","require","_feature","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createForOfIteratorHelper","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","i","F","s","n","done","value","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","methodDelegator","getAllFuncs","toCheck","props","obj","_toConsumableArray2","getOwnPropertyNames","getPrototypeOf","sort","delegateFunctionCalls","to","_iterator","_step","_loop","prop","OverrideActionDecorator","exports","options","_this","_classCallCheck2","_ref","_asyncToGenerator2","_regenerator","mark","_callee","optionsArg","response","wrap","_callee$","_context","prev","assertCommandIsNotBlocked","mixinOptionOverrides","childAction","execute","sent","abrupt","stop","_x","action","feature","ui","blockedCommands","optionOverrides","actionCode","SpruceError","code","friendlyMessage","concat","nameReadable","parent","_createClass2","key","get","invocationMessage","commandAliases","optionsSchema","getChild","commands","getCommands","_iterator2","_step2","_this$blockedCommands","commandStr","command","hint","featuresUtil","generateCommandsIncludingAliases","optionsArgs","_extends2","_objectDestructuringEmpty2","_iterator3","_step3","_this$optionOverrides","overrides","_this$ui","_this$ui2","renderLine","renderObject"],"sources":["../../src/features/OverrideActionDecorator.ts"],"sourcesContent":["import { GraphicsInterface } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../errors/SpruceError'\nimport { FeatureAction } from '../features/features.types'\nimport { BlockedCommands, OptionOverrides } from '../types/cli.types'\nimport AbstractFeature from './AbstractFeature'\nimport featuresUtil from './feature.utilities'\n\nconst methodDelegator = {\n\tgetAllFuncs(toCheck: any) {\n\t\tconst props = []\n\t\tlet obj = toCheck\n\t\tdo {\n\t\t\tprops.push(...Object.getOwnPropertyNames(obj))\n\t\t} while ((obj = Object.getPrototypeOf(obj)))\n\n\t\treturn props.sort().filter((e: any, i: any, arr: any) => {\n\t\t\treturn e != arr[i + 1] && typeof toCheck[e] == 'function'\n\t\t})\n\t},\n\n\tdelegateFunctionCalls(from: any, to: any) {\n\t\tconst props = this.getAllFuncs(to)\n\t\tfor (const prop of props) {\n\t\t\t//@ts-ignore\n\t\t\tif (!from[prop]) {\n\t\t\t\t//@ts-ignore\n\t\t\t\tfrom[prop] = (...args: []) => {\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\treturn to[prop](...args)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n}\n\nexport default class OverrideActionDecorator implements FeatureAction {\n\tprivate blockedCommands?: BlockedCommands\n\tprivate optionOverrides?: OptionOverrides\n\tprivate ui?: GraphicsInterface\n\tprivate actionCode: string\n\n\tpublic get invocationMessage() {\n\t\treturn this.childAction.invocationMessage\n\t}\n\n\tpublic get commandAliases() {\n\t\treturn this.childAction.commandAliases\n\t}\n\n\tprivate childAction: FeatureAction\n\tprivate parent: AbstractFeature\n\n\tpublic get optionsSchema() {\n\t\treturn this.childAction.optionsSchema\n\t}\n\n\tpublic getChild() {\n\t\treturn this.childAction\n\t}\n\n\tpublic constructor(options: {\n\t\taction: FeatureAction\n\t\tfeature: AbstractFeature\n\t\tui?: GraphicsInterface\n\t\tblockedCommands?: BlockedCommands\n\t\toptionOverrides?: OptionOverrides\n\t\tactionCode: string\n\t}) {\n\t\tconst {\n\t\t\taction,\n\t\t\tfeature,\n\t\t\tui,\n\t\t\tblockedCommands,\n\t\t\toptionOverrides,\n\t\t\tactionCode,\n\t\t} = options\n\n\t\tif (!action || !action.execute) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `${feature.nameReadable} failed to load action.`,\n\t\t\t})\n\t\t}\n\n\t\tthis.childAction = action\n\t\tthis.parent = feature\n\t\tthis.blockedCommands = blockedCommands\n\t\tthis.optionOverrides = optionOverrides\n\t\tthis.ui = ui\n\t\tthis.actionCode = actionCode\n\n\t\tmethodDelegator.delegateFunctionCalls(this, action)\n\t}\n\n\tprivate assertCommandIsNotBlocked() {\n\t\tconst commands = this.getCommands()\n\n\t\tfor (const commandStr of commands) {\n\t\t\tif (this.blockedCommands?.[commandStr]) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'COMMAND_BLOCKED',\n\t\t\t\t\tcommand: commandStr,\n\t\t\t\t\thint: this.blockedCommands[commandStr],\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic execute = async (optionsArg: any) => {\n\t\tthis.assertCommandIsNotBlocked()\n\n\t\tconst options = this.mixinOptionOverrides(optionsArg)\n\t\tconst response = await this.childAction.execute(options)\n\n\t\treturn response\n\t}\n\n\tprivate getCommands() {\n\t\treturn featuresUtil.generateCommandsIncludingAliases(\n\t\t\tthis.parent.code,\n\t\t\tthis.actionCode,\n\t\t\tthis\n\t\t)\n\t}\n\n\tprivate mixinOptionOverrides(optionsArgs: any) {\n\t\tlet { ...options } = optionsArgs\n\n\t\tconst commands = this.getCommands()\n\n\t\tfor (const commandStr of commands) {\n\t\t\tconst overrides = this.optionOverrides?.[commandStr]\n\t\t\tif (overrides) {\n\t\t\t\tthis.ui?.renderLine(`Overrides found in package.json`)\n\t\t\t\tthis.ui?.renderObject(overrides)\n\t\t\t\toptions = {\n\t\t\t\t\t...options,\n\t\t\t\t\t...overrides,\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn options\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -11,7 +11,6 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
11
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
14
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
16
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
@@ -19,7 +18,6 @@ var _AbstractFeature2 = _interopRequireDefault(require("../AbstractFeature"));
19
18
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
20
19
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
21
20
  var CacheFeature = exports["default"] = /*#__PURE__*/function (_AbstractFeature) {
22
- (0, _inherits2["default"])(CacheFeature, _AbstractFeature);
23
21
  function CacheFeature() {
24
22
  var _this;
25
23
  (0, _classCallCheck2["default"])(this, CacheFeature);
@@ -27,13 +25,14 @@ var CacheFeature = exports["default"] = /*#__PURE__*/function (_AbstractFeature)
27
25
  args[_key] = arguments[_key];
28
26
  }
29
27
  _this = _callSuper(this, CacheFeature, [].concat(args));
30
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "description", 'Caching for all things Sprucebot.');
31
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "code", 'cache');
32
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "nameReadable", 'Cache');
33
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "actionsDir", _spruceSkillUtils.diskUtil.resolvePath(__dirname, 'actions'));
28
+ (0, _defineProperty2["default"])(_this, "description", 'Caching for all things Sprucebot.');
29
+ (0, _defineProperty2["default"])(_this, "code", 'cache');
30
+ (0, _defineProperty2["default"])(_this, "nameReadable", 'Cache');
31
+ (0, _defineProperty2["default"])(_this, "actionsDir", _spruceSkillUtils.diskUtil.resolvePath(__dirname, 'actions'));
34
32
  return _this;
35
33
  }
36
- (0, _createClass2["default"])(CacheFeature, [{
34
+ (0, _inherits2["default"])(CacheFeature, _AbstractFeature);
35
+ return (0, _createClass2["default"])(CacheFeature, [{
37
36
  key: "isInstalled",
38
37
  value: function () {
39
38
  var _isInstalled = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
@@ -53,6 +52,5 @@ var CacheFeature = exports["default"] = /*#__PURE__*/function (_AbstractFeature)
53
52
  return isInstalled;
54
53
  }()
55
54
  }]);
56
- return CacheFeature;
57
55
  }(_AbstractFeature2["default"]);
58
56
  //# sourceMappingURL=CacheFeature.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CacheFeature.js","names":["_spruceSkillUtils","require","_AbstractFeature2","_interopRequireDefault","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","CacheFeature","exports","_AbstractFeature","_inherits2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","diskUtil","resolvePath","__dirname","_createClass2","key","value","_isInstalled","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","abrupt","stop","isInstalled","AbstractFeature"],"sources":["../../../src/features/cache/CacheFeature.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractFeature from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tcache: CacheFeature\n\t}\n}\n\nexport default class CacheFeature extends AbstractFeature {\n\tpublic description = 'Caching for all things Sprucebot.'\n\tpublic code: FeatureCode = 'cache'\n\tpublic nameReadable = 'Cache'\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic async isInstalled() {\n\t\treturn true\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAgD,SAAAG,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,IAS3Bc,YAAY,GAAAC,OAAA,qCAAAC,gBAAA;EAAA,IAAAC,UAAA,aAAAH,YAAA,EAAAE,gBAAA;EAAA,SAAAF,aAAA;IAAA,IAAAI,KAAA;IAAA,IAAAC,gBAAA,mBAAAL,YAAA;IAAA,SAAAM,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAnB,UAAA,OAAAe,YAAA,KAAAY,MAAA,CAAAH,IAAA;IAAA,IAAAI,gBAAA,iBAAAC,uBAAA,aAAAV,KAAA,kBACX,mCAAmC;IAAA,IAAAS,gBAAA,iBAAAC,uBAAA,aAAAV,KAAA,WAC7B,OAAO;IAAA,IAAAS,gBAAA,iBAAAC,uBAAA,aAAAV,KAAA,mBACZ,OAAO;IAAA,IAAAS,gBAAA,iBAAAC,uBAAA,aAAAV,KAAA,iBACTW,0BAAQ,CAACC,WAAW,CAACC,SAAS,EAAE,SAAS,CAAC;IAAA,OAAAb,KAAA;EAAA;EAAA,IAAAc,aAAA,aAAAlB,YAAA;IAAAmB,GAAA;IAAAC,KAAA;MAAA,IAAAC,YAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAE9D,SAAAC,QAAA;QAAA,OAAAF,YAAA,YAAAG,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAA,OAAAF,QAAA,CAAAG,MAAA,WACQ,IAAI;YAAA;YAAA;cAAA,OAAAH,QAAA,CAAAI,IAAA;UAAA;QAAA,GAAAP,OAAA;MAAA,CACX;MAAA,SAAAQ,YAAA;QAAA,OAAAZ,YAAA,CAAA1B,KAAA,OAAAY,SAAA;MAAA;MAAA,OAAA0B,WAAA;IAAA;EAAA;EAAA,OAAAjC,YAAA;AAAA,EARwCkC,4BAAe","ignoreList":[]}
1
+ {"version":3,"file":"CacheFeature.js","names":["_spruceSkillUtils","require","_AbstractFeature2","_interopRequireDefault","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","CacheFeature","exports","_AbstractFeature","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","diskUtil","resolvePath","__dirname","_inherits2","_createClass2","key","value","_isInstalled","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","abrupt","stop","isInstalled","AbstractFeature"],"sources":["../../../src/features/cache/CacheFeature.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractFeature from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tcache: CacheFeature\n\t}\n}\n\nexport default class CacheFeature extends AbstractFeature {\n\tpublic description = 'Caching for all things Sprucebot.'\n\tpublic code: FeatureCode = 'cache'\n\tpublic nameReadable = 'Cache'\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic async isInstalled() {\n\t\treturn true\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAgD,SAAAG,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,IAS3Bc,YAAY,GAAAC,OAAA,qCAAAC,gBAAA;EAAA,SAAAF,aAAA;IAAA,IAAAG,KAAA;IAAA,IAAAC,gBAAA,mBAAAJ,YAAA;IAAA,SAAAK,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAlB,UAAA,OAAAe,YAAA,KAAAW,MAAA,CAAAH,IAAA;IAAA,IAAAI,gBAAA,aAAAT,KAAA,iBACX,mCAAmC;IAAA,IAAAS,gBAAA,aAAAT,KAAA,UAC7B,OAAO;IAAA,IAAAS,gBAAA,aAAAT,KAAA,kBACZ,OAAO;IAAA,IAAAS,gBAAA,aAAAT,KAAA,gBACTU,0BAAQ,CAACC,WAAW,CAACC,SAAS,EAAE,SAAS,CAAC;IAAA,OAAAZ,KAAA;EAAA;EAAA,IAAAa,UAAA,aAAAhB,YAAA,EAAAE,gBAAA;EAAA,WAAAe,aAAA,aAAAjB,YAAA;IAAAkB,GAAA;IAAAC,KAAA;MAAA,IAAAC,YAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAE9D,SAAAC,QAAA;QAAA,OAAAF,YAAA,YAAAG,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAA,OAAAF,QAAA,CAAAG,MAAA,WACQ,IAAI;YAAA;YAAA;cAAA,OAAAH,QAAA,CAAAI,IAAA;UAAA;QAAA,GAAAP,OAAA;MAAA,CACX;MAAA,SAAAQ,YAAA;QAAA,OAAAZ,YAAA,CAAAzB,KAAA,OAAAW,SAAA;MAAA;MAAA,OAAA0B,WAAA;IAAA;EAAA;AAAA,EARwCC,4BAAe","ignoreList":[]}
@@ -11,7 +11,6 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
11
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
14
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
16
  var _schema = require("@sprucelabs/schema");
@@ -26,7 +25,6 @@ var optionsSchema = (0, _schema.buildSchema)({
26
25
  fields: {}
27
26
  });
28
27
  var DisableCacheAction = exports["default"] = /*#__PURE__*/function (_AbstractAction) {
29
- (0, _inherits2["default"])(DisableCacheAction, _AbstractAction);
30
28
  function DisableCacheAction() {
31
29
  var _this;
32
30
  (0, _classCallCheck2["default"])(this, DisableCacheAction);
@@ -34,12 +32,13 @@ var DisableCacheAction = exports["default"] = /*#__PURE__*/function (_AbstractAc
34
32
  args[_key] = arguments[_key];
35
33
  }
36
34
  _this = _callSuper(this, DisableCacheAction, [].concat(args));
37
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "optionsSchema", optionsSchema);
38
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "commandAliases", ['disable.cache', 'stop.cache', 'disable.caching', 'stop.caching']);
39
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "invocationMessage", 'Disabling cache...');
35
+ (0, _defineProperty2["default"])(_this, "optionsSchema", optionsSchema);
36
+ (0, _defineProperty2["default"])(_this, "commandAliases", ['disable.cache', 'stop.cache', 'disable.caching', 'stop.caching']);
37
+ (0, _defineProperty2["default"])(_this, "invocationMessage", 'Disabling cache...');
40
38
  return _this;
41
39
  }
42
- (0, _createClass2["default"])(DisableCacheAction, [{
40
+ (0, _inherits2["default"])(DisableCacheAction, _AbstractAction);
41
+ return (0, _createClass2["default"])(DisableCacheAction, [{
43
42
  key: "execute",
44
43
  value: function () {
45
44
  var _execute = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_options) {
@@ -98,6 +97,5 @@ var DisableCacheAction = exports["default"] = /*#__PURE__*/function (_AbstractAc
98
97
  return execute;
99
98
  }()
100
99
  }]);
101
- return DisableCacheAction;
102
100
  }(_AbstractAction2["default"]);
103
101
  //# sourceMappingURL=DisableAction.js.map