@sprucelabs/spruce-cli 19.1.41 → 19.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (602) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/build/.spruce/errors/errors.types.d.ts +19 -0
  3. package/build/.spruce/errors/errors.types.js.map +1 -1
  4. package/build/.spruce/errors/options.types.d.ts +4 -1
  5. package/build/.spruce/errors/options.types.js.map +1 -1
  6. package/build/.spruce/errors/spruceCli/actionCancelled.schema.js.map +1 -1
  7. package/build/.spruce/errors/spruceCli/bootError.schema.js.map +1 -1
  8. package/build/.spruce/errors/spruceCli/buildFailed.schema.js.map +1 -1
  9. package/build/.spruce/errors/spruceCli/cacheNotEnabled.schema.js.map +1 -1
  10. package/build/.spruce/errors/spruceCli/commandAborted.schema.js.map +1 -1
  11. package/build/.spruce/errors/spruceCli/commandBlocked.schema.js.map +1 -1
  12. package/build/.spruce/errors/spruceCli/commandNotImplemented.schema.js.map +1 -1
  13. package/build/.spruce/errors/spruceCli/createAutoloaderFailed.schema.js.map +1 -1
  14. package/build/.spruce/errors/spruceCli/dependencyExists.schema.js.map +1 -1
  15. package/build/.spruce/errors/spruceCli/deployFailed.schema.js.map +1 -1
  16. package/build/.spruce/errors/spruceCli/directoryEmpty.schema.js.map +1 -1
  17. package/build/.spruce/errors/spruceCli/directoryNotSkill.schema.js.map +1 -1
  18. package/build/.spruce/errors/spruceCli/dockerNotStarted.schema.js.map +1 -1
  19. package/build/.spruce/errors/spruceCli/executingCommandFailed.schema.js.map +1 -1
  20. package/build/.spruce/errors/spruceCli/failedToImport.schema.js.map +1 -1
  21. package/build/.spruce/errors/spruceCli/featureNotInstalled.schema.js.map +1 -1
  22. package/build/.spruce/errors/spruceCli/fileExists.schema.js.map +1 -1
  23. package/build/.spruce/errors/spruceCli/generic.schema.js.map +1 -1
  24. package/build/.spruce/errors/spruceCli/invalidCommand.schema.js.map +1 -1
  25. package/build/.spruce/errors/spruceCli/invalidEventContract.schema.js.map +1 -1
  26. package/build/.spruce/errors/spruceCli/invalidFeatureCode.schema.js.map +1 -1
  27. package/build/.spruce/errors/spruceCli/invalidTestDirectory.schema.js.map +1 -1
  28. package/build/.spruce/errors/spruceCli/lintFailed.schema.js.map +1 -1
  29. package/build/.spruce/errors/spruceCli/mercuryResponseError.schema.js.map +1 -1
  30. package/build/.spruce/errors/spruceCli/missingDependencies.schema.js.map +1 -1
  31. package/build/.spruce/errors/spruceCli/missingDependenciesDependency.schema.js.map +1 -1
  32. package/build/.spruce/errors/spruceCli/noOrganizationsFound.schema.js.map +1 -1
  33. package/build/.spruce/errors/spruceCli/noSkillsRegistered.schema.js.map +1 -1
  34. package/build/.spruce/errors/spruceCli/notImplemented.schema.js.map +1 -1
  35. package/build/.spruce/errors/spruceCli/notLoggedIn.schema.js.map +1 -1
  36. package/build/.spruce/errors/spruceCli/schemaExists.schema.js.map +1 -1
  37. package/build/.spruce/errors/spruceCli/schemaFailedToImport.schema.js.map +1 -1
  38. package/build/.spruce/errors/spruceCli/schemaTemplateItemBuildingFailed.schema.js.map +1 -1
  39. package/build/.spruce/errors/spruceCli/skillNotFound.schema.js.map +1 -1
  40. package/build/.spruce/errors/spruceCli/skillNotRegistered.schema.js.map +1 -1
  41. package/build/.spruce/errors/spruceCli/skillViewExists.schema.js.map +1 -1
  42. package/build/.spruce/errors/spruceCli/storeExists.schema.js.map +1 -1
  43. package/build/.spruce/errors/spruceCli/testFailed.schema.js.map +1 -1
  44. package/build/.spruce/errors/spruceCli/themeExists.schema.js.map +1 -1
  45. package/build/.spruce/errors/spruceCli/transportAlreadyExists.schema.js.map +1 -1
  46. package/build/.spruce/errors/spruceCli/viewPluginAlreadyExists.schema.d.ts +3 -0
  47. package/build/.spruce/errors/spruceCli/viewPluginAlreadyExists.schema.js +23 -0
  48. package/build/.spruce/errors/spruceCli/viewPluginAlreadyExists.schema.js.map +1 -0
  49. package/build/.spruce/errors/spruceCli/vscodeNotInstalled.schema.js.map +1 -1
  50. package/build/.spruce/events/events.contract.js.map +1 -1
  51. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
  52. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
  53. package/build/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.js.map +1 -1
  54. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
  55. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js.map +1 -1
  56. package/build/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.js.map +1 -1
  57. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
  58. package/build/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.js.map +1 -1
  59. package/build/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.js.map +1 -1
  60. package/build/.spruce/schemas/fields/fieldClassMap.js.map +1 -1
  61. package/build/.spruce/schemas/fields/fields.types.js.map +1 -1
  62. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitPayload.schema.js.map +1 -1
  63. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTarget.schema.js.map +1 -1
  64. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  65. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitPayload.schema.js.map +1 -1
  66. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTarget.schema.js.map +1 -1
  67. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTargetAndPayload.schema.js.map +1 -1
  68. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlResponsePayload.schema.js.map +1 -1
  69. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTarget.schema.js.map +1 -1
  70. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeEmitTargetAndPayload.schema.js.map +1 -1
  71. package/build/.spruce/schemas/heartwood/v2021_02_11/getActiveThemeResponsePayload.schema.js.map +1 -1
  72. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  73. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsResponsePayload.schema.js.map +1 -1
  74. package/build/.spruce/schemas/heartwood/v2021_02_11/getViewControllersEmitTarget.schema.js.map +1 -1
  75. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js.map +1 -1
  76. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js.map +1 -1
  77. package/build/.spruce/schemas/heartwood/v2021_02_11/registerDashboardCardsResponsePayload.schema.js.map +1 -1
  78. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitPayload.schema.js.map +1 -1
  79. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  80. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsResponsePayload.schema.js.map +1 -1
  81. package/build/.spruce/schemas/heartwood/v2021_02_11/theme.schema.js.map +1 -1
  82. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitPayload.schema.js.map +1 -1
  83. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTarget.schema.js.map +1 -1
  84. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeEmitTargetAndPayload.schema.js.map +1 -1
  85. package/build/.spruce/schemas/heartwood/v2021_02_11/upsertThemeResponsePayload.schema.js.map +1 -1
  86. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/theme.schema.js.map +1 -1
  87. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/themeProps.schema.js.map +1 -1
  88. package/build/.spruce/schemas/schemas.types.js.map +1 -1
  89. package/build/.spruce/schemas/spruce/v2020_07_22/choice.schema.js.map +1 -1
  90. package/build/.spruce/schemas/spruce/v2020_07_22/link.schema.js.map +1 -1
  91. package/build/.spruce/schemas/spruce/v2020_07_22/location.schema.js.map +1 -1
  92. package/build/.spruce/schemas/spruce/v2020_07_22/message.schema.js.map +1 -1
  93. package/build/.spruce/schemas/spruce/v2020_07_22/messageSource.schema.js.map +1 -1
  94. package/build/.spruce/schemas/spruce/v2020_07_22/messageTarget.schema.js.map +1 -1
  95. package/build/.spruce/schemas/spruce/v2020_07_22/organization.schema.js.map +1 -1
  96. package/build/.spruce/schemas/spruce/v2020_07_22/person.schema.js.map +1 -1
  97. package/build/.spruce/schemas/spruce/v2020_07_22/personLocation.schema.js.map +1 -1
  98. package/build/.spruce/schemas/spruce/v2020_07_22/personOrganization.schema.js.map +1 -1
  99. package/build/.spruce/schemas/spruce/v2020_07_22/role.schema.js.map +1 -1
  100. package/build/.spruce/schemas/spruce/v2020_07_22/sendMessage.schema.js.map +1 -1
  101. package/build/.spruce/schemas/spruce/v2020_07_22/skill.schema.js.map +1 -1
  102. package/build/.spruce/schemas/spruce/v2020_07_22/skillCreator.schema.js.map +1 -1
  103. package/build/.spruce/schemas/spruceCli/v2020_07_22/actionResponse.schema.js.map +1 -1
  104. package/build/.spruce/schemas/spruceCli/v2020_07_22/bootSkillOptions.schema.js.map +1 -1
  105. package/build/.spruce/schemas/spruceCli/v2020_07_22/createConversationTopicOptions.schema.js.map +1 -1
  106. package/build/.spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema.js.map +1 -1
  107. package/build/.spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema.js.map +1 -1
  108. package/build/.spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema.js.map +1 -1
  109. package/build/.spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema.js.map +1 -1
  110. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedDir.schema.js.map +1 -1
  111. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedFile.schema.js.map +1 -1
  112. package/build/.spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema.js.map +1 -1
  113. package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js.map +1 -1
  114. package/build/.spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema.js.map +1 -1
  115. package/build/.spruce/schemas/spruceCli/v2020_07_22/nodeFeatureOptions.schema.js.map +1 -1
  116. package/build/.spruce/schemas/spruceCli/v2020_07_22/npmPackage.schema.js.map +1 -1
  117. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboardOptions.schema.js.map +1 -1
  118. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboarding.schema.js.map +1 -1
  119. package/build/.spruce/schemas/spruceCli/v2020_07_22/personWithToken.schema.js.map +1 -1
  120. package/build/.spruce/schemas/spruceCli/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.schema.js.map +1 -1
  121. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js.map +1 -1
  122. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema.js.map +1 -1
  123. package/build/.spruce/schemas/spruceCli/v2020_07_22/skillFeature.schema.js.map +1 -1
  124. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema.js.map +1 -1
  125. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema.js.map +1 -1
  126. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema.js.map +1 -1
  127. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema.js.map +1 -1
  128. package/build/.spruce/schemas/spruceCli/v2020_07_22/testOptions.schema.js.map +1 -1
  129. package/build/.spruce/schemas/spruceCli/v2020_07_22/upgradeSkillOptions.schema.js.map +1 -1
  130. package/build/.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema.js.map +1 -1
  131. package/build/.spruce/schemas/spruceEventUtils/v2021_09_13/eventSource.schema.js.map +1 -1
  132. package/build/.spruce/skill.types.js.map +1 -1
  133. package/build/GlobalEmitter.js.map +1 -1
  134. package/build/InFlightEntertainment.js.map +1 -1
  135. package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
  136. package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
  137. package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
  138. package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
  139. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
  140. package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
  141. package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
  142. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
  143. package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
  144. package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
  145. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
  146. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
  147. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
  148. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
  149. package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
  150. package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
  151. package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
  152. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
  153. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
  154. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
  155. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
  156. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
  157. package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
  158. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
  159. package/build/__tests__/behavioral/events/EventWriter.test.js.map +1 -1
  160. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
  161. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
  162. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
  163. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
  164. package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js.map +1 -1
  165. package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js.map +1 -1
  166. package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js.map +1 -1
  167. package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
  168. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
  169. package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
  170. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
  171. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
  172. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
  173. package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
  174. package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js.map +1 -1
  175. package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
  176. package/build/__tests__/behavioral/permissions/PermissionWriter.test.js.map +1 -1
  177. package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
  178. package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js.map +1 -1
  179. package/build/__tests__/behavioral/permissions/support/generateShortAlphaId.js.map +1 -1
  180. package/build/__tests__/behavioral/permissions/support/renderPermissionTestFile.js.map +1 -1
  181. package/build/__tests__/behavioral/permissions/support/sortPermissionContracts.js.map +1 -1
  182. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
  183. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
  184. package/build/__tests__/behavioral/polish/SettingUpPolish.test.js.map +1 -1
  185. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
  186. package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js.map +1 -1
  187. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
  188. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
  189. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
  190. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
  191. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
  192. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
  193. package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
  194. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
  195. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
  196. package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
  197. package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
  198. package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js.map +1 -1
  199. package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js.map +1 -1
  200. package/build/__tests__/behavioral/skill/RebuildingASkill.test.js.map +1 -1
  201. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
  202. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
  203. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
  204. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
  205. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  206. package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
  207. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
  208. package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js.map +1 -1
  209. package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
  210. package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js.map +1 -1
  211. package/build/__tests__/behavioral/tests/TestingDataStores.test.js.map +1 -1
  212. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
  213. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
  214. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
  215. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
  216. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
  217. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
  218. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
  219. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
  220. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
  221. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
  222. package/build/__tests__/behavioral/views/CreatingASkillView.test.d.ts +1 -1
  223. package/build/__tests__/behavioral/views/CreatingASkillView.test.js +6 -6
  224. package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
  225. package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
  226. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.d.ts +1 -1
  227. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js +6 -6
  228. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
  229. package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js.map +1 -1
  230. package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
  231. package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
  232. package/build/__tests__/behavioral/views/WatchingSkillViews.test.js.map +1 -1
  233. package/build/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.d.ts +23 -0
  234. package/build/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.js +355 -0
  235. package/build/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.js.map +1 -0
  236. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
  237. package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
  238. package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
  239. package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
  240. package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
  241. package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
  242. package/build/__tests__/implementation/BuildService.test.js.map +1 -1
  243. package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
  244. package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
  245. package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
  246. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
  247. package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
  248. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
  249. package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
  250. package/build/__tests__/implementation/EventStore.test.js.map +1 -1
  251. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
  252. package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
  253. package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
  254. package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
  255. package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
  256. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
  257. package/build/__tests__/implementation/GlobalEmitter.test.js.map +1 -1
  258. package/build/__tests__/implementation/Introspection.test.js.map +1 -1
  259. package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
  260. package/build/__tests__/implementation/LintService.test.js.map +1 -1
  261. package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
  262. package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
  263. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
  264. package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
  265. package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
  266. package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
  267. package/build/__tests__/implementation/PkgService.test.js.map +1 -1
  268. package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
  269. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
  270. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
  271. package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
  272. package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
  273. package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
  274. package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
  275. package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
  276. package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
  277. package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
  278. package/build/__tests__/implementation/Widgets.test.js.map +1 -1
  279. package/build/__tests__/support/EventFaker.js.map +1 -1
  280. package/build/__tests__/support/onTestFileResult.js.map +1 -1
  281. package/build/__tests__/support/scripts/first.script.js.map +1 -1
  282. package/build/__tests__/support/scripts/second.script.js.map +1 -1
  283. package/build/__tests__/support/scripts/third.test.script.js.map +1 -1
  284. package/build/addons/filePrompt.addon.js.map +1 -1
  285. package/build/boot.js.map +1 -1
  286. package/build/cli/Cli.js.map +1 -1
  287. package/build/components/AbstractComponent.js.map +1 -1
  288. package/build/components/FormComponent.js.map +1 -1
  289. package/build/components/QuizComponent.js.map +1 -1
  290. package/build/constants.js.map +1 -1
  291. package/build/errors/SpruceError.js +3 -0
  292. package/build/errors/SpruceError.js.map +1 -1
  293. package/build/errors/actionCancelled.builder.js.map +1 -1
  294. package/build/errors/bootError.builder.js.map +1 -1
  295. package/build/errors/buildFailed.builder.js.map +1 -1
  296. package/build/errors/cacheNotEnabled.builder.js.map +1 -1
  297. package/build/errors/commandAborted.builder.js.map +1 -1
  298. package/build/errors/commandBlocked.builder.js.map +1 -1
  299. package/build/errors/commandNotImplemented.builder.js.map +1 -1
  300. package/build/errors/createAutoloaderFailed.builder.js.map +1 -1
  301. package/build/errors/dependencyExists.builder.js.map +1 -1
  302. package/build/errors/deployFailed.builder.js.map +1 -1
  303. package/build/errors/directoryEmpty.builder.js.map +1 -1
  304. package/build/errors/directoryNotSkill.builder.js.map +1 -1
  305. package/build/errors/dockerNotStarted.builder.js.map +1 -1
  306. package/build/errors/executingCommandFailed.builder.js.map +1 -1
  307. package/build/errors/failedToImport.builder.js.map +1 -1
  308. package/build/errors/featureNotInstalled.builder.js.map +1 -1
  309. package/build/errors/fileExists.builder.js.map +1 -1
  310. package/build/errors/generic.builder.js.map +1 -1
  311. package/build/errors/invalidCommand.builder.js.map +1 -1
  312. package/build/errors/invalidEventContract.builder.js.map +1 -1
  313. package/build/errors/invalidFeatureCode.builder.js.map +1 -1
  314. package/build/errors/invalidTestDirectory.builder.js.map +1 -1
  315. package/build/errors/lintFailed.builder.js.map +1 -1
  316. package/build/errors/mercuryResponseError.builder.js.map +1 -1
  317. package/build/errors/missingDependencies.builder.js.map +1 -1
  318. package/build/errors/noOrganizationsFound.builder.js.map +1 -1
  319. package/build/errors/noSkillsRegistered.builder.js.map +1 -1
  320. package/build/errors/notImplemented.builder.js.map +1 -1
  321. package/build/errors/notLoggedIn.builder.js.map +1 -1
  322. package/build/errors/schemaExists.builder.js.map +1 -1
  323. package/build/errors/schemaFailedToImport.builder.js.map +1 -1
  324. package/build/errors/schemaTemplateItemBuildingFailed.builder.js.map +1 -1
  325. package/build/errors/skillNotFound.builder.js.map +1 -1
  326. package/build/errors/skillNotRegistered.builder.js.map +1 -1
  327. package/build/errors/skillViewExists.builder.js.map +1 -1
  328. package/build/errors/storeExists.builder.js.map +1 -1
  329. package/build/errors/testFailed.builder.js.map +1 -1
  330. package/build/errors/themeExists.builder.js.map +1 -1
  331. package/build/errors/transportAlreadyExists.builder.js.map +1 -1
  332. package/build/errors/viewPluginAlreadyExists.builder.d.ts +11 -0
  333. package/build/errors/viewPluginAlreadyExists.builder.js +18 -0
  334. package/build/errors/viewPluginAlreadyExists.builder.js.map +1 -0
  335. package/build/errors/vscodeNotInstalled.builder.js.map +1 -1
  336. package/build/features/AbstractAction.js.map +1 -1
  337. package/build/features/AbstractFeature.js.map +1 -1
  338. package/build/features/ActionExecuter.js.map +1 -1
  339. package/build/features/ActionFactory.js.map +1 -1
  340. package/build/features/ActionQuestionAsker.js.map +1 -1
  341. package/build/features/FeatureCommandAttacher.js.map +1 -1
  342. package/build/features/FeatureInstaller.js.map +1 -1
  343. package/build/features/FeatureInstallerFactory.js.map +1 -1
  344. package/build/features/OverrideActionDecorator.js.map +1 -1
  345. package/build/features/cache/CacheFeature.js.map +1 -1
  346. package/build/features/cache/actions/DisableAction.js.map +1 -1
  347. package/build/features/cache/actions/EnableAction.js.map +1 -1
  348. package/build/features/cache/constants.js.map +1 -1
  349. package/build/features/conversation/ConversationFeature.js.map +1 -1
  350. package/build/features/conversation/actions/CreateAction.js.map +1 -1
  351. package/build/features/conversation/actions/TestAction.js.map +1 -1
  352. package/build/features/conversation/stores/ConversationStore.js.map +1 -1
  353. package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
  354. package/build/features/dependencies/DependencyFeature.js.map +1 -1
  355. package/build/features/dependencies/actions/AddAction.js.map +1 -1
  356. package/build/features/dependencies/actions/ManageAction.js.map +1 -1
  357. package/build/features/deploy/DeployFeature.js.map +1 -1
  358. package/build/features/deploy/actions/HerokuAction.js.map +1 -1
  359. package/build/features/deploy/writers/DeployWriter.js.map +1 -1
  360. package/build/features/error/ErrorFeature.js.map +1 -1
  361. package/build/features/error/ParentTestFinder.js.map +1 -1
  362. package/build/features/error/actions/CreateAction.js.map +1 -1
  363. package/build/features/error/actions/SyncAction.js.map +1 -1
  364. package/build/features/error/writers/ErrorWriter.js.map +1 -1
  365. package/build/features/event/EventFeature.js.map +1 -1
  366. package/build/features/event/actions/CreateAction.js.map +1 -1
  367. package/build/features/event/actions/ListenAction.js.map +1 -1
  368. package/build/features/event/actions/SetRemoteAction.js.map +1 -1
  369. package/build/features/event/actions/SyncAction.js.map +1 -1
  370. package/build/features/event/actions/SyncListenersAction.js.map +1 -1
  371. package/build/features/event/builders/EventContractBuilder.js.map +1 -1
  372. package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
  373. package/build/features/event/services/EventSettingsService.js.map +1 -1
  374. package/build/features/event/services/RemoteService.js.map +1 -1
  375. package/build/features/event/stores/EventStore.js.map +1 -1
  376. package/build/features/event/stores/ListenerStore.js.map +1 -1
  377. package/build/features/event/writers/EventWriter.js.map +1 -1
  378. package/build/features/eventContract/EventContractFeature.js.map +1 -1
  379. package/build/features/eventContract/actions/PullAction.js.map +1 -1
  380. package/build/features/feature.utilities.js.map +1 -1
  381. package/build/features/features.types.js.map +1 -1
  382. package/build/features/log/LogFeature.js.map +1 -1
  383. package/build/features/log/actions/CreateTransportAction.js.map +1 -1
  384. package/build/features/log/writers/LogWriter.js.map +1 -1
  385. package/build/features/node/NodeFeature.js.map +1 -1
  386. package/build/features/node/actions/CreateAction.js.map +1 -1
  387. package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
  388. package/build/features/node/actions/UpgradeAction.js.map +1 -1
  389. package/build/features/node/writers/NodeWriter.js.map +1 -1
  390. package/build/features/onboard/OnboardFeature.js.map +1 -1
  391. package/build/features/onboard/ScriptLoader.js.map +1 -1
  392. package/build/features/onboard/ScriptPlayer.js.map +1 -1
  393. package/build/features/onboard/actions/OnboardAction.js.map +1 -1
  394. package/build/features/onboard/scripts/onboarding.first.script.js.map +1 -1
  395. package/build/features/onboard/scripts/onboarding.immersive.script.js.map +1 -1
  396. package/build/features/onboard/scripts/onboarding.returning.script.js.map +1 -1
  397. package/build/features/onboard/scripts/onboarding.short.script.js.map +1 -1
  398. package/build/features/onboard/scripts/todo/todo.create.skill.script.js.map +1 -1
  399. package/build/features/onboard/scripts/todo/todo.test.script.js.map +1 -1
  400. package/build/features/onboard/scripts/wrongCommand.script.js.map +1 -1
  401. package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
  402. package/build/features/organization/OrganizationFeature.js.map +1 -1
  403. package/build/features/organization/actions/CreateAction.js.map +1 -1
  404. package/build/features/organization/actions/InstallAction.js.map +1 -1
  405. package/build/features/organization/stores/OrganizationStore.js.map +1 -1
  406. package/build/features/permission/PermissionFeature.js.map +1 -1
  407. package/build/features/permission/actions/CreateAction.js.map +1 -1
  408. package/build/features/permission/actions/SyncAction.js.map +1 -1
  409. package/build/features/permission/stores/PermissionStore.js.map +1 -1
  410. package/build/features/permission/writers/PermissionWriter.js.map +1 -1
  411. package/build/features/person/PersonFeature.js.map +1 -1
  412. package/build/features/person/actions/LoginAction.js.map +1 -1
  413. package/build/features/person/actions/LogoutAction.js.map +1 -1
  414. package/build/features/person/actions/WhoamiAction.js.map +1 -1
  415. package/build/features/polish/PolishFeature.js.map +1 -1
  416. package/build/features/polish/actions/SetupAction.js.map +1 -1
  417. package/build/features/polish/writers/PolishWriter.js.map +1 -1
  418. package/build/features/sandbox/SandboxFeature.js.map +1 -1
  419. package/build/features/sandbox/actions/SetupAction.js.map +1 -1
  420. package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
  421. package/build/features/schema/SchemaFeature.js.map +1 -1
  422. package/build/features/schema/ValueTypeBuilder.js.map +1 -1
  423. package/build/features/schema/actions/CreateAction.js.map +1 -1
  424. package/build/features/schema/actions/SyncAction.js.map +1 -1
  425. package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
  426. package/build/features/schema/services/SchemaService.js.map +1 -1
  427. package/build/features/schema/stores/SchemaStore.js.map +1 -1
  428. package/build/features/schema/utilities/schema.utility.js.map +1 -1
  429. package/build/features/schema/utilities/schemaDisk.utility.js.map +1 -1
  430. package/build/features/schema/utilities/schemaGenerator.utility.js.map +1 -1
  431. package/build/features/schema/writers/SchemaWriter.js.map +1 -1
  432. package/build/features/skill/SkillFeature.js.map +1 -1
  433. package/build/features/skill/actions/BootAction.js.map +1 -1
  434. package/build/features/skill/actions/CreateAction.js.map +1 -1
  435. package/build/features/skill/actions/DashboardAction.js.map +1 -1
  436. package/build/features/skill/actions/LoginAction.js.map +1 -1
  437. package/build/features/skill/actions/RebuildAction.js.map +1 -1
  438. package/build/features/skill/actions/RegisterAction.js.map +1 -1
  439. package/build/features/skill/stores/SkillStore.js.map +1 -1
  440. package/build/features/skill/updaters/Updater.js.map +1 -1
  441. package/build/features/skill/writers/SkillWriter.js.map +1 -1
  442. package/build/features/store/StoreFeature.js.map +1 -1
  443. package/build/features/store/actions/CreateAction.js.map +1 -1
  444. package/build/features/store/actions/SyncAction.js.map +1 -1
  445. package/build/features/store/stores/StoreStore.js.map +1 -1
  446. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
  447. package/build/features/store/writers/StoreWriter.js.map +1 -1
  448. package/build/features/test/TestFeature.js.map +1 -1
  449. package/build/features/test/TestLogItemGenerator.js.map +1 -1
  450. package/build/features/test/TestReporter.js.map +1 -1
  451. package/build/features/test/TestRunner.js.map +1 -1
  452. package/build/features/test/actions/CreateAction.js.map +1 -1
  453. package/build/features/test/actions/SetupAction.js.map +1 -1
  454. package/build/features/test/actions/TestAction.js.map +1 -1
  455. package/build/features/test/test.types.js.map +1 -1
  456. package/build/features/test/writers/TestWriter.js.map +1 -1
  457. package/build/features/universalDevDependencies.js.map +1 -1
  458. package/build/features/universalFileDescriptions.js.map +1 -1
  459. package/build/features/universalScripts.js.map +1 -1
  460. package/build/features/validateAndNormalize.utility.js.map +1 -1
  461. package/build/features/view/ViewFeature.js.map +1 -1
  462. package/build/features/view/actions/CreateAction.d.ts +6 -6
  463. package/build/features/view/actions/CreateAction.js +59 -59
  464. package/build/features/view/actions/CreateAction.js.map +1 -1
  465. package/build/features/view/actions/CreatePluginAction.d.ts +56 -0
  466. package/build/features/view/actions/CreatePluginAction.js +95 -0
  467. package/build/features/view/actions/CreatePluginAction.js.map +1 -0
  468. package/build/features/view/actions/CreateThemeAction.js.map +1 -1
  469. package/build/features/view/actions/SyncAction.d.ts +6 -6
  470. package/build/features/view/actions/SyncAction.js +29 -15
  471. package/build/features/view/actions/SyncAction.js.map +1 -1
  472. package/build/features/view/actions/WatchAction.js.map +1 -1
  473. package/build/features/view/stores/ViewStore.js.map +1 -1
  474. package/build/features/view/writers/ViewWriter.d.ts +5 -0
  475. package/build/features/view/writers/ViewWriter.js +44 -7
  476. package/build/features/view/writers/ViewWriter.js.map +1 -1
  477. package/build/features/vscode/VsCodeFeature.js.map +1 -1
  478. package/build/features/vscode/actions/SetupAction.js.map +1 -1
  479. package/build/features/vscode/services/VsCodeService.js.map +1 -1
  480. package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
  481. package/build/features/watch/WatchFeature.js.map +1 -1
  482. package/build/index.js.map +1 -1
  483. package/build/interfaces/SpyInterface.js.map +1 -1
  484. package/build/interfaces/TerminalInterface.js.map +1 -1
  485. package/build/schemas/v2020_07_22/actionResponse.builder.js.map +1 -1
  486. package/build/schemas/v2020_07_22/bootSkillOptions.builder.js.map +1 -1
  487. package/build/schemas/v2020_07_22/createConversationTopicOptions.builder.js.map +1 -1
  488. package/build/schemas/v2020_07_22/createErrorOptions.builder.js.map +1 -1
  489. package/build/schemas/v2020_07_22/createOrganizationOptions.builder.js.map +1 -1
  490. package/build/schemas/v2020_07_22/createSchemaOptions.builder.js.map +1 -1
  491. package/build/schemas/v2020_07_22/createTestOptions.builder.js.map +1 -1
  492. package/build/schemas/v2020_07_22/generatedFile.builder.js.map +1 -1
  493. package/build/schemas/v2020_07_22/installSkillAtOrganizationOptions.builder.js.map +1 -1
  494. package/build/schemas/v2020_07_22/listenEventOptions.builder.js.map +1 -1
  495. package/build/schemas/v2020_07_22/namedTemplateItem.builder.js.map +1 -1
  496. package/build/schemas/v2020_07_22/nodeFeatureOptions.builder.js.map +1 -1
  497. package/build/schemas/v2020_07_22/onboardOptions.builder.js.map +1 -1
  498. package/build/schemas/v2020_07_22/onboarding.builder.js.map +1 -1
  499. package/build/schemas/v2020_07_22/personWithToken.builder.js.map +1 -1
  500. package/build/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.js.map +1 -1
  501. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js.map +1 -1
  502. package/build/schemas/v2020_07_22/setupVscodeOptions.builder.js.map +1 -1
  503. package/build/schemas/v2020_07_22/skillFeature.builder.js.map +1 -1
  504. package/build/schemas/v2020_07_22/syncErrorOptions.builder.js.map +1 -1
  505. package/build/schemas/v2020_07_22/syncEventOptions.builder.js.map +1 -1
  506. package/build/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.js.map +1 -1
  507. package/build/schemas/v2020_07_22/syncSchemasOptions.builder.js.map +1 -1
  508. package/build/schemas/v2020_07_22/testOptions.builder.js.map +1 -1
  509. package/build/schemas/v2020_07_22/upgradeSkillOptions.builder.js.map +1 -1
  510. package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js.map +1 -1
  511. package/build/services/BuildService.js.map +1 -1
  512. package/build/services/CommandService.js.map +1 -1
  513. package/build/services/DependencyService.js.map +1 -1
  514. package/build/services/GameService.js.map +1 -1
  515. package/build/services/ImportService.js.map +1 -1
  516. package/build/services/LintService.js.map +1 -1
  517. package/build/services/PkgService.js.map +1 -1
  518. package/build/services/ServiceFactory.js.map +1 -1
  519. package/build/services/TypeCheckerService.js.map +1 -1
  520. package/build/stores/AbstractLocalStore.js.map +1 -1
  521. package/build/stores/AbstractStore.js.map +1 -1
  522. package/build/stores/StoreFactory.js.map +1 -1
  523. package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
  524. package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
  525. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
  526. package/build/tests/AbstractCliTest.js.map +1 -1
  527. package/build/tests/AbstractErrorTest.js.map +1 -1
  528. package/build/tests/AbstractEventTest.js.map +1 -1
  529. package/build/tests/AbstractSchemaTest.js.map +1 -1
  530. package/build/tests/AbstractSkillTest.js.map +1 -1
  531. package/build/tests/AbstractTestTest.js.map +1 -1
  532. package/build/tests/CommandFaker.js.map +1 -1
  533. package/build/tests/JestJsonParser.js.map +1 -1
  534. package/build/tests/MockProgramFactory.js.map +1 -1
  535. package/build/tests/buildTestCache.js.map +1 -1
  536. package/build/tests/cleanTestCache.js.map +1 -1
  537. package/build/tests/cleanTestData.js.map +1 -1
  538. package/build/tests/constants.js.map +1 -1
  539. package/build/tests/fixtures/FeatureFixture.js.map +1 -1
  540. package/build/tests/fixtures/MercuryFixture.js.map +1 -1
  541. package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
  542. package/build/tests/fixtures/PersonFixture.js.map +1 -1
  543. package/build/tests/fixtures/SkillFixture.js.map +1 -1
  544. package/build/tests/fixtures/ViewFixture.js.map +1 -1
  545. package/build/tests/utilities/test.utility.js.map +1 -1
  546. package/build/tests/utilities/uiAssert.utility.js.map +1 -1
  547. package/build/types/apiClient.types.js.map +1 -1
  548. package/build/types/cli.types.js.map +1 -1
  549. package/build/types/graphicsInterface.types.js.map +1 -1
  550. package/build/updaters/ScriptUpdater.js.map +1 -1
  551. package/build/utilities/action.utility.js.map +1 -1
  552. package/build/utilities/apiClient.utility.js.map +1 -1
  553. package/build/utilities/argParser.utility.js.map +1 -1
  554. package/build/utilities/commander.utility.js.map +1 -1
  555. package/build/utilities/duration.utility.js.map +1 -1
  556. package/build/utilities/eventContractCleaner.utility.js.map +1 -1
  557. package/build/utilities/form.utility.js.map +1 -1
  558. package/build/utilities/introspection.utility.js.map +1 -1
  559. package/build/utilities/isCi.js.map +1 -1
  560. package/build/utilities/tsConfig.utility.js.map +1 -1
  561. package/build/utilities/ui.utility.js.map +1 -1
  562. package/build/widgets/Theme.js.map +1 -1
  563. package/build/widgets/WidgetFactory.js.map +1 -1
  564. package/build/widgets/keySelectChoices.js.map +1 -1
  565. package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
  566. package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
  567. package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
  568. package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
  569. package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
  570. package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
  571. package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
  572. package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
  573. package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
  574. package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
  575. package/build/widgets/terminalKit/termKit.utility.js.map +1 -1
  576. package/build/widgets/types/button.types.js.map +1 -1
  577. package/build/widgets/types/factory.types.js.map +1 -1
  578. package/build/widgets/types/input.types.js.map +1 -1
  579. package/build/widgets/types/layout.types.js.map +1 -1
  580. package/build/widgets/types/menuBar.types.js.map +1 -1
  581. package/build/widgets/types/popup.types.js.map +1 -1
  582. package/build/widgets/types/progressBar.types.js.map +1 -1
  583. package/build/widgets/types/table.types.js.map +1 -1
  584. package/build/widgets/types/text.types.js.map +1 -1
  585. package/build/widgets/types/widgets.types.js.map +1 -1
  586. package/build/widgets/types/window.types.js.map +1 -1
  587. package/build/widgets/widget.utilities.js.map +1 -1
  588. package/build/writers/AbstractWriter.js.map +1 -1
  589. package/build/writers/WriterFactory.js.map +1 -1
  590. package/package.json +33 -33
  591. package/src/.spruce/errors/errors.types.ts +29 -0
  592. package/src/.spruce/errors/options.types.ts +4 -1
  593. package/src/.spruce/errors/spruceCli/viewPluginAlreadyExists.schema.ts +22 -0
  594. package/src/__tests__/behavioral/views/CreatingASkillView.test.ts +1 -1
  595. package/src/__tests__/behavioral/views/KeepingViewsInSync.test.ts +1 -1
  596. package/src/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.ts +161 -0
  597. package/src/errors/SpruceError.ts +4 -0
  598. package/src/errors/viewPluginAlreadyExists.builder.ts +12 -0
  599. package/src/features/view/actions/CreateAction.ts +72 -72
  600. package/src/features/view/actions/CreatePluginAction.ts +54 -0
  601. package/src/features/view/actions/SyncAction.ts +30 -14
  602. package/src/features/view/writers/ViewWriter.ts +45 -5
