@sprucelabs/spruce-cli 19.0.0 → 19.1.1

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 (1014) hide show
  1. package/.DS_Store +0 -0
  2. package/.env +25 -0
  3. package/.eslintcache +1 -0
  4. package/CHANGELOG.md +6 -0
  5. package/build/.spruce/errors/spruceCli/actionCancelled.schema.js.map +1 -1
  6. package/build/.spruce/errors/spruceCli/bootError.schema.js.map +1 -1
  7. package/build/.spruce/errors/spruceCli/buildFailed.schema.js.map +1 -1
  8. package/build/.spruce/errors/spruceCli/cacheNotEnabled.schema.js.map +1 -1
  9. package/build/.spruce/errors/spruceCli/commandAborted.schema.js.map +1 -1
  10. package/build/.spruce/errors/spruceCli/commandBlocked.schema.js.map +1 -1
  11. package/build/.spruce/errors/spruceCli/commandNotImplemented.schema.js.map +1 -1
  12. package/build/.spruce/errors/spruceCli/createAutoloaderFailed.schema.js.map +1 -1
  13. package/build/.spruce/errors/spruceCli/dependencyExists.schema.js.map +1 -1
  14. package/build/.spruce/errors/spruceCli/deployFailed.schema.js.map +1 -1
  15. package/build/.spruce/errors/spruceCli/directoryEmpty.schema.js.map +1 -1
  16. package/build/.spruce/errors/spruceCli/directoryNotSkill.schema.js.map +1 -1
  17. package/build/.spruce/errors/spruceCli/dockerNotStarted.schema.js.map +1 -1
  18. package/build/.spruce/errors/spruceCli/executingCommandFailed.schema.js.map +1 -1
  19. package/build/.spruce/errors/spruceCli/failedToImport.schema.js.map +1 -1
  20. package/build/.spruce/errors/spruceCli/featureNotInstalled.schema.js.map +1 -1
  21. package/build/.spruce/errors/spruceCli/fileExists.schema.js.map +1 -1
  22. package/build/.spruce/errors/spruceCli/generic.schema.js.map +1 -1
  23. package/build/.spruce/errors/spruceCli/invalidCommand.schema.js.map +1 -1
  24. package/build/.spruce/errors/spruceCli/invalidEventContract.schema.js.map +1 -1
  25. package/build/.spruce/errors/spruceCli/invalidFeatureCode.schema.js.map +1 -1
  26. package/build/.spruce/errors/spruceCli/invalidTestDirectory.schema.js.map +1 -1
  27. package/build/.spruce/errors/spruceCli/lintFailed.schema.js.map +1 -1
  28. package/build/.spruce/errors/spruceCli/mercuryResponseError.schema.js.map +1 -1
  29. package/build/.spruce/errors/spruceCli/missingDependencies.schema.js.map +1 -1
  30. package/build/.spruce/errors/spruceCli/missingDependenciesDependency.schema.js.map +1 -1
  31. package/build/.spruce/errors/spruceCli/noOrganizationsFound.schema.js.map +1 -1
  32. package/build/.spruce/errors/spruceCli/noSkillsRegistered.schema.js.map +1 -1
  33. package/build/.spruce/errors/spruceCli/notImplemented.schema.js.map +1 -1
  34. package/build/.spruce/errors/spruceCli/notLoggedIn.schema.js.map +1 -1
  35. package/build/.spruce/errors/spruceCli/schemaExists.schema.js.map +1 -1
  36. package/build/.spruce/errors/spruceCli/schemaFailedToImport.schema.js.map +1 -1
  37. package/build/.spruce/errors/spruceCli/schemaTemplateItemBuildingFailed.schema.js.map +1 -1
  38. package/build/.spruce/errors/spruceCli/skillNotFound.schema.js.map +1 -1
  39. package/build/.spruce/errors/spruceCli/skillNotRegistered.schema.js.map +1 -1
  40. package/build/.spruce/errors/spruceCli/skillViewExists.schema.js.map +1 -1
  41. package/build/.spruce/errors/spruceCli/storeExists.schema.js.map +1 -1
  42. package/build/.spruce/errors/spruceCli/testFailed.schema.js.map +1 -1
  43. package/build/.spruce/errors/spruceCli/themeExists.schema.js.map +1 -1
  44. package/build/.spruce/errors/spruceCli/transportAlreadyExists.schema.js.map +1 -1
  45. package/build/.spruce/errors/spruceCli/vscodeNotInstalled.schema.js.map +1 -1
  46. package/build/.spruce/events/events.contract.js.map +1 -1
  47. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
  48. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
  49. package/build/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.js.map +1 -1
  50. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
  51. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js.map +1 -1
  52. package/build/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.js.map +1 -1
  53. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
  54. package/build/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.js.map +1 -1
  55. package/build/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.js.map +1 -1
  56. package/build/.spruce/schemas/fields/fieldClassMap.js.map +1 -1
  57. package/build/.spruce/schemas/fields/fields.types.js.map +1 -1
  58. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitPayload.schema.js.map +1 -1
  59. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTarget.schema.js.map +1 -1
  60. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  61. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitPayload.schema.js.map +1 -1
  62. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTarget.schema.js.map +1 -1
  63. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTargetAndPayload.schema.js.map +1 -1
  64. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlResponsePayload.schema.js.map +1 -1
  65. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTarget.schema.js.map +1 -1
  66. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTargetAndPayload.schema.js.map +1 -1
  67. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeResponsePayload.schema.js.map +1 -1
  68. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  69. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsResponsePayload.schema.js.map +1 -1
  70. package/build/.spruce/schemas/heartwood/v2021_02_11/getViewControllersEmitTarget.schema.js.map +1 -1
  71. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js.map +1 -1
  72. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js.map +1 -1
  73. package/build/.spruce/schemas/heartwood/v2021_02_11/registerDashboardCardsResponsePayload.schema.js.map +1 -1
  74. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitPayload.schema.js.map +1 -1
  75. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  76. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsResponsePayload.schema.js.map +1 -1
  77. package/build/.spruce/schemas/heartwood/v2021_02_11/theme.schema.js.map +1 -1
  78. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitPayload.schema.js.map +1 -1
  79. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTarget.schema.js.map +1 -1
  80. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTargetAndPayload.schema.js.map +1 -1
  81. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeResponsePayload.schema.js.map +1 -1
  82. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/theme.schema.js.map +1 -1
  83. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/themeProps.schema.js.map +1 -1
  84. package/build/.spruce/schemas/schemas.types.js.map +1 -1
  85. package/build/.spruce/schemas/spruce/v2020_07_22/choice.schema.js.map +1 -1
  86. package/build/.spruce/schemas/spruce/v2020_07_22/link.schema.js.map +1 -1
  87. package/build/.spruce/schemas/spruce/v2020_07_22/location.schema.js.map +1 -1
  88. package/build/.spruce/schemas/spruce/v2020_07_22/message.schema.js.map +1 -1
  89. package/build/.spruce/schemas/spruce/v2020_07_22/messageSource.schema.js.map +1 -1
  90. package/build/.spruce/schemas/spruce/v2020_07_22/messageTarget.schema.js.map +1 -1
  91. package/build/.spruce/schemas/spruce/v2020_07_22/organization.schema.js.map +1 -1
  92. package/build/.spruce/schemas/spruce/v2020_07_22/person.schema.js.map +1 -1
  93. package/build/.spruce/schemas/spruce/v2020_07_22/personLocation.schema.js.map +1 -1
  94. package/build/.spruce/schemas/spruce/v2020_07_22/personOrganization.schema.js.map +1 -1
  95. package/build/.spruce/schemas/spruce/v2020_07_22/role.schema.js.map +1 -1
  96. package/build/.spruce/schemas/spruce/v2020_07_22/sendMessage.schema.js.map +1 -1
  97. package/build/.spruce/schemas/spruce/v2020_07_22/skill.schema.js.map +1 -1
  98. package/build/.spruce/schemas/spruce/v2020_07_22/skillCreator.schema.js.map +1 -1
  99. package/build/.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema.js.map +1 -1
  100. package/build/.spruce/schemas/spruceCli/v2020_07_22/bootSkillOptions.schema.js.map +1 -1
  101. package/build/.spruce/schemas/spruceCli/v2020_07_22/createConversationTopicOptions.schema.js.map +1 -1
  102. package/build/.spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema.js.map +1 -1
  103. package/build/.spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema.js.map +1 -1
  104. package/build/.spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema.js.map +1 -1
  105. package/build/.spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema.js.map +1 -1
  106. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedDir.schema.js.map +1 -1
  107. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedFile.schema.js.map +1 -1
  108. package/build/.spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema.js.map +1 -1
  109. package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js.map +1 -1
  110. package/build/.spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema.js.map +1 -1
  111. package/build/.spruce/schemas/spruceCli/v2020_07_22/nodeFeatureOptions.schema.js.map +1 -1
  112. package/build/.spruce/schemas/spruceCli/v2020_07_22/npmPackage.schema.js.map +1 -1
  113. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboardOptions.schema.js.map +1 -1
  114. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboarding.schema.js.map +1 -1
  115. package/build/.spruce/schemas/spruceCli/v2020_07_22/personWithToken.schema.js.map +1 -1
  116. package/build/.spruce/schemas/spruceCli/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.schema.js.map +1 -1
  117. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js.map +1 -1
  118. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema.js.map +1 -1
  119. package/build/.spruce/schemas/spruceCli/v2020_07_22/skillFeature.schema.js.map +1 -1
  120. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema.js.map +1 -1
  121. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema.js.map +1 -1
  122. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema.js.map +1 -1
  123. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema.js.map +1 -1
  124. package/build/.spruce/schemas/spruceCli/v2020_07_22/testOptions.schema.js.map +1 -1
  125. package/build/.spruce/schemas/spruceCli/v2020_07_22/upgradeSkillOptions.schema.js.map +1 -1
  126. package/build/.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema.js.map +1 -1
  127. package/build/.spruce/schemas/spruceEventUtils/v2021_09_13/eventSource.schema.js.map +1 -1
  128. package/build/.spruce/skill.types.js.map +1 -1
  129. package/build/GlobalEmitter.js.map +1 -1
  130. package/build/InFlightEntertainment.js.map +1 -1
  131. package/build/__tests__/behavioral/AddingADependency.test.js +130 -144
  132. package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
  133. package/build/__tests__/behavioral/BlockingCommands.test.js +59 -63
  134. package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
  135. package/build/__tests__/behavioral/BootingTheCli.test.d.ts +2 -1
  136. package/build/__tests__/behavioral/BootingTheCli.test.js +60 -22
  137. package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
  138. package/build/__tests__/behavioral/BootingWithBadFiles.test.js +46 -52
  139. package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
  140. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js +50 -56
  141. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
  142. package/build/__tests__/behavioral/DeployingASkill.test.js +512 -548
  143. package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
  144. package/build/__tests__/behavioral/DeployingToSandbox.test.js +321 -351
  145. package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
  146. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js +137 -153
  147. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
  148. package/build/__tests__/behavioral/GettingCliVersion.test.js +31 -37
  149. package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
  150. package/build/__tests__/behavioral/ManagingDependencies.test.js +112 -122
  151. package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
  152. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js +41 -45
  153. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
  154. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js +55 -59
  155. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
  156. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js +56 -64
  157. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
  158. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js +90 -104
  159. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
  160. package/build/__tests__/behavioral/SettingRemote.test.js +64 -74
  161. package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
  162. package/build/__tests__/behavioral/SettingUpVscode.test.js +52 -56
  163. package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
  164. package/build/__tests__/behavioral/TestingAConversation.test.js +143 -157
  165. package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
  166. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js +90 -100
  167. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
  168. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js +74 -78
  169. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
  170. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js +180 -190
  171. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
  172. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js +34 -38
  173. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
  174. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +179 -201
  175. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
  176. package/build/__tests__/behavioral/events/CreatingAListener.test.js +423 -459
  177. package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
  178. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +287 -315
  179. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
  180. package/build/__tests__/behavioral/events/EventWriter.test.js +64 -66
  181. package/build/__tests__/behavioral/events/EventWriter.test.js.map +1 -1
  182. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js +286 -316
  183. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
  184. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js +398 -420
  185. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
  186. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js +43 -49
  187. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
  188. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js +55 -59
  189. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
  190. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js +31 -35
  191. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js.map +1 -1
  192. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js +98 -104
  193. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js.map +1 -1
  194. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js +123 -135
  195. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js.map +1 -1
  196. package/build/__tests__/behavioral/events/SettingUpEvents.test.js +15 -17
  197. package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
  198. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +66 -72
  199. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
  200. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js +76 -82
  201. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
  202. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js +49 -55
  203. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
  204. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +79 -85
  205. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
  206. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js +45 -49
  207. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
  208. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js +40 -46
  209. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
  210. package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js +15 -19
  211. package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js.map +1 -1
  212. package/build/__tests__/behavioral/permissions/PermissionStore.test.js +174 -198
  213. package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
  214. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js +23 -27
  215. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js.map +1 -1
  216. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.d.ts +1 -0
  217. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +209 -208
  218. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
  219. package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js +34 -40
  220. package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js.map +1 -1
  221. package/build/__tests__/behavioral/permissions/support/generateShortAlphaId.js.map +1 -1
  222. package/build/__tests__/behavioral/permissions/support/renderPermissionTestFile.js.map +1 -1
  223. package/build/__tests__/behavioral/permissions/support/sortPermissionContracts.js.map +1 -1
  224. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js +153 -171
  225. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
  226. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js +40 -46
  227. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
  228. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js +102 -116
  229. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js.map +1 -1
  230. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js +227 -247
  231. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
  232. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js +27 -29
  233. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js.map +1 -1
  234. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js +38 -42
  235. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
  236. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js +65 -73
  237. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
  238. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js +100 -110
  239. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
  240. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js +25 -27
  241. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
  242. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js +425 -465
  243. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
  244. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js +49 -55
  245. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
  246. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js +435 -467
  247. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
  248. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js +19 -21
  249. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
  250. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js +9 -11
  251. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
  252. package/build/__tests__/behavioral/skill/BootingASkill.test.js +61 -67
  253. package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
  254. package/build/__tests__/behavioral/skill/CreatingASkill.test.js +37 -41
  255. package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
  256. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js +183 -199
  257. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js.map +1 -1
  258. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js +153 -171
  259. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js.map +1 -1
  260. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js +37 -43
  261. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js.map +1 -1
  262. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js +96 -104
  263. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
  264. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js +168 -184
  265. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
  266. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js +169 -191
  267. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
  268. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js +105 -125
  269. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
  270. package/build/__tests__/behavioral/tests/CreatingATest.test.js +208 -232
  271. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  272. package/build/__tests__/behavioral/tests/RunningTests.test.js +75 -79
  273. package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
  274. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +293 -355
  275. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
  276. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js +65 -75
  277. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js.map +1 -1
  278. package/build/__tests__/behavioral/tests/SettingUpTests.test.js +29 -33
  279. package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
  280. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js +50 -54
  281. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js.map +1 -1
  282. package/build/__tests__/behavioral/tests/TestingDataStores.test.js +87 -95
  283. package/build/__tests__/behavioral/tests/TestingDataStores.test.js.map +1 -1
  284. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js +57 -65
  285. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
  286. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js +146 -156
  287. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
  288. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js +79 -87
  289. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
  290. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js +282 -302
  291. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
  292. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js +183 -197
  293. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
  294. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js +214 -238
  295. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
  296. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js +118 -126
  297. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
  298. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js +138 -152
  299. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
  300. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js +61 -69
  301. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
  302. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js +90 -104
  303. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
  304. package/build/__tests__/behavioral/views/CreatingASkillView.test.js +194 -220
  305. package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
  306. package/build/__tests__/behavioral/views/CreatingATheme.test.js +83 -97
  307. package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
  308. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js +64 -76
  309. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
  310. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js +102 -114
  311. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js.map +1 -1
  312. package/build/__tests__/behavioral/views/SettingUpViews.test.js +33 -37
  313. package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
  314. package/build/__tests__/behavioral/views/TestingViewControllers.test.js +94 -106
  315. package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
  316. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js +32 -38
  317. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js.map +1 -1
  318. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js +302 -336
  319. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
  320. package/build/__tests__/implementation/ActionExecuter.test.js +132 -136
  321. package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
  322. package/build/__tests__/implementation/ActionExecuter2.test.js +270 -286
  323. package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
  324. package/build/__tests__/implementation/ActionExecuter3.test.js +64 -72
  325. package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
  326. package/build/__tests__/implementation/ActionExecuter4.test.js +41 -47
  327. package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
  328. package/build/__tests__/implementation/ArgParser.test.js +13 -17
  329. package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
  330. package/build/__tests__/implementation/BuildService.test.js +25 -29
  331. package/build/__tests__/implementation/BuildService.test.js.map +1 -1
  332. package/build/__tests__/implementation/BulkImporting.test.js +116 -136
  333. package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
  334. package/build/__tests__/implementation/CachingImports.test.js +89 -99
  335. package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
  336. package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
  337. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js +72 -90
  338. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
  339. package/build/__tests__/implementation/DataStoreStore.test.js +127 -147
  340. package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
  341. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js +46 -52
  342. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
  343. package/build/__tests__/implementation/EventContractCleanerUtil.test.js +27 -35
  344. package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
  345. package/build/__tests__/implementation/EventStore.test.js +371 -399
  346. package/build/__tests__/implementation/EventStore.test.js.map +1 -1
  347. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js +21 -27
  348. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
  349. package/build/__tests__/implementation/FeatureCommandAttacher.test.js +155 -173
  350. package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
  351. package/build/__tests__/implementation/FeatureFixture.test.js +54 -62
  352. package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
  353. package/build/__tests__/implementation/FeatureInstaller.test.js +69 -77
  354. package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
  355. package/build/__tests__/implementation/FeaturesUtil.test.js +7 -9
  356. package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
  357. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js +6 -8
  358. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
  359. package/build/__tests__/implementation/GlobalEmitter.test.js +29 -33
  360. package/build/__tests__/implementation/GlobalEmitter.test.js.map +1 -1
  361. package/build/__tests__/implementation/Introspection.test.js.map +1 -1
  362. package/build/__tests__/implementation/JestJsonParser.test.js +9 -11
  363. package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
  364. package/build/__tests__/implementation/LintService.test.js +32 -36
  365. package/build/__tests__/implementation/LintService.test.js.map +1 -1
  366. package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
  367. package/build/__tests__/implementation/OnboardingScriptLoader.test.js +72 -80
  368. package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
  369. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js +217 -243
  370. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
  371. package/build/__tests__/implementation/OnboardingStore.test.js +19 -23
  372. package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
  373. package/build/__tests__/implementation/OrganizationStore.test.js +114 -124
  374. package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
  375. package/build/__tests__/implementation/ParentTestFinder.test.js +38 -44
  376. package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
  377. package/build/__tests__/implementation/PkgService.test.js +63 -75
  378. package/build/__tests__/implementation/PkgService.test.js.map +1 -1
  379. package/build/__tests__/implementation/SchemaStore.test.js +314 -346
  380. package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
  381. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js +9 -11
  382. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
  383. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js +128 -142
  384. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
  385. package/build/__tests__/implementation/ServiceFactory.test.js +8 -10
  386. package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
  387. package/build/__tests__/implementation/SettingUpANodeModule.test.js +59 -65
  388. package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
  389. package/build/__tests__/implementation/SkillStore.test.js +153 -169
  390. package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
  391. package/build/__tests__/implementation/StoreFeature.test.js +49 -53
  392. package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
  393. package/build/__tests__/implementation/TestReporter.test.js +31 -39
  394. package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
  395. package/build/__tests__/implementation/TestRunner.test.js +215 -233
  396. package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
  397. package/build/__tests__/implementation/ValueTypeMapping.test.js +24 -28
  398. package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
  399. package/build/__tests__/implementation/Widgets.test.js +34 -42
  400. package/build/__tests__/implementation/Widgets.test.js.map +1 -1
  401. package/build/__tests__/support/EventFaker.js +12 -14
  402. package/build/__tests__/support/EventFaker.js.map +1 -1
  403. package/build/__tests__/support/onTestFileResult.js.map +1 -1
  404. package/build/__tests__/support/scripts/first.script.js +7 -9
  405. package/build/__tests__/support/scripts/first.script.js.map +1 -1
  406. package/build/__tests__/support/scripts/second.script.js.map +1 -1
  407. package/build/__tests__/support/scripts/third.test.script.js.map +1 -1
  408. package/build/addons/filePrompt.addon.js.map +1 -1
  409. package/build/boot.d.ts +2 -0
  410. package/build/boot.js +162 -0
  411. package/build/boot.js.map +1 -0
  412. package/build/{cli.d.ts → cli/Cli.d.ts} +9 -33
  413. package/build/cli/Cli.js +528 -0
  414. package/build/cli/Cli.js.map +1 -0
  415. package/build/components/AbstractComponent.js.map +1 -1
  416. package/build/components/FormComponent.js +156 -160
  417. package/build/components/FormComponent.js.map +1 -1
  418. package/build/components/QuizComponent.js +124 -128
  419. package/build/components/QuizComponent.js.map +1 -1
  420. package/build/constants.js.map +1 -1
  421. package/build/errors/SpruceError.js +1 -1
  422. package/build/errors/SpruceError.js.map +1 -1
  423. package/build/errors/actionCancelled.builder.js.map +1 -1
  424. package/build/errors/bootError.builder.js.map +1 -1
  425. package/build/errors/buildFailed.builder.js.map +1 -1
  426. package/build/errors/cacheNotEnabled.builder.js.map +1 -1
  427. package/build/errors/commandAborted.builder.js.map +1 -1
  428. package/build/errors/commandBlocked.builder.js.map +1 -1
  429. package/build/errors/commandNotImplemented.builder.js.map +1 -1
  430. package/build/errors/createAutoloaderFailed.builder.js.map +1 -1
  431. package/build/errors/dependencyExists.builder.js.map +1 -1
  432. package/build/errors/deployFailed.builder.js.map +1 -1
  433. package/build/errors/directoryEmpty.builder.js.map +1 -1
  434. package/build/errors/directoryNotSkill.builder.js.map +1 -1
  435. package/build/errors/dockerNotStarted.builder.js.map +1 -1
  436. package/build/errors/executingCommandFailed.builder.js.map +1 -1
  437. package/build/errors/failedToImport.builder.js.map +1 -1
  438. package/build/errors/featureNotInstalled.builder.js.map +1 -1
  439. package/build/errors/fileExists.builder.js.map +1 -1
  440. package/build/errors/generic.builder.js.map +1 -1
  441. package/build/errors/invalidCommand.builder.js.map +1 -1
  442. package/build/errors/invalidEventContract.builder.js.map +1 -1
  443. package/build/errors/invalidFeatureCode.builder.js.map +1 -1
  444. package/build/errors/invalidTestDirectory.builder.js.map +1 -1
  445. package/build/errors/lintFailed.builder.js.map +1 -1
  446. package/build/errors/mercuryResponseError.builder.js.map +1 -1
  447. package/build/errors/missingDependencies.builder.js.map +1 -1
  448. package/build/errors/noOrganizationsFound.builder.js.map +1 -1
  449. package/build/errors/noSkillsRegistered.builder.js.map +1 -1
  450. package/build/errors/notImplemented.builder.js.map +1 -1
  451. package/build/errors/notLoggedIn.builder.js.map +1 -1
  452. package/build/errors/schemaExists.builder.js.map +1 -1
  453. package/build/errors/schemaFailedToImport.builder.js.map +1 -1
  454. package/build/errors/schemaTemplateItemBuildingFailed.builder.js.map +1 -1
  455. package/build/errors/skillNotFound.builder.js.map +1 -1
  456. package/build/errors/skillNotRegistered.builder.js.map +1 -1
  457. package/build/errors/skillViewExists.builder.js.map +1 -1
  458. package/build/errors/storeExists.builder.js.map +1 -1
  459. package/build/errors/testFailed.builder.js.map +1 -1
  460. package/build/errors/themeExists.builder.js.map +1 -1
  461. package/build/errors/transportAlreadyExists.builder.js.map +1 -1
  462. package/build/errors/vscodeNotInstalled.builder.js.map +1 -1
  463. package/build/features/AbstractAction.js +65 -71
  464. package/build/features/AbstractAction.js.map +1 -1
  465. package/build/features/AbstractFeature.js +54 -62
  466. package/build/features/AbstractFeature.js.map +1 -1
  467. package/build/features/ActionExecuter.js +206 -210
  468. package/build/features/ActionExecuter.js.map +1 -1
  469. package/build/features/ActionFactory.js.map +1 -1
  470. package/build/features/ActionQuestionAsker.js +304 -320
  471. package/build/features/ActionQuestionAsker.js.map +1 -1
  472. package/build/features/FeatureCommandAttacher.js +45 -49
  473. package/build/features/FeatureCommandAttacher.js.map +1 -1
  474. package/build/features/FeatureInstaller.js +353 -375
  475. package/build/features/FeatureInstaller.js.map +1 -1
  476. package/build/features/FeatureInstallerFactory.js.map +1 -1
  477. package/build/features/OverrideActionDecorator.js +13 -15
  478. package/build/features/OverrideActionDecorator.js.map +1 -1
  479. package/build/features/cache/CacheFeature.js +6 -8
  480. package/build/features/cache/CacheFeature.js.map +1 -1
  481. package/build/features/cache/actions/DisableAction.js +42 -44
  482. package/build/features/cache/actions/DisableAction.js.map +1 -1
  483. package/build/features/cache/actions/EnableAction.js +37 -39
  484. package/build/features/cache/actions/EnableAction.js.map +1 -1
  485. package/build/features/cache/constants.js.map +1 -1
  486. package/build/features/conversation/ConversationFeature.js +40 -46
  487. package/build/features/conversation/ConversationFeature.js.map +1 -1
  488. package/build/features/conversation/actions/CreateAction.js +16 -18
  489. package/build/features/conversation/actions/CreateAction.js.map +1 -1
  490. package/build/features/conversation/actions/TestAction.js +96 -102
  491. package/build/features/conversation/actions/TestAction.js.map +1 -1
  492. package/build/features/conversation/stores/ConversationStore.js +19 -21
  493. package/build/features/conversation/stores/ConversationStore.js.map +1 -1
  494. package/build/features/conversation/writers/ConversationWriter.js +22 -24
  495. package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
  496. package/build/features/dependencies/DependencyFeature.js +6 -8
  497. package/build/features/dependencies/DependencyFeature.js.map +1 -1
  498. package/build/features/dependencies/actions/AddAction.js +64 -66
  499. package/build/features/dependencies/actions/AddAction.js.map +1 -1
  500. package/build/features/dependencies/actions/ManageAction.js +63 -65
  501. package/build/features/dependencies/actions/ManageAction.js.map +1 -1
  502. package/build/features/deploy/DeployFeature.js +12 -14
  503. package/build/features/deploy/DeployFeature.js.map +1 -1
  504. package/build/features/deploy/actions/HerokuAction.js +389 -409
  505. package/build/features/deploy/actions/HerokuAction.js.map +1 -1
  506. package/build/features/deploy/writers/DeployWriter.js.map +1 -1
  507. package/build/features/error/ErrorFeature.js +84 -92
  508. package/build/features/error/ErrorFeature.js.map +1 -1
  509. package/build/features/error/ParentTestFinder.js +22 -24
  510. package/build/features/error/ParentTestFinder.js.map +1 -1
  511. package/build/features/error/actions/CreateAction.js +24 -26
  512. package/build/features/error/actions/CreateAction.js.map +1 -1
  513. package/build/features/error/actions/SyncAction.js +85 -91
  514. package/build/features/error/actions/SyncAction.js.map +1 -1
  515. package/build/features/error/writers/ErrorWriter.js +130 -140
  516. package/build/features/error/writers/ErrorWriter.js.map +1 -1
  517. package/build/features/event/EventFeature.js +153 -167
  518. package/build/features/event/EventFeature.js.map +1 -1
  519. package/build/features/event/actions/CreateAction.js +59 -61
  520. package/build/features/event/actions/CreateAction.js.map +1 -1
  521. package/build/features/event/actions/ListenAction.js +205 -219
  522. package/build/features/event/actions/ListenAction.js.map +1 -1
  523. package/build/features/event/actions/SetRemoteAction.js +11 -13
  524. package/build/features/event/actions/SetRemoteAction.js.map +1 -1
  525. package/build/features/event/actions/SyncAction.js +25 -27
  526. package/build/features/event/actions/SyncAction.js.map +1 -1
  527. package/build/features/event/actions/SyncListenersAction.js +23 -25
  528. package/build/features/event/actions/SyncListenersAction.js.map +1 -1
  529. package/build/features/event/builders/EventContractBuilder.js +136 -144
  530. package/build/features/event/builders/EventContractBuilder.js.map +1 -1
  531. package/build/features/event/builders/ListenerTemplateItemBuilder.js +1 -1
  532. package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
  533. package/build/features/event/services/EventSettingsService.js.map +1 -1
  534. package/build/features/event/services/RemoteService.js.map +1 -1
  535. package/build/features/event/stores/EventStore.js +246 -258
  536. package/build/features/event/stores/EventStore.js.map +1 -1
  537. package/build/features/event/stores/ListenerStore.js +26 -28
  538. package/build/features/event/stores/ListenerStore.js.map +1 -1
  539. package/build/features/event/writers/EventWriter.js +171 -183
  540. package/build/features/event/writers/EventWriter.js.map +1 -1
  541. package/build/features/eventContract/EventContractFeature.js +6 -8
  542. package/build/features/eventContract/EventContractFeature.js.map +1 -1
  543. package/build/features/eventContract/actions/PullAction.js +58 -62
  544. package/build/features/eventContract/actions/PullAction.js.map +1 -1
  545. package/build/features/feature.utilities.js.map +1 -1
  546. package/build/features/log/LogFeature.js.map +1 -1
  547. package/build/features/log/actions/CreateTransportAction.js +16 -18
  548. package/build/features/log/actions/CreateTransportAction.js.map +1 -1
  549. package/build/features/log/writers/LogWriter.js +23 -25
  550. package/build/features/log/writers/LogWriter.js.map +1 -1
  551. package/build/features/node/NodeFeature.js +110 -122
  552. package/build/features/node/NodeFeature.js.map +1 -1
  553. package/build/features/node/actions/CreateAction.js +9 -11
  554. package/build/features/node/actions/CreateAction.js.map +1 -1
  555. package/build/features/node/actions/UpdateDependenciesAction.js +140 -113
  556. package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
  557. package/build/features/node/actions/UpgradeAction.js +70 -76
  558. package/build/features/node/actions/UpgradeAction.js.map +1 -1
  559. package/build/features/node/writers/NodeWriter.js +29 -31
  560. package/build/features/node/writers/NodeWriter.js.map +1 -1
  561. package/build/features/onboard/OnboardFeature.js +77 -87
  562. package/build/features/onboard/OnboardFeature.js.map +1 -1
  563. package/build/features/onboard/ScriptLoader.js +31 -33
  564. package/build/features/onboard/ScriptLoader.js.map +1 -1
  565. package/build/features/onboard/ScriptPlayer.js +80 -86
  566. package/build/features/onboard/ScriptPlayer.js.map +1 -1
  567. package/build/features/onboard/actions/OnboardAction.js +36 -38
  568. package/build/features/onboard/actions/OnboardAction.js.map +1 -1
  569. package/build/features/onboard/scripts/onboarding.first.script.js +68 -80
  570. package/build/features/onboard/scripts/onboarding.first.script.js.map +1 -1
  571. package/build/features/onboard/scripts/onboarding.immersive.script.js +24 -28
  572. package/build/features/onboard/scripts/onboarding.immersive.script.js.map +1 -1
  573. package/build/features/onboard/scripts/onboarding.returning.script.js +42 -44
  574. package/build/features/onboard/scripts/onboarding.returning.script.js.map +1 -1
  575. package/build/features/onboard/scripts/onboarding.short.script.js +38 -48
  576. package/build/features/onboard/scripts/onboarding.short.script.js.map +1 -1
  577. package/build/features/onboard/scripts/todo/todo.create.skill.script.js +9 -11
  578. package/build/features/onboard/scripts/todo/todo.create.skill.script.js.map +1 -1
  579. package/build/features/onboard/scripts/todo/todo.test.script.js +7 -9
  580. package/build/features/onboard/scripts/todo/todo.test.script.js.map +1 -1
  581. package/build/features/onboard/scripts/wrongCommand.script.js +40 -42
  582. package/build/features/onboard/scripts/wrongCommand.script.js.map +1 -1
  583. package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
  584. package/build/features/organization/OrganizationFeature.js.map +1 -1
  585. package/build/features/organization/actions/CreateAction.js +18 -20
  586. package/build/features/organization/actions/CreateAction.js.map +1 -1
  587. package/build/features/organization/actions/InstallAction.js +81 -83
  588. package/build/features/organization/actions/InstallAction.js.map +1 -1
  589. package/build/features/organization/stores/OrganizationStore.js +101 -111
  590. package/build/features/organization/stores/OrganizationStore.js.map +1 -1
  591. package/build/features/permission/PermissionFeature.js +73 -79
  592. package/build/features/permission/PermissionFeature.js.map +1 -1
  593. package/build/features/permission/actions/CreateAction.js +23 -25
  594. package/build/features/permission/actions/CreateAction.js.map +1 -1
  595. package/build/features/permission/actions/SyncAction.js +50 -54
  596. package/build/features/permission/actions/SyncAction.js.map +1 -1
  597. package/build/features/permission/stores/PermissionStore.js +100 -104
  598. package/build/features/permission/stores/PermissionStore.js.map +1 -1
  599. package/build/features/permission/writers/PermissionWriter.js +57 -63
  600. package/build/features/permission/writers/PermissionWriter.js.map +1 -1
  601. package/build/features/person/PersonFeature.js.map +1 -1
  602. package/build/features/person/actions/LoginAction.js +69 -71
  603. package/build/features/person/actions/LoginAction.js.map +1 -1
  604. package/build/features/person/actions/LogoutAction.js +21 -23
  605. package/build/features/person/actions/LogoutAction.js.map +1 -1
  606. package/build/features/person/actions/WhoamiAction.js +24 -26
  607. package/build/features/person/actions/WhoamiAction.js.map +1 -1
  608. package/build/features/polish/PolishFeature.js.map +1 -1
  609. package/build/features/polish/actions/SetupAction.js +23 -25
  610. package/build/features/polish/actions/SetupAction.js.map +1 -1
  611. package/build/features/polish/writers/PolishWriter.js +16 -18
  612. package/build/features/polish/writers/PolishWriter.js.map +1 -1
  613. package/build/features/sandbox/SandboxFeature.js +20 -22
  614. package/build/features/sandbox/SandboxFeature.js.map +1 -1
  615. package/build/features/sandbox/actions/SetupAction.js +42 -44
  616. package/build/features/sandbox/actions/SetupAction.js.map +1 -1
  617. package/build/features/sandbox/writers/SandboxWriter.js +9 -11
  618. package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
  619. package/build/features/schema/SchemaFeature.js +82 -90
  620. package/build/features/schema/SchemaFeature.js.map +1 -1
  621. package/build/features/schema/ValueTypeBuilder.js +26 -28
  622. package/build/features/schema/ValueTypeBuilder.js.map +1 -1
  623. package/build/features/schema/actions/CreateAction.js +48 -50
  624. package/build/features/schema/actions/CreateAction.js.map +1 -1
  625. package/build/features/schema/actions/SyncAction.js +260 -270
  626. package/build/features/schema/actions/SyncAction.js.map +1 -1
  627. package/build/features/schema/actions/SyncFieldsAction.js +42 -44
  628. package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
  629. package/build/features/schema/services/SchemaService.js +24 -26
  630. package/build/features/schema/services/SchemaService.js.map +1 -1
  631. package/build/features/schema/stores/SchemaStore.js +205 -219
  632. package/build/features/schema/stores/SchemaStore.js.map +1 -1
  633. package/build/features/schema/utilities/schema.utility.js.map +1 -1
  634. package/build/features/schema/utilities/schemaDisk.utility.js +15 -17
  635. package/build/features/schema/utilities/schemaDisk.utility.js.map +1 -1
  636. package/build/features/schema/utilities/schemaGenerator.utility.js +40 -42
  637. package/build/features/schema/utilities/schemaGenerator.utility.js.map +1 -1
  638. package/build/features/schema/writers/SchemaWriter.js +173 -185
  639. package/build/features/schema/writers/SchemaWriter.js.map +1 -1
  640. package/build/features/skill/SkillFeature.js +99 -112
  641. package/build/features/skill/SkillFeature.js.map +1 -1
  642. package/build/features/skill/actions/BootAction.js +92 -96
  643. package/build/features/skill/actions/BootAction.js.map +1 -1
  644. package/build/features/skill/actions/CreateAction.js +9 -11
  645. package/build/features/skill/actions/CreateAction.js.map +1 -1
  646. package/build/features/skill/actions/DashboardAction.js +8 -10
  647. package/build/features/skill/actions/DashboardAction.js.map +1 -1
  648. package/build/features/skill/actions/LoginAction.js +122 -124
  649. package/build/features/skill/actions/LoginAction.js.map +1 -1
  650. package/build/features/skill/actions/RebuildAction.js +33 -35
  651. package/build/features/skill/actions/RebuildAction.js.map +1 -1
  652. package/build/features/skill/actions/RegisterAction.js +38 -40
  653. package/build/features/skill/actions/RegisterAction.js.map +1 -1
  654. package/build/features/skill/stores/SkillStore.d.ts +2 -2
  655. package/build/features/skill/stores/SkillStore.js +198 -216
  656. package/build/features/skill/stores/SkillStore.js.map +1 -1
  657. package/build/features/skill/updaters/Updater.js +38 -40
  658. package/build/features/skill/updaters/Updater.js.map +1 -1
  659. package/build/features/skill/writers/SkillWriter.js +15 -17
  660. package/build/features/skill/writers/SkillWriter.js.map +1 -1
  661. package/build/features/store/StoreFeature.js +50 -56
  662. package/build/features/store/StoreFeature.js.map +1 -1
  663. package/build/features/store/actions/CreateAction.js +29 -31
  664. package/build/features/store/actions/CreateAction.js.map +1 -1
  665. package/build/features/store/actions/SyncAction.js +35 -37
  666. package/build/features/store/actions/SyncAction.js.map +1 -1
  667. package/build/features/store/stores/StoreStore.js +39 -41
  668. package/build/features/store/stores/StoreStore.js.map +1 -1
  669. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js +1 -1
  670. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
  671. package/build/features/store/writers/StoreWriter.js +65 -73
  672. package/build/features/store/writers/StoreWriter.js.map +1 -1
  673. package/build/features/test/TestFeature.js +98 -102
  674. package/build/features/test/TestFeature.js.map +1 -1
  675. package/build/features/test/TestLogItemGenerator.js.map +1 -1
  676. package/build/features/test/TestReporter.d.ts +19 -19
  677. package/build/features/test/TestReporter.js +74 -82
  678. package/build/features/test/TestReporter.js.map +1 -1
  679. package/build/features/test/TestRunner.js +82 -88
  680. package/build/features/test/TestRunner.js.map +1 -1
  681. package/build/features/test/actions/CreateAction.js +145 -153
  682. package/build/features/test/actions/CreateAction.js.map +1 -1
  683. package/build/features/test/actions/SetupAction.js +37 -39
  684. package/build/features/test/actions/SetupAction.js.map +1 -1
  685. package/build/features/test/actions/TestAction.js +203 -213
  686. package/build/features/test/actions/TestAction.js.map +1 -1
  687. package/build/features/test/test.types.d.ts +1 -1
  688. package/build/features/test/test.types.js.map +1 -1
  689. package/build/features/test/writers/TestWriter.js +17 -19
  690. package/build/features/test/writers/TestWriter.js.map +1 -1
  691. package/build/features/universalDevDependencies.js.map +1 -1
  692. package/build/features/universalFileDescriptions.js.map +1 -1
  693. package/build/features/universalScripts.js.map +1 -1
  694. package/build/features/validateAndNormalize.utility.js.map +1 -1
  695. package/build/features/view/ViewFeature.js +52 -58
  696. package/build/features/view/ViewFeature.js.map +1 -1
  697. package/build/features/view/actions/CreateAction.js +64 -66
  698. package/build/features/view/actions/CreateAction.js.map +1 -1
  699. package/build/features/view/actions/CreateThemeAction.js +35 -37
  700. package/build/features/view/actions/CreateThemeAction.js.map +1 -1
  701. package/build/features/view/actions/SyncAction.js +61 -63
  702. package/build/features/view/actions/SyncAction.js.map +1 -1
  703. package/build/features/view/actions/WatchAction.d.ts +1 -0
  704. package/build/features/view/actions/WatchAction.js +26 -27
  705. package/build/features/view/actions/WatchAction.js.map +1 -1
  706. package/build/features/view/stores/ViewStore.js +35 -37
  707. package/build/features/view/stores/ViewStore.js.map +1 -1
  708. package/build/features/view/writers/ViewWriter.js +47 -51
  709. package/build/features/view/writers/ViewWriter.js.map +1 -1
  710. package/build/features/vscode/VsCodeFeature.js +18 -20
  711. package/build/features/vscode/VsCodeFeature.js.map +1 -1
  712. package/build/features/vscode/actions/SetupAction.js +173 -183
  713. package/build/features/vscode/actions/SetupAction.js.map +1 -1
  714. package/build/features/vscode/services/VsCodeService.js +63 -69
  715. package/build/features/vscode/services/VsCodeService.js.map +1 -1
  716. package/build/features/vscode/writers/VsCodeWriter.js +12 -14
  717. package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
  718. package/build/features/watch/WatchFeature.js +77 -88
  719. package/build/features/watch/WatchFeature.js.map +1 -1
  720. package/build/index.js +2 -2
  721. package/build/index.js.map +1 -1
  722. package/build/interfaces/SpyInterface.d.ts +1 -0
  723. package/build/interfaces/SpyInterface.js +139 -148
  724. package/build/interfaces/SpyInterface.js.map +1 -1
  725. package/build/interfaces/TerminalInterface.d.ts +1 -0
  726. package/build/interfaces/TerminalInterface.js +196 -207
  727. package/build/interfaces/TerminalInterface.js.map +1 -1
  728. package/build/schemas/v2020_07_22/actionResponse.builder.js.map +1 -1
  729. package/build/schemas/v2020_07_22/bootSkillOptions.builder.js.map +1 -1
  730. package/build/schemas/v2020_07_22/createConversationTopicOptions.builder.js.map +1 -1
  731. package/build/schemas/v2020_07_22/createErrorOptions.builder.js.map +1 -1
  732. package/build/schemas/v2020_07_22/createOrganizationOptions.builder.js.map +1 -1
  733. package/build/schemas/v2020_07_22/createSchemaOptions.builder.js.map +1 -1
  734. package/build/schemas/v2020_07_22/createTestOptions.builder.js.map +1 -1
  735. package/build/schemas/v2020_07_22/generatedFile.builder.js.map +1 -1
  736. package/build/schemas/v2020_07_22/installSkillAtOrganizationOptions.builder.js.map +1 -1
  737. package/build/schemas/v2020_07_22/listenEventOptions.builder.js.map +1 -1
  738. package/build/schemas/v2020_07_22/namedTemplateItem.builder.js.map +1 -1
  739. package/build/schemas/v2020_07_22/nodeFeatureOptions.builder.js.map +1 -1
  740. package/build/schemas/v2020_07_22/onboardOptions.builder.js.map +1 -1
  741. package/build/schemas/v2020_07_22/onboarding.builder.js.map +1 -1
  742. package/build/schemas/v2020_07_22/personWithToken.builder.js.map +1 -1
  743. package/build/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.js.map +1 -1
  744. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js.map +1 -1
  745. package/build/schemas/v2020_07_22/setupVscodeOptions.builder.js.map +1 -1
  746. package/build/schemas/v2020_07_22/skillFeature.builder.js.map +1 -1
  747. package/build/schemas/v2020_07_22/syncErrorOptions.builder.js.map +1 -1
  748. package/build/schemas/v2020_07_22/syncEventOptions.builder.js.map +1 -1
  749. package/build/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.js.map +1 -1
  750. package/build/schemas/v2020_07_22/syncSchemasOptions.builder.js.map +1 -1
  751. package/build/schemas/v2020_07_22/testOptions.builder.js.map +1 -1
  752. package/build/schemas/v2020_07_22/upgradeSkillOptions.builder.js.map +1 -1
  753. package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js.map +1 -1
  754. package/build/services/BuildService.js +16 -18
  755. package/build/services/BuildService.js.map +1 -1
  756. package/build/services/CommandService.js +107 -109
  757. package/build/services/CommandService.js.map +1 -1
  758. package/build/services/DependencyService.js.map +1 -1
  759. package/build/services/GameService.js +49 -51
  760. package/build/services/GameService.js.map +1 -1
  761. package/build/services/ImportService.js +186 -194
  762. package/build/services/ImportService.js.map +1 -1
  763. package/build/services/LintService.js +81 -83
  764. package/build/services/LintService.js.map +1 -1
  765. package/build/services/PkgService.js +85 -89
  766. package/build/services/PkgService.js.map +1 -1
  767. package/build/services/ServiceFactory.js.map +1 -1
  768. package/build/services/TypeCheckerService.js +7 -9
  769. package/build/services/TypeCheckerService.js.map +1 -1
  770. package/build/stores/AbstractLocalStore.js.map +1 -1
  771. package/build/stores/AbstractStore.js +6 -8
  772. package/build/stores/AbstractStore.js.map +1 -1
  773. package/build/stores/StoreFactory.js.map +1 -1
  774. package/build/templateItemBuilders/EventTemplateItemBuilder.js +1 -1
  775. package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
  776. package/build/templateItemBuilders/FieldTemplateItemBuilder.js +1 -1
  777. package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
  778. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js +1 -1
  779. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
  780. package/build/tests/AbstractCliTest.d.ts +2 -3
  781. package/build/tests/AbstractCliTest.js +236 -266
  782. package/build/tests/AbstractCliTest.js.map +1 -1
  783. package/build/tests/AbstractErrorTest.d.ts +1 -1
  784. package/build/tests/AbstractErrorTest.js +19 -21
  785. package/build/tests/AbstractErrorTest.js.map +1 -1
  786. package/build/tests/AbstractEventTest.d.ts +3 -3
  787. package/build/tests/AbstractEventTest.js +89 -97
  788. package/build/tests/AbstractEventTest.js.map +1 -1
  789. package/build/tests/AbstractSchemaTest.d.ts +3 -3
  790. package/build/tests/AbstractSchemaTest.js +92 -98
  791. package/build/tests/AbstractSchemaTest.js.map +1 -1
  792. package/build/tests/AbstractSkillTest.d.ts +1 -1
  793. package/build/tests/AbstractSkillTest.js +40 -46
  794. package/build/tests/AbstractSkillTest.js.map +1 -1
  795. package/build/tests/AbstractTestTest.d.ts +1 -1
  796. package/build/tests/AbstractTestTest.js +14 -16
  797. package/build/tests/AbstractTestTest.js.map +1 -1
  798. package/build/tests/CommandFaker.js.map +1 -1
  799. package/build/tests/JestJsonParser.js +5 -2
  800. package/build/tests/JestJsonParser.js.map +1 -1
  801. package/build/tests/MockProgramFactory.js +11 -15
  802. package/build/tests/MockProgramFactory.js.map +1 -1
  803. package/build/tests/buildTestCache.js +223 -243
  804. package/build/tests/buildTestCache.js.map +1 -1
  805. package/build/tests/cleanTestCache.js.map +1 -1
  806. package/build/tests/cleanTestData.js +70 -72
  807. package/build/tests/cleanTestData.js.map +1 -1
  808. package/build/tests/constants.js.map +1 -1
  809. package/build/tests/fixtures/FeatureFixture.d.ts +15 -16
  810. package/build/tests/fixtures/FeatureFixture.js +142 -154
  811. package/build/tests/fixtures/FeatureFixture.js.map +1 -1
  812. package/build/tests/fixtures/MercuryFixture.js +9 -11
  813. package/build/tests/fixtures/MercuryFixture.js.map +1 -1
  814. package/build/tests/fixtures/OrganizationFixture.js +62 -68
  815. package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
  816. package/build/tests/fixtures/PersonFixture.js +69 -73
  817. package/build/tests/fixtures/PersonFixture.js.map +1 -1
  818. package/build/tests/fixtures/SkillFixture.js +123 -137
  819. package/build/tests/fixtures/SkillFixture.js.map +1 -1
  820. package/build/tests/fixtures/ViewFixture.js +13 -15
  821. package/build/tests/fixtures/ViewFixture.js.map +1 -1
  822. package/build/tests/utilities/test.utility.js.map +1 -1
  823. package/build/tests/utilities/uiAssert.utility.js +31 -35
  824. package/build/tests/utilities/uiAssert.utility.js.map +1 -1
  825. package/build/types/cli.types.d.ts +26 -0
  826. package/build/types/cli.types.js.map +1 -1
  827. package/build/types/graphicsInterface.types.js.map +1 -1
  828. package/build/updaters/ScriptUpdater.js +78 -80
  829. package/build/updaters/ScriptUpdater.js.map +1 -1
  830. package/build/utilities/action.utility.js.map +1 -1
  831. package/build/utilities/apiClient.utility.js.map +1 -1
  832. package/build/utilities/argParser.utility.js +1 -1
  833. package/build/utilities/argParser.utility.js.map +1 -1
  834. package/build/utilities/commander.utility.js.map +1 -1
  835. package/build/utilities/duration.utility.js.map +1 -1
  836. package/build/utilities/eventContractCleaner.utility.js +1 -1
  837. package/build/utilities/eventContractCleaner.utility.js.map +1 -1
  838. package/build/utilities/form.utility.js.map +1 -1
  839. package/build/utilities/introspection.utility.js +3 -3
  840. package/build/utilities/introspection.utility.js.map +1 -1
  841. package/build/utilities/isCi.js.map +1 -1
  842. package/build/utilities/tsConfig.utility.js.map +1 -1
  843. package/build/utilities/ui.utility.js.map +1 -1
  844. package/build/widgets/Theme.js.map +1 -1
  845. package/build/widgets/WidgetFactory.js.map +1 -1
  846. package/build/widgets/keySelectChoices.js.map +1 -1
  847. package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
  848. package/build/widgets/terminalKit/TkBaseWidget.js +8 -10
  849. package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
  850. package/build/widgets/terminalKit/TkInputWidget.js +16 -20
  851. package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
  852. package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
  853. package/build/widgets/terminalKit/TkLayoutWidget.js +6 -8
  854. package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
  855. package/build/widgets/terminalKit/TkMenuBarWidget.js +1 -1
  856. package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
  857. package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
  858. package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
  859. package/build/widgets/terminalKit/TkTextWidget.js +13 -15
  860. package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
  861. package/build/widgets/terminalKit/TkWindowWidget.js +39 -45
  862. package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
  863. package/build/widgets/terminalKit/termKit.utility.js +1 -1
  864. package/build/widgets/terminalKit/termKit.utility.js.map +1 -1
  865. package/build/widgets/types/button.types.js.map +1 -1
  866. package/build/widgets/types/factory.types.js.map +1 -1
  867. package/build/widgets/types/input.types.js.map +1 -1
  868. package/build/widgets/types/menuBar.types.js.map +1 -1
  869. package/build/widgets/types/popup.types.js.map +1 -1
  870. package/build/widgets/types/text.types.js.map +1 -1
  871. package/build/widgets/types/window.types.js.map +1 -1
  872. package/build/widgets/widget.utilities.js.map +1 -1
  873. package/build/writers/AbstractWriter.js +160 -166
  874. package/build/writers/AbstractWriter.js.map +1 -1
  875. package/build/writers/WriterFactory.js.map +1 -1
  876. package/junit.xml +7 -0
  877. package/node_modules/@typescript-eslint/parser/package.json +5 -5
  878. package/node_modules/@typescript-eslint/scope-manager/dist/ScopeManager.js +1 -1
  879. package/node_modules/@typescript-eslint/scope-manager/dist/ScopeManager.js.map +1 -1
  880. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js +1 -1
  881. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js.map +1 -1
  882. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.d.ts.map +1 -1
  883. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.js +1 -3
  884. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.js.map +1 -1
  885. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js +2 -2
  886. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js.map +1 -1
  887. package/node_modules/@typescript-eslint/scope-manager/package.json +5 -5
  888. package/node_modules/@typescript-eslint/types/_ts3.4/dist/generated/ast-spec.d.ts +62 -7
  889. package/node_modules/@typescript-eslint/types/_ts3.4/dist/parser-options.d.ts +6 -2
  890. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts +62 -7
  891. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts.map +1 -1
  892. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js.map +1 -1
  893. package/node_modules/@typescript-eslint/types/dist/parser-options.d.ts +6 -2
  894. package/node_modules/@typescript-eslint/types/dist/parser-options.d.ts.map +1 -1
  895. package/node_modules/@typescript-eslint/types/package.json +4 -4
  896. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/clear-caches.d.ts +10 -0
  897. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/describeFilePath.d.ts +2 -0
  898. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/shared.d.ts +7 -1
  899. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/index.d.ts +2 -2
  900. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parseSettings/ExpiringCache.d.ts +17 -0
  901. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parseSettings/createParseSettings.d.ts +1 -0
  902. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parseSettings/getProjectConfigFiles.d.ts +12 -0
  903. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parseSettings/index.d.ts +6 -1
  904. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parseSettings/resolveProjectList.d.ts +19 -0
  905. package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/parser-options.d.ts +22 -3
  906. package/node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.d.ts +10 -0
  907. package/node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.d.ts.map +1 -0
  908. package/node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.js +24 -0
  909. package/node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.js.map +1 -0
  910. package/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js +1 -1
  911. package/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map +1 -1
  912. package/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +1 -1
  913. package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +38 -12
  914. package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map +1 -1
  915. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map +1 -1
  916. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js +5 -10
  917. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map +1 -1
  918. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.d.ts +2 -0
  919. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.d.ts.map +1 -0
  920. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.js +32 -0
  921. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.js.map +1 -0
  922. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.d.ts.map +1 -1
  923. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js +2 -15
  924. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js.map +1 -1
  925. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts +7 -1
  926. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map +1 -1
  927. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js +15 -1
  928. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map +1 -1
  929. package/node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.js +1 -1
  930. package/node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.js.map +1 -1
  931. package/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts +2 -2
  932. package/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts.map +1 -1
  933. package/node_modules/@typescript-eslint/typescript-estree/dist/index.js +2 -4
  934. package/node_modules/@typescript-eslint/typescript-estree/dist/index.js.map +1 -1
  935. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.d.ts +17 -0
  936. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.d.ts.map +1 -0
  937. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.js +62 -0
  938. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.js.map +1 -0
  939. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.d.ts +1 -0
  940. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.d.ts.map +1 -1
  941. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js +22 -48
  942. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js.map +1 -1
  943. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/getProjectConfigFiles.d.ts +12 -0
  944. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/getProjectConfigFiles.d.ts.map +1 -0
  945. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/getProjectConfigFiles.js +70 -0
  946. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/getProjectConfigFiles.js.map +1 -0
  947. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/index.d.ts +6 -1
  948. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/index.d.ts.map +1 -1
  949. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/resolveProjectList.d.ts +19 -0
  950. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/resolveProjectList.d.ts.map +1 -0
  951. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/resolveProjectList.js +103 -0
  952. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/resolveProjectList.js.map +1 -0
  953. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js +1 -1
  954. package/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts +22 -3
  955. package/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map +1 -1
  956. package/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js +1 -1
  957. package/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map +1 -1
  958. package/node_modules/@typescript-eslint/typescript-estree/package.json +4 -5
  959. package/node_modules/@typescript-eslint/visitor-keys/package.json +3 -3
  960. package/package.json +592 -597
  961. package/src/.DS_Store +0 -0
  962. package/src/__tests__/behavioral/BootingTheCli.test.ts +32 -2
  963. package/src/__tests__/behavioral/CreatingAConversationTopic.test.ts +1 -1
  964. package/src/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.ts +1 -1
  965. package/src/__tests__/behavioral/events/CreatingAnEvent.test.ts +1 -2
  966. package/src/__tests__/behavioral/permissions/SyncingPermissions.test.ts +11 -0
  967. package/src/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.ts +1 -1
  968. package/src/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.ts +1 -1
  969. package/src/__tests__/behavioral/upgrading/UpgradingASkill.test.ts +1 -2
  970. package/src/__tests__/implementation/TestRunner.test.ts +1 -1
  971. package/src/boot.ts +92 -0
  972. package/src/{cli.ts → cli/Cli.ts} +48 -150
  973. package/src/features/AbstractFeature.ts +1 -1
  974. package/src/features/FeatureInstaller.ts +3 -3
  975. package/src/features/error/ParentTestFinder.ts +1 -1
  976. package/src/features/event/builders/EventContractBuilder.ts +1 -1
  977. package/src/features/event/stores/EventStore.ts +4 -2
  978. package/src/features/event/stores/ListenerStore.ts +1 -1
  979. package/src/features/onboard/ScriptLoader.ts +1 -1
  980. package/src/features/permission/PermissionFeature.ts +3 -1
  981. package/src/features/permission/stores/PermissionStore.ts +1 -1
  982. package/src/features/schema/stores/SchemaStore.ts +1 -1
  983. package/src/features/schema/utilities/schemaGenerator.utility.ts +1 -1
  984. package/src/features/skill/SkillFeature.ts +1 -1
  985. package/src/features/store/stores/StoreStore.ts +1 -1
  986. package/src/features/test/TestReporter.ts +25 -25
  987. package/src/features/test/test.types.ts +8 -1
  988. package/src/features/view/actions/SyncAction.ts +1 -1
  989. package/src/features/view/actions/WatchAction.ts +8 -3
  990. package/src/index.ts +1 -1
  991. package/src/interfaces/SpyInterface.ts +2 -0
  992. package/src/interfaces/TerminalInterface.ts +5 -1
  993. package/src/tests/AbstractCliTest.ts +2 -3
  994. package/src/tests/AbstractSchemaTest.ts +1 -1
  995. package/src/tests/AbstractSkillTest.ts +1 -1
  996. package/src/tests/JestJsonParser.ts +4 -1
  997. package/src/tests/fixtures/FeatureFixture.ts +24 -20
  998. package/src/tests/fixtures/MercuryFixture.ts +1 -1
  999. package/src/types/cli.types.ts +30 -0
  1000. package/yarn-error.log +12174 -0
  1001. package/LICENSE +0 -21
  1002. package/build/__tests__/behavioral/events/EverythingInstalledInstaller.d.ts +0 -17
  1003. package/build/__tests__/behavioral/events/EverythingInstalledInstaller.js +0 -137
  1004. package/build/__tests__/behavioral/events/EverythingInstalledInstaller.js.map +0 -1
  1005. package/build/cli.js +0 -690
  1006. package/build/cli.js.map +0 -1
  1007. package/node_modules/@typescript-eslint/typescript-estree/node_modules/globby/gitignore.js +0 -120
  1008. package/node_modules/@typescript-eslint/typescript-estree/node_modules/globby/index.d.ts +0 -186
  1009. package/node_modules/@typescript-eslint/typescript-estree/node_modules/globby/index.js +0 -181
  1010. package/node_modules/@typescript-eslint/typescript-estree/node_modules/globby/license +0 -9
  1011. package/node_modules/@typescript-eslint/typescript-estree/node_modules/globby/package.json +0 -82
  1012. package/node_modules/@typescript-eslint/typescript-estree/node_modules/globby/readme.md +0 -170
  1013. package/node_modules/@typescript-eslint/typescript-estree/node_modules/globby/stream-utils.js +0 -46
  1014. package/src/__tests__/behavioral/events/EverythingInstalledInstaller.ts +0 -46
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorWriter.js","names":["ErrorWriter","destinationDir","errors","results","length","Error","resolvedDestination","diskUtil","resolvePath","doesFileExist","ui","startLoading","errorContents","templates","error","filter","isNested","writeFileIfChangedMixinResults","dropInNewErrorCases","updates","push","description","destinationFile","dropInErrorCaseIfMissing","dropInResults","errorBlock","renderClassDefinition","currentErrorContents","readFile","blockMatches","search","doesErrorCaseExist","newErrorContents","substring","code","currentContents","RegExp","errorTemplateItems","contents","errorOptionsTypes","options","destination","lint","cwd","resolveHashSprucePath","pluginContents","errorPlugin","AbstractWriter"],"sources":["../../../../src/features/error/writers/ErrorWriter.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ErrorTemplateItem } from '@sprucelabs/spruce-templates'\nimport { GeneratedFile } from '../../../types/cli.types'\nimport AbstractWriter, { WriteResults } from '../../../writers/AbstractWriter'\n\nexport default class ErrorWriter extends AbstractWriter {\n\tpublic async writeOrAppendErrorsToClass(\n\t\tdestinationDir: string,\n\t\terrors: ErrorTemplateItem[]\n\t): Promise<WriteResults> {\n\t\tlet results: WriteResults = []\n\n\t\tif (errors.length === 0) {\n\t\t\t// todo move to proper error\n\t\t\tthrow new Error('Need at least one error')\n\t\t}\n\n\t\tconst resolvedDestination = diskUtil.resolvePath(\n\t\t\tdestinationDir,\n\t\t\t`SpruceError.ts`\n\t\t)\n\n\t\tif (!diskUtil.doesFileExist(resolvedDestination)) {\n\t\t\tthis.ui.startLoading('Creating Error class')\n\n\t\t\tconst errorContents = this.templates.error({\n\t\t\t\terrors: errors.filter((error) => !error.isNested),\n\t\t\t})\n\t\t\tresults = await this.writeFileIfChangedMixinResults(\n\t\t\t\tresolvedDestination,\n\t\t\t\terrorContents,\n\t\t\t\t'A new subclass of SpruceBaseError where you can control your error messaging.',\n\t\t\t\tresults\n\t\t\t)\n\t\t} else {\n\t\t\tthis.ui.startLoading('Updating Error class')\n\n\t\t\tconst updates = await this.dropInNewErrorCases(\n\t\t\t\terrors,\n\t\t\t\tresolvedDestination\n\t\t\t)\n\t\t\tif (updates.length > 0) {\n\t\t\t\tresults.push({\n\t\t\t\t\t...updates[0],\n\t\t\t\t\tdescription: `${updates.length} new error cases were dropped in.`,\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async dropInNewErrorCases(\n\t\terrors: ErrorTemplateItem[],\n\t\tdestinationFile: string\n\t) {\n\t\tlet results: GeneratedFile[] = []\n\n\t\tfor (const error of errors) {\n\t\t\tif (!error.isNested) {\n\t\t\t\tconst dropInResults = await this.dropInErrorCaseIfMissing(\n\t\t\t\t\terror,\n\t\t\t\t\tdestinationFile\n\t\t\t\t)\n\t\t\t\tresults.push(...dropInResults)\n\t\t\t}\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async dropInErrorCaseIfMissing(\n\t\terror: ErrorTemplateItem,\n\t\tdestinationFile: string\n\t) {\n\t\tlet results: GeneratedFile[] = []\n\t\tconst errorBlock = this.templates.error({\n\t\t\terrors: [error],\n\t\t\trenderClassDefinition: false,\n\t\t})\n\n\t\t// Try and drop in the block right before \"default:\"\n\t\tconst currentErrorContents = diskUtil.readFile(destinationFile)\n\t\tconst blockMatches = currentErrorContents.search(/default:/g)\n\t\tif (\n\t\t\tblockMatches > -1 &&\n\t\t\t!this.doesErrorCaseExist(currentErrorContents, error)\n\t\t) {\n\t\t\tconst newErrorContents =\n\t\t\t\tcurrentErrorContents.substring(0, blockMatches) +\n\t\t\t\t'\\n' +\n\t\t\t\terrorBlock +\n\t\t\t\t'\\n' +\n\t\t\t\tcurrentErrorContents.substring(blockMatches)\n\n\t\t\tresults = await this.writeFileIfChangedMixinResults(\n\t\t\t\tdestinationFile,\n\t\t\t\tnewErrorContents,\n\t\t\t\t`A new block was added to handle ${error.code}.`,\n\t\t\t\tresults\n\t\t\t)\n\t\t}\n\t\treturn results\n\t}\n\n\tprivate doesErrorCaseExist(\n\t\tcurrentContents: string,\n\t\terror: ErrorTemplateItem\n\t) {\n\t\treturn currentContents.search(new RegExp(`case '${error.code}':`)) > -1\n\t}\n\n\tpublic async writeOptionsTypesFile(\n\t\tdestinationDir: string,\n\t\terrorTemplateItems: ErrorTemplateItem[]\n\t): Promise<WriteResults> {\n\t\tconst contents = this.templates.errorOptionsTypes({\n\t\t\toptions: errorTemplateItems,\n\t\t})\n\n\t\tconst destination = diskUtil.resolvePath(destinationDir, 'options.types.ts')\n\n\t\tthis.ui.startLoading('Updating error options...')\n\n\t\tconst results = this.writeFileIfChangedMixinResults(\n\t\t\tdestination,\n\t\t\tcontents,\n\t\t\t'A union of all possible error codes and their options.'\n\t\t)\n\n\t\tawait this.lint(destination)\n\n\t\treturn results\n\t}\n\n\tpublic async writePlugin(cwd: string) {\n\t\tconst destination = diskUtil.resolveHashSprucePath(\n\t\t\tcwd,\n\t\t\t'features',\n\t\t\t'error.plugin.ts'\n\t\t)\n\n\t\tconst pluginContents = this.templates.errorPlugin()\n\n\t\tconst results = this.writeFileIfChangedMixinResults(\n\t\t\tdestination,\n\t\t\tpluginContents,\n\t\t\t'Supports your skill with Error generation and handling.'\n\t\t)\n\n\t\tawait this.lint(destination)\n\n\t\treturn results\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ErrorWriter.js","names":["_spruceSkillUtils","require","_AbstractWriter2","_interopRequireDefault","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","ErrorWriter","_AbstractWriter","_inherits2","_super","_classCallCheck2","_createClass2","_writeOrAppendErrorsToClass","_asyncToGenerator2","_regenerator","mark","_callee","destinationDir","errors","results","resolvedDestination","errorContents","updates","wrap","_callee$","_context","prev","Error","diskUtil","resolvePath","doesFileExist","ui","startLoading","templates","error","isNested","writeFileIfChangedMixinResults","sent","dropInNewErrorCases","description","concat","abrupt","stop","writeOrAppendErrorsToClass","_x","_x2","_dropInNewErrorCases","_callee2","destinationFile","_iterator","_step","dropInResults","_callee2$","_context2","dropInErrorCaseIfMissing","_toConsumableArray2","t0","finish","_x3","_x4","_dropInErrorCaseIfMissing","_callee3","errorBlock","currentErrorContents","blockMatches","newErrorContents","_callee3$","_context3","renderClassDefinition","readFile","search","doesErrorCaseExist","substring","code","_x5","_x6","currentContents","RegExp","_writeOptionsTypesFile","_callee4","errorTemplateItems","contents","destination","_callee4$","_context4","errorOptionsTypes","options","lint","writeOptionsTypesFile","_x7","_x8","_writePlugin","_callee5","cwd","pluginContents","_callee5$","_context5","resolveHashSprucePath","errorPlugin","writePlugin","_x9","AbstractWriter","exports"],"sources":["../../../../src/features/error/writers/ErrorWriter.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ErrorTemplateItem } from '@sprucelabs/spruce-templates'\nimport { GeneratedFile } from '../../../types/cli.types'\nimport AbstractWriter, { WriteResults } from '../../../writers/AbstractWriter'\n\nexport default class ErrorWriter extends AbstractWriter {\n\tpublic async writeOrAppendErrorsToClass(\n\t\tdestinationDir: string,\n\t\terrors: ErrorTemplateItem[]\n\t): Promise<WriteResults> {\n\t\tlet results: WriteResults = []\n\n\t\tif (errors.length === 0) {\n\t\t\t// todo move to proper error\n\t\t\tthrow new Error('Need at least one error')\n\t\t}\n\n\t\tconst resolvedDestination = diskUtil.resolvePath(\n\t\t\tdestinationDir,\n\t\t\t`SpruceError.ts`\n\t\t)\n\n\t\tif (!diskUtil.doesFileExist(resolvedDestination)) {\n\t\t\tthis.ui.startLoading('Creating Error class')\n\n\t\t\tconst errorContents = this.templates.error({\n\t\t\t\terrors: errors.filter((error) => !error.isNested),\n\t\t\t})\n\t\t\tresults = await this.writeFileIfChangedMixinResults(\n\t\t\t\tresolvedDestination,\n\t\t\t\terrorContents,\n\t\t\t\t'A new subclass of SpruceBaseError where you can control your error messaging.',\n\t\t\t\tresults\n\t\t\t)\n\t\t} else {\n\t\t\tthis.ui.startLoading('Updating Error class')\n\n\t\t\tconst updates = await this.dropInNewErrorCases(\n\t\t\t\terrors,\n\t\t\t\tresolvedDestination\n\t\t\t)\n\t\t\tif (updates.length > 0) {\n\t\t\t\tresults.push({\n\t\t\t\t\t...updates[0],\n\t\t\t\t\tdescription: `${updates.length} new error cases were dropped in.`,\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async dropInNewErrorCases(\n\t\terrors: ErrorTemplateItem[],\n\t\tdestinationFile: string\n\t) {\n\t\tlet results: GeneratedFile[] = []\n\n\t\tfor (const error of errors) {\n\t\t\tif (!error.isNested) {\n\t\t\t\tconst dropInResults = await this.dropInErrorCaseIfMissing(\n\t\t\t\t\terror,\n\t\t\t\t\tdestinationFile\n\t\t\t\t)\n\t\t\t\tresults.push(...dropInResults)\n\t\t\t}\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async dropInErrorCaseIfMissing(\n\t\terror: ErrorTemplateItem,\n\t\tdestinationFile: string\n\t) {\n\t\tlet results: GeneratedFile[] = []\n\t\tconst errorBlock = this.templates.error({\n\t\t\terrors: [error],\n\t\t\trenderClassDefinition: false,\n\t\t})\n\n\t\t// Try and drop in the block right before \"default:\"\n\t\tconst currentErrorContents = diskUtil.readFile(destinationFile)\n\t\tconst blockMatches = currentErrorContents.search(/default:/g)\n\t\tif (\n\t\t\tblockMatches > -1 &&\n\t\t\t!this.doesErrorCaseExist(currentErrorContents, error)\n\t\t) {\n\t\t\tconst newErrorContents =\n\t\t\t\tcurrentErrorContents.substring(0, blockMatches) +\n\t\t\t\t'\\n' +\n\t\t\t\terrorBlock +\n\t\t\t\t'\\n' +\n\t\t\t\tcurrentErrorContents.substring(blockMatches)\n\n\t\t\tresults = await this.writeFileIfChangedMixinResults(\n\t\t\t\tdestinationFile,\n\t\t\t\tnewErrorContents,\n\t\t\t\t`A new block was added to handle ${error.code}.`,\n\t\t\t\tresults\n\t\t\t)\n\t\t}\n\t\treturn results\n\t}\n\n\tprivate doesErrorCaseExist(\n\t\tcurrentContents: string,\n\t\terror: ErrorTemplateItem\n\t) {\n\t\treturn currentContents.search(new RegExp(`case '${error.code}':`)) > -1\n\t}\n\n\tpublic async writeOptionsTypesFile(\n\t\tdestinationDir: string,\n\t\terrorTemplateItems: ErrorTemplateItem[]\n\t): Promise<WriteResults> {\n\t\tconst contents = this.templates.errorOptionsTypes({\n\t\t\toptions: errorTemplateItems,\n\t\t})\n\n\t\tconst destination = diskUtil.resolvePath(destinationDir, 'options.types.ts')\n\n\t\tthis.ui.startLoading('Updating error options...')\n\n\t\tconst results = this.writeFileIfChangedMixinResults(\n\t\t\tdestination,\n\t\t\tcontents,\n\t\t\t'A union of all possible error codes and their options.'\n\t\t)\n\n\t\tawait this.lint(destination)\n\n\t\treturn results\n\t}\n\n\tpublic async writePlugin(cwd: string) {\n\t\tconst destination = diskUtil.resolveHashSprucePath(\n\t\t\tcwd,\n\t\t\t'features',\n\t\t\t'error.plugin.ts'\n\t\t)\n\n\t\tconst pluginContents = this.templates.errorPlugin()\n\n\t\tconst results = this.writeFileIfChangedMixinResults(\n\t\t\tdestination,\n\t\t\tpluginContents,\n\t\t\t'Supports your skill with Error generation and handling.'\n\t\t)\n\n\t\tawait this.lint(destination)\n\n\t\treturn results\n\t}\n}\n"],"mappings":"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"}
@@ -65,15 +65,13 @@ var EventFeature = /*#__PURE__*/function (_AbstractFeature) {
65
65
  value: function () {
66
66
  var _afterPackageInstall = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
67
67
  return _regenerator["default"].wrap(function _callee$(_context) {
68
- while (1) {
69
- switch (_context.prev = _context.next) {
70
- case 0:
71
- _spruceSkillUtils.diskUtil.createDir(_spruceSkillUtils.diskUtil.resolvePath(this.cwd, 'src', 'events'));
72
- return _context.abrupt("return", this.optionallySyncListeners());
73
- case 2:
74
- case "end":
75
- return _context.stop();
76
- }
68
+ while (1) switch (_context.prev = _context.next) {
69
+ case 0:
70
+ _spruceSkillUtils.diskUtil.createDir(_spruceSkillUtils.diskUtil.resolvePath(this.cwd, 'src', 'events'));
71
+ return _context.abrupt("return", this.optionallySyncListeners());
72
+ case 2:
73
+ case "end":
74
+ return _context.stop();
77
75
  }
78
76
  }, _callee, this);
79
77
  }));
@@ -88,28 +86,26 @@ var EventFeature = /*#__PURE__*/function (_AbstractFeature) {
88
86
  var _optionallySyncListeners = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
89
87
  var results, isSkillInstalled;
90
88
  return _regenerator["default"].wrap(function _callee2$(_context2) {
91
- while (1) {
92
- switch (_context2.prev = _context2.next) {
93
- case 0:
94
- results = {};
95
- _context2.next = 3;
96
- return this.features.isInstalled('skill');
97
- case 3:
98
- isSkillInstalled = _context2.sent;
99
- if (!isSkillInstalled) {
100
- _context2.next = 8;
101
- break;
102
- }
103
- _context2.next = 7;
104
- return this.Action('event', 'sync.listeners').execute({});
105
- case 7:
106
- results = _context2.sent;
107
- case 8:
108
- return _context2.abrupt("return", results);
109
- case 9:
110
- case "end":
111
- return _context2.stop();
112
- }
89
+ while (1) switch (_context2.prev = _context2.next) {
90
+ case 0:
91
+ results = {};
92
+ _context2.next = 3;
93
+ return this.features.isInstalled('skill');
94
+ case 3:
95
+ isSkillInstalled = _context2.sent;
96
+ if (!isSkillInstalled) {
97
+ _context2.next = 8;
98
+ break;
99
+ }
100
+ _context2.next = 7;
101
+ return this.Action('event', 'sync.listeners').execute({});
102
+ case 7:
103
+ results = _context2.sent;
104
+ case 8:
105
+ return _context2.abrupt("return", results);
106
+ case 9:
107
+ case "end":
108
+ return _context2.stop();
113
109
  }
114
110
  }, _callee2, this);
115
111
  }));
@@ -124,40 +120,38 @@ var EventFeature = /*#__PURE__*/function (_AbstractFeature) {
124
120
  var _handleWillExecute = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(payload) {
125
121
  var featureCode, actionCode, results, combined, settings, isInstalled, isRemoteRelevant, remoteResults;
126
122
  return _regenerator["default"].wrap(function _callee3$(_context3) {
127
- while (1) {
128
- switch (_context3.prev = _context3.next) {
129
- case 0:
130
- featureCode = payload.featureCode, actionCode = payload.actionCode;
131
- results = {};
132
- if (!this.initiatingAction) {
133
- _EventStore["default"].clearCache();
134
- combined = this.combineCodes(featureCode, actionCode);
135
- this.initiatingAction = combined;
136
- }
137
- if (featureCode === 'node' || featureCode === 'upgrade') {
138
- settings = this.Service('eventSettings');
139
- settings.clearListenerCache();
140
- }
141
- _context3.next = 6;
142
- return this.features.isInstalled('event');
143
- case 6:
144
- isInstalled = _context3.sent;
145
- isRemoteRelevant = isInstalled && (featureCode === 'event' || featureCode === 'eventContract' || actionCode === 'login') && actionCode !== 'setRemote';
146
- if (!isRemoteRelevant) {
147
- _context3.next = 13;
148
- break;
149
- }
150
- _context3.next = 11;
151
- return this.appendRemoteToResultsOrPrompt();
152
- case 11:
153
- remoteResults = _context3.sent;
154
- results = _action["default"].mergeActionResults(results, remoteResults);
155
- case 13:
156
- return _context3.abrupt("return", results);
157
- case 14:
158
- case "end":
159
- return _context3.stop();
160
- }
123
+ while (1) switch (_context3.prev = _context3.next) {
124
+ case 0:
125
+ featureCode = payload.featureCode, actionCode = payload.actionCode;
126
+ results = {};
127
+ if (!this.initiatingAction) {
128
+ _EventStore["default"].clearCache();
129
+ combined = this.combineCodes(featureCode, actionCode);
130
+ this.initiatingAction = combined;
131
+ }
132
+ if (featureCode === 'node' || featureCode === 'upgrade') {
133
+ settings = this.Service('eventSettings');
134
+ settings.clearListenerCache();
135
+ }
136
+ _context3.next = 6;
137
+ return this.features.isInstalled('event');
138
+ case 6:
139
+ isInstalled = _context3.sent;
140
+ isRemoteRelevant = isInstalled && (featureCode === 'event' || featureCode === 'eventContract' || actionCode === 'login') && actionCode !== 'setRemote';
141
+ if (!isRemoteRelevant) {
142
+ _context3.next = 13;
143
+ break;
144
+ }
145
+ _context3.next = 11;
146
+ return this.appendRemoteToResultsOrPrompt();
147
+ case 11:
148
+ remoteResults = _context3.sent;
149
+ results = _action["default"].mergeActionResults(results, remoteResults);
150
+ case 13:
151
+ return _context3.abrupt("return", results);
152
+ case 14:
153
+ case "end":
154
+ return _context3.stop();
161
155
  }
162
156
  }, _callee3, this);
163
157
  }));
@@ -172,19 +166,17 @@ var EventFeature = /*#__PURE__*/function (_AbstractFeature) {
172
166
  var _syncListenersAndMixinResults = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(results) {
173
167
  var syncResults;
174
168
  return _regenerator["default"].wrap(function _callee4$(_context4) {
175
- while (1) {
176
- switch (_context4.prev = _context4.next) {
177
- case 0:
178
- _context4.next = 2;
179
- return this.optionallySyncListeners();
180
- case 2:
181
- syncResults = _context4.sent;
182
- results = _action["default"].mergeActionResults(results, syncResults);
183
- return _context4.abrupt("return", results);
184
- case 5:
185
- case "end":
186
- return _context4.stop();
187
- }
169
+ while (1) switch (_context4.prev = _context4.next) {
170
+ case 0:
171
+ _context4.next = 2;
172
+ return this.optionallySyncListeners();
173
+ case 2:
174
+ syncResults = _context4.sent;
175
+ results = _action["default"].mergeActionResults(results, syncResults);
176
+ return _context4.abrupt("return", results);
177
+ case 5:
178
+ case "end":
179
+ return _context4.stop();
188
180
  }
189
181
  }, _callee4, this);
190
182
  }));
@@ -199,37 +191,35 @@ var EventFeature = /*#__PURE__*/function (_AbstractFeature) {
199
191
  var _handleDidExecute = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(payload) {
200
192
  var featureCode, actionCode, isInstalled, results, isUpgrade;
201
193
  return _regenerator["default"].wrap(function _callee5$(_context5) {
202
- while (1) {
203
- switch (_context5.prev = _context5.next) {
204
- case 0:
205
- featureCode = payload.featureCode, actionCode = payload.actionCode;
206
- _context5.next = 3;
207
- return this.features.isInstalled('event');
208
- case 3:
209
- isInstalled = _context5.sent;
210
- results = {};
211
- isUpgrade = isInstalled && featureCode === 'node' && actionCode === 'upgrade';
212
- if (!isUpgrade) {
213
- _context5.next = 13;
214
- break;
215
- }
216
- _context5.next = 9;
217
- return this.Action('event', 'sync').execute({});
218
- case 9:
219
- results = _context5.sent;
220
- _context5.next = 12;
221
- return this.syncListenersAndMixinResults(results);
222
- case 12:
223
- results = _context5.sent;
224
- case 13:
225
- if (this.initiatingAction === this.combineCodes(featureCode, actionCode)) {
226
- _EventStore["default"].clearCache();
227
- }
228
- return _context5.abrupt("return", results);
229
- case 15:
230
- case "end":
231
- return _context5.stop();
232
- }
194
+ while (1) switch (_context5.prev = _context5.next) {
195
+ case 0:
196
+ featureCode = payload.featureCode, actionCode = payload.actionCode;
197
+ _context5.next = 3;
198
+ return this.features.isInstalled('event');
199
+ case 3:
200
+ isInstalled = _context5.sent;
201
+ results = {};
202
+ isUpgrade = isInstalled && featureCode === 'node' && actionCode === 'upgrade';
203
+ if (!isUpgrade) {
204
+ _context5.next = 13;
205
+ break;
206
+ }
207
+ _context5.next = 9;
208
+ return this.Action('event', 'sync').execute({});
209
+ case 9:
210
+ results = _context5.sent;
211
+ _context5.next = 12;
212
+ return this.syncListenersAndMixinResults(results);
213
+ case 12:
214
+ results = _context5.sent;
215
+ case 13:
216
+ if (this.initiatingAction === this.combineCodes(featureCode, actionCode)) {
217
+ _EventStore["default"].clearCache();
218
+ }
219
+ return _context5.abrupt("return", results);
220
+ case 15:
221
+ case "end":
222
+ return _context5.stop();
233
223
  }
234
224
  }, _callee5, this);
235
225
  }));
@@ -249,36 +239,34 @@ var EventFeature = /*#__PURE__*/function (_AbstractFeature) {
249
239
  var _appendRemoteToResultsOrPrompt = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
250
240
  var remote, r, results;
251
241
  return _regenerator["default"].wrap(function _callee6$(_context6) {
252
- while (1) {
253
- switch (_context6.prev = _context6.next) {
254
- case 0:
255
- remote = this.Service('remote');
256
- r = remote.getRemote();
257
- if (r) {
258
- _context6.next = 13;
259
- break;
260
- }
261
- if (_TerminalInterface["default"].doesSupportColor()) {
262
- _context6.next = 5;
263
- break;
264
- }
265
- throw new Error("Dang! I couldn't find env.HOST. Once that is set, lets try again!");
266
- case 5:
267
- this.ui.stopLoading();
268
- this.ui.renderLine("Uh oh! It looks like you haven't configured your remote! We gotta do that.");
269
- _context6.next = 9;
270
- return this.Action('event', 'setRemote').execute({});
271
- case 9:
272
- results = _context6.sent;
273
- return _context6.abrupt("return", results);
274
- case 13:
275
- return _context6.abrupt("return", {
276
- summaryLines: ["Remote: ".concat(r), "Host: ".concat(remote.getHost())]
277
- });
278
- case 14:
279
- case "end":
280
- return _context6.stop();
281
- }
242
+ while (1) switch (_context6.prev = _context6.next) {
243
+ case 0:
244
+ remote = this.Service('remote');
245
+ r = remote.getRemote();
246
+ if (r) {
247
+ _context6.next = 13;
248
+ break;
249
+ }
250
+ if (_TerminalInterface["default"].doesSupportColor()) {
251
+ _context6.next = 5;
252
+ break;
253
+ }
254
+ throw new Error("Dang! I couldn't find env.HOST. Once that is set, lets try again!");
255
+ case 5:
256
+ this.ui.stopLoading();
257
+ this.ui.renderLine("Uh oh! It looks like you haven't configured your remote! We gotta do that.");
258
+ _context6.next = 9;
259
+ return this.Action('event', 'setRemote').execute({});
260
+ case 9:
261
+ results = _context6.sent;
262
+ return _context6.abrupt("return", results);
263
+ case 13:
264
+ return _context6.abrupt("return", {
265
+ summaryLines: ["Remote: ".concat(r), "Host: ".concat(remote.getHost())]
266
+ });
267
+ case 14:
268
+ case "end":
269
+ return _context6.stop();
282
270
  }
283
271
  }, _callee6, this);
284
272
  }));
@@ -293,34 +281,32 @@ var EventFeature = /*#__PURE__*/function (_AbstractFeature) {
293
281
  var _handleDidFetchSchemas = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7(payload) {
294
282
  var isInstalled, lastSync, _payload$schemas, _uniqueSchemas$schema, writer, uniqueSchemas;
295
283
  return _regenerator["default"].wrap(function _callee7$(_context7) {
296
- while (1) {
297
- switch (_context7.prev = _context7.next) {
298
- case 0:
299
- _context7.next = 2;
300
- return this.features.isInstalled(this.code);
301
- case 2:
302
- isInstalled = _context7.sent;
303
- lastSync = this.Service('eventSettings').getLastSyncOptions();
304
- if (!(lastSync && isInstalled)) {
305
- _context7.next = 10;
306
- break;
307
- }
308
- writer = this.getEventContractBuilder();
309
- _context7.next = 8;
310
- return writer.fetchContractsAndGenerateUniqueSchemas((_payload$schemas = payload.schemas) !== null && _payload$schemas !== void 0 ? _payload$schemas : [], lastSync.shouldSyncOnlyCoreEvents);
311
- case 8:
312
- uniqueSchemas = _context7.sent;
313
- return _context7.abrupt("return", {
314
- schemas: (_uniqueSchemas$schema = uniqueSchemas.schemas) !== null && _uniqueSchemas$schema !== void 0 ? _uniqueSchemas$schema : []
315
- });
316
- case 10:
317
- return _context7.abrupt("return", {
318
- schemas: []
319
- });
320
- case 11:
321
- case "end":
322
- return _context7.stop();
323
- }
284
+ while (1) switch (_context7.prev = _context7.next) {
285
+ case 0:
286
+ _context7.next = 2;
287
+ return this.features.isInstalled(this.code);
288
+ case 2:
289
+ isInstalled = _context7.sent;
290
+ lastSync = this.Service('eventSettings').getLastSyncOptions();
291
+ if (!(lastSync && isInstalled)) {
292
+ _context7.next = 10;
293
+ break;
294
+ }
295
+ writer = this.getEventContractBuilder();
296
+ _context7.next = 8;
297
+ return writer.fetchContractsAndGenerateUniqueSchemas((_payload$schemas = payload.schemas) !== null && _payload$schemas !== void 0 ? _payload$schemas : [], lastSync.shouldSyncOnlyCoreEvents);
298
+ case 8:
299
+ uniqueSchemas = _context7.sent;
300
+ return _context7.abrupt("return", {
301
+ schemas: (_uniqueSchemas$schema = uniqueSchemas.schemas) !== null && _uniqueSchemas$schema !== void 0 ? _uniqueSchemas$schema : []
302
+ });
303
+ case 10:
304
+ return _context7.abrupt("return", {
305
+ schemas: []
306
+ });
307
+ case 11:
308
+ case "end":
309
+ return _context7.stop();
324
310
  }
325
311
  }, _callee7, this);
326
312
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"EventFeature.js","names":["EventFeature","options","code","isRequired","name","diskUtil","resolvePath","__dirname","emitter","on","handleDidFetchSchemas","bind","handleWillExecute","handleDidExecute","createDir","cwd","optionallySyncListeners","results","features","isInstalled","isSkillInstalled","Action","execute","payload","featureCode","actionCode","initiatingAction","EventStore","clearCache","combined","combineCodes","settings","Service","clearListenerCache","isRemoteRelevant","appendRemoteToResultsOrPrompt","remoteResults","actionUtil","mergeActionResults","syncResults","isUpgrade","syncListenersAndMixinResults","remote","r","getRemote","TerminalInterface","doesSupportColor","Error","ui","stopLoading","renderLine","summaryLines","getHost","lastSync","getLastSyncOptions","writer","getEventContractBuilder","fetchContractsAndGenerateUniqueSchemas","schemas","shouldSyncOnlyCoreEvents","uniqueSchemas","contractBuilder","EventContractBuilder","optionsSchema","syncEventActionSchema","eventGenerator","Writer","eventStore","Store","skillStore","dependencyService","doesHashSprucePathExist","hasCombinedContractBeenWritten","AbstractFeature"],"sources":["../../../src/features/event/EventFeature.ts"],"sourcesContent":["import { Schema } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport syncEventActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema'\nimport TerminalInterface from '../../interfaces/TerminalInterface'\nimport { FileDescription } from '../../types/cli.types'\nimport actionUtil from '../../utilities/action.utility'\nimport AbstractFeature, {\n\tFeatureDependency,\n\tFeatureOptions,\n} from '../AbstractFeature'\nimport { FeatureActionResponse, FeatureCode } from '../features.types'\nimport EventContractBuilder from './builders/EventContractBuilder'\nimport EventStore from './stores/EventStore'\n\nexport default class EventFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'event'\n\tpublic nameReadable = 'Events'\n\tpublic description = 'Connect to the Mercury Event Engine.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{ code: 'schema', isRequired: true },\n\t\t{ code: 'permission', isRequired: true },\n\t]\n\tpublic packageDependencies = [\n\t\t{\n\t\t\tname: '@sprucelabs/mercury-client',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/mercury-types',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-event-utils',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-event-plugin',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/mercury-core-events',\n\t\t},\n\t]\n\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic readonly fileDescriptions: FileDescription[] = []\n\tprivate contractBuilder?: EventContractBuilder\n\tprivate initiatingAction?: string\n\n\tpublic constructor(options: FeatureOptions) {\n\t\tsuper(options)\n\n\t\tvoid this.emitter.on(\n\t\t\t'schema.did-fetch-schemas',\n\t\t\tthis.handleDidFetchSchemas.bind(this)\n\t\t)\n\n\t\tvoid this.emitter.on(\n\t\t\t'feature.will-execute',\n\t\t\tthis.handleWillExecute.bind(this)\n\t\t)\n\n\t\tvoid this.emitter.on(\n\t\t\t'feature.did-execute',\n\t\t\tthis.handleDidExecute.bind(this)\n\t\t)\n\t}\n\n\tpublic async afterPackageInstall() {\n\t\tdiskUtil.createDir(diskUtil.resolvePath(this.cwd, 'src', 'events'))\n\t\treturn this.optionallySyncListeners()\n\t}\n\n\tprivate async optionallySyncListeners() {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (isSkillInstalled) {\n\t\t\tresults = await this.Action('event', 'sync.listeners').execute({})\n\t\t}\n\t\treturn results\n\t}\n\n\tprivate async handleWillExecute(payload: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t}): Promise<FeatureActionResponse> {\n\t\tconst { featureCode, actionCode } = payload\n\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tif (!this.initiatingAction) {\n\t\t\tEventStore.clearCache()\n\t\t\tconst combined = this.combineCodes(featureCode, actionCode)\n\t\t\tthis.initiatingAction = combined\n\t\t}\n\n\t\tif (featureCode === 'node' || featureCode === 'upgrade') {\n\t\t\tconst settings = this.Service('eventSettings')\n\t\t\tsettings.clearListenerCache()\n\t\t}\n\n\t\tconst isInstalled = await this.features.isInstalled('event')\n\t\tconst isRemoteRelevant =\n\t\t\tisInstalled &&\n\t\t\t(featureCode === 'event' ||\n\t\t\t\tfeatureCode === 'eventContract' ||\n\t\t\t\tactionCode === 'login') &&\n\t\t\tactionCode !== 'setRemote'\n\n\t\tif (isRemoteRelevant) {\n\t\t\tconst remoteResults = await this.appendRemoteToResultsOrPrompt()\n\t\t\tresults = actionUtil.mergeActionResults(results, remoteResults)\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async syncListenersAndMixinResults(results: FeatureActionResponse) {\n\t\tconst syncResults = await this.optionallySyncListeners()\n\t\tresults = actionUtil.mergeActionResults(results, syncResults)\n\t\treturn results\n\t}\n\n\tprivate async handleDidExecute(payload: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t}) {\n\t\tconst { featureCode, actionCode } = payload\n\t\tconst isInstalled = await this.features.isInstalled('event')\n\n\t\tlet results = {}\n\n\t\tconst isUpgrade =\n\t\t\tisInstalled && featureCode === 'node' && actionCode === 'upgrade'\n\n\t\tif (isUpgrade) {\n\t\t\tresults = await this.Action('event', 'sync').execute({})\n\t\t\tresults = await this.syncListenersAndMixinResults(results)\n\t\t}\n\n\t\tif (this.initiatingAction === this.combineCodes(featureCode, actionCode)) {\n\t\t\tEventStore.clearCache()\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate combineCodes(featureCode: string, actionCode: string) {\n\t\treturn `${featureCode}.${actionCode}`\n\t}\n\n\tprivate async appendRemoteToResultsOrPrompt(): Promise<FeatureActionResponse> {\n\t\tconst remote = this.Service('remote')\n\t\tconst r = remote.getRemote()\n\n\t\tif (!r) {\n\t\t\tif (!TerminalInterface.doesSupportColor()) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Dang! I couldn't find env.HOST. Once that is set, lets try again!`\n\t\t\t\t)\n\t\t\t}\n\n\t\t\tthis.ui.stopLoading()\n\t\t\tthis.ui.renderLine(\n\t\t\t\t`Uh oh! It looks like you haven't configured your remote! We gotta do that.`\n\t\t\t)\n\n\t\t\tconst results = await this.Action('event', 'setRemote').execute({})\n\n\t\t\treturn results\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tsummaryLines: [`Remote: ${r}`, `Host: ${remote.getHost()}`],\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate async handleDidFetchSchemas(payload: { schemas?: Schema[] | null }) {\n\t\tconst isInstalled = await this.features.isInstalled(this.code)\n\n\t\tconst lastSync = this.Service('eventSettings').getLastSyncOptions()\n\n\t\tif (lastSync && isInstalled) {\n\t\t\tconst writer = this.getEventContractBuilder()\n\n\t\t\tconst uniqueSchemas = await writer.fetchContractsAndGenerateUniqueSchemas(\n\t\t\t\tpayload.schemas ?? [],\n\t\t\t\tlastSync.shouldSyncOnlyCoreEvents\n\t\t\t)\n\n\t\t\treturn {\n\t\t\t\tschemas: uniqueSchemas.schemas ?? [],\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tschemas: [],\n\t\t}\n\t}\n\n\tpublic getEventContractBuilder() {\n\t\tif (!this.contractBuilder) {\n\t\t\tthis.contractBuilder = new EventContractBuilder({\n\t\t\t\tcwd: this.cwd,\n\t\t\t\toptionsSchema: syncEventActionSchema,\n\t\t\t\tui: this.ui,\n\t\t\t\teventGenerator: this.Writer('event'),\n\t\t\t\teventStore: this.Store('event'),\n\t\t\t\tskillStore: this.Store('skill'),\n\t\t\t\tdependencyService: this.Service('dependency'),\n\t\t\t})\n\t\t}\n\n\t\treturn this.contractBuilder\n\t}\n\n\tpublic hasBeenSynced() {\n\t\tif (diskUtil.doesHashSprucePathExist(this.cwd)) {\n\t\t\tconst writer = this.Writer('event')\n\t\t\treturn writer.hasCombinedContractBeenWritten(this.cwd)\n\t\t}\n\n\t\treturn false\n\t}\n}\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tevent: EventFeature\n\t}\n\n\tinterface FeatureOptionsMap {\n\t\tevent: undefined\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;AACA;AACA;AACA;AAEA;AACA;AAKA;AACA;AAA4C;AAAA;AAAA,IAEvBA,YAAY;EAAA;EAAA;EAgChC,sBAAmBC,OAAuB,EAAE;IAAA;IAAA;IAC3C,0BAAMA,OAAO;IAAC,yFAhCY,OAAO;IAAA,iGACZ,QAAQ;IAAA,gGACT,sCAAsC;IAAA,iGAChB,CAC1C;MAAEC,IAAI,EAAE,QAAQ;MAAEC,UAAU,EAAE;IAAK,CAAC,EACpC;MAAED,IAAI,EAAE,YAAY;MAAEC,UAAU,EAAE;IAAK,CAAC,CACxC;IAAA,wGAC4B,CAC5B;MACCC,IAAI,EAAE;IACP,CAAC,EACD;MACCA,IAAI,EAAE;IACP,CAAC,EACD;MACCA,IAAI,EAAE;IACP,CAAC,EACD;MACCA,IAAI,EAAE;IACP,CAAC,EACD;MACCA,IAAI,EAAE;IACP,CAAC,CACD;IAAA,+FAEmBC,0BAAQ,CAACC,WAAW,CAACC,SAAS,EAAE,SAAS,CAAC;IAAA,qGAER,EAAE;IAAA;IAAA;IAOvD,KAAK,MAAKC,OAAO,CAACC,EAAE,CACnB,0BAA0B,EAC1B,MAAKC,qBAAqB,CAACC,IAAI,gDAAM,CACrC;IAED,KAAK,MAAKH,OAAO,CAACC,EAAE,CACnB,sBAAsB,EACtB,MAAKG,iBAAiB,CAACD,IAAI,gDAAM,CACjC;IAED,KAAK,MAAKH,OAAO,CAACC,EAAE,CACnB,qBAAqB,EACrB,MAAKI,gBAAgB,CAACF,IAAI,gDAAM,CAChC;IAAA;EACF;EAAC;IAAA;IAAA;MAAA,yGAED;QAAA;UAAA;YAAA;cAAA;gBACCN,0BAAQ,CAACS,SAAS,CAACT,0BAAQ,CAACC,WAAW,CAAC,IAAI,CAACS,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAAA,iCAC5D,IAAI,CAACC,uBAAuB,EAAE;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACrC;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,6GAED;QAAA;QAAA;UAAA;YAAA;cAAA;gBACKC,OAA8B,GAAG,CAAC,CAAC;gBAAA;gBAAA,OAER,IAAI,CAACC,QAAQ,CAACC,WAAW,CAAC,OAAO,CAAC;cAAA;gBAA3DC,gBAAgB;gBAAA,KAElBA,gBAAgB;kBAAA;kBAAA;gBAAA;gBAAA;gBAAA,OACH,IAAI,CAACC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;cAAA;gBAAlEL,OAAO;cAAA;gBAAA,kCAEDA,OAAO;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACd;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,uGAED,kBAAgCM,OAG/B;QAAA;QAAA;UAAA;YAAA;cAAA;gBACQC,WAAW,GAAiBD,OAAO,CAAnCC,WAAW,EAAEC,UAAU,GAAKF,OAAO,CAAtBE,UAAU;gBAE3BR,OAA8B,GAAG,CAAC,CAAC;gBAEvC,IAAI,CAAC,IAAI,CAACS,gBAAgB,EAAE;kBAC3BC,sBAAU,CAACC,UAAU,EAAE;kBACjBC,QAAQ,GAAG,IAAI,CAACC,YAAY,CAACN,WAAW,EAAEC,UAAU,CAAC;kBAC3D,IAAI,CAACC,gBAAgB,GAAGG,QAAQ;gBACjC;gBAEA,IAAIL,WAAW,KAAK,MAAM,IAAIA,WAAW,KAAK,SAAS,EAAE;kBAClDO,QAAQ,GAAG,IAAI,CAACC,OAAO,CAAC,eAAe,CAAC;kBAC9CD,QAAQ,CAACE,kBAAkB,EAAE;gBAC9B;gBAAC;gBAAA,OAEyB,IAAI,CAACf,QAAQ,CAACC,WAAW,CAAC,OAAO,CAAC;cAAA;gBAAtDA,WAAW;gBACXe,gBAAgB,GACrBf,WAAW,KACVK,WAAW,KAAK,OAAO,IACvBA,WAAW,KAAK,eAAe,IAC/BC,UAAU,KAAK,OAAO,CAAC,IACxBA,UAAU,KAAK,WAAW;gBAAA,KAEvBS,gBAAgB;kBAAA;kBAAA;gBAAA;gBAAA;gBAAA,OACS,IAAI,CAACC,6BAA6B,EAAE;cAAA;gBAA1DC,aAAa;gBACnBnB,OAAO,GAAGoB,kBAAU,CAACC,kBAAkB,CAACrB,OAAO,EAAEmB,aAAa,CAAC;cAAA;gBAAA,kCAGzDnB,OAAO;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACd;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,kHAED,kBAA2CA,OAA8B;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAC9C,IAAI,CAACD,uBAAuB,EAAE;cAAA;gBAAlDuB,WAAW;gBACjBtB,OAAO,GAAGoB,kBAAU,CAACC,kBAAkB,CAACrB,OAAO,EAAEsB,WAAW,CAAC;gBAAA,kCACtDtB,OAAO;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACd;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,sGAED,kBAA+BM,OAG9B;QAAA;QAAA;UAAA;YAAA;cAAA;gBACQC,WAAW,GAAiBD,OAAO,CAAnCC,WAAW,EAAEC,UAAU,GAAKF,OAAO,CAAtBE,UAAU;gBAAA;gBAAA,OACL,IAAI,CAACP,QAAQ,CAACC,WAAW,CAAC,OAAO,CAAC;cAAA;gBAAtDA,WAAW;gBAEbF,OAAO,GAAG,CAAC,CAAC;gBAEVuB,SAAS,GACdrB,WAAW,IAAIK,WAAW,KAAK,MAAM,IAAIC,UAAU,KAAK,SAAS;gBAAA,KAE9De,SAAS;kBAAA;kBAAA;gBAAA;gBAAA;gBAAA,OACI,IAAI,CAACnB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;cAAA;gBAAxDL,OAAO;gBAAA;gBAAA,OACS,IAAI,CAACwB,4BAA4B,CAACxB,OAAO,CAAC;cAAA;gBAA1DA,OAAO;cAAA;gBAGR,IAAI,IAAI,CAACS,gBAAgB,KAAK,IAAI,CAACI,YAAY,CAACN,WAAW,EAAEC,UAAU,CAAC,EAAE;kBACzEE,sBAAU,CAACC,UAAU,EAAE;gBACxB;gBAAC,kCAEMX,OAAO;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACd;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA,OAED,sBAAqBO,WAAmB,EAAEC,UAAkB,EAAE;MAC7D,iBAAUD,WAAW,cAAIC,UAAU;IACpC;EAAC;IAAA;IAAA;MAAA,mHAED;QAAA;QAAA;UAAA;YAAA;cAAA;gBACOiB,MAAM,GAAG,IAAI,CAACV,OAAO,CAAC,QAAQ,CAAC;gBAC/BW,CAAC,GAAGD,MAAM,CAACE,SAAS,EAAE;gBAAA,IAEvBD,CAAC;kBAAA;kBAAA;gBAAA;gBAAA,IACAE,6BAAiB,CAACC,gBAAgB,EAAE;kBAAA;kBAAA;gBAAA;gBAAA,MAClC,IAAIC,KAAK,qEAEd;cAAA;gBAGF,IAAI,CAACC,EAAE,CAACC,WAAW,EAAE;gBACrB,IAAI,CAACD,EAAE,CAACE,UAAU,8EAEjB;gBAAA;gBAAA,OAEqB,IAAI,CAAC7B,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;cAAA;gBAA7DL,OAAO;gBAAA,kCAENA,OAAO;cAAA;gBAAA,kCAEP;kBACNkC,YAAY,EAAE,mBAAYR,CAAC,mBAAaD,MAAM,CAACU,OAAO,EAAE;gBACzD,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAEF;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA;MAAA,2GAED,kBAAoC7B,OAAsC;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAC/C,IAAI,CAACL,QAAQ,CAACC,WAAW,CAAC,IAAI,CAACjB,IAAI,CAAC;cAAA;gBAAxDiB,WAAW;gBAEXkC,QAAQ,GAAG,IAAI,CAACrB,OAAO,CAAC,eAAe,CAAC,CAACsB,kBAAkB,EAAE;gBAAA,MAE/DD,QAAQ,IAAIlC,WAAW;kBAAA;kBAAA;gBAAA;gBACpBoC,MAAM,GAAG,IAAI,CAACC,uBAAuB,EAAE;gBAAA;gBAAA,OAEjBD,MAAM,CAACE,sCAAsC,qBACxElC,OAAO,CAACmC,OAAO,+DAAI,EAAE,EACrBL,QAAQ,CAACM,wBAAwB,CACjC;cAAA;gBAHKC,aAAa;gBAAA,kCAKZ;kBACNF,OAAO,2BAAEE,aAAa,CAACF,OAAO,yEAAI;gBACnC,CAAC;cAAA;gBAAA,kCAGK;kBACNA,OAAO,EAAE;gBACV,CAAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CACD;MAAA;QAAA;MAAA;MAAA;IAAA;EAAA;IAAA;IAAA,OAED,mCAAiC;MAChC,IAAI,CAAC,IAAI,CAACG,eAAe,EAAE;QAC1B,IAAI,CAACA,eAAe,GAAG,IAAIC,gCAAoB,CAAC;UAC/C/C,GAAG,EAAE,IAAI,CAACA,GAAG;UACbgD,aAAa,EAAEC,4BAAqB;UACpChB,EAAE,EAAE,IAAI,CAACA,EAAE;UACXiB,cAAc,EAAE,IAAI,CAACC,MAAM,CAAC,OAAO,CAAC;UACpCC,UAAU,EAAE,IAAI,CAACC,KAAK,CAAC,OAAO,CAAC;UAC/BC,UAAU,EAAE,IAAI,CAACD,KAAK,CAAC,OAAO,CAAC;UAC/BE,iBAAiB,EAAE,IAAI,CAACtC,OAAO,CAAC,YAAY;QAC7C,CAAC,CAAC;MACH;MAEA,OAAO,IAAI,CAAC6B,eAAe;IAC5B;EAAC;IAAA;IAAA,OAED,yBAAuB;MACtB,IAAIxD,0BAAQ,CAACkE,uBAAuB,CAAC,IAAI,CAACxD,GAAG,CAAC,EAAE;QAC/C,IAAMwC,MAAM,GAAG,IAAI,CAACW,MAAM,CAAC,OAAO,CAAC;QACnC,OAAOX,MAAM,CAACiB,8BAA8B,CAAC,IAAI,CAACzD,GAAG,CAAC;MACvD;MAEA,OAAO,KAAK;IACb;EAAC;EAAA;AAAA,EAhNwC0D,4BAAe;AAAA"}
1
+ {"version":3,"file":"EventFeature.js","names":["_spruceSkillUtils","require","_syncEventOptions","_interopRequireDefault","_TerminalInterface","_action","_AbstractFeature2","_EventContractBuilder","_EventStore","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","EventFeature","_AbstractFeature","_inherits2","_super","options","_this","_classCallCheck2","_defineProperty2","_assertThisInitialized2","code","isRequired","name","diskUtil","resolvePath","__dirname","emitter","on","handleDidFetchSchemas","bind","handleWillExecute","handleDidExecute","_createClass2","key","value","_afterPackageInstall","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","createDir","cwd","abrupt","optionallySyncListeners","stop","afterPackageInstall","_optionallySyncListeners","_callee2","results","isSkillInstalled","_callee2$","_context2","features","isInstalled","sent","Action","execute","_handleWillExecute","_callee3","payload","featureCode","actionCode","combined","settings","isRemoteRelevant","remoteResults","_callee3$","_context3","initiatingAction","EventStore","clearCache","combineCodes","Service","clearListenerCache","appendRemoteToResultsOrPrompt","actionUtil","mergeActionResults","_x","_syncListenersAndMixinResults","_callee4","syncResults","_callee4$","_context4","syncListenersAndMixinResults","_x2","_handleDidExecute","_callee5","isUpgrade","_callee5$","_context5","_x3","concat","_appendRemoteToResultsOrPrompt","_callee6","remote","r","_callee6$","_context6","getRemote","TerminalInterface","doesSupportColor","Error","ui","stopLoading","renderLine","summaryLines","getHost","_handleDidFetchSchemas","_callee7","lastSync","_payload$schemas","_uniqueSchemas$schema","writer","uniqueSchemas","_callee7$","_context7","getLastSyncOptions","getEventContractBuilder","fetchContractsAndGenerateUniqueSchemas","schemas","shouldSyncOnlyCoreEvents","_x4","contractBuilder","EventContractBuilder","optionsSchema","syncEventActionSchema","eventGenerator","Writer","eventStore","Store","skillStore","dependencyService","hasBeenSynced","doesHashSprucePathExist","hasCombinedContractBeenWritten","AbstractFeature","exports"],"sources":["../../../src/features/event/EventFeature.ts"],"sourcesContent":["import { Schema } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport syncEventActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema'\nimport TerminalInterface from '../../interfaces/TerminalInterface'\nimport { FileDescription } from '../../types/cli.types'\nimport actionUtil from '../../utilities/action.utility'\nimport AbstractFeature, {\n\tFeatureDependency,\n\tFeatureOptions,\n} from '../AbstractFeature'\nimport { FeatureActionResponse, FeatureCode } from '../features.types'\nimport EventContractBuilder from './builders/EventContractBuilder'\nimport EventStore from './stores/EventStore'\n\nexport default class EventFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'event'\n\tpublic nameReadable = 'Events'\n\tpublic description = 'Connect to the Mercury Event Engine.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{ code: 'schema', isRequired: true },\n\t\t{ code: 'permission', isRequired: true },\n\t]\n\tpublic packageDependencies = [\n\t\t{\n\t\t\tname: '@sprucelabs/mercury-client',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/mercury-types',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-event-utils',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-event-plugin',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/mercury-core-events',\n\t\t},\n\t]\n\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic readonly fileDescriptions: FileDescription[] = []\n\tprivate contractBuilder?: EventContractBuilder\n\tprivate initiatingAction?: string\n\n\tpublic constructor(options: FeatureOptions) {\n\t\tsuper(options)\n\n\t\tvoid this.emitter.on(\n\t\t\t'schema.did-fetch-schemas',\n\t\t\tthis.handleDidFetchSchemas.bind(this)\n\t\t)\n\n\t\tvoid this.emitter.on(\n\t\t\t'feature.will-execute',\n\t\t\tthis.handleWillExecute.bind(this)\n\t\t)\n\n\t\tvoid this.emitter.on(\n\t\t\t'feature.did-execute',\n\t\t\tthis.handleDidExecute.bind(this)\n\t\t)\n\t}\n\n\tpublic async afterPackageInstall() {\n\t\tdiskUtil.createDir(diskUtil.resolvePath(this.cwd, 'src', 'events'))\n\t\treturn this.optionallySyncListeners()\n\t}\n\n\tprivate async optionallySyncListeners() {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (isSkillInstalled) {\n\t\t\tresults = await this.Action('event', 'sync.listeners').execute({})\n\t\t}\n\t\treturn results\n\t}\n\n\tprivate async handleWillExecute(payload: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t}): Promise<FeatureActionResponse> {\n\t\tconst { featureCode, actionCode } = payload\n\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tif (!this.initiatingAction) {\n\t\t\tEventStore.clearCache()\n\t\t\tconst combined = this.combineCodes(featureCode, actionCode)\n\t\t\tthis.initiatingAction = combined\n\t\t}\n\n\t\tif (featureCode === 'node' || featureCode === 'upgrade') {\n\t\t\tconst settings = this.Service('eventSettings')\n\t\t\tsettings.clearListenerCache()\n\t\t}\n\n\t\tconst isInstalled = await this.features.isInstalled('event')\n\t\tconst isRemoteRelevant =\n\t\t\tisInstalled &&\n\t\t\t(featureCode === 'event' ||\n\t\t\t\tfeatureCode === 'eventContract' ||\n\t\t\t\tactionCode === 'login') &&\n\t\t\tactionCode !== 'setRemote'\n\n\t\tif (isRemoteRelevant) {\n\t\t\tconst remoteResults = await this.appendRemoteToResultsOrPrompt()\n\t\t\tresults = actionUtil.mergeActionResults(results, remoteResults)\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async syncListenersAndMixinResults(results: FeatureActionResponse) {\n\t\tconst syncResults = await this.optionallySyncListeners()\n\t\tresults = actionUtil.mergeActionResults(results, syncResults)\n\t\treturn results\n\t}\n\n\tprivate async handleDidExecute(payload: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t}) {\n\t\tconst { featureCode, actionCode } = payload\n\t\tconst isInstalled = await this.features.isInstalled('event')\n\n\t\tlet results = {}\n\n\t\tconst isUpgrade =\n\t\t\tisInstalled && featureCode === 'node' && actionCode === 'upgrade'\n\n\t\tif (isUpgrade) {\n\t\t\tresults = await this.Action('event', 'sync').execute({})\n\t\t\tresults = await this.syncListenersAndMixinResults(results)\n\t\t}\n\n\t\tif (this.initiatingAction === this.combineCodes(featureCode, actionCode)) {\n\t\t\tEventStore.clearCache()\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate combineCodes(featureCode: string, actionCode: string) {\n\t\treturn `${featureCode}.${actionCode}`\n\t}\n\n\tprivate async appendRemoteToResultsOrPrompt(): Promise<FeatureActionResponse> {\n\t\tconst remote = this.Service('remote')\n\t\tconst r = remote.getRemote()\n\n\t\tif (!r) {\n\t\t\tif (!TerminalInterface.doesSupportColor()) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Dang! I couldn't find env.HOST. Once that is set, lets try again!`\n\t\t\t\t)\n\t\t\t}\n\n\t\t\tthis.ui.stopLoading()\n\t\t\tthis.ui.renderLine(\n\t\t\t\t`Uh oh! It looks like you haven't configured your remote! We gotta do that.`\n\t\t\t)\n\n\t\t\tconst results = await this.Action('event', 'setRemote').execute({})\n\n\t\t\treturn results\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tsummaryLines: [`Remote: ${r}`, `Host: ${remote.getHost()}`],\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate async handleDidFetchSchemas(payload: { schemas?: Schema[] | null }) {\n\t\tconst isInstalled = await this.features.isInstalled(this.code)\n\n\t\tconst lastSync = this.Service('eventSettings').getLastSyncOptions()\n\n\t\tif (lastSync && isInstalled) {\n\t\t\tconst writer = this.getEventContractBuilder()\n\n\t\t\tconst uniqueSchemas = await writer.fetchContractsAndGenerateUniqueSchemas(\n\t\t\t\tpayload.schemas ?? [],\n\t\t\t\tlastSync.shouldSyncOnlyCoreEvents\n\t\t\t)\n\n\t\t\treturn {\n\t\t\t\tschemas: uniqueSchemas.schemas ?? [],\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tschemas: [],\n\t\t}\n\t}\n\n\tpublic getEventContractBuilder() {\n\t\tif (!this.contractBuilder) {\n\t\t\tthis.contractBuilder = new EventContractBuilder({\n\t\t\t\tcwd: this.cwd,\n\t\t\t\toptionsSchema: syncEventActionSchema,\n\t\t\t\tui: this.ui,\n\t\t\t\teventGenerator: this.Writer('event'),\n\t\t\t\teventStore: this.Store('event'),\n\t\t\t\tskillStore: this.Store('skill'),\n\t\t\t\tdependencyService: this.Service('dependency'),\n\t\t\t})\n\t\t}\n\n\t\treturn this.contractBuilder\n\t}\n\n\tpublic hasBeenSynced() {\n\t\tif (diskUtil.doesHashSprucePathExist(this.cwd)) {\n\t\t\tconst writer = this.Writer('event')\n\t\t\treturn writer.hasCombinedContractBeenWritten(this.cwd)\n\t\t}\n\n\t\treturn false\n\t}\n}\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tevent: EventFeature\n\t}\n\n\tinterface FeatureOptionsMap {\n\t\tevent: undefined\n\t}\n}\n"],"mappings":"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"}