@sprucelabs/spruce-cli 15.2.24 → 15.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (568) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/build/.spruce/errors/errors.types.js.map +1 -1
  3. package/build/.spruce/errors/options.types.js.map +1 -1
  4. package/build/.spruce/errors/spruceCli/actionCancelled.schema.js.map +1 -1
  5. package/build/.spruce/errors/spruceCli/bootError.schema.js.map +1 -1
  6. package/build/.spruce/errors/spruceCli/buildFailed.schema.js.map +1 -1
  7. package/build/.spruce/errors/spruceCli/cacheNotEnabled.schema.js.map +1 -1
  8. package/build/.spruce/errors/spruceCli/commandAborted.schema.js.map +1 -1
  9. package/build/.spruce/errors/spruceCli/commandBlocked.schema.js.map +1 -1
  10. package/build/.spruce/errors/spruceCli/commandNotImplemented.schema.js.map +1 -1
  11. package/build/.spruce/errors/spruceCli/createAutoloaderFailed.schema.js.map +1 -1
  12. package/build/.spruce/errors/spruceCli/dependencyExists.schema.js.map +1 -1
  13. package/build/.spruce/errors/spruceCli/deployFailed.schema.js.map +1 -1
  14. package/build/.spruce/errors/spruceCli/directoryEmpty.schema.js.map +1 -1
  15. package/build/.spruce/errors/spruceCli/directoryNotSkill.schema.js.map +1 -1
  16. package/build/.spruce/errors/spruceCli/dockerNotStarted.schema.js.map +1 -1
  17. package/build/.spruce/errors/spruceCli/executingCommandFailed.schema.js.map +1 -1
  18. package/build/.spruce/errors/spruceCli/failedToImport.schema.js.map +1 -1
  19. package/build/.spruce/errors/spruceCli/featureNotInstalled.schema.js.map +1 -1
  20. package/build/.spruce/errors/spruceCli/fileExists.schema.js.map +1 -1
  21. package/build/.spruce/errors/spruceCli/generic.schema.js.map +1 -1
  22. package/build/.spruce/errors/spruceCli/invalidCommand.schema.js.map +1 -1
  23. package/build/.spruce/errors/spruceCli/invalidEventContract.schema.js.map +1 -1
  24. package/build/.spruce/errors/spruceCli/invalidFeatureCode.schema.js.map +1 -1
  25. package/build/.spruce/errors/spruceCli/invalidTestDirectory.schema.js.map +1 -1
  26. package/build/.spruce/errors/spruceCli/lintFailed.schema.js.map +1 -1
  27. package/build/.spruce/errors/spruceCli/mercuryResponseError.schema.js.map +1 -1
  28. package/build/.spruce/errors/spruceCli/missingDependencies.schema.js.map +1 -1
  29. package/build/.spruce/errors/spruceCli/missingDependenciesDependency.schema.js.map +1 -1
  30. package/build/.spruce/errors/spruceCli/noOrganizationsFound.schema.js.map +1 -1
  31. package/build/.spruce/errors/spruceCli/noSkillsRegistered.schema.js.map +1 -1
  32. package/build/.spruce/errors/spruceCli/notImplemented.schema.js.map +1 -1
  33. package/build/.spruce/errors/spruceCli/notLoggedIn.schema.js.map +1 -1
  34. package/build/.spruce/errors/spruceCli/schemaExists.schema.js.map +1 -1
  35. package/build/.spruce/errors/spruceCli/schemaFailedToImport.schema.js.map +1 -1
  36. package/build/.spruce/errors/spruceCli/schemaTemplateItemBuildingFailed.schema.js.map +1 -1
  37. package/build/.spruce/errors/spruceCli/skillNotFound.schema.js.map +1 -1
  38. package/build/.spruce/errors/spruceCli/skillNotRegistered.schema.js.map +1 -1
  39. package/build/.spruce/errors/spruceCli/skillViewExists.schema.js.map +1 -1
  40. package/build/.spruce/errors/spruceCli/storeExists.schema.js.map +1 -1
  41. package/build/.spruce/errors/spruceCli/testFailed.schema.js.map +1 -1
  42. package/build/.spruce/errors/spruceCli/themeExists.schema.js.map +1 -1
  43. package/build/.spruce/errors/spruceCli/transportAlreadyExists.schema.js.map +1 -1
  44. package/build/.spruce/errors/spruceCli/vscodeNotInstalled.schema.js.map +1 -1
  45. package/build/.spruce/events/events.contract.js.map +1 -1
  46. package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
  47. package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
  48. package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
  49. package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.js.map +1 -1
  50. package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
  51. package/build/.spruce/schemas/fields/fieldClassMap.js.map +1 -1
  52. package/build/.spruce/schemas/fields/fields.types.js.map +1 -1
  53. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitPayload.schema.js.map +1 -1
  54. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTarget.schema.js.map +1 -1
  55. package/build/.spruce/schemas/heartwood/v2021_02_11/didRegisterSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  56. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitPayload.schema.js.map +1 -1
  57. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTarget.schema.js.map +1 -1
  58. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlEmitTargetAndPayload.schema.js.map +1 -1
  59. package/build/.spruce/schemas/heartwood/v2021_02_11/generateUrlResponsePayload.schema.js.map +1 -1
  60. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  61. package/build/.spruce/schemas/heartwood/v2021_02_11/getSkillViewsResponsePayload.schema.js.map +1 -1
  62. package/build/.spruce/schemas/heartwood/v2021_02_11/getViewControllersEmitTarget.schema.js.map +1 -1
  63. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js.map +1 -1
  64. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js.map +1 -1
  65. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitPayload.schema.js.map +1 -1
  66. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsEmitTargetAndPayload.schema.js.map +1 -1
  67. package/build/.spruce/schemas/heartwood/v2021_02_11/registerSkillViewsResponsePayload.schema.js.map +1 -1
  68. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/theme.schema.js.map +1 -1
  69. package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/themeProps.schema.js.map +1 -1
  70. package/build/.spruce/schemas/schemas.types.js.map +1 -1
  71. package/build/.spruce/schemas/spruce/v2020_07_22/fullMessageChoices.schema.js.map +1 -1
  72. package/build/.spruce/schemas/spruce/v2020_07_22/location.schema.js.map +1 -1
  73. package/build/.spruce/schemas/spruce/v2020_07_22/message.schema.js.map +1 -1
  74. package/build/.spruce/schemas/spruce/v2020_07_22/messageSource.schema.js.map +1 -1
  75. package/build/.spruce/schemas/spruce/v2020_07_22/messageTarget.schema.js.map +1 -1
  76. package/build/.spruce/schemas/spruce/v2020_07_22/organization.schema.js.map +1 -1
  77. package/build/.spruce/schemas/spruce/v2020_07_22/person.schema.js.map +1 -1
  78. package/build/.spruce/schemas/spruce/v2020_07_22/personLocation.schema.js.map +1 -1
  79. package/build/.spruce/schemas/spruce/v2020_07_22/personOrganization.schema.js.map +1 -1
  80. package/build/.spruce/schemas/spruce/v2020_07_22/profileImage.schema.js.map +1 -1
  81. package/build/.spruce/schemas/spruce/v2020_07_22/role.schema.js.map +1 -1
  82. package/build/.spruce/schemas/spruce/v2020_07_22/sendMessage.schema.js.map +1 -1
  83. package/build/.spruce/schemas/spruce/v2020_07_22/skill.schema.js.map +1 -1
  84. package/build/.spruce/schemas/spruce/v2020_07_22/skillCreator.schema.js.map +1 -1
  85. package/build/.spruce/schemas/spruceCli/v2020_07_22/bootSkillOptions.schema.js.map +1 -1
  86. package/build/.spruce/schemas/spruceCli/v2020_07_22/createConversationTopicOptions.schema.js.map +1 -1
  87. package/build/.spruce/schemas/spruceCli/v2020_07_22/createErrorOptions.schema.js.map +1 -1
  88. package/build/.spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema.js.map +1 -1
  89. package/build/.spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema.js.map +1 -1
  90. package/build/.spruce/schemas/spruceCli/v2020_07_22/createTestOptions.schema.js.map +1 -1
  91. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedDir.schema.js.map +1 -1
  92. package/build/.spruce/schemas/spruceCli/v2020_07_22/generatedFile.schema.js.map +1 -1
  93. package/build/.spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema.js.map +1 -1
  94. package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js.map +1 -1
  95. package/build/.spruce/schemas/spruceCli/v2020_07_22/namedTemplateItem.schema.js.map +1 -1
  96. package/build/.spruce/schemas/spruceCli/v2020_07_22/nodeFeatureOptions.schema.js.map +1 -1
  97. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboardOptions.schema.js.map +1 -1
  98. package/build/.spruce/schemas/spruceCli/v2020_07_22/onboarding.schema.js.map +1 -1
  99. package/build/.spruce/schemas/spruceCli/v2020_07_22/personWithToken.schema.js.map +1 -1
  100. package/build/.spruce/schemas/spruceCli/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.schema.js.map +1 -1
  101. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js.map +1 -1
  102. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema.js.map +1 -1
  103. package/build/.spruce/schemas/spruceCli/v2020_07_22/skillFeature.schema.js.map +1 -1
  104. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncErrorOptions.schema.js.map +1 -1
  105. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema.js.map +1 -1
  106. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema.js.map +1 -1
  107. package/build/.spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema.js.map +1 -1
  108. package/build/.spruce/schemas/spruceCli/v2020_07_22/testOptions.schema.js.map +1 -1
  109. package/build/.spruce/schemas/spruceCli/v2020_07_22/upgradeSkillOptions.schema.js.map +1 -1
  110. package/build/.spruce/schemas/spruceCli/v2020_07_22/watcherDidDetectChangesEmitPayload.schema.js.map +1 -1
  111. package/build/.spruce/schemas/spruceEventUtils/v2021_09_13/eventSource.schema.js.map +1 -1
  112. package/build/.spruce/skill.types.js.map +1 -1
  113. package/build/GlobalEmitter.js.map +1 -1
  114. package/build/InFlightEntertainment.js.map +1 -1
  115. package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
  116. package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
  117. package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
  118. package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
  119. package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
  120. package/build/__tests__/behavioral/CreatingSchemasWithGenerics.test.js.map +1 -1
  121. package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
  122. package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
  123. package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
  124. package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
  125. package/build/__tests__/behavioral/InstallingASkillAtAnOrg.test.js.map +1 -1
  126. package/build/__tests__/behavioral/ListeningToCoreEvents.test.js.map +1 -1
  127. package/build/__tests__/behavioral/LoggingInAsASkill.test.js.map +1 -1
  128. package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
  129. package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
  130. package/build/__tests__/behavioral/RebuildingASkill.test.js.map +1 -1
  131. package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
  132. package/build/__tests__/behavioral/RegisteringEventsOnBoot.test.js.map +1 -1
  133. package/build/__tests__/behavioral/RegisteringGlobalEvents.test.js.map +1 -1
  134. package/build/__tests__/behavioral/RegisteringSkillViewOnBoot.test.js.map +1 -1
  135. package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
  136. package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
  137. package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
  138. package/build/__tests__/behavioral/SettingUpASkillForTesting.test.js.map +1 -1
  139. package/build/__tests__/behavioral/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
  140. package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
  141. package/build/__tests__/behavioral/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
  142. package/build/__tests__/behavioral/TestReporterSettingsRemembered.test.js.map +1 -1
  143. package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
  144. package/build/__tests__/behavioral/TestingDataStores.test.js.map +1 -1
  145. package/build/__tests__/behavioral/WatchingSkillViews.test.js.map +1 -1
  146. package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
  147. package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
  148. package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
  149. package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
  150. package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
  151. package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
  152. package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
  153. package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
  154. package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
  155. package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
  156. package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
  157. package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
  158. package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
  159. package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
  160. package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
  161. package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
  162. package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
  163. package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
  164. package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
  165. package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
  166. package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
  167. package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
  168. package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
  169. package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
  170. package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
  171. package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
  172. package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
  173. package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
  174. package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
  175. package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
  176. package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
  177. package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
  178. package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
  179. package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
  180. package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
  181. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.d.ts +1 -0
  182. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +20 -14
  183. package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
  184. package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
  185. package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
  186. package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
  187. package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
  188. package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
  189. package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
  190. package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
  191. package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
  192. package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
  193. package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
  194. package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
  195. package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
  196. package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
  197. package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
  198. package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
  199. package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
  200. package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
  201. package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
  202. package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
  203. package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
  204. package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
  205. package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
  206. package/build/__tests__/implementation/BuildService.test.js.map +1 -1
  207. package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
  208. package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
  209. package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
  210. package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
  211. package/build/__tests__/implementation/DataStoreStore.test.d.ts +1 -0
  212. package/build/__tests__/implementation/DataStoreStore.test.js +30 -3
  213. package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
  214. package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
  215. package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
  216. package/build/__tests__/implementation/EventStore.test.d.ts +1 -0
  217. package/build/__tests__/implementation/EventStore.test.js +61 -33
  218. package/build/__tests__/implementation/EventStore.test.js.map +1 -1
  219. package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
  220. package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
  221. package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
  222. package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
  223. package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
  224. package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
  225. package/build/__tests__/implementation/GlobalEmitter.js.map +1 -1
  226. package/build/__tests__/implementation/Introspection.test.js.map +1 -1
  227. package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
  228. package/build/__tests__/implementation/LintService.test.js.map +1 -1
  229. package/build/__tests__/implementation/ListenerStore.test.d.ts +4 -0
  230. package/build/__tests__/implementation/ListenerStore.test.js +56 -0
  231. package/build/__tests__/implementation/ListenerStore.test.js.map +1 -0
  232. package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
  233. package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
  234. package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
  235. package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
  236. package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
  237. package/build/__tests__/implementation/PkgService.test.js.map +1 -1
  238. package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
  239. package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
  240. package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
  241. package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
  242. package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
  243. package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
  244. package/build/__tests__/implementation/StoreFeature.test.js +1 -1
  245. package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
  246. package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
  247. package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
  248. package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
  249. package/build/__tests__/implementation/Widgets.test.js.map +1 -1
  250. package/build/__tests__/support/onTestFileResult.js.map +1 -1
  251. package/build/__tests__/support/scripts/first.script.js.map +1 -1
  252. package/build/__tests__/support/scripts/second.script.js.map +1 -1
  253. package/build/__tests__/support/scripts/third.test.script.js.map +1 -1
  254. package/build/addons/filePrompt.addon.js.map +1 -1
  255. package/build/cli.js.map +1 -1
  256. package/build/components/AbstractComponent.js.map +1 -1
  257. package/build/components/FormComponent.js.map +1 -1
  258. package/build/components/QuizComponent.js.map +1 -1
  259. package/build/constants.js.map +1 -1
  260. package/build/errors/SpruceError.js.map +1 -1
  261. package/build/errors/actionCancelled.builder.js.map +1 -1
  262. package/build/errors/bootError.builder.js.map +1 -1
  263. package/build/errors/buildFailed.builder.js.map +1 -1
  264. package/build/errors/cacheNotEnabled.builder.js.map +1 -1
  265. package/build/errors/commandAborted.builder.js.map +1 -1
  266. package/build/errors/commandBlocked.builder.js.map +1 -1
  267. package/build/errors/commandNotImplemented.builder.js.map +1 -1
  268. package/build/errors/createAutoloaderFailed.builder.js.map +1 -1
  269. package/build/errors/dependencyExists.builder.js.map +1 -1
  270. package/build/errors/deployFailed.builder.js.map +1 -1
  271. package/build/errors/directoryEmpty.builder.js.map +1 -1
  272. package/build/errors/directoryNotSkill.builder.js.map +1 -1
  273. package/build/errors/dockerNotStarted.builder.js.map +1 -1
  274. package/build/errors/executingCommandFailed.builder.js.map +1 -1
  275. package/build/errors/failedToImport.builder.js.map +1 -1
  276. package/build/errors/featureNotInstalled.builder.js.map +1 -1
  277. package/build/errors/fileExists.builder.js.map +1 -1
  278. package/build/errors/generic.builder.js.map +1 -1
  279. package/build/errors/invalidCommand.builder.js.map +1 -1
  280. package/build/errors/invalidEventContract.builder.js.map +1 -1
  281. package/build/errors/invalidFeatureCode.builder.js.map +1 -1
  282. package/build/errors/invalidTestDirectory.builder.js.map +1 -1
  283. package/build/errors/lintFailed.builder.js.map +1 -1
  284. package/build/errors/mercuryResponseError.builder.js.map +1 -1
  285. package/build/errors/missingDependencies.builder.js.map +1 -1
  286. package/build/errors/noOrganizationsFound.builder.js.map +1 -1
  287. package/build/errors/noSkillsRegistered.builder.js.map +1 -1
  288. package/build/errors/notImplemented.builder.js.map +1 -1
  289. package/build/errors/notLoggedIn.builder.js.map +1 -1
  290. package/build/errors/schemaExists.builder.js.map +1 -1
  291. package/build/errors/schemaFailedToImport.builder.js.map +1 -1
  292. package/build/errors/schemaTemplateItemBuildingFailed.builder.js.map +1 -1
  293. package/build/errors/skillNotFound.builder.js.map +1 -1
  294. package/build/errors/skillNotRegistered.builder.js.map +1 -1
  295. package/build/errors/skillViewExists.builder.js.map +1 -1
  296. package/build/errors/storeExists.builder.js.map +1 -1
  297. package/build/errors/testFailed.builder.js.map +1 -1
  298. package/build/errors/themeExists.builder.js.map +1 -1
  299. package/build/errors/transportAlreadyExists.builder.js.map +1 -1
  300. package/build/errors/vscodeNotInstalled.builder.js.map +1 -1
  301. package/build/features/AbstractAction.js.map +1 -1
  302. package/build/features/AbstractFeature.js.map +1 -1
  303. package/build/features/ActionExecuter.js.map +1 -1
  304. package/build/features/ActionFactory.js.map +1 -1
  305. package/build/features/ActionQuestionAsker.js.map +1 -1
  306. package/build/features/FeatureCommandAttacher.js.map +1 -1
  307. package/build/features/FeatureInstaller.js.map +1 -1
  308. package/build/features/FeatureInstallerFactory.js.map +1 -1
  309. package/build/features/OverrideActionDecorator.js.map +1 -1
  310. package/build/features/cache/CacheFeature.js.map +1 -1
  311. package/build/features/cache/actions/DisableAction.js.map +1 -1
  312. package/build/features/cache/actions/EnableAction.js.map +1 -1
  313. package/build/features/cache/constants.js.map +1 -1
  314. package/build/features/conversation/ConversationFeature.js.map +1 -1
  315. package/build/features/conversation/actions/CreateAction.js.map +1 -1
  316. package/build/features/conversation/actions/TestAction.js.map +1 -1
  317. package/build/features/conversation/stores/ConversationStore.js.map +1 -1
  318. package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
  319. package/build/features/dependencies/DependencyFeature.js.map +1 -1
  320. package/build/features/dependencies/actions/AddAction.js.map +1 -1
  321. package/build/features/dependencies/actions/ManageAction.js.map +1 -1
  322. package/build/features/deploy/DeployFeature.js.map +1 -1
  323. package/build/features/deploy/actions/HerokuAction.js.map +1 -1
  324. package/build/features/deploy/writers/DeployWriter.js.map +1 -1
  325. package/build/features/error/ErrorFeature.js.map +1 -1
  326. package/build/features/error/ParentTestFinder.js.map +1 -1
  327. package/build/features/error/actions/CreateAction.js.map +1 -1
  328. package/build/features/error/actions/SyncAction.js.map +1 -1
  329. package/build/features/error/writers/ErrorWriter.js.map +1 -1
  330. package/build/features/event/EventFeature.js.map +1 -1
  331. package/build/features/event/actions/CreateAction.js.map +1 -1
  332. package/build/features/event/actions/ListenAction.js.map +1 -1
  333. package/build/features/event/actions/SetRemoteAction.js.map +1 -1
  334. package/build/features/event/actions/SyncAction.js.map +1 -1
  335. package/build/features/event/actions/SyncListenersAction.js.map +1 -1
  336. package/build/features/event/builders/EventContractBuilder.js.map +1 -1
  337. package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
  338. package/build/features/event/services/EventSettingsService.js.map +1 -1
  339. package/build/features/event/services/RemoteService.js.map +1 -1
  340. package/build/features/event/stores/EventStore.d.ts +1 -0
  341. package/build/features/event/stores/EventStore.js +6 -1
  342. package/build/features/event/stores/EventStore.js.map +1 -1
  343. package/build/features/event/stores/ListenerStore.d.ts +1 -0
  344. package/build/features/event/stores/ListenerStore.js +6 -1
  345. package/build/features/event/stores/ListenerStore.js.map +1 -1
  346. package/build/features/event/writers/EventWriter.js +1 -1
  347. package/build/features/event/writers/EventWriter.js.map +1 -1
  348. package/build/features/eventContract/EventContractFeature.js.map +1 -1
  349. package/build/features/eventContract/actions/PullAction.js.map +1 -1
  350. package/build/features/feature.utilities.js.map +1 -1
  351. package/build/features/features.types.js.map +1 -1
  352. package/build/features/log/LogFeature.js.map +1 -1
  353. package/build/features/log/actions/CreateTransportAction.js.map +1 -1
  354. package/build/features/log/writers/LogWriter.js.map +1 -1
  355. package/build/features/node/NodeFeature.js.map +1 -1
  356. package/build/features/node/actions/CreateAction.js.map +1 -1
  357. package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
  358. package/build/features/node/actions/UpgradeAction.js.map +1 -1
  359. package/build/features/node/writers/NodeWriter.js.map +1 -1
  360. package/build/features/onboard/OnboardFeature.js.map +1 -1
  361. package/build/features/onboard/ScriptLoader.js.map +1 -1
  362. package/build/features/onboard/ScriptPlayer.js.map +1 -1
  363. package/build/features/onboard/actions/OnboardAction.js.map +1 -1
  364. package/build/features/onboard/scripts/onboarding.first.script.js.map +1 -1
  365. package/build/features/onboard/scripts/onboarding.immersive.script.js.map +1 -1
  366. package/build/features/onboard/scripts/onboarding.returning.script.js.map +1 -1
  367. package/build/features/onboard/scripts/onboarding.short.script.js.map +1 -1
  368. package/build/features/onboard/scripts/todo/todo.create.skill.script.js.map +1 -1
  369. package/build/features/onboard/scripts/todo/todo.test.script.js.map +1 -1
  370. package/build/features/onboard/scripts/wrongCommand.script.js.map +1 -1
  371. package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
  372. package/build/features/organization/OrganizationFeature.js.map +1 -1
  373. package/build/features/organization/actions/CreateAction.js.map +1 -1
  374. package/build/features/organization/actions/InstallAction.js.map +1 -1
  375. package/build/features/organization/stores/OrganizationStore.js.map +1 -1
  376. package/build/features/person/PersonFeature.js.map +1 -1
  377. package/build/features/person/actions/LoginAction.js.map +1 -1
  378. package/build/features/person/actions/LogoutAction.js.map +1 -1
  379. package/build/features/person/actions/WhoamiAction.js.map +1 -1
  380. package/build/features/sandbox/SandboxFeature.js.map +1 -1
  381. package/build/features/sandbox/actions/SetupAction.js.map +1 -1
  382. package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
  383. package/build/features/schema/SchemaFeature.js.map +1 -1
  384. package/build/features/schema/ValueTypeBuilder.js.map +1 -1
  385. package/build/features/schema/actions/CreateAction.js.map +1 -1
  386. package/build/features/schema/actions/SyncAction.js.map +1 -1
  387. package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
  388. package/build/features/schema/services/SchemaService.js.map +1 -1
  389. package/build/features/schema/stores/SchemaStore.js.map +1 -1
  390. package/build/features/schema/utilities/schema.utility.js.map +1 -1
  391. package/build/features/schema/utilities/schemaDisk.utility.js.map +1 -1
  392. package/build/features/schema/utilities/schemaGenerator.utility.js.map +1 -1
  393. package/build/features/schema/writers/SchemaWriter.js +1 -1
  394. package/build/features/schema/writers/SchemaWriter.js.map +1 -1
  395. package/build/features/skill/SkillFeature.js.map +1 -1
  396. package/build/features/skill/actions/BootAction.js.map +1 -1
  397. package/build/features/skill/actions/CreateAction.js.map +1 -1
  398. package/build/features/skill/actions/DashboardAction.js.map +1 -1
  399. package/build/features/skill/actions/LoginAction.js.map +1 -1
  400. package/build/features/skill/actions/RebuildAction.js.map +1 -1
  401. package/build/features/skill/actions/RegisterAction.js.map +1 -1
  402. package/build/features/skill/stores/SkillStore.js.map +1 -1
  403. package/build/features/skill/updaters/Updater.js.map +1 -1
  404. package/build/features/skill/writers/SkillWriter.js.map +1 -1
  405. package/build/features/store/StoreFeature.js +1 -1
  406. package/build/features/store/StoreFeature.js.map +1 -1
  407. package/build/features/store/actions/CreateAction.js.map +1 -1
  408. package/build/features/store/actions/SyncAction.js.map +1 -1
  409. package/build/features/store/stores/StoreStore.d.ts +1 -0
  410. package/build/features/store/stores/StoreStore.js +6 -1
  411. package/build/features/store/stores/StoreStore.js.map +1 -1
  412. package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
  413. package/build/features/store/writers/StoreWriter.js.map +1 -1
  414. package/build/features/test/TestFeature.js.map +1 -1
  415. package/build/features/test/TestLogItemGenerator.js.map +1 -1
  416. package/build/features/test/TestReporter.js.map +1 -1
  417. package/build/features/test/TestRunner.js.map +1 -1
  418. package/build/features/test/actions/CreateAction.js +1 -1
  419. package/build/features/test/actions/CreateAction.js.map +1 -1
  420. package/build/features/test/actions/SetupAction.js.map +1 -1
  421. package/build/features/test/actions/TestAction.js.map +1 -1
  422. package/build/features/test/test.types.js.map +1 -1
  423. package/build/features/test/writers/TestWriter.js.map +1 -1
  424. package/build/features/universalDevDependencies.js.map +1 -1
  425. package/build/features/universalFileDescriptions.js.map +1 -1
  426. package/build/features/universalScripts.js.map +1 -1
  427. package/build/features/validateAndNormalize.utility.d.ts +2 -2
  428. package/build/features/validateAndNormalize.utility.js +2 -2
  429. package/build/features/validateAndNormalize.utility.js.map +1 -1
  430. package/build/features/view/ViewFeature.js.map +1 -1
  431. package/build/features/view/actions/CreateAction.js.map +1 -1
  432. package/build/features/view/actions/CreateThemeAction.js.map +1 -1
  433. package/build/features/view/actions/SyncAction.js.map +1 -1
  434. package/build/features/view/actions/WatchAction.js.map +1 -1
  435. package/build/features/view/stores/ViewStore.js.map +1 -1
  436. package/build/features/view/writers/ViewWriter.js +1 -3
  437. package/build/features/view/writers/ViewWriter.js.map +1 -1
  438. package/build/features/vscode/VsCodeFeature.js.map +1 -1
  439. package/build/features/vscode/actions/SetupAction.js.map +1 -1
  440. package/build/features/vscode/services/VsCodeService.js.map +1 -1
  441. package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
  442. package/build/features/watch/WatchFeature.js.map +1 -1
  443. package/build/index.js.map +1 -1
  444. package/build/interfaces/SpyInterface.js.map +1 -1
  445. package/build/interfaces/TerminalInterface.js.map +1 -1
  446. package/build/schemas/v2020_07_22/bootSkillOptions.builder.js.map +1 -1
  447. package/build/schemas/v2020_07_22/createConversationTopicOptions.builder.js.map +1 -1
  448. package/build/schemas/v2020_07_22/createErrorOptions.builder.js.map +1 -1
  449. package/build/schemas/v2020_07_22/createOrganizationOptions.builder.js.map +1 -1
  450. package/build/schemas/v2020_07_22/createSchemaOptions.builder.js.map +1 -1
  451. package/build/schemas/v2020_07_22/createTestOptions.builder.js.map +1 -1
  452. package/build/schemas/v2020_07_22/installSkillAtOrganizationOptions.builder.js.map +1 -1
  453. package/build/schemas/v2020_07_22/listenEventOptions.builder.js.map +1 -1
  454. package/build/schemas/v2020_07_22/namedTemplateItem.builder.js.map +1 -1
  455. package/build/schemas/v2020_07_22/nodeFeatureOptions.builder.js.map +1 -1
  456. package/build/schemas/v2020_07_22/onboardOptions.builder.js.map +1 -1
  457. package/build/schemas/v2020_07_22/onboarding.builder.js.map +1 -1
  458. package/build/schemas/v2020_07_22/personWithToken.builder.js.map +1 -1
  459. package/build/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.js.map +1 -1
  460. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js.map +1 -1
  461. package/build/schemas/v2020_07_22/setupVscodeOptions.builder.js.map +1 -1
  462. package/build/schemas/v2020_07_22/skillFeature.builder.js.map +1 -1
  463. package/build/schemas/v2020_07_22/syncErrorOptions.builder.js.map +1 -1
  464. package/build/schemas/v2020_07_22/syncEventOptions.builder.js.map +1 -1
  465. package/build/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.js.map +1 -1
  466. package/build/schemas/v2020_07_22/syncSchemasOptions.builder.js.map +1 -1
  467. package/build/schemas/v2020_07_22/testOptions.builder.js.map +1 -1
  468. package/build/schemas/v2020_07_22/upgradeSkillOptions.builder.js.map +1 -1
  469. package/build/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.js.map +1 -1
  470. package/build/services/BuildService.js.map +1 -1
  471. package/build/services/CommandService.js.map +1 -1
  472. package/build/services/DependencyService.js.map +1 -1
  473. package/build/services/GameService.js.map +1 -1
  474. package/build/services/ImportService.js.map +1 -1
  475. package/build/services/LintService.js.map +1 -1
  476. package/build/services/PkgService.js.map +1 -1
  477. package/build/services/ServiceFactory.js.map +1 -1
  478. package/build/services/TypeCheckerService.js.map +1 -1
  479. package/build/stores/AbstractLocalStore.js.map +1 -1
  480. package/build/stores/AbstractStore.js.map +1 -1
  481. package/build/stores/StoreFactory.js.map +1 -1
  482. package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
  483. package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
  484. package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
  485. package/build/tests/AbstractCliTest.js.map +1 -1
  486. package/build/tests/AbstractErrorTest.js.map +1 -1
  487. package/build/tests/AbstractEventTest.js.map +1 -1
  488. package/build/tests/AbstractSchemaTest.js.map +1 -1
  489. package/build/tests/AbstractSkillTest.js.map +1 -1
  490. package/build/tests/AbstractTestTest.js.map +1 -1
  491. package/build/tests/CommandFaker.d.ts +2 -1
  492. package/build/tests/CommandFaker.js +13 -7
  493. package/build/tests/CommandFaker.js.map +1 -1
  494. package/build/tests/JestJsonParser.js.map +1 -1
  495. package/build/tests/MockProgramFactory.js.map +1 -1
  496. package/build/tests/buildTestCache.js.map +1 -1
  497. package/build/tests/cleanTestCache.js.map +1 -1
  498. package/build/tests/cleanTestData.js.map +1 -1
  499. package/build/tests/constants.js.map +1 -1
  500. package/build/tests/fixtures/FeatureFixture.js.map +1 -1
  501. package/build/tests/fixtures/MercuryFixture.js.map +1 -1
  502. package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
  503. package/build/tests/fixtures/PersonFixture.js.map +1 -1
  504. package/build/tests/fixtures/SkillFixture.js.map +1 -1
  505. package/build/tests/fixtures/ViewFixture.js.map +1 -1
  506. package/build/tests/utilities/test.utility.js.map +1 -1
  507. package/build/tests/utilities/uiAssert.utility.js.map +1 -1
  508. package/build/types/apiClient.types.js.map +1 -1
  509. package/build/types/cli.types.js.map +1 -1
  510. package/build/types/graphicsInterface.types.js.map +1 -1
  511. package/build/updaters/ScriptUpdater.js.map +1 -1
  512. package/build/utilities/action.utility.js.map +1 -1
  513. package/build/utilities/apiClient.utility.js.map +1 -1
  514. package/build/utilities/argParser.utility.js.map +1 -1
  515. package/build/utilities/commander.utility.js.map +1 -1
  516. package/build/utilities/duration.utility.js.map +1 -1
  517. package/build/utilities/eventContractCleaner.utility.js.map +1 -1
  518. package/build/utilities/form.utility.js.map +1 -1
  519. package/build/utilities/introspection.utility.js.map +1 -1
  520. package/build/utilities/isCi.js.map +1 -1
  521. package/build/utilities/tsConfig.utility.js.map +1 -1
  522. package/build/utilities/ui.utility.js.map +1 -1
  523. package/build/widgets/Theme.js.map +1 -1
  524. package/build/widgets/WidgetFactory.js.map +1 -1
  525. package/build/widgets/keySelectChoices.js.map +1 -1
  526. package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
  527. package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
  528. package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
  529. package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
  530. package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
  531. package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
  532. package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
  533. package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
  534. package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
  535. package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
  536. package/build/widgets/terminalKit/termKit.utility.js.map +1 -1
  537. package/build/widgets/types/button.types.js.map +1 -1
  538. package/build/widgets/types/factory.types.js.map +1 -1
  539. package/build/widgets/types/input.types.js.map +1 -1
  540. package/build/widgets/types/layout.types.js.map +1 -1
  541. package/build/widgets/types/menuBar.types.js.map +1 -1
  542. package/build/widgets/types/popup.types.js.map +1 -1
  543. package/build/widgets/types/progressBar.types.js.map +1 -1
  544. package/build/widgets/types/table.types.js.map +1 -1
  545. package/build/widgets/types/text.types.js.map +1 -1
  546. package/build/widgets/types/widgets.types.js.map +1 -1
  547. package/build/widgets/types/window.types.js.map +1 -1
  548. package/build/widgets/widget.utilities.js.map +1 -1
  549. package/build/writers/AbstractWriter.js.map +1 -1
  550. package/build/writers/WriterFactory.js.map +1 -1
  551. package/package.json +36 -36
  552. package/src/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.ts +21 -7
  553. package/src/__tests__/implementation/DataStoreStore.test.ts +8 -0
  554. package/src/__tests__/implementation/EventStore.test.ts +14 -0
  555. package/src/__tests__/implementation/ListenerStore.test.ts +14 -0
  556. package/src/__tests__/implementation/StoreFeature.test.ts +1 -1
  557. package/src/features/AbstractAction.ts +2 -2
  558. package/src/features/event/builders/EventContractBuilder.ts +2 -2
  559. package/src/features/event/stores/EventStore.ts +11 -8
  560. package/src/features/event/stores/ListenerStore.ts +5 -3
  561. package/src/features/event/writers/EventWriter.ts +1 -1
  562. package/src/features/schema/writers/SchemaWriter.ts +1 -1
  563. package/src/features/store/StoreFeature.ts +1 -1
  564. package/src/features/store/stores/StoreStore.ts +5 -1
  565. package/src/features/test/actions/CreateAction.ts +1 -1
  566. package/src/features/validateAndNormalize.utility.ts +2 -2
  567. package/src/features/view/writers/ViewWriter.ts +3 -2
  568. package/src/tests/CommandFaker.ts +9 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/onboard/scripts/onboarding.short.script.ts"],"names":["script","player","ui","clear","renderEnter","line","renderLine","GraphicsTextEffect","Italic","renderCommand","waitForEnter","onboardingStore","setMode","setStage","featuresUtil","generateCommand","renderImage","diskUtil","resolvePath","__dirname","width","height","command","BgMagenta","White"],"mappings":";;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AAGA,IAAMA,MAAc,GAAG;AAAA,2FACtB,iBAAOC,MAAP;AAAA;AAAA;AAAA;AAAA;AACCA,YAAAA,MAAM,CAACC,EAAP,CAAUC,KAAV;AADD;AAAA,mBAEOC,WAAW,CAACH,MAAD,CAFlB;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GADsB;;AAAA;AAAA;AAAA;AAAA,KAKtB,0EALsB,EAMtB,0EANsB,EAOtB,2BAPsB,EAQtB,oCARsB;AAAA,4FAStB,kBAAOA,MAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AACOI,YAAAA,IADP;AAECJ,YAAAA,MAAM,CAACC,EAAP,CAAUI,UAAV,CAAqBD,IAArB,EAA2B,CAACE,sCAAmBC,MAApB,CAA3B;AACAP,YAAAA,MAAM,CAACC,EAAP,CAAUI,UAAV,CAAqB,EAArB;;AAHD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GATsB;;AAAA;AAAA;AAAA;AAAA,KActB,oDAdsB,EAetB,oBAfsB;AAAA,4FAgBtB,kBAAOL,MAAP;AAAA;AAAA;AAAA;AAAA;AACCQ,YAAAA,aAAa,CAACR,MAAM,CAACC,EAAR,EAAY,2BAAZ,CAAb;;AADD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAhBsB;;AAAA;AAAA;AAAA;AAAA,KAoBtB,uCApBsB;AAAA,4FAqBtB,kBAAOD,MAAP;AAAA;AAAA;AAAA;AAAA;AACCQ,YAAAA,aAAa,CAACR,MAAM,CAACC,EAAR,mBAAb;;AADD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GArBsB;;AAAA;AAAA;AAAA;AAAA,KAwBtB,oCAxBsB;AAAA,4FAyBtB,kBAAOD,MAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACOA,MAAM,CAACC,EAAP,CAAUQ,YAAV,CAAuB,eAAvB,CADP;;AAAA;AAGCT,YAAAA,MAAM,CAACU,eAAP,CAAuBC,OAAvB,CAA+B,OAA/B;AACAX,YAAAA,MAAM,CAACU,eAAP,CAAuBE,QAAvB,CACCC,oBAAaC,eAAb,CAA6B,OAA7B,EAAsC,QAAtC,CADD;;AAJD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAzBsB;;AAAA;AAAA;AAAA;AAAA,IAAvB;;AAmCO,SAASX,WAAT,CAAqBH,MAArB,EAA6C;AACnD,SAAOA,MAAM,CAACC,EAAP,CAAUc,WAAV,CACNC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,oCAAhC,CADM,EAEN;AACCC,IAAAA,KAAK,EAAE,GADR;AAECC,IAAAA,MAAM,EAAE;AAFT,GAFM,CAAP;AAOA;;AAEM,SAASZ,aAAT,CAAuBP,EAAvB,EAA8CoB,OAA9C,EAA+D;AACrEpB,EAAAA,EAAE,CAACI,UAAH,CAAcgB,OAAd,EAAuB,CACtBf,sCAAmBgB,SADG,EAEtBhB,sCAAmBiB,KAFG,CAAvB;AAIAtB,EAAAA,EAAE,CAACI,UAAH,CAAc,EAAd;AACA;;eAEcN,M","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { GraphicsInterface } from '../../../types/cli.types'\nimport { GraphicsTextEffect } from '../../../types/graphicsInterface.types'\nimport featuresUtil from '../../feature.utilities'\nimport { CallbackPlayer, Script } from '../ScriptPlayer'\n\nconst script: Script = [\n\tasync (player) => {\n\t\tplayer.ui.clear()\n\t\tawait renderEnter(player)\n\t},\n\t\"You push the door open and enter into the largest room you've ever seen.\",\n\t\"So big, in fact, you can't see where the floors end and the walls begin.\",\n\t'A familiar voice echos...',\n\t'\"Hey! It\\'s Sprucebot again! 🌲🤖\"',\n\tasync (player) => {\n\t\tconst line = `This is so much fun! I love playing both the narrator and a character!`\n\t\tplayer.ui.renderLine(line, [GraphicsTextEffect.Italic])\n\t\tplayer.ui.renderLine('')\n\t},\n\t'Anyway... \"How about we create a simple todo app.\"',\n\t'\"Go ahead and run\"',\n\tasync (player) => {\n\t\trenderCommand(player.ui, 'spruce create.skill todos')\n\t},\n\n\t'\"Tip! If you ever get lost, just run\"',\n\tasync (player) => {\n\t\trenderCommand(player.ui, `spruce onboard`)\n\t},\n\t'\"and I\\'ll get you back on track.\"',\n\tasync (player) => {\n\t\tawait player.ui.waitForEnter('\"Lets do it!\"')\n\n\t\tplayer.onboardingStore.setMode('short')\n\t\tplayer.onboardingStore.setStage(\n\t\t\tfeaturesUtil.generateCommand('skill', 'create') as 'create.skill'\n\t\t)\n\t},\n]\n\nexport function renderEnter(player: CallbackPlayer) {\n\treturn player.ui.renderImage(\n\t\tdiskUtil.resolvePath(__dirname, '../../../../docs/images/inside.jpg'),\n\t\t{\n\t\t\twidth: 100,\n\t\t\theight: 35,\n\t\t}\n\t)\n}\n\nexport function renderCommand(ui: GraphicsInterface, command: string) {\n\tui.renderLine(command, [\n\t\tGraphicsTextEffect.BgMagenta,\n\t\tGraphicsTextEffect.White,\n\t])\n\tui.renderLine('')\n}\n\nexport default script\n"],"file":"onboarding.short.script.js"}