@@ -1 +1 @@
1
- {"version":3,"file":"HerokuAction.js","names":["_schema","require","_spruceSkillUtils","_SpruceError","_interopRequireDefault","_action","_AbstractAction2","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","optionsSchema","buildSchema","id","description","fields","teamName","type","label","isRequired","shouldRunSilently","isPrivate","shouldBuildAndLint","defaultValue","shouldRunTests","DeployAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","results","procResults","_this$validateAndNorm","skill","wrap","_callee$","_context","prev","next","assertRegisteredSkill","assertDependencies","assertLoggedInToHeroku","setupGitRepo","setupGitRemote","setupProcFile","sent","actionUtil","mergeActionResults","assertNoPendingGitChanges","t0","abrupt","errors","validateAndNormalizeOptions","buildAndLint","runTests","deploy","ui","clear","Service","getCurrentSkill","summaryLines","name","slug","apiKey","stop","execute","_x","SpruceError","code","stage","friendlyMessage","_deploy","_callee2","_callee2$","_context2","_assertNoPendingGitChanges","_callee3","_results$stdout","_results$stdout2","failed","_callee3$","_context3","stdout","toLowerCase","search","_setupGitRemote","_callee4","command","confirm","pass","pkg","skillName","_callee4$","_context4","get","prompt","namesUtil","toKebab","env","HOME","process","t1","t2","_setupProcFile","_callee5","procFile","_results$files","_callee5$","_context5","diskUtil","resolvePath","cwd","files","doesFileExist","writeFile","push","action","path","_setupGitRepo","_callee6","inRepo","_callee6$","_context6","_assertLoggedInToHeroku","_callee7","_callee7$","_context7","_assertDependencies","_callee8","missing","_callee8$","_context8","hint","dependencies","_runTests","_callee9","isTestInstalled","testResults","_callee9$","_context9","features","isInstalled","startLoading","Action","watchMode","shouldReportWhileRunning","_buildAndLint","_callee10","isSkillInstalled","buildResults","_callee10$","_context10","build","shouldFixLintFirst","AbstractAction"],"sources":["../../../../src/features/deploy/actions/HerokuAction.ts"],"sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { diskUtil, namesUtil, SkillAuth } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../../../errors/SpruceError'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'deployHeroku',\n\tdescription: 'Deploy your skill to Heroku.',\n\tfields: {\n\t\tteamName: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'team name',\n\t\t\tisRequired: false,\n\t\t},\n\t\tshouldRunSilently: {\n\t\t\ttype: 'boolean',\n\t\t\tisPrivate: true,\n\t\t},\n\t\tshouldBuildAndLint: {\n\t\t\ttype: 'boolean',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldRunTests: {\n\t\t\ttype: 'boolean',\n\t\t\tdefaultValue: true,\n\t\t},\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class DeployAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = optionsSchema\n\tpublic commandAliases = ['deploy.heroku']\n\tpublic invocationMessage = 'Deploying to Heroku... 🚀'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\ttry {\n\t\t\tthis.assertRegisteredSkill()\n\t\t\tawait this.assertDependencies()\n\t\t\tawait this.assertLoggedInToHeroku()\n\t\t\tawait this.setupGitRepo()\n\t\t\tawait this.setupGitRemote()\n\n\t\t\tconst procResults = await this.setupProcFile()\n\t\t\tresults = actionUtil.mergeActionResults(results, procResults)\n\n\t\t\tawait this.assertNoPendingGitChanges()\n\t\t} catch (err: any) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\n\t\tconst { shouldBuildAndLint, shouldRunTests } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tif (shouldBuildAndLint) {\n\t\t\tresults = await this.buildAndLint()\n\n\t\t\tif (results.errors) {\n\t\t\t\treturn results\n\t\t\t}\n\t\t}\n\n\t\tif (shouldRunTests) {\n\t\t\tresults = await this.runTests()\n\n\t\t\tif (results.errors) {\n\t\t\t\treturn results\n\t\t\t}\n\t\t}\n\n\t\tawait this.deploy()\n\n\t\tthis.ui.clear()\n\n\t\tconst skill = this.Service('auth').getCurrentSkill() as SkillAuth\n\n\t\tresults.summaryLines = [\n\t\t\t`You are good to go!`,\n\t\t\t\"You gotta make sure that your ENV's are set on Heroku to the following:\\n\",\n\t\t\t`SKILL_NAME=${skill.name}`,\n\t\t\t`SKILL_SLUG=${skill.slug}`,\n\t\t\t`SKILL_ID=${skill.id}`,\n\t\t\t`SKILL_API_KEY=${skill.apiKey}`,\n\t\t]\n\n\t\treturn results\n\t}\n\n\tprivate assertRegisteredSkill() {\n\t\tconst skill = this.Service('auth').getCurrentSkill()\n\t\tif (!skill) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'skill',\n\t\t\t\tfriendlyMessage:\n\t\t\t\t\t'You have to register your skill. Try `spruce login && spruce register` to get going!',\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async deploy() {\n\t\tawait this.Service('command').execute(\n\t\t\t'git push --set-upstream heroku master'\n\t\t)\n\t}\n\n\tprivate async assertNoPendingGitChanges() {\n\t\tconst results = await this.Service('command').execute('git status')\n\n\t\tconst failed =\n\t\t\t(results.stdout ?? '').toLowerCase().search('not staged') > -1 ||\n\t\t\t(results.stdout ?? '').toLowerCase().search('no commits') > -1\n\n\t\tif (failed) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'git',\n\t\t\t\tfriendlyMessage: 'You have pending changes. Commit them and try again!',\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async setupGitRemote() {\n\t\tconst command = this.Service('command')\n\n\t\ttry {\n\t\t\tawait command.execute('git ls-remote heroku')\n\n\t\t\treturn\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch {}\n\n\t\tconst confirm = await this.ui.confirm(\n\t\t\t`I didn't find a a remote named \"heroku\", want me to create one?`\n\t\t)\n\n\t\tif (!confirm) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'remote',\n\t\t\t\tfriendlyMessage:\n\t\t\t\t\t'You need to setup a remote named \"heroku\" that Heroku will pull from.',\n\t\t\t})\n\t\t}\n\n\t\tlet pass = false\n\t\tlet label =\n\t\t\t'What name do you wanna give your app on heroku (using-kebab-case)?'\n\n\t\tconst pkg = this.Service('pkg')\n\t\tconst skillName = pkg.get('name')\n\n\t\tdo {\n\t\t\tlet name = await this.ui.prompt({\n\t\t\t\ttype: 'text',\n\t\t\t\tlabel,\n\t\t\t\tdefaultValue: skillName,\n\t\t\t\tisRequired: true,\n\t\t\t})\n\n\t\t\tname = namesUtil.toKebab(name)\n\n\t\t\ttry {\n\t\t\t\tawait command.execute('heroku create', {\n\t\t\t\t\targs: [name],\n\t\t\t\t\tenv: { HOME: process.env.HOME },\n\t\t\t\t})\n\n\t\t\t\tpass = true\n\t\t\t} catch {\n\t\t\t\tlabel = `Uh oh, \"${name}\" is taken, try again!`\n\t\t\t}\n\t\t} while (!pass)\n\n\t\ttry {\n\t\t\tawait command.execute('heroku buildpacks:set heroku/nodejs', {\n\t\t\t\tenv: { HOME: process.env.HOME },\n\t\t\t})\n\t\t} catch {\n\t\t\tthrow new SpruceError({ code: 'DEPLOY_FAILED', stage: 'remote' })\n\t\t}\n\t}\n\n\tprivate async setupProcFile(): Promise<FeatureActionResponse> {\n\t\tconst procFile = diskUtil.resolvePath(this.cwd, 'Procfile')\n\t\tconst results: FeatureActionResponse = {\n\t\t\tfiles: [],\n\t\t}\n\t\tif (!diskUtil.doesFileExist(procFile)) {\n\t\t\tconst confirm = await this.ui.confirm(\n\t\t\t\t`I don't see a Procfile, which Heroku needs to know how to run your skill. Want me to create one?`\n\t\t\t)\n\t\t\tif (!confirm) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\t\tstage: 'procfile',\n\t\t\t\t\tfriendlyMessage:\n\t\t\t\t\t\t'You are gonna need to create a Procfile in your project root so heroku knows how to run your skill.',\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tdiskUtil.writeFile(procFile, 'worker: npm run boot')\n\t\t\tresults.files?.push({\n\t\t\t\tname: 'Procfile',\n\t\t\t\taction: 'generated',\n\t\t\t\tpath: procFile,\n\t\t\t\tdescription: 'Used by Heroku to know how to run your skill.',\n\t\t\t})\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async setupGitRepo() {\n\t\tconst command = this.Service('command')\n\n\t\tlet inRepo = true\n\t\ttry {\n\t\t\tawait command.execute('git status')\n\t\t} catch {\n\t\t\tinRepo = false\n\t\t}\n\n\t\tif (!inRepo) {\n\t\t\tconst confirm = await this.ui.confirm(\n\t\t\t\t'You are not in a git repo. Would you like to initialize one now?'\n\t\t\t)\n\n\t\t\ttry {\n\t\t\t\tif (confirm) {\n\t\t\t\t\tawait command.execute('git init')\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch {}\n\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'git',\n\t\t\t\tfriendlyMessage: 'You must be in a git repo to deploy!',\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic async assertLoggedInToHeroku() {\n\t\ttry {\n\t\t\tawait this.Service('command').execute('grep api.heroku.com ~/.netrc')\n\t\t} catch {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'heroku',\n\t\t\t\tfriendlyMessage: `You gotta be logged in using \\`heroku login\\` before you can deploy.!`,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async assertDependencies() {\n\t\tconst command = this.Service('command')\n\t\tconst missing: { name: string; hint: string }[] = []\n\n\t\ttry {\n\t\t\tawait command.execute('which heroku')\n\t\t} catch {\n\t\t\tmissing.push({\n\t\t\t\tname: 'heroku',\n\t\t\t\thint: 'Follow install instructions @ https://devcenter.heroku.com/articles/heroku-cli#download-and-install',\n\t\t\t})\n\t\t}\n\n\t\ttry {\n\t\t\tawait command.execute('which git')\n\t\t} catch {\n\t\t\tmissing.push({\n\t\t\t\tname: 'git',\n\t\t\t\thint: 'Follow install instructions @ https://git-scm.com/downloads',\n\t\t\t})\n\t\t}\n\n\t\tif (missing.length > 0) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'MISSING_DEPENDENCIES',\n\t\t\t\tdependencies: missing,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async runTests() {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tconst isTestInstalled = await this.features.isInstalled('test')\n\n\t\tif (isTestInstalled) {\n\t\t\ttry {\n\t\t\t\tthis.ui.startLoading('Testing your skill. Hold onto your pants. 👖')\n\n\t\t\t\tconst testResults = await this.Action('test', 'test').execute({\n\t\t\t\t\twatchMode: 'off',\n\t\t\t\t\tshouldReportWhileRunning: false,\n\t\t\t\t})\n\n\t\t\t\tresults = actionUtil.mergeActionResults(results, testResults)\n\t\t\t} catch (err) {\n\t\t\t\tresults = {\n\t\t\t\t\terrors: [\n\t\t\t\t\t\tnew SpruceError({ code: 'DEPLOY_FAILED', stage: 'testing' }),\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn results\n\t}\n\n\tprivate async buildAndLint() {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (isSkillInstalled) {\n\t\t\ttry {\n\t\t\t\tthis.ui.startLoading('Building your skill. This may take a minute...')\n\n\t\t\t\tconst buildResults = await this.Service('build').build({\n\t\t\t\t\tshouldFixLintFirst: true,\n\t\t\t\t})\n\n\t\t\t\tresults = actionUtil.mergeActionResults(results, buildResults)\n\t\t\t} catch (err) {\n\t\t\t\tresults = {\n\t\t\t\t\terrors: [\n\t\t\t\t\t\tnew SpruceError({ code: 'DEPLOY_FAILED', stage: 'building' }),\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn results\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"HerokuAction.js","names":["_schema","require","_spruceSkillUtils","_SpruceError","_interopRequireDefault","_action","_AbstractAction2","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","optionsSchema","buildSchema","id","description","fields","teamName","type","label","isRequired","shouldRunSilently","isPrivate","shouldBuildAndLint","defaultValue","shouldRunTests","DeployAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","results","procResults","_this$validateAndNorm","skill","wrap","_callee$","_context","prev","next","assertRegisteredSkill","assertDependencies","assertLoggedInToHeroku","setupGitRepo","setupGitRemote","setupProcFile","sent","actionUtil","mergeActionResults","assertNoPendingGitChanges","t0","abrupt","errors","validateAndNormalizeOptions","buildAndLint","runTests","deploy","ui","clear","Service","getCurrentSkill","summaryLines","name","slug","apiKey","stop","execute","_x","SpruceError","code","stage","friendlyMessage","_deploy","_callee2","_callee2$","_context2","_assertNoPendingGitChanges","_callee3","_results$stdout","_results$stdout2","failed","_callee3$","_context3","stdout","toLowerCase","search","_setupGitRemote","_callee4","command","confirm","pass","pkg","skillName","_callee4$","_context4","get","prompt","namesUtil","toKebab","env","HOME","process","t1","t2","_setupProcFile","_callee5","procFile","_results$files","_callee5$","_context5","diskUtil","resolvePath","cwd","files","doesFileExist","writeFile","push","action","path","_setupGitRepo","_callee6","inRepo","_callee6$","_context6","_assertLoggedInToHeroku","_callee7","_callee7$","_context7","_assertDependencies","_callee8","missing","_callee8$","_context8","hint","dependencies","_runTests","_callee9","isTestInstalled","testResults","_callee9$","_context9","features","isInstalled","startLoading","Action","watchMode","shouldReportWhileRunning","_buildAndLint","_callee10","isSkillInstalled","buildResults","_callee10$","_context10","build","shouldFixLintFirst","AbstractAction"],"sources":["../../../../src/features/deploy/actions/HerokuAction.ts"],"sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { diskUtil, namesUtil, SkillAuth } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../../../errors/SpruceError'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'deployHeroku',\n\tdescription: 'Deploy your skill to Heroku.',\n\tfields: {\n\t\tteamName: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'team name',\n\t\t\tisRequired: false,\n\t\t},\n\t\tshouldRunSilently: {\n\t\t\ttype: 'boolean',\n\t\t\tisPrivate: true,\n\t\t},\n\t\tshouldBuildAndLint: {\n\t\t\ttype: 'boolean',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldRunTests: {\n\t\t\ttype: 'boolean',\n\t\t\tdefaultValue: true,\n\t\t},\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class DeployAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = optionsSchema\n\tpublic commandAliases = ['deploy.heroku']\n\tpublic invocationMessage = 'Deploying to Heroku... 🚀'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\ttry {\n\t\t\tthis.assertRegisteredSkill()\n\t\t\tawait this.assertDependencies()\n\t\t\tawait this.assertLoggedInToHeroku()\n\t\t\tawait this.setupGitRepo()\n\t\t\tawait this.setupGitRemote()\n\n\t\t\tconst procResults = await this.setupProcFile()\n\t\t\tresults = actionUtil.mergeActionResults(results, procResults)\n\n\t\t\tawait this.assertNoPendingGitChanges()\n\t\t} catch (err: any) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\n\t\tconst { shouldBuildAndLint, shouldRunTests } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tif (shouldBuildAndLint) {\n\t\t\tresults = await this.buildAndLint()\n\n\t\t\tif (results.errors) {\n\t\t\t\treturn results\n\t\t\t}\n\t\t}\n\n\t\tif (shouldRunTests) {\n\t\t\tresults = await this.runTests()\n\n\t\t\tif (results.errors) {\n\t\t\t\treturn results\n\t\t\t}\n\t\t}\n\n\t\tawait this.deploy()\n\n\t\tthis.ui.clear()\n\n\t\tconst skill = this.Service('auth').getCurrentSkill() as SkillAuth\n\n\t\tresults.summaryLines = [\n\t\t\t`You are good to go!`,\n\t\t\t\"You gotta make sure that your ENV's are set on Heroku to the following:\\n\",\n\t\t\t`SKILL_NAME=${skill.name}`,\n\t\t\t`SKILL_SLUG=${skill.slug}`,\n\t\t\t`SKILL_ID=${skill.id}`,\n\t\t\t`SKILL_API_KEY=${skill.apiKey}`,\n\t\t]\n\n\t\treturn results\n\t}\n\n\tprivate assertRegisteredSkill() {\n\t\tconst skill = this.Service('auth').getCurrentSkill()\n\t\tif (!skill) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'skill',\n\t\t\t\tfriendlyMessage:\n\t\t\t\t\t'You have to register your skill. Try `spruce login && spruce register` to get going!',\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async deploy() {\n\t\tawait this.Service('command').execute(\n\t\t\t'git push --set-upstream heroku master'\n\t\t)\n\t}\n\n\tprivate async assertNoPendingGitChanges() {\n\t\tconst results = await this.Service('command').execute('git status')\n\n\t\tconst failed =\n\t\t\t(results.stdout ?? '').toLowerCase().search('not staged') > -1 ||\n\t\t\t(results.stdout ?? '').toLowerCase().search('no commits') > -1\n\n\t\tif (failed) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'git',\n\t\t\t\tfriendlyMessage: 'You have pending changes. Commit them and try again!',\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async setupGitRemote() {\n\t\tconst command = this.Service('command')\n\n\t\ttry {\n\t\t\tawait command.execute('git ls-remote heroku')\n\n\t\t\treturn\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch {}\n\n\t\tconst confirm = await this.ui.confirm(\n\t\t\t`I didn't find a a remote named \"heroku\", want me to create one?`\n\t\t)\n\n\t\tif (!confirm) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'remote',\n\t\t\t\tfriendlyMessage:\n\t\t\t\t\t'You need to setup a remote named \"heroku\" that Heroku will pull from.',\n\t\t\t})\n\t\t}\n\n\t\tlet pass = false\n\t\tlet label =\n\t\t\t'What name do you wanna give your app on heroku (using-kebab-case)?'\n\n\t\tconst pkg = this.Service('pkg')\n\t\tconst skillName = pkg.get('name')\n\n\t\tdo {\n\t\t\tlet name = await this.ui.prompt({\n\t\t\t\ttype: 'text',\n\t\t\t\tlabel,\n\t\t\t\tdefaultValue: skillName,\n\t\t\t\tisRequired: true,\n\t\t\t})\n\n\t\t\tname = namesUtil.toKebab(name)\n\n\t\t\ttry {\n\t\t\t\tawait command.execute('heroku create', {\n\t\t\t\t\targs: [name],\n\t\t\t\t\tenv: { HOME: process.env.HOME },\n\t\t\t\t})\n\n\t\t\t\tpass = true\n\t\t\t} catch {\n\t\t\t\tlabel = `Uh oh, \"${name}\" is taken, try again!`\n\t\t\t}\n\t\t} while (!pass)\n\n\t\ttry {\n\t\t\tawait command.execute('heroku buildpacks:set heroku/nodejs', {\n\t\t\t\tenv: { HOME: process.env.HOME },\n\t\t\t})\n\t\t} catch {\n\t\t\tthrow new SpruceError({ code: 'DEPLOY_FAILED', stage: 'remote' })\n\t\t}\n\t}\n\n\tprivate async setupProcFile(): Promise<FeatureActionResponse> {\n\t\tconst procFile = diskUtil.resolvePath(this.cwd, 'Procfile')\n\t\tconst results: FeatureActionResponse = {\n\t\t\tfiles: [],\n\t\t}\n\t\tif (!diskUtil.doesFileExist(procFile)) {\n\t\t\tconst confirm = await this.ui.confirm(\n\t\t\t\t`I don't see a Procfile, which Heroku needs to know how to run your skill. Want me to create one?`\n\t\t\t)\n\t\t\tif (!confirm) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\t\tstage: 'procfile',\n\t\t\t\t\tfriendlyMessage:\n\t\t\t\t\t\t'You are gonna need to create a Procfile in your project root so heroku knows how to run your skill.',\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tdiskUtil.writeFile(procFile, 'worker: npm run boot')\n\t\t\tresults.files?.push({\n\t\t\t\tname: 'Procfile',\n\t\t\t\taction: 'generated',\n\t\t\t\tpath: procFile,\n\t\t\t\tdescription: 'Used by Heroku to know how to run your skill.',\n\t\t\t})\n\t\t}\n\n\t\treturn results\n\t}\n\n\tprivate async setupGitRepo() {\n\t\tconst command = this.Service('command')\n\n\t\tlet inRepo = true\n\t\ttry {\n\t\t\tawait command.execute('git status')\n\t\t} catch {\n\t\t\tinRepo = false\n\t\t}\n\n\t\tif (!inRepo) {\n\t\t\tconst confirm = await this.ui.confirm(\n\t\t\t\t'You are not in a git repo. Would you like to initialize one now?'\n\t\t\t)\n\n\t\t\ttry {\n\t\t\t\tif (confirm) {\n\t\t\t\t\tawait command.execute('git init')\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch {}\n\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'git',\n\t\t\t\tfriendlyMessage: 'You must be in a git repo to deploy!',\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic async assertLoggedInToHeroku() {\n\t\ttry {\n\t\t\tawait this.Service('command').execute('grep api.heroku.com ~/.netrc')\n\t\t} catch {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPLOY_FAILED',\n\t\t\t\tstage: 'heroku',\n\t\t\t\tfriendlyMessage: `You gotta be logged in using \\`heroku login\\` before you can deploy.!`,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async assertDependencies() {\n\t\tconst command = this.Service('command')\n\t\tconst missing: { name: string; hint: string }[] = []\n\n\t\ttry {\n\t\t\tawait command.execute('which heroku')\n\t\t} catch {\n\t\t\tmissing.push({\n\t\t\t\tname: 'heroku',\n\t\t\t\thint: 'Follow install instructions @ https://devcenter.heroku.com/articles/heroku-cli#download-and-install',\n\t\t\t})\n\t\t}\n\n\t\ttry {\n\t\t\tawait command.execute('which git')\n\t\t} catch {\n\t\t\tmissing.push({\n\t\t\t\tname: 'git',\n\t\t\t\thint: 'Follow install instructions @ https://git-scm.com/downloads',\n\t\t\t})\n\t\t}\n\n\t\tif (missing.length > 0) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'MISSING_DEPENDENCIES',\n\t\t\t\tdependencies: missing,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate async runTests() {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tconst isTestInstalled = await this.features.isInstalled('test')\n\n\t\tif (isTestInstalled) {\n\t\t\ttry {\n\t\t\t\tthis.ui.startLoading('Testing your skill. Hold onto your pants. 👖')\n\n\t\t\t\tconst testResults = await this.Action('test', 'test').execute({\n\t\t\t\t\twatchMode: 'off',\n\t\t\t\t\tshouldReportWhileRunning: false,\n\t\t\t\t})\n\n\t\t\t\tresults = actionUtil.mergeActionResults(results, testResults)\n\t\t\t} catch (err) {\n\t\t\t\tresults = {\n\t\t\t\t\terrors: [\n\t\t\t\t\t\tnew SpruceError({ code: 'DEPLOY_FAILED', stage: 'testing' }),\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn results\n\t}\n\n\tprivate async buildAndLint() {\n\t\tlet results: FeatureActionResponse = {}\n\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (isSkillInstalled) {\n\t\t\ttry {\n\t\t\t\tthis.ui.startLoading('Building your skill. This may take a minute...')\n\n\t\t\t\tconst buildResults = await this.Service('build').build({\n\t\t\t\t\tshouldFixLintFirst: true,\n\t\t\t\t})\n\n\t\t\t\tresults = actionUtil.mergeActionResults(results, buildResults)\n\t\t\t} catch (err) {\n\t\t\t\tresults = {\n\t\t\t\t\terrors: [\n\t\t\t\t\t\tnew SpruceError({ code: 'DEPLOY_FAILED', stage: 'building' }),\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn results\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DeployWriter.js","names":["_spruceSkillUtils","require","_AbstractWriter2","_interopRequireDefault","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","DeployWriter","exports","_AbstractWriter","_inherits2","_classCallCheck2","arguments","_createClass2","key","value","writePlugin","cwd","destination","diskUtil","resolveHashSprucePath","pluginContents","templates","deployPlugin","results","writeFileIfChangedMixinResults","AbstractWriter"],"sources":["../../../../src/features/deploy/writers/DeployWriter.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractWriter from '../../../writers/AbstractWriter'\n\nexport default class DeployWriter extends AbstractWriter {\n\tpublic writePlugin(cwd: string) {\n\t\tconst destination = diskUtil.resolveHashSprucePath(\n\t\t\tcwd,\n\t\t\t'features',\n\t\t\t'deploy.plugin.ts'\n\t\t)\n\n\t\tconst pluginContents = this.templates.deployPlugin()\n\n\t\tconst results = this.writeFileIfChangedMixinResults(\n\t\t\tdestination,\n\t\t\tpluginContents,\n\t\t\t'Supports your skill with deploys!'\n\t\t)\n\n\t\treturn results\n\t}\n}\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA4D,SAAAG,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,IAEvCc,YAAY,GAAAC,OAAA,qCAAAC,eAAA;EAAA,IAAAC,UAAA,aAAAH,YAAA,EAAAE,eAAA;EAAA,SAAAF,aAAA;IAAA,IAAAI,gBAAA,mBAAAJ,YAAA;IAAA,OAAAf,UAAA,OAAAe,YAAA,EAAAK,SAAA;EAAA;EAAA,IAAAC,aAAA,aAAAN,YAAA;IAAAO,GAAA;IAAAC,KAAA,EAChC,SAAAC,YAAmBC,GAAW,EAAE;MAC/B,IAAMC,WAAW,GAAGC,0BAAQ,CAACC,qBAAqB,CACjDH,GAAG,EACH,UAAU,EACV,kBACD,CAAC;MAED,IAAMI,cAAc,GAAG,IAAI,CAACC,SAAS,CAACC,YAAY,CAAC,CAAC;MAEpD,IAAMC,OAAO,GAAG,IAAI,CAACC,8BAA8B,CAClDP,WAAW,EACXG,cAAc,EACd,mCACD,CAAC;MAED,OAAOG,OAAO;IACf;EAAC;EAAA,OAAAjB,YAAA;AAAA,EAjBwCmB,2BAAc"}
1
+ {"version":3,"file":"DeployWriter.js","names":["_spruceSkillUtils","require","_AbstractWriter2","_interopRequireDefault","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","DeployWriter","exports","_AbstractWriter","_inherits2","_classCallCheck2","arguments","_createClass2","key","value","writePlugin","cwd","destination","diskUtil","resolveHashSprucePath","pluginContents","templates","deployPlugin","results","writeFileIfChangedMixinResults","AbstractWriter"],"sources":["../../../../src/features/deploy/writers/DeployWriter.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractWriter from '../../../writers/AbstractWriter'\n\nexport default class DeployWriter extends AbstractWriter {\n\tpublic writePlugin(cwd: string) {\n\t\tconst destination = diskUtil.resolveHashSprucePath(\n\t\t\tcwd,\n\t\t\t'features',\n\t\t\t'deploy.plugin.ts'\n\t\t)\n\n\t\tconst pluginContents = this.templates.deployPlugin()\n\n\t\tconst results = this.writeFileIfChangedMixinResults(\n\t\t\tdestination,\n\t\t\tpluginContents,\n\t\t\t'Supports your skill with deploys!'\n\t\t)\n\n\t\treturn results\n\t}\n}\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA4D,SAAAG,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,IAEvCc,YAAY,GAAAC,OAAA,qCAAAC,eAAA;EAAA,IAAAC,UAAA,aAAAH,YAAA,EAAAE,eAAA;EAAA,SAAAF,aAAA;IAAA,IAAAI,gBAAA,mBAAAJ,YAAA;IAAA,OAAAf,UAAA,OAAAe,YAAA,EAAAK,SAAA;EAAA;EAAA,IAAAC,aAAA,aAAAN,YAAA;IAAAO,GAAA;IAAAC,KAAA,EAChC,SAAAC,YAAmBC,GAAW,EAAE;MAC/B,IAAMC,WAAW,GAAGC,0BAAQ,CAACC,qBAAqB,CACjDH,GAAG,EACH,UAAU,EACV,kBACD,CAAC;MAED,IAAMI,cAAc,GAAG,IAAI,CAACC,SAAS,CAACC,YAAY,CAAC,CAAC;MAEpD,IAAMC,OAAO,GAAG,IAAI,CAACC,8BAA8B,CAClDP,WAAW,EACXG,cAAc,EACd,mCACD,CAAC;MAED,OAAOG,OAAO;IACf;EAAC;EAAA,OAAAjB,YAAA;AAAA,EAjBwCmB,2BAAc","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorFeature.js","names":["_spruceSkillUtils","require","_AbstractFeature2","_interopRequireDefault","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ErrorFeature","exports","_AbstractFeature","_inherits2","options","_this","_classCallCheck2","_defineProperty2","_assertThisInitialized2","code","isRequired","name","diskUtil","resolvePath","__dirname","emitter","on","handleDidExecuteCommand","bind","_asyncToGenerator2","_regenerator","mark","_callee","isInstalled","wrap","_callee$","_context","prev","next","features","sent","abrupt","filesToSkip","stop","_createClass2","key","value","_afterPackageInstall","_callee2","isSkillInstalled","files","_callee2$","_context2","writePlugin","afterPackageInstall","arguments","_handleDidExecuteCommand","_callee3","payload","featureCode","actionCode","results","_results$files","plugin","_callee3$","_context3","Action","execute","push","_toConsumableArray2","_x","_writePlugin","_callee4","_callee4$","_context4","Writer","cwd","AbstractFeature"],"sources":["../../../src/features/error/ErrorFeature.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { NpmPackage } from '../../types/cli.types'\nimport AbstractFeature, {\n\tFeatureDependency,\n\tFeatureOptions,\n\tInstallResults,\n} from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\terror: ErrorFeature\n\t}\n\n\tinterface FeatureOptionsMap {\n\t\terror: undefined\n\t}\n}\n\nexport default class ErrorFeature extends AbstractFeature {\n\tpublic nameReadable = 'error handling'\n\tpublic description =\n\t\t'Errors: Use schemas to define your errors and get great type checking!'\n\tpublic code: FeatureCode = 'error'\n\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{ code: 'schema', isRequired: true },\n\t\t{ code: 'node', isRequired: true },\n\t]\n\tpublic packageDependencies: NpmPackage[] = [\n\t\t{\n\t\t\tname: '@sprucelabs/error@latest',\n\t\t},\n\t]\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic constructor(options: FeatureOptions) {\n\t\tsuper(options)\n\n\t\tvoid this.emitter.on(\n\t\t\t'feature.did-execute',\n\t\t\tthis.handleDidExecuteCommand.bind(this)\n\t\t)\n\n\t\tvoid this.emitter.on('skill.will-write-directory-template', async () => {\n\t\t\tconst isInstalled = await this.features.isInstalled('error')\n\t\t\tif (isInstalled) {\n\t\t\t\treturn {\n\t\t\t\t\tfilesToSkip: ['options.types.ts'],\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {}\n\t\t})\n\t}\n\n\tpublic async afterPackageInstall(): Promise<InstallResults> {\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (!isSkillInstalled) {\n\t\t\treturn {}\n\t\t}\n\n\t\tconst files = await this.writePlugin()\n\n\t\treturn {\n\t\t\tfiles,\n\t\t}\n\t}\n\n\tprivate async handleDidExecuteCommand(payload: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t}) {\n\t\tconst { featureCode, actionCode } = payload\n\n\t\tconst isInstalled = await this.features.isInstalled('error')\n\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (isInstalled && featureCode === 'node' && actionCode === 'upgrade') {\n\t\t\tconst results = await this.Action('error', 'sync').execute({})\n\n\t\t\tif (isSkillInstalled) {\n\t\t\t\tif (!results.files) {\n\t\t\t\t\tresults.files = []\n\t\t\t\t}\n\n\t\t\t\tconst plugin = await this.writePlugin()\n\t\t\t\tresults.files.push(...plugin)\n\t\t\t}\n\n\t\t\treturn results\n\t\t}\n\n\t\treturn {}\n\t}\n\tprivate async writePlugin() {\n\t\treturn this.Writer('error').writePlugin(this.cwd)\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ErrorFeature.js","names":["_spruceSkillUtils","require","_AbstractFeature2","_interopRequireDefault","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ErrorFeature","exports","_AbstractFeature","_inherits2","options","_this","_classCallCheck2","_defineProperty2","_assertThisInitialized2","code","isRequired","name","diskUtil","resolvePath","__dirname","emitter","on","handleDidExecuteCommand","bind","_asyncToGenerator2","_regenerator","mark","_callee","isInstalled","wrap","_callee$","_context","prev","next","features","sent","abrupt","filesToSkip","stop","_createClass2","key","value","_afterPackageInstall","_callee2","isSkillInstalled","files","_callee2$","_context2","writePlugin","afterPackageInstall","arguments","_handleDidExecuteCommand","_callee3","payload","featureCode","actionCode","results","_results$files","plugin","_callee3$","_context3","Action","execute","push","_toConsumableArray2","_x","_writePlugin","_callee4","_callee4$","_context4","Writer","cwd","AbstractFeature"],"sources":["../../../src/features/error/ErrorFeature.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { NpmPackage } from '../../types/cli.types'\nimport AbstractFeature, {\n\tFeatureDependency,\n\tFeatureOptions,\n\tInstallResults,\n} from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\terror: ErrorFeature\n\t}\n\n\tinterface FeatureOptionsMap {\n\t\terror: undefined\n\t}\n}\n\nexport default class ErrorFeature extends AbstractFeature {\n\tpublic nameReadable = 'error handling'\n\tpublic description =\n\t\t'Errors: Use schemas to define your errors and get great type checking!'\n\tpublic code: FeatureCode = 'error'\n\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{ code: 'schema', isRequired: true },\n\t\t{ code: 'node', isRequired: true },\n\t]\n\tpublic packageDependencies: NpmPackage[] = [\n\t\t{\n\t\t\tname: '@sprucelabs/error@latest',\n\t\t},\n\t]\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic constructor(options: FeatureOptions) {\n\t\tsuper(options)\n\n\t\tvoid this.emitter.on(\n\t\t\t'feature.did-execute',\n\t\t\tthis.handleDidExecuteCommand.bind(this)\n\t\t)\n\n\t\tvoid this.emitter.on('skill.will-write-directory-template', async () => {\n\t\t\tconst isInstalled = await this.features.isInstalled('error')\n\t\t\tif (isInstalled) {\n\t\t\t\treturn {\n\t\t\t\t\tfilesToSkip: ['options.types.ts'],\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {}\n\t\t})\n\t}\n\n\tpublic async afterPackageInstall(): Promise<InstallResults> {\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (!isSkillInstalled) {\n\t\t\treturn {}\n\t\t}\n\n\t\tconst files = await this.writePlugin()\n\n\t\treturn {\n\t\t\tfiles,\n\t\t}\n\t}\n\n\tprivate async handleDidExecuteCommand(payload: {\n\t\tfeatureCode: string\n\t\tactionCode: string\n\t}) {\n\t\tconst { featureCode, actionCode } = payload\n\n\t\tconst isInstalled = await this.features.isInstalled('error')\n\n\t\tconst isSkillInstalled = await this.features.isInstalled('skill')\n\n\t\tif (isInstalled && featureCode === 'node' && actionCode === 'upgrade') {\n\t\t\tconst results = await this.Action('error', 'sync').execute({})\n\n\t\t\tif (isSkillInstalled) {\n\t\t\t\tif (!results.files) {\n\t\t\t\t\tresults.files = []\n\t\t\t\t}\n\n\t\t\t\tconst plugin = await this.writePlugin()\n\t\t\t\tresults.files.push(...plugin)\n\t\t\t}\n\n\t\t\treturn results\n\t\t}\n\n\t\treturn {}\n\t}\n\tprivate async writePlugin() {\n\t\treturn this.Writer('error').writePlugin(this.cwd)\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ParentTestFinder.js","names":["_globby","_interopRequireDefault","require","_spruceSkillUtils","_introspection","ParentTestFinder","exports","cwd","_classCallCheck2","_defineProperty2","_createClass2","key","value","_findAbstractTests","_asyncToGenerator2","_regenerator","mark","_callee","matches","allDetails","wrap","_callee$","_context","prev","next","globby","diskUtil","resolvePath","sent","introspectionUtil","introspect","abrupt","map","path","idx","_details$classes","details","name","classes","className","isDefaultExport","filter","match","stop","findAbstractTests","apply","arguments"],"sources":["../../../src/features/error/ParentTestFinder.ts"],"sourcesContent":["import globby from '@sprucelabs/globby'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport introspectionUtil from '../../utilities/introspection.utility'\n\nexport default class ParentTestFinder {\n\tprivate cwd: string\n\n\tpublic constructor(cwd: string) {\n\t\tthis.cwd = cwd\n\t}\n\n\tpublic async findAbstractTests() {\n\t\tconst matches = await globby([\n\t\t\tdiskUtil.resolvePath(this.cwd, '**', 'Abstract*Test*.ts'),\n\t\t\t'!**/*.d.ts',\n\t\t])\n\n\t\tconst allDetails = introspectionUtil.introspect(matches)\n\n\t\treturn matches\n\t\t\t.map((path, idx) => {\n\t\t\t\tconst details = allDetails[idx]\n\t\t\t\treturn {\n\t\t\t\t\tpath,\n\t\t\t\t\tname: details.classes?.[0]?.className,\n\t\t\t\t\tisDefaultExport: true,\n\t\t\t\t}\n\t\t\t})\n\t\t\t.filter((match) => !!match.name)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAqE,IAEhDG,gBAAgB,GAAAC,OAAA;EAGpC,SAAAD,iBAAmBE,GAAW,EAAE;IAAA,IAAAC,gBAAA,mBAAAH,gBAAA;IAAA,IAAAI,gBAAA;IAC/B,IAAI,CAACF,GAAG,GAAGA,GAAG;EACf;EAAC,IAAAG,aAAA,aAAAL,gBAAA;IAAAM,GAAA;IAAAC,KAAA;MAAA,IAAAC,kBAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAED,SAAAC,QAAA;QAAA,IAAAC,OAAA,EAAAC,UAAA;QAAA,OAAAJ,YAAA,YAAAK,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAAF,QAAA,CAAAE,IAAA;cAAA,OACuB,IAAAC,kBAAM,EAAC,CAC5BC,0BAAQ,CAACC,WAAW,CAAC,IAAI,CAACpB,GAAG,EAAE,IAAI,EAAE,mBAAmB,CAAC,EACzD,YAAY,CACZ,CAAC;YAAA;cAHIW,OAAO,GAAAI,QAAA,CAAAM,IAAA;cAKPT,UAAU,GAAGU,yBAAiB,CAACC,UAAU,CAACZ,OAAO,CAAC;cAAA,OAAAI,QAAA,CAAAS,MAAA,WAEjDb,OAAO,CACZc,GAAG,CAAC,UAACC,IAAI,EAAEC,GAAG,EAAK;gBAAA,IAAAC,gBAAA;gBACnB,IAAMC,OAAO,GAAGjB,UAAU,CAACe,GAAG,CAAC;gBAC/B,OAAO;kBACND,IAAI,EAAJA,IAAI;kBACJI,IAAI,GAAAF,gBAAA,GAAEC,OAAO,CAACE,OAAO,cAAAH,gBAAA,gBAAAA,gBAAA,GAAfA,gBAAA,CAAkB,CAAC,CAAC,cAAAA,gBAAA,uBAApBA,gBAAA,CAAsBI,SAAS;kBACrCC,eAAe,EAAE;gBAClB,CAAC;cACF,CAAC,CAAC,CACDC,MAAM,CAAC,UAACC,KAAK;gBAAA,OAAK,CAAC,CAACA,KAAK,CAACL,IAAI;cAAA,EAAC;YAAA;YAAA;cAAA,OAAAf,QAAA,CAAAqB,IAAA;UAAA;QAAA,GAAA1B,OAAA;MAAA,CACjC;MAAA,SAAA2B,kBAAA;QAAA,OAAA/B,kBAAA,CAAAgC,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAF,iBAAA;IAAA;EAAA;EAAA,OAAAvC,gBAAA;AAAA"}
1
+ {"version":3,"file":"ParentTestFinder.js","names":["_globby","_interopRequireDefault","require","_spruceSkillUtils","_introspection","ParentTestFinder","exports","cwd","_classCallCheck2","_defineProperty2","_createClass2","key","value","_findAbstractTests","_asyncToGenerator2","_regenerator","mark","_callee","matches","allDetails","wrap","_callee$","_context","prev","next","globby","diskUtil","resolvePath","sent","introspectionUtil","introspect","abrupt","map","path","idx","_details$classes","details","name","classes","className","isDefaultExport","filter","match","stop","findAbstractTests","apply","arguments"],"sources":["../../../src/features/error/ParentTestFinder.ts"],"sourcesContent":["import globby from '@sprucelabs/globby'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport introspectionUtil from '../../utilities/introspection.utility'\n\nexport default class ParentTestFinder {\n\tprivate cwd: string\n\n\tpublic constructor(cwd: string) {\n\t\tthis.cwd = cwd\n\t}\n\n\tpublic async findAbstractTests() {\n\t\tconst matches = await globby([\n\t\t\tdiskUtil.resolvePath(this.cwd, '**', 'Abstract*Test*.ts'),\n\t\t\t'!**/*.d.ts',\n\t\t])\n\n\t\tconst allDetails = introspectionUtil.introspect(matches)\n\n\t\treturn matches\n\t\t\t.map((path, idx) => {\n\t\t\t\tconst details = allDetails[idx]\n\t\t\t\treturn {\n\t\t\t\t\tpath,\n\t\t\t\t\tname: details.classes?.[0]?.className,\n\t\t\t\t\tisDefaultExport: true,\n\t\t\t\t}\n\t\t\t})\n\t\t\t.filter((match) => !!match.name)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAqE,IAEhDG,gBAAgB,GAAAC,OAAA;EAGpC,SAAAD,iBAAmBE,GAAW,EAAE;IAAA,IAAAC,gBAAA,mBAAAH,gBAAA;IAAA,IAAAI,gBAAA;IAC/B,IAAI,CAACF,GAAG,GAAGA,GAAG;EACf;EAAC,IAAAG,aAAA,aAAAL,gBAAA;IAAAM,GAAA;IAAAC,KAAA;MAAA,IAAAC,kBAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAED,SAAAC,QAAA;QAAA,IAAAC,OAAA,EAAAC,UAAA;QAAA,OAAAJ,YAAA,YAAAK,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAAF,QAAA,CAAAE,IAAA;cAAA,OACuB,IAAAC,kBAAM,EAAC,CAC5BC,0BAAQ,CAACC,WAAW,CAAC,IAAI,CAACpB,GAAG,EAAE,IAAI,EAAE,mBAAmB,CAAC,EACzD,YAAY,CACZ,CAAC;YAAA;cAHIW,OAAO,GAAAI,QAAA,CAAAM,IAAA;cAKPT,UAAU,GAAGU,yBAAiB,CAACC,UAAU,CAACZ,OAAO,CAAC;cAAA,OAAAI,QAAA,CAAAS,MAAA,WAEjDb,OAAO,CACZc,GAAG,CAAC,UAACC,IAAI,EAAEC,GAAG,EAAK;gBAAA,IAAAC,gBAAA;gBACnB,IAAMC,OAAO,GAAGjB,UAAU,CAACe,GAAG,CAAC;gBAC/B,OAAO;kBACND,IAAI,EAAJA,IAAI;kBACJI,IAAI,GAAAF,gBAAA,GAAEC,OAAO,CAACE,OAAO,cAAAH,gBAAA,gBAAAA,gBAAA,GAAfA,gBAAA,CAAkB,CAAC,CAAC,cAAAA,gBAAA,uBAApBA,gBAAA,CAAsBI,SAAS;kBACrCC,eAAe,EAAE;gBAClB,CAAC;cACF,CAAC,CAAC,CACDC,MAAM,CAAC,UAACC,KAAK;gBAAA,OAAK,CAAC,CAACA,KAAK,CAACL,IAAI;cAAA,EAAC;YAAA;YAAA;cAAA,OAAAf,QAAA,CAAAqB,IAAA;UAAA;QAAA,GAAA1B,OAAA;MAAA,CACjC;MAAA,SAAA2B,kBAAA;QAAA,OAAA/B,kBAAA,CAAAgC,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAF,iBAAA;IAAA;EAAA;EAAA,OAAAvC,gBAAA;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"CreateAction.js","names":["_schema","require","_createErrorOptions","_interopRequireDefault","_createSchemaOptions","_syncErrorOptions","_action","_AbstractAction2","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","CreateAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","createErrorActionSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","normalizedOptions","schemaCreateAction","createSchemaOptions","createResults","syncOptions","syncResults","mergedResults","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Action","normalizeSchemaValues","createSchemaActionSchema","builderFunction","shouldEnableVersioning","syncAfterCreate","schemaBuilderDestinationDir","errorBuilderDestinationDir","execute","sent","syncErrorActionSchema","actionUtil","mergeActionResults","abrupt","stop","_x","AbstractAction"],"sources":["../../../../src/features/error/actions/CreateAction.ts"],"sourcesContent":["import { normalizeSchemaValues } from '@sprucelabs/schema'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createErrorActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema'\nimport createSchemaActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema'\nimport syncErrorActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.CreateErrorOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateErrorOptions\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createErrorActionSchema\n\tpublic invocationMessage = 'Creating a new error builder... 🤾‍♀️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst schemaCreateAction = this.Action('schema', 'create')\n\n\t\tconst createSchemaOptions = normalizeSchemaValues(\n\t\t\tcreateSchemaActionSchema,\n\t\t\t{\n\t\t\t\t...normalizedOptions,\n\t\t\t\tbuilderFunction: 'buildErrorSchema',\n\t\t\t\tshouldEnableVersioning: false,\n\t\t\t\tsyncAfterCreate: false,\n\t\t\t\tschemaBuilderDestinationDir:\n\t\t\t\t\tnormalizedOptions.errorBuilderDestinationDir,\n\t\t\t}\n\t\t)\n\n\t\tconst createResults = await schemaCreateAction.execute(createSchemaOptions)\n\n\t\tconst syncOptions = normalizeSchemaValues(\n\t\t\tsyncErrorActionSchema,\n\t\t\tnormalizedOptions\n\t\t)\n\t\tconst syncResults = await this.Action('error', 'sync').execute(syncOptions)\n\t\tconst mergedResults = actionUtil.mergeActionResults(\n\t\t\tcreateResults,\n\t\t\tsyncResults\n\t\t)\n\n\t\treturn mergedResults\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"CreateAction.js","names":["_schema","require","_createErrorOptions","_interopRequireDefault","_createSchemaOptions","_syncErrorOptions","_action","_AbstractAction2","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","CreateAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","createErrorActionSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","normalizedOptions","schemaCreateAction","createSchemaOptions","createResults","syncOptions","syncResults","mergedResults","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Action","normalizeSchemaValues","createSchemaActionSchema","builderFunction","shouldEnableVersioning","syncAfterCreate","schemaBuilderDestinationDir","errorBuilderDestinationDir","execute","sent","syncErrorActionSchema","actionUtil","mergeActionResults","abrupt","stop","_x","AbstractAction"],"sources":["../../../../src/features/error/actions/CreateAction.ts"],"sourcesContent":["import { normalizeSchemaValues } from '@sprucelabs/schema'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createErrorActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema'\nimport createSchemaActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema'\nimport syncErrorActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.CreateErrorOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateErrorOptions\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createErrorActionSchema\n\tpublic invocationMessage = 'Creating a new error builder... 🤾‍♀️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst schemaCreateAction = this.Action('schema', 'create')\n\n\t\tconst createSchemaOptions = normalizeSchemaValues(\n\t\t\tcreateSchemaActionSchema,\n\t\t\t{\n\t\t\t\t...normalizedOptions,\n\t\t\t\tbuilderFunction: 'buildErrorSchema',\n\t\t\t\tshouldEnableVersioning: false,\n\t\t\t\tsyncAfterCreate: false,\n\t\t\t\tschemaBuilderDestinationDir:\n\t\t\t\t\tnormalizedOptions.errorBuilderDestinationDir,\n\t\t\t}\n\t\t)\n\n\t\tconst createResults = await schemaCreateAction.execute(createSchemaOptions)\n\n\t\tconst syncOptions = normalizeSchemaValues(\n\t\t\tsyncErrorActionSchema,\n\t\t\tnormalizedOptions\n\t\t)\n\t\tconst syncResults = await this.Action('error', 'sync').execute(syncOptions)\n\t\tconst mergedResults = actionUtil.mergeActionResults(\n\t\t\tcreateResults,\n\t\t\tsyncResults\n\t\t)\n\n\t\treturn mergedResults\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"SyncAction.js","names":["_schema","require","_spruceSkillUtils","_syncErrorOptions","_interopRequireDefault","_syncSchemasOptions","_AbstractAction2","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","SyncAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","syncErrorActionSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","_errorSyncResults$fil","normalizedOptions","errorTypesDestinationDir","errorClassDestinationDir","schemaSyncAction","errorSyncResults","_ref","schemaTemplateItems","errorTemplateItems","errorWriter","optionsResults","errorClassGeneratedFiles","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Action","syncErrors","sent","errors","abrupt","areSyncResultsEmpty","deleteOrphanedDirs","meta","map","item","code","namesUtil","toConst","namePascal","Writer","generateOptionTypes","writeOrAppendErrorsToClass","diskUtil","resolvePath","cwd","files","_toConsumableArray2","stop","execute","_x","deleteDir","_syncErrors","_callee2","resolvedErrorTypesDestinationDir","syncOptions","_callee2$","_context2","normalizeSchemaValues","syncSchemasActionSchema","schemaTypesDestinationDirOrFile","schemaLookupDir","errorLookupDir","shouldEnableVersioning","globalSchemaNamespace","shouldFetchRemoteSchemas","generateFieldTypes","generateStandaloneTypesFile","deleteDestinationDirIfNoSchemas","shouldFetchCoreSchemas","syncingMessage","_x2","_x3","_generateOptionTypes","_callee3","errorGenerator","resolvedTypesDestination","topLevelItems","_callee3$","_context3","i","isNested","writeOptionsTypesFile","_x4","_x5","_x6","AbstractAction"],"sources":["../../../../src/features/error/actions/SyncAction.ts"],"sourcesContent":["import {\n\tSchemaTemplateItem,\n\tnormalizeSchemaValues,\n\tSchemaValuesWithDefaults,\n} from '@sprucelabs/schema'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ErrorTemplateItem } from '@sprucelabs/spruce-templates'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport syncErrorActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema'\nimport syncSchemasActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse, FeatureAction } from '../../features.types'\nimport ErrorWriter from '../writers/ErrorWriter'\n\ntype OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.SyncErrorOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.SyncErrorOptions\nexport default class SyncAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = syncErrorActionSchema\n\tpublic commandAliases = ['sync.errors']\n\tpublic invocationMessage = 'Generating error types... 🤾‍♀️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst { errorTypesDestinationDir, errorClassDestinationDir } =\n\t\t\tnormalizedOptions\n\n\t\tconst schemaSyncAction = this.Action(\n\t\t\t'schema',\n\t\t\t'sync'\n\t\t) as any as FeatureAction<SpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptionsSchema>\n\n\t\tconst errorSyncResults = await this.syncErrors(\n\t\t\tschemaSyncAction,\n\t\t\tnormalizedOptions\n\t\t)\n\n\t\tif (errorSyncResults.errors) {\n\t\t\treturn errorSyncResults\n\t\t}\n\n\t\tif (this.areSyncResultsEmpty(errorSyncResults)) {\n\t\t\tthis.deleteOrphanedDirs(errorTypesDestinationDir)\n\t\t\treturn {}\n\t\t}\n\n\t\tconst { schemaTemplateItems } = errorSyncResults.meta as {\n\t\t\tschemaTemplateItems: SchemaTemplateItem[]\n\t\t}\n\n\t\tconst errorTemplateItems = schemaTemplateItems.map((item) => ({\n\t\t\t...item,\n\t\t\tcode: namesUtil.toConst(item.namePascal),\n\t\t}))\n\n\t\tconst errorWriter = this.Writer('error')\n\n\t\tconst optionsResults = await this.generateOptionTypes(\n\t\t\terrorWriter,\n\t\t\terrorTemplateItems,\n\t\t\terrorTypesDestinationDir\n\t\t)\n\n\t\tconst errorClassGeneratedFiles =\n\t\t\tawait errorWriter.writeOrAppendErrorsToClass(\n\t\t\t\tdiskUtil.resolvePath(this.cwd, errorClassDestinationDir),\n\t\t\t\terrorTemplateItems\n\t\t\t)\n\n\t\treturn {\n\t\t\tfiles: [\n\t\t\t\t...(errorSyncResults.files ?? []),\n\t\t\t\t...errorClassGeneratedFiles,\n\t\t\t\t...optionsResults,\n\t\t\t],\n\t\t}\n\t}\n\n\tprivate deleteOrphanedDirs(errorTypesDestinationDir: string) {\n\t\tdiskUtil.deleteDir(diskUtil.resolvePath(this.cwd, errorTypesDestinationDir))\n\t}\n\n\tprivate async syncErrors(\n\t\tschemaSyncAction: FeatureAction<SpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptionsSchema>,\n\t\tnormalizedOptions: SchemaValuesWithDefaults<SpruceSchemas.SpruceCli.v2020_07_22.SyncErrorOptionsSchema>\n\t) {\n\t\tconst resolvedErrorTypesDestinationDir = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\tnormalizedOptions.errorTypesDestinationDir,\n\t\t\t'errors.types.ts'\n\t\t)\n\n\t\tconst syncOptions = normalizeSchemaValues(syncSchemasActionSchema, {\n\t\t\t...normalizedOptions,\n\t\t\tschemaTypesDestinationDirOrFile: resolvedErrorTypesDestinationDir,\n\t\t\tschemaLookupDir: normalizedOptions.errorLookupDir,\n\t\t\tshouldEnableVersioning: false,\n\t\t\tglobalSchemaNamespace: 'SpruceErrors',\n\t\t\tshouldFetchRemoteSchemas: false,\n\t\t\tgenerateFieldTypes: true,\n\t\t\tgenerateStandaloneTypesFile: true,\n\t\t\tdeleteDestinationDirIfNoSchemas: true,\n\t\t\tshouldFetchCoreSchemas: false,\n\t\t\tsyncingMessage: 'Syncing errors...',\n\t\t})\n\n\t\tconst errorSyncResults = await schemaSyncAction.execute(syncOptions)\n\n\t\treturn errorSyncResults\n\t}\n\n\tprivate areSyncResultsEmpty(errorSyncResults: FeatureActionResponse) {\n\t\treturn (\n\t\t\t!errorSyncResults.meta ||\n\t\t\t!errorSyncResults.files ||\n\t\t\terrorSyncResults.files.length === 0\n\t\t)\n\t}\n\n\tprivate async generateOptionTypes(\n\t\terrorGenerator: ErrorWriter,\n\t\terrorTemplateItems: ErrorTemplateItem[],\n\t\terrorTypesDestinationDir: string\n\t) {\n\t\tif (errorTemplateItems.length === 0) {\n\t\t\treturn []\n\t\t}\n\n\t\tconst resolvedTypesDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\terrorTypesDestinationDir\n\t\t)\n\n\t\tconst topLevelItems = errorTemplateItems.filter((i) => !i.isNested)\n\n\t\tconst optionsResults = await errorGenerator.writeOptionsTypesFile(\n\t\t\tresolvedTypesDestination,\n\t\t\ttopLevelItems\n\t\t)\n\n\t\treturn optionsResults\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"SyncAction.js","names":["_schema","require","_spruceSkillUtils","_syncErrorOptions","_interopRequireDefault","_syncSchemasOptions","_AbstractAction2","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","SyncAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","syncErrorActionSchema","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","_errorSyncResults$fil","normalizedOptions","errorTypesDestinationDir","errorClassDestinationDir","schemaSyncAction","errorSyncResults","_ref","schemaTemplateItems","errorTemplateItems","errorWriter","optionsResults","errorClassGeneratedFiles","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Action","syncErrors","sent","errors","abrupt","areSyncResultsEmpty","deleteOrphanedDirs","meta","map","item","code","namesUtil","toConst","namePascal","Writer","generateOptionTypes","writeOrAppendErrorsToClass","diskUtil","resolvePath","cwd","files","_toConsumableArray2","stop","execute","_x","deleteDir","_syncErrors","_callee2","resolvedErrorTypesDestinationDir","syncOptions","_callee2$","_context2","normalizeSchemaValues","syncSchemasActionSchema","schemaTypesDestinationDirOrFile","schemaLookupDir","errorLookupDir","shouldEnableVersioning","globalSchemaNamespace","shouldFetchRemoteSchemas","generateFieldTypes","generateStandaloneTypesFile","deleteDestinationDirIfNoSchemas","shouldFetchCoreSchemas","syncingMessage","_x2","_x3","_generateOptionTypes","_callee3","errorGenerator","resolvedTypesDestination","topLevelItems","_callee3$","_context3","i","isNested","writeOptionsTypesFile","_x4","_x5","_x6","AbstractAction"],"sources":["../../../../src/features/error/actions/SyncAction.ts"],"sourcesContent":["import {\n\tSchemaTemplateItem,\n\tnormalizeSchemaValues,\n\tSchemaValuesWithDefaults,\n} from '@sprucelabs/schema'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ErrorTemplateItem } from '@sprucelabs/spruce-templates'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport syncErrorActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema'\nimport syncSchemasActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse, FeatureAction } from '../../features.types'\nimport ErrorWriter from '../writers/ErrorWriter'\n\ntype OptionsSchema = SpruceSchemas.SpruceCli.v2020_07_22.SyncErrorOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.SyncErrorOptions\nexport default class SyncAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = syncErrorActionSchema\n\tpublic commandAliases = ['sync.errors']\n\tpublic invocationMessage = 'Generating error types... 🤾‍♀️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst { errorTypesDestinationDir, errorClassDestinationDir } =\n\t\t\tnormalizedOptions\n\n\t\tconst schemaSyncAction = this.Action(\n\t\t\t'schema',\n\t\t\t'sync'\n\t\t) as any as FeatureAction<SpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptionsSchema>\n\n\t\tconst errorSyncResults = await this.syncErrors(\n\t\t\tschemaSyncAction,\n\t\t\tnormalizedOptions\n\t\t)\n\n\t\tif (errorSyncResults.errors) {\n\t\t\treturn errorSyncResults\n\t\t}\n\n\t\tif (this.areSyncResultsEmpty(errorSyncResults)) {\n\t\t\tthis.deleteOrphanedDirs(errorTypesDestinationDir)\n\t\t\treturn {}\n\t\t}\n\n\t\tconst { schemaTemplateItems } = errorSyncResults.meta as {\n\t\t\tschemaTemplateItems: SchemaTemplateItem[]\n\t\t}\n\n\t\tconst errorTemplateItems = schemaTemplateItems.map((item) => ({\n\t\t\t...item,\n\t\t\tcode: namesUtil.toConst(item.namePascal),\n\t\t}))\n\n\t\tconst errorWriter = this.Writer('error')\n\n\t\tconst optionsResults = await this.generateOptionTypes(\n\t\t\terrorWriter,\n\t\t\terrorTemplateItems,\n\t\t\terrorTypesDestinationDir\n\t\t)\n\n\t\tconst errorClassGeneratedFiles =\n\t\t\tawait errorWriter.writeOrAppendErrorsToClass(\n\t\t\t\tdiskUtil.resolvePath(this.cwd, errorClassDestinationDir),\n\t\t\t\terrorTemplateItems\n\t\t\t)\n\n\t\treturn {\n\t\t\tfiles: [\n\t\t\t\t...(errorSyncResults.files ?? []),\n\t\t\t\t...errorClassGeneratedFiles,\n\t\t\t\t...optionsResults,\n\t\t\t],\n\t\t}\n\t}\n\n\tprivate deleteOrphanedDirs(errorTypesDestinationDir: string) {\n\t\tdiskUtil.deleteDir(diskUtil.resolvePath(this.cwd, errorTypesDestinationDir))\n\t}\n\n\tprivate async syncErrors(\n\t\tschemaSyncAction: FeatureAction<SpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptionsSchema>,\n\t\tnormalizedOptions: SchemaValuesWithDefaults<SpruceSchemas.SpruceCli.v2020_07_22.SyncErrorOptionsSchema>\n\t) {\n\t\tconst resolvedErrorTypesDestinationDir = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\tnormalizedOptions.errorTypesDestinationDir,\n\t\t\t'errors.types.ts'\n\t\t)\n\n\t\tconst syncOptions = normalizeSchemaValues(syncSchemasActionSchema, {\n\t\t\t...normalizedOptions,\n\t\t\tschemaTypesDestinationDirOrFile: resolvedErrorTypesDestinationDir,\n\t\t\tschemaLookupDir: normalizedOptions.errorLookupDir,\n\t\t\tshouldEnableVersioning: false,\n\t\t\tglobalSchemaNamespace: 'SpruceErrors',\n\t\t\tshouldFetchRemoteSchemas: false,\n\t\t\tgenerateFieldTypes: true,\n\t\t\tgenerateStandaloneTypesFile: true,\n\t\t\tdeleteDestinationDirIfNoSchemas: true,\n\t\t\tshouldFetchCoreSchemas: false,\n\t\t\tsyncingMessage: 'Syncing errors...',\n\t\t})\n\n\t\tconst errorSyncResults = await schemaSyncAction.execute(syncOptions)\n\n\t\treturn errorSyncResults\n\t}\n\n\tprivate areSyncResultsEmpty(errorSyncResults: FeatureActionResponse) {\n\t\treturn (\n\t\t\t!errorSyncResults.meta ||\n\t\t\t!errorSyncResults.files ||\n\t\t\terrorSyncResults.files.length === 0\n\t\t)\n\t}\n\n\tprivate async generateOptionTypes(\n\t\terrorGenerator: ErrorWriter,\n\t\terrorTemplateItems: ErrorTemplateItem[],\n\t\terrorTypesDestinationDir: string\n\t) {\n\t\tif (errorTemplateItems.length === 0) {\n\t\t\treturn []\n\t\t}\n\n\t\tconst resolvedTypesDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\terrorTypesDestinationDir\n\t\t)\n\n\t\tconst topLevelItems = errorTemplateItems.filter((i) => !i.isNested)\n\n\t\tconst optionsResults = await errorGenerator.writeOptionsTypesFile(\n\t\t\tresolvedTypesDestination,\n\t\t\ttopLevelItems\n\t\t)\n\n\t\treturn optionsResults\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAKA,IAAAC,iBAAA,GAAAD,OAAA;AAIA,IAAAE,iBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,gBAAA,GAAAF,sBAAA,CAAAH,OAAA;AAAiD,SAAAM,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAoB,WAAAlB,CAAA,EAAAI,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAAe,gBAAA,aAAAf,CAAA,OAAAgB,2BAAA,aAAApB,CAAA,EAAAqB,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAnB,CAAA,EAAAN,CAAA,YAAAqB,gBAAA,aAAAnB,CAAA,EAAAwB,WAAA,IAAApB,CAAA,CAAAK,KAAA,CAAAT,CAAA,EAAAF,CAAA;AAAA,SAAAuB,0BAAA,cAAArB,CAAA,IAAAyB,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAN,OAAA,CAAAC,SAAA,CAAAE,OAAA,iCAAAzB,CAAA,aAAAqB,yBAAA,YAAAA,0BAAA,aAAArB,CAAA;AAAA,IAM5B6B,UAAU,GAAAC,OAAA,qCAAAC,eAAA;EAAA,IAAAC,UAAA,aAAAH,UAAA,EAAAE,eAAA;EAAA,SAAAF,WAAA;IAAA,IAAAI,KAAA;IAAA,IAAAC,gBAAA,mBAAAL,UAAA;IAAA,SAAAM,IAAA,GAAAxB,SAAA,CAAAC,MAAA,EAAAwB,IAAA,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAA3B,SAAA,CAAA2B,IAAA;IAAA;IAAAL,KAAA,GAAAf,UAAA,OAAAW,UAAA,KAAAU,MAAA,CAAAH,IAAA;IAAA,IAAAtB,gBAAA,iBAAA0B,uBAAA,aAAAP,KAAA,oBACPQ,4BAAqB;IAAA,IAAA3B,gBAAA,iBAAA0B,uBAAA,aAAAP,KAAA,qBACpB,CAAC,aAAa,CAAC;IAAA,IAAAnB,gBAAA,iBAAA0B,uBAAA,aAAAP,KAAA,wBACZ,iCAAiC;IAAA,OAAAA,KAAA;EAAA;EAAA,IAAAS,aAAA,aAAAb,UAAA;IAAAc,GAAA;IAAAC,KAAA;MAAA,IAAAC,QAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAE5D,SAAAC,QAAqBC,OAAgB;QAAA,IAAAC,qBAAA;QAAA,IAAAC,iBAAA,EAAAC,wBAAA,EAAAC,wBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,IAAA,EAAAC,mBAAA,EAAAC,kBAAA,EAAAC,WAAA,EAAAC,cAAA,EAAAC,wBAAA;QAAA,OAAAf,YAAA,YAAAgB,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAC9Bf,iBAAiB,GAAG,IAAI,CAACgB,2BAA2B,CAAClB,OAAO,CAAC;cAC3DG,wBAAwB,GAC/BD,iBAAiB,CADVC,wBAAwB,EAAEC,wBAAwB,GACzDF,iBAAiB,CADgBE,wBAAwB;cAGpDC,gBAAgB,GAAG,IAAI,CAACc,MAAM,CACnC,QAAQ,EACR,MACD,CAAC;cAAAJ,QAAA,CAAAE,IAAA;cAAA,OAE8B,IAAI,CAACG,UAAU,CAC7Cf,gBAAgB,EAChBH,iBACD,CAAC;YAAA;cAHKI,gBAAgB,GAAAS,QAAA,CAAAM,IAAA;cAAA,KAKlBf,gBAAgB,CAACgB,MAAM;gBAAAP,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAAA,OAAAF,QAAA,CAAAQ,MAAA,WACnBjB,gBAAgB;YAAA;cAAA,KAGpB,IAAI,CAACkB,mBAAmB,CAAClB,gBAAgB,CAAC;gBAAAS,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAC7C,IAAI,CAACQ,kBAAkB,CAACtB,wBAAwB,CAAC;cAAA,OAAAY,QAAA,CAAAQ,MAAA,WAC1C,CAAC,CAAC;YAAA;cAAAhB,IAAA,GAGsBD,gBAAgB,CAACoB,IAAI,EAA7ClB,mBAAmB,GAAAD,IAAA,CAAnBC,mBAAmB;cAIrBC,kBAAkB,GAAGD,mBAAmB,CAACmB,GAAG,CAAC,UAACC,IAAI;gBAAA,OAAApE,aAAA,CAAAA,aAAA,KACpDoE,IAAI;kBACPC,IAAI,EAAEC,2BAAS,CAACC,OAAO,CAACH,IAAI,CAACI,UAAU;gBAAC;cAAA,CACvC,CAAC;cAEGtB,WAAW,GAAG,IAAI,CAACuB,MAAM,CAAC,OAAO,CAAC;cAAAlB,QAAA,CAAAE,IAAA;cAAA,OAEX,IAAI,CAACiB,mBAAmB,CACpDxB,WAAW,EACXD,kBAAkB,EAClBN,wBACD,CAAC;YAAA;cAJKQ,cAAc,GAAAI,QAAA,CAAAM,IAAA;cAAAN,QAAA,CAAAE,IAAA;cAAA,OAObP,WAAW,CAACyB,0BAA0B,CAC3CC,0BAAQ,CAACC,WAAW,CAAC,IAAI,CAACC,GAAG,EAAElC,wBAAwB,CAAC,EACxDK,kBACD,CAAC;YAAA;cAJIG,wBAAwB,GAAAG,QAAA,CAAAM,IAAA;cAAA,OAAAN,QAAA,CAAAQ,MAAA,WAMvB;gBACNgB,KAAK,KAAAlD,MAAA,KAAAmD,mBAAA,cAAAvC,qBAAA,GACAK,gBAAgB,CAACiC,KAAK,cAAAtC,qBAAA,cAAAA,qBAAA,GAAI,EAAE,OAAAuC,mBAAA,aAC7B5B,wBAAwB,OAAA4B,mBAAA,aACxB7B,cAAc;cAEnB,CAAC;YAAA;YAAA;cAAA,OAAAI,QAAA,CAAA0B,IAAA;UAAA;QAAA,GAAA1C,OAAA;MAAA,CACD;MAAA,SAAA2C,QAAAC,EAAA;QAAA,OAAAhD,QAAA,CAAApC,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAAiF,OAAA;IAAA;EAAA;IAAAjD,GAAA;IAAAC,KAAA,EAED,SAAA+B,mBAA2BtB,wBAAgC,EAAE;MAC5DiC,0BAAQ,CAACQ,SAAS,CAACR,0BAAQ,CAACC,WAAW,CAAC,IAAI,CAACC,GAAG,EAAEnC,wBAAwB,CAAC,CAAC;IAC7E;EAAC;IAAAV,GAAA;IAAAC,KAAA;MAAA,IAAAmD,WAAA,OAAAjD,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAED,SAAAgD,SACCzC,gBAA6F,EAC7FH,iBAAuG;QAAA,IAAA6C,gCAAA,EAAAC,WAAA,EAAA1C,gBAAA;QAAA,OAAAT,YAAA,YAAAgB,IAAA,UAAAoC,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAlC,IAAA,GAAAkC,SAAA,CAAAjC,IAAA;YAAA;cAEjG8B,gCAAgC,GAAGX,0BAAQ,CAACC,WAAW,CAC5D,IAAI,CAACC,GAAG,EACRpC,iBAAiB,CAACC,wBAAwB,EAC1C,iBACD,CAAC;cAEK6C,WAAW,GAAG,IAAAG,6BAAqB,EAACC,8BAAuB,EAAA5F,aAAA,CAAAA,aAAA,KAC7D0C,iBAAiB;gBACpBmD,+BAA+B,EAAEN,gCAAgC;gBACjEO,eAAe,EAAEpD,iBAAiB,CAACqD,cAAc;gBACjDC,sBAAsB,EAAE,KAAK;gBAC7BC,qBAAqB,EAAE,cAAc;gBACrCC,wBAAwB,EAAE,KAAK;gBAC/BC,kBAAkB,EAAE,IAAI;gBACxBC,2BAA2B,EAAE,IAAI;gBACjCC,+BAA+B,EAAE,IAAI;gBACrCC,sBAAsB,EAAE,KAAK;gBAC7BC,cAAc,EAAE;cAAmB,EACnC,CAAC;cAAAb,SAAA,CAAAjC,IAAA;cAAA,OAE6BZ,gBAAgB,CAACqC,OAAO,CAACM,WAAW,CAAC;YAAA;cAA9D1C,gBAAgB,GAAA4C,SAAA,CAAA7B,IAAA;cAAA,OAAA6B,SAAA,CAAA3B,MAAA,WAEfjB,gBAAgB;YAAA;YAAA;cAAA,OAAA4C,SAAA,CAAAT,IAAA;UAAA;QAAA,GAAAK,QAAA;MAAA,CACvB;MAAA,SAAA1B,WAAA4C,GAAA,EAAAC,GAAA;QAAA,OAAApB,WAAA,CAAAtF,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAA2D,UAAA;IAAA;EAAA;IAAA3B,GAAA;IAAAC,KAAA,EAED,SAAA8B,oBAA4BlB,gBAAuC,EAAE;MACpE,OACC,CAACA,gBAAgB,CAACoB,IAAI,IACtB,CAACpB,gBAAgB,CAACiC,KAAK,IACvBjC,gBAAgB,CAACiC,KAAK,CAAC7E,MAAM,KAAK,CAAC;IAErC;EAAC;IAAA+B,GAAA;IAAAC,KAAA;MAAA,IAAAwE,oBAAA,OAAAtE,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAED,SAAAqE,SACCC,cAA2B,EAC3B3D,kBAAuC,EACvCN,wBAAgC;QAAA,IAAAkE,wBAAA,EAAAC,aAAA,EAAA3D,cAAA;QAAA,OAAAd,YAAA,YAAAgB,IAAA,UAAA0D,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAxD,IAAA,GAAAwD,SAAA,CAAAvD,IAAA;YAAA;cAAA,MAE5BR,kBAAkB,CAAC/C,MAAM,KAAK,CAAC;gBAAA8G,SAAA,CAAAvD,IAAA;gBAAA;cAAA;cAAA,OAAAuD,SAAA,CAAAjD,MAAA,WAC3B,EAAE;YAAA;cAGJ8C,wBAAwB,GAAGjC,0BAAQ,CAACC,WAAW,CACpD,IAAI,CAACC,GAAG,EACRnC,wBACD,CAAC;cAEKmE,aAAa,GAAG7D,kBAAkB,CAACtD,MAAM,CAAC,UAACsH,CAAC;gBAAA,OAAK,CAACA,CAAC,CAACC,QAAQ;cAAA,EAAC;cAAAF,SAAA,CAAAvD,IAAA;cAAA,OAEtCmD,cAAc,CAACO,qBAAqB,CAChEN,wBAAwB,EACxBC,aACD,CAAC;YAAA;cAHK3D,cAAc,GAAA6D,SAAA,CAAAnD,IAAA;cAAA,OAAAmD,SAAA,CAAAjD,MAAA,WAKbZ,cAAc;YAAA;YAAA;cAAA,OAAA6D,SAAA,CAAA/B,IAAA;UAAA;QAAA,GAAA0B,QAAA;MAAA,CACrB;MAAA,SAAAjC,oBAAA0C,GAAA,EAAAC,GAAA,EAAAC,GAAA;QAAA,OAAAZ,oBAAA,CAAA3G,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAAyE,mBAAA;IAAA;EAAA;EAAA,OAAAvD,UAAA;AAAA,EA5HsCoG,2BAAc","ignoreList":[]}
@@ -1 +1 @@
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","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","Boolean","valueOf","ErrorWriter","exports","_AbstractWriter","_inherits2","_classCallCheck2","_createClass2","key","_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"],"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","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","Boolean","valueOf","ErrorWriter","exports","_AbstractWriter","_inherits2","_classCallCheck2","_createClass2","key","_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"],"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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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"EventFeature.js","names":["_spruceSkillUtils","require","_syncEventOptions","_interopRequireDefault","_TerminalInterface","_action","_AbstractFeature2","_EventContractBuilder","_EventStore","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","EventFeature","exports","_AbstractFeature","_inherits2","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","arguments","_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"],"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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"}
1
+ {"version":3,"file":"EventFeature.js","names":["_spruceSkillUtils","require","_syncEventOptions","_interopRequireDefault","_TerminalInterface","_action","_AbstractFeature2","_EventContractBuilder","_EventStore","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","EventFeature","exports","_AbstractFeature","_inherits2","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","arguments","_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"],"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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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"CreateAction.js","names":["_schema","require","_spruceEventUtils","_spruceSkillUtils","_namedTemplateItem","_interopRequireDefault","_syncEventOptions","_SpruceError","_action","_AbstractAction2","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","optionsSchema","buildSchema","id","description","fields","nameReadable","namedTemplateItemSchema","isRequired","nameKebab","label","hint","nameCamel","isGlobal","type","version","isPrivate","syncEventActionSchema","CreateAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","_this$validateAndNorm","skill","destinationDir","resolvedVersion","files","syncOptions","syncResponse","fqen","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Store","loadCurrentSkill","sent","slug","abrupt","errors","SpruceError","code","diskUtil","resolvePath","cwd","resolveVersion","Writer","writeEvent","normalizeSchemaValues","shouldIncludePrivateFields","Action","execute","eventNameUtil","join","eventName","eventNamespace","actionUtil","mergeActionResults","meta","t0","stop","_x","AbstractAction"],"sources":["../../../../src/features/event/actions/CreateAction.ts"],"sourcesContent":["import {\n\tbuildSchema,\n\tnormalizeSchemaValues,\n\tSchemaValues,\n} from '@sprucelabs/schema'\nimport { eventNameUtil } from '@sprucelabs/spruce-event-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport namedTemplateItemSchema from '#spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema'\nimport syncEventActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'createEventAction',\n\tdescription:\n\t\t\"Create a new event and I'll register it with Mercury when you boot the skill!\",\n\tfields: {\n\t\tnameReadable: {\n\t\t\t...namedTemplateItemSchema.fields.nameReadable,\n\t\t\tisRequired: true,\n\t\t},\n\t\tnameKebab: {\n\t\t\t...namedTemplateItemSchema.fields.nameKebab,\n\t\t\tlabel: 'Event name',\n\t\t\thint: `kebab-case`,\n\t\t\tisRequired: true,\n\t\t},\n\t\tnameCamel: {\n\t\t\t...namedTemplateItemSchema.fields.nameCamel,\n\t\t\tisRequired: true,\n\t\t},\n\t\tisGlobal: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Is this a global event?',\n\t\t\thint: \"This will allow skills to listen without being installed at the same organization. You'll need permission to make this happen.\",\n\t\t},\n\t\tversion: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Version',\n\t\t\tisPrivate: true,\n\t\t},\n\t\t...syncEventActionSchema.fields,\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\n\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic invocationMessage = 'Creating a new event signature... 🜒'\n\n\tpublic async execute(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<FeatureActionResponse> {\n\t\tlet { nameKebab, nameReadable, nameCamel, version, isGlobal } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tconst skill = await this.Store('skill').loadCurrentSkill()\n\n\t\tif (!skill.id || !skill.slug) {\n\t\t\treturn {\n\t\t\t\terrors: [new SpruceError({ code: 'SKILL_NOT_REGISTERED' })],\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\tconst destinationDir = diskUtil.resolvePath(this.cwd, 'src', 'events')\n\t\t\tconst resolvedVersion = await this.resolveVersion(\n\t\t\t\tversion,\n\t\t\t\tdiskUtil.resolvePath(destinationDir, '**', '*')\n\t\t\t)\n\n\t\t\tconst files = await this.Writer('event').writeEvent(destinationDir, {\n\t\t\t\tnameKebab,\n\t\t\t\tnameCamel,\n\t\t\t\tversion: resolvedVersion,\n\t\t\t\tnameReadable,\n\t\t\t\tisGlobal,\n\t\t\t})\n\n\t\t\tconst syncOptions = normalizeSchemaValues(\n\t\t\t\tsyncEventActionSchema,\n\t\t\t\toptions,\n\t\t\t\t{\n\t\t\t\t\tshouldIncludePrivateFields: true,\n\t\t\t\t}\n\t\t\t)\n\n\t\t\tconst syncResponse = await this.Action('event', 'sync').execute(\n\t\t\t\tsyncOptions\n\t\t\t)\n\n\t\t\tconst fqen = eventNameUtil.join({\n\t\t\t\teventName: nameKebab,\n\t\t\t\teventNamespace: skill.slug,\n\t\t\t\tversion: resolvedVersion,\n\t\t\t})\n\n\t\t\treturn actionUtil.mergeActionResults(\n\t\t\t\t{ files, meta: { fqen } },\n\t\t\t\tsyncResponse\n\t\t\t)\n\t\t} catch (err: any) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"CreateAction.js","names":["_schema","require","_spruceEventUtils","_spruceSkillUtils","_namedTemplateItem","_interopRequireDefault","_syncEventOptions","_SpruceError","_action","_AbstractAction2","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","optionsSchema","buildSchema","id","description","fields","nameReadable","namedTemplateItemSchema","isRequired","nameKebab","label","hint","nameCamel","isGlobal","type","version","isPrivate","syncEventActionSchema","CreateAction","exports","_AbstractAction","_inherits2","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","_createClass2","key","value","_execute","_asyncToGenerator2","_regenerator","mark","_callee","options","_this$validateAndNorm","skill","destinationDir","resolvedVersion","files","syncOptions","syncResponse","fqen","wrap","_callee$","_context","prev","next","validateAndNormalizeOptions","Store","loadCurrentSkill","sent","slug","abrupt","errors","SpruceError","code","diskUtil","resolvePath","cwd","resolveVersion","Writer","writeEvent","normalizeSchemaValues","shouldIncludePrivateFields","Action","execute","eventNameUtil","join","eventName","eventNamespace","actionUtil","mergeActionResults","meta","t0","stop","_x","AbstractAction"],"sources":["../../../../src/features/event/actions/CreateAction.ts"],"sourcesContent":["import {\n\tbuildSchema,\n\tnormalizeSchemaValues,\n\tSchemaValues,\n} from '@sprucelabs/schema'\nimport { eventNameUtil } from '@sprucelabs/spruce-event-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport namedTemplateItemSchema from '#spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema'\nimport syncEventActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'createEventAction',\n\tdescription:\n\t\t\"Create a new event and I'll register it with Mercury when you boot the skill!\",\n\tfields: {\n\t\tnameReadable: {\n\t\t\t...namedTemplateItemSchema.fields.nameReadable,\n\t\t\tisRequired: true,\n\t\t},\n\t\tnameKebab: {\n\t\t\t...namedTemplateItemSchema.fields.nameKebab,\n\t\t\tlabel: 'Event name',\n\t\t\thint: `kebab-case`,\n\t\t\tisRequired: true,\n\t\t},\n\t\tnameCamel: {\n\t\t\t...namedTemplateItemSchema.fields.nameCamel,\n\t\t\tisRequired: true,\n\t\t},\n\t\tisGlobal: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Is this a global event?',\n\t\t\thint: \"This will allow skills to listen without being installed at the same organization. You'll need permission to make this happen.\",\n\t\t},\n\t\tversion: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Version',\n\t\t\tisPrivate: true,\n\t\t},\n\t\t...syncEventActionSchema.fields,\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\n\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic invocationMessage = 'Creating a new event signature... 🜒'\n\n\tpublic async execute(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<FeatureActionResponse> {\n\t\tlet { nameKebab, nameReadable, nameCamel, version, isGlobal } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tconst skill = await this.Store('skill').loadCurrentSkill()\n\n\t\tif (!skill.id || !skill.slug) {\n\t\t\treturn {\n\t\t\t\terrors: [new SpruceError({ code: 'SKILL_NOT_REGISTERED' })],\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\tconst destinationDir = diskUtil.resolvePath(this.cwd, 'src', 'events')\n\t\t\tconst resolvedVersion = await this.resolveVersion(\n\t\t\t\tversion,\n\t\t\t\tdiskUtil.resolvePath(destinationDir, '**', '*')\n\t\t\t)\n\n\t\t\tconst files = await this.Writer('event').writeEvent(destinationDir, {\n\t\t\t\tnameKebab,\n\t\t\t\tnameCamel,\n\t\t\t\tversion: resolvedVersion,\n\t\t\t\tnameReadable,\n\t\t\t\tisGlobal,\n\t\t\t})\n\n\t\t\tconst syncOptions = normalizeSchemaValues(\n\t\t\t\tsyncEventActionSchema,\n\t\t\t\toptions,\n\t\t\t\t{\n\t\t\t\t\tshouldIncludePrivateFields: true,\n\t\t\t\t}\n\t\t\t)\n\n\t\t\tconst syncResponse = await this.Action('event', 'sync').execute(\n\t\t\t\tsyncOptions\n\t\t\t)\n\n\t\t\tconst fqen = eventNameUtil.join({\n\t\t\t\teventName: nameKebab,\n\t\t\t\teventNamespace: skill.slug,\n\t\t\t\tversion: resolvedVersion,\n\t\t\t})\n\n\t\t\treturn actionUtil.mergeActionResults(\n\t\t\t\t{ files, meta: { fqen } },\n\t\t\t\tsyncResponse\n\t\t\t)\n\t\t} catch (err: any) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n}\n"],"mappings":"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","ignoreList":[]}