@sprucelabs/spruce-cli 17.1.53 → 17.1.54

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 (1060) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/.spruce/errors/spruceCli/actionCancelled.schema.js +0 -4
  3. package/build/.spruce/errors/spruceCli/actionCancelled.schema.js.map +1 -1
  4. package/build/.spruce/errors/spruceCli/bootError.schema.js +0 -4
  5. package/build/.spruce/errors/spruceCli/bootError.schema.js.map +1 -1
  6. package/build/.spruce/errors/spruceCli/buildFailed.schema.js +0 -4
  7. package/build/.spruce/errors/spruceCli/buildFailed.schema.js.map +1 -1
  8. package/build/.spruce/errors/spruceCli/cacheNotEnabled.schema.js +0 -4
  9. package/build/.spruce/errors/spruceCli/cacheNotEnabled.schema.js.map +1 -1
  10. package/build/.spruce/errors/spruceCli/commandAborted.schema.js +0 -4
  11. package/build/.spruce/errors/spruceCli/commandAborted.schema.js.map +1 -1
  12. package/build/.spruce/errors/spruceCli/commandBlocked.schema.js +0 -5
  13. package/build/.spruce/errors/spruceCli/commandBlocked.schema.js.map +1 -1
  14. package/build/.spruce/errors/spruceCli/commandNotImplemented.schema.js +0 -5
  15. package/build/.spruce/errors/spruceCli/commandNotImplemented.schema.js.map +1 -1
  16. package/build/.spruce/errors/spruceCli/createAutoloaderFailed.schema.js +0 -7
  17. package/build/.spruce/errors/spruceCli/createAutoloaderFailed.schema.js.map +1 -1
  18. package/build/.spruce/errors/spruceCli/dependencyExists.schema.js +0 -4
  19. package/build/.spruce/errors/spruceCli/dependencyExists.schema.js.map +1 -1
  20. package/build/.spruce/errors/spruceCli/deployFailed.schema.js +0 -4
  21. package/build/.spruce/errors/spruceCli/deployFailed.schema.js.map +1 -1
  22. package/build/.spruce/errors/spruceCli/directoryEmpty.schema.js +0 -4
  23. package/build/.spruce/errors/spruceCli/directoryEmpty.schema.js.map +1 -1
  24. package/build/.spruce/errors/spruceCli/directoryNotSkill.schema.js +0 -4
  25. package/build/.spruce/errors/spruceCli/directoryNotSkill.schema.js.map +1 -1
  26. package/build/.spruce/errors/spruceCli/dockerNotStarted.schema.js +0 -4
  27. package/build/.spruce/errors/spruceCli/dockerNotStarted.schema.js.map +1 -1
  28. package/build/.spruce/errors/spruceCli/executingCommandFailed.schema.js +0 -8
  29. package/build/.spruce/errors/spruceCli/executingCommandFailed.schema.js.map +1 -1
  30. package/build/.spruce/errors/spruceCli/failedToImport.schema.js +0 -4
  31. package/build/.spruce/errors/spruceCli/failedToImport.schema.js.map +1 -1
  32. package/build/.spruce/errors/spruceCli/featureNotInstalled.schema.js +0 -4
  33. package/build/.spruce/errors/spruceCli/featureNotInstalled.schema.js.map +1 -1
  34. package/build/.spruce/errors/spruceCli/fileExists.schema.js +0 -4
  35. package/build/.spruce/errors/spruceCli/fileExists.schema.js.map +1 -1
  36. package/build/.spruce/errors/spruceCli/generic.schema.js +0 -4
  37. package/build/.spruce/errors/spruceCli/generic.schema.js.map +1 -1
  38. package/build/.spruce/errors/spruceCli/invalidCommand.schema.js +0 -4
  39. package/build/.spruce/errors/spruceCli/invalidCommand.schema.js.map +1 -1
  40. package/build/.spruce/errors/spruceCli/invalidEventContract.schema.js +0 -5
  41. package/build/.spruce/errors/spruceCli/invalidEventContract.schema.js.map +1 -1
  42. package/build/.spruce/errors/spruceCli/invalidFeatureCode.schema.js +0 -4
  43. package/build/.spruce/errors/spruceCli/invalidFeatureCode.schema.js.map +1 -1
  44. package/build/.spruce/errors/spruceCli/invalidTestDirectory.schema.js +0 -4
  45. package/build/.spruce/errors/spruceCli/invalidTestDirectory.schema.js.map +1 -1
  46. package/build/.spruce/errors/spruceCli/lintFailed.schema.js +0 -4
  47. package/build/.spruce/errors/spruceCli/lintFailed.schema.js.map +1 -1
  48. package/build/.spruce/errors/spruceCli/mercuryResponseError.schema.js +0 -4
  49. package/build/.spruce/errors/spruceCli/mercuryResponseError.schema.js.map +1 -1
  50. package/build/.spruce/errors/spruceCli/missingDependencies.schema.js +0 -6
  51. package/build/.spruce/errors/spruceCli/missingDependencies.schema.js.map +1 -1
  52. package/build/.spruce/errors/spruceCli/missingDependenciesDependency.schema.js +0 -5
  53. package/build/.spruce/errors/spruceCli/missingDependenciesDependency.schema.js.map +1 -1
  54. package/build/.spruce/errors/spruceCli/noOrganizationsFound.schema.js +0 -4
  55. package/build/.spruce/errors/spruceCli/noOrganizationsFound.schema.js.map +1 -1
  56. package/build/.spruce/errors/spruceCli/noSkillsRegistered.schema.js +0 -4
  57. package/build/.spruce/errors/spruceCli/noSkillsRegistered.schema.js.map +1 -1
  58. package/build/.spruce/errors/spruceCli/notImplemented.schema.js +0 -4
  59. package/build/.spruce/errors/spruceCli/notImplemented.schema.js.map +1 -1
  60. package/build/.spruce/errors/spruceCli/notLoggedIn.schema.js +0 -4
  61. package/build/.spruce/errors/spruceCli/notLoggedIn.schema.js.map +1 -1
  62. package/build/.spruce/errors/spruceCli/schemaExists.schema.js +0 -5
  63. package/build/.spruce/errors/spruceCli/schemaExists.schema.js.map +1 -1
  64. package/build/.spruce/errors/spruceCli/schemaFailedToImport.schema.js +0 -4
  65. package/build/.spruce/errors/spruceCli/schemaFailedToImport.schema.js.map +1 -1
  66. package/build/.spruce/errors/spruceCli/schemaTemplateItemBuildingFailed.schema.js +0 -7
  67. package/build/.spruce/errors/spruceCli/schemaTemplateItemBuildingFailed.schema.js.map +1 -1
  68. package/build/.spruce/errors/spruceCli/skillNotFound.schema.js +0 -4
  69. package/build/.spruce/errors/spruceCli/skillNotFound.schema.js.map +1 -1
  70. package/build/.spruce/errors/spruceCli/skillNotRegistered.schema.js +0 -4
  71. package/build/.spruce/errors/spruceCli/skillNotRegistered.schema.js.map +1 -1
  72. package/build/.spruce/errors/spruceCli/skillViewExists.schema.js +0 -4
  73. package/build/.spruce/errors/spruceCli/skillViewExists.schema.js.map +1 -1
  74. package/build/.spruce/errors/spruceCli/storeExists.schema.js +0 -4
  75. package/build/.spruce/errors/spruceCli/storeExists.schema.js.map +1 -1
  76. package/build/.spruce/errors/spruceCli/testFailed.schema.js +0 -6
  77. package/build/.spruce/errors/spruceCli/testFailed.schema.js.map +1 -1
  78. package/build/.spruce/errors/spruceCli/themeExists.schema.js +0 -4
  79. package/build/.spruce/errors/spruceCli/themeExists.schema.js.map +1 -1
  80. package/build/.spruce/errors/spruceCli/transportAlreadyExists.schema.js +0 -4
  81. package/build/.spruce/errors/spruceCli/transportAlreadyExists.schema.js.map +1 -1
  82. package/build/.spruce/errors/spruceCli/vscodeNotInstalled.schema.js +0 -4
  83. package/build/.spruce/errors/spruceCli/vscodeNotInstalled.schema.js.map +1 -1
  84. package/build/.spruce/events/events.contract.js +0 -10
  85. package/build/.spruce/events/events.contract.js.map +1 -1
  86. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js +0 -4
  87. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
  88. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js +0 -5
  89. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
  90. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js +0 -5
  91. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
  92. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js +0 -4
  93. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js.map +1 -1
  94. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js +0 -5
  95. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
  96. package/build/.spruce/schemas/fields/fieldClassMap.js +0 -2
  97. package/build/.spruce/schemas/fields/fieldClassMap.js.map +1 -1
  98. package/build/.spruce/schemas/fields/fields.types.js +0 -1
  99. package/build/.spruce/schemas/fields/fields.types.js.map +1 -1
  100. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitPayload.schema.js +0 -4
  101. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitPayload.schema.js.map +1 -1
  102. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTarget.schema.js +0 -4
  103. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTarget.schema.js.map +1 -1
  104. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTargetAndPayload.schema.js +0 -10
  105. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  106. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitPayload.schema.js +0 -4
  107. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitPayload.schema.js.map +1 -1
  108. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTarget.schema.js +0 -4
  109. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTarget.schema.js.map +1 -1
  110. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTargetAndPayload.schema.js +0 -10
  111. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTargetAndPayload.schema.js.map +1 -1
  112. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlResponsePayload.schema.js +0 -4
  113. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlResponsePayload.schema.js.map +1 -1
  114. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTarget.schema.js +0 -4
  115. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTarget.schema.js.map +1 -1
  116. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTargetAndPayload.schema.js +0 -8
  117. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTargetAndPayload.schema.js.map +1 -1
  118. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeResponsePayload.schema.js +0 -6
  119. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeResponsePayload.schema.js.map +1 -1
  120. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsEmitTargetAndPayload.schema.js +0 -8
  121. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  122. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsResponsePayload.schema.js +0 -9
  123. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsResponsePayload.schema.js.map +1 -1
  124. package/build/.spruce/schemas/heartwood/v2021_02_11/getViewControllersEmitTarget.schema.js +0 -4
  125. package/build/.spruce/schemas/heartwood/v2021_02_11/getViewControllersEmitTarget.schema.js.map +1 -1
  126. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js +0 -6
  127. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js.map +1 -1
  128. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js +0 -6
  129. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js.map +1 -1
  130. package/build/.spruce/schemas/heartwood/v2021_02_11/registerDashboardCardsResponsePayload.schema.js +0 -4
  131. package/build/.spruce/schemas/heartwood/v2021_02_11/registerDashboardCardsResponsePayload.schema.js.map +1 -1
  132. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitPayload.schema.js +0 -8
  133. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitPayload.schema.js.map +1 -1
  134. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitTargetAndPayload.schema.js +0 -8
  135. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  136. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsResponsePayload.schema.js +0 -4
  137. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsResponsePayload.schema.js.map +1 -1
  138. package/build/.spruce/schemas/heartwood/v2021_02_11/theme.schema.js +0 -8
  139. package/build/.spruce/schemas/heartwood/v2021_02_11/theme.schema.js.map +1 -1
  140. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitPayload.schema.js +0 -6
  141. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitPayload.schema.js.map +1 -1
  142. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTarget.schema.js +0 -4
  143. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTarget.schema.js.map +1 -1
  144. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTargetAndPayload.schema.js +0 -10
  145. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTargetAndPayload.schema.js.map +1 -1
  146. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeResponsePayload.schema.js +0 -6
  147. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeResponsePayload.schema.js.map +1 -1
  148. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/theme.schema.js +0 -1
  149. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/theme.schema.js.map +1 -1
  150. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/themeProps.schema.js +0 -1
  151. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/themeProps.schema.js.map +1 -1
  152. package/build/.spruce/schemas/schemas.types.js +0 -2
  153. package/build/.spruce/schemas/schemas.types.js.map +1 -1
  154. package/build/.spruce/schemas/spruce/v2020_07_22/choice.schema.js +0 -1
  155. package/build/.spruce/schemas/spruce/v2020_07_22/choice.schema.js.map +1 -1
  156. package/build/.spruce/schemas/spruce/v2020_07_22/link.schema.js +0 -1
  157. package/build/.spruce/schemas/spruce/v2020_07_22/link.schema.js.map +1 -1
  158. package/build/.spruce/schemas/spruce/v2020_07_22/location.schema.js +0 -1
  159. package/build/.spruce/schemas/spruce/v2020_07_22/location.schema.js.map +1 -1
  160. package/build/.spruce/schemas/spruce/v2020_07_22/message.schema.js +0 -1
  161. package/build/.spruce/schemas/spruce/v2020_07_22/message.schema.js.map +1 -1
  162. package/build/.spruce/schemas/spruce/v2020_07_22/messageSource.schema.js +0 -1
  163. package/build/.spruce/schemas/spruce/v2020_07_22/messageSource.schema.js.map +1 -1
  164. package/build/.spruce/schemas/spruce/v2020_07_22/messageTarget.schema.js +0 -1
  165. package/build/.spruce/schemas/spruce/v2020_07_22/messageTarget.schema.js.map +1 -1
  166. package/build/.spruce/schemas/spruce/v2020_07_22/organization.schema.js +0 -1
  167. package/build/.spruce/schemas/spruce/v2020_07_22/organization.schema.js.map +1 -1
  168. package/build/.spruce/schemas/spruce/v2020_07_22/person.schema.js +0 -1
  169. package/build/.spruce/schemas/spruce/v2020_07_22/person.schema.js.map +1 -1
  170. package/build/.spruce/schemas/spruce/v2020_07_22/personLocation.schema.js +0 -1
  171. package/build/.spruce/schemas/spruce/v2020_07_22/personLocation.schema.js.map +1 -1
  172. package/build/.spruce/schemas/spruce/v2020_07_22/personOrganization.schema.js +0 -1
  173. package/build/.spruce/schemas/spruce/v2020_07_22/personOrganization.schema.js.map +1 -1
  174. package/build/.spruce/schemas/spruce/v2020_07_22/role.schema.js +0 -1
  175. package/build/.spruce/schemas/spruce/v2020_07_22/role.schema.js.map +1 -1
  176. package/build/.spruce/schemas/spruce/v2020_07_22/sendMessage.schema.js +0 -1
  177. package/build/.spruce/schemas/spruce/v2020_07_22/sendMessage.schema.js.map +1 -1
  178. package/build/.spruce/schemas/spruce/v2020_07_22/skill.schema.js +0 -1
  179. package/build/.spruce/schemas/spruce/v2020_07_22/skill.schema.js.map +1 -1
  180. package/build/.spruce/schemas/spruce/v2020_07_22/skillCreator.schema.js +0 -1
  181. package/build/.spruce/schemas/spruce/v2020_07_22/skillCreator.schema.js.map +1 -1
  182. package/build/.spruce/schemas/spruceCli/v2020_07_22/bootSkillOptions.schema.js +0 -7
  183. package/build/.spruce/schemas/spruceCli/v2020_07_22/bootSkillOptions.schema.js.map +1 -1
  184. package/build/.spruce/schemas/spruceCli/v2020_07_22/createConversationTopicOptions.schema.js +0 -5
  185. package/build/.spruce/schemas/spruceCli/v2020_07_22/createConversationTopicOptions.schema.js.map +1 -1
  186. package/build/.spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema.js +0 -27
  187. package/build/.spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema.js.map +1 -1
  188. package/build/.spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema.js +0 -5
  189. package/build/.spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema.js.map +1 -1
  190. package/build/.spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema.js +0 -29
  191. package/build/.spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema.js.map +1 -1
  192. package/build/.spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema.js +0 -8
  193. package/build/.spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema.js.map +1 -1
  194. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedDir.schema.js +0 -7
  195. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedDir.schema.js.map +1 -1
  196. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedFile.schema.js +0 -7
  197. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedFile.schema.js.map +1 -1
  198. package/build/.spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema.js +0 -4
  199. package/build/.spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema.js.map +1 -1
  200. package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js +0 -12
  201. package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js.map +1 -1
  202. package/build/.spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema.js +0 -14
  203. package/build/.spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema.js.map +1 -1
  204. package/build/.spruce/schemas/spruceCli/v2020_07_22/nodeFeatureOptions.schema.js +0 -6
  205. package/build/.spruce/schemas/spruceCli/v2020_07_22/nodeFeatureOptions.schema.js.map +1 -1
  206. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboardOptions.schema.js +0 -4
  207. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboardOptions.schema.js.map +1 -1
  208. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboarding.schema.js +0 -5
  209. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboarding.schema.js.map +1 -1
  210. package/build/.spruce/schemas/spruceCli/v2020_07_22/personWithToken.schema.js +0 -7
  211. package/build/.spruce/schemas/spruceCli/v2020_07_22/personWithToken.schema.js.map +1 -1
  212. package/build/.spruce/schemas/spruceCli/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.schema.js +0 -4
  213. package/build/.spruce/schemas/spruceCli/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.schema.js.map +1 -1
  214. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js +0 -5
  215. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js.map +1 -1
  216. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema.js +0 -4
  217. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema.js.map +1 -1
  218. package/build/.spruce/schemas/spruceCli/v2020_07_22/skillFeature.schema.js +0 -6
  219. package/build/.spruce/schemas/spruceCli/v2020_07_22/skillFeature.schema.js.map +1 -1
  220. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema.js +0 -22
  221. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema.js.map +1 -1
  222. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema.js +0 -8
  223. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema.js.map +1 -1
  224. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema.js +0 -6
  225. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema.js.map +1 -1
  226. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema.js +0 -21
  227. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema.js.map +1 -1
  228. package/build/.spruce/schemas/spruceCli/v2020_07_22/testOptions.schema.js +0 -9
  229. package/build/.spruce/schemas/spruceCli/v2020_07_22/testOptions.schema.js.map +1 -1
  230. package/build/.spruce/schemas/spruceCli/v2020_07_22/upgradeSkillOptions.schema.js +0 -4
  231. package/build/.spruce/schemas/spruceCli/v2020_07_22/upgradeSkillOptions.schema.js.map +1 -1
  232. package/build/.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema.js +0 -7
  233. package/build/.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema.js.map +1 -1
  234. package/build/.spruce/schemas/spruceEventUtils/v2021_09_13/eventSource.schema.js +0 -1
  235. package/build/.spruce/schemas/spruceEventUtils/v2021_09_13/eventSource.schema.js.map +1 -1
  236. package/build/.spruce/skill.types.js +0 -3
  237. package/build/.spruce/skill.types.js.map +1 -1
  238. package/build/GlobalEmitter.js +0 -22
  239. package/build/GlobalEmitter.js.map +1 -1
  240. package/build/InFlightEntertainment.js +0 -13
  241. package/build/InFlightEntertainment.js.map +1 -1
  242. package/build/__tests__/behavioral/AddingADependency.test.js +0 -69
  243. package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
  244. package/build/__tests__/behavioral/BlockingCommands.test.js +0 -34
  245. package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
  246. package/build/__tests__/behavioral/BootingTheCli.test.js +0 -23
  247. package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
  248. package/build/__tests__/behavioral/BootingWithBadFiles.test.js +0 -41
  249. package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
  250. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js +6 -48
  251. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
  252. package/build/__tests__/behavioral/CreatingSchemasWithGenerics.test.js +0 -34
  253. package/build/__tests__/behavioral/CreatingSchemasWithGenerics.test.js.map +1 -1
  254. package/build/__tests__/behavioral/DeployingASkill.test.js +0 -215
  255. package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
  256. package/build/__tests__/behavioral/DeployingToSandbox.test.js +4 -141
  257. package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
  258. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js +0 -78
  259. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
  260. package/build/__tests__/behavioral/GettingCliVersion.test.js +0 -33
  261. package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
  262. package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js +0 -89
  263. package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js.map +1 -1
  264. package/build/__tests__/behavioral/ListeningToCoreEvents.test.js +0 -31
  265. package/build/__tests__/behavioral/ListeningToCoreEvents.test.js.map +1 -1
  266. package/build/__tests__/behavioral/LoggingInAsASkill.test.js +0 -84
  267. package/build/__tests__/behavioral/LoggingInAsASkill.test.js.map +1 -1
  268. package/build/__tests__/behavioral/ManagingDependencies.test.js +0 -55
  269. package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
  270. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js +0 -32
  271. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
  272. package/build/__tests__/behavioral/RebuildingASkill.test.js +0 -36
  273. package/build/__tests__/behavioral/RebuildingASkill.test.js.map +1 -1
  274. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js +0 -33
  275. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
  276. package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js +0 -47
  277. package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js.map +1 -1
  278. package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js +0 -68
  279. package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js.map +1 -1
  280. package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js +0 -58
  281. package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js.map +1 -1
  282. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js +0 -42
  283. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
  284. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js +3 -64
  285. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
  286. package/build/__tests__/behavioral/SettingRemote.test.js +0 -49
  287. package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
  288. package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js +0 -49
  289. package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js.map +1 -1
  290. package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js +6 -142
  291. package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
  292. package/build/__tests__/behavioral/SettingUpVscode.test.js +0 -40
  293. package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
  294. package/build/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.js +0 -54
  295. package/build/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
  296. package/build/__tests__/behavioral/TestReporterSettingsRemembered.test.js +0 -35
  297. package/build/__tests__/behavioral/TestReporterSettingsRemembered.test.js.map +1 -1
  298. package/build/__tests__/behavioral/TestingAConversation.test.js +0 -77
  299. package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
  300. package/build/__tests__/behavioral/TestingDataStores.test.js +0 -51
  301. package/build/__tests__/behavioral/TestingDataStores.test.js.map +1 -1
  302. package/build/__tests__/behavioral/WatchingSkillViews.test.js +1 -120
  303. package/build/__tests__/behavioral/WatchingSkillViews.test.js.map +1 -1
  304. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js +0 -58
  305. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
  306. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js +0 -52
  307. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
  308. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js +16 -97
  309. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
  310. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js +0 -32
  311. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
  312. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +0 -95
  313. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
  314. package/build/__tests__/behavioral/events/CreatingAListener.test.js +2 -160
  315. package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
  316. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +0 -135
  317. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
  318. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js +7 -154
  319. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
  320. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js +1 -154
  321. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
  322. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js +0 -39
  323. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
  324. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js +0 -41
  325. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
  326. package/build/__tests__/behavioral/events/SettingUpEvents.test.js +0 -25
  327. package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
  328. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +0 -43
  329. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
  330. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js +0 -38
  331. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
  332. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +0 -55
  333. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
  334. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js +0 -38
  335. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
  336. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js +0 -31
  337. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
  338. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js +0 -79
  339. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
  340. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js +0 -37
  341. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
  342. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js +0 -59
  343. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js.map +1 -1
  344. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js +2 -107
  345. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
  346. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js +0 -37
  347. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
  348. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js +0 -43
  349. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
  350. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js +5 -70
  351. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
  352. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js +0 -32
  353. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
  354. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js +14 -215
  355. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
  356. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js +0 -40
  357. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
  358. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js +0 -30
  359. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
  360. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js +0 -26
  361. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
  362. package/build/__tests__/behavioral/skill/BootingASkill.test.js +0 -54
  363. package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
  364. package/build/__tests__/behavioral/skill/CreatingASkill.test.js +0 -35
  365. package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
  366. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js +0 -61
  367. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
  368. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js +0 -89
  369. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
  370. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js +22 -116
  371. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
  372. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js +0 -64
  373. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
  374. package/build/__tests__/behavioral/tests/CreatingATest.test.js +6 -115
  375. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  376. package/build/__tests__/behavioral/tests/RunningTests.test.js +0 -43
  377. package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
  378. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +2 -138
  379. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
  380. package/build/__tests__/behavioral/tests/SettingUpTests.test.js +2 -31
  381. package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
  382. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js +0 -48
  383. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
  384. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js +0 -65
  385. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
  386. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js +0 -53
  387. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
  388. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js +0 -117
  389. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
  390. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js +5 -101
  391. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
  392. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js +2 -117
  393. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
  394. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js +0 -67
  395. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
  396. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js +0 -65
  397. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
  398. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js +5 -37
  399. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
  400. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js +0 -62
  401. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
  402. package/build/__tests__/behavioral/views/CreatingASkillView.test.js +1 -111
  403. package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
  404. package/build/__tests__/behavioral/views/CreatingATheme.test.js +0 -55
  405. package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
  406. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js +0 -47
  407. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
  408. package/build/__tests__/behavioral/views/SettingUpViews.test.js +0 -30
  409. package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
  410. package/build/__tests__/behavioral/views/TestingViewControllers.test.js +0 -59
  411. package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
  412. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js +0 -121
  413. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
  414. package/build/__tests__/implementation/ActionExecuter.test.js +0 -57
  415. package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
  416. package/build/__tests__/implementation/ActionExecuter2.test.js +0 -112
  417. package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
  418. package/build/__tests__/implementation/ActionExecuter3.test.js +0 -40
  419. package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
  420. package/build/__tests__/implementation/ActionExecuter4.test.js +2 -38
  421. package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
  422. package/build/__tests__/implementation/ArgParser.test.js +0 -28
  423. package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
  424. package/build/__tests__/implementation/BuildService.test.js +0 -31
  425. package/build/__tests__/implementation/BuildService.test.js.map +1 -1
  426. package/build/__tests__/implementation/BulkImporting.test.js +0 -86
  427. package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
  428. package/build/__tests__/implementation/CachingImports.test.js +0 -59
  429. package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
  430. package/build/__tests__/implementation/CommandOptionBuilder.test.js +0 -29
  431. package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
  432. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js +0 -60
  433. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
  434. package/build/__tests__/implementation/DataStoreStore.test.js +0 -78
  435. package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
  436. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js +2 -34
  437. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
  438. package/build/__tests__/implementation/EventContractCleanerUtil.test.js +0 -43
  439. package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
  440. package/build/__tests__/implementation/EventStore.test.js +0 -155
  441. package/build/__tests__/implementation/EventStore.test.js.map +1 -1
  442. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js +80 -129
  443. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
  444. package/build/__tests__/implementation/FeatureCommandAttacher.test.js +0 -78
  445. package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
  446. package/build/__tests__/implementation/FeatureFixture.test.js +2 -42
  447. package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
  448. package/build/__tests__/implementation/FeatureInstaller.test.js +0 -41
  449. package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
  450. package/build/__tests__/implementation/FeaturesUtil.test.js +0 -25
  451. package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
  452. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js +0 -30
  453. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
  454. package/build/__tests__/implementation/GlobalEmitter.js +0 -22
  455. package/build/__tests__/implementation/GlobalEmitter.js.map +1 -1
  456. package/build/__tests__/implementation/Introspection.test.js +0 -22
  457. package/build/__tests__/implementation/Introspection.test.js.map +1 -1
  458. package/build/__tests__/implementation/JestJsonParser.test.js +0 -61
  459. package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
  460. package/build/__tests__/implementation/LintService.test.js +0 -33
  461. package/build/__tests__/implementation/LintService.test.js.map +1 -1
  462. package/build/__tests__/implementation/ListenerStore.test.js +2 -19
  463. package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
  464. package/build/__tests__/implementation/OnboardingScriptLoader.test.js +0 -43
  465. package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
  466. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js +0 -74
  467. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
  468. package/build/__tests__/implementation/OnboardingStore.test.js +0 -39
  469. package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
  470. package/build/__tests__/implementation/OrganizationStore.test.js +0 -59
  471. package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
  472. package/build/__tests__/implementation/ParentTestFinder.test.js +0 -35
  473. package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
  474. package/build/__tests__/implementation/PkgService.test.js +0 -55
  475. package/build/__tests__/implementation/PkgService.test.js.map +1 -1
  476. package/build/__tests__/implementation/SchemaStore.test.js +20 -154
  477. package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
  478. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js +0 -37
  479. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
  480. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js +0 -72
  481. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
  482. package/build/__tests__/implementation/ServiceFactory.test.js +0 -25
  483. package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
  484. package/build/__tests__/implementation/SettingUpANodeModule.test.js +0 -35
  485. package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
  486. package/build/__tests__/implementation/SkillStore.test.js +0 -93
  487. package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
  488. package/build/__tests__/implementation/StoreFeature.test.js +0 -31
  489. package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
  490. package/build/__tests__/implementation/TestReporter.test.js +0 -35
  491. package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
  492. package/build/__tests__/implementation/TestRunner.test.js +0 -102
  493. package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
  494. package/build/__tests__/implementation/ValueTypeMapping.test.js +0 -31
  495. package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
  496. package/build/__tests__/implementation/Widgets.test.js +0 -42
  497. package/build/__tests__/implementation/Widgets.test.js.map +1 -1
  498. package/build/__tests__/support/onTestFileResult.js +0 -2
  499. package/build/__tests__/support/onTestFileResult.js.map +1 -1
  500. package/build/__tests__/support/scripts/first.script.js +0 -7
  501. package/build/__tests__/support/scripts/first.script.js.map +1 -1
  502. package/build/__tests__/support/scripts/second.script.js.map +1 -1
  503. package/build/__tests__/support/scripts/third.test.script.js.map +1 -1
  504. package/build/addons/filePrompt.addon.js +1 -3
  505. package/build/addons/filePrompt.addon.js.map +1 -1
  506. package/build/cli.js +14 -165
  507. package/build/cli.js.map +1 -1
  508. package/build/components/AbstractComponent.js +0 -10
  509. package/build/components/AbstractComponent.js.map +1 -1
  510. package/build/components/FormComponent.js +36 -113
  511. package/build/components/FormComponent.js.map +1 -1
  512. package/build/components/QuizComponent.js +45 -88
  513. package/build/components/QuizComponent.js.map +1 -1
  514. package/build/constants.js.map +1 -1
  515. package/build/errors/SpruceError.js +2 -86
  516. package/build/errors/SpruceError.js.map +1 -1
  517. package/build/errors/actionCancelled.builder.js +0 -3
  518. package/build/errors/actionCancelled.builder.js.map +1 -1
  519. package/build/errors/bootError.builder.js +0 -3
  520. package/build/errors/bootError.builder.js.map +1 -1
  521. package/build/errors/buildFailed.builder.js +0 -3
  522. package/build/errors/buildFailed.builder.js.map +1 -1
  523. package/build/errors/cacheNotEnabled.builder.js +0 -3
  524. package/build/errors/cacheNotEnabled.builder.js.map +1 -1
  525. package/build/errors/commandAborted.builder.js +0 -3
  526. package/build/errors/commandAborted.builder.js.map +1 -1
  527. package/build/errors/commandBlocked.builder.js +0 -3
  528. package/build/errors/commandBlocked.builder.js.map +1 -1
  529. package/build/errors/commandNotImplemented.builder.js +0 -3
  530. package/build/errors/commandNotImplemented.builder.js.map +1 -1
  531. package/build/errors/createAutoloaderFailed.builder.js +0 -3
  532. package/build/errors/createAutoloaderFailed.builder.js.map +1 -1
  533. package/build/errors/dependencyExists.builder.js +0 -3
  534. package/build/errors/dependencyExists.builder.js.map +1 -1
  535. package/build/errors/deployFailed.builder.js +0 -3
  536. package/build/errors/deployFailed.builder.js.map +1 -1
  537. package/build/errors/directoryEmpty.builder.js +0 -3
  538. package/build/errors/directoryEmpty.builder.js.map +1 -1
  539. package/build/errors/directoryNotSkill.builder.js +0 -3
  540. package/build/errors/directoryNotSkill.builder.js.map +1 -1
  541. package/build/errors/dockerNotStarted.builder.js +0 -3
  542. package/build/errors/dockerNotStarted.builder.js.map +1 -1
  543. package/build/errors/executingCommandFailed.builder.js +0 -3
  544. package/build/errors/executingCommandFailed.builder.js.map +1 -1
  545. package/build/errors/failedToImport.builder.js +0 -2
  546. package/build/errors/failedToImport.builder.js.map +1 -1
  547. package/build/errors/featureNotInstalled.builder.js +0 -3
  548. package/build/errors/featureNotInstalled.builder.js.map +1 -1
  549. package/build/errors/fileExists.builder.js +0 -2
  550. package/build/errors/fileExists.builder.js.map +1 -1
  551. package/build/errors/generic.builder.js +0 -2
  552. package/build/errors/generic.builder.js.map +1 -1
  553. package/build/errors/invalidCommand.builder.js +0 -2
  554. package/build/errors/invalidCommand.builder.js.map +1 -1
  555. package/build/errors/invalidEventContract.builder.js +0 -3
  556. package/build/errors/invalidEventContract.builder.js.map +1 -1
  557. package/build/errors/invalidFeatureCode.builder.js +0 -3
  558. package/build/errors/invalidFeatureCode.builder.js.map +1 -1
  559. package/build/errors/invalidTestDirectory.builder.js +0 -3
  560. package/build/errors/invalidTestDirectory.builder.js.map +1 -1
  561. package/build/errors/lintFailed.builder.js +0 -2
  562. package/build/errors/lintFailed.builder.js.map +1 -1
  563. package/build/errors/mercuryResponseError.builder.js +0 -3
  564. package/build/errors/mercuryResponseError.builder.js.map +1 -1
  565. package/build/errors/missingDependencies.builder.js +0 -3
  566. package/build/errors/missingDependencies.builder.js.map +1 -1
  567. package/build/errors/noOrganizationsFound.builder.js +0 -3
  568. package/build/errors/noOrganizationsFound.builder.js.map +1 -1
  569. package/build/errors/noSkillsRegistered.builder.js +0 -3
  570. package/build/errors/noSkillsRegistered.builder.js.map +1 -1
  571. package/build/errors/notImplemented.builder.js +0 -2
  572. package/build/errors/notImplemented.builder.js.map +1 -1
  573. package/build/errors/notLoggedIn.builder.js +0 -3
  574. package/build/errors/notLoggedIn.builder.js.map +1 -1
  575. package/build/errors/schemaExists.builder.js +0 -3
  576. package/build/errors/schemaExists.builder.js.map +1 -1
  577. package/build/errors/schemaFailedToImport.builder.js +0 -3
  578. package/build/errors/schemaFailedToImport.builder.js.map +1 -1
  579. package/build/errors/schemaTemplateItemBuildingFailed.builder.js +0 -3
  580. package/build/errors/schemaTemplateItemBuildingFailed.builder.js.map +1 -1
  581. package/build/errors/skillNotFound.builder.js +0 -3
  582. package/build/errors/skillNotFound.builder.js.map +1 -1
  583. package/build/errors/skillNotRegistered.builder.js +0 -3
  584. package/build/errors/skillNotRegistered.builder.js.map +1 -1
  585. package/build/errors/skillViewExists.builder.js +0 -3
  586. package/build/errors/skillViewExists.builder.js.map +1 -1
  587. package/build/errors/storeExists.builder.js +0 -3
  588. package/build/errors/storeExists.builder.js.map +1 -1
  589. package/build/errors/testFailed.builder.js +0 -3
  590. package/build/errors/testFailed.builder.js.map +1 -1
  591. package/build/errors/themeExists.builder.js +0 -3
  592. package/build/errors/themeExists.builder.js.map +1 -1
  593. package/build/errors/transportAlreadyExists.builder.js +0 -3
  594. package/build/errors/transportAlreadyExists.builder.js.map +1 -1
  595. package/build/errors/vscodeNotInstalled.builder.js +0 -3
  596. package/build/errors/vscodeNotInstalled.builder.js.map +1 -1
  597. package/build/features/AbstractAction.js +0 -36
  598. package/build/features/AbstractAction.js.map +1 -1
  599. package/build/features/AbstractFeature.js +0 -40
  600. package/build/features/AbstractFeature.js.map +1 -1
  601. package/build/features/ActionExecuter.js +0 -85
  602. package/build/features/ActionExecuter.js.map +1 -1
  603. package/build/features/ActionFactory.js +9 -30
  604. package/build/features/ActionFactory.js.map +1 -1
  605. package/build/features/ActionQuestionAsker.js +0 -111
  606. package/build/features/ActionQuestionAsker.js.map +1 -1
  607. package/build/features/FeatureCommandAttacher.js +16 -64
  608. package/build/features/FeatureCommandAttacher.js.map +1 -1
  609. package/build/features/FeatureInstaller.js +5 -157
  610. package/build/features/FeatureInstaller.js.map +1 -1
  611. package/build/features/FeatureInstallerFactory.js +5 -37
  612. package/build/features/FeatureInstallerFactory.js.map +1 -1
  613. package/build/features/OverrideActionDecorator.js +11 -52
  614. package/build/features/OverrideActionDecorator.js.map +1 -1
  615. package/build/features/cache/CacheFeature.js +0 -25
  616. package/build/features/cache/CacheFeature.js.map +1 -1
  617. package/build/features/cache/actions/DisableAction.js +0 -34
  618. package/build/features/cache/actions/DisableAction.js.map +1 -1
  619. package/build/features/cache/actions/EnableAction.js +0 -35
  620. package/build/features/cache/actions/EnableAction.js.map +1 -1
  621. package/build/features/cache/constants.js.map +1 -1
  622. package/build/features/conversation/ConversationFeature.js +0 -35
  623. package/build/features/conversation/ConversationFeature.js.map +1 -1
  624. package/build/features/conversation/actions/CreateAction.js +0 -27
  625. package/build/features/conversation/actions/CreateAction.js.map +1 -1
  626. package/build/features/conversation/actions/TestAction.js +2 -48
  627. package/build/features/conversation/actions/TestAction.js.map +1 -1
  628. package/build/features/conversation/stores/ConversationStore.js +0 -30
  629. package/build/features/conversation/stores/ConversationStore.js.map +1 -1
  630. package/build/features/conversation/writers/ConversationWriter.js +0 -24
  631. package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
  632. package/build/features/dependencies/DependencyFeature.js +0 -25
  633. package/build/features/dependencies/DependencyFeature.js.map +1 -1
  634. package/build/features/dependencies/actions/AddAction.js +0 -39
  635. package/build/features/dependencies/actions/AddAction.js.map +1 -1
  636. package/build/features/dependencies/actions/ManageAction.js +0 -34
  637. package/build/features/dependencies/actions/ManageAction.js.map +1 -1
  638. package/build/features/deploy/DeployFeature.js +0 -26
  639. package/build/features/deploy/DeployFeature.js.map +1 -1
  640. package/build/features/deploy/actions/HerokuAction.js +0 -139
  641. package/build/features/deploy/actions/HerokuAction.js.map +1 -1
  642. package/build/features/deploy/writers/DeployWriter.js +0 -16
  643. package/build/features/deploy/writers/DeployWriter.js.map +1 -1
  644. package/build/features/error/ErrorFeature.js +0 -53
  645. package/build/features/error/ErrorFeature.js.map +1 -1
  646. package/build/features/error/ParentTestFinder.js +0 -17
  647. package/build/features/error/ParentTestFinder.js.map +1 -1
  648. package/build/features/error/actions/CreateAction.js +0 -33
  649. package/build/features/error/actions/CreateAction.js.map +1 -1
  650. package/build/features/error/actions/SyncAction.js +0 -51
  651. package/build/features/error/actions/SyncAction.js.map +1 -1
  652. package/build/features/error/writers/ErrorWriter.js +0 -72
  653. package/build/features/error/writers/ErrorWriter.js.map +1 -1
  654. package/build/features/event/EventFeature.js +0 -80
  655. package/build/features/event/EventFeature.js.map +1 -1
  656. package/build/features/event/actions/CreateAction.js +0 -43
  657. package/build/features/event/actions/CreateAction.js.map +1 -1
  658. package/build/features/event/actions/ListenAction.js +1 -101
  659. package/build/features/event/actions/ListenAction.js.map +1 -1
  660. package/build/features/event/actions/SetRemoteAction.js +0 -27
  661. package/build/features/event/actions/SetRemoteAction.js.map +1 -1
  662. package/build/features/event/actions/SyncAction.js +0 -31
  663. package/build/features/event/actions/SyncAction.js.map +1 -1
  664. package/build/features/event/actions/SyncListenersAction.js +0 -30
  665. package/build/features/event/actions/SyncListenersAction.js.map +1 -1
  666. package/build/features/event/builders/EventContractBuilder.js +0 -52
  667. package/build/features/event/builders/EventContractBuilder.js.map +1 -1
  668. package/build/features/event/builders/ListenerTemplateItemBuilder.js +1 -19
  669. package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
  670. package/build/features/event/services/EventSettingsService.js +0 -7
  671. package/build/features/event/services/EventSettingsService.js.map +1 -1
  672. package/build/features/event/services/RemoteService.js +0 -2
  673. package/build/features/event/services/RemoteService.js.map +1 -1
  674. package/build/features/event/stores/EventStore.js +5 -114
  675. package/build/features/event/stores/EventStore.js.map +1 -1
  676. package/build/features/event/stores/ListenerStore.js +0 -36
  677. package/build/features/event/stores/ListenerStore.js.map +1 -1
  678. package/build/features/event/writers/EventWriter.js +2 -69
  679. package/build/features/event/writers/EventWriter.js.map +1 -1
  680. package/build/features/eventContract/EventContractFeature.js +0 -23
  681. package/build/features/eventContract/EventContractFeature.js.map +1 -1
  682. package/build/features/eventContract/actions/PullAction.js +0 -31
  683. package/build/features/eventContract/actions/PullAction.js.map +1 -1
  684. package/build/features/feature.utilities.js +0 -12
  685. package/build/features/feature.utilities.js.map +1 -1
  686. package/build/features/features.types.js +0 -4
  687. package/build/features/features.types.js.map +1 -1
  688. package/build/features/log/LogFeature.js +0 -20
  689. package/build/features/log/LogFeature.js.map +1 -1
  690. package/build/features/log/actions/CreateTransportAction.js +0 -29
  691. package/build/features/log/actions/CreateTransportAction.js.map +1 -1
  692. package/build/features/log/writers/LogWriter.js +0 -25
  693. package/build/features/log/writers/LogWriter.js.map +1 -1
  694. package/build/features/node/NodeFeature.js +2 -57
  695. package/build/features/node/NodeFeature.js.map +1 -1
  696. package/build/features/node/actions/CreateAction.js +0 -26
  697. package/build/features/node/actions/CreateAction.js.map +1 -1
  698. package/build/features/node/actions/UpdateDependenciesAction.js +4 -66
  699. package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
  700. package/build/features/node/actions/UpgradeAction.js +0 -51
  701. package/build/features/node/actions/UpgradeAction.js.map +1 -1
  702. package/build/features/node/writers/NodeWriter.js +0 -31
  703. package/build/features/node/writers/NodeWriter.js.map +1 -1
  704. package/build/features/onboard/OnboardFeature.js +0 -51
  705. package/build/features/onboard/OnboardFeature.js.map +1 -1
  706. package/build/features/onboard/ScriptLoader.js +0 -21
  707. package/build/features/onboard/ScriptLoader.js.map +1 -1
  708. package/build/features/onboard/ScriptPlayer.js +0 -47
  709. package/build/features/onboard/ScriptPlayer.js.map +1 -1
  710. package/build/features/onboard/actions/OnboardAction.js +0 -32
  711. package/build/features/onboard/actions/OnboardAction.js.map +1 -1
  712. package/build/features/onboard/scripts/onboarding.first.script.js +1 -25
  713. package/build/features/onboard/scripts/onboarding.first.script.js.map +1 -1
  714. package/build/features/onboard/scripts/onboarding.immersive.script.js +0 -12
  715. package/build/features/onboard/scripts/onboarding.immersive.script.js.map +1 -1
  716. package/build/features/onboard/scripts/onboarding.returning.script.js +0 -13
  717. package/build/features/onboard/scripts/onboarding.returning.script.js.map +1 -1
  718. package/build/features/onboard/scripts/onboarding.short.script.js +0 -21
  719. package/build/features/onboard/scripts/onboarding.short.script.js.map +1 -1
  720. package/build/features/onboard/scripts/todo/todo.create.skill.script.js +0 -7
  721. package/build/features/onboard/scripts/todo/todo.create.skill.script.js.map +1 -1
  722. package/build/features/onboard/scripts/todo/todo.test.script.js +0 -6
  723. package/build/features/onboard/scripts/todo/todo.test.script.js.map +1 -1
  724. package/build/features/onboard/scripts/wrongCommand.script.js +0 -12
  725. package/build/features/onboard/scripts/wrongCommand.script.js.map +1 -1
  726. package/build/features/onboard/stores/OnboardingStore.js +0 -25
  727. package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
  728. package/build/features/organization/OrganizationFeature.js +0 -20
  729. package/build/features/organization/OrganizationFeature.js.map +1 -1
  730. package/build/features/organization/actions/CreateAction.js +0 -27
  731. package/build/features/organization/actions/CreateAction.js.map +1 -1
  732. package/build/features/organization/actions/InstallAction.js +0 -47
  733. package/build/features/organization/actions/InstallAction.js.map +1 -1
  734. package/build/features/organization/stores/OrganizationStore.js +0 -52
  735. package/build/features/organization/stores/OrganizationStore.js.map +1 -1
  736. package/build/features/permission/PermissionFeature.js +0 -20
  737. package/build/features/permission/PermissionFeature.js.map +1 -1
  738. package/build/features/permission/actions/CreateAction.js +0 -29
  739. package/build/features/permission/actions/CreateAction.js.map +1 -1
  740. package/build/features/person/PersonFeature.js +0 -20
  741. package/build/features/person/PersonFeature.js.map +1 -1
  742. package/build/features/person/actions/LoginAction.js +0 -41
  743. package/build/features/person/actions/LoginAction.js.map +1 -1
  744. package/build/features/person/actions/LogoutAction.js +0 -30
  745. package/build/features/person/actions/LogoutAction.js.map +1 -1
  746. package/build/features/person/actions/WhoamiAction.js +0 -32
  747. package/build/features/person/actions/WhoamiAction.js.map +1 -1
  748. package/build/features/polish/PolishFeature.js +0 -20
  749. package/build/features/polish/PolishFeature.js.map +1 -1
  750. package/build/features/polish/actions/SetupAction.js +0 -31
  751. package/build/features/polish/actions/SetupAction.js.map +1 -1
  752. package/build/features/polish/writers/PolishWriter.js +0 -22
  753. package/build/features/polish/writers/PolishWriter.js.map +1 -1
  754. package/build/features/sandbox/SandboxFeature.js +0 -28
  755. package/build/features/sandbox/SandboxFeature.js.map +1 -1
  756. package/build/features/sandbox/actions/SetupAction.js +0 -38
  757. package/build/features/sandbox/actions/SetupAction.js.map +1 -1
  758. package/build/features/sandbox/writers/SandboxWriter.js +0 -22
  759. package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
  760. package/build/features/schema/SchemaFeature.js +0 -51
  761. package/build/features/schema/SchemaFeature.js.map +1 -1
  762. package/build/features/schema/ValueTypeBuilder.js +0 -20
  763. package/build/features/schema/ValueTypeBuilder.js.map +1 -1
  764. package/build/features/schema/actions/CreateAction.js +0 -44
  765. package/build/features/schema/actions/CreateAction.js.map +1 -1
  766. package/build/features/schema/actions/SyncAction.js +0 -91
  767. package/build/features/schema/actions/SyncAction.js.map +1 -1
  768. package/build/features/schema/actions/SyncFieldsAction.js +0 -34
  769. package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
  770. package/build/features/schema/services/SchemaService.js +0 -25
  771. package/build/features/schema/services/SchemaService.js.map +1 -1
  772. package/build/features/schema/stores/SchemaStore.js +0 -102
  773. package/build/features/schema/stores/SchemaStore.js.map +1 -1
  774. package/build/features/schema/utilities/schema.utility.js +0 -4
  775. package/build/features/schema/utilities/schema.utility.js.map +1 -1
  776. package/build/features/schema/utilities/schemaDisk.utility.js +5 -25
  777. package/build/features/schema/utilities/schemaDisk.utility.js.map +1 -1
  778. package/build/features/schema/utilities/schemaGenerator.utility.js +3 -22
  779. package/build/features/schema/utilities/schemaGenerator.utility.js.map +1 -1
  780. package/build/features/schema/writers/SchemaWriter.js +0 -95
  781. package/build/features/schema/writers/SchemaWriter.js.map +1 -1
  782. package/build/features/skill/SkillFeature.js +2 -65
  783. package/build/features/skill/SkillFeature.js.map +1 -1
  784. package/build/features/skill/actions/BootAction.js +0 -46
  785. package/build/features/skill/actions/BootAction.js.map +1 -1
  786. package/build/features/skill/actions/CreateAction.js +0 -29
  787. package/build/features/skill/actions/CreateAction.js.map +1 -1
  788. package/build/features/skill/actions/DashboardAction.js +0 -26
  789. package/build/features/skill/actions/DashboardAction.js.map +1 -1
  790. package/build/features/skill/actions/LoginAction.js +0 -55
  791. package/build/features/skill/actions/LoginAction.js.map +1 -1
  792. package/build/features/skill/actions/RebuildAction.js +0 -34
  793. package/build/features/skill/actions/RebuildAction.js.map +1 -1
  794. package/build/features/skill/actions/RegisterAction.js +0 -32
  795. package/build/features/skill/actions/RegisterAction.js.map +1 -1
  796. package/build/features/skill/stores/SkillStore.js +0 -87
  797. package/build/features/skill/stores/SkillStore.js.map +1 -1
  798. package/build/features/skill/updaters/Updater.js +0 -25
  799. package/build/features/skill/updaters/Updater.js.map +1 -1
  800. package/build/features/skill/writers/SkillWriter.js +0 -26
  801. package/build/features/skill/writers/SkillWriter.js.map +1 -1
  802. package/build/features/store/StoreFeature.js +0 -37
  803. package/build/features/store/StoreFeature.js.map +1 -1
  804. package/build/features/store/actions/CreateAction.js +0 -35
  805. package/build/features/store/actions/CreateAction.js.map +1 -1
  806. package/build/features/store/actions/SyncAction.js +0 -34
  807. package/build/features/store/actions/SyncAction.js.map +1 -1
  808. package/build/features/store/stores/StoreStore.js +0 -37
  809. package/build/features/store/stores/StoreStore.js.map +1 -1
  810. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js +1 -18
  811. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
  812. package/build/features/store/writers/StoreWriter.js +0 -43
  813. package/build/features/store/writers/StoreWriter.js.map +1 -1
  814. package/build/features/test/TestFeature.js +2 -72
  815. package/build/features/test/TestFeature.js.map +1 -1
  816. package/build/features/test/TestLogItemGenerator.js +0 -40
  817. package/build/features/test/TestLogItemGenerator.js.map +1 -1
  818. package/build/features/test/TestReporter.js +11 -123
  819. package/build/features/test/TestReporter.js.map +1 -1
  820. package/build/features/test/TestRunner.js +2 -58
  821. package/build/features/test/TestRunner.js.map +1 -1
  822. package/build/features/test/actions/CreateAction.js +2 -66
  823. package/build/features/test/actions/CreateAction.js.map +1 -1
  824. package/build/features/test/actions/SetupAction.js +0 -33
  825. package/build/features/test/actions/SetupAction.js.map +1 -1
  826. package/build/features/test/actions/TestAction.js +12 -131
  827. package/build/features/test/actions/TestAction.js.map +1 -1
  828. package/build/features/test/writers/TestWriter.js +0 -22
  829. package/build/features/test/writers/TestWriter.js.map +1 -1
  830. package/build/features/universalDevDependencies.js.map +1 -1
  831. package/build/features/universalFileDescriptions.js.map +1 -1
  832. package/build/features/universalScripts.js.map +1 -1
  833. package/build/features/validateAndNormalize.utility.js +0 -7
  834. package/build/features/validateAndNormalize.utility.js.map +1 -1
  835. package/build/features/view/ViewFeature.js +0 -32
  836. package/build/features/view/ViewFeature.js.map +1 -1
  837. package/build/features/view/actions/CreateAction.js +0 -48
  838. package/build/features/view/actions/CreateAction.js.map +1 -1
  839. package/build/features/view/actions/CreateThemeAction.js +0 -36
  840. package/build/features/view/actions/CreateThemeAction.js.map +1 -1
  841. package/build/features/view/actions/SyncAction.js +3 -48
  842. package/build/features/view/actions/SyncAction.js.map +1 -1
  843. package/build/features/view/actions/WatchAction.js +4 -64
  844. package/build/features/view/actions/WatchAction.js.map +1 -1
  845. package/build/features/view/stores/ViewStore.js +0 -32
  846. package/build/features/view/stores/ViewStore.js.map +1 -1
  847. package/build/features/view/writers/ViewWriter.js +3 -43
  848. package/build/features/view/writers/ViewWriter.js.map +1 -1
  849. package/build/features/vscode/VsCodeFeature.js +0 -26
  850. package/build/features/vscode/VsCodeFeature.js.map +1 -1
  851. package/build/features/vscode/actions/SetupAction.js +0 -83
  852. package/build/features/vscode/actions/SetupAction.js.map +1 -1
  853. package/build/features/vscode/services/VsCodeService.js +3 -43
  854. package/build/features/vscode/services/VsCodeService.js.map +1 -1
  855. package/build/features/vscode/writers/VsCodeWriter.js +1 -21
  856. package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
  857. package/build/features/watch/WatchFeature.js +1 -45
  858. package/build/features/watch/WatchFeature.js.map +1 -1
  859. package/build/index.js +0 -5
  860. package/build/index.js.map +1 -1
  861. package/build/interfaces/SpyInterface.js +4 -81
  862. package/build/interfaces/SpyInterface.js.map +1 -1
  863. package/build/interfaces/TerminalInterface.js +33 -156
  864. package/build/interfaces/TerminalInterface.js.map +1 -1
  865. package/build/schemas/v2020_07_22/bootSkillOptions.builder.js +0 -3
  866. package/build/schemas/v2020_07_22/bootSkillOptions.builder.js.map +1 -1
  867. package/build/schemas/v2020_07_22/createConversationTopicOptions.builder.js +0 -8
  868. package/build/schemas/v2020_07_22/createConversationTopicOptions.builder.js.map +1 -1
  869. package/build/schemas/v2020_07_22/createErrorOptions.builder.js +0 -9
  870. package/build/schemas/v2020_07_22/createErrorOptions.builder.js.map +1 -1
  871. package/build/schemas/v2020_07_22/createOrganizationOptions.builder.js +0 -8
  872. package/build/schemas/v2020_07_22/createOrganizationOptions.builder.js.map +1 -1
  873. package/build/schemas/v2020_07_22/createSchemaOptions.builder.js +0 -9
  874. package/build/schemas/v2020_07_22/createSchemaOptions.builder.js.map +1 -1
  875. package/build/schemas/v2020_07_22/createTestOptions.builder.js +0 -5
  876. package/build/schemas/v2020_07_22/createTestOptions.builder.js.map +1 -1
  877. package/build/schemas/v2020_07_22/installSkillAtOrganizationOptions.builder.js +0 -3
  878. package/build/schemas/v2020_07_22/installSkillAtOrganizationOptions.builder.js.map +1 -1
  879. package/build/schemas/v2020_07_22/listenEventOptions.builder.js +0 -8
  880. package/build/schemas/v2020_07_22/listenEventOptions.builder.js.map +1 -1
  881. package/build/schemas/v2020_07_22/namedTemplateItem.builder.js +0 -3
  882. package/build/schemas/v2020_07_22/namedTemplateItem.builder.js.map +1 -1
  883. package/build/schemas/v2020_07_22/nodeFeatureOptions.builder.js +0 -3
  884. package/build/schemas/v2020_07_22/nodeFeatureOptions.builder.js.map +1 -1
  885. package/build/schemas/v2020_07_22/onboardOptions.builder.js +0 -3
  886. package/build/schemas/v2020_07_22/onboardOptions.builder.js.map +1 -1
  887. package/build/schemas/v2020_07_22/onboarding.builder.js +0 -3
  888. package/build/schemas/v2020_07_22/onboarding.builder.js.map +1 -1
  889. package/build/schemas/v2020_07_22/personWithToken.builder.js +0 -5
  890. package/build/schemas/v2020_07_22/personWithToken.builder.js.map +1 -1
  891. package/build/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.js +0 -3
  892. package/build/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.js.map +1 -1
  893. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js +0 -3
  894. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js.map +1 -1
  895. package/build/schemas/v2020_07_22/setupVscodeOptions.builder.js +0 -3
  896. package/build/schemas/v2020_07_22/setupVscodeOptions.builder.js.map +1 -1
  897. package/build/schemas/v2020_07_22/skillFeature.builder.js +0 -3
  898. package/build/schemas/v2020_07_22/skillFeature.builder.js.map +1 -1
  899. package/build/schemas/v2020_07_22/syncErrorOptions.builder.js +0 -8
  900. package/build/schemas/v2020_07_22/syncErrorOptions.builder.js.map +1 -1
  901. package/build/schemas/v2020_07_22/syncEventOptions.builder.js +0 -5
  902. package/build/schemas/v2020_07_22/syncEventOptions.builder.js.map +1 -1
  903. package/build/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.js +0 -3
  904. package/build/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.js.map +1 -1
  905. package/build/schemas/v2020_07_22/syncSchemasOptions.builder.js +0 -9
  906. package/build/schemas/v2020_07_22/syncSchemasOptions.builder.js.map +1 -1
  907. package/build/schemas/v2020_07_22/testOptions.builder.js +0 -3
  908. package/build/schemas/v2020_07_22/testOptions.builder.js.map +1 -1
  909. package/build/schemas/v2020_07_22/upgradeSkillOptions.builder.js +0 -3
  910. package/build/schemas/v2020_07_22/upgradeSkillOptions.builder.js.map +1 -1
  911. package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js +0 -4
  912. package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js.map +1 -1
  913. package/build/services/BuildService.js +0 -15
  914. package/build/services/BuildService.js.map +1 -1
  915. package/build/services/CommandService.js +0 -51
  916. package/build/services/CommandService.js.map +1 -1
  917. package/build/services/DependencyService.js +0 -11
  918. package/build/services/DependencyService.js.map +1 -1
  919. package/build/services/GameService.js +3 -32
  920. package/build/services/GameService.js.map +1 -1
  921. package/build/services/ImportService.js +4 -104
  922. package/build/services/ImportService.js.map +1 -1
  923. package/build/services/LintService.js +0 -33
  924. package/build/services/LintService.js.map +1 -1
  925. package/build/services/PkgService.js +0 -47
  926. package/build/services/PkgService.js.map +1 -1
  927. package/build/services/ServiceFactory.js +0 -35
  928. package/build/services/ServiceFactory.js.map +1 -1
  929. package/build/services/TypeCheckerService.js +0 -10
  930. package/build/services/TypeCheckerService.js.map +1 -1
  931. package/build/stores/AbstractLocalStore.js +0 -19
  932. package/build/stores/AbstractLocalStore.js.map +1 -1
  933. package/build/stores/AbstractStore.js +0 -14
  934. package/build/stores/AbstractStore.js.map +1 -1
  935. package/build/stores/StoreFactory.js +4 -24
  936. package/build/stores/StoreFactory.js.map +1 -1
  937. package/build/templateItemBuilders/EventTemplateItemBuilder.js +14 -64
  938. package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
  939. package/build/templateItemBuilders/FieldTemplateItemBuilder.js +1 -16
  940. package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
  941. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js +11 -68
  942. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
  943. package/build/tests/AbstractCliTest.js +0 -173
  944. package/build/tests/AbstractCliTest.js.map +1 -1
  945. package/build/tests/AbstractErrorTest.js +0 -20
  946. package/build/tests/AbstractErrorTest.js.map +1 -1
  947. package/build/tests/AbstractEventTest.js +13 -55
  948. package/build/tests/AbstractEventTest.js.map +1 -1
  949. package/build/tests/AbstractSchemaTest.js +12 -71
  950. package/build/tests/AbstractSchemaTest.js.map +1 -1
  951. package/build/tests/AbstractSkillTest.js +1 -34
  952. package/build/tests/AbstractSkillTest.js.map +1 -1
  953. package/build/tests/AbstractTestTest.js +3 -26
  954. package/build/tests/AbstractTestTest.js.map +1 -1
  955. package/build/tests/CommandFaker.js +0 -8
  956. package/build/tests/CommandFaker.js.map +1 -1
  957. package/build/tests/JestJsonParser.js +2 -47
  958. package/build/tests/JestJsonParser.js.map +1 -1
  959. package/build/tests/MockProgramFactory.js +0 -17
  960. package/build/tests/MockProgramFactory.js.map +1 -1
  961. package/build/tests/buildTestCache.js +0 -82
  962. package/build/tests/buildTestCache.js.map +1 -1
  963. package/build/tests/cleanTestCache.js +0 -11
  964. package/build/tests/cleanTestCache.js.map +1 -1
  965. package/build/tests/cleanTestData.js +0 -38
  966. package/build/tests/cleanTestData.js.map +1 -1
  967. package/build/tests/constants.js +0 -3
  968. package/build/tests/constants.js.map +1 -1
  969. package/build/tests/fixtures/FeatureFixture.js +7 -82
  970. package/build/tests/fixtures/FeatureFixture.js.map +1 -1
  971. package/build/tests/fixtures/MercuryFixture.js +0 -17
  972. package/build/tests/fixtures/MercuryFixture.js.map +1 -1
  973. package/build/tests/fixtures/OrganizationFixture.js +0 -39
  974. package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
  975. package/build/tests/fixtures/PersonFixture.js +0 -37
  976. package/build/tests/fixtures/PersonFixture.js.map +1 -1
  977. package/build/tests/fixtures/SkillFixture.js +0 -55
  978. package/build/tests/fixtures/SkillFixture.js.map +1 -1
  979. package/build/tests/fixtures/ViewFixture.js +0 -14
  980. package/build/tests/fixtures/ViewFixture.js.map +1 -1
  981. package/build/tests/utilities/test.utility.js +0 -25
  982. package/build/tests/utilities/test.utility.js.map +1 -1
  983. package/build/tests/utilities/uiAssert.utility.js +0 -15
  984. package/build/tests/utilities/uiAssert.utility.js.map +1 -1
  985. package/build/types/cli.types.js +0 -1
  986. package/build/types/cli.types.js.map +1 -1
  987. package/build/types/graphicsInterface.types.js +0 -1
  988. package/build/types/graphicsInterface.types.js.map +1 -1
  989. package/build/updaters/ScriptUpdater.js +0 -28
  990. package/build/updaters/ScriptUpdater.js.map +1 -1
  991. package/build/utilities/action.utility.js +0 -11
  992. package/build/utilities/action.utility.js.map +1 -1
  993. package/build/utilities/apiClient.utility.js +2 -11
  994. package/build/utilities/apiClient.utility.js.map +1 -1
  995. package/build/utilities/argParser.utility.js +1 -11
  996. package/build/utilities/argParser.utility.js.map +1 -1
  997. package/build/utilities/commander.utility.js +0 -12
  998. package/build/utilities/commander.utility.js.map +1 -1
  999. package/build/utilities/duration.utility.js +3 -8
  1000. package/build/utilities/duration.utility.js.map +1 -1
  1001. package/build/utilities/eventContractCleaner.utility.js +1 -22
  1002. package/build/utilities/eventContractCleaner.utility.js.map +1 -1
  1003. package/build/utilities/form.utility.js +1 -27
  1004. package/build/utilities/form.utility.js.map +1 -1
  1005. package/build/utilities/introspection.utility.js +11 -40
  1006. package/build/utilities/introspection.utility.js.map +1 -1
  1007. package/build/utilities/isCi.js +0 -3
  1008. package/build/utilities/isCi.js.map +1 -1
  1009. package/build/utilities/tsConfig.utility.js +4 -16
  1010. package/build/utilities/tsConfig.utility.js.map +1 -1
  1011. package/build/utilities/ui.utility.js +2 -4
  1012. package/build/utilities/ui.utility.js.map +1 -1
  1013. package/build/widgets/Theme.js +0 -3
  1014. package/build/widgets/Theme.js.map +1 -1
  1015. package/build/widgets/WidgetFactory.js +4 -14
  1016. package/build/widgets/WidgetFactory.js.map +1 -1
  1017. package/build/widgets/keySelectChoices.js.map +1 -1
  1018. package/build/widgets/terminalKit/TKButtonWidget.js +2 -32
  1019. package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
  1020. package/build/widgets/terminalKit/TkBaseWidget.js +1 -55
  1021. package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
  1022. package/build/widgets/terminalKit/TkInputWidget.js +1 -44
  1023. package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
  1024. package/build/widgets/terminalKit/TkLayoutCellWidget.js +0 -19
  1025. package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
  1026. package/build/widgets/terminalKit/TkLayoutWidget.js +3 -47
  1027. package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
  1028. package/build/widgets/terminalKit/TkMenuBarWidget.js +3 -48
  1029. package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
  1030. package/build/widgets/terminalKit/TkPopupWidget.js +1 -27
  1031. package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
  1032. package/build/widgets/terminalKit/TkProgressBarWidget.js +5 -30
  1033. package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
  1034. package/build/widgets/terminalKit/TkTextWidget.js +6 -48
  1035. package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
  1036. package/build/widgets/terminalKit/TkWindowWidget.js +4 -35
  1037. package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
  1038. package/build/widgets/terminalKit/termKit.utility.js +2 -40
  1039. package/build/widgets/terminalKit/termKit.utility.js.map +1 -1
  1040. package/build/widgets/types/button.types.js.map +1 -1
  1041. package/build/widgets/types/factory.types.js +0 -16
  1042. package/build/widgets/types/factory.types.js.map +1 -1
  1043. package/build/widgets/types/input.types.js +0 -2
  1044. package/build/widgets/types/input.types.js.map +1 -1
  1045. package/build/widgets/types/menuBar.types.js +1 -2
  1046. package/build/widgets/types/menuBar.types.js.map +1 -1
  1047. package/build/widgets/types/popup.types.js.map +1 -1
  1048. package/build/widgets/types/text.types.js +1 -2
  1049. package/build/widgets/types/text.types.js.map +1 -1
  1050. package/build/widgets/types/window.types.js +0 -2
  1051. package/build/widgets/types/window.types.js.map +1 -1
  1052. package/build/widgets/widget.utilities.js +6 -10
  1053. package/build/widgets/widget.utilities.js.map +1 -1
  1054. package/build/writers/AbstractWriter.js +13 -94
  1055. package/build/writers/AbstractWriter.js.map +1 -1
  1056. package/build/writers/WriterFactory.js +3 -27
  1057. package/build/writers/WriterFactory.js.map +1 -1
  1058. package/docs/images/doors.jpg +0 -0
  1059. package/package.json +3 -3
  1060. package/src/features/onboard/scripts/onboarding.first.script.ts +8 -5
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractFeature.js","names":["AbstractFeature","options","cwd","serviceFactory","templates","actionFactory","storeFactory","writerFactory","WriterFactory","ui","settings","Service","linter","emitter","featureInstaller","apiClientFactory","actionExecuter","featureCode","actionCode","Action","_options","type","code","Writer","fileDescriptions","getFeature","actionsDir","actionCodes","globby","pathUtil","join","matches","codes","match","generatedCode","featuresUtil","filePathToActionCode","push","Store"],"sources":["../../src/features/AbstractFeature.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { Schema, SchemaValues } from '@sprucelabs/schema'\nimport { Templates } from '@sprucelabs/spruce-templates'\nimport globby from 'globby'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory, {\n\tService,\n\tServiceProvider,\n\tServiceMap,\n} from '../services/ServiceFactory'\nimport StoreFactory, {\n\tStoreCode,\n\tStoreFactoryMethodOptions,\n\tStoreMap,\n} from '../stores/StoreFactory'\nimport {\n\tApiClient,\n\tApiClientFactory,\n\tApiClientFactoryOptions,\n} from '../types/apiClient.types'\nimport { NpmPackage, GeneratedFile, FileDescription } from '../types/cli.types'\nimport { GraphicsInterface } from '../types/cli.types'\nimport { WriterOptions } from '../writers/AbstractWriter'\nimport WriterFactory, { WriterCode, WriterMap } from '../writers/WriterFactory'\nimport ActionExecuter from './ActionExecuter'\nimport ActionFactory from './ActionFactory'\nimport featuresUtil from './feature.utilities'\nimport FeatureInstaller from './FeatureInstaller'\nimport { FeatureCode } from './features.types'\n\nexport interface InstallResults {\n\tfiles?: GeneratedFile[]\n\tcwd?: string\n}\n\nexport interface FeatureDependency {\n\tisRequired: boolean\n\tcode: FeatureCode\n}\n\nexport interface FeatureOptions {\n\tcwd: string\n\tserviceFactory: ServiceFactory\n\ttemplates: Templates\n\tstoreFactory: StoreFactory\n\tactionFactory?: ActionFactory\n\tfeatureInstaller: FeatureInstaller\n\tui: GraphicsInterface\n\temitter: GlobalEmitter\n\tapiClientFactory: ApiClientFactory\n\tactionExecuter: ActionExecuter\n}\n\nexport default abstract class AbstractFeature<\n\tS extends Schema | undefined = Schema | undefined\n> implements ServiceProvider\n{\n\tpublic abstract description: string\n\tpublic readonly dependencies: FeatureDependency[] = []\n\tpublic readonly packageDependencies: NpmPackage[] = []\n\tpublic readonly optionsSchema?: S\n\tpublic readonly fileDescriptions: FileDescription[] = []\n\n\tpublic isInstalled?(): Promise<boolean>\n\n\tpublic abstract readonly code: FeatureCode\n\tpublic abstract readonly nameReadable: string\n\tpublic readonly installOrderWeight: number = 0\n\n\tpublic cwd: string\n\tpublic scripts: Record<string, any> = {}\n\tpublic actionsDir: string | undefined\n\tprotected actionFactory?: ActionFactory\n\tprotected templates: Templates\n\tprotected emitter: GlobalEmitter\n\tprotected featureInstaller: FeatureInstaller\n\tprotected ui: GraphicsInterface\n\n\tprivate serviceFactory: ServiceFactory\n\tprivate storeFactory: StoreFactory\n\tprivate writerFactory: WriterFactory\n\tprivate apiClientFactory: ApiClientFactory\n\tprivate actionExecuter: ActionExecuter\n\tprivate actionCodes?: string[]\n\n\tpublic constructor(options: FeatureOptions) {\n\t\tthis.cwd = options.cwd\n\t\tthis.serviceFactory = options.serviceFactory\n\t\tthis.templates = options.templates\n\t\tthis.actionFactory = options.actionFactory\n\t\tthis.storeFactory = options.storeFactory\n\t\tthis.writerFactory = new WriterFactory({\n\t\t\ttemplates: this.templates,\n\t\t\tui: options.ui,\n\t\t\tsettings: this.Service('settings'),\n\t\t\tlinter: this.Service('lint'),\n\t\t})\n\t\tthis.emitter = options.emitter\n\t\tthis.featureInstaller = options.featureInstaller\n\t\tthis.ui = options.ui\n\t\tthis.apiClientFactory = options.apiClientFactory\n\t\tthis.actionExecuter = options.actionExecuter\n\t}\n\n\tprotected Action(featureCode: string, actionCode: string) {\n\t\treturn this.actionExecuter.Action(featureCode as any, actionCode)\n\t}\n\n\tpublic async beforePackageInstall(\n\t\t_options: S extends Schema ? SchemaValues<S> : undefined\n\t): Promise<InstallResults> {\n\t\treturn {}\n\t}\n\n\tpublic async afterPackageInstall(\n\t\t_options: S extends Schema ? SchemaValues<S> : undefined\n\t): Promise<InstallResults> {\n\t\treturn {}\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 Writer<C extends WriterCode>(\n\t\tcode: C,\n\t\toptions?: Partial<WriterOptions>\n\t): WriterMap[C] {\n\t\treturn this.writerFactory.Writer(code, {\n\t\t\tfileDescriptions: this.fileDescriptions,\n\t\t\tlinter: this.Service('lint'),\n\t\t\t...options,\n\t\t})\n\t}\n\n\tpublic getFeature<Code extends FeatureCode>(code: Code) {\n\t\treturn this.featureInstaller.getFeature(code)\n\t}\n\n\tpublic async getAvailableActionCodes(): Promise<string[]> {\n\t\tif (!this.actionsDir) {\n\t\t\treturn []\n\t\t}\n\n\t\tif (!this.actionCodes) {\n\t\t\tconst matches: string[] = await globby(\n\t\t\t\tpathUtil.join(this.actionsDir, '**/*Action.js')\n\t\t\t)\n\n\t\t\tconst codes: string[] = []\n\n\t\t\tfor (const match of matches) {\n\t\t\t\tconst generatedCode = featuresUtil.filePathToActionCode(match)\n\t\t\t\tcodes.push(generatedCode)\n\t\t\t}\n\n\t\t\tthis.actionCodes = codes\n\t\t}\n\n\t\treturn this.actionCodes\n\t}\n\n\tpublic Store<C extends StoreCode>(\n\t\tcode: C,\n\t\toptions?: StoreFactoryMethodOptions\n\t): StoreMap[C] {\n\t\treturn this.storeFactory.Store(code, { cwd: this.cwd, ...options })\n\t}\n\n\tprotected async connectToApi(\n\t\toptions?: ApiClientFactoryOptions\n\t): Promise<ApiClient> {\n\t\treturn this.apiClientFactory(options)\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"AbstractFeature.js","names":["AbstractFeature","options","cwd","serviceFactory","templates","actionFactory","storeFactory","writerFactory","WriterFactory","ui","settings","Service","linter","emitter","featureInstaller","apiClientFactory","actionExecuter","featureCode","actionCode","Action","_options","type","code","Writer","fileDescriptions","getFeature","actionsDir","actionCodes","globby","pathUtil","join","matches","codes","match","generatedCode","featuresUtil","filePathToActionCode","push","Store"],"sources":["../../src/features/AbstractFeature.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { Schema, SchemaValues } from '@sprucelabs/schema'\nimport { Templates } from '@sprucelabs/spruce-templates'\nimport globby from 'globby'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory, {\n\tService,\n\tServiceProvider,\n\tServiceMap,\n} from '../services/ServiceFactory'\nimport StoreFactory, {\n\tStoreCode,\n\tStoreFactoryMethodOptions,\n\tStoreMap,\n} from '../stores/StoreFactory'\nimport {\n\tApiClient,\n\tApiClientFactory,\n\tApiClientFactoryOptions,\n} from '../types/apiClient.types'\nimport { NpmPackage, GeneratedFile, FileDescription } from '../types/cli.types'\nimport { GraphicsInterface } from '../types/cli.types'\nimport { WriterOptions } from '../writers/AbstractWriter'\nimport WriterFactory, { WriterCode, WriterMap } from '../writers/WriterFactory'\nimport ActionExecuter from './ActionExecuter'\nimport ActionFactory from './ActionFactory'\nimport featuresUtil from './feature.utilities'\nimport FeatureInstaller from './FeatureInstaller'\nimport { FeatureCode } from './features.types'\n\nexport interface InstallResults {\n\tfiles?: GeneratedFile[]\n\tcwd?: string\n}\n\nexport interface FeatureDependency {\n\tisRequired: boolean\n\tcode: FeatureCode\n}\n\nexport interface FeatureOptions {\n\tcwd: string\n\tserviceFactory: ServiceFactory\n\ttemplates: Templates\n\tstoreFactory: StoreFactory\n\tactionFactory?: ActionFactory\n\tfeatureInstaller: FeatureInstaller\n\tui: GraphicsInterface\n\temitter: GlobalEmitter\n\tapiClientFactory: ApiClientFactory\n\tactionExecuter: ActionExecuter\n}\n\nexport default abstract class AbstractFeature<\n\tS extends Schema | undefined = Schema | undefined\n> implements ServiceProvider\n{\n\tpublic abstract description: string\n\tpublic readonly dependencies: FeatureDependency[] = []\n\tpublic readonly packageDependencies: NpmPackage[] = []\n\tpublic readonly optionsSchema?: S\n\tpublic readonly fileDescriptions: FileDescription[] = []\n\n\tpublic isInstalled?(): Promise<boolean>\n\n\tpublic abstract readonly code: FeatureCode\n\tpublic abstract readonly nameReadable: string\n\tpublic readonly installOrderWeight: number = 0\n\n\tpublic cwd: string\n\tpublic scripts: Record<string, any> = {}\n\tpublic actionsDir: string | undefined\n\tprotected actionFactory?: ActionFactory\n\tprotected templates: Templates\n\tprotected emitter: GlobalEmitter\n\tprotected featureInstaller: FeatureInstaller\n\tprotected ui: GraphicsInterface\n\n\tprivate serviceFactory: ServiceFactory\n\tprivate storeFactory: StoreFactory\n\tprivate writerFactory: WriterFactory\n\tprivate apiClientFactory: ApiClientFactory\n\tprivate actionExecuter: ActionExecuter\n\tprivate actionCodes?: string[]\n\n\tpublic constructor(options: FeatureOptions) {\n\t\tthis.cwd = options.cwd\n\t\tthis.serviceFactory = options.serviceFactory\n\t\tthis.templates = options.templates\n\t\tthis.actionFactory = options.actionFactory\n\t\tthis.storeFactory = options.storeFactory\n\t\tthis.writerFactory = new WriterFactory({\n\t\t\ttemplates: this.templates,\n\t\t\tui: options.ui,\n\t\t\tsettings: this.Service('settings'),\n\t\t\tlinter: this.Service('lint'),\n\t\t})\n\t\tthis.emitter = options.emitter\n\t\tthis.featureInstaller = options.featureInstaller\n\t\tthis.ui = options.ui\n\t\tthis.apiClientFactory = options.apiClientFactory\n\t\tthis.actionExecuter = options.actionExecuter\n\t}\n\n\tprotected Action(featureCode: string, actionCode: string) {\n\t\treturn this.actionExecuter.Action(featureCode as any, actionCode)\n\t}\n\n\tpublic async beforePackageInstall(\n\t\t_options: S extends Schema ? SchemaValues<S> : undefined\n\t): Promise<InstallResults> {\n\t\treturn {}\n\t}\n\n\tpublic async afterPackageInstall(\n\t\t_options: S extends Schema ? SchemaValues<S> : undefined\n\t): Promise<InstallResults> {\n\t\treturn {}\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 Writer<C extends WriterCode>(\n\t\tcode: C,\n\t\toptions?: Partial<WriterOptions>\n\t): WriterMap[C] {\n\t\treturn this.writerFactory.Writer(code, {\n\t\t\tfileDescriptions: this.fileDescriptions,\n\t\t\tlinter: this.Service('lint'),\n\t\t\t...options,\n\t\t})\n\t}\n\n\tpublic getFeature<Code extends FeatureCode>(code: Code) {\n\t\treturn this.featureInstaller.getFeature(code)\n\t}\n\n\tpublic async getAvailableActionCodes(): Promise<string[]> {\n\t\tif (!this.actionsDir) {\n\t\t\treturn []\n\t\t}\n\n\t\tif (!this.actionCodes) {\n\t\t\tconst matches: string[] = await globby(\n\t\t\t\tpathUtil.join(this.actionsDir, '**/*Action.js')\n\t\t\t)\n\n\t\t\tconst codes: string[] = []\n\n\t\t\tfor (const match of matches) {\n\t\t\t\tconst generatedCode = featuresUtil.filePathToActionCode(match)\n\t\t\t\tcodes.push(generatedCode)\n\t\t\t}\n\n\t\t\tthis.actionCodes = codes\n\t\t}\n\n\t\treturn this.actionCodes\n\t}\n\n\tpublic Store<C extends StoreCode>(\n\t\tcode: C,\n\t\toptions?: StoreFactoryMethodOptions\n\t): StoreMap[C] {\n\t\treturn this.storeFactory.Store(code, { cwd: this.cwd, ...options })\n\t}\n\n\tprotected async connectToApi(\n\t\toptions?: ApiClientFactoryOptions\n\t): Promise<ApiClient> {\n\t\treturn this.apiClientFactory(options)\n\t}\n}\n"],"mappings":"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"}
@@ -1,42 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
-
16
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
-
18
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
-
20
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
-
22
14
  var _spruceEventUtils = require("@sprucelabs/spruce-event-utils");
23
-
24
15
  var _merge = _interopRequireDefault(require("lodash/merge"));
25
-
26
16
  var _SpruceError = _interopRequireDefault(require("../errors/SpruceError"));
27
-
28
17
  var _action = _interopRequireDefault(require("../utilities/action.utility"));
29
-
30
18
  var _ActionQuestionAsker = _interopRequireDefault(require("./ActionQuestionAsker"));
31
-
32
19
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
33
-
34
20
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
35
-
36
21
  var ActionExecuter = /*#__PURE__*/function () {
37
22
  function ActionExecuter(options) {
38
23
  var _options$shouldAutoHa;
39
-
40
24
  (0, _classCallCheck2["default"])(this, ActionExecuter);
41
25
  (0, _defineProperty2["default"])(this, "emitter", void 0);
42
26
  (0, _defineProperty2["default"])(this, "ui", void 0);
@@ -51,7 +35,6 @@ var ActionExecuter = /*#__PURE__*/function () {
51
35
  this.shouldAutoHandleDependencies = (_options$shouldAutoHa = options.shouldAutoHandleDependencies) !== null && _options$shouldAutoHa !== void 0 ? _options$shouldAutoHa : true;
52
36
  this.shouldThrowOnListenerError = !!options.shouldThrowOnListenerError;
53
37
  }
54
-
55
38
  (0, _createClass2["default"])(ActionExecuter, [{
56
39
  key: "getFeatureInstaller",
57
40
  value: function getFeatureInstaller() {
@@ -62,9 +45,7 @@ var ActionExecuter = /*#__PURE__*/function () {
62
45
  value: function () {
63
46
  var _execute = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(options) {
64
47
  var _errors$length, _yield$asker$installO, _ref, _yield$asker$askAbout, _yield$asker$askAbout2, _ref2;
65
-
66
48
  var featureCode, actionCode, action, originalExecute, actionOptions, installer, isInstalled, willExecuteResults, _eventResponseUtil$ge, willExecutePayloads, errors, feature, asker, response, installOptions, answers, _yield$asker$installO2, ourFeatureResults, executeResults, didExecuteResults, _eventResponseUtil$ge2, payloads, didExecuteErrors;
67
-
68
49
  return _regenerator["default"].wrap(function _callee$(_context) {
69
50
  while (1) {
70
51
  switch (_context.prev = _context.next) {
@@ -73,21 +54,17 @@ var ActionExecuter = /*#__PURE__*/function () {
73
54
  installer = this.getFeatureInstaller();
74
55
  _context.next = 4;
75
56
  return installer.isInstalled(featureCode);
76
-
77
57
  case 4:
78
58
  isInstalled = _context.sent;
79
-
80
59
  if (!(!isInstalled && !this.shouldAutoHandleDependencies)) {
81
60
  _context.next = 7;
82
61
  break;
83
62
  }
84
-
85
63
  throw new _SpruceError["default"]({
86
64
  code: 'FEATURE_NOT_INSTALLED',
87
65
  featureCode: featureCode,
88
66
  friendlyMessage: "You need to install the `".concat(featureCode, "` feature.")
89
67
  });
90
-
91
68
  case 7:
92
69
  _context.next = 9;
93
70
  return this.emitter.emit('feature.will-execute', {
@@ -95,31 +72,24 @@ var ActionExecuter = /*#__PURE__*/function () {
95
72
  actionCode: actionCode,
96
73
  options: actionOptions
97
74
  });
98
-
99
75
  case 9:
100
76
  willExecuteResults = _context.sent;
101
77
  _eventResponseUtil$ge = _spruceEventUtils.eventResponseUtil.getAllResponsePayloadsAndErrors(willExecuteResults, _SpruceError["default"]), willExecutePayloads = _eventResponseUtil$ge.payloads, errors = _eventResponseUtil$ge.errors;
102
-
103
78
  if (!((_errors$length = errors === null || errors === void 0 ? void 0 : errors.length) !== null && _errors$length !== void 0 ? _errors$length : 0 > 0)) {
104
79
  _context.next = 15;
105
80
  break;
106
81
  }
107
-
108
82
  if (!this.shouldThrowOnListenerError) {
109
83
  _context.next = 14;
110
84
  break;
111
85
  }
112
-
113
86
  throw errors[0];
114
-
115
87
  case 14:
116
88
  return _context.abrupt("return", {
117
89
  errors: errors
118
90
  });
119
-
120
91
  case 15:
121
92
  _action["default"].assertNoErrorsInResponse(willExecuteResults);
122
-
123
93
  feature = installer.getFeature(featureCode);
124
94
  asker = new _ActionQuestionAsker["default"]({
125
95
  featureInstaller: installer,
@@ -130,168 +100,128 @@ var ActionExecuter = /*#__PURE__*/function () {
130
100
  });
131
101
  _context.next = 20;
132
102
  return asker.installOrMarkAsSkippedMissingDependencies();
133
-
134
103
  case 20:
135
104
  _context.t1 = _yield$asker$installO = _context.sent;
136
105
  _context.t0 = _context.t1 !== null;
137
-
138
106
  if (!_context.t0) {
139
107
  _context.next = 24;
140
108
  break;
141
109
  }
142
-
143
110
  _context.t0 = _yield$asker$installO !== void 0;
144
-
145
111
  case 24:
146
112
  if (!_context.t0) {
147
113
  _context.next = 28;
148
114
  break;
149
115
  }
150
-
151
116
  _context.t2 = _yield$asker$installO;
152
117
  _context.next = 29;
153
118
  break;
154
-
155
119
  case 28:
156
120
  _context.t2 = {};
157
-
158
121
  case 29:
159
122
  response = _context.t2;
160
123
  _context.next = 32;
161
124
  return asker.askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(isInstalled, actionOptions);
162
-
163
125
  case 32:
164
126
  _context.t5 = _yield$asker$askAbout = _context.sent;
165
127
  _context.t4 = _context.t5 !== null;
166
-
167
128
  if (!_context.t4) {
168
129
  _context.next = 36;
169
130
  break;
170
131
  }
171
-
172
132
  _context.t4 = _yield$asker$askAbout !== void 0;
173
-
174
133
  case 36:
175
134
  if (!_context.t4) {
176
135
  _context.next = 40;
177
136
  break;
178
137
  }
179
-
180
138
  _context.t6 = _yield$asker$askAbout;
181
139
  _context.next = 41;
182
140
  break;
183
-
184
141
  case 40:
185
142
  _context.t6 = actionOptions;
186
-
187
143
  case 41:
188
144
  _context.t7 = _ref = _context.t6;
189
145
  _context.t3 = _context.t7 !== null;
190
-
191
146
  if (!_context.t3) {
192
147
  _context.next = 45;
193
148
  break;
194
149
  }
195
-
196
150
  _context.t3 = _ref !== void 0;
197
-
198
151
  case 45:
199
152
  if (!_context.t3) {
200
153
  _context.next = 49;
201
154
  break;
202
155
  }
203
-
204
156
  _context.t8 = _ref;
205
157
  _context.next = 50;
206
158
  break;
207
-
208
159
  case 49:
209
160
  _context.t8 = {};
210
-
211
161
  case 50:
212
162
  installOptions = _context.t8;
213
163
  _context.next = 53;
214
164
  return asker.askAboutMissingActionOptions(action, installOptions);
215
-
216
165
  case 53:
217
166
  _context.t10 = _yield$asker$askAbout2 = _context.sent;
218
167
  _context.t9 = _context.t10 !== null;
219
-
220
168
  if (!_context.t9) {
221
169
  _context.next = 57;
222
170
  break;
223
171
  }
224
-
225
172
  _context.t9 = _yield$asker$askAbout2 !== void 0;
226
-
227
173
  case 57:
228
174
  if (!_context.t9) {
229
175
  _context.next = 61;
230
176
  break;
231
177
  }
232
-
233
178
  _context.t11 = _yield$asker$askAbout2;
234
179
  _context.next = 62;
235
180
  break;
236
-
237
181
  case 61:
238
182
  _context.t11 = installOptions;
239
-
240
183
  case 62:
241
184
  answers = _context.t11;
242
-
243
185
  if (isInstalled) {
244
186
  _context.next = 77;
245
187
  break;
246
188
  }
247
-
248
189
  _context.next = 66;
249
190
  return asker.installOurFeature(installOptions);
250
-
251
191
  case 66:
252
192
  _context.t13 = _yield$asker$installO2 = _context.sent;
253
193
  _context.t12 = _context.t13 !== null;
254
-
255
194
  if (!_context.t12) {
256
195
  _context.next = 70;
257
196
  break;
258
197
  }
259
-
260
198
  _context.t12 = _yield$asker$installO2 !== void 0;
261
-
262
199
  case 70:
263
200
  if (!_context.t12) {
264
201
  _context.next = 74;
265
202
  break;
266
203
  }
267
-
268
204
  _context.t14 = _yield$asker$installO2;
269
205
  _context.next = 75;
270
206
  break;
271
-
272
207
  case 74:
273
208
  _context.t14 = {};
274
-
275
209
  case 75:
276
210
  ourFeatureResults = _context.t14;
277
211
  response = (0, _merge["default"])(response, ourFeatureResults);
278
-
279
212
  case 77:
280
213
  executeResults = {};
281
214
  _context.prev = 78;
282
215
  _context.next = 81;
283
216
  return originalExecute(_objectSpread({}, answers));
284
-
285
217
  case 81:
286
218
  executeResults = _context.sent;
287
219
  _context.next = 87;
288
220
  break;
289
-
290
221
  case 84:
291
222
  _context.prev = 84;
292
223
  _context.t15 = _context["catch"](78);
293
224
  executeResults.errors = [_context.t15];
294
-
295
225
  case 87:
296
226
  response = (0, _merge["default"])(response, executeResults);
297
227
  _context.next = 90;
@@ -300,29 +230,22 @@ var ActionExecuter = /*#__PURE__*/function () {
300
230
  featureCode: featureCode,
301
231
  actionCode: actionCode
302
232
  });
303
-
304
233
  case 90:
305
234
  didExecuteResults = _context.sent;
306
235
  _eventResponseUtil$ge2 = _spruceEventUtils.eventResponseUtil.getAllResponsePayloadsAndErrors(didExecuteResults, _SpruceError["default"]), payloads = _eventResponseUtil$ge2.payloads, didExecuteErrors = _eventResponseUtil$ge2.errors;
307
-
308
236
  if (!((_ref2 = this.shouldThrowOnListenerError && (didExecuteErrors === null || didExecuteErrors === void 0 ? void 0 : didExecuteErrors.length)) !== null && _ref2 !== void 0 ? _ref2 : 0 > 0)) {
309
237
  _context.next = 94;
310
238
  break;
311
239
  }
312
-
313
240
  throw didExecuteErrors[0];
314
-
315
241
  case 94:
316
242
  response = _action["default"].mergeActionResults.apply(_action["default"], [response].concat((0, _toConsumableArray2["default"])(willExecutePayloads), (0, _toConsumableArray2["default"])(payloads)));
317
-
318
243
  if (didExecuteErrors) {
319
244
  response = _action["default"].mergeActionResults(response, {
320
245
  errors: didExecuteErrors
321
246
  });
322
247
  }
323
-
324
248
  return _context.abrupt("return", response);
325
-
326
249
  case 97:
327
250
  case "end":
328
251
  return _context.stop();
@@ -330,18 +253,15 @@ var ActionExecuter = /*#__PURE__*/function () {
330
253
  }
331
254
  }, _callee, this, [[78, 84]]);
332
255
  }));
333
-
334
256
  function execute(_x) {
335
257
  return _execute.apply(this, arguments);
336
258
  }
337
-
338
259
  return execute;
339
260
  }()
340
261
  }, {
341
262
  key: "Action",
342
263
  value: function Action(featureCode, actionCode) {
343
264
  var _this = this;
344
-
345
265
  var featureInstaller = this.getFeatureInstaller();
346
266
  var actionFactory = this.actionFactory;
347
267
  var action = actionFactory.Action({
@@ -351,7 +271,6 @@ var ActionExecuter = /*#__PURE__*/function () {
351
271
  featureInstaller: featureInstaller
352
272
  });
353
273
  var originalExecute = action.execute.bind(action);
354
-
355
274
  action.execute = /*#__PURE__*/function () {
356
275
  var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(options) {
357
276
  return _regenerator["default"].wrap(function _callee2$(_context2) {
@@ -365,7 +284,6 @@ var ActionExecuter = /*#__PURE__*/function () {
365
284
  originalExecute: originalExecute,
366
285
  options: options
367
286
  }));
368
-
369
287
  case 1:
370
288
  case "end":
371
289
  return _context2.stop();
@@ -373,17 +291,14 @@ var ActionExecuter = /*#__PURE__*/function () {
373
291
  }
374
292
  }, _callee2);
375
293
  }));
376
-
377
294
  return function (_x2) {
378
295
  return _ref3.apply(this, arguments);
379
296
  };
380
297
  }();
381
-
382
298
  return action;
383
299
  }
384
300
  }]);
385
301
  return ActionExecuter;
386
302
  }();
387
-
388
303
  exports["default"] = ActionExecuter;
389
304
  //# sourceMappingURL=ActionExecuter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActionExecuter.js","names":["ActionExecuter","options","featureInstallerFactory","emitter","ui","actionFactory","shouldAutoHandleDependencies","shouldThrowOnListenerError","featureCode","actionCode","action","originalExecute","actionOptions","installer","getFeatureInstaller","isInstalled","SpruceError","code","friendlyMessage","emit","willExecuteResults","eventResponseUtil","getAllResponsePayloadsAndErrors","willExecutePayloads","payloads","errors","length","actionUtil","assertNoErrorsInResponse","feature","getFeature","asker","ActionOptionAsker","featureInstaller","installOrMarkAsSkippedMissingDependencies","response","askAboutMissingFeatureOptionsIfFeatureIsNotInstalled","installOptions","askAboutMissingActionOptions","answers","installOurFeature","ourFeatureResults","merge","executeResults","results","didExecuteResults","didExecuteErrors","mergeActionResults","Action","actionExecuter","execute","bind"],"sources":["../../src/features/ActionExecuter.ts"],"sourcesContent":["import { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport merge from 'lodash/merge'\nimport SpruceError from '../errors/SpruceError'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport { GraphicsInterface } from '../types/cli.types'\nimport actionUtil from '../utilities/action.utility'\nimport ActionFactory from './ActionFactory'\nimport ActionOptionAsker from './ActionQuestionAsker'\nimport FeatureInstaller from './FeatureInstaller'\nimport {\n\tFeatureCode,\n\tFeatureInstallResponse,\n\tFeatureAction,\n\tFeatureActionResponse,\n} from './features.types'\n\nexport interface ActionExecuterOptions {\n\tui: GraphicsInterface\n\temitter: GlobalEmitter\n\tactionFactory: ActionFactory\n\tfeatureInstallerFactory: () => FeatureInstaller\n\tshouldAutoHandleDependencies?: boolean\n\tshouldThrowOnListenerError?: boolean\n}\n\nexport default class ActionExecuter {\n\tprivate emitter: GlobalEmitter\n\tprivate ui: GraphicsInterface\n\tprivate actionFactory: ActionFactory\n\tprivate featureInstallerFactory: () => FeatureInstaller\n\tprivate shouldAutoHandleDependencies: boolean\n\tprivate shouldThrowOnListenerError: boolean\n\n\tpublic constructor(options: ActionExecuterOptions) {\n\t\tthis.featureInstallerFactory = options.featureInstallerFactory\n\t\tthis.emitter = options.emitter\n\t\tthis.ui = options.ui\n\t\tthis.actionFactory = options.actionFactory\n\t\tthis.shouldAutoHandleDependencies =\n\t\t\toptions.shouldAutoHandleDependencies ?? true\n\n\t\tthis.shouldThrowOnListenerError = !!options.shouldThrowOnListenerError\n\t}\n\n\tprivate getFeatureInstaller() {\n\t\treturn this.featureInstallerFactory()\n\t}\n\n\tprivate async execute(options: {\n\t\tfeatureCode: FeatureCode\n\t\tactionCode: string\n\t\taction: any\n\t\toriginalExecute: any\n\t\toptions?: Record<string, any>\n\t}): Promise<FeatureInstallResponse & FeatureActionResponse> {\n\t\tconst {\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\taction,\n\t\t\toriginalExecute,\n\t\t\toptions: actionOptions,\n\t\t} = options\n\n\t\tconst installer = this.getFeatureInstaller()\n\t\tconst isInstalled = await installer.isInstalled(featureCode)\n\n\t\tif (!isInstalled && !this.shouldAutoHandleDependencies) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'FEATURE_NOT_INSTALLED',\n\t\t\t\tfeatureCode,\n\t\t\t\tfriendlyMessage: `You need to install the \\`${featureCode}\\` feature.`,\n\t\t\t})\n\t\t}\n\n\t\tconst willExecuteResults = await this.emitter.emit('feature.will-execute', {\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\toptions: actionOptions,\n\t\t})\n\n\t\tconst { payloads: willExecutePayloads, errors } =\n\t\t\teventResponseUtil.getAllResponsePayloadsAndErrors(\n\t\t\t\twillExecuteResults,\n\t\t\t\tSpruceError\n\t\t\t)\n\n\t\tif (errors?.length ?? 0 > 0) {\n\t\t\tif (this.shouldThrowOnListenerError) {\n\t\t\t\t//@ts-ignore\n\t\t\t\tthrow errors[0]\n\t\t\t}\n\t\t\treturn { errors }\n\t\t}\n\n\t\tactionUtil.assertNoErrorsInResponse(willExecuteResults)\n\n\t\tconst feature = installer.getFeature(featureCode)\n\n\t\tconst asker = new ActionOptionAsker({\n\t\t\tfeatureInstaller: installer,\n\t\t\tfeature,\n\t\t\tactionCode,\n\t\t\tshouldAutoHandleDependencies: this.shouldAutoHandleDependencies,\n\t\t\tui: this.ui,\n\t\t})\n\n\t\tlet response =\n\t\t\t(await asker.installOrMarkAsSkippedMissingDependencies()) ?? {}\n\n\t\tconst installOptions =\n\t\t\t(await asker.askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(\n\t\t\t\tisInstalled,\n\t\t\t\tactionOptions\n\t\t\t)) ??\n\t\t\tactionOptions ??\n\t\t\t{}\n\n\t\tlet answers =\n\t\t\t(await asker.askAboutMissingActionOptions(action, installOptions)) ??\n\t\t\tinstallOptions\n\n\t\tif (!isInstalled) {\n\t\t\tconst ourFeatureResults =\n\t\t\t\t(await asker.installOurFeature(installOptions)) ?? {}\n\t\t\tresponse = merge(response, ourFeatureResults)\n\t\t}\n\n\t\tlet executeResults: FeatureActionResponse = {}\n\n\t\ttry {\n\t\t\texecuteResults = await originalExecute({\n\t\t\t\t...answers,\n\t\t\t})\n\t\t} catch (err) {\n\t\t\texecuteResults.errors = [err]\n\t\t}\n\n\t\tresponse = merge(response, executeResults)\n\n\t\tconst didExecuteResults = await this.emitter.emit('feature.did-execute', {\n\t\t\tresults: response,\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t})\n\n\t\tconst { payloads, errors: didExecuteErrors } =\n\t\t\teventResponseUtil.getAllResponsePayloadsAndErrors(\n\t\t\t\tdidExecuteResults,\n\t\t\t\tSpruceError\n\t\t\t)\n\n\t\tif (\n\t\t\t(this.shouldThrowOnListenerError && didExecuteErrors?.length) ??\n\t\t\t0 > 0\n\t\t) {\n\t\t\t//@ts-ignore\n\t\t\tthrow didExecuteErrors[0]\n\t\t}\n\n\t\tresponse = actionUtil.mergeActionResults(\n\t\t\tresponse,\n\t\t\t...willExecutePayloads,\n\t\t\t...payloads\n\t\t)\n\n\t\tif (didExecuteErrors) {\n\t\t\tresponse = actionUtil.mergeActionResults(response, {\n\t\t\t\terrors: didExecuteErrors,\n\t\t\t})\n\t\t}\n\n\t\treturn response\n\t}\n\n\tpublic Action<F extends FeatureCode>(\n\t\tfeatureCode: F,\n\t\tactionCode: string\n\t): FeatureAction {\n\t\tconst featureInstaller = this.getFeatureInstaller()\n\n\t\tconst actionFactory = this.actionFactory\n\t\tconst action = actionFactory.Action({\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\tactionExecuter: this,\n\t\t\tfeatureInstaller,\n\t\t})\n\n\t\tconst originalExecute = action.execute.bind(action)\n\n\t\taction.execute = async (options: any) => {\n\t\t\treturn this.execute({\n\t\t\t\tfeatureCode,\n\t\t\t\tactionCode,\n\t\t\t\taction,\n\t\t\t\toriginalExecute,\n\t\t\t\toptions,\n\t\t\t})\n\t\t}\n\n\t\treturn action as any\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ActionExecuter.js","names":["ActionExecuter","options","featureInstallerFactory","emitter","ui","actionFactory","shouldAutoHandleDependencies","shouldThrowOnListenerError","featureCode","actionCode","action","originalExecute","actionOptions","installer","getFeatureInstaller","isInstalled","SpruceError","code","friendlyMessage","emit","willExecuteResults","eventResponseUtil","getAllResponsePayloadsAndErrors","willExecutePayloads","payloads","errors","length","actionUtil","assertNoErrorsInResponse","feature","getFeature","asker","ActionOptionAsker","featureInstaller","installOrMarkAsSkippedMissingDependencies","response","askAboutMissingFeatureOptionsIfFeatureIsNotInstalled","installOptions","askAboutMissingActionOptions","answers","installOurFeature","ourFeatureResults","merge","executeResults","results","didExecuteResults","didExecuteErrors","mergeActionResults","Action","actionExecuter","execute","bind"],"sources":["../../src/features/ActionExecuter.ts"],"sourcesContent":["import { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport merge from 'lodash/merge'\nimport SpruceError from '../errors/SpruceError'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport { GraphicsInterface } from '../types/cli.types'\nimport actionUtil from '../utilities/action.utility'\nimport ActionFactory from './ActionFactory'\nimport ActionOptionAsker from './ActionQuestionAsker'\nimport FeatureInstaller from './FeatureInstaller'\nimport {\n\tFeatureCode,\n\tFeatureInstallResponse,\n\tFeatureAction,\n\tFeatureActionResponse,\n} from './features.types'\n\nexport interface ActionExecuterOptions {\n\tui: GraphicsInterface\n\temitter: GlobalEmitter\n\tactionFactory: ActionFactory\n\tfeatureInstallerFactory: () => FeatureInstaller\n\tshouldAutoHandleDependencies?: boolean\n\tshouldThrowOnListenerError?: boolean\n}\n\nexport default class ActionExecuter {\n\tprivate emitter: GlobalEmitter\n\tprivate ui: GraphicsInterface\n\tprivate actionFactory: ActionFactory\n\tprivate featureInstallerFactory: () => FeatureInstaller\n\tprivate shouldAutoHandleDependencies: boolean\n\tprivate shouldThrowOnListenerError: boolean\n\n\tpublic constructor(options: ActionExecuterOptions) {\n\t\tthis.featureInstallerFactory = options.featureInstallerFactory\n\t\tthis.emitter = options.emitter\n\t\tthis.ui = options.ui\n\t\tthis.actionFactory = options.actionFactory\n\t\tthis.shouldAutoHandleDependencies =\n\t\t\toptions.shouldAutoHandleDependencies ?? true\n\n\t\tthis.shouldThrowOnListenerError = !!options.shouldThrowOnListenerError\n\t}\n\n\tprivate getFeatureInstaller() {\n\t\treturn this.featureInstallerFactory()\n\t}\n\n\tprivate async execute(options: {\n\t\tfeatureCode: FeatureCode\n\t\tactionCode: string\n\t\taction: any\n\t\toriginalExecute: any\n\t\toptions?: Record<string, any>\n\t}): Promise<FeatureInstallResponse & FeatureActionResponse> {\n\t\tconst {\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\taction,\n\t\t\toriginalExecute,\n\t\t\toptions: actionOptions,\n\t\t} = options\n\n\t\tconst installer = this.getFeatureInstaller()\n\t\tconst isInstalled = await installer.isInstalled(featureCode)\n\n\t\tif (!isInstalled && !this.shouldAutoHandleDependencies) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'FEATURE_NOT_INSTALLED',\n\t\t\t\tfeatureCode,\n\t\t\t\tfriendlyMessage: `You need to install the \\`${featureCode}\\` feature.`,\n\t\t\t})\n\t\t}\n\n\t\tconst willExecuteResults = await this.emitter.emit('feature.will-execute', {\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\toptions: actionOptions,\n\t\t})\n\n\t\tconst { payloads: willExecutePayloads, errors } =\n\t\t\teventResponseUtil.getAllResponsePayloadsAndErrors(\n\t\t\t\twillExecuteResults,\n\t\t\t\tSpruceError\n\t\t\t)\n\n\t\tif (errors?.length ?? 0 > 0) {\n\t\t\tif (this.shouldThrowOnListenerError) {\n\t\t\t\t//@ts-ignore\n\t\t\t\tthrow errors[0]\n\t\t\t}\n\t\t\treturn { errors }\n\t\t}\n\n\t\tactionUtil.assertNoErrorsInResponse(willExecuteResults)\n\n\t\tconst feature = installer.getFeature(featureCode)\n\n\t\tconst asker = new ActionOptionAsker({\n\t\t\tfeatureInstaller: installer,\n\t\t\tfeature,\n\t\t\tactionCode,\n\t\t\tshouldAutoHandleDependencies: this.shouldAutoHandleDependencies,\n\t\t\tui: this.ui,\n\t\t})\n\n\t\tlet response =\n\t\t\t(await asker.installOrMarkAsSkippedMissingDependencies()) ?? {}\n\n\t\tconst installOptions =\n\t\t\t(await asker.askAboutMissingFeatureOptionsIfFeatureIsNotInstalled(\n\t\t\t\tisInstalled,\n\t\t\t\tactionOptions\n\t\t\t)) ??\n\t\t\tactionOptions ??\n\t\t\t{}\n\n\t\tlet answers =\n\t\t\t(await asker.askAboutMissingActionOptions(action, installOptions)) ??\n\t\t\tinstallOptions\n\n\t\tif (!isInstalled) {\n\t\t\tconst ourFeatureResults =\n\t\t\t\t(await asker.installOurFeature(installOptions)) ?? {}\n\t\t\tresponse = merge(response, ourFeatureResults)\n\t\t}\n\n\t\tlet executeResults: FeatureActionResponse = {}\n\n\t\ttry {\n\t\t\texecuteResults = await originalExecute({\n\t\t\t\t...answers,\n\t\t\t})\n\t\t} catch (err) {\n\t\t\texecuteResults.errors = [err]\n\t\t}\n\n\t\tresponse = merge(response, executeResults)\n\n\t\tconst didExecuteResults = await this.emitter.emit('feature.did-execute', {\n\t\t\tresults: response,\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t})\n\n\t\tconst { payloads, errors: didExecuteErrors } =\n\t\t\teventResponseUtil.getAllResponsePayloadsAndErrors(\n\t\t\t\tdidExecuteResults,\n\t\t\t\tSpruceError\n\t\t\t)\n\n\t\tif (\n\t\t\t(this.shouldThrowOnListenerError && didExecuteErrors?.length) ??\n\t\t\t0 > 0\n\t\t) {\n\t\t\t//@ts-ignore\n\t\t\tthrow didExecuteErrors[0]\n\t\t}\n\n\t\tresponse = actionUtil.mergeActionResults(\n\t\t\tresponse,\n\t\t\t...willExecutePayloads,\n\t\t\t...payloads\n\t\t)\n\n\t\tif (didExecuteErrors) {\n\t\t\tresponse = actionUtil.mergeActionResults(response, {\n\t\t\t\terrors: didExecuteErrors,\n\t\t\t})\n\t\t}\n\n\t\treturn response\n\t}\n\n\tpublic Action<F extends FeatureCode>(\n\t\tfeatureCode: F,\n\t\tactionCode: string\n\t): FeatureAction {\n\t\tconst featureInstaller = this.getFeatureInstaller()\n\n\t\tconst actionFactory = this.actionFactory\n\t\tconst action = actionFactory.Action({\n\t\t\tfeatureCode,\n\t\t\tactionCode,\n\t\t\tactionExecuter: this,\n\t\t\tfeatureInstaller,\n\t\t})\n\n\t\tconst originalExecute = action.execute.bind(action)\n\n\t\taction.execute = async (options: any) => {\n\t\t\treturn this.execute({\n\t\t\t\tfeatureCode,\n\t\t\t\tactionCode,\n\t\t\t\taction,\n\t\t\t\toriginalExecute,\n\t\t\t\toptions,\n\t\t\t})\n\t\t}\n\n\t\treturn action as any\n\t}\n}\n"],"mappings":"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"}
@@ -1,32 +1,20 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
-
12
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
12
  var _spruceSkillUtils = require("@sprucelabs/spruce-skill-utils");
19
-
20
13
  var _SpruceError = _interopRequireDefault(require("../errors/SpruceError"));
21
-
22
14
  var _OverrideActionDecorator = _interopRequireDefault(require("./OverrideActionDecorator"));
23
-
24
15
  var _excluded = ["blockedCommands", "optionOverrides"];
25
-
26
16
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
-
28
17
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29
-
30
18
  var ActionFactory = /*#__PURE__*/function () {
31
19
  function ActionFactory(options) {
32
20
  (0, _classCallCheck2["default"])(this, ActionFactory);
@@ -34,38 +22,34 @@ var ActionFactory = /*#__PURE__*/function () {
34
22
  (0, _defineProperty2["default"])(this, "blockedCommands", void 0);
35
23
  (0, _defineProperty2["default"])(this, "optionOverrides", void 0);
36
24
  var blockedCommands = options.blockedCommands,
37
- optionOverrides = options.optionOverrides,
38
- actionOptions = (0, _objectWithoutProperties2["default"])(options, _excluded);
25
+ optionOverrides = options.optionOverrides,
26
+ actionOptions = (0, _objectWithoutProperties2["default"])(options, _excluded);
39
27
  this.actionOptions = actionOptions;
40
28
  this.blockedCommands = blockedCommands;
41
29
  this.optionOverrides = optionOverrides;
42
30
  }
43
-
44
31
  (0, _createClass2["default"])(ActionFactory, [{
45
32
  key: "Action",
46
33
  value: function Action(options) {
47
34
  var featureCode = options.featureCode,
48
- actionCode = options.actionCode,
49
- actionExecuter = options.actionExecuter,
50
- featureInstaller = options.featureInstaller;
35
+ actionCode = options.actionCode,
36
+ actionExecuter = options.actionExecuter,
37
+ featureInstaller = options.featureInstaller;
51
38
  var feature = featureInstaller.getFeature(featureCode);
52
-
53
39
  if (!feature.actionsDir) {
54
40
  throw new Error("Your ".concat(featureCode, " features needs `public actionsDir = diskUtil.resolvePath(__dirname, 'actions')`"));
55
41
  }
56
-
57
42
  var classPath = _spruceSkillUtils.diskUtil.resolvePath(feature.actionsDir, "".concat(_spruceSkillUtils.namesUtil.toPascal(actionCode), "Action"));
58
-
59
43
  var Class;
60
44
  var originalError;
61
-
62
45
  try {
63
- Class = require(classPath)["default"]; // eslint-disable-next-line no-empty
46
+ Class = require(classPath)["default"];
47
+ // eslint-disable-next-line no-empty
64
48
  } catch (err) {
65
49
  originalError = err;
66
- } //@ts-ignore
67
-
50
+ }
68
51
 
52
+ //@ts-ignore
69
53
  if (!Class) {
70
54
  throw new _SpruceError["default"]({
71
55
  code: 'GENERIC',
@@ -73,27 +57,23 @@ var ActionFactory = /*#__PURE__*/function () {
73
57
  originalError: originalError
74
58
  });
75
59
  }
76
-
77
60
  var action = new Class(_objectSpread(_objectSpread({}, this.actionOptions), {}, {
78
61
  actionExecuter: actionExecuter,
79
62
  parent: feature,
80
63
  featureInstaller: featureInstaller
81
64
  }));
82
-
83
65
  if (!action) {
84
66
  throw new _SpruceError["default"]({
85
67
  code: 'GENERIC',
86
68
  friendlyMessage: "I could not instantiate ".concat(actionCode, " action on ").concat(feature.code, " feature.")
87
69
  });
88
70
  }
89
-
90
71
  if (!action.execute) {
91
72
  throw new _SpruceError["default"]({
92
73
  code: 'GENERIC',
93
74
  friendlyMessage: "It looks like the ".concat(feature.code, " feature's '").concat(actionCode, "' action does not properly extend AbstractAction.")
94
75
  });
95
76
  }
96
-
97
77
  var actionDecorator = new _OverrideActionDecorator["default"]({
98
78
  action: action,
99
79
  feature: feature,
@@ -107,6 +87,5 @@ var ActionFactory = /*#__PURE__*/function () {
107
87
  }]);
108
88
  return ActionFactory;
109
89
  }();
110
-
111
90
  exports["default"] = ActionFactory;
112
91
  //# sourceMappingURL=ActionFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActionFactory.js","names":["ActionFactory","options","blockedCommands","optionOverrides","actionOptions","featureCode","actionCode","actionExecuter","featureInstaller","feature","getFeature","actionsDir","Error","classPath","diskUtil","resolvePath","namesUtil","toPascal","Class","originalError","require","err","SpruceError","code","friendlyMessage","action","parent","execute","actionDecorator","OverrideActionDecorator","ui"],"sources":["../../src/features/ActionFactory.ts"],"sourcesContent":["import { Schema } from '@sprucelabs/schema'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../errors/SpruceError'\nimport {\n\tFeatureAction,\n\tActionOptions,\n\tFeatureCode,\n} from '../features/features.types'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport { BlockedCommands, OptionOverrides } from '../types/cli.types'\nimport AbstractAction from './AbstractAction'\nimport ActionExecuter from './ActionExecuter'\nimport FeatureInstaller from './FeatureInstaller'\nimport OverrideActionDecorator from './OverrideActionDecorator'\n\nexport interface FeatureActionFactoryOptions\n\textends Omit<\n\t\tActionOptions,\n\t\t'parent' | 'actionExecuter' | 'featureInstaller'\n\t> {\n\temitter: GlobalEmitter\n\tblockedCommands?: BlockedCommands\n\toptionOverrides?: OptionOverrides\n}\n\nexport default class ActionFactory {\n\tprivate actionOptions: FeatureActionFactoryOptions\n\tprivate blockedCommands?: BlockedCommands\n\tprivate optionOverrides?: OptionOverrides\n\n\tpublic constructor(options: FeatureActionFactoryOptions) {\n\t\tconst { blockedCommands, optionOverrides, ...actionOptions } = options\n\t\tthis.actionOptions = actionOptions\n\t\tthis.blockedCommands = blockedCommands\n\t\tthis.optionOverrides = optionOverrides\n\t}\n\n\tpublic Action<F extends FeatureCode, S extends Schema = Schema>(options: {\n\t\tfeatureCode: F\n\t\tactionCode: string\n\t\tactionExecuter: ActionExecuter\n\t\tfeatureInstaller: FeatureInstaller\n\t}): FeatureAction<S> {\n\t\tconst { featureCode, actionCode, actionExecuter, featureInstaller } =\n\t\t\toptions\n\n\t\tconst feature = featureInstaller.getFeature(featureCode)\n\n\t\tif (!feature.actionsDir) {\n\t\t\tthrow new Error(\n\t\t\t\t`Your ${featureCode} features needs \\`public actionsDir = diskUtil.resolvePath(__dirname, 'actions')\\``\n\t\t\t)\n\t\t}\n\n\t\tconst classPath = diskUtil.resolvePath(\n\t\t\tfeature.actionsDir,\n\t\t\t`${namesUtil.toPascal(actionCode)}Action`\n\t\t)\n\n\t\tlet Class: new (options: ActionOptions) => AbstractAction | undefined\n\t\tlet originalError: Error | undefined\n\n\t\ttry {\n\t\t\tClass = require(classPath).default\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch (err: any) {\n\t\t\toriginalError = err\n\t\t}\n\n\t\t//@ts-ignore\n\t\tif (!Class) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `I could not find any action named '${actionCode}' for the ${feature.code} feature. Make sure it's the default export and extends AbstractAction.`,\n\t\t\t\toriginalError,\n\t\t\t})\n\t\t}\n\n\t\tconst action = new Class({\n\t\t\t...this.actionOptions,\n\t\t\tactionExecuter,\n\t\t\tparent: feature,\n\t\t\tfeatureInstaller,\n\t\t})\n\n\t\tif (!action) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `I could not instantiate ${actionCode} action on ${feature.code} feature.`,\n\t\t\t})\n\t\t}\n\n\t\tif (!action.execute) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `It looks like the ${feature.code} feature's '${actionCode}' action does not properly extend AbstractAction.`,\n\t\t\t})\n\t\t}\n\n\t\tconst actionDecorator = new OverrideActionDecorator({\n\t\t\taction,\n\t\t\tfeature,\n\t\t\tblockedCommands: this.blockedCommands,\n\t\t\toptionOverrides: this.optionOverrides,\n\t\t\tui: this.actionOptions.ui,\n\t\t\tactionCode,\n\t\t})\n\n\t\treturn actionDecorator as FeatureAction<S>\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AACA;;AAEA;;AAWA;;;;;;;;IAYqBA,a;EAKpB,uBAAmBC,OAAnB,EAAyD;IAAA;IAAA;IAAA;IAAA;IACxD,IAAQC,eAAR,GAA+DD,OAA/D,CAAQC,eAAR;IAAA,IAAyBC,eAAzB,GAA+DF,OAA/D,CAAyBE,eAAzB;IAAA,IAA6CC,aAA7C,6CAA+DH,OAA/D;IACA,KAAKG,aAAL,GAAqBA,aAArB;IACA,KAAKF,eAAL,GAAuBA,eAAvB;IACA,KAAKC,eAAL,GAAuBA,eAAvB;EACA;;;;WAED,gBAAgEF,OAAhE,EAKqB;MACpB,IAAQI,WAAR,GACCJ,OADD,CAAQI,WAAR;MAAA,IAAqBC,UAArB,GACCL,OADD,CAAqBK,UAArB;MAAA,IAAiCC,cAAjC,GACCN,OADD,CAAiCM,cAAjC;MAAA,IAAiDC,gBAAjD,GACCP,OADD,CAAiDO,gBAAjD;MAGA,IAAMC,OAAO,GAAGD,gBAAgB,CAACE,UAAjB,CAA4BL,WAA5B,CAAhB;;MAEA,IAAI,CAACI,OAAO,CAACE,UAAb,EAAyB;QACxB,MAAM,IAAIC,KAAJ,gBACGP,WADH,sFAAN;MAGA;;MAED,IAAMQ,SAAS,GAAGC,0BAAA,CAASC,WAAT,CACjBN,OAAO,CAACE,UADS,YAEdK,2BAAA,CAAUC,QAAV,CAAmBX,UAAnB,CAFc,YAAlB;;MAKA,IAAIY,KAAJ;MACA,IAAIC,aAAJ;;MAEA,IAAI;QACHD,KAAK,GAAGE,OAAO,CAACP,SAAD,CAAP,WAAR,CADG,CAEH;MACA,CAHD,CAGE,OAAOQ,GAAP,EAAiB;QAClBF,aAAa,GAAGE,GAAhB;MACA,CAzBmB,CA2BpB;;;MACA,IAAI,CAACH,KAAL,EAAY;QACX,MAAM,IAAII,uBAAJ,CAAgB;UACrBC,IAAI,EAAE,SADe;UAErBC,eAAe,+CAAwClB,UAAxC,uBAA+DG,OAAO,CAACc,IAAvE,4EAFM;UAGrBJ,aAAa,EAAbA;QAHqB,CAAhB,CAAN;MAKA;;MAED,IAAMM,MAAM,GAAG,IAAIP,KAAJ,iCACX,KAAKd,aADM;QAEdG,cAAc,EAAdA,cAFc;QAGdmB,MAAM,EAAEjB,OAHM;QAIdD,gBAAgB,EAAhBA;MAJc,GAAf;;MAOA,IAAI,CAACiB,MAAL,EAAa;QACZ,MAAM,IAAIH,uBAAJ,CAAgB;UACrBC,IAAI,EAAE,SADe;UAErBC,eAAe,oCAA6BlB,UAA7B,wBAAqDG,OAAO,CAACc,IAA7D;QAFM,CAAhB,CAAN;MAIA;;MAED,IAAI,CAACE,MAAM,CAACE,OAAZ,EAAqB;QACpB,MAAM,IAAIL,uBAAJ,CAAgB;UACrBC,IAAI,EAAE,SADe;UAErBC,eAAe,8BAAuBf,OAAO,CAACc,IAA/B,yBAAkDjB,UAAlD;QAFM,CAAhB,CAAN;MAIA;;MAED,IAAMsB,eAAe,GAAG,IAAIC,mCAAJ,CAA4B;QACnDJ,MAAM,EAANA,MADmD;QAEnDhB,OAAO,EAAPA,OAFmD;QAGnDP,eAAe,EAAE,KAAKA,eAH6B;QAInDC,eAAe,EAAE,KAAKA,eAJ6B;QAKnD2B,EAAE,EAAE,KAAK1B,aAAL,CAAmB0B,EAL4B;QAMnDxB,UAAU,EAAVA;MANmD,CAA5B,CAAxB;MASA,OAAOsB,eAAP;IACA"}
1
+ {"version":3,"file":"ActionFactory.js","names":["ActionFactory","options","blockedCommands","optionOverrides","actionOptions","featureCode","actionCode","actionExecuter","featureInstaller","feature","getFeature","actionsDir","Error","classPath","diskUtil","resolvePath","namesUtil","toPascal","Class","originalError","require","err","SpruceError","code","friendlyMessage","action","parent","execute","actionDecorator","OverrideActionDecorator","ui"],"sources":["../../src/features/ActionFactory.ts"],"sourcesContent":["import { Schema } from '@sprucelabs/schema'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../errors/SpruceError'\nimport {\n\tFeatureAction,\n\tActionOptions,\n\tFeatureCode,\n} from '../features/features.types'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport { BlockedCommands, OptionOverrides } from '../types/cli.types'\nimport AbstractAction from './AbstractAction'\nimport ActionExecuter from './ActionExecuter'\nimport FeatureInstaller from './FeatureInstaller'\nimport OverrideActionDecorator from './OverrideActionDecorator'\n\nexport interface FeatureActionFactoryOptions\n\textends Omit<\n\t\tActionOptions,\n\t\t'parent' | 'actionExecuter' | 'featureInstaller'\n\t> {\n\temitter: GlobalEmitter\n\tblockedCommands?: BlockedCommands\n\toptionOverrides?: OptionOverrides\n}\n\nexport default class ActionFactory {\n\tprivate actionOptions: FeatureActionFactoryOptions\n\tprivate blockedCommands?: BlockedCommands\n\tprivate optionOverrides?: OptionOverrides\n\n\tpublic constructor(options: FeatureActionFactoryOptions) {\n\t\tconst { blockedCommands, optionOverrides, ...actionOptions } = options\n\t\tthis.actionOptions = actionOptions\n\t\tthis.blockedCommands = blockedCommands\n\t\tthis.optionOverrides = optionOverrides\n\t}\n\n\tpublic Action<F extends FeatureCode, S extends Schema = Schema>(options: {\n\t\tfeatureCode: F\n\t\tactionCode: string\n\t\tactionExecuter: ActionExecuter\n\t\tfeatureInstaller: FeatureInstaller\n\t}): FeatureAction<S> {\n\t\tconst { featureCode, actionCode, actionExecuter, featureInstaller } =\n\t\t\toptions\n\n\t\tconst feature = featureInstaller.getFeature(featureCode)\n\n\t\tif (!feature.actionsDir) {\n\t\t\tthrow new Error(\n\t\t\t\t`Your ${featureCode} features needs \\`public actionsDir = diskUtil.resolvePath(__dirname, 'actions')\\``\n\t\t\t)\n\t\t}\n\n\t\tconst classPath = diskUtil.resolvePath(\n\t\t\tfeature.actionsDir,\n\t\t\t`${namesUtil.toPascal(actionCode)}Action`\n\t\t)\n\n\t\tlet Class: new (options: ActionOptions) => AbstractAction | undefined\n\t\tlet originalError: Error | undefined\n\n\t\ttry {\n\t\t\tClass = require(classPath).default\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch (err: any) {\n\t\t\toriginalError = err\n\t\t}\n\n\t\t//@ts-ignore\n\t\tif (!Class) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `I could not find any action named '${actionCode}' for the ${feature.code} feature. Make sure it's the default export and extends AbstractAction.`,\n\t\t\t\toriginalError,\n\t\t\t})\n\t\t}\n\n\t\tconst action = new Class({\n\t\t\t...this.actionOptions,\n\t\t\tactionExecuter,\n\t\t\tparent: feature,\n\t\t\tfeatureInstaller,\n\t\t})\n\n\t\tif (!action) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `I could not instantiate ${actionCode} action on ${feature.code} feature.`,\n\t\t\t})\n\t\t}\n\n\t\tif (!action.execute) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'GENERIC',\n\t\t\t\tfriendlyMessage: `It looks like the ${feature.code} feature's '${actionCode}' action does not properly extend AbstractAction.`,\n\t\t\t})\n\t\t}\n\n\t\tconst actionDecorator = new OverrideActionDecorator({\n\t\t\taction,\n\t\t\tfeature,\n\t\t\tblockedCommands: this.blockedCommands,\n\t\t\toptionOverrides: this.optionOverrides,\n\t\t\tui: this.actionOptions.ui,\n\t\t\tactionCode,\n\t\t})\n\n\t\treturn actionDecorator as FeatureAction<S>\n\t}\n}\n"],"mappings":";;;;;;;;;;;AACA;AAEA;AAWA;AAA+D;AAAA;AAAA;AAAA,IAY1CA,aAAa;EAKjC,uBAAmBC,OAAoC,EAAE;IAAA;IAAA;IAAA;IAAA;IACxD,IAAQC,eAAe,GAAwCD,OAAO,CAA9DC,eAAe;MAAEC,eAAe,GAAuBF,OAAO,CAA7CE,eAAe;MAAKC,aAAa,6CAAKH,OAAO;IACtE,IAAI,CAACG,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACF,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,eAAe,GAAGA,eAAe;EACvC;EAAC;IAAA;IAAA,OAED,gBAAgEF,OAK/D,EAAoB;MACpB,IAAQI,WAAW,GAClBJ,OAAO,CADAI,WAAW;QAAEC,UAAU,GAC9BL,OAAO,CADaK,UAAU;QAAEC,cAAc,GAC9CN,OAAO,CADyBM,cAAc;QAAEC,gBAAgB,GAChEP,OAAO,CADyCO,gBAAgB;MAGjE,IAAMC,OAAO,GAAGD,gBAAgB,CAACE,UAAU,CAACL,WAAW,CAAC;MAExD,IAAI,CAACI,OAAO,CAACE,UAAU,EAAE;QACxB,MAAM,IAAIC,KAAK,gBACNP,WAAW,sFACnB;MACF;MAEA,IAAMQ,SAAS,GAAGC,0BAAQ,CAACC,WAAW,CACrCN,OAAO,CAACE,UAAU,YACfK,2BAAS,CAACC,QAAQ,CAACX,UAAU,CAAC,YACjC;MAED,IAAIY,KAAiE;MACrE,IAAIC,aAAgC;MAEpC,IAAI;QACHD,KAAK,GAAGE,OAAO,CAACP,SAAS,CAAC,WAAQ;QAClC;MACD,CAAC,CAAC,OAAOQ,GAAQ,EAAE;QAClBF,aAAa,GAAGE,GAAG;MACpB;;MAEA;MACA,IAAI,CAACH,KAAK,EAAE;QACX,MAAM,IAAII,uBAAW,CAAC;UACrBC,IAAI,EAAE,SAAS;UACfC,eAAe,+CAAwClB,UAAU,uBAAaG,OAAO,CAACc,IAAI,4EAAyE;UACnKJ,aAAa,EAAbA;QACD,CAAC,CAAC;MACH;MAEA,IAAMM,MAAM,GAAG,IAAIP,KAAK,iCACpB,IAAI,CAACd,aAAa;QACrBG,cAAc,EAAdA,cAAc;QACdmB,MAAM,EAAEjB,OAAO;QACfD,gBAAgB,EAAhBA;MAAgB,GACf;MAEF,IAAI,CAACiB,MAAM,EAAE;QACZ,MAAM,IAAIH,uBAAW,CAAC;UACrBC,IAAI,EAAE,SAAS;UACfC,eAAe,oCAA6BlB,UAAU,wBAAcG,OAAO,CAACc,IAAI;QACjF,CAAC,CAAC;MACH;MAEA,IAAI,CAACE,MAAM,CAACE,OAAO,EAAE;QACpB,MAAM,IAAIL,uBAAW,CAAC;UACrBC,IAAI,EAAE,SAAS;UACfC,eAAe,8BAAuBf,OAAO,CAACc,IAAI,yBAAejB,UAAU;QAC5E,CAAC,CAAC;MACH;MAEA,IAAMsB,eAAe,GAAG,IAAIC,mCAAuB,CAAC;QACnDJ,MAAM,EAANA,MAAM;QACNhB,OAAO,EAAPA,OAAO;QACPP,eAAe,EAAE,IAAI,CAACA,eAAe;QACrCC,eAAe,EAAE,IAAI,CAACA,eAAe;QACrC2B,EAAE,EAAE,IAAI,CAAC1B,aAAa,CAAC0B,EAAE;QACzBxB,UAAU,EAAVA;MACD,CAAC,CAAC;MAEF,OAAOsB,eAAe;IACvB;EAAC;EAAA;AAAA;AAAA"}