1
+ {"version":3,"file":"onboarding.short.script.js","names":["script","player","ui","clear","renderEnter","line","renderLine","GraphicsTextEffect","Italic","renderCommand","waitForEnter","onboardingStore","setMode","setStage","featuresUtil","generateCommand","renderImage","diskUtil","resolvePath","__dirname","width","height","command","BgMagenta","White"],"sources":["../../../../src/features/onboard/scripts/onboarding.short.script.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { GraphicsInterface } from '../../../types/cli.types'\nimport { GraphicsTextEffect } from '../../../types/graphicsInterface.types'\nimport featuresUtil from '../../feature.utilities'\nimport { CallbackPlayer, Script } from '../ScriptPlayer'\n\nconst script: Script = [\n\tasync (player) => {\n\t\tplayer.ui.clear()\n\t\tawait renderEnter(player)\n\t},\n\t\"You push the door open and enter into the largest room you've ever seen.\",\n\t\"So big, in fact, you can't see where the floors end and the walls begin.\",\n\t'A familiar voice echos...',\n\t'\"Hey! It\\'s Sprucebot again! 🌲🤖\"',\n\tasync (player) => {\n\t\tconst line = `This is so much fun! I love playing both the narrator and a character!`\n\t\tplayer.ui.renderLine(line, [GraphicsTextEffect.Italic])\n\t\tplayer.ui.renderLine('')\n\t},\n\t'Anyway... \"How about we create a simple todo app.\"',\n\t'\"Go ahead and run\"',\n\tasync (player) => {\n\t\trenderCommand(player.ui, 'spruce create.skill todos')\n\t},\n\n\t'\"Tip! If you ever get lost, just run\"',\n\tasync (player) => {\n\t\trenderCommand(player.ui, `spruce onboard`)\n\t},\n\t'\"and I\\'ll get you back on track.\"',\n\tasync (player) => {\n\t\tawait player.ui.waitForEnter('\"Lets do it!\"')\n\n\t\tplayer.onboardingStore.setMode('short')\n\t\tplayer.onboardingStore.setStage(\n\t\t\tfeaturesUtil.generateCommand('skill', 'create') as 'create.skill'\n\t\t)\n\t},\n]\n\nexport function renderEnter(player: CallbackPlayer) {\n\treturn player.ui.renderImage(\n\t\tdiskUtil.resolvePath(__dirname, '../../../../docs/images/inside.jpg'),\n\t\t{\n\t\t\twidth: 100,\n\t\t\theight: 35,\n\t\t}\n\t)\n}\n\nexport function renderCommand(ui: GraphicsInterface, command: string) {\n\tui.renderLine(command, [\n\t\tGraphicsTextEffect.BgMagenta,\n\t\tGraphicsTextEffect.White,\n\t])\n\tui.renderLine('')\n}\n\nexport default script\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AAGA,IAAMA,MAAc,GAAG;EAAA,yFACtB,iBAAOC,MAAP;IAAA;MAAA;QAAA;UAAA;YACCA,MAAM,CAACC,EAAP,CAAUC,KAAV;YADD;YAAA,OAEOC,WAAW,CAACH,MAAD,CAFlB;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CADsB;;EAAA;IAAA;EAAA;AAAA,KAKtB,0EALsB,EAMtB,0EANsB,EAOtB,2BAPsB,EAQtB,oCARsB;EAAA,0FAStB,kBAAOA,MAAP;IAAA;IAAA;MAAA;QAAA;UAAA;YACOI,IADP;YAECJ,MAAM,CAACC,EAAP,CAAUI,UAAV,CAAqBD,IAArB,EAA2B,CAACE,sCAAmBC,MAApB,CAA3B;YACAP,MAAM,CAACC,EAAP,CAAUI,UAAV,CAAqB,EAArB;;UAHD;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CATsB;;EAAA;IAAA;EAAA;AAAA,KActB,oDAdsB,EAetB,oBAfsB;EAAA,0FAgBtB,kBAAOL,MAAP;IAAA;MAAA;QAAA;UAAA;YACCQ,aAAa,CAACR,MAAM,CAACC,EAAR,EAAY,2BAAZ,CAAb;;UADD;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAhBsB;;EAAA;IAAA;EAAA;AAAA,KAoBtB,uCApBsB;EAAA,0FAqBtB,kBAAOD,MAAP;IAAA;MAAA;QAAA;UAAA;YACCQ,aAAa,CAACR,MAAM,CAACC,EAAR,mBAAb;;UADD;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CArBsB;;EAAA;IAAA;EAAA;AAAA,KAwBtB,oCAxBsB;EAAA,0FAyBtB,kBAAOD,MAAP;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OACOA,MAAM,CAACC,EAAP,CAAUQ,YAAV,CAAuB,eAAvB,CADP;;UAAA;YAGCT,MAAM,CAACU,eAAP,CAAuBC,OAAvB,CAA+B,OAA/B;YACAX,MAAM,CAACU,eAAP,CAAuBE,QAAvB,CACCC,oBAAaC,eAAb,CAA6B,OAA7B,EAAsC,QAAtC,CADD;;UAJD;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAzBsB;;EAAA;IAAA;EAAA;AAAA,IAAvB;;AAmCO,SAASX,WAAT,CAAqBH,MAArB,EAA6C;EACnD,OAAOA,MAAM,CAACC,EAAP,CAAUc,WAAV,CACNC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,oCAAhC,CADM,EAEN;IACCC,KAAK,EAAE,GADR;IAECC,MAAM,EAAE;EAFT,CAFM,CAAP;AAOA;;AAEM,SAASZ,aAAT,CAAuBP,EAAvB,EAA8CoB,OAA9C,EAA+D;EACrEpB,EAAE,CAACI,UAAH,CAAcgB,OAAd,EAAuB,CACtBf,sCAAmBgB,SADG,EAEtBhB,sCAAmBiB,KAFG,CAAvB;EAIAtB,EAAE,CAACI,UAAH,CAAc,EAAd;AACA;;eAEcN,M"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/features/onboard/scripts/todo/todo.create.skill.script.ts"],"names":["script","player","ui","waitForEnter","onboardingStore","setStage"],"mappings":";;;;;;;;;;;;;AAEA,IAAMA,MAAc,GAAG,CACtB,aADsB,EAEtB,iDAFsB,EAGtB,6IAHsB,EAItB,wCAJsB,EAKtB,iCALsB,EAMtB,+BANsB,EAOtB,kCAPsB;AAAA,2FAQtB,iBAAOC,MAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACOA,MAAM,CAACC,EAAP,CAAUC,YAAV,CAAuB,EAAvB,CADP;;AAAA;AAECF,YAAAA,MAAM,CAACG,eAAP,CAAuBC,QAAvB,CAAgC,MAAhC;;AAFD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GARsB;;AAAA;AAAA;AAAA;AAAA,IAAvB;eAceL,M","sourcesContent":["import { Script } from '../../ScriptPlayer'\n\nconst script: Script = [\n\t'Great work!',\n\t\"I'm going to walk you through creating a skill.\",\n\t\"Because we follow the 3 Laws of Test Driven Development (https://bit.ly/3ls9phs), we're going to get all the way to our first failing test.\",\n\t'First step, you gotta name your skill.',\n\t\"Let's call it 'Todos' to start.\",\n\t'The description is up to you!',\n\t\"I'll meet you on the other side!\",\n\tasync (player) => {\n\t\tawait player.ui.waitForEnter('')\n\t\tplayer.onboardingStore.setStage('test')\n\t},\n]\n\nexport default script\n"],"file":"todo.create.skill.script.js"}
1
+ {"version":3,"file":"todo.create.skill.script.js","names":["script","player","ui","waitForEnter","onboardingStore","setStage"],"sources":["../../../../../src/features/onboard/scripts/todo/todo.create.skill.script.ts"],"sourcesContent":["import { Script } from '../../ScriptPlayer'\n\nconst script: Script = [\n\t'Great work!',\n\t\"I'm going to walk you through creating a skill.\",\n\t\"Because we follow the 3 Laws of Test Driven Development (https://bit.ly/3ls9phs), we're going to get all the way to our first failing test.\",\n\t'First step, you gotta name your skill.',\n\t\"Let's call it 'Todos' to start.\",\n\t'The description is up to you!',\n\t\"I'll meet you on the other side!\",\n\tasync (player) => {\n\t\tawait player.ui.waitForEnter('')\n\t\tplayer.onboardingStore.setStage('test')\n\t},\n]\n\nexport default script\n"],"mappings":";;;;;;;;;;;;;AAEA,IAAMA,MAAc,GAAG,CACtB,aADsB,EAEtB,iDAFsB,EAGtB,6IAHsB,EAItB,wCAJsB,EAKtB,iCALsB,EAMtB,+BANsB,EAOtB,kCAPsB;EAAA,yFAQtB,iBAAOC,MAAP;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OACOA,MAAM,CAACC,EAAP,CAAUC,YAAV,CAAuB,EAAvB,CADP;;UAAA;YAECF,MAAM,CAACG,eAAP,CAAuBC,QAAvB,CAAgC,MAAhC;;UAFD;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CARsB;;EAAA;IAAA;EAAA;AAAA,IAAvB;eAceL,M"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/features/onboard/scripts/todo/todo.test.script.ts"],"names":["script","player","ui","waitForEnter"],"mappings":";;;;;;;;;;;;;AAEA,IAAMA,MAAc,GAAG,CACtB,mBADsB,EAEtB,6BAFsB,EAGtB,eAHsB,EAItB,kJAJsB,EAKtB,wCALsB,EAMtB,0EANsB,EAOtB,kBAPsB;AAAA,2FAQtB,iBAAOC,MAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACOA,MAAM,CAACC,EAAP,CAAUC,YAAV,CAAuB,EAAvB,CADP;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GARsB;;AAAA;AAAA;AAAA;AAAA,IAAvB;eAaeH,M","sourcesContent":["import { Script } from '../../ScriptPlayer'\n\nconst script: Script = [\n\t'Look at us go! 😄',\n\t\"I'm about to setup testing.\",\n\t'Real testing.',\n\t'Remember the whole 3 Laws of Test Driven Development thing? You are def gonna wanna watch this before continuing -> https://youtu.be/qkblc5WRn-U',\n\t'Ok, getting down off my robot soapbox.',\n\t'Next thing I gotta do is install some more dependencies (I know right?).',\n\t'You ready to go?',\n\tasync (player) => {\n\t\tawait player.ui.waitForEnter('')\n\t},\n]\n\nexport default script\n"],"file":"todo.test.script.js"}
1
+ {"version":3,"file":"todo.test.script.js","names":["script","player","ui","waitForEnter"],"sources":["../../../../../src/features/onboard/scripts/todo/todo.test.script.ts"],"sourcesContent":["import { Script } from '../../ScriptPlayer'\n\nconst script: Script = [\n\t'Look at us go! 😄',\n\t\"I'm about to setup testing.\",\n\t'Real testing.',\n\t'Remember the whole 3 Laws of Test Driven Development thing? You are def gonna wanna watch this before continuing -> https://youtu.be/qkblc5WRn-U',\n\t'Ok, getting down off my robot soapbox.',\n\t'Next thing I gotta do is install some more dependencies (I know right?).',\n\t'You ready to go?',\n\tasync (player) => {\n\t\tawait player.ui.waitForEnter('')\n\t},\n]\n\nexport default script\n"],"mappings":";;;;;;;;;;;;;AAEA,IAAMA,MAAc,GAAG,CACtB,mBADsB,EAEtB,6BAFsB,EAGtB,eAHsB,EAItB,kJAJsB,EAKtB,wCALsB,EAMtB,0EANsB,EAOtB,kBAPsB;EAAA,yFAQtB,iBAAOC,MAAP;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OACOA,MAAM,CAACC,EAAP,CAAUC,YAAV,CAAuB,EAAvB,CADP;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CARsB;;EAAA;IAAA;EAAA;AAAA,IAAvB;eAaeH,M"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/onboard/scripts/wrongCommand.script.ts"],"names":["script","player","ui","onboardingStore","getStage","stage","prompt","type","label","options","choices","value","answer","reset","renderLine","waitForEnter","Error"],"mappings":";;;;;;;;;;;;;AACA;;AAEA,IAAMA,MAAc,GAAG,CACtB,YADsB,EAEtB,2CAFsB,EAGtB,oCAHsB,EAItB,UAACC,MAAD,EAAY;AACX,sCAAcA,MAAM,CAACC,EAArB,EAAyBD,MAAM,CAACE,eAAP,CAAuBC,QAAvB,EAAzB;AACA,CANqB,EAOtB,8CAPsB;AAAA,2FAQtB,iBAAOH,MAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AACOI,YAAAA,KADP,GACeJ,MAAM,CAACE,eAAP,CAAuBC,QAAvB,EADf;AAAA;AAAA,mBAEsBH,MAAM,CAACC,EAAP,CAAUI,MAAV,CAAiB;AACrCC,cAAAA,IAAI,EAAE,QAD+B;AAErCC,cAAAA,KAAK,EAAE,oBAF8B;AAGrCC,cAAAA,OAAO,EAAE;AACRC,gBAAAA,OAAO,EAAE,CACR;AACCF,kBAAAA,KAAK,EAAE,kBADR;AAECG,kBAAAA,KAAK,EAAE;AAFR,iBADQ,EAKR;AACCH,kBAAAA,KAAK,EAAE,iBADR;AAECG,kBAAAA,KAAK,EAAE;AAFR,iBALQ,EASR;AACCH,kBAAAA,KAAK,qBAAeH,KAAf,MADN;AAECM,kBAAAA,KAAK,EAAE;AAFR,iBATQ;AADD;AAH4B,aAAjB,CAFtB;;AAAA;AAEOC,YAAAA,MAFP;AAAA,0BAuBSA,MAvBT;AAAA,4CAwBO,SAxBP,uBAgCO,WAhCP;AAAA;;AAAA;AAyBGX,YAAAA,MAAM,CAACE,eAAP,CAAuBU,KAAvB;AACAZ,YAAAA,MAAM,CAACC,EAAP,CAAUY,UAAV,CAAqB,EAArB;AACAb,YAAAA,MAAM,CAACC,EAAP,CAAUY,UAAV;AAGAb,YAAAA,MAAM,CAACC,EAAP,CAAUY,UAAV,CAAqB,EAArB;;AA9BH;AAAA;AAAA,mBAiCSb,MAAM,CAACC,EAAP,CAAUa,YAAV,CAAuB,cAAvB,CAjCT;;AAAA;AAAA;;AAAA;AAAA,kBAoCS,IAAIC,KAAJ,CAAU,gDAAV,CApCT;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GARsB;;AAAA;AAAA;AAAA;AAAA,IAAvB;eAiDehB,M","sourcesContent":["import { Script } from '../ScriptPlayer'\nimport { renderCommand } from './onboarding.short.script'\n\nconst script: Script = [\n\t'Hold on! ✋',\n\t\"I don't think you're supposed to be here!\",\n\t'I was really expecting you to run:',\n\t(player) => {\n\t\trenderCommand(player.ui, player.onboardingStore.getStage() as string)\n\t},\n\t'But you are in a completely different place.',\n\tasync (player) => {\n\t\tconst stage = player.onboardingStore.getStage() as string\n\t\tconst answer = await player.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tlabel: 'What should we do?',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Continue forward',\n\t\t\t\t\t\tvalue: 'letMePass',\n\t\t\t\t\t} as const,\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Stop onboarding',\n\t\t\t\t\t\tvalue: 'disable',\n\t\t\t\t\t} as const,\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: `Execute \\`${stage}\\``,\n\t\t\t\t\t\tvalue: 'executeCommand',\n\t\t\t\t\t} as const,\n\t\t\t\t],\n\t\t\t},\n\t\t})\n\n\t\tswitch (answer) {\n\t\t\tcase 'disable':\n\t\t\t\tplayer.onboardingStore.reset()\n\t\t\t\tplayer.ui.renderLine('')\n\t\t\t\tplayer.ui.renderLine(\n\t\t\t\t\t`Ok, I've disabled onboarding for now. Hope to see you again soon!`\n\t\t\t\t)\n\t\t\t\tplayer.ui.renderLine('')\n\t\t\t// eslint-disable-next-line no-fallthrough\n\t\t\tcase 'letMePass':\n\t\t\t\tawait player.ui.waitForEnter('As you were!')\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tthrow new Error('Coming soon! For now you have to manually run!')\n\t\t}\n\t},\n]\n\nexport default script\n"],"file":"wrongCommand.script.js"}
1
+ {"version":3,"file":"wrongCommand.script.js","names":["script","player","ui","onboardingStore","getStage","stage","prompt","type","label","options","choices","value","answer","reset","renderLine","waitForEnter","Error"],"sources":["../../../../src/features/onboard/scripts/wrongCommand.script.ts"],"sourcesContent":["import { Script } from '../ScriptPlayer'\nimport { renderCommand } from './onboarding.short.script'\n\nconst script: Script = [\n\t'Hold on! ✋',\n\t\"I don't think you're supposed to be here!\",\n\t'I was really expecting you to run:',\n\t(player) => {\n\t\trenderCommand(player.ui, player.onboardingStore.getStage() as string)\n\t},\n\t'But you are in a completely different place.',\n\tasync (player) => {\n\t\tconst stage = player.onboardingStore.getStage() as string\n\t\tconst answer = await player.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tlabel: 'What should we do?',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Continue forward',\n\t\t\t\t\t\tvalue: 'letMePass',\n\t\t\t\t\t} as const,\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Stop onboarding',\n\t\t\t\t\t\tvalue: 'disable',\n\t\t\t\t\t} as const,\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: `Execute \\`${stage}\\``,\n\t\t\t\t\t\tvalue: 'executeCommand',\n\t\t\t\t\t} as const,\n\t\t\t\t],\n\t\t\t},\n\t\t})\n\n\t\tswitch (answer) {\n\t\t\tcase 'disable':\n\t\t\t\tplayer.onboardingStore.reset()\n\t\t\t\tplayer.ui.renderLine('')\n\t\t\t\tplayer.ui.renderLine(\n\t\t\t\t\t`Ok, I've disabled onboarding for now. Hope to see you again soon!`\n\t\t\t\t)\n\t\t\t\tplayer.ui.renderLine('')\n\t\t\t// eslint-disable-next-line no-fallthrough\n\t\t\tcase 'letMePass':\n\t\t\t\tawait player.ui.waitForEnter('As you were!')\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tthrow new Error('Coming soon! For now you have to manually run!')\n\t\t}\n\t},\n]\n\nexport default script\n"],"mappings":";;;;;;;;;;;;;AACA;;AAEA,IAAMA,MAAc,GAAG,CACtB,YADsB,EAEtB,2CAFsB,EAGtB,oCAHsB,EAItB,UAACC,MAAD,EAAY;EACX,oCAAcA,MAAM,CAACC,EAArB,EAAyBD,MAAM,CAACE,eAAP,CAAuBC,QAAvB,EAAzB;AACA,CANqB,EAOtB,8CAPsB;EAAA,yFAQtB,iBAAOH,MAAP;IAAA;IAAA;MAAA;QAAA;UAAA;YACOI,KADP,GACeJ,MAAM,CAACE,eAAP,CAAuBC,QAAvB,EADf;YAAA;YAAA,OAEsBH,MAAM,CAACC,EAAP,CAAUI,MAAV,CAAiB;cACrCC,IAAI,EAAE,QAD+B;cAErCC,KAAK,EAAE,oBAF8B;cAGrCC,OAAO,EAAE;gBACRC,OAAO,EAAE,CACR;kBACCF,KAAK,EAAE,kBADR;kBAECG,KAAK,EAAE;gBAFR,CADQ,EAKR;kBACCH,KAAK,EAAE,iBADR;kBAECG,KAAK,EAAE;gBAFR,CALQ,EASR;kBACCH,KAAK,qBAAeH,KAAf,MADN;kBAECM,KAAK,EAAE;gBAFR,CATQ;cADD;YAH4B,CAAjB,CAFtB;;UAAA;YAEOC,MAFP;YAAA,cAuBSA,MAvBT;YAAA,gCAwBO,SAxBP,uBAgCO,WAhCP;YAAA;;UAAA;YAyBGX,MAAM,CAACE,eAAP,CAAuBU,KAAvB;YACAZ,MAAM,CAACC,EAAP,CAAUY,UAAV,CAAqB,EAArB;YACAb,MAAM,CAACC,EAAP,CAAUY,UAAV;YAGAb,MAAM,CAACC,EAAP,CAAUY,UAAV,CAAqB,EAArB;;UA9BH;YAAA;YAAA,OAiCSb,MAAM,CAACC,EAAP,CAAUa,YAAV,CAAuB,cAAvB,CAjCT;;UAAA;YAAA;;UAAA;YAAA,MAoCS,IAAIC,KAAJ,CAAU,gDAAV,CApCT;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CARsB;;EAAA;IAAA;EAAA;AAAA,IAAvB;eAiDehB,M"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/onboard/stores/OnboardingStore.ts"],"names":["OnboardingStore","options","cwd","generateCwd","load","schemasByHome","homeDir","SchemaEntityFactory","Entity","onboardingSchema","values","schema","getValues","writeValues","saved","readValues","setValues","stage","mode","get","set","validate","save","undefined","setMode","home","cwdOverride","diskUtil","createTempDir","AbstractLocalStore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;IAaqBA,e;;;;;AASpB,2BAAmBC,OAAnB,EAA0C;AAAA;;AAAA;AACzC,8BAAMA,OAAN;AADyC,6FARnB,YAQmB;AAEzC,UAAKC,GAAL,GAAW,MAAKC,WAAL,EAAX;;AACA,UAAKC,IAAL;;AAHyC;AAIzC;;;;SAED,eAAqB;AACpB,UAAI,CAACJ,eAAe,CAACK,aAAhB,CAA8B,KAAKC,OAAnC,CAAL,EAAkD;AACjDN,QAAAA,eAAe,CAACK,aAAhB,CAA8B,KAAKC,OAAnC,IACCC,4BAAoBC,MAApB,CAA2BC,sBAA3B,CADD;AAEA;;AAED,aAAOT,eAAe,CAACK,aAAhB,CAA8B,KAAKC,OAAnC,CAAP;AACA;;;WAED,gBAAe;AACd,UAAMI,MAAM,GAAG,KAAKC,MAAL,CAAYC,SAAZ,EAAf;AACA,WAAKC,WAAL,CAAiBH,MAAjB;AACA,aAAO,IAAP;AACA;;;WAED,gBAAe;AAAA;;AACd,UAAMI,KAAK,GAAG,KAAKC,UAAL,EAAd;AACA,WAAKJ,MAAL,CAAYK,SAAZ,CAAsB;AACrBC,QAAAA,KAAK,kBAAEH,KAAK,CAACG,KAAR,uDAAiB,IADD;AAErBC,QAAAA,IAAI,iBAAEJ,KAAK,CAACI,IAAR,qDAAgB;AAFC,OAAtB;AAIA,aAAO,IAAP;AACA;;;WAED,mBAAiC;AAChC,aAAO,KAAKP,MAAL,CAAYQ,GAAZ,CAAgB,MAAhB,CAAP;AACA;;;WAED,iBAAeD,IAAf,EAAqC;AACpC,WAAKP,MAAL,CAAYS,GAAZ,CAAgB,MAAhB,EAAwBF,IAAxB;AACA,WAAKP,MAAL,CAAYU,QAAZ;AACA,WAAKC,IAAL;AACA;;;WAED,oBAAkB;AACjB,aAAO,KAAKX,MAAL,CAAYQ,GAAZ,CAAgB,OAAhB,CAAP;AACA;;;WAED,kBAAgBF,KAAhB,EAAwC;AACvC,WAAKN,MAAL,CAAYS,GAAZ,CAAgB,OAAhB,EAAyBH,KAAzB;AACA,WAAKN,MAAL,CAAYU,QAAZ;AACA,WAAKC,IAAL;AACA;;;WAED,iBAAe;AACd,WAAKX,MAAL,CAAYS,GAAZ,CAAgB,OAAhB,EAAyBG,SAAzB;AACA,WAAKC,OAAL,CAAa,KAAb;AACA;;;WAMD,uBAAwB;AAAA;;AACvB,UAAMC,IAAI,4BACTzB,eAAe,CAAC0B,WADP,yEACsBC,2BAASC,aAAT,CAAuB,YAAvB,CADhC;AAEA,aAAOH,IAAP;AACA;;;WARD,qBAA0BvB,GAA1B,EAAuC;AACtC,WAAKwB,WAAL,GAAmBxB,GAAnB;AACA;;;EAlE2C2B,+B;;;iCAAxB7B,e;iCAAAA,e,mBAOhB,E","sourcesContent":["import { SchemaEntityFactory, StaticSchemaEntity } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport onboardingSchema from '#spruce/schemas/spruceCli/v2020_07_22/onboarding.schema'\nimport AbstractLocalStore, {\n\tLocalStoreSettings,\n} from '../../../stores/AbstractLocalStore'\nimport { StoreOptions } from '../../../stores/AbstractStore'\n\nexport interface OnboardingStoreSettings\n\textends LocalStoreSettings,\n\t\tSpruceSchemas.SpruceCli.v2020_07_22.Onboarding {}\n\ntype OnboardingSchema = SpruceSchemas.SpruceCli.v2020_07_22.OnboardingSchema\nexport type OnboardingMode = OnboardingStoreSettings['mode']\nexport type OnboardingStage = OnboardingStoreSettings['stage']\n\nexport default class OnboardingStore extends AbstractLocalStore<OnboardingStoreSettings> {\n\tpublic readonly name = 'onboarding'\n\tprivate static cwdOverride: string\n\n\tprivate static schemasByHome: Record<\n\t\tstring,\n\t\tStaticSchemaEntity<OnboardingSchema>\n\t> = {}\n\n\tpublic constructor(options: StoreOptions) {\n\t\tsuper(options)\n\t\tthis.cwd = this.generateCwd()\n\t\tthis.load()\n\t}\n\n\tprivate get schema() {\n\t\tif (!OnboardingStore.schemasByHome[this.homeDir]) {\n\t\t\tOnboardingStore.schemasByHome[this.homeDir] =\n\t\t\t\tSchemaEntityFactory.Entity(onboardingSchema)\n\t\t}\n\n\t\treturn OnboardingStore.schemasByHome[this.homeDir]\n\t}\n\n\tprivate save() {\n\t\tconst values = this.schema.getValues()\n\t\tthis.writeValues(values)\n\t\treturn this\n\t}\n\n\tprivate load() {\n\t\tconst saved = this.readValues()\n\t\tthis.schema.setValues({\n\t\t\tstage: saved.stage ?? null,\n\t\t\tmode: saved.mode ?? 'off',\n\t\t})\n\t\treturn this\n\t}\n\n\tpublic getMode(): OnboardingMode {\n\t\treturn this.schema.get('mode')\n\t}\n\n\tpublic setMode(mode: OnboardingMode) {\n\t\tthis.schema.set('mode', mode)\n\t\tthis.schema.validate()\n\t\tthis.save()\n\t}\n\n\tpublic getStage() {\n\t\treturn this.schema.get('stage')\n\t}\n\n\tpublic setStage(stage: OnboardingStage) {\n\t\tthis.schema.set('stage', stage)\n\t\tthis.schema.validate()\n\t\tthis.save()\n\t}\n\n\tpublic reset() {\n\t\tthis.schema.set('stage', undefined)\n\t\tthis.setMode('off')\n\t}\n\n\tpublic static overrideCwd(cwd: string) {\n\t\tthis.cwdOverride = cwd\n\t}\n\n\tprotected generateCwd() {\n\t\tconst home =\n\t\t\tOnboardingStore.cwdOverride ?? diskUtil.createTempDir('spruce-cli')\n\t\treturn home\n\t}\n}\n"],"file":"OnboardingStore.js"}
1
+ {"version":3,"file":"OnboardingStore.js","names":["OnboardingStore","options","cwd","generateCwd","load","schemasByHome","homeDir","SchemaEntityFactory","Entity","onboardingSchema","values","schema","getValues","writeValues","saved","readValues","setValues","stage","mode","get","set","validate","save","undefined","setMode","home","cwdOverride","diskUtil","createTempDir","AbstractLocalStore"],"sources":["../../../../src/features/onboard/stores/OnboardingStore.ts"],"sourcesContent":["import { SchemaEntityFactory, StaticSchemaEntity } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport onboardingSchema from '#spruce/schemas/spruceCli/v2020_07_22/onboarding.schema'\nimport AbstractLocalStore, {\n\tLocalStoreSettings,\n} from '../../../stores/AbstractLocalStore'\nimport { StoreOptions } from '../../../stores/AbstractStore'\n\nexport interface OnboardingStoreSettings\n\textends LocalStoreSettings,\n\t\tSpruceSchemas.SpruceCli.v2020_07_22.Onboarding {}\n\ntype OnboardingSchema = SpruceSchemas.SpruceCli.v2020_07_22.OnboardingSchema\nexport type OnboardingMode = OnboardingStoreSettings['mode']\nexport type OnboardingStage = OnboardingStoreSettings['stage']\n\nexport default class OnboardingStore extends AbstractLocalStore<OnboardingStoreSettings> {\n\tpublic readonly name = 'onboarding'\n\tprivate static cwdOverride: string\n\n\tprivate static schemasByHome: Record<\n\t\tstring,\n\t\tStaticSchemaEntity<OnboardingSchema>\n\t> = {}\n\n\tpublic constructor(options: StoreOptions) {\n\t\tsuper(options)\n\t\tthis.cwd = this.generateCwd()\n\t\tthis.load()\n\t}\n\n\tprivate get schema() {\n\t\tif (!OnboardingStore.schemasByHome[this.homeDir]) {\n\t\t\tOnboardingStore.schemasByHome[this.homeDir] =\n\t\t\t\tSchemaEntityFactory.Entity(onboardingSchema)\n\t\t}\n\n\t\treturn OnboardingStore.schemasByHome[this.homeDir]\n\t}\n\n\tprivate save() {\n\t\tconst values = this.schema.getValues()\n\t\tthis.writeValues(values)\n\t\treturn this\n\t}\n\n\tprivate load() {\n\t\tconst saved = this.readValues()\n\t\tthis.schema.setValues({\n\t\t\tstage: saved.stage ?? null,\n\t\t\tmode: saved.mode ?? 'off',\n\t\t})\n\t\treturn this\n\t}\n\n\tpublic getMode(): OnboardingMode {\n\t\treturn this.schema.get('mode')\n\t}\n\n\tpublic setMode(mode: OnboardingMode) {\n\t\tthis.schema.set('mode', mode)\n\t\tthis.schema.validate()\n\t\tthis.save()\n\t}\n\n\tpublic getStage() {\n\t\treturn this.schema.get('stage')\n\t}\n\n\tpublic setStage(stage: OnboardingStage) {\n\t\tthis.schema.set('stage', stage)\n\t\tthis.schema.validate()\n\t\tthis.save()\n\t}\n\n\tpublic reset() {\n\t\tthis.schema.set('stage', undefined)\n\t\tthis.setMode('off')\n\t}\n\n\tpublic static overrideCwd(cwd: string) {\n\t\tthis.cwdOverride = cwd\n\t}\n\n\tprotected generateCwd() {\n\t\tconst home =\n\t\t\tOnboardingStore.cwdOverride ?? diskUtil.createTempDir('spruce-cli')\n\t\treturn home\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;IAaqBA,e;;;;;EASpB,yBAAmBC,OAAnB,EAA0C;IAAA;;IAAA;IACzC,0BAAMA,OAAN;IADyC,yFARnB,YAQmB;IAEzC,MAAKC,GAAL,GAAW,MAAKC,WAAL,EAAX;;IACA,MAAKC,IAAL;;IAHyC;EAIzC;;;;SAED,eAAqB;MACpB,IAAI,CAACJ,eAAe,CAACK,aAAhB,CAA8B,KAAKC,OAAnC,CAAL,EAAkD;QACjDN,eAAe,CAACK,aAAhB,CAA8B,KAAKC,OAAnC,IACCC,4BAAoBC,MAApB,CAA2BC,sBAA3B,CADD;MAEA;;MAED,OAAOT,eAAe,CAACK,aAAhB,CAA8B,KAAKC,OAAnC,CAAP;IACA;;;WAED,gBAAe;MACd,IAAMI,MAAM,GAAG,KAAKC,MAAL,CAAYC,SAAZ,EAAf;MACA,KAAKC,WAAL,CAAiBH,MAAjB;MACA,OAAO,IAAP;IACA;;;WAED,gBAAe;MAAA;;MACd,IAAMI,KAAK,GAAG,KAAKC,UAAL,EAAd;MACA,KAAKJ,MAAL,CAAYK,SAAZ,CAAsB;QACrBC,KAAK,kBAAEH,KAAK,CAACG,KAAR,uDAAiB,IADD;QAErBC,IAAI,iBAAEJ,KAAK,CAACI,IAAR,qDAAgB;MAFC,CAAtB;MAIA,OAAO,IAAP;IACA;;;WAED,mBAAiC;MAChC,OAAO,KAAKP,MAAL,CAAYQ,GAAZ,CAAgB,MAAhB,CAAP;IACA;;;WAED,iBAAeD,IAAf,EAAqC;MACpC,KAAKP,MAAL,CAAYS,GAAZ,CAAgB,MAAhB,EAAwBF,IAAxB;MACA,KAAKP,MAAL,CAAYU,QAAZ;MACA,KAAKC,IAAL;IACA;;;WAED,oBAAkB;MACjB,OAAO,KAAKX,MAAL,CAAYQ,GAAZ,CAAgB,OAAhB,CAAP;IACA;;;WAED,kBAAgBF,KAAhB,EAAwC;MACvC,KAAKN,MAAL,CAAYS,GAAZ,CAAgB,OAAhB,EAAyBH,KAAzB;MACA,KAAKN,MAAL,CAAYU,QAAZ;MACA,KAAKC,IAAL;IACA;;;WAED,iBAAe;MACd,KAAKX,MAAL,CAAYS,GAAZ,CAAgB,OAAhB,EAAyBG,SAAzB;MACA,KAAKC,OAAL,CAAa,KAAb;IACA;;;WAMD,uBAAwB;MAAA;;MACvB,IAAMC,IAAI,4BACTzB,eAAe,CAAC0B,WADP,yEACsBC,2BAASC,aAAT,CAAuB,YAAvB,CADhC;MAEA,OAAOH,IAAP;IACA;;;WARD,qBAA0BvB,GAA1B,EAAuC;MACtC,KAAKwB,WAAL,GAAmBxB,GAAnB;IACA;;;EAlE2C2B,+B;;;iCAAxB7B,e;iCAAAA,e,mBAOhB,E"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/features/organization/OrganizationFeature.ts"],"names":["OrganizationFeature","code","isRequired","diskUtil","resolvePath","__dirname","AbstractFeature"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;IASqBA,mB;;;;;;;;;;;;;;;6FACO,c;qGACL,c;oGACD,0C;qGACsB,CAC1C;AACCC,MAAAA,IAAI,EAAE,OADP;AAECC,MAAAA,UAAU,EAAE;AAFb,KAD0C,EAK1C;AACCD,MAAAA,IAAI,EAAE,OADP;AAECC,MAAAA,UAAU,EAAE;AAFb,KAL0C,C;4GAUd,E;mGAETC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,SAAhC,C;;;;;EAhB4BC,4B","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractFeature, { FeatureDependency } from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\torganization: OrganizationFeature\n\t}\n}\n\nexport default class OrganizationFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'organization'\n\tpublic nameReadable = 'Organization'\n\tpublic description = 'Manage the organizations you are part of'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{\n\t\t\tcode: 'skill',\n\t\t\tisRequired: true,\n\t\t},\n\t\t{\n\t\t\tcode: 'event',\n\t\t\tisRequired: true,\n\t\t},\n\t]\n\tpublic packageDependencies = []\n\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n}\n"],"file":"OrganizationFeature.js"}
1
+ {"version":3,"file":"OrganizationFeature.js","names":["OrganizationFeature","code","isRequired","diskUtil","resolvePath","__dirname","AbstractFeature"],"sources":["../../../src/features/organization/OrganizationFeature.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractFeature, { FeatureDependency } from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\torganization: OrganizationFeature\n\t}\n}\n\nexport default class OrganizationFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'organization'\n\tpublic nameReadable = 'Organization'\n\tpublic description = 'Manage the organizations you are part of'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{\n\t\t\tcode: 'skill',\n\t\t\tisRequired: true,\n\t\t},\n\t\t{\n\t\t\tcode: 'event',\n\t\t\tisRequired: true,\n\t\t},\n\t]\n\tpublic packageDependencies = []\n\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;IASqBA,mB;;;;;;;;;;;;;;;6FACO,c;qGACL,c;oGACD,0C;qGACsB,CAC1C;MACCC,IAAI,EAAE,OADP;MAECC,UAAU,EAAE;IAFb,CAD0C,EAK1C;MACCD,IAAI,EAAE,OADP;MAECC,UAAU,EAAE;IAFb,CAL0C,C;4GAUd,E;mGAETC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,SAAhC,C;;;;;EAhB4BC,4B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/organization/actions/CreateAction.ts"],"names":["CreateAction","createOrganizationActionSchema","options","validateAndNormalizeOptions","nameReadable","nameKebab","Store","create","name","slug","organization","meta","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;;;;;IAOqBA,Y;;;;;;;;;;;;;;;sGACGC,qC;0GACI,gC;;;;;;;mGAE3B,iBAAqBC,OAArB;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,wCAEE,KAAKC,2BAAL,CAAiCD,OAAjC,CAFF,EACSE,YADT,yBACSA,YADT,EACuBC,SADvB,yBACuBA,SADvB;AAAA;AAAA,uBAI4B,KAAKC,KAAL,CAAW,cAAX,EAA2BC,MAA3B,CAAkC;AAC5DC,kBAAAA,IAAI,EAAEJ,YADsD;AAE5DK,kBAAAA,IAAI,EAAEJ;AAFsD,iBAAlC,CAJ5B;;AAAA;AAIOK,gBAAAA,YAJP;AAAA,iDASQ;AACNC,kBAAAA,IAAI,EAAE;AACLD,oBAAAA,YAAY,EAAZA;AADK;AADA,iBATR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAJyCE,2B","sourcesContent":["import { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createOrganizationActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.CreateOrganizationOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateOrganizationOptions\n\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createOrganizationActionSchema\n\tpublic invocationMessage = 'Creating an organization... 🏙'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { nameReadable, nameKebab } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tconst organization = await this.Store('organization').create({\n\t\t\tname: nameReadable,\n\t\t\tslug: nameKebab,\n\t\t})\n\n\t\treturn {\n\t\t\tmeta: {\n\t\t\t\torganization,\n\t\t\t},\n\t\t}\n\t}\n}\n"],"file":"CreateAction.js"}
1
+ {"version":3,"file":"CreateAction.js","names":["CreateAction","createOrganizationActionSchema","options","validateAndNormalizeOptions","nameReadable","nameKebab","Store","create","name","slug","organization","meta","AbstractAction"],"sources":["../../../../src/features/organization/actions/CreateAction.ts"],"sourcesContent":["import { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createOrganizationActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createOrganizationOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.CreateOrganizationOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateOrganizationOptions\n\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createOrganizationActionSchema\n\tpublic invocationMessage = 'Creating an organization... 🏙'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { nameReadable, nameKebab } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tconst organization = await this.Store('organization').create({\n\t\t\tname: nameReadable,\n\t\t\tslug: nameKebab,\n\t\t})\n\n\t\treturn {\n\t\t\tmeta: {\n\t\t\t\torganization,\n\t\t\t},\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;;;;;IAOqBA,Y;;;;;;;;;;;;;;;sGACGC,qC;0GACI,gC;;;;;;;mGAE3B,iBAAqBC,OAArB;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA,wBAEE,KAAKC,2BAAL,CAAiCD,OAAjC,CAFF,EACSE,YADT,yBACSA,YADT,EACuBC,SADvB,yBACuBA,SADvB;gBAAA;gBAAA,OAI4B,KAAKC,KAAL,CAAW,cAAX,EAA2BC,MAA3B,CAAkC;kBAC5DC,IAAI,EAAEJ,YADsD;kBAE5DK,IAAI,EAAEJ;gBAFsD,CAAlC,CAJ5B;;cAAA;gBAIOK,YAJP;gBAAA,iCASQ;kBACNC,IAAI,EAAE;oBACLD,YAAY,EAAZA;kBADK;gBADA,CATR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAJyCE,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/organization/actions/InstallAction.ts"],"names":["InstallAction","installSkillAtOrganizationActionSchema","options","Store","loadCurrentSkill","skill","id","SpruceError","code","validateAndNormalizeOptions","organizationId","fetchMyOrganizations","orgs","length","ui","confirm","name","choices","map","o","value","label","prompt","type","isRequired","installSkillAtOrganization","summaryLines","errors","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;;;;;IAOqBA,a;;;;;;;;;;;;;;;uGACI,CAAC,eAAD,C;sGACcC,6C;0GACX,+B;;;;;;;mGAE3B,iBAAqBC,OAArB;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAEsB,KAAKC,KAAL,CAAW,OAAX,EAAoBC,gBAApB,EAFtB;;AAAA;AAEQC,gBAAAA,KAFR;;AAAA,oBAIOA,KAAK,CAACC,EAJb;AAAA;AAAA;AAAA;;AAAA,sBAKS,IAAIC,uBAAJ,CAAgB;AAAEC,kBAAAA,IAAI,EAAE;AAAR,iBAAhB,CALT;;AAAA;AAAA,wCAQ2B,KAAKC,2BAAL,CAAiCP,OAAjC,CAR3B,EAQQQ,cARR,yBAQQA,cARR;;AAAA,oBAUOA,cAVP;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAWsB,KAAKP,KAAL,CAAW,cAAX,EAA2BQ,oBAA3B,EAXtB;;AAAA;AAWSC,gBAAAA,IAXT;;AAAA,sBAaOA,IAAI,CAACC,MAAL,KAAgB,CAbvB;AAAA;AAAA;AAAA;;AAAA,sBAcU,IAAIN,uBAAJ,CAAgB;AACrBC,kBAAAA,IAAI,EAAE;AADe,iBAAhB,CAdV;;AAAA;AAAA,sBAmBOI,IAAI,CAACC,MAAL,KAAgB,CAnBvB;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAoB0B,KAAKC,EAAL,CAAQC,OAAR,8CACiBH,IAAI,CAAC,CAAD,CAAJ,CAAQI,IADzB,OApB1B;;AAAA;AAoBUD,gBAAAA,OApBV;;AAAA,oBAwBSA,OAxBT;AAAA;AAAA;AAAA;;AAAA,iDAyBY,EAzBZ;;AAAA;AA4BIL,gBAAAA,cAAc,GAAGE,IAAI,CAAC,CAAD,CAAJ,CAAQN,EAAzB;AA5BJ;AAAA;;AAAA;AA8BUW,gBAAAA,OA9BV,GA8BoCL,IAAI,CAACM,GAAL,CAAS,UAACC,CAAD;AAAA,yBAAQ;AAChDC,oBAAAA,KAAK,EAAED,CAAC,CAACb,EADuC;AAEhDe,oBAAAA,KAAK,EAAEF,CAAC,CAACH;AAFuC,mBAAR;AAAA,iBAAT,CA9BpC;AAAA;AAAA,uBAmC2B,KAAKF,EAAL,CAAQQ,MAAR,CAAe;AACrCC,kBAAAA,IAAI,EAAE,QAD+B;AAErCF,kBAAAA,KAAK,EAAE,qDAF8B;AAGrCG,kBAAAA,UAAU,EAAE,IAHyB;AAIrCtB,kBAAAA,OAAO,EAAE;AACRe,oBAAAA,OAAO,EAAPA;AADQ;AAJ4B,iBAAf,CAnC3B;;AAAA;AAmCIP,gBAAAA,cAnCJ;;AAAA;AAAA;AAAA,uBA8CQ,KAAKP,KAAL,CAAW,cAAX,EAA2BsB,0BAA3B,CACLpB,KAAK,CAACC,EADD,EAELI,cAFK,CA9CR;;AAAA;AAAA,iDAmDS;AACNgB,kBAAAA,YAAY,EAAE,CAAC,kBAAD;AADR,iBAnDT;;AAAA;AAAA;AAAA;AAAA,iDAuDS;AACNC,kBAAAA,MAAM,EAAE;AADF,iBAvDT;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAL0CC,2B","sourcesContent":["import { SelectChoice } from '@sprucelabs/schema'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport installSkillAtOrganizationActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.InstallSkillAtOrganizationOptionsSchema\ntype Options =\n\tSpruceSchemas.SpruceCli.v2020_07_22.InstallSkillAtOrganizationOptions\nexport default class InstallAction extends AbstractAction<OptionsSchema> {\n\tpublic commandAliases = ['install.skill']\n\tpublic optionsSchema: OptionsSchema = installSkillAtOrganizationActionSchema\n\tpublic invocationMessage = 'Installing skill at org... 🏙'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\ttry {\n\t\t\tconst skill = await this.Store('skill').loadCurrentSkill()\n\n\t\t\tif (!skill.id) {\n\t\t\t\tthrow new SpruceError({ code: 'SKILL_NOT_REGISTERED' })\n\t\t\t}\n\n\t\t\tlet { organizationId } = this.validateAndNormalizeOptions(options)\n\n\t\t\tif (!organizationId) {\n\t\t\t\tconst orgs = await this.Store('organization').fetchMyOrganizations()\n\n\t\t\t\tif (orgs.length === 0) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'NO_ORGANIZATIONS_FOUND',\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tif (orgs.length === 1) {\n\t\t\t\t\tconst confirm = await this.ui.confirm(\n\t\t\t\t\t\t`You ready to install your skill at ${orgs[0].name}?`\n\t\t\t\t\t)\n\n\t\t\t\t\tif (!confirm) {\n\t\t\t\t\t\treturn {}\n\t\t\t\t\t}\n\n\t\t\t\t\torganizationId = orgs[0].id\n\t\t\t\t} else {\n\t\t\t\t\tconst choices: SelectChoice[] = orgs.map((o) => ({\n\t\t\t\t\t\tvalue: o.id,\n\t\t\t\t\t\tlabel: o.name,\n\t\t\t\t\t}))\n\n\t\t\t\t\torganizationId = await this.ui.prompt({\n\t\t\t\t\t\ttype: 'select',\n\t\t\t\t\t\tlabel: 'Which organization should we install your skill to?',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tchoices,\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tawait this.Store('organization').installSkillAtOrganization(\n\t\t\t\tskill.id,\n\t\t\t\torganizationId\n\t\t\t)\n\n\t\t\treturn {\n\t\t\t\tsummaryLines: ['Skill installed!'],\n\t\t\t}\n\t\t} catch (err) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n}\n"],"file":"InstallAction.js"}
1
+ {"version":3,"file":"InstallAction.js","names":["InstallAction","installSkillAtOrganizationActionSchema","options","Store","loadCurrentSkill","skill","id","SpruceError","code","validateAndNormalizeOptions","organizationId","fetchMyOrganizations","orgs","length","ui","confirm","name","choices","map","o","value","label","prompt","type","isRequired","installSkillAtOrganization","summaryLines","errors","AbstractAction"],"sources":["../../../../src/features/organization/actions/InstallAction.ts"],"sourcesContent":["import { SelectChoice } from '@sprucelabs/schema'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport installSkillAtOrganizationActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/installSkillAtOrganizationOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.InstallSkillAtOrganizationOptionsSchema\ntype Options =\n\tSpruceSchemas.SpruceCli.v2020_07_22.InstallSkillAtOrganizationOptions\nexport default class InstallAction extends AbstractAction<OptionsSchema> {\n\tpublic commandAliases = ['install.skill']\n\tpublic optionsSchema: OptionsSchema = installSkillAtOrganizationActionSchema\n\tpublic invocationMessage = 'Installing skill at org... 🏙'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\ttry {\n\t\t\tconst skill = await this.Store('skill').loadCurrentSkill()\n\n\t\t\tif (!skill.id) {\n\t\t\t\tthrow new SpruceError({ code: 'SKILL_NOT_REGISTERED' })\n\t\t\t}\n\n\t\t\tlet { organizationId } = this.validateAndNormalizeOptions(options)\n\n\t\t\tif (!organizationId) {\n\t\t\t\tconst orgs = await this.Store('organization').fetchMyOrganizations()\n\n\t\t\t\tif (orgs.length === 0) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'NO_ORGANIZATIONS_FOUND',\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tif (orgs.length === 1) {\n\t\t\t\t\tconst confirm = await this.ui.confirm(\n\t\t\t\t\t\t`You ready to install your skill at ${orgs[0].name}?`\n\t\t\t\t\t)\n\n\t\t\t\t\tif (!confirm) {\n\t\t\t\t\t\treturn {}\n\t\t\t\t\t}\n\n\t\t\t\t\torganizationId = orgs[0].id\n\t\t\t\t} else {\n\t\t\t\t\tconst choices: SelectChoice[] = orgs.map((o) => ({\n\t\t\t\t\t\tvalue: o.id,\n\t\t\t\t\t\tlabel: o.name,\n\t\t\t\t\t}))\n\n\t\t\t\t\torganizationId = await this.ui.prompt({\n\t\t\t\t\t\ttype: 'select',\n\t\t\t\t\t\tlabel: 'Which organization should we install your skill to?',\n\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tchoices,\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tawait this.Store('organization').installSkillAtOrganization(\n\t\t\t\tskill.id,\n\t\t\t\torganizationId\n\t\t\t)\n\n\t\t\treturn {\n\t\t\t\tsummaryLines: ['Skill installed!'],\n\t\t\t}\n\t\t} catch (err) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;;;;;IAOqBA,a;;;;;;;;;;;;;;;uGACI,CAAC,eAAD,C;sGACcC,6C;0GACX,+B;;;;;;;mGAE3B,iBAAqBC,OAArB;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA;gBAAA,OAEsB,KAAKC,KAAL,CAAW,OAAX,EAAoBC,gBAApB,EAFtB;;cAAA;gBAEQC,KAFR;;gBAAA,IAIOA,KAAK,CAACC,EAJb;kBAAA;kBAAA;gBAAA;;gBAAA,MAKS,IAAIC,uBAAJ,CAAgB;kBAAEC,IAAI,EAAE;gBAAR,CAAhB,CALT;;cAAA;gBAAA,wBAQ2B,KAAKC,2BAAL,CAAiCP,OAAjC,CAR3B,EAQQQ,cARR,yBAQQA,cARR;;gBAAA,IAUOA,cAVP;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OAWsB,KAAKP,KAAL,CAAW,cAAX,EAA2BQ,oBAA3B,EAXtB;;cAAA;gBAWSC,IAXT;;gBAAA,MAaOA,IAAI,CAACC,MAAL,KAAgB,CAbvB;kBAAA;kBAAA;gBAAA;;gBAAA,MAcU,IAAIN,uBAAJ,CAAgB;kBACrBC,IAAI,EAAE;gBADe,CAAhB,CAdV;;cAAA;gBAAA,MAmBOI,IAAI,CAACC,MAAL,KAAgB,CAnBvB;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OAoB0B,KAAKC,EAAL,CAAQC,OAAR,8CACiBH,IAAI,CAAC,CAAD,CAAJ,CAAQI,IADzB,OApB1B;;cAAA;gBAoBUD,OApBV;;gBAAA,IAwBSA,OAxBT;kBAAA;kBAAA;gBAAA;;gBAAA,iCAyBY,EAzBZ;;cAAA;gBA4BIL,cAAc,GAAGE,IAAI,CAAC,CAAD,CAAJ,CAAQN,EAAzB;gBA5BJ;gBAAA;;cAAA;gBA8BUW,OA9BV,GA8BoCL,IAAI,CAACM,GAAL,CAAS,UAACC,CAAD;kBAAA,OAAQ;oBAChDC,KAAK,EAAED,CAAC,CAACb,EADuC;oBAEhDe,KAAK,EAAEF,CAAC,CAACH;kBAFuC,CAAR;gBAAA,CAAT,CA9BpC;gBAAA;gBAAA,OAmC2B,KAAKF,EAAL,CAAQQ,MAAR,CAAe;kBACrCC,IAAI,EAAE,QAD+B;kBAErCF,KAAK,EAAE,qDAF8B;kBAGrCG,UAAU,EAAE,IAHyB;kBAIrCtB,OAAO,EAAE;oBACRe,OAAO,EAAPA;kBADQ;gBAJ4B,CAAf,CAnC3B;;cAAA;gBAmCIP,cAnCJ;;cAAA;gBAAA;gBAAA,OA8CQ,KAAKP,KAAL,CAAW,cAAX,EAA2BsB,0BAA3B,CACLpB,KAAK,CAACC,EADD,EAELI,cAFK,CA9CR;;cAAA;gBAAA,iCAmDS;kBACNgB,YAAY,EAAE,CAAC,kBAAD;gBADR,CAnDT;;cAAA;gBAAA;gBAAA;gBAAA,iCAuDS;kBACNC,MAAM,EAAE;gBADF,CAvDT;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAL0CC,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/organization/stores/OrganizationStore.ts"],"names":["OrganizationStore","skillId","orgId","connectToApi","client","emit","target","organizationId","payload","results","eventResponseUtil","getFirstResponseOrThrow","isInstalled","shouldOnlyShowMine","organizations","values","name","slug","organization","AbstractStore"],"mappings":"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","sourcesContent":["import { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport AbstractStore from '../../../stores/AbstractStore'\n\nexport default class OrganizationStore extends AbstractStore {\n\tpublic name = 'organization'\n\n\tpublic async isSkillInstalledAtOrg(skillId: string, orgId: string) {\n\t\tconst client = await this.connectToApi()\n\t\tconst results = await client.emit('is-skill-installed::v2020_12_25', {\n\t\t\ttarget: {\n\t\t\t\torganizationId: orgId,\n\t\t\t},\n\t\t\tpayload: {\n\t\t\t\tskillId,\n\t\t\t},\n\t\t})\n\n\t\tconst { isInstalled } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\treturn isInstalled\n\t}\n\n\tpublic async installSkillAtOrganization(\n\t\tskillId: string,\n\t\torgId: any\n\t): Promise<void> {\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('install-skill::v2020_12_25', {\n\t\t\ttarget: {\n\t\t\t\torganizationId: orgId,\n\t\t\t},\n\t\t\tpayload: {\n\t\t\t\tskillId,\n\t\t\t},\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\t}\n\n\tpublic async fetchMyOrganizations() {\n\t\tconst client = await this.connectToApi()\n\t\tconst results = await client.emit('list-organizations::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tshouldOnlyShowMine: true,\n\t\t\t},\n\t\t})\n\n\t\tconst { organizations } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\treturn organizations\n\t}\n\n\tpublic async create(values: { name: string; slug?: string }) {\n\t\tconst { name, slug } = values\n\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('create-organization::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tname,\n\t\t\t\tslug,\n\t\t\t},\n\t\t})\n\n\t\tconst { organization } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\treturn organization\n\t}\n\n\tpublic async deleteOrganization(orgId: string) {\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('delete-organization::v2020_12_25', {\n\t\t\ttarget: {\n\t\t\t\torganizationId: orgId,\n\t\t\t},\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\t}\n}\n"],"file":"OrganizationStore.js"}
1
+ {"version":3,"file":"OrganizationStore.js","names":["OrganizationStore","skillId","orgId","connectToApi","client","emit","target","organizationId","payload","results","eventResponseUtil","getFirstResponseOrThrow","isInstalled","shouldOnlyShowMine","organizations","values","name","slug","organization","AbstractStore"],"sources":["../../../../src/features/organization/stores/OrganizationStore.ts"],"sourcesContent":["import { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport AbstractStore from '../../../stores/AbstractStore'\n\nexport default class OrganizationStore extends AbstractStore {\n\tpublic name = 'organization'\n\n\tpublic async isSkillInstalledAtOrg(skillId: string, orgId: string) {\n\t\tconst client = await this.connectToApi()\n\t\tconst results = await client.emit('is-skill-installed::v2020_12_25', {\n\t\t\ttarget: {\n\t\t\t\torganizationId: orgId,\n\t\t\t},\n\t\t\tpayload: {\n\t\t\t\tskillId,\n\t\t\t},\n\t\t})\n\n\t\tconst { isInstalled } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\treturn isInstalled\n\t}\n\n\tpublic async installSkillAtOrganization(\n\t\tskillId: string,\n\t\torgId: any\n\t): Promise<void> {\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('install-skill::v2020_12_25', {\n\t\t\ttarget: {\n\t\t\t\torganizationId: orgId,\n\t\t\t},\n\t\t\tpayload: {\n\t\t\t\tskillId,\n\t\t\t},\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\t}\n\n\tpublic async fetchMyOrganizations() {\n\t\tconst client = await this.connectToApi()\n\t\tconst results = await client.emit('list-organizations::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tshouldOnlyShowMine: true,\n\t\t\t},\n\t\t})\n\n\t\tconst { organizations } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\treturn organizations\n\t}\n\n\tpublic async create(values: { name: string; slug?: string }) {\n\t\tconst { name, slug } = values\n\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('create-organization::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tname,\n\t\t\t\tslug,\n\t\t\t},\n\t\t})\n\n\t\tconst { organization } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\treturn organization\n\t}\n\n\tpublic async deleteOrganization(orgId: string) {\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('delete-organization::v2020_12_25', {\n\t\t\ttarget: {\n\t\t\t\torganizationId: orgId,\n\t\t\t},\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\t}\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/features/person/PersonFeature.ts"],"names":["PersonFeature","code","isRequired","diskUtil","resolvePath","__dirname","featureInstaller","isInstalled","AbstractFeature"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;IASqBA,a;;;;;;;;;;;;;;;6FACO,Q;qGACL,Q;oGACD,uB;qGACsB,CAC1C;AACCC,MAAAA,IAAI,EAAE,OADP;AAECC,MAAAA,UAAU,EAAE;AAFb,KAD0C,C;4GAMd,E;mGAETC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,SAAhC,C;oGAEC,YAAM;AAC1B,aAAO,MAAKC,gBAAL,CAAsBC,WAAtB,CAAkC,OAAlC,CAAP;AACA,K;;;;;EAhByCC,4B","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractFeature, { FeatureDependency } from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tperson: PersonFeature\n\t}\n}\n\nexport default class PersonFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'person'\n\tpublic nameReadable = 'Person'\n\tpublic description = 'Log in, log out, etc.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{\n\t\t\tcode: 'skill',\n\t\t\tisRequired: true,\n\t\t},\n\t]\n\tpublic packageDependencies = []\n\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic isInstalled = () => {\n\t\treturn this.featureInstaller.isInstalled('skill')\n\t}\n}\n"],"file":"PersonFeature.js"}
1
+ {"version":3,"file":"PersonFeature.js","names":["PersonFeature","code","isRequired","diskUtil","resolvePath","__dirname","featureInstaller","isInstalled","AbstractFeature"],"sources":["../../../src/features/person/PersonFeature.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractFeature, { FeatureDependency } from '../AbstractFeature'\nimport { FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tperson: PersonFeature\n\t}\n}\n\nexport default class PersonFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'person'\n\tpublic nameReadable = 'Person'\n\tpublic description = 'Log in, log out, etc.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{\n\t\t\tcode: 'skill',\n\t\t\tisRequired: true,\n\t\t},\n\t]\n\tpublic packageDependencies = []\n\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic isInstalled = () => {\n\t\treturn this.featureInstaller.isInstalled('skill')\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;IASqBA,a;;;;;;;;;;;;;;;6FACO,Q;qGACL,Q;oGACD,uB;qGACsB,CAC1C;MACCC,IAAI,EAAE,OADP;MAECC,UAAU,EAAE;IAFb,CAD0C,C;4GAMd,E;mGAETC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,SAAhC,C;oGAEC,YAAM;MAC1B,OAAO,MAAKC,gBAAL,CAAsBC,WAAtB,CAAkC,OAAlC,CAAP;IACA,C;;;;;EAhByCC,4B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/person/actions/LoginAction.ts"],"names":["optionsSchema","id","description","fields","phone","type","label","isRequired","pin","LoginAction","options","validateAndNormalizeOptions","suppliedPin","loggedIn","connectToApi","shouldAuthAsLoggedInPerson","client","emit","payload","requestPinResults","eventResponseUtil","getFirstResponseOrThrow","challenge","response","ui","prompt","confirmPinResults","person","token","loggedInPerson","Service","setLoggedInPerson","meta","summaryLines","casualName","err","renderWarning","AbstractAction"],"mappings":"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","sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'loginAction',\n\tdescription:\n\t\t'Authenticate as a person. From here, you can begin creating skill, organizations, conversation topics, etc.',\n\tfields: {\n\t\tphone: {\n\t\t\ttype: 'phone',\n\t\t\tlabel: 'Phone number',\n\t\t\tisRequired: true,\n\t\t},\n\t\tpin: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Pin',\n\t\t},\n\t},\n})\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class LoginAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['login']\n\tpublic invocationMessage = 'Logging in... 🤝'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { phone, pin: suppliedPin } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\t\tlet loggedIn = false\n\n\t\tconst client = await this.connectToApi({\n\t\t\tshouldAuthAsLoggedInPerson: false,\n\t\t})\n\n\t\tconst requestPinResults = await client.emit('request-pin::v2020_12_25', {\n\t\t\tpayload: { phone },\n\t\t})\n\n\t\tconst { challenge } =\n\t\t\teventResponseUtil.getFirstResponseOrThrow(requestPinResults)\n\n\t\tconst response: FeatureActionResponse = {}\n\n\t\tdo {\n\t\t\tconst pin =\n\t\t\t\tsuppliedPin ??\n\t\t\t\t(await this.ui.prompt({\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tlabel: 'Pin',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t}))\n\n\t\t\tconst confirmPinResults = await client.emit('confirm-pin::v2020_12_25', {\n\t\t\t\tpayload: { challenge, pin },\n\t\t\t})\n\n\t\t\ttry {\n\t\t\t\tconst { person, token } =\n\t\t\t\t\teventResponseUtil.getFirstResponseOrThrow(confirmPinResults)\n\n\t\t\t\tconst loggedInPerson = { ...person, token }\n\n\t\t\t\tthis.Service('auth').setLoggedInPerson(loggedInPerson)\n\n\t\t\t\tloggedIn = true\n\n\t\t\t\tresponse.meta = { loggedInPerson }\n\t\t\t\tresponse.summaryLines = [`Logged in as ${loggedInPerson.casualName}`]\n\t\t\t} catch (err) {\n\t\t\t\tthis.ui.renderWarning('Oops, bad pin. Try again please! 🙏')\n\t\t\t}\n\t\t} while (!loggedIn)\n\n\t\treturn response\n\t}\n}\n"],"file":"LoginAction.js"}
1
+ {"version":3,"file":"LoginAction.js","names":["optionsSchema","id","description","fields","phone","type","label","isRequired","pin","LoginAction","options","validateAndNormalizeOptions","suppliedPin","loggedIn","connectToApi","shouldAuthAsLoggedInPerson","client","emit","payload","requestPinResults","eventResponseUtil","getFirstResponseOrThrow","challenge","response","ui","prompt","confirmPinResults","person","token","loggedInPerson","Service","setLoggedInPerson","meta","summaryLines","casualName","err","renderWarning","AbstractAction"],"sources":["../../../../src/features/person/actions/LoginAction.ts"],"sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'loginAction',\n\tdescription:\n\t\t'Authenticate as a person. From here, you can begin creating skill, organizations, conversation topics, etc.',\n\tfields: {\n\t\tphone: {\n\t\t\ttype: 'phone',\n\t\t\tlabel: 'Phone number',\n\t\t\tisRequired: true,\n\t\t},\n\t\tpin: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Pin',\n\t\t},\n\t},\n})\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class LoginAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['login']\n\tpublic invocationMessage = 'Logging in... 🤝'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { phone, pin: suppliedPin } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\t\tlet loggedIn = false\n\n\t\tconst client = await this.connectToApi({\n\t\t\tshouldAuthAsLoggedInPerson: false,\n\t\t})\n\n\t\tconst requestPinResults = await client.emit('request-pin::v2020_12_25', {\n\t\t\tpayload: { phone },\n\t\t})\n\n\t\tconst { challenge } =\n\t\t\teventResponseUtil.getFirstResponseOrThrow(requestPinResults)\n\n\t\tconst response: FeatureActionResponse = {}\n\n\t\tdo {\n\t\t\tconst pin =\n\t\t\t\tsuppliedPin ??\n\t\t\t\t(await this.ui.prompt({\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tlabel: 'Pin',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t}))\n\n\t\t\tconst confirmPinResults = await client.emit('confirm-pin::v2020_12_25', {\n\t\t\t\tpayload: { challenge, pin },\n\t\t\t})\n\n\t\t\ttry {\n\t\t\t\tconst { person, token } =\n\t\t\t\t\teventResponseUtil.getFirstResponseOrThrow(confirmPinResults)\n\n\t\t\t\tconst loggedInPerson = { ...person, token }\n\n\t\t\t\tthis.Service('auth').setLoggedInPerson(loggedInPerson)\n\n\t\t\t\tloggedIn = true\n\n\t\t\t\tresponse.meta = { loggedInPerson }\n\t\t\t\tresponse.summaryLines = [`Logged in as ${loggedInPerson.casualName}`]\n\t\t\t} catch (err) {\n\t\t\t\tthis.ui.renderWarning('Oops, bad pin. Try again please! 🙏')\n\t\t\t}\n\t\t} while (!loggedIn)\n\n\t\treturn response\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;EACjCC,EAAE,EAAE,aAD6B;EAEjCC,WAAW,EACV,6GAHgC;EAIjCC,MAAM,EAAE;IACPC,KAAK,EAAE;MACNC,IAAI,EAAE,OADA;MAENC,KAAK,EAAE,cAFD;MAGNC,UAAU,EAAE;IAHN,CADA;IAMPC,GAAG,EAAE;MACJH,IAAI,EAAE,MADF;MAEJC,KAAK,EAAE;IAFH;EANE;AAJyB,CAAZ,CAAtB;;IAmBqBG,W;;;;;;;;;;;;;;;sGACkBT,a;uGACd,CAAC,OAAD,C;0GACG,kB;;;;;;;mGAE3B,iBAAqBU,OAArB;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA,wBAEE,KAAKC,2BAAL,CAAiCD,OAAjC,CAFF,EACSN,KADT,yBACSA,KADT,EACqBQ,WADrB,yBACgBJ,GADhB;gBAGKK,QAHL,GAGgB,KAHhB;gBAAA;gBAAA,OAKsB,KAAKC,YAAL,CAAkB;kBACtCC,0BAA0B,EAAE;gBADU,CAAlB,CALtB;;cAAA;gBAKOC,MALP;gBAAA;gBAAA,OASiCA,MAAM,CAACC,IAAP,CAAY,0BAAZ,EAAwC;kBACvEC,OAAO,EAAE;oBAAEd,KAAK,EAALA;kBAAF;gBAD8D,CAAxC,CATjC;;cAAA;gBASOe,iBATP;gBAAA,wBAcEC,oCAAkBC,uBAAlB,CAA0CF,iBAA1C,CAdF,EAaSG,SAbT,yBAaSA,SAbT;gBAgBOC,QAhBP,GAgByC,EAhBzC;;cAAA;gBAAA,MAoBGX,WApBH,aAoBGA,WApBH;kBAAA;kBAAA;gBAAA;;gBAAA,cAoBGA,WApBH;gBAAA;gBAAA;;cAAA;gBAAA;gBAAA,OAqBU,KAAKY,EAAL,CAAQC,MAAR,CAAe;kBACrBpB,IAAI,EAAE,MADe;kBAErBC,KAAK,EAAE,KAFc;kBAGrBC,UAAU,EAAE;gBAHS,CAAf,CArBV;;cAAA;gBAAA;;cAAA;gBAmBQC,GAnBR;gBAAA;gBAAA,OA2BkCQ,MAAM,CAACC,IAAP,CAAY,0BAAZ,EAAwC;kBACvEC,OAAO,EAAE;oBAAEI,SAAS,EAATA,SAAF;oBAAad,GAAG,EAAHA;kBAAb;gBAD8D,CAAxC,CA3BlC;;cAAA;gBA2BQkB,iBA3BR;;gBA+BE,IAAI;kBAAA,yBAEFN,oCAAkBC,uBAAlB,CAA0CK,iBAA1C,CAFE,EACKC,MADL,0BACKA,MADL,EACaC,KADb,0BACaA,KADb;kBAIGC,cAJH,mCAIyBF,MAJzB;oBAIiCC,KAAK,EAALA;kBAJjC;kBAMH,KAAKE,OAAL,CAAa,MAAb,EAAqBC,iBAArB,CAAuCF,cAAvC;kBAEAhB,QAAQ,GAAG,IAAX;kBAEAU,QAAQ,CAACS,IAAT,GAAgB;oBAAEH,cAAc,EAAdA;kBAAF,CAAhB;kBACAN,QAAQ,CAACU,YAAT,GAAwB,wBAAiBJ,cAAc,CAACK,UAAhC,EAAxB;gBACA,CAZD,CAYE,OAAOC,GAAP,EAAY;kBACb,KAAKX,EAAL,CAAQY,aAAR,CAAsB,qCAAtB;gBACA;;cA7CH;gBAAA,IA8CU,CAACvB,QA9CX;kBAAA;kBAAA;gBAAA;;cAAA;gBAAA,iCAgDQU,QAhDR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EALwCc,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/person/actions/LogoutAction.ts"],"names":["optionsSchema","id","description","fields","LogoutAction","auth","Service","person","getLoggedInPerson","errors","SpruceError","code","logOutPerson","summaryLines","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;AACjCC,EAAAA,EAAE,EAAE,cAD6B;AAEjCC,EAAAA,WAAW,EAAE,qBAFoB;AAGjCC,EAAAA,MAAM,EAAE;AAHyB,CAAZ,CAAtB;;IAOqBC,Y;;;;;;;;;;;;;;;sGACkBJ,a;uGACd,CAAC,QAAD,C;0GACG,mB;;;;;;;mGAE3B;AAAA;AAAA;AAAA;AAAA;AAAA;AACOK,gBAAAA,IADP,GACc,KAAKC,OAAL,CAAa,MAAb,CADd;AAEOC,gBAAAA,MAFP,GAEgBF,IAAI,CAACG,iBAAL,EAFhB;;AAAA,oBAIMD,MAJN;AAAA;AAAA;AAAA;;AAAA,iDAKS;AACNE,kBAAAA,MAAM,EAAE,CACP,IAAIC,uBAAJ,CAAgB;AACfC,oBAAAA,IAAI,EAAE;AADS,mBAAhB,CADO;AADF,iBALT;;AAAA;AAcCN,gBAAAA,IAAI,CAACO,YAAL;AAdD,iDAgBQ;AACNC,kBAAAA,YAAY,EAAE,CAAC,2BAAD;AADR,iBAhBR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EALyCC,2B","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'logoutAction',\n\tdescription: 'Logout as a person.',\n\tfields: {},\n})\ntype OptionsSchema = typeof optionsSchema\n\nexport default class LogoutAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['logout']\n\tpublic invocationMessage = 'Logging out... 🤝'\n\n\tpublic async execute(): Promise<FeatureActionResponse> {\n\t\tconst auth = this.Service('auth')\n\t\tconst person = auth.getLoggedInPerson()\n\n\t\tif (!person) {\n\t\t\treturn {\n\t\t\t\terrors: [\n\t\t\t\t\tnew SpruceError({\n\t\t\t\t\t\tcode: 'NOT_LOGGED_IN',\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t}\n\t\t}\n\n\t\tauth.logOutPerson()\n\n\t\treturn {\n\t\t\tsummaryLines: ['You have been logged out!'],\n\t\t}\n\t}\n}\n"],"file":"LogoutAction.js"}
1
+ {"version":3,"file":"LogoutAction.js","names":["optionsSchema","id","description","fields","LogoutAction","auth","Service","person","getLoggedInPerson","errors","SpruceError","code","logOutPerson","summaryLines","AbstractAction"],"sources":["../../../../src/features/person/actions/LogoutAction.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'logoutAction',\n\tdescription: 'Logout as a person.',\n\tfields: {},\n})\ntype OptionsSchema = typeof optionsSchema\n\nexport default class LogoutAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['logout']\n\tpublic invocationMessage = 'Logging out... 🤝'\n\n\tpublic async execute(): Promise<FeatureActionResponse> {\n\t\tconst auth = this.Service('auth')\n\t\tconst person = auth.getLoggedInPerson()\n\n\t\tif (!person) {\n\t\t\treturn {\n\t\t\t\terrors: [\n\t\t\t\t\tnew SpruceError({\n\t\t\t\t\t\tcode: 'NOT_LOGGED_IN',\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t}\n\t\t}\n\n\t\tauth.logOutPerson()\n\n\t\treturn {\n\t\t\tsummaryLines: ['You have been logged out!'],\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;EACjCC,EAAE,EAAE,cAD6B;EAEjCC,WAAW,EAAE,qBAFoB;EAGjCC,MAAM,EAAE;AAHyB,CAAZ,CAAtB;;IAOqBC,Y;;;;;;;;;;;;;;;sGACkBJ,a;uGACd,CAAC,QAAD,C;0GACG,mB;;;;;;;mGAE3B;QAAA;QAAA;UAAA;YAAA;cAAA;gBACOK,IADP,GACc,KAAKC,OAAL,CAAa,MAAb,CADd;gBAEOC,MAFP,GAEgBF,IAAI,CAACG,iBAAL,EAFhB;;gBAAA,IAIMD,MAJN;kBAAA;kBAAA;gBAAA;;gBAAA,iCAKS;kBACNE,MAAM,EAAE,CACP,IAAIC,uBAAJ,CAAgB;oBACfC,IAAI,EAAE;kBADS,CAAhB,CADO;gBADF,CALT;;cAAA;gBAcCN,IAAI,CAACO,YAAL;gBAdD,iCAgBQ;kBACNC,YAAY,EAAE,CAAC,2BAAD;gBADR,CAhBR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EALyCC,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/person/actions/WhoamiAction.ts"],"names":["optionsSchema","id","description","fields","WhoAmIAction","connectToApi","client","emit","results","eventResponseUtil","getFirstResponseOrThrow","type","auth","summaryLines","push","person","casualName","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;AACjCC,EAAAA,EAAE,EAAE,QAD6B;AAEjCC,EAAAA,WAAW,EAAE,gCAFoB;AAGjCC,EAAAA,MAAM,EAAE;AAHyB,CAAZ,CAAtB;;IAQqBC,Y;;;;;;;;;;;;;;;sGACkBJ,a;uGACd,CAAC,QAAD,C;0GACG,4B;;;;;;;mGAE3B;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBACsB,KAAKK,YAAL,EADtB;;AAAA;AACOC,gBAAAA,MADP;AAAA;AAAA,uBAGuBA,MAAM,CAACC,IAAP,CAAY,qBAAZ,CAHvB;;AAAA;AAGOC,gBAAAA,OAHP;AAAA,wCAIwBC,oCAAkBC,uBAAlB,CAA0CF,OAA1C,CAJxB,EAISG,IAJT,yBAISA,IAJT,EAIeC,IAJf,yBAIeA,IAJf;AAMOC,gBAAAA,YANP,GAMgC,EANhC;;AAQC,oBAAIF,IAAI,KAAK,WAAb,EAA0B;AACzBE,kBAAAA,YAAY,CAACC,IAAb,CAAkB,wBAAlB;AACA,iBAFD,MAEO,IAAIF,IAAI,CAACG,MAAT,EAAiB;AACvBF,kBAAAA,YAAY,CAACC,IAAb;AACAD,kBAAAA,YAAY,CAACC,IAAb,iBAA2BF,IAAI,CAACG,MAAL,CAAYC,UAAvC;AACA;;AAbF,iDAeQ;AACNH,kBAAAA,YAAY,EAAZA;AADM,iBAfR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EALyCI,2B","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'whoAmI',\n\tdescription: \"Check who you're logged in as.\",\n\tfields: {},\n})\n\ntype OptionsSchema = typeof optionsSchema\n\nexport default class WhoAmIAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['whoami']\n\tpublic invocationMessage = 'Determining identity... 🤝'\n\n\tpublic async execute(): Promise<FeatureActionResponse> {\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('whoami::v2020_12_25')\n\t\tconst { type, auth } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\tconst summaryLines: string[] = []\n\n\t\tif (type === 'anonymous') {\n\t\t\tsummaryLines.push('You are not logged in.')\n\t\t} else if (auth.person) {\n\t\t\tsummaryLines.push(`You are logged in as a person.`)\n\t\t\tsummaryLines.push(`Name: ${auth.person.casualName}`)\n\t\t}\n\n\t\treturn {\n\t\t\tsummaryLines,\n\t\t}\n\t}\n}\n"],"file":"WhoamiAction.js"}
1
+ {"version":3,"file":"WhoamiAction.js","names":["optionsSchema","id","description","fields","WhoAmIAction","connectToApi","client","emit","results","eventResponseUtil","getFirstResponseOrThrow","type","auth","summaryLines","push","person","casualName","AbstractAction"],"sources":["../../../../src/features/person/actions/WhoamiAction.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'whoAmI',\n\tdescription: \"Check who you're logged in as.\",\n\tfields: {},\n})\n\ntype OptionsSchema = typeof optionsSchema\n\nexport default class WhoAmIAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['whoami']\n\tpublic invocationMessage = 'Determining identity... 🤝'\n\n\tpublic async execute(): Promise<FeatureActionResponse> {\n\t\tconst client = await this.connectToApi()\n\n\t\tconst results = await client.emit('whoami::v2020_12_25')\n\t\tconst { type, auth } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\tconst summaryLines: string[] = []\n\n\t\tif (type === 'anonymous') {\n\t\t\tsummaryLines.push('You are not logged in.')\n\t\t} else if (auth.person) {\n\t\t\tsummaryLines.push(`You are logged in as a person.`)\n\t\t\tsummaryLines.push(`Name: ${auth.person.casualName}`)\n\t\t}\n\n\t\treturn {\n\t\t\tsummaryLines,\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;EACjCC,EAAE,EAAE,QAD6B;EAEjCC,WAAW,EAAE,gCAFoB;EAGjCC,MAAM,EAAE;AAHyB,CAAZ,CAAtB;;IAQqBC,Y;;;;;;;;;;;;;;;sGACkBJ,a;uGACd,CAAC,QAAD,C;0GACG,4B;;;;;;;mGAE3B;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OACsB,KAAKK,YAAL,EADtB;;cAAA;gBACOC,MADP;gBAAA;gBAAA,OAGuBA,MAAM,CAACC,IAAP,CAAY,qBAAZ,CAHvB;;cAAA;gBAGOC,OAHP;gBAAA,wBAIwBC,oCAAkBC,uBAAlB,CAA0CF,OAA1C,CAJxB,EAISG,IAJT,yBAISA,IAJT,EAIeC,IAJf,yBAIeA,IAJf;gBAMOC,YANP,GAMgC,EANhC;;gBAQC,IAAIF,IAAI,KAAK,WAAb,EAA0B;kBACzBE,YAAY,CAACC,IAAb,CAAkB,wBAAlB;gBACA,CAFD,MAEO,IAAIF,IAAI,CAACG,MAAT,EAAiB;kBACvBF,YAAY,CAACC,IAAb;kBACAD,YAAY,CAACC,IAAb,iBAA2BF,IAAI,CAACG,MAAL,CAAYC,UAAvC;gBACA;;gBAbF,iCAeQ;kBACNH,YAAY,EAAZA;gBADM,CAfR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EALyCI,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/features/sandbox/SandboxFeature.ts"],"names":["SandboxFeature","options","code","isRequired","diskUtil","resolvePath","__dirname","emitter","on","payload","featureInstaller","isInstalled","isSkillInstalled","featureCode","actionCode","uiUtil","renderMasthead","ui","headline","Action","execute","AbstractFeature"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;IASqBA,c;;;;;AAcpB,0BAAmBC,OAAnB,EAA2C;AAAA;;AAAA;AAC1C,8BAAMA,OAAN;AAD0C,6FAbhB,SAagB;AAAA,qGAZrB,SAYqB;AAAA,oGAV1C,qEAU0C;AAAA,qGATA,CAC1C;AACCC,MAAAA,IAAI,EAAE,OADP;AAECC,MAAAA,UAAU,EAAE;AAFb,KAD0C,CASA;AAAA,4GAHd,EAGc;AAAA,mGAFvBC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,SAAhC,CAEuB;AAG1C,SAAK,MAAKC,OAAL,CAAaC,EAAb,CAAgB,sBAAhB;AAAA,+FAAwC,iBAAOC,OAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBACb,MAAKC,gBAAL,CAAsBC,WAAtB,CAC9B,SAD8B,CADa;;AAAA;AACtCC,gBAAAA,gBADsC;;AAAA,sBAK3CA,gBAAgB,IAChBH,OAAO,CAACI,WAAR,KAAwB,MADxB,IAEAJ,OAAO,CAACK,UAAR,KAAuB,SAPoB;AAAA;AAAA;AAAA;;AAS3CC,+BAAOC,cAAP,CAAsB;AACrBC,kBAAAA,EAAE,EAAE,MAAKA,EADY;AAErBC,kBAAAA,QAAQ,EAAE;AAFW,iBAAtB;;AAT2C,iDAcpC,MAAKC,MAAL,CAAY,SAAZ,EAAuB,OAAvB,EAAgCC,OAAhC,CAAwC,EAAxC,CAdoC;;AAAA;AAAA,iDAiBrC,EAjBqC;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OAAxC;;AAAA;AAAA;AAAA;AAAA,QAAL;AAH0C;AAsB1C;;;EApC0CC,4B","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport uiUtil from '../../utilities/ui.utility'\nimport AbstractFeature, { FeatureDependency } from '../AbstractFeature'\nimport { ActionOptions, FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tsandbox: SandboxFeature\n\t}\n}\n\nexport default class SandboxFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'sandbox'\n\tpublic nameReadable = 'Sandbox'\n\tpublic description =\n\t\t'For getting your skill up-and-running on sandbox.mercury.spruce.ai.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{\n\t\t\tcode: 'event',\n\t\t\tisRequired: true,\n\t\t},\n\t]\n\tpublic packageDependencies = []\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic constructor(options: ActionOptions) {\n\t\tsuper(options)\n\n\t\tvoid this.emitter.on('feature.will-execute', async (payload) => {\n\t\t\tconst isSkillInstalled = await this.featureInstaller.isInstalled(\n\t\t\t\t'sandbox'\n\t\t\t)\n\t\t\tif (\n\t\t\t\tisSkillInstalled &&\n\t\t\t\tpayload.featureCode === 'node' &&\n\t\t\t\tpayload.actionCode === 'upgrade'\n\t\t\t) {\n\t\t\t\tuiUtil.renderMasthead({\n\t\t\t\t\tui: this.ui,\n\t\t\t\t\theadline: 'Updating sandbox support...',\n\t\t\t\t})\n\n\t\t\t\treturn this.Action('sandbox', 'setup').execute({})\n\t\t\t}\n\n\t\t\treturn {}\n\t\t})\n\t}\n}\n"],"file":"SandboxFeature.js"}
1
+ {"version":3,"file":"SandboxFeature.js","names":["SandboxFeature","options","code","isRequired","diskUtil","resolvePath","__dirname","emitter","on","payload","featureInstaller","isInstalled","isSkillInstalled","featureCode","actionCode","uiUtil","renderMasthead","ui","headline","Action","execute","AbstractFeature"],"sources":["../../../src/features/sandbox/SandboxFeature.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport uiUtil from '../../utilities/ui.utility'\nimport AbstractFeature, { FeatureDependency } from '../AbstractFeature'\nimport { ActionOptions, FeatureCode } from '../features.types'\n\ndeclare module '../../features/features.types' {\n\tinterface FeatureMap {\n\t\tsandbox: SandboxFeature\n\t}\n}\n\nexport default class SandboxFeature extends AbstractFeature {\n\tpublic code: FeatureCode = 'sandbox'\n\tpublic nameReadable = 'Sandbox'\n\tpublic description =\n\t\t'For getting your skill up-and-running on sandbox.mercury.spruce.ai.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{\n\t\t\tcode: 'event',\n\t\t\tisRequired: true,\n\t\t},\n\t]\n\tpublic packageDependencies = []\n\tpublic actionsDir = diskUtil.resolvePath(__dirname, 'actions')\n\n\tpublic constructor(options: ActionOptions) {\n\t\tsuper(options)\n\n\t\tvoid this.emitter.on('feature.will-execute', async (payload) => {\n\t\t\tconst isSkillInstalled = await this.featureInstaller.isInstalled(\n\t\t\t\t'sandbox'\n\t\t\t)\n\t\t\tif (\n\t\t\t\tisSkillInstalled &&\n\t\t\t\tpayload.featureCode === 'node' &&\n\t\t\t\tpayload.actionCode === 'upgrade'\n\t\t\t) {\n\t\t\t\tuiUtil.renderMasthead({\n\t\t\t\t\tui: this.ui,\n\t\t\t\t\theadline: 'Updating sandbox support...',\n\t\t\t\t})\n\n\t\t\t\treturn this.Action('sandbox', 'setup').execute({})\n\t\t\t}\n\n\t\t\treturn {}\n\t\t})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;IASqBA,c;;;;;EAcpB,wBAAmBC,OAAnB,EAA2C;IAAA;;IAAA;IAC1C,0BAAMA,OAAN;IAD0C,yFAbhB,SAagB;IAAA,iGAZrB,SAYqB;IAAA,gGAV1C,qEAU0C;IAAA,iGATA,CAC1C;MACCC,IAAI,EAAE,OADP;MAECC,UAAU,EAAE;IAFb,CAD0C,CASA;IAAA,wGAHd,EAGc;IAAA,+FAFvBC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,SAAhC,CAEuB;IAG1C,KAAK,MAAKC,OAAL,CAAaC,EAAb,CAAgB,sBAAhB;MAAA,yFAAwC,iBAAOC,OAAP;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OACb,MAAKC,gBAAL,CAAsBC,WAAtB,CAC9B,SAD8B,CADa;;cAAA;gBACtCC,gBADsC;;gBAAA,MAK3CA,gBAAgB,IAChBH,OAAO,CAACI,WAAR,KAAwB,MADxB,IAEAJ,OAAO,CAACK,UAAR,KAAuB,SAPoB;kBAAA;kBAAA;gBAAA;;gBAS3CC,eAAOC,cAAP,CAAsB;kBACrBC,EAAE,EAAE,MAAKA,EADY;kBAErBC,QAAQ,EAAE;gBAFW,CAAtB;;gBAT2C,iCAcpC,MAAKC,MAAL,CAAY,SAAZ,EAAuB,OAAvB,EAAgCC,OAAhC,CAAwC,EAAxC,CAdoC;;cAAA;gBAAA,iCAiBrC,EAjBqC;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAAxC;;MAAA;QAAA;MAAA;IAAA,IAAL;IAH0C;EAsB1C;;;EApC0CC,4B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/sandbox/actions/SetupAction.ts"],"names":["optionsSchema","id","name","fields","SetupAction","setupVscodeSchema","listeners","Store","loadListeners","existing","version","find","e","eventNamespace","createListenerAction","Action","execute","namespace","eventName","versionUtil","generateVersion","dirValue","results","errors","match","files","file","search","Error","description","Writer","writeDidBootListener","path","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;AACjCC,EAAAA,EAAE,EAAE,qBAD6B;AAEjCC,EAAAA,IAAI,EAAE,uBAF2B;AAGjCC,EAAAA,MAAM,EAAE;AAHyB,CAAZ,CAAtB;;IAQqBC,W;;;;;;;;;;;;;;;sGACGC,8B;0GACI,kC;;;;;;;mGAE3B;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AACOC,gBAAAA,SADP,GACmB,KAAKC,KAAL,CAAW,UAAX,CADnB;AAAA;AAAA,uBAEwBD,SAAS,CAACE,aAAV,EAFxB;;AAAA;AAEOC,gBAAAA,QAFP;AAGOC,gBAAAA,OAHP,qBAGiBD,QAAQ,CAACE,IAAT,CAAc,UAACC,CAAD;AAAA,yBAAOA,CAAC,CAACC,cAAF,KAAqB,OAA5B;AAAA,iBAAd,CAHjB,mDAGiB,eAAoDH,OAHrE;AAKOI,gBAAAA,oBALP,GAK8B,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,CAL9B;AAAA;AAAA,uBAMuBD,oBAAoB,CAACE,OAArB,CAA6B;AAClDC,kBAAAA,SAAS,EAAE,OADuC;AAElDC,kBAAAA,SAAS,EAAE,WAFuC;AAGlDR,kBAAAA,OAAO,EAAEA,OAAF,aAAEA,OAAF,cAAEA,OAAF,GAAaS,8BAAYC,eAAZ,GAA8BC;AAHA,iBAA7B,CANvB;;AAAA;AAMOC,gBAAAA,OANP;;AAAA,qBAYKA,OAAO,CAACC,MAZb;AAAA;AAAA;AAAA;;AAAA,iDAaSD,OAbT;;AAAA;AAgBOE,gBAAAA,KAhBP,GAgBe,mBAACF,OAAO,CAACG,KAAT,2DAAkB,EAAlB,EAAsBd,IAAtB,CACb,UAACe,IAAD;AAAA,yBAAUA,IAAI,CAACxB,IAAL,CAAUyB,MAAV,CAAiB,WAAjB,MAAkC,CAA5C;AAAA,iBADa,CAhBf;;AAAA,oBAoBMH,KApBN;AAAA;AAAA;AAAA;;AAAA,sBAqBQ,IAAII,KAAJ,CAAU,wBAAV,CArBR;;AAAA;AAwBCJ,gBAAAA,KAAK,CAACK,WAAN,GAAoB,2CAApB;AAxBD;AAAA,uBA0BO,KAAKC,MAAL,CAAY,SAAZ,EAAuBC,oBAAvB,CAA4CP,KAAK,CAACQ,IAAlD,CA1BP;;AAAA;AAAA,iDA4BQV,OA5BR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAJwCW,2B","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport { versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport setupVscodeSchema from '#spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'setupSandboxOptions',\n\tname: 'Setup sandbox options',\n\tfields: {},\n})\n\ntype OptionsSchema = typeof optionsSchema\n\nexport default class SetupAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = setupVscodeSchema\n\tpublic invocationMessage = 'Setting up sandbox support... 🏝'\n\n\tpublic async execute(): Promise<FeatureActionResponse> {\n\t\tconst listeners = this.Store('listener')\n\t\tconst existing = await listeners.loadListeners()\n\t\tconst version = existing.find((e) => e.eventNamespace === 'skill')?.version\n\n\t\tconst createListenerAction = this.Action('event', 'listen')\n\t\tconst results = await createListenerAction.execute({\n\t\t\tnamespace: 'skill',\n\t\t\teventName: 'will-boot',\n\t\t\tversion: version ?? versionUtil.generateVersion().dirValue,\n\t\t})\n\n\t\tif (results.errors) {\n\t\t\treturn results\n\t\t}\n\n\t\tconst match = (results.files ?? []).find(\n\t\t\t(file) => file.name.search('will-boot') === 0\n\t\t)\n\n\t\tif (!match) {\n\t\t\tthrow new Error('file was not generated')\n\t\t}\n\n\t\tmatch.description = 'Used for recovering from a sandbox reset.'\n\n\t\tawait this.Writer('sandbox').writeDidBootListener(match.path)\n\n\t\treturn results\n\t}\n}\n"],"file":"SetupAction.js"}
1
+ {"version":3,"file":"SetupAction.js","names":["optionsSchema","id","name","fields","SetupAction","setupVscodeSchema","listeners","Store","loadListeners","existing","version","find","e","eventNamespace","createListenerAction","Action","execute","namespace","eventName","versionUtil","generateVersion","dirValue","results","errors","match","files","file","search","Error","description","Writer","writeDidBootListener","path","AbstractAction"],"sources":["../../../../src/features/sandbox/actions/SetupAction.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport { versionUtil } from '@sprucelabs/spruce-skill-utils'\nimport setupVscodeSchema from '#spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'setupSandboxOptions',\n\tname: 'Setup sandbox options',\n\tfields: {},\n})\n\ntype OptionsSchema = typeof optionsSchema\n\nexport default class SetupAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = setupVscodeSchema\n\tpublic invocationMessage = 'Setting up sandbox support... 🏝'\n\n\tpublic async execute(): Promise<FeatureActionResponse> {\n\t\tconst listeners = this.Store('listener')\n\t\tconst existing = await listeners.loadListeners()\n\t\tconst version = existing.find((e) => e.eventNamespace === 'skill')?.version\n\n\t\tconst createListenerAction = this.Action('event', 'listen')\n\t\tconst results = await createListenerAction.execute({\n\t\t\tnamespace: 'skill',\n\t\t\teventName: 'will-boot',\n\t\t\tversion: version ?? versionUtil.generateVersion().dirValue,\n\t\t})\n\n\t\tif (results.errors) {\n\t\t\treturn results\n\t\t}\n\n\t\tconst match = (results.files ?? []).find(\n\t\t\t(file) => file.name.search('will-boot') === 0\n\t\t)\n\n\t\tif (!match) {\n\t\t\tthrow new Error('file was not generated')\n\t\t}\n\n\t\tmatch.description = 'Used for recovering from a sandbox reset.'\n\n\t\tawait this.Writer('sandbox').writeDidBootListener(match.path)\n\n\t\treturn results\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;EACjCC,EAAE,EAAE,qBAD6B;EAEjCC,IAAI,EAAE,uBAF2B;EAGjCC,MAAM,EAAE;AAHyB,CAAZ,CAAtB;;IAQqBC,W;;;;;;;;;;;;;;;sGACGC,8B;0GACI,kC;;;;;;;mGAE3B;QAAA;;QAAA;QAAA;UAAA;YAAA;cAAA;gBACOC,SADP,GACmB,KAAKC,KAAL,CAAW,UAAX,CADnB;gBAAA;gBAAA,OAEwBD,SAAS,CAACE,aAAV,EAFxB;;cAAA;gBAEOC,QAFP;gBAGOC,OAHP,qBAGiBD,QAAQ,CAACE,IAAT,CAAc,UAACC,CAAD;kBAAA,OAAOA,CAAC,CAACC,cAAF,KAAqB,OAA5B;gBAAA,CAAd,CAHjB,mDAGiB,eAAoDH,OAHrE;gBAKOI,oBALP,GAK8B,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,CAL9B;gBAAA;gBAAA,OAMuBD,oBAAoB,CAACE,OAArB,CAA6B;kBAClDC,SAAS,EAAE,OADuC;kBAElDC,SAAS,EAAE,WAFuC;kBAGlDR,OAAO,EAAEA,OAAF,aAAEA,OAAF,cAAEA,OAAF,GAAaS,8BAAYC,eAAZ,GAA8BC;gBAHA,CAA7B,CANvB;;cAAA;gBAMOC,OANP;;gBAAA,KAYKA,OAAO,CAACC,MAZb;kBAAA;kBAAA;gBAAA;;gBAAA,iCAaSD,OAbT;;cAAA;gBAgBOE,KAhBP,GAgBe,mBAACF,OAAO,CAACG,KAAT,2DAAkB,EAAlB,EAAsBd,IAAtB,CACb,UAACe,IAAD;kBAAA,OAAUA,IAAI,CAACxB,IAAL,CAAUyB,MAAV,CAAiB,WAAjB,MAAkC,CAA5C;gBAAA,CADa,CAhBf;;gBAAA,IAoBMH,KApBN;kBAAA;kBAAA;gBAAA;;gBAAA,MAqBQ,IAAII,KAAJ,CAAU,wBAAV,CArBR;;cAAA;gBAwBCJ,KAAK,CAACK,WAAN,GAAoB,2CAApB;gBAxBD;gBAAA,OA0BO,KAAKC,MAAL,CAAY,SAAZ,EAAuBC,oBAAvB,CAA4CP,KAAK,CAACQ,IAAlD,CA1BP;;cAAA;gBAAA,iCA4BQV,OA5BR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAJwCW,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/sandbox/writers/SandboxWriter.ts"],"names":["SandboxWriter","filepath","newContents","templates","sandboxWillBootListener","diskUtil","writeFile","lint","AbstractWriter"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;IAEqBA,a;;;;;;;;;;;;;gHACpB,iBAAkCC,QAAlC;AAAA;AAAA;AAAA;AAAA;AAAA;AACOC,gBAAAA,WADP,GACqB,KAAKC,SAAL,CAAeC,uBAAf,EADrB;;AAGCC,2CAASC,SAAT,CAAmBL,QAAnB,EAA6BC,WAA7B;;AAHD;AAAA,uBAKO,KAAKK,IAAL,CAAUN,QAAV,CALP;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAD0CO,2B","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractWriter from '../../../writers/AbstractWriter'\n\nexport default class SandboxWriter extends AbstractWriter {\n\tpublic async writeDidBootListener(filepath: string) {\n\t\tconst newContents = this.templates.sandboxWillBootListener()\n\n\t\tdiskUtil.writeFile(filepath, newContents)\n\n\t\tawait this.lint(filepath)\n\t}\n}\n"],"file":"SandboxWriter.js"}
1
+ {"version":3,"file":"SandboxWriter.js","names":["SandboxWriter","filepath","newContents","templates","sandboxWillBootListener","diskUtil","writeFile","lint","AbstractWriter"],"sources":["../../../../src/features/sandbox/writers/SandboxWriter.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport AbstractWriter from '../../../writers/AbstractWriter'\n\nexport default class SandboxWriter extends AbstractWriter {\n\tpublic async writeDidBootListener(filepath: string) {\n\t\tconst newContents = this.templates.sandboxWillBootListener()\n\n\t\tdiskUtil.writeFile(filepath, newContents)\n\n\t\tawait this.lint(filepath)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;IAEqBA,a;;;;;;;;;;;;;gHACpB,iBAAkCC,QAAlC;QAAA;QAAA;UAAA;YAAA;cAAA;gBACOC,WADP,GACqB,KAAKC,SAAL,CAAeC,uBAAf,EADrB;;gBAGCC,2BAASC,SAAT,CAAmBL,QAAnB,EAA6BC,WAA7B;;gBAHD;gBAAA,OAKO,KAAKK,IAAL,CAAUN,QAAV,CALP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAD0CO,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/features/schema/SchemaFeature.ts"],"names":["SchemaFeature","options","code","isRequired","name","isDev","diskUtil","resolvePath","__dirname","emitter","on","handleWillExecute","bind","handleDidExecute","payload","featureInstaller","isInstalled","isSkillInstalled","featureCode","actionCode","writePlugin","files","Store","hasLocalSchemas","Action","execute","results","Writer","cwd","AbstractFeature"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;;;;;IAiBqBA,a;;;;;AAwBpB,yBAAmBC,OAAnB,EAA4C;AAAA;;AAAA;AAC3C,8BAAMA,OAAN;AAD2C,qGAvBtB,QAuBsB;AAAA,oGAtBvB,6CAsBuB;AAAA,qGArBD,CAC1C;AAAEC,MAAAA,IAAI,EAAE,OAAR;AAAiBC,MAAAA,UAAU,EAAE;AAA7B,KAD0C,EAE1C;AAAED,MAAAA,IAAI,EAAE,MAAR;AAAgBC,MAAAA,UAAU,EAAE;AAA5B,KAF0C,CAqBC;AAAA,4GAjBD,CAC1C;AACCC,MAAAA,IAAI,EAAE;AADP,KAD0C,EAI1C;AACCA,MAAAA,IAAI,EAAE;AADP,KAJ0C,EAO1C;AAAEA,MAAAA,IAAI,EAAE,yCAAR;AAAmDC,MAAAA,KAAK,EAAE;AAA1D,KAP0C,EAQ1C;AACCD,MAAAA,IAAI,EAAE;AADP,KAR0C,CAiBC;AAAA,6FAJjB,QAIiB;AAAA,mGAFxBE,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,SAAhC,CAEwB;AAG3C,SAAK,MAAKC,OAAL,CAAaC,EAAb,CACJ,sBADI,EAEJ,MAAKC,iBAAL,CAAuBC,IAAvB,gDAFI,CAAL;AAKA,SAAK,MAAKH,OAAL,CAAaC,EAAb,CACJ,qBADI,EAEJ,MAAKG,gBAAL,CAAsBD,IAAtB,gDAFI,CAAL;AAR2C;AAY3C;;;;;6GAED,iBAAgCE,OAAhC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAI2B,KAAKC,gBAAL,CAAsBC,WAAtB,CAAkC,QAAlC,CAJ3B;;AAAA;AAIOA,gBAAAA,WAJP;AAAA;AAAA,uBAKgC,KAAKD,gBAAL,CAAsBC,WAAtB,CAAkC,OAAlC,CALhC;;AAAA;AAKOC,gBAAAA,gBALP;;AAAA,sBAQEH,OAAO,CAACI,WAAR,KAAwB,MAAxB,IACAJ,OAAO,CAACK,UAAR,KAAuB,SADvB,IAEAH,WAFA,IAGAC,gBAXF;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAasB,KAAKG,WAAL,EAbtB;;AAAA;AAaQC,gBAAAA,KAbR;AAAA,iDAcS;AAAEA,kBAAAA,KAAK,EAALA;AAAF,iBAdT;;AAAA;AAAA,iDAiBQ,EAjBR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;4GAoBA,kBAA+BP,OAA/B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAI2B,KAAKC,gBAAL,CAAsBC,WAAtB,CAAkC,QAAlC,CAJ3B;;AAAA;AAIOA,gBAAAA,WAJP;;AAAA,sBAOEF,OAAO,CAACI,WAAR,KAAwB,MAAxB,IACAJ,OAAO,CAACK,UAAR,KAAuB,SADvB,IAEAH,WATF;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAWgC,KAAKM,KAAL,CAAW,QAAX,EAAqBC,eAArB,EAXhC;;AAAA;AAWQA,gBAAAA,eAXR;;AAAA,qBAYMA,eAZN;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAayB,KAAKC,MAAL,CAAY,QAAZ,EAAsB,MAAtB,EAA8BC,OAA9B,CAAsC,EAAtC,CAbzB;;AAAA;AAaSC,gBAAAA,OAbT;AAAA,kDAeUA,OAfV;;AAAA;AAAA,kDAmBQ,EAnBR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;+GAsBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBACgC,KAAKX,gBAAL,CAAsBC,WAAtB,CAAkC,OAAlC,CADhC;;AAAA;AACOC,gBAAAA,gBADP;;AAAA,oBAGMA,gBAHN;AAAA;AAAA;AAAA;;AAAA,kDAIS,EAJT;;AAAA;AAAA;AAAA,uBAOqB,KAAKG,WAAL,EAPrB;;AAAA;AAOOC,gBAAAA,KAPP;AAAA,kDASQ;AACNA,kBAAAA,KAAK,EAALA;AADM,iBATR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;;uGAcA;AAAA;AAAA;AAAA;AAAA;AAAA,kDACQ,KAAKM,MAAL,CAAY,QAAZ,EAAsBP,WAAtB,CAAkC,KAAKQ,GAAvC,CADR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EA9F0CC,4B","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\tschema: SchemaFeature\n\t}\n\n\tinterface FeatureOptionsMap {\n\t\tschema: undefined\n\t}\n}\n\nexport default class SchemaFeature extends AbstractFeature {\n\tpublic nameReadable = 'Schema'\n\tpublic description = 'Define, validate, and normalize everything.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{ code: 'skill', isRequired: false },\n\t\t{ code: 'node', isRequired: true },\n\t]\n\tpublic packageDependencies: NpmPackage[] = [\n\t\t{\n\t\t\tname: '@sprucelabs/schema@latest',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-core-schemas@latest',\n\t\t},\n\t\t{ name: '@sprucelabs/resolve-path-aliases@latest', isDev: true },\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-skill-utils',\n\t\t},\n\t]\n\n\tpublic code: FeatureCode = 'schema'\n\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.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\tprivate async handleWillExecute(payload: {\n\t\tactionCode: string\n\t\tfeatureCode: string\n\t}) {\n\t\tconst isInstalled = await this.featureInstaller.isInstalled('schema')\n\t\tconst isSkillInstalled = await this.featureInstaller.isInstalled('skill')\n\n\t\tif (\n\t\t\tpayload.featureCode === 'node' &&\n\t\t\tpayload.actionCode === 'upgrade' &&\n\t\t\tisInstalled &&\n\t\t\tisSkillInstalled\n\t\t) {\n\t\t\tconst files = await this.writePlugin()\n\t\t\treturn { files }\n\t\t}\n\n\t\treturn {}\n\t}\n\n\tprivate async handleDidExecute(payload: {\n\t\tactionCode: string\n\t\tfeatureCode: string\n\t}) {\n\t\tconst isInstalled = await this.featureInstaller.isInstalled('schema')\n\n\t\tif (\n\t\t\tpayload.featureCode === 'node' &&\n\t\t\tpayload.actionCode === 'upgrade' &&\n\t\t\tisInstalled\n\t\t) {\n\t\t\tconst hasLocalSchemas = await this.Store('schema').hasLocalSchemas()\n\t\t\tif (hasLocalSchemas) {\n\t\t\t\tconst results = await this.Action('schema', 'sync').execute({})\n\n\t\t\t\treturn results\n\t\t\t}\n\t\t}\n\n\t\treturn {}\n\t}\n\n\tpublic async afterPackageInstall(): Promise<InstallResults> {\n\t\tconst isSkillInstalled = await this.featureInstaller.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 writePlugin() {\n\t\treturn this.Writer('schema').writePlugin(this.cwd)\n\t}\n}\n"],"file":"SchemaFeature.js"}
1
+ {"version":3,"file":"SchemaFeature.js","names":["SchemaFeature","options","code","isRequired","name","isDev","diskUtil","resolvePath","__dirname","emitter","on","handleWillExecute","bind","handleDidExecute","payload","featureInstaller","isInstalled","isSkillInstalled","featureCode","actionCode","writePlugin","files","Store","hasLocalSchemas","Action","execute","results","Writer","cwd","AbstractFeature"],"sources":["../../../src/features/schema/SchemaFeature.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\tschema: SchemaFeature\n\t}\n\n\tinterface FeatureOptionsMap {\n\t\tschema: undefined\n\t}\n}\n\nexport default class SchemaFeature extends AbstractFeature {\n\tpublic nameReadable = 'Schema'\n\tpublic description = 'Define, validate, and normalize everything.'\n\tpublic dependencies: FeatureDependency[] = [\n\t\t{ code: 'skill', isRequired: false },\n\t\t{ code: 'node', isRequired: true },\n\t]\n\tpublic packageDependencies: NpmPackage[] = [\n\t\t{\n\t\t\tname: '@sprucelabs/schema@latest',\n\t\t},\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-core-schemas@latest',\n\t\t},\n\t\t{ name: '@sprucelabs/resolve-path-aliases@latest', isDev: true },\n\t\t{\n\t\t\tname: '@sprucelabs/spruce-skill-utils',\n\t\t},\n\t]\n\n\tpublic code: FeatureCode = 'schema'\n\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.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\tprivate async handleWillExecute(payload: {\n\t\tactionCode: string\n\t\tfeatureCode: string\n\t}) {\n\t\tconst isInstalled = await this.featureInstaller.isInstalled('schema')\n\t\tconst isSkillInstalled = await this.featureInstaller.isInstalled('skill')\n\n\t\tif (\n\t\t\tpayload.featureCode === 'node' &&\n\t\t\tpayload.actionCode === 'upgrade' &&\n\t\t\tisInstalled &&\n\t\t\tisSkillInstalled\n\t\t) {\n\t\t\tconst files = await this.writePlugin()\n\t\t\treturn { files }\n\t\t}\n\n\t\treturn {}\n\t}\n\n\tprivate async handleDidExecute(payload: {\n\t\tactionCode: string\n\t\tfeatureCode: string\n\t}) {\n\t\tconst isInstalled = await this.featureInstaller.isInstalled('schema')\n\n\t\tif (\n\t\t\tpayload.featureCode === 'node' &&\n\t\t\tpayload.actionCode === 'upgrade' &&\n\t\t\tisInstalled\n\t\t) {\n\t\t\tconst hasLocalSchemas = await this.Store('schema').hasLocalSchemas()\n\t\t\tif (hasLocalSchemas) {\n\t\t\t\tconst results = await this.Action('schema', 'sync').execute({})\n\n\t\t\t\treturn results\n\t\t\t}\n\t\t}\n\n\t\treturn {}\n\t}\n\n\tpublic async afterPackageInstall(): Promise<InstallResults> {\n\t\tconst isSkillInstalled = await this.featureInstaller.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 writePlugin() {\n\t\treturn this.Writer('schema').writePlugin(this.cwd)\n\t}\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/features/schema/ValueTypeBuilder.ts"],"names":["ValueTypeBuilder","schemaGenerator","importService","writer","options","resolvedDestination","fieldTemplateItems","schemaTemplateItems","globalSchemaNamespace","length","writeValueTypes","valueTypeResults","importDefault","path","valueTypes","diskUtil","deleteFile"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;;IAKqBA,gB;AAIpB,4BACCC,eADD,EAECC,aAFD,EAGE;AAAA;AAAA;AAAA;AACD,SAAKC,MAAL,GAAcF,eAAd;AACA,SAAKC,aAAL,GAAqBA,aAArB;AACA;;;;;8GAED,iBAAgCE,OAAhC;AAAA;AAAA;AAAA;AAAA;AAAA;AAOEC,gBAAAA,mBAPF,GAWKD,OAXL,CAOEC,mBAPF,EAQEC,kBARF,GAWKF,OAXL,CAQEE,kBARF,EASEC,mBATF,GAWKH,OAXL,CASEG,mBATF,EAUEC,qBAVF,GAWKJ,OAXL,CAUEI,qBAVF;;AAAA,sBAaKD,mBAAmB,CAACE,MAApB,KAA+B,CAbpC;AAAA;AAAA;AAAA;;AAAA,iDAcS,EAdT;;AAAA;AAAA;AAAA,uBAiBgC,KAAKN,MAAL,CAAYO,eAAZ,CAC9BL,mBAD8B,EAE9B;AACCC,kBAAAA,kBAAkB,EAAlBA,kBADD;AAECC,kBAAAA,mBAAmB,EAAnBA,mBAFD;AAGCC,kBAAAA,qBAAqB,EAArBA;AAHD,iBAF8B,CAjBhC;;AAAA;AAiBOG,gBAAAA,gBAjBP;AAAA;AAAA,uBA0BsC,KAAKT,aAAL,CAAmBU,aAAnB,CACpCD,gBAAgB,CAAC,CAAD,CAAhB,CAAoBE,IADgB,CA1BtC;;AAAA;AA0BOC,gBAAAA,UA1BP;;AA8BCC,2CAASC,UAAT,CAAoBL,gBAAgB,CAAC,CAAD,CAAhB,CAAoBE,IAAxC;;AA9BD,iDAgCQC,UAhCR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O","sourcesContent":["import { FieldTemplateItem, SchemaTemplateItem } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ValueTypes } from '@sprucelabs/spruce-templates'\nimport ImportService from '../../services/ImportService'\nimport SchemaWriter from './writers/SchemaWriter'\n\nexport default class ValueTypeBuilder {\n\tprivate writer: SchemaWriter\n\tprivate importService: ImportService\n\n\tpublic constructor(\n\t\tschemaGenerator: SchemaWriter,\n\t\timportService: ImportService\n\t) {\n\t\tthis.writer = schemaGenerator\n\t\tthis.importService = importService\n\t}\n\n\tpublic async generateValueTypes(options: {\n\t\tresolvedDestination: string\n\t\tfieldTemplateItems: FieldTemplateItem[]\n\t\tschemaTemplateItems: SchemaTemplateItem[]\n\t\tglobalSchemaNamespace?: string\n\t}) {\n\t\tconst {\n\t\t\tresolvedDestination,\n\t\t\tfieldTemplateItems,\n\t\t\tschemaTemplateItems,\n\t\t\tglobalSchemaNamespace,\n\t\t} = options\n\n\t\tif (schemaTemplateItems.length === 0) {\n\t\t\treturn {}\n\t\t}\n\n\t\tconst valueTypeResults = await this.writer.writeValueTypes(\n\t\t\tresolvedDestination,\n\t\t\t{\n\t\t\t\tfieldTemplateItems,\n\t\t\t\tschemaTemplateItems,\n\t\t\t\tglobalSchemaNamespace,\n\t\t\t}\n\t\t)\n\n\t\tconst valueTypes: ValueTypes = await this.importService.importDefault(\n\t\t\tvalueTypeResults[0].path\n\t\t)\n\n\t\tdiskUtil.deleteFile(valueTypeResults[0].path)\n\n\t\treturn valueTypes\n\t}\n}\n"],"file":"ValueTypeBuilder.js"}
1
+ {"version":3,"file":"ValueTypeBuilder.js","names":["ValueTypeBuilder","schemaGenerator","importService","writer","options","resolvedDestination","fieldTemplateItems","schemaTemplateItems","globalSchemaNamespace","length","writeValueTypes","valueTypeResults","importDefault","path","valueTypes","diskUtil","deleteFile"],"sources":["../../../src/features/schema/ValueTypeBuilder.ts"],"sourcesContent":["import { FieldTemplateItem, SchemaTemplateItem } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ValueTypes } from '@sprucelabs/spruce-templates'\nimport ImportService from '../../services/ImportService'\nimport SchemaWriter from './writers/SchemaWriter'\n\nexport default class ValueTypeBuilder {\n\tprivate writer: SchemaWriter\n\tprivate importService: ImportService\n\n\tpublic constructor(\n\t\tschemaGenerator: SchemaWriter,\n\t\timportService: ImportService\n\t) {\n\t\tthis.writer = schemaGenerator\n\t\tthis.importService = importService\n\t}\n\n\tpublic async generateValueTypes(options: {\n\t\tresolvedDestination: string\n\t\tfieldTemplateItems: FieldTemplateItem[]\n\t\tschemaTemplateItems: SchemaTemplateItem[]\n\t\tglobalSchemaNamespace?: string\n\t}) {\n\t\tconst {\n\t\t\tresolvedDestination,\n\t\t\tfieldTemplateItems,\n\t\t\tschemaTemplateItems,\n\t\t\tglobalSchemaNamespace,\n\t\t} = options\n\n\t\tif (schemaTemplateItems.length === 0) {\n\t\t\treturn {}\n\t\t}\n\n\t\tconst valueTypeResults = await this.writer.writeValueTypes(\n\t\t\tresolvedDestination,\n\t\t\t{\n\t\t\t\tfieldTemplateItems,\n\t\t\t\tschemaTemplateItems,\n\t\t\t\tglobalSchemaNamespace,\n\t\t\t}\n\t\t)\n\n\t\tconst valueTypes: ValueTypes = await this.importService.importDefault(\n\t\t\tvalueTypeResults[0].path\n\t\t)\n\n\t\tdiskUtil.deleteFile(valueTypeResults[0].path)\n\n\t\treturn valueTypes\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;;IAKqBA,gB;EAIpB,0BACCC,eADD,EAECC,aAFD,EAGE;IAAA;IAAA;IAAA;IACD,KAAKC,MAAL,GAAcF,eAAd;IACA,KAAKC,aAAL,GAAqBA,aAArB;EACA;;;;;8GAED,iBAAgCE,OAAhC;QAAA;QAAA;UAAA;YAAA;cAAA;gBAOEC,mBAPF,GAWKD,OAXL,CAOEC,mBAPF,EAQEC,kBARF,GAWKF,OAXL,CAQEE,kBARF,EASEC,mBATF,GAWKH,OAXL,CASEG,mBATF,EAUEC,qBAVF,GAWKJ,OAXL,CAUEI,qBAVF;;gBAAA,MAaKD,mBAAmB,CAACE,MAApB,KAA+B,CAbpC;kBAAA;kBAAA;gBAAA;;gBAAA,iCAcS,EAdT;;cAAA;gBAAA;gBAAA,OAiBgC,KAAKN,MAAL,CAAYO,eAAZ,CAC9BL,mBAD8B,EAE9B;kBACCC,kBAAkB,EAAlBA,kBADD;kBAECC,mBAAmB,EAAnBA,mBAFD;kBAGCC,qBAAqB,EAArBA;gBAHD,CAF8B,CAjBhC;;cAAA;gBAiBOG,gBAjBP;gBAAA;gBAAA,OA0BsC,KAAKT,aAAL,CAAmBU,aAAnB,CACpCD,gBAAgB,CAAC,CAAD,CAAhB,CAAoBE,IADgB,CA1BtC;;cAAA;gBA0BOC,UA1BP;;gBA8BCC,2BAASC,UAAT,CAAoBL,gBAAgB,CAAC,CAAD,CAAhB,CAAoBE,IAAxC;;gBA9BD,iCAgCQC,UAhCR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/schema/actions/CreateAction.ts"],"names":["CreateAction","createSchemaActionSchema","options","normalizedOptions","validateAndNormalizeOptions","schemaBuilderDestinationDir","nameCamel","namePascal","nameReadable","syncAfterCreate","shouldEnableVersioning","version","rest","resolvedDestination","diskUtil","resolvePath","cwd","resolveVersion","resolvedVersion","generator","Writer","writeBuilder","undefined","namesUtil","toPascal","results","syncOptions","syncSchemasActionSchema","shouldIncludePrivateFields","Action","execute","syncResults","push","files","errors","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;AAGA;;AACA;;AACA;;;;;;;;;;;;IAKqBA,Y;;;;;;;;;;;;;;;sGACGC,+B;0GACI,oC;;;;;;;mGAE3B,iBAAqBC,OAArB;AAAA;;AAAA;AAAA;AAAA;AAAA;AACOC,gBAAAA,iBADP,GAC2B,KAAKC,2BAAL,CAAiCF,OAAjC,CAD3B;AAIEG,gBAAAA,2BAJF,GAYKF,iBAZL,CAIEE,2BAJF,EAKEC,SALF,GAYKH,iBAZL,CAKEG,SALF,EAMEC,UANF,GAYKJ,iBAZL,CAMEI,UANF,EAOEC,YAPF,GAYKL,iBAZL,CAOEK,YAPF,EAQEC,eARF,GAYKN,iBAZL,CAQEM,eARF,EASEC,sBATF,GAYKP,iBAZL,CASEO,sBATF,EAUEC,OAVF,GAYKR,iBAZL,CAUEQ,OAVF,EAWKC,IAXL,6CAYKT,iBAZL;AAcOU,gBAAAA,mBAdP,GAc6BC,2BAASC,WAAT,CAC3B,KAAKC,GADsB,EAE3BX,2BAF2B,CAd7B;;AAAA,qBAqBKK,sBArBL;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAsB0B,KAAKO,cAAL,CAAoBN,OAApB,EAA6BE,mBAA7B,CAtB1B;;AAAA;AAsBEK,gBAAAA,eAtBF;;AAAA;AAyBOC,gBAAAA,SAzBP,GAyBmB,KAAKC,MAAL,CAAY,QAAZ,CAzBnB;AAAA;AAAA,uBA2BuBD,SAAS,CAACE,YAAV,CAAuBR,mBAAvB,kCAClBD,IADkB;AAErBN,kBAAAA,SAAS,EAATA,SAFqB;AAGrBI,kBAAAA,sBAAsB,EAAEA,sBAAF,aAAEA,sBAAF,cAAEA,sBAAF,GAA4BY,SAH7B;AAIrBX,kBAAAA,OAAO,EAAEO,eAJY;AAKrBV,kBAAAA,YAAY,EAAEA,YAAF,aAAEA,YAAF,cAAEA,YAAF,GAAkBF,SALT;AAMrBC,kBAAAA,UAAU,EAAEA,UAAF,aAAEA,UAAF,cAAEA,UAAF,GAAgBgB,4BAAUC,QAAV,CAAmBlB,SAAnB;AANL,mBA3BvB;;AAAA;AA2BOmB,gBAAAA,OA3BP;;AAAA,qBAsCKhB,eAtCL;AAAA;AAAA;AAAA;;AAuCQiB,gBAAAA,WAvCR,GAuCsB,mCAAsBC,8BAAtB,EAA+Cf,IAA/C,EAAqD;AACxEgB,kBAAAA,0BAA0B,EAAE;AAD4C,iBAArD,CAvCtB;AAAA;AAAA,uBA0C4B,KAAKC,MAAL,CAAY,QAAZ,EAAsB,MAAtB,EAA8BC,OAA9B,CACzBJ,WADyB,CA1C5B;;AAAA;AA0CQK,gBAAAA,WA1CR;AA8CEN,gBAAAA,OAAO,CAACO,IAAR,OAAAP,OAAO,4DAAUM,WAAW,CAACE,KAAtB,mEAA+B,EAA/B,EAAP;;AACA,oBAAIF,WAAW,CAACG,MAAhB,EAAwB;AACvBA,kBAAAA,MAAM,GAAGH,WAAW,CAACG,MAArB;AACA;;AAjDH;AAAA,iDAoDQ;AAAED,kBAAAA,KAAK,EAAER,OAAT;AAAkBS,kBAAAA,MAAM,EAANA;AAAlB,iBApDR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAJyCC,2B","sourcesContent":["import AbstractSpruceError from '@sprucelabs/error'\nimport { normalizeSchemaValues } from '@sprucelabs/schema'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createSchemaActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema'\nimport syncSchemasActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema'\nimport AbstractAction from '../../AbstractAction'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.CreateSchemaOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateSchemaOptions\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createSchemaActionSchema\n\tpublic invocationMessage = 'Creating your schema builder... 📃'\n\n\tpublic async execute(options: Options) {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst {\n\t\t\tschemaBuilderDestinationDir,\n\t\t\tnameCamel,\n\t\t\tnamePascal,\n\t\t\tnameReadable,\n\t\t\tsyncAfterCreate,\n\t\t\tshouldEnableVersioning,\n\t\t\tversion,\n\t\t\t...rest\n\t\t} = normalizedOptions\n\n\t\tconst resolvedDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\tschemaBuilderDestinationDir\n\t\t)\n\n\t\tlet resolvedVersion: string | undefined\n\n\t\tif (shouldEnableVersioning) {\n\t\t\tresolvedVersion = await this.resolveVersion(version, resolvedDestination)\n\t\t}\n\n\t\tconst generator = this.Writer('schema')\n\n\t\tconst results = await generator.writeBuilder(resolvedDestination, {\n\t\t\t...rest,\n\t\t\tnameCamel,\n\t\t\tshouldEnableVersioning: shouldEnableVersioning ?? undefined,\n\t\t\tversion: resolvedVersion,\n\t\t\tnameReadable: nameReadable ?? nameCamel,\n\t\t\tnamePascal: namePascal ?? namesUtil.toPascal(nameCamel),\n\t\t})\n\n\t\tlet errors: AbstractSpruceError<any>[] | undefined\n\n\t\tif (syncAfterCreate) {\n\t\t\tconst syncOptions = normalizeSchemaValues(syncSchemasActionSchema, rest, {\n\t\t\t\tshouldIncludePrivateFields: true,\n\t\t\t})\n\t\t\tconst syncResults = await this.Action('schema', 'sync').execute(\n\t\t\t\tsyncOptions\n\t\t\t)\n\n\t\t\tresults.push(...(syncResults.files ?? []))\n\t\t\tif (syncResults.errors) {\n\t\t\t\terrors = syncResults.errors\n\t\t\t}\n\t\t}\n\n\t\treturn { files: results, errors }\n\t}\n}\n"],"file":"CreateAction.js"}
1
+ {"version":3,"file":"CreateAction.js","names":["CreateAction","createSchemaActionSchema","options","normalizedOptions","validateAndNormalizeOptions","schemaBuilderDestinationDir","nameCamel","namePascal","nameReadable","syncAfterCreate","shouldEnableVersioning","version","rest","resolvedDestination","diskUtil","resolvePath","cwd","resolveVersion","resolvedVersion","generator","Writer","writeBuilder","undefined","namesUtil","toPascal","results","syncOptions","syncSchemasActionSchema","shouldIncludePrivateFields","Action","execute","syncResults","push","files","errors","AbstractAction"],"sources":["../../../../src/features/schema/actions/CreateAction.ts"],"sourcesContent":["import AbstractSpruceError from '@sprucelabs/error'\nimport { normalizeSchemaValues } from '@sprucelabs/schema'\nimport { namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport createSchemaActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/createSchemaOptions.schema'\nimport syncSchemasActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema'\nimport AbstractAction from '../../AbstractAction'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.CreateSchemaOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.CreateSchemaOptions\nexport default class CreateAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = createSchemaActionSchema\n\tpublic invocationMessage = 'Creating your schema builder... 📃'\n\n\tpublic async execute(options: Options) {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst {\n\t\t\tschemaBuilderDestinationDir,\n\t\t\tnameCamel,\n\t\t\tnamePascal,\n\t\t\tnameReadable,\n\t\t\tsyncAfterCreate,\n\t\t\tshouldEnableVersioning,\n\t\t\tversion,\n\t\t\t...rest\n\t\t} = normalizedOptions\n\n\t\tconst resolvedDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\tschemaBuilderDestinationDir\n\t\t)\n\n\t\tlet resolvedVersion: string | undefined\n\n\t\tif (shouldEnableVersioning) {\n\t\t\tresolvedVersion = await this.resolveVersion(version, resolvedDestination)\n\t\t}\n\n\t\tconst generator = this.Writer('schema')\n\n\t\tconst results = await generator.writeBuilder(resolvedDestination, {\n\t\t\t...rest,\n\t\t\tnameCamel,\n\t\t\tshouldEnableVersioning: shouldEnableVersioning ?? undefined,\n\t\t\tversion: resolvedVersion,\n\t\t\tnameReadable: nameReadable ?? nameCamel,\n\t\t\tnamePascal: namePascal ?? namesUtil.toPascal(nameCamel),\n\t\t})\n\n\t\tlet errors: AbstractSpruceError<any>[] | undefined\n\n\t\tif (syncAfterCreate) {\n\t\t\tconst syncOptions = normalizeSchemaValues(syncSchemasActionSchema, rest, {\n\t\t\t\tshouldIncludePrivateFields: true,\n\t\t\t})\n\t\t\tconst syncResults = await this.Action('schema', 'sync').execute(\n\t\t\t\tsyncOptions\n\t\t\t)\n\n\t\t\tresults.push(...(syncResults.files ?? []))\n\t\t\tif (syncResults.errors) {\n\t\t\t\terrors = syncResults.errors\n\t\t\t}\n\t\t}\n\n\t\treturn { files: results, errors }\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;AAGA;;AACA;;AACA;;;;;;;;;;;;IAKqBA,Y;;;;;;;;;;;;;;;sGACGC,+B;0GACI,oC;;;;;;;mGAE3B,iBAAqBC,OAArB;QAAA;;QAAA;UAAA;YAAA;cAAA;gBACOC,iBADP,GAC2B,KAAKC,2BAAL,CAAiCF,OAAjC,CAD3B;gBAIEG,2BAJF,GAYKF,iBAZL,CAIEE,2BAJF,EAKEC,SALF,GAYKH,iBAZL,CAKEG,SALF,EAMEC,UANF,GAYKJ,iBAZL,CAMEI,UANF,EAOEC,YAPF,GAYKL,iBAZL,CAOEK,YAPF,EAQEC,eARF,GAYKN,iBAZL,CAQEM,eARF,EASEC,sBATF,GAYKP,iBAZL,CASEO,sBATF,EAUEC,OAVF,GAYKR,iBAZL,CAUEQ,OAVF,EAWKC,IAXL,6CAYKT,iBAZL;gBAcOU,mBAdP,GAc6BC,2BAASC,WAAT,CAC3B,KAAKC,GADsB,EAE3BX,2BAF2B,CAd7B;;gBAAA,KAqBKK,sBArBL;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OAsB0B,KAAKO,cAAL,CAAoBN,OAApB,EAA6BE,mBAA7B,CAtB1B;;cAAA;gBAsBEK,eAtBF;;cAAA;gBAyBOC,SAzBP,GAyBmB,KAAKC,MAAL,CAAY,QAAZ,CAzBnB;gBAAA;gBAAA,OA2BuBD,SAAS,CAACE,YAAV,CAAuBR,mBAAvB,kCAClBD,IADkB;kBAErBN,SAAS,EAATA,SAFqB;kBAGrBI,sBAAsB,EAAEA,sBAAF,aAAEA,sBAAF,cAAEA,sBAAF,GAA4BY,SAH7B;kBAIrBX,OAAO,EAAEO,eAJY;kBAKrBV,YAAY,EAAEA,YAAF,aAAEA,YAAF,cAAEA,YAAF,GAAkBF,SALT;kBAMrBC,UAAU,EAAEA,UAAF,aAAEA,UAAF,cAAEA,UAAF,GAAgBgB,4BAAUC,QAAV,CAAmBlB,SAAnB;gBANL,GA3BvB;;cAAA;gBA2BOmB,OA3BP;;gBAAA,KAsCKhB,eAtCL;kBAAA;kBAAA;gBAAA;;gBAuCQiB,WAvCR,GAuCsB,mCAAsBC,8BAAtB,EAA+Cf,IAA/C,EAAqD;kBACxEgB,0BAA0B,EAAE;gBAD4C,CAArD,CAvCtB;gBAAA;gBAAA,OA0C4B,KAAKC,MAAL,CAAY,QAAZ,EAAsB,MAAtB,EAA8BC,OAA9B,CACzBJ,WADyB,CA1C5B;;cAAA;gBA0CQK,WA1CR;gBA8CEN,OAAO,CAACO,IAAR,OAAAP,OAAO,4DAAUM,WAAW,CAACE,KAAtB,mEAA+B,EAA/B,EAAP;;gBACA,IAAIF,WAAW,CAACG,MAAhB,EAAwB;kBACvBA,MAAM,GAAGH,WAAW,CAACG,MAArB;gBACA;;cAjDH;gBAAA,iCAoDQ;kBAAED,KAAK,EAAER,OAAT;kBAAkBS,MAAM,EAANA;gBAAlB,CApDR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAJyCC,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/schema/actions/SyncAction.ts"],"names":["SyncAction","syncSchemasActionSchema","Writer","Store","options","normalizedOptions","validateAndNormalizeOptions","isInCoreSchemasModule","Service","get","schemaTypesDestinationDirOrFile","fieldTypesDestinationDir","schemaLookupDir","addonsLookupDir","shouldEnableVersioning","globalSchemaNamespace","shouldFetchRemoteSchemas","shouldGenerateCoreSchemaTypes","shouldFetchLocalSchemas","generateFieldTypes","generateStandaloneTypesFile","deleteDestinationDirIfNoSchemas","shouldFetchCoreSchemas","registerBuiltSchemas","syncingMessage","deleteOrphanedSchemas","moduleToImportFromWhenRemote","shouldInstallMissingDependencies","ui","startLoading","loadCurrentSkillsNamespace","localNamespace","shouldImportCoreSchemas","CORE_NAMESPACE","schemaDiskUtil","resolveTypeFilePaths","cwd","resolvedFieldTypesDestination","resolvedSchemaTypesDestinationDirOrFile","resolvedSchemaTypesDestination","generateFieldTemplateItems","shouldGenerateFieldTypes","fieldTemplateItems","fieldErrors","generateFieldFiles","schemaErrors","typeResults","generateSchemaTemplateItems","templateResults","push","schemaTemplateItems","length","diskUtil","deleteDir","optionallyInstallRemoteModules","generateValueTypes","resolvedDestination","undefined","valueTypes","schemaWriter","writeSchemasAndTypes","typesTemplate","p","deleteEmptyDirs","isDir","pathUtil","dirname","stopLoading","errors","actionUtil","mergeActionResults","coreSyncResults","files","meta","forceInstall","modules","map","item","importFrom","filter","i","notInstalled","pkg","m","isInstalled","indexOf","renderSection","headline","lines","confirm","SpruceError","code","friendlyMessage","install","schemaStore","fetchSchemas","localSchemaLookupDir","didUpdateHandler","message","schemasByNamespace","hashSpruceDestination","replace","resolveHashSprucePath","total","totalNamespaces","Object","keys","namespace","schemaTemplateItemBuilder","SchemaTemplateItemBuilder","buildTemplateItems","action","Action","execute","results","builder","ValueTypeBuilder","AbstractAction"],"mappings":"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","sourcesContent":["import pathUtil from 'path'\nimport { SchemaTemplateItem, FieldTemplateItem } from '@sprucelabs/schema'\nimport { CORE_NAMESPACE, diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ValueTypes } from '@sprucelabs/spruce-templates'\nimport uniq from 'lodash/uniq'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport syncSchemasActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport SchemaTemplateItemBuilder from '../../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport { GeneratedFile } from '../../../types/cli.types'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\nimport schemaDiskUtil from '../utilities/schemaDisk.utility'\nimport ValueTypeBuilder from '../ValueTypeBuilder'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptions\nexport default class SyncAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = syncSchemasActionSchema\n\tpublic commandAliases = ['sync.schemas']\n\tpublic invocationMessage = 'Building schemas and generating types... 📃'\n\n\tprivate readonly schemaWriter = this.Writer('schema')\n\tprivate readonly schemaStore = this.Store('schema')\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst isInCoreSchemasModule =\n\t\t\tthis.Service('pkg').get('name') === '@sprucelabs/spruce-core-schemas'\n\n\t\tlet {\n\t\t\tschemaTypesDestinationDirOrFile,\n\t\t\tfieldTypesDestinationDir,\n\t\t\tschemaLookupDir,\n\t\t\taddonsLookupDir,\n\t\t\tshouldEnableVersioning,\n\t\t\tglobalSchemaNamespace,\n\t\t\tshouldFetchRemoteSchemas,\n\t\t\tshouldGenerateCoreSchemaTypes = isInCoreSchemasModule,\n\t\t\tshouldFetchLocalSchemas,\n\t\t\tgenerateFieldTypes,\n\t\t\tgenerateStandaloneTypesFile,\n\t\t\tdeleteDestinationDirIfNoSchemas,\n\t\t\tshouldFetchCoreSchemas,\n\t\t\tregisterBuiltSchemas,\n\t\t\tsyncingMessage,\n\t\t\tdeleteOrphanedSchemas,\n\t\t\tmoduleToImportFromWhenRemote,\n\t\t\tshouldInstallMissingDependencies,\n\t\t} = normalizedOptions\n\n\t\tthis.ui.startLoading('Loading details about your skill... 🧐')\n\n\t\tlet localNamespace = await this.Store('skill').loadCurrentSkillsNamespace()\n\t\tlet shouldImportCoreSchemas = true\n\n\t\tif (shouldGenerateCoreSchemaTypes) {\n\t\t\tshouldFetchRemoteSchemas = false\n\t\t\tshouldFetchLocalSchemas = true\n\t\t\tshouldFetchCoreSchemas = false\n\t\t\tregisterBuiltSchemas = true\n\t\t\tgenerateStandaloneTypesFile = true\n\t\t\tshouldImportCoreSchemas = false\n\t\t\tlocalNamespace = CORE_NAMESPACE\n\t\t}\n\n\t\tlet coreSyncResults: FeatureActionResponse | undefined\n\n\t\tconst {\n\t\t\tresolvedFieldTypesDestination,\n\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\tresolvedSchemaTypesDestination,\n\t\t} = schemaDiskUtil.resolveTypeFilePaths({\n\t\t\tcwd: this.cwd,\n\t\t\tgenerateStandaloneTypesFile,\n\t\t\tschemaTypesDestinationDirOrFile,\n\t\t\tfieldTypesDestinationDir,\n\t\t})\n\n\t\tthis.ui.startLoading('Generating field types...')\n\n\t\tconst { fieldTemplateItems, fieldErrors, generateFieldFiles } =\n\t\t\tawait this.generateFieldTemplateItems({\n\t\t\t\taddonsLookupDir,\n\t\t\t\tshouldGenerateFieldTypes: generateFieldTypes,\n\t\t\t\tresolvedFieldTypesDestination,\n\t\t\t})\n\n\t\tthis.ui.startLoading(syncingMessage)\n\n\t\tconst schemaErrors: SpruceError[] = []\n\t\tlet schemaTemplateItems: SchemaTemplateItem[] | undefined\n\t\tlet typeResults: GeneratedFile[] = []\n\n\t\ttry {\n\t\t\tconst templateResults = await this.generateSchemaTemplateItems({\n\t\t\t\tschemaLookupDir,\n\t\t\t\tshouldFetchLocalSchemas,\n\t\t\t\tmoduleToImportFromWhenRemote,\n\t\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\t\tshouldEnableVersioning,\n\t\t\t\tshouldFetchRemoteSchemas,\n\t\t\t\tshouldFetchCoreSchemas,\n\t\t\t\tlocalNamespace,\n\t\t\t})\n\n\t\t\tschemaErrors.push(...templateResults.schemaErrors)\n\t\t\tschemaTemplateItems = templateResults.schemaTemplateItems\n\t\t} catch (err: any) {\n\t\t\tschemaErrors.push(err)\n\t\t}\n\n\t\tif (schemaErrors.length === 0 && schemaTemplateItems) {\n\t\t\tif (deleteDestinationDirIfNoSchemas && schemaTemplateItems.length === 0) {\n\t\t\t\tdiskUtil.deleteDir(resolvedSchemaTypesDestinationDirOrFile)\n\t\t\t\treturn {}\n\t\t\t}\n\n\t\t\tif (deleteOrphanedSchemas) {\n\t\t\t\tthis.ui.startLoading('Identifying orphaned schemas...')\n\n\t\t\t\tawait schemaDiskUtil.deleteOrphanedSchemas(\n\t\t\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\t\t\tschemaTemplateItems\n\t\t\t\t)\n\t\t\t}\n\n\t\t\tawait this.optionallyInstallRemoteModules(\n\t\t\t\tschemaTemplateItems,\n\t\t\t\tshouldInstallMissingDependencies\n\t\t\t)\n\n\t\t\tlet valueTypes: ValueTypes | undefined\n\n\t\t\ttry {\n\t\t\t\tvalueTypes = await this.generateValueTypes({\n\t\t\t\t\tresolvedDestination: resolvedFieldTypesDestination,\n\t\t\t\t\tfieldTemplateItems,\n\t\t\t\t\tschemaTemplateItems,\n\t\t\t\t\tglobalSchemaNamespace: globalSchemaNamespace ?? undefined,\n\t\t\t\t})\n\t\t\t} catch (err: any) {\n\t\t\t\tschemaErrors.push(err)\n\t\t\t}\n\n\t\t\tif (valueTypes) {\n\t\t\t\ttry {\n\t\t\t\t\tthis.ui.startLoading('Determining what changed... ⚡️')\n\n\t\t\t\t\ttypeResults = await this.schemaWriter.writeSchemasAndTypes(\n\t\t\t\t\t\tresolvedSchemaTypesDestination,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tregisterBuiltSchemas,\n\t\t\t\t\t\t\tfieldTemplateItems,\n\t\t\t\t\t\t\tschemaTemplateItems,\n\t\t\t\t\t\t\tshouldImportCoreSchemas,\n\t\t\t\t\t\t\tvalueTypes,\n\t\t\t\t\t\t\tglobalSchemaNamespace: globalSchemaNamespace ?? undefined,\n\t\t\t\t\t\t\ttypesTemplate: generateStandaloneTypesFile\n\t\t\t\t\t\t\t\t? 'schema/core.schemas.types.ts.hbs'\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t}\n\t\t\t\t\t)\n\t\t\t\t} catch (err: any) {\n\t\t\t\t\tschemaErrors.push(err)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst p = resolvedSchemaTypesDestination\n\t\tdiskUtil.deleteEmptyDirs(diskUtil.isDir(p) ? p : pathUtil.dirname(p))\n\n\t\tthis.ui.stopLoading()\n\n\t\tconst errors = [...schemaErrors, ...fieldErrors]\n\n\t\treturn actionUtil.mergeActionResults(coreSyncResults || {}, {\n\t\t\tfiles: [...typeResults, ...generateFieldFiles],\n\t\t\terrors: errors.length > 0 ? errors : undefined,\n\t\t\tmeta: {\n\t\t\t\tschemaTemplateItems,\n\t\t\t\tfieldTemplateItems,\n\t\t\t},\n\t\t})\n\t}\n\n\tprivate async optionallyInstallRemoteModules(\n\t\tschemaTemplateItems: SchemaTemplateItem[],\n\t\tforceInstall?: boolean\n\t) {\n\t\tconst modules = uniq(\n\t\t\tschemaTemplateItems.map((item) => item.importFrom).filter((i) => !!i)\n\t\t) as string[]\n\n\t\tconst notInstalled: string[] = []\n\n\t\tconst pkg = this.Service('pkg')\n\n\t\tfor (const m of modules) {\n\t\t\tif (!pkg.isInstalled(m) && notInstalled.indexOf(m) === -1) {\n\t\t\t\tnotInstalled.push(m)\n\t\t\t}\n\t\t}\n\n\t\tif (notInstalled.length > 0) {\n\t\t\tif (!forceInstall) {\n\t\t\t\tthis.ui.stopLoading()\n\n\t\t\t\tthis.ui.renderSection({\n\t\t\t\t\theadline: `Missing ${notInstalled.length} module${\n\t\t\t\t\t\tnotInstalled.length === 1 ? '' : 's'\n\t\t\t\t\t}`,\n\t\t\t\t\tlines: [\n\t\t\t\t\t\t`Looks like I need to install the following modules to continue to sync schemas:`,\n\t\t\t\t\t\t'',\n\t\t\t\t\t\t...notInstalled,\n\t\t\t\t\t],\n\t\t\t\t})\n\n\t\t\t\tconst confirm = await this.ui.confirm('Should we do that now?')\n\n\t\t\t\tif (!confirm) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'ACTION_CANCELLED',\n\t\t\t\t\t\tfriendlyMessage: `I can't sync schemas because of the missing modules.`,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.ui.startLoading(\n\t\t\t\t`Installing ${notInstalled.length} missing module${\n\t\t\t\t\tnotInstalled.length === 1 ? '' : 's...'\n\t\t\t\t}`\n\t\t\t)\n\n\t\t\tconst pkg = this.Service('pkg')\n\t\t\tawait pkg.install(notInstalled)\n\n\t\t\tthis.ui.stopLoading()\n\t\t}\n\t}\n\n\tprivate async generateSchemaTemplateItems(options: {\n\t\tschemaLookupDir: string | undefined\n\t\tlocalNamespace: string\n\t\tresolvedSchemaTypesDestinationDirOrFile: string\n\t\tshouldFetchLocalSchemas: boolean\n\t\tmoduleToImportFromWhenRemote?: string\n\t\tshouldEnableVersioning: boolean\n\t\tshouldFetchRemoteSchemas: boolean\n\t\tshouldFetchCoreSchemas: boolean\n\t}) {\n\t\tconst {\n\t\t\tschemaLookupDir,\n\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\tshouldEnableVersioning,\n\t\t\tshouldFetchRemoteSchemas,\n\t\t\tshouldFetchCoreSchemas,\n\t\t\tshouldFetchLocalSchemas,\n\t\t\tlocalNamespace,\n\t\t\tmoduleToImportFromWhenRemote,\n\t\t} = options\n\n\t\tthis.ui.startLoading('Loading builders...')\n\n\t\tconst { schemasByNamespace, errors: schemaErrors } =\n\t\t\tawait this.schemaStore.fetchSchemas({\n\t\t\t\tlocalSchemaLookupDir: schemaLookupDir,\n\t\t\t\tshouldFetchLocalSchemas,\n\t\t\t\tshouldFetchRemoteSchemas,\n\t\t\t\tshouldEnableVersioning,\n\t\t\t\tmoduleToImportFromWhenRemote,\n\t\t\t\tlocalNamespace,\n\t\t\t\tshouldFetchCoreSchemas,\n\t\t\t\tdidUpdateHandler: (message) => {\n\t\t\t\t\tthis.ui.startLoading(message)\n\t\t\t\t},\n\t\t\t})\n\n\t\tconst hashSpruceDestination =\n\t\t\tresolvedSchemaTypesDestinationDirOrFile.replace(\n\t\t\t\tdiskUtil.resolveHashSprucePath(this.cwd),\n\t\t\t\t'#spruce'\n\t\t\t)\n\n\t\tlet total = 0\n\t\tlet totalNamespaces = 0\n\t\tfor (const namespace of Object.keys(schemasByNamespace)) {\n\t\t\ttotalNamespaces++\n\t\t\ttotal += schemasByNamespace[namespace].length\n\t\t}\n\n\t\tthis.ui.startLoading(\n\t\t\t`Building ${total} schemas from ${totalNamespaces} namespaces.`\n\t\t)\n\n\t\tconst schemaTemplateItemBuilder = new SchemaTemplateItemBuilder(\n\t\t\tlocalNamespace\n\t\t)\n\n\t\tconst schemaTemplateItems: SchemaTemplateItem[] =\n\t\t\tschemaTemplateItemBuilder.buildTemplateItems(\n\t\t\t\tschemasByNamespace,\n\t\t\t\thashSpruceDestination\n\t\t\t)\n\n\t\treturn { schemaTemplateItems, schemaErrors }\n\t}\n\n\tprivate async generateFieldTemplateItems(options: {\n\t\taddonsLookupDir: string\n\t\tshouldGenerateFieldTypes: boolean\n\t\tresolvedFieldTypesDestination: string\n\t}) {\n\t\tconst {\n\t\t\taddonsLookupDir,\n\t\t\tshouldGenerateFieldTypes: generateFieldTypes,\n\t\t\tresolvedFieldTypesDestination,\n\t\t} = options\n\n\t\tconst action = this.Action('schema', 'syncFields')\n\t\tconst results = await action.execute({\n\t\t\tfieldTypesDestinationDir: resolvedFieldTypesDestination,\n\t\t\taddonsLookupDir,\n\t\t\tgenerateFieldTypes,\n\t\t})\n\n\t\treturn {\n\t\t\tgenerateFieldFiles: results.files ?? [],\n\t\t\tfieldTemplateItems: results.meta?.fieldTemplateItems ?? [],\n\t\t\tfieldErrors: results.errors ?? [],\n\t\t}\n\t}\n\n\tprivate async generateValueTypes(options: {\n\t\tresolvedDestination: string\n\t\tfieldTemplateItems: FieldTemplateItem[]\n\t\tschemaTemplateItems: SchemaTemplateItem[]\n\t\tglobalSchemaNamespace?: string\n\t}) {\n\t\tthis.ui.startLoading('Generating value types...')\n\n\t\tconst builder = new ValueTypeBuilder(\n\t\t\tthis.schemaWriter,\n\t\t\tthis.Service('import')\n\t\t)\n\n\t\treturn builder.generateValueTypes(options)\n\t}\n}\n"],"file":"SyncAction.js"}
1
+ {"version":3,"file":"SyncAction.js","names":["SyncAction","syncSchemasActionSchema","Writer","Store","options","normalizedOptions","validateAndNormalizeOptions","isInCoreSchemasModule","Service","get","schemaTypesDestinationDirOrFile","fieldTypesDestinationDir","schemaLookupDir","addonsLookupDir","shouldEnableVersioning","globalSchemaNamespace","shouldFetchRemoteSchemas","shouldGenerateCoreSchemaTypes","shouldFetchLocalSchemas","generateFieldTypes","generateStandaloneTypesFile","deleteDestinationDirIfNoSchemas","shouldFetchCoreSchemas","registerBuiltSchemas","syncingMessage","deleteOrphanedSchemas","moduleToImportFromWhenRemote","shouldInstallMissingDependencies","ui","startLoading","loadCurrentSkillsNamespace","localNamespace","shouldImportCoreSchemas","CORE_NAMESPACE","schemaDiskUtil","resolveTypeFilePaths","cwd","resolvedFieldTypesDestination","resolvedSchemaTypesDestinationDirOrFile","resolvedSchemaTypesDestination","generateFieldTemplateItems","shouldGenerateFieldTypes","fieldTemplateItems","fieldErrors","generateFieldFiles","schemaErrors","typeResults","generateSchemaTemplateItems","templateResults","push","schemaTemplateItems","length","diskUtil","deleteDir","optionallyInstallRemoteModules","generateValueTypes","resolvedDestination","undefined","valueTypes","schemaWriter","writeSchemasAndTypes","typesTemplate","p","deleteEmptyDirs","isDir","pathUtil","dirname","stopLoading","errors","actionUtil","mergeActionResults","coreSyncResults","files","meta","forceInstall","modules","map","item","importFrom","filter","i","notInstalled","pkg","m","isInstalled","indexOf","renderSection","headline","lines","confirm","SpruceError","code","friendlyMessage","install","schemaStore","fetchSchemas","localSchemaLookupDir","didUpdateHandler","message","schemasByNamespace","hashSpruceDestination","replace","resolveHashSprucePath","total","totalNamespaces","Object","keys","namespace","schemaTemplateItemBuilder","SchemaTemplateItemBuilder","buildTemplateItems","action","Action","execute","results","builder","ValueTypeBuilder","AbstractAction"],"sources":["../../../../src/features/schema/actions/SyncAction.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { SchemaTemplateItem, FieldTemplateItem } from '@sprucelabs/schema'\nimport { CORE_NAMESPACE, diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { ValueTypes } from '@sprucelabs/spruce-templates'\nimport uniq from 'lodash/uniq'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport syncSchemasActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemasOptions.schema'\nimport SpruceError from '../../../errors/SpruceError'\nimport SchemaTemplateItemBuilder from '../../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport { GeneratedFile } from '../../../types/cli.types'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\nimport schemaDiskUtil from '../utilities/schemaDisk.utility'\nimport ValueTypeBuilder from '../ValueTypeBuilder'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptionsSchema\ntype Options = SpruceSchemas.SpruceCli.v2020_07_22.SyncSchemasOptions\nexport default class SyncAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = syncSchemasActionSchema\n\tpublic commandAliases = ['sync.schemas']\n\tpublic invocationMessage = 'Building schemas and generating types... 📃'\n\n\tprivate readonly schemaWriter = this.Writer('schema')\n\tprivate readonly schemaStore = this.Store('schema')\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\t\tconst isInCoreSchemasModule =\n\t\t\tthis.Service('pkg').get('name') === '@sprucelabs/spruce-core-schemas'\n\n\t\tlet {\n\t\t\tschemaTypesDestinationDirOrFile,\n\t\t\tfieldTypesDestinationDir,\n\t\t\tschemaLookupDir,\n\t\t\taddonsLookupDir,\n\t\t\tshouldEnableVersioning,\n\t\t\tglobalSchemaNamespace,\n\t\t\tshouldFetchRemoteSchemas,\n\t\t\tshouldGenerateCoreSchemaTypes = isInCoreSchemasModule,\n\t\t\tshouldFetchLocalSchemas,\n\t\t\tgenerateFieldTypes,\n\t\t\tgenerateStandaloneTypesFile,\n\t\t\tdeleteDestinationDirIfNoSchemas,\n\t\t\tshouldFetchCoreSchemas,\n\t\t\tregisterBuiltSchemas,\n\t\t\tsyncingMessage,\n\t\t\tdeleteOrphanedSchemas,\n\t\t\tmoduleToImportFromWhenRemote,\n\t\t\tshouldInstallMissingDependencies,\n\t\t} = normalizedOptions\n\n\t\tthis.ui.startLoading('Loading details about your skill... 🧐')\n\n\t\tlet localNamespace = await this.Store('skill').loadCurrentSkillsNamespace()\n\t\tlet shouldImportCoreSchemas = true\n\n\t\tif (shouldGenerateCoreSchemaTypes) {\n\t\t\tshouldFetchRemoteSchemas = false\n\t\t\tshouldFetchLocalSchemas = true\n\t\t\tshouldFetchCoreSchemas = false\n\t\t\tregisterBuiltSchemas = true\n\t\t\tgenerateStandaloneTypesFile = true\n\t\t\tshouldImportCoreSchemas = false\n\t\t\tlocalNamespace = CORE_NAMESPACE\n\t\t}\n\n\t\tlet coreSyncResults: FeatureActionResponse | undefined\n\n\t\tconst {\n\t\t\tresolvedFieldTypesDestination,\n\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\tresolvedSchemaTypesDestination,\n\t\t} = schemaDiskUtil.resolveTypeFilePaths({\n\t\t\tcwd: this.cwd,\n\t\t\tgenerateStandaloneTypesFile,\n\t\t\tschemaTypesDestinationDirOrFile,\n\t\t\tfieldTypesDestinationDir,\n\t\t})\n\n\t\tthis.ui.startLoading('Generating field types...')\n\n\t\tconst { fieldTemplateItems, fieldErrors, generateFieldFiles } =\n\t\t\tawait this.generateFieldTemplateItems({\n\t\t\t\taddonsLookupDir,\n\t\t\t\tshouldGenerateFieldTypes: generateFieldTypes,\n\t\t\t\tresolvedFieldTypesDestination,\n\t\t\t})\n\n\t\tthis.ui.startLoading(syncingMessage)\n\n\t\tconst schemaErrors: SpruceError[] = []\n\t\tlet schemaTemplateItems: SchemaTemplateItem[] | undefined\n\t\tlet typeResults: GeneratedFile[] = []\n\n\t\ttry {\n\t\t\tconst templateResults = await this.generateSchemaTemplateItems({\n\t\t\t\tschemaLookupDir,\n\t\t\t\tshouldFetchLocalSchemas,\n\t\t\t\tmoduleToImportFromWhenRemote,\n\t\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\t\tshouldEnableVersioning,\n\t\t\t\tshouldFetchRemoteSchemas,\n\t\t\t\tshouldFetchCoreSchemas,\n\t\t\t\tlocalNamespace,\n\t\t\t})\n\n\t\t\tschemaErrors.push(...templateResults.schemaErrors)\n\t\t\tschemaTemplateItems = templateResults.schemaTemplateItems\n\t\t} catch (err: any) {\n\t\t\tschemaErrors.push(err)\n\t\t}\n\n\t\tif (schemaErrors.length === 0 && schemaTemplateItems) {\n\t\t\tif (deleteDestinationDirIfNoSchemas && schemaTemplateItems.length === 0) {\n\t\t\t\tdiskUtil.deleteDir(resolvedSchemaTypesDestinationDirOrFile)\n\t\t\t\treturn {}\n\t\t\t}\n\n\t\t\tif (deleteOrphanedSchemas) {\n\t\t\t\tthis.ui.startLoading('Identifying orphaned schemas...')\n\n\t\t\t\tawait schemaDiskUtil.deleteOrphanedSchemas(\n\t\t\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\t\t\tschemaTemplateItems\n\t\t\t\t)\n\t\t\t}\n\n\t\t\tawait this.optionallyInstallRemoteModules(\n\t\t\t\tschemaTemplateItems,\n\t\t\t\tshouldInstallMissingDependencies\n\t\t\t)\n\n\t\t\tlet valueTypes: ValueTypes | undefined\n\n\t\t\ttry {\n\t\t\t\tvalueTypes = await this.generateValueTypes({\n\t\t\t\t\tresolvedDestination: resolvedFieldTypesDestination,\n\t\t\t\t\tfieldTemplateItems,\n\t\t\t\t\tschemaTemplateItems,\n\t\t\t\t\tglobalSchemaNamespace: globalSchemaNamespace ?? undefined,\n\t\t\t\t})\n\t\t\t} catch (err: any) {\n\t\t\t\tschemaErrors.push(err)\n\t\t\t}\n\n\t\t\tif (valueTypes) {\n\t\t\t\ttry {\n\t\t\t\t\tthis.ui.startLoading('Determining what changed... ⚡️')\n\n\t\t\t\t\ttypeResults = await this.schemaWriter.writeSchemasAndTypes(\n\t\t\t\t\t\tresolvedSchemaTypesDestination,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tregisterBuiltSchemas,\n\t\t\t\t\t\t\tfieldTemplateItems,\n\t\t\t\t\t\t\tschemaTemplateItems,\n\t\t\t\t\t\t\tshouldImportCoreSchemas,\n\t\t\t\t\t\t\tvalueTypes,\n\t\t\t\t\t\t\tglobalSchemaNamespace: globalSchemaNamespace ?? undefined,\n\t\t\t\t\t\t\ttypesTemplate: generateStandaloneTypesFile\n\t\t\t\t\t\t\t\t? 'schema/core.schemas.types.ts.hbs'\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t}\n\t\t\t\t\t)\n\t\t\t\t} catch (err: any) {\n\t\t\t\t\tschemaErrors.push(err)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst p = resolvedSchemaTypesDestination\n\t\tdiskUtil.deleteEmptyDirs(diskUtil.isDir(p) ? p : pathUtil.dirname(p))\n\n\t\tthis.ui.stopLoading()\n\n\t\tconst errors = [...schemaErrors, ...fieldErrors]\n\n\t\treturn actionUtil.mergeActionResults(coreSyncResults || {}, {\n\t\t\tfiles: [...typeResults, ...generateFieldFiles],\n\t\t\terrors: errors.length > 0 ? errors : undefined,\n\t\t\tmeta: {\n\t\t\t\tschemaTemplateItems,\n\t\t\t\tfieldTemplateItems,\n\t\t\t},\n\t\t})\n\t}\n\n\tprivate async optionallyInstallRemoteModules(\n\t\tschemaTemplateItems: SchemaTemplateItem[],\n\t\tforceInstall?: boolean\n\t) {\n\t\tconst modules = uniq(\n\t\t\tschemaTemplateItems.map((item) => item.importFrom).filter((i) => !!i)\n\t\t) as string[]\n\n\t\tconst notInstalled: string[] = []\n\n\t\tconst pkg = this.Service('pkg')\n\n\t\tfor (const m of modules) {\n\t\t\tif (!pkg.isInstalled(m) && notInstalled.indexOf(m) === -1) {\n\t\t\t\tnotInstalled.push(m)\n\t\t\t}\n\t\t}\n\n\t\tif (notInstalled.length > 0) {\n\t\t\tif (!forceInstall) {\n\t\t\t\tthis.ui.stopLoading()\n\n\t\t\t\tthis.ui.renderSection({\n\t\t\t\t\theadline: `Missing ${notInstalled.length} module${\n\t\t\t\t\t\tnotInstalled.length === 1 ? '' : 's'\n\t\t\t\t\t}`,\n\t\t\t\t\tlines: [\n\t\t\t\t\t\t`Looks like I need to install the following modules to continue to sync schemas:`,\n\t\t\t\t\t\t'',\n\t\t\t\t\t\t...notInstalled,\n\t\t\t\t\t],\n\t\t\t\t})\n\n\t\t\t\tconst confirm = await this.ui.confirm('Should we do that now?')\n\n\t\t\t\tif (!confirm) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'ACTION_CANCELLED',\n\t\t\t\t\t\tfriendlyMessage: `I can't sync schemas because of the missing modules.`,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.ui.startLoading(\n\t\t\t\t`Installing ${notInstalled.length} missing module${\n\t\t\t\t\tnotInstalled.length === 1 ? '' : 's...'\n\t\t\t\t}`\n\t\t\t)\n\n\t\t\tconst pkg = this.Service('pkg')\n\t\t\tawait pkg.install(notInstalled)\n\n\t\t\tthis.ui.stopLoading()\n\t\t}\n\t}\n\n\tprivate async generateSchemaTemplateItems(options: {\n\t\tschemaLookupDir: string | undefined\n\t\tlocalNamespace: string\n\t\tresolvedSchemaTypesDestinationDirOrFile: string\n\t\tshouldFetchLocalSchemas: boolean\n\t\tmoduleToImportFromWhenRemote?: string\n\t\tshouldEnableVersioning: boolean\n\t\tshouldFetchRemoteSchemas: boolean\n\t\tshouldFetchCoreSchemas: boolean\n\t}) {\n\t\tconst {\n\t\t\tschemaLookupDir,\n\t\t\tresolvedSchemaTypesDestinationDirOrFile,\n\t\t\tshouldEnableVersioning,\n\t\t\tshouldFetchRemoteSchemas,\n\t\t\tshouldFetchCoreSchemas,\n\t\t\tshouldFetchLocalSchemas,\n\t\t\tlocalNamespace,\n\t\t\tmoduleToImportFromWhenRemote,\n\t\t} = options\n\n\t\tthis.ui.startLoading('Loading builders...')\n\n\t\tconst { schemasByNamespace, errors: schemaErrors } =\n\t\t\tawait this.schemaStore.fetchSchemas({\n\t\t\t\tlocalSchemaLookupDir: schemaLookupDir,\n\t\t\t\tshouldFetchLocalSchemas,\n\t\t\t\tshouldFetchRemoteSchemas,\n\t\t\t\tshouldEnableVersioning,\n\t\t\t\tmoduleToImportFromWhenRemote,\n\t\t\t\tlocalNamespace,\n\t\t\t\tshouldFetchCoreSchemas,\n\t\t\t\tdidUpdateHandler: (message) => {\n\t\t\t\t\tthis.ui.startLoading(message)\n\t\t\t\t},\n\t\t\t})\n\n\t\tconst hashSpruceDestination =\n\t\t\tresolvedSchemaTypesDestinationDirOrFile.replace(\n\t\t\t\tdiskUtil.resolveHashSprucePath(this.cwd),\n\t\t\t\t'#spruce'\n\t\t\t)\n\n\t\tlet total = 0\n\t\tlet totalNamespaces = 0\n\t\tfor (const namespace of Object.keys(schemasByNamespace)) {\n\t\t\ttotalNamespaces++\n\t\t\ttotal += schemasByNamespace[namespace].length\n\t\t}\n\n\t\tthis.ui.startLoading(\n\t\t\t`Building ${total} schemas from ${totalNamespaces} namespaces.`\n\t\t)\n\n\t\tconst schemaTemplateItemBuilder = new SchemaTemplateItemBuilder(\n\t\t\tlocalNamespace\n\t\t)\n\n\t\tconst schemaTemplateItems: SchemaTemplateItem[] =\n\t\t\tschemaTemplateItemBuilder.buildTemplateItems(\n\t\t\t\tschemasByNamespace,\n\t\t\t\thashSpruceDestination\n\t\t\t)\n\n\t\treturn { schemaTemplateItems, schemaErrors }\n\t}\n\n\tprivate async generateFieldTemplateItems(options: {\n\t\taddonsLookupDir: string\n\t\tshouldGenerateFieldTypes: boolean\n\t\tresolvedFieldTypesDestination: string\n\t}) {\n\t\tconst {\n\t\t\taddonsLookupDir,\n\t\t\tshouldGenerateFieldTypes: generateFieldTypes,\n\t\t\tresolvedFieldTypesDestination,\n\t\t} = options\n\n\t\tconst action = this.Action('schema', 'syncFields')\n\t\tconst results = await action.execute({\n\t\t\tfieldTypesDestinationDir: resolvedFieldTypesDestination,\n\t\t\taddonsLookupDir,\n\t\t\tgenerateFieldTypes,\n\t\t})\n\n\t\treturn {\n\t\t\tgenerateFieldFiles: results.files ?? [],\n\t\t\tfieldTemplateItems: results.meta?.fieldTemplateItems ?? [],\n\t\t\tfieldErrors: results.errors ?? [],\n\t\t}\n\t}\n\n\tprivate async generateValueTypes(options: {\n\t\tresolvedDestination: string\n\t\tfieldTemplateItems: FieldTemplateItem[]\n\t\tschemaTemplateItems: SchemaTemplateItem[]\n\t\tglobalSchemaNamespace?: string\n\t}) {\n\t\tthis.ui.startLoading('Generating value types...')\n\n\t\tconst builder = new ValueTypeBuilder(\n\t\t\tthis.schemaWriter,\n\t\t\tthis.Service('import')\n\t\t)\n\n\t\treturn builder.generateValueTypes(options)\n\t}\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/schema/actions/SyncFieldsAction.ts"],"names":["FieldsSyncAction","syncSchemaFieldsActionSchema","options","ui","startLoading","normalizedOptions","validateAndNormalizeOptions","fieldTypesDestinationDir","addonsLookupDir","generateFieldTypes","resolvedFieldTypesDestination","diskUtil","resolvePath","cwd","generatedFiles","schemaStore","Store","fetchFields","localAddonsDir","fields","errors","fieldTemplateItemBuilder","FieldTemplateItemBuilder","fieldTemplateItems","generateTemplateItems","schemaGenerator","Writer","writeFieldTypes","results","push","stopLoading","files","length","undefined","meta","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AAEA;;AACA;;AAEA;;;;;;IAMqBA,gB;;;;;;;;;;;;;;;sGACGC,mC;uGACC,CAAC,aAAD,C;0GAEvB,6D;;;;;;;mGAED,iBACCC,OADD;AAAA;;AAAA;AAAA;AAAA;AAAA;AAGC,qBAAKC,EAAL,CAAQC,YAAR;AAEMC,gBAAAA,iBALP,GAK2B,KAAKC,2BAAL,CAAiCJ,OAAjC,CAL3B;AAOSK,gBAAAA,wBAPT,GAQEF,iBARF,CAOSE,wBAPT,EAOmCC,eAPnC,GAQEH,iBARF,CAOmCG,eAPnC,EAOoDC,kBAPpD,GAQEJ,iBARF,CAOoDI,kBAPpD;AAUOC,gBAAAA,6BAVP,GAUuCC,2BAASC,WAAT,CACrC,KAAKC,GADgC,EAErCN,wBAFqC,CAVvC;AAeOO,gBAAAA,cAfP,GAeyC,EAfzC;AAgBOC,gBAAAA,WAhBP,GAgBqB,KAAKC,KAAL,CAAW,QAAX,CAhBrB;AAkBC,qBAAKb,EAAL,CAAQC,YAAR,CAAqB,wBAArB;AAlBD;AAAA,uBAoBkCW,WAAW,CAACE,WAAZ,CAAwB;AACxDC,kBAAAA,cAAc,EAAEP,2BAASC,WAAT,CAAqB,KAAKC,GAA1B,EAA+BL,eAA/B;AADwC,iBAAxB,CApBlC;;AAAA;AAAA;AAoBSW,gBAAAA,MApBT,yBAoBSA,MApBT;AAoBiBC,gBAAAA,MApBjB,yBAoBiBA,MApBjB;AAwBOC,gBAAAA,wBAxBP,GAwBkC,IAAIC,oCAAJ,EAxBlC;AAyBOC,gBAAAA,kBAzBP,GA0BEF,wBAAwB,CAACG,qBAAzB,CAA+CL,MAA/C,CA1BF;AA4BOM,gBAAAA,eA5BP,GA4ByB,KAAKC,MAAL,CAAY,QAAZ,CA5BzB;;AAAA,qBA6BKjB,kBA7BL;AAAA;AAAA;AAAA;;AAAA;AAAA,uBA8BwBgB,eAAe,CAACE,eAAhB,CACrBjB,6BADqB,EAErB;AACCa,kBAAAA,kBAAkB,EAAlBA;AADD,iBAFqB,CA9BxB;;AAAA;AA8BQK,gBAAAA,OA9BR;AAqCEd,gBAAAA,cAAc,CAACe,IAAf,OAAAf,cAAc,sCAASc,OAAT,EAAd;;AArCF;AAwCC,qBAAKzB,EAAL,CAAQ2B,WAAR;AAxCD,iDA0CQ;AACNC,kBAAAA,KAAK,EAAEjB,cADD;AAENM,kBAAAA,MAAM,EAAEA,MAAM,CAACY,MAAP,GAAgB,CAAhB,GAAoBZ,MAApB,GAA6Ba,SAF/B;AAGNC,kBAAAA,IAAI,EAAE;AACLX,oBAAAA,kBAAkB,EAAlBA;AADK;AAHA,iBA1CR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAN6CY,2B","sourcesContent":["import { SchemaValues } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport syncSchemaFieldsActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema'\nimport FieldTemplateItemBuilder from '../../../templateItemBuilders/FieldTemplateItemBuilder'\nimport { GeneratedFile } from '../../../types/cli.types'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.SyncSchemaFieldsOptionsSchema\n\nexport default class FieldsSyncAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = syncSchemaFieldsActionSchema\n\tpublic commandAliases = ['sync.fields']\n\tpublic invocationMessage =\n\t\t'Syncing schema field types (e.g. number, phone, etc.)... 📃'\n\n\tpublic async execute(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<FeatureActionResponse> {\n\t\tthis.ui.startLoading(`Syncing fields...`)\n\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst { fieldTypesDestinationDir, addonsLookupDir, generateFieldTypes } =\n\t\t\tnormalizedOptions\n\n\t\tconst resolvedFieldTypesDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\tfieldTypesDestinationDir\n\t\t)\n\n\t\tconst generatedFiles: GeneratedFile[] = []\n\t\tconst schemaStore = this.Store('schema')\n\n\t\tthis.ui.startLoading('Pulling field types...')\n\n\t\tconst { fields, errors } = await schemaStore.fetchFields({\n\t\t\tlocalAddonsDir: diskUtil.resolvePath(this.cwd, addonsLookupDir),\n\t\t})\n\n\t\tconst fieldTemplateItemBuilder = new FieldTemplateItemBuilder()\n\t\tconst fieldTemplateItems =\n\t\t\tfieldTemplateItemBuilder.generateTemplateItems(fields)\n\n\t\tconst schemaGenerator = this.Writer('schema')\n\t\tif (generateFieldTypes) {\n\t\t\tconst results = await schemaGenerator.writeFieldTypes(\n\t\t\t\tresolvedFieldTypesDestination,\n\t\t\t\t{\n\t\t\t\t\tfieldTemplateItems,\n\t\t\t\t}\n\t\t\t)\n\n\t\t\tgeneratedFiles.push(...results)\n\t\t}\n\n\t\tthis.ui.stopLoading()\n\n\t\treturn {\n\t\t\tfiles: generatedFiles,\n\t\t\terrors: errors.length > 0 ? errors : undefined,\n\t\t\tmeta: {\n\t\t\t\tfieldTemplateItems,\n\t\t\t},\n\t\t}\n\t}\n}\n"],"file":"SyncFieldsAction.js"}
1
+ {"version":3,"file":"SyncFieldsAction.js","names":["FieldsSyncAction","syncSchemaFieldsActionSchema","options","ui","startLoading","normalizedOptions","validateAndNormalizeOptions","fieldTypesDestinationDir","addonsLookupDir","generateFieldTypes","resolvedFieldTypesDestination","diskUtil","resolvePath","cwd","generatedFiles","schemaStore","Store","fetchFields","localAddonsDir","fields","errors","fieldTemplateItemBuilder","FieldTemplateItemBuilder","fieldTemplateItems","generateTemplateItems","schemaGenerator","Writer","writeFieldTypes","results","push","stopLoading","files","length","undefined","meta","AbstractAction"],"sources":["../../../../src/features/schema/actions/SyncFieldsAction.ts"],"sourcesContent":["import { SchemaValues } from '@sprucelabs/schema'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport syncSchemaFieldsActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncSchemaFieldsOptions.schema'\nimport FieldTemplateItemBuilder from '../../../templateItemBuilders/FieldTemplateItemBuilder'\nimport { GeneratedFile } from '../../../types/cli.types'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.SyncSchemaFieldsOptionsSchema\n\nexport default class FieldsSyncAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = syncSchemaFieldsActionSchema\n\tpublic commandAliases = ['sync.fields']\n\tpublic invocationMessage =\n\t\t'Syncing schema field types (e.g. number, phone, etc.)... 📃'\n\n\tpublic async execute(\n\t\toptions: SchemaValues<OptionsSchema>\n\t): Promise<FeatureActionResponse> {\n\t\tthis.ui.startLoading(`Syncing fields...`)\n\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\tconst { fieldTypesDestinationDir, addonsLookupDir, generateFieldTypes } =\n\t\t\tnormalizedOptions\n\n\t\tconst resolvedFieldTypesDestination = diskUtil.resolvePath(\n\t\t\tthis.cwd,\n\t\t\tfieldTypesDestinationDir\n\t\t)\n\n\t\tconst generatedFiles: GeneratedFile[] = []\n\t\tconst schemaStore = this.Store('schema')\n\n\t\tthis.ui.startLoading('Pulling field types...')\n\n\t\tconst { fields, errors } = await schemaStore.fetchFields({\n\t\t\tlocalAddonsDir: diskUtil.resolvePath(this.cwd, addonsLookupDir),\n\t\t})\n\n\t\tconst fieldTemplateItemBuilder = new FieldTemplateItemBuilder()\n\t\tconst fieldTemplateItems =\n\t\t\tfieldTemplateItemBuilder.generateTemplateItems(fields)\n\n\t\tconst schemaGenerator = this.Writer('schema')\n\t\tif (generateFieldTypes) {\n\t\t\tconst results = await schemaGenerator.writeFieldTypes(\n\t\t\t\tresolvedFieldTypesDestination,\n\t\t\t\t{\n\t\t\t\t\tfieldTemplateItems,\n\t\t\t\t}\n\t\t\t)\n\n\t\t\tgeneratedFiles.push(...results)\n\t\t}\n\n\t\tthis.ui.stopLoading()\n\n\t\treturn {\n\t\t\tfiles: generatedFiles,\n\t\t\terrors: errors.length > 0 ? errors : undefined,\n\t\t\tmeta: {\n\t\t\t\tfieldTemplateItems,\n\t\t\t},\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AAEA;;AACA;;AAEA;;;;;;IAMqBA,gB;;;;;;;;;;;;;;;sGACGC,mC;uGACC,CAAC,aAAD,C;0GAEvB,6D;;;;;;;mGAED,iBACCC,OADD;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAGC,KAAKC,EAAL,CAAQC,YAAR;gBAEMC,iBALP,GAK2B,KAAKC,2BAAL,CAAiCJ,OAAjC,CAL3B;gBAOSK,wBAPT,GAQEF,iBARF,CAOSE,wBAPT,EAOmCC,eAPnC,GAQEH,iBARF,CAOmCG,eAPnC,EAOoDC,kBAPpD,GAQEJ,iBARF,CAOoDI,kBAPpD;gBAUOC,6BAVP,GAUuCC,2BAASC,WAAT,CACrC,KAAKC,GADgC,EAErCN,wBAFqC,CAVvC;gBAeOO,cAfP,GAeyC,EAfzC;gBAgBOC,WAhBP,GAgBqB,KAAKC,KAAL,CAAW,QAAX,CAhBrB;gBAkBC,KAAKb,EAAL,CAAQC,YAAR,CAAqB,wBAArB;gBAlBD;gBAAA,OAoBkCW,WAAW,CAACE,WAAZ,CAAwB;kBACxDC,cAAc,EAAEP,2BAASC,WAAT,CAAqB,KAAKC,GAA1B,EAA+BL,eAA/B;gBADwC,CAAxB,CApBlC;;cAAA;gBAAA;gBAoBSW,MApBT,yBAoBSA,MApBT;gBAoBiBC,MApBjB,yBAoBiBA,MApBjB;gBAwBOC,wBAxBP,GAwBkC,IAAIC,oCAAJ,EAxBlC;gBAyBOC,kBAzBP,GA0BEF,wBAAwB,CAACG,qBAAzB,CAA+CL,MAA/C,CA1BF;gBA4BOM,eA5BP,GA4ByB,KAAKC,MAAL,CAAY,QAAZ,CA5BzB;;gBAAA,KA6BKjB,kBA7BL;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OA8BwBgB,eAAe,CAACE,eAAhB,CACrBjB,6BADqB,EAErB;kBACCa,kBAAkB,EAAlBA;gBADD,CAFqB,CA9BxB;;cAAA;gBA8BQK,OA9BR;gBAqCEd,cAAc,CAACe,IAAf,OAAAf,cAAc,sCAASc,OAAT,EAAd;;cArCF;gBAwCC,KAAKzB,EAAL,CAAQ2B,WAAR;gBAxCD,iCA0CQ;kBACNC,KAAK,EAAEjB,cADD;kBAENM,MAAM,EAAEA,MAAM,CAACY,MAAP,GAAgB,CAAhB,GAAoBZ,MAApB,GAA6Ba,SAF/B;kBAGNC,IAAI,EAAE;oBACLX,kBAAkB,EAAlBA;kBADK;gBAHA,CA1CR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAN6CY,2B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/schema/services/SchemaService.ts"],"names":["SchemaService","file","importDefault","definitionProxy","SpruceError","code","originalError","friendlyMessage","ImportService"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEqBA,a;;;;;;;;;;;;;wGACpB,iBAA0BC,IAA1B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAC+B,KAAKC,aAAL,CAAmBD,IAAnB,CAD/B;;AAAA;AACOE,gBAAAA,eADP;AAAA;AAIE,4CAAeA,eAAf;AAJF;AAAA;;AAAA;AAAA;AAAA;AAAA,sBAMQ,IAAIC,uBAAJ,CAAgB;AACrBC,kBAAAA,IAAI,EAAE,yBADe;AAErBJ,kBAAAA,IAAI,EAAJA,IAFqB;AAGrBK,kBAAAA,aAAa,aAHQ;AAIrBC,kBAAAA,eAAe,EACd;AALoB,iBAAhB,CANR;;AAAA;AAAA,iDAeQ,2BAAUJ,eAAV,CAfR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAD0CK,0B","sourcesContent":["import { validateSchema } from '@sprucelabs/schema'\nimport cloneDeep from 'lodash/cloneDeep'\nimport SpruceError from '../../../errors/SpruceError'\nimport ImportService from '../../../services/ImportService'\n\nexport default class SchemaService extends ImportService {\n\tpublic async importSchema(file: string) {\n\t\tconst definitionProxy = await this.importDefault(file)\n\n\t\ttry {\n\t\t\tvalidateSchema(definitionProxy)\n\t\t} catch (err: any) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'SCHEMA_FAILED_TO_IMPORT',\n\t\t\t\tfile,\n\t\t\t\toriginalError: err,\n\t\t\t\tfriendlyMessage:\n\t\t\t\t\t'The definition imported is not valid. Make sure it is \"export default build[Schema|Error|Field]Definition\"',\n\t\t\t})\n\t\t}\n\n\t\treturn cloneDeep(definitionProxy)\n\t}\n}\n"],"file":"SchemaService.js"}
1
+ {"version":3,"file":"SchemaService.js","names":["SchemaService","file","importDefault","definitionProxy","SpruceError","code","originalError","friendlyMessage","ImportService"],"sources":["../../../../src/features/schema/services/SchemaService.ts"],"sourcesContent":["import { validateSchema } from '@sprucelabs/schema'\nimport cloneDeep from 'lodash/cloneDeep'\nimport SpruceError from '../../../errors/SpruceError'\nimport ImportService from '../../../services/ImportService'\n\nexport default class SchemaService extends ImportService {\n\tpublic async importSchema(file: string) {\n\t\tconst definitionProxy = await this.importDefault(file)\n\n\t\ttry {\n\t\t\tvalidateSchema(definitionProxy)\n\t\t} catch (err: any) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'SCHEMA_FAILED_TO_IMPORT',\n\t\t\t\tfile,\n\t\t\t\toriginalError: err,\n\t\t\t\tfriendlyMessage:\n\t\t\t\t\t'The definition imported is not valid. Make sure it is \"export default build[Schema|Error|Field]Definition\"',\n\t\t\t})\n\t\t}\n\n\t\treturn cloneDeep(definitionProxy)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEqBA,a;;;;;;;;;;;;;wGACpB,iBAA0BC,IAA1B;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OAC+B,KAAKC,aAAL,CAAmBD,IAAnB,CAD/B;;cAAA;gBACOE,eADP;gBAAA;gBAIE,4BAAeA,eAAf;gBAJF;gBAAA;;cAAA;gBAAA;gBAAA;gBAAA,MAMQ,IAAIC,uBAAJ,CAAgB;kBACrBC,IAAI,EAAE,yBADe;kBAErBJ,IAAI,EAAJA,IAFqB;kBAGrBK,aAAa,aAHQ;kBAIrBC,eAAe,EACd;gBALoB,CAAhB,CANR;;cAAA;gBAAA,iCAeQ,2BAAUJ,eAAV,CAfR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;EAD0CK,0B"}