@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/schemas/v2020_07_22/onboardOptions.builder.ts"],"names":["id","name","description","fields"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,gBADsB;AAE1BC,EAAAA,IAAI,EAAE,gBAFoB;AAG1BC,EAAAA,WAAW,EAAE,mCAHa;AAI1BC,EAAAA,MAAM,EAAE;AAJkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'onboardOptions',\n\tname: 'Onboard action',\n\tdescription: 'The question is; Are you read? ⚡️',\n\tfields: {},\n})\n"],"file":"onboardOptions.builder.js"}
1
+ {"version":3,"file":"onboardOptions.builder.js","names":["id","name","description","fields"],"sources":["../../../src/schemas/v2020_07_22/onboardOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'onboardOptions',\n\tname: 'Onboard action',\n\tdescription: 'The question is; Are you read? ⚡️',\n\tfields: {},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,gBADsB;EAE1BC,IAAI,EAAE,gBAFoB;EAG1BC,WAAW,EAAE,mCAHa;EAI1BC,MAAM,EAAE;AAJkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/onboarding.builder.ts"],"names":["id","name","description","fields","mode","type","label","isRequired","options","choices","value","stage"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,YADsB;AAE1BC,EAAAA,IAAI,EAAE,YAFoB;AAG1BC,EAAAA,WAAW,EAAE,8DAHa;AAI1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,IAAI,EAAE;AACLC,MAAAA,IAAI,EAAE,QADD;AAELC,MAAAA,KAAK,EAAE,MAFF;AAGLC,MAAAA,UAAU,EAAE,IAHP;AAILC,MAAAA,OAAO,EAAE;AACRC,QAAAA,OAAO,EAAE,CACR;AACCH,UAAAA,KAAK,EAAE,OADR;AAECI,UAAAA,KAAK,EAAE;AAFR,SADQ,EAKR;AACCJ,UAAAA,KAAK,EAAE,WADR;AAECI,UAAAA,KAAK,EAAE;AAFR,SALQ,EASR;AACCJ,UAAAA,KAAK,EAAE,KADR;AAECI,UAAAA,KAAK,EAAE;AAFR,SATQ;AADD;AAJJ,KADC;AAsBPC,IAAAA,KAAK,EAAE;AACNN,MAAAA,IAAI,EAAE,QADA;AAENC,MAAAA,KAAK,EAAE,OAFD;AAGNE,MAAAA,OAAO,EAAE;AACRC,QAAAA,OAAO,EAAE,CACR;AACCH,UAAAA,KAAK,EAAE,cADR;AAECI,UAAAA,KAAK,EAAE;AAFR,SADQ,EAKR;AACCJ,UAAAA,KAAK,EAAE,MADR;AAECI,UAAAA,KAAK,EAAE;AAFR,SALQ;AADD;AAHH;AAtBA;AAJkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'onboarding',\n\tname: 'Onboarding',\n\tdescription: 'Track onboarding progress and tutorials & quizzes completed.',\n\tfields: {\n\t\tmode: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'mode',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Short',\n\t\t\t\t\t\tvalue: 'short',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Immersive',\n\t\t\t\t\t\tvalue: 'immersive',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Off',\n\t\t\t\t\t\tvalue: 'off',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tstage: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Stage',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Create skill',\n\t\t\t\t\t\tvalue: 'create.skill',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Test',\n\t\t\t\t\t\tvalue: 'test',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"file":"onboarding.builder.js"}
1
+ {"version":3,"file":"onboarding.builder.js","names":["id","name","description","fields","mode","type","label","isRequired","options","choices","value","stage"],"sources":["../../../src/schemas/v2020_07_22/onboarding.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'onboarding',\n\tname: 'Onboarding',\n\tdescription: 'Track onboarding progress and tutorials & quizzes completed.',\n\tfields: {\n\t\tmode: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'mode',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Short',\n\t\t\t\t\t\tvalue: 'short',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Immersive',\n\t\t\t\t\t\tvalue: 'immersive',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Off',\n\t\t\t\t\t\tvalue: 'off',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tstage: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Stage',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Create skill',\n\t\t\t\t\t\tvalue: 'create.skill',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Test',\n\t\t\t\t\t\tvalue: 'test',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,YADsB;EAE1BC,IAAI,EAAE,YAFoB;EAG1BC,WAAW,EAAE,8DAHa;EAI1BC,MAAM,EAAE;IACPC,IAAI,EAAE;MACLC,IAAI,EAAE,QADD;MAELC,KAAK,EAAE,MAFF;MAGLC,UAAU,EAAE,IAHP;MAILC,OAAO,EAAE;QACRC,OAAO,EAAE,CACR;UACCH,KAAK,EAAE,OADR;UAECI,KAAK,EAAE;QAFR,CADQ,EAKR;UACCJ,KAAK,EAAE,WADR;UAECI,KAAK,EAAE;QAFR,CALQ,EASR;UACCJ,KAAK,EAAE,KADR;UAECI,KAAK,EAAE;QAFR,CATQ;MADD;IAJJ,CADC;IAsBPC,KAAK,EAAE;MACNN,IAAI,EAAE,QADA;MAENC,KAAK,EAAE,OAFD;MAGNE,OAAO,EAAE;QACRC,OAAO,EAAE,CACR;UACCH,KAAK,EAAE,cADR;UAECI,KAAK,EAAE;QAFR,CADQ,EAKR;UACCJ,KAAK,EAAE,MADR;UAECI,KAAK,EAAE;QAFR,CALQ;MADD;IAHH;EAtBA;AAJkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/personWithToken.builder.ts"],"names":["id","description","fields","personSchema","casualName","token","type","isRequired","isLoggedIn","label"],"mappings":";;;;;;;;;AAAA;;AAEA;;AADA;eAGe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,iBADsB;AAE1BC,EAAAA,WAAW,EAAE,uDAFa;AAG1BC,EAAAA,MAAM,EAAE;AACPF,IAAAA,EAAE,EAAEG,mBAAaD,MAAb,CAAoBF,EADjB;AAEPI,IAAAA,UAAU,EAAED,mBAAaD,MAAb,CAAoBE,UAFzB;AAGPC,IAAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE,MAAR;AAAgBC,MAAAA,UAAU,EAAE;AAA5B,KAHA;AAIPC,IAAAA,UAAU,EAAE;AACXF,MAAAA,IAAI,EAAE,SADK;AAEXG,MAAAA,KAAK,EAAE;AAFI;AAJL;AAHkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n// eslint-disable-next-line spruce/prohibit-import-of-schema-in-builders\nimport personSchema from '#spruce/schemas/spruce/v2020_07_22/person.schema'\n\nexport default buildSchema({\n\tid: 'personWithToken',\n\tdescription: 'A stripped down cli user with token details for login',\n\tfields: {\n\t\tid: personSchema.fields.id,\n\t\tcasualName: personSchema.fields.casualName,\n\t\ttoken: { type: 'text', isRequired: true },\n\t\tisLoggedIn: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Logged in',\n\t\t},\n\t},\n})\n"],"file":"personWithToken.builder.js"}
1
+ {"version":3,"file":"personWithToken.builder.js","names":["id","description","fields","personSchema","casualName","token","type","isRequired","isLoggedIn","label"],"sources":["../../../src/schemas/v2020_07_22/personWithToken.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n// eslint-disable-next-line spruce/prohibit-import-of-schema-in-builders\nimport personSchema from '#spruce/schemas/spruce/v2020_07_22/person.schema'\n\nexport default buildSchema({\n\tid: 'personWithToken',\n\tdescription: 'A stripped down cli user with token details for login',\n\tfields: {\n\t\tid: personSchema.fields.id,\n\t\tcasualName: personSchema.fields.casualName,\n\t\ttoken: { type: 'text', isRequired: true },\n\t\tisLoggedIn: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Logged in',\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;;;AAAA;;AAEA;;AADA;eAGe,yBAAY;EAC1BA,EAAE,EAAE,iBADsB;EAE1BC,WAAW,EAAE,uDAFa;EAG1BC,MAAM,EAAE;IACPF,EAAE,EAAEG,mBAAaD,MAAb,CAAoBF,EADjB;IAEPI,UAAU,EAAED,mBAAaD,MAAb,CAAoBE,UAFzB;IAGPC,KAAK,EAAE;MAAEC,IAAI,EAAE,MAAR;MAAgBC,UAAU,EAAE;IAA5B,CAHA;IAIPC,UAAU,EAAE;MACXF,IAAI,EAAE,SADK;MAEXG,KAAK,EAAE;IAFI;EAJL;AAHkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.ts"],"names":["id","name","description","importsWhenLocal","fields","widgets","type","options","valueType"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,2CADsB;AAE1BC,EAAAA,IAAI,EAAE,gDAFoB;AAG1BC,EAAAA,WAAW,EAAE,EAHa;AAI1BC,EAAAA,gBAAgB,EAAE,CACjB,qEADiB,CAJQ;AAO1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,OAAO,EAAE;AACRC,MAAAA,IAAI,EAAE,KADE;AAERC,MAAAA,OAAO,EAAE;AACRC,QAAAA,SAAS,EAAE;AADH;AAFD;AADF;AAPkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'registerDashboardWidgetsEmitPayloadSchema',\n\tname: 'register dashboard widgets emit payload schema',\n\tdescription: '',\n\timportsWhenLocal: [\n\t\t\"import { BaseWidget } from '#spruce/../widgets/types/widgets.types'\",\n\t],\n\tfields: {\n\t\twidgets: {\n\t\t\ttype: 'raw',\n\t\t\toptions: {\n\t\t\t\tvalueType: 'BaseWidget',\n\t\t\t},\n\t\t},\n\t},\n})\n"],"file":"registerDashboardWidgetsEmitPayloadSchema.builder.js"}
1
+ {"version":3,"file":"registerDashboardWidgetsEmitPayloadSchema.builder.js","names":["id","name","description","importsWhenLocal","fields","widgets","type","options","valueType"],"sources":["../../../src/schemas/v2020_07_22/registerDashboardWidgetsEmitPayloadSchema.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'registerDashboardWidgetsEmitPayloadSchema',\n\tname: 'register dashboard widgets emit payload schema',\n\tdescription: '',\n\timportsWhenLocal: [\n\t\t\"import { BaseWidget } from '#spruce/../widgets/types/widgets.types'\",\n\t],\n\tfields: {\n\t\twidgets: {\n\t\t\ttype: 'raw',\n\t\t\toptions: {\n\t\t\t\tvalueType: 'BaseWidget',\n\t\t\t},\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,2CADsB;EAE1BC,IAAI,EAAE,gDAFoB;EAG1BC,WAAW,EAAE,EAHa;EAI1BC,gBAAgB,EAAE,CACjB,qEADiB,CAJQ;EAO1BC,MAAM,EAAE;IACPC,OAAO,EAAE;MACRC,IAAI,EAAE,KADE;MAERC,OAAO,EAAE;QACRC,SAAS,EAAE;MADH;IAFD;EADF;AAPkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/setupTestsOptions.builder.ts"],"names":["id","name","description","fields","demoNumber","type","label","isRequired","skillSlug"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,mBADsB;AAE1BC,EAAAA,IAAI,EAAE,qBAFoB;AAG1BC,EAAAA,WAAW,EACV,+EAJyB;AAK1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,UAAU,EAAE;AACXC,MAAAA,IAAI,EAAE,OADK;AAEXC,MAAAA,KAAK,EAAE,mBAFI;AAGXC,MAAAA,UAAU,EAAE;AAHD,KADL;AAMPC,IAAAA,SAAS,EAAE;AACVH,MAAAA,IAAI,EAAE,MADI;AAEVC,MAAAA,KAAK,EAAE,WAFG;AAGVC,MAAAA,UAAU,EAAE;AAHF;AANJ;AALkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'setupTestsOptions',\n\tname: 'Setup tests options',\n\tdescription:\n\t\t'Use this with in your CI/CD environment to get your skill ready to run tests.',\n\tfields: {\n\t\tdemoNumber: {\n\t\t\ttype: 'phone',\n\t\t\tlabel: 'Demo phone number',\n\t\t\tisRequired: true,\n\t\t},\n\t\tskillSlug: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Namespace',\n\t\t\tisRequired: true,\n\t\t},\n\t},\n})\n"],"file":"setupTestsOptions.builder.js"}
1
+ {"version":3,"file":"setupTestsOptions.builder.js","names":["id","name","description","fields","demoNumber","type","label","isRequired","skillSlug"],"sources":["../../../src/schemas/v2020_07_22/setupTestsOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'setupTestsOptions',\n\tname: 'Setup tests options',\n\tdescription:\n\t\t'Use this with in your CI/CD environment to get your skill ready to run tests.',\n\tfields: {\n\t\tdemoNumber: {\n\t\t\ttype: 'phone',\n\t\t\tlabel: 'Demo phone number',\n\t\t\tisRequired: true,\n\t\t},\n\t\tskillSlug: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Namespace',\n\t\t\tisRequired: true,\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,mBADsB;EAE1BC,IAAI,EAAE,qBAFoB;EAG1BC,WAAW,EACV,+EAJyB;EAK1BC,MAAM,EAAE;IACPC,UAAU,EAAE;MACXC,IAAI,EAAE,OADK;MAEXC,KAAK,EAAE,mBAFI;MAGXC,UAAU,EAAE;IAHD,CADL;IAMPC,SAAS,EAAE;MACVH,IAAI,EAAE,MADI;MAEVC,KAAK,EAAE,WAFG;MAGVC,UAAU,EAAE;IAHF;EANJ;AALkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/setupVscodeOptions.builder.ts"],"names":["id","name","description","fields","all","type","label"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,oBADsB;AAE1BC,EAAAA,IAAI,EAAE,qBAFoB;AAG1BC,EAAAA,WAAW,EACV,wFAJyB;AAK1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,GAAG,EAAE;AACJC,MAAAA,IAAI,EAAE,SADF;AAEJC,MAAAA,KAAK,EAAE;AAFH;AADE;AALkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'setupVscodeOptions',\n\tname: 'Setup vscode action',\n\tdescription:\n\t\t'Install vscode extensions, launch configs, and settings the Spruce team uses in-house!',\n\tfields: {\n\t\tall: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Install everything',\n\t\t},\n\t},\n})\n"],"file":"setupVscodeOptions.builder.js"}
1
+ {"version":3,"file":"setupVscodeOptions.builder.js","names":["id","name","description","fields","all","type","label"],"sources":["../../../src/schemas/v2020_07_22/setupVscodeOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'setupVscodeOptions',\n\tname: 'Setup vscode action',\n\tdescription:\n\t\t'Install vscode extensions, launch configs, and settings the Spruce team uses in-house!',\n\tfields: {\n\t\tall: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Install everything',\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,oBADsB;EAE1BC,IAAI,EAAE,qBAFoB;EAG1BC,WAAW,EACV,wFAJyB;EAK1BC,MAAM,EAAE;IACPC,GAAG,EAAE;MACJC,IAAI,EAAE,SADF;MAEJC,KAAK,EAAE;IAFH;EADE;AALkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/skillFeature.builder.ts"],"names":["id","name","fields","destination","type","defaultValue","isRequired","label","description"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,cADsB;AAE1BC,EAAAA,IAAI,EAAE,uBAFoB;AAG1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,WAAW,EAAE;AACZC,MAAAA,IAAI,EAAE,MADM;AAEZC,MAAAA,YAAY,EAAE;AAFF,KADN;AAKPJ,IAAAA,IAAI,EAAE;AACLG,MAAAA,IAAI,EAAE,MADD;AAELE,MAAAA,UAAU,EAAE,IAFP;AAGLC,MAAAA,KAAK,EAAE;AAHF,KALC;AAUPC,IAAAA,WAAW,EAAE;AACZJ,MAAAA,IAAI,EAAE,MADM;AAEZE,MAAAA,UAAU,EAAE,IAFA;AAGZC,MAAAA,KAAK,EAAE;AAHK;AAVN;AAHkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'skillFeature',\n\tname: 'Skill feature options',\n\tfields: {\n\t\tdestination: {\n\t\t\ttype: 'text',\n\t\t\tdefaultValue: '.',\n\t\t},\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t\tlabel: \"What's the name of your skill?\",\n\t\t},\n\t\tdescription: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t\tlabel: 'How would you describe your skill?',\n\t\t},\n\t},\n})\n"],"file":"skillFeature.builder.js"}
1
+ {"version":3,"file":"skillFeature.builder.js","names":["id","name","fields","destination","type","defaultValue","isRequired","label","description"],"sources":["../../../src/schemas/v2020_07_22/skillFeature.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'skillFeature',\n\tname: 'Skill feature options',\n\tfields: {\n\t\tdestination: {\n\t\t\ttype: 'text',\n\t\t\tdefaultValue: '.',\n\t\t},\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t\tlabel: \"What's the name of your skill?\",\n\t\t},\n\t\tdescription: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t\tlabel: 'How would you describe your skill?',\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,cADsB;EAE1BC,IAAI,EAAE,uBAFoB;EAG1BC,MAAM,EAAE;IACPC,WAAW,EAAE;MACZC,IAAI,EAAE,MADM;MAEZC,YAAY,EAAE;IAFF,CADN;IAKPJ,IAAI,EAAE;MACLG,IAAI,EAAE,MADD;MAELE,UAAU,EAAE,IAFP;MAGLC,KAAK,EAAE;IAHF,CALC;IAUPC,WAAW,EAAE;MACZJ,IAAI,EAAE,MADM;MAEZE,UAAU,EAAE,IAFA;MAGZC,KAAK,EAAE;IAHK;EAVN;AAHkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/syncErrorOptions.builder.ts"],"names":["id","name","description","fields","syncSchemasOptionsBuilder","errorClassDestinationDir","type","label","isRequired","isPrivate","hint","defaultValue","errorLookupDir","errorTypesDestinationDir"],"mappings":";;;;;;;;;;;AAAA;;AACA;;;;;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,kBADsB;AAE1BC,EAAAA,IAAI,EAAE,mBAFoB;AAG1BC,EAAAA,WAAW,EAAE,mDAHa;AAI1BC,EAAAA,MAAM,kCACF,wBAAWC,+BAA0BD,MAArC,EAA6C,CAC/C,iCAD+C,EAE/C,uBAF+C,CAA7C,CADE;AAKLE,IAAAA,wBAAwB,EAAE;AACzBC,MAAAA,IAAI,EAAE,MADmB;AAEzBC,MAAAA,KAAK,EAAE,yBAFkB;AAGzBC,MAAAA,UAAU,EAAE,IAHa;AAIzBC,MAAAA,SAAS,EAAE,IAJc;AAKzBC,MAAAA,IAAI,EAAE,4CALmB;AAMzBC,MAAAA,YAAY,EAAE;AANW,KALrB;AAaLC,IAAAA,cAAc,EAAE;AACfN,MAAAA,IAAI,EAAE,MADS;AAEfI,MAAAA,IAAI,EAAE,8CAFS;AAGfC,MAAAA,YAAY,EAAE;AAHC,KAbX;AAkBLE,IAAAA,wBAAwB,EAAE;AACzBP,MAAAA,IAAI,EAAE,MADmB;AAEzBC,MAAAA,KAAK,EAAE,uBAFkB;AAGzBG,MAAAA,IAAI,EAAE,kEAHmB;AAIzBC,MAAAA,YAAY,EAAE;AAJW;AAlBrB;AAJoB,CAAZ,C","sourcesContent":["import { buildSchema, dropFields } from '@sprucelabs/schema'\nimport syncSchemasOptionsBuilder from './syncSchemasOptions.builder'\n\nexport default buildSchema({\n\tid: 'syncErrorOptions',\n\tname: 'Sync error action',\n\tdescription: 'Keep your errors types in sync with your builders',\n\tfields: {\n\t\t...dropFields(syncSchemasOptionsBuilder.fields, [\n\t\t\t'deleteDestinationDirIfNoSchemas',\n\t\t\t'deleteOrphanedSchemas',\n\t\t]),\n\t\terrorClassDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Error class destination',\n\t\t\tisRequired: true,\n\t\t\tisPrivate: true,\n\t\t\thint: \"Where I'll save your new Error class file?\",\n\t\t\tdefaultValue: 'src/errors',\n\t\t},\n\t\terrorLookupDir: {\n\t\t\ttype: 'text',\n\t\t\thint: 'Where I should look for your error builders?',\n\t\t\tdefaultValue: 'src/errors',\n\t\t},\n\t\terrorTypesDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Types destination dir',\n\t\t\thint: 'This is where error options and type information will be written',\n\t\t\tdefaultValue: '#spruce/errors',\n\t\t},\n\t},\n})\n"],"file":"syncErrorOptions.builder.js"}
1
+ {"version":3,"file":"syncErrorOptions.builder.js","names":["id","name","description","fields","syncSchemasOptionsBuilder","errorClassDestinationDir","type","label","isRequired","isPrivate","hint","defaultValue","errorLookupDir","errorTypesDestinationDir"],"sources":["../../../src/schemas/v2020_07_22/syncErrorOptions.builder.ts"],"sourcesContent":["import { buildSchema, dropFields } from '@sprucelabs/schema'\nimport syncSchemasOptionsBuilder from './syncSchemasOptions.builder'\n\nexport default buildSchema({\n\tid: 'syncErrorOptions',\n\tname: 'Sync error action',\n\tdescription: 'Keep your errors types in sync with your builders',\n\tfields: {\n\t\t...dropFields(syncSchemasOptionsBuilder.fields, [\n\t\t\t'deleteDestinationDirIfNoSchemas',\n\t\t\t'deleteOrphanedSchemas',\n\t\t]),\n\t\terrorClassDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Error class destination',\n\t\t\tisRequired: true,\n\t\t\tisPrivate: true,\n\t\t\thint: \"Where I'll save your new Error class file?\",\n\t\t\tdefaultValue: 'src/errors',\n\t\t},\n\t\terrorLookupDir: {\n\t\t\ttype: 'text',\n\t\t\thint: 'Where I should look for your error builders?',\n\t\t\tdefaultValue: 'src/errors',\n\t\t},\n\t\terrorTypesDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Types destination dir',\n\t\t\thint: 'This is where error options and type information will be written',\n\t\t\tdefaultValue: '#spruce/errors',\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;;;;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,kBADsB;EAE1BC,IAAI,EAAE,mBAFoB;EAG1BC,WAAW,EAAE,mDAHa;EAI1BC,MAAM,kCACF,wBAAWC,+BAA0BD,MAArC,EAA6C,CAC/C,iCAD+C,EAE/C,uBAF+C,CAA7C,CADE;IAKLE,wBAAwB,EAAE;MACzBC,IAAI,EAAE,MADmB;MAEzBC,KAAK,EAAE,yBAFkB;MAGzBC,UAAU,EAAE,IAHa;MAIzBC,SAAS,EAAE,IAJc;MAKzBC,IAAI,EAAE,4CALmB;MAMzBC,YAAY,EAAE;IANW,CALrB;IAaLC,cAAc,EAAE;MACfN,IAAI,EAAE,MADS;MAEfI,IAAI,EAAE,8CAFS;MAGfC,YAAY,EAAE;IAHC,CAbX;IAkBLE,wBAAwB,EAAE;MACzBP,IAAI,EAAE,MADmB;MAEzBC,KAAK,EAAE,uBAFkB;MAGzBG,IAAI,EAAE,kEAHmB;MAIzBC,YAAY,EAAE;IAJW;EAlBrB;AAJoB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/syncEventOptions.builder.ts"],"names":["id","name","description","fields","contractDestinationDir","type","label","hint","defaultValue","schemaTypesLookupDir","syncSchemasOptionsBuilder","schemaTypesDestinationDirOrFile","shouldSyncOnlyCoreEvents","skillEventContractTypesFile","eventBuilderFile"],"mappings":";;;;;;;;;AAAA;;AACA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,kBADsB;AAE1BC,EAAAA,IAAI,EAAE,mBAFoB;AAG1BC,EAAAA,WAAW,EACV,8EAJyB;AAK1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,sBAAsB,EAAE;AACvBC,MAAAA,IAAI,EAAE,MADiB;AAEvBC,MAAAA,KAAK,EAAE,sBAFgB;AAGvBC,MAAAA,IAAI,EAAE,wCAHiB;AAIvBC,MAAAA,YAAY,EAAE;AAJS,KADjB;AAOPC,IAAAA,oBAAoB,EAAE;AACrBJ,MAAAA,IAAI,EAAE,MADe;AAErBC,MAAAA,KAAK,EAAE,+BAFc;AAGrBC,MAAAA,IAAI,EAAE,kDAHe;AAIrBC,MAAAA,YAAY,EACXE,+BAA0BP,MAA1B,CAAiCQ,+BAAjC,CACEH;AANkB,KAPf;AAePI,IAAAA,wBAAwB,EAAE;AACzBP,MAAAA,IAAI,EAAE,SADmB;AAEzBC,MAAAA,KAAK,EAAE,uBAFkB;AAGzBC,MAAAA,IAAI,EAAE;AAHmB,KAfnB;AAoBPM,IAAAA,2BAA2B,EAAE;AAC5BR,MAAAA,IAAI,EAAE,MADsB;AAE5BC,MAAAA,KAAK,EAAE,4BAFqB;AAG5BE,MAAAA,YAAY,EAAE;AAHc,KApBtB;AAyBPM,IAAAA,gBAAgB,EAAE;AACjBT,MAAAA,IAAI,EAAE,MADW;AAEjBC,MAAAA,KAAK,EAAE,oBAFU;AAGjBE,MAAAA,YAAY,EAAE;AAHG;AAzBX;AALkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport syncSchemasOptionsBuilder from './syncSchemasOptions.builder'\n\nexport default buildSchema({\n\tid: 'syncEventOptions',\n\tname: 'sync event action',\n\tdescription:\n\t\t'Pull down event contracts from Mercury to make them available in your skill.',\n\tfields: {\n\t\tcontractDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Contract destination',\n\t\t\thint: 'Where I will generate event contracts.',\n\t\t\tdefaultValue: '#spruce/events',\n\t\t},\n\t\tschemaTypesLookupDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Schema types lookup directory',\n\t\t\thint: 'Where I will lookup schema types and interfaces.',\n\t\t\tdefaultValue:\n\t\t\t\tsyncSchemasOptionsBuilder.fields.schemaTypesDestinationDirOrFile\n\t\t\t\t\t.defaultValue,\n\t\t},\n\t\tshouldSyncOnlyCoreEvents: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Sync only core events',\n\t\t\thint: 'For use in @sprucelabs/mercury-types',\n\t\t},\n\t\tskillEventContractTypesFile: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Event signature types file',\n\t\t\tdefaultValue: '@sprucelabs/mercury-types/build/types/mercury.types',\n\t\t},\n\t\teventBuilderFile: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Event builder file',\n\t\t\tdefaultValue: '@sprucelabs/mercury-types',\n\t\t},\n\t},\n})\n"],"file":"syncEventOptions.builder.js"}
1
+ {"version":3,"file":"syncEventOptions.builder.js","names":["id","name","description","fields","contractDestinationDir","type","label","hint","defaultValue","schemaTypesLookupDir","syncSchemasOptionsBuilder","schemaTypesDestinationDirOrFile","shouldSyncOnlyCoreEvents","skillEventContractTypesFile","eventBuilderFile"],"sources":["../../../src/schemas/v2020_07_22/syncEventOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport syncSchemasOptionsBuilder from './syncSchemasOptions.builder'\n\nexport default buildSchema({\n\tid: 'syncEventOptions',\n\tname: 'sync event action',\n\tdescription:\n\t\t'Pull down event contracts from Mercury to make them available in your skill.',\n\tfields: {\n\t\tcontractDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Contract destination',\n\t\t\thint: 'Where I will generate event contracts.',\n\t\t\tdefaultValue: '#spruce/events',\n\t\t},\n\t\tschemaTypesLookupDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Schema types lookup directory',\n\t\t\thint: 'Where I will lookup schema types and interfaces.',\n\t\t\tdefaultValue:\n\t\t\t\tsyncSchemasOptionsBuilder.fields.schemaTypesDestinationDirOrFile\n\t\t\t\t\t.defaultValue,\n\t\t},\n\t\tshouldSyncOnlyCoreEvents: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Sync only core events',\n\t\t\thint: 'For use in @sprucelabs/mercury-types',\n\t\t},\n\t\tskillEventContractTypesFile: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Event signature types file',\n\t\t\tdefaultValue: '@sprucelabs/mercury-types/build/types/mercury.types',\n\t\t},\n\t\teventBuilderFile: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Event builder file',\n\t\t\tdefaultValue: '@sprucelabs/mercury-types',\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;;;AAAA;;AACA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,kBADsB;EAE1BC,IAAI,EAAE,mBAFoB;EAG1BC,WAAW,EACV,8EAJyB;EAK1BC,MAAM,EAAE;IACPC,sBAAsB,EAAE;MACvBC,IAAI,EAAE,MADiB;MAEvBC,KAAK,EAAE,sBAFgB;MAGvBC,IAAI,EAAE,wCAHiB;MAIvBC,YAAY,EAAE;IAJS,CADjB;IAOPC,oBAAoB,EAAE;MACrBJ,IAAI,EAAE,MADe;MAErBC,KAAK,EAAE,+BAFc;MAGrBC,IAAI,EAAE,kDAHe;MAIrBC,YAAY,EACXE,+BAA0BP,MAA1B,CAAiCQ,+BAAjC,CACEH;IANkB,CAPf;IAePI,wBAAwB,EAAE;MACzBP,IAAI,EAAE,SADmB;MAEzBC,KAAK,EAAE,uBAFkB;MAGzBC,IAAI,EAAE;IAHmB,CAfnB;IAoBPM,2BAA2B,EAAE;MAC5BR,IAAI,EAAE,MADsB;MAE5BC,KAAK,EAAE,4BAFqB;MAG5BE,YAAY,EAAE;IAHc,CApBtB;IAyBPM,gBAAgB,EAAE;MACjBT,IAAI,EAAE,MADW;MAEjBC,KAAK,EAAE,oBAFU;MAGjBE,YAAY,EAAE;IAHG;EAzBX;AALkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.ts"],"names":["id","name","description","fields","fieldTypesDestinationDir","type","label","hint","defaultValue","isPrivate","addonsLookupDir","generateFieldTypes"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,yBADsB;AAE1BC,EAAAA,IAAI,EAAE,yBAFoB;AAG1BC,EAAAA,WAAW,EAAE,4CAHa;AAI1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,wBAAwB,EAAE;AACzBC,MAAAA,IAAI,EAAE,MADmB;AAEzBC,MAAAA,KAAK,EAAE,uBAFkB;AAGzBC,MAAAA,IAAI,EAAE,qDAHmB;AAIzBC,MAAAA,YAAY,EAAE,iBAJW;AAKzBC,MAAAA,SAAS,EAAE;AALc,KADnB;AAQPC,IAAAA,eAAe,EAAE;AAChBL,MAAAA,IAAI,EAAE,MADU;AAEhBC,MAAAA,KAAK,EAAE,yBAFS;AAGhBC,MAAAA,IAAI,EAAE,yDAHU;AAIhBC,MAAAA,YAAY,EAAE;AAJE,KARV;AAcPG,IAAAA,kBAAkB,EAAE;AACnBN,MAAAA,IAAI,EAAE,SADa;AAEnBC,MAAAA,KAAK,EAAE,sBAFY;AAGnBG,MAAAA,SAAS,EAAE,IAHQ;AAInBF,MAAAA,IAAI,EAAE,oCAJa;AAKnBC,MAAAA,YAAY,EAAE;AALK;AAdb;AAJkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'syncSchemaFieldsOptions',\n\tname: 'syncSchemaFieldsOptions',\n\tdescription: 'Sync schema fields so you can use schemas!',\n\tfields: {\n\t\tfieldTypesDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Field types directory',\n\t\t\thint: 'Where field types and interfaces will be generated.',\n\t\t\tdefaultValue: '#spruce/schemas',\n\t\t\tisPrivate: true,\n\t\t},\n\t\taddonsLookupDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Addons lookup directory',\n\t\t\thint: \"Where I'll look for new schema fields to be registered.\",\n\t\t\tdefaultValue: 'src/addons',\n\t\t},\n\t\tgenerateFieldTypes: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Generate field types',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I generate field types too?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t},\n})\n"],"file":"syncSchemaFieldsOptions.builder.js"}
1
+ {"version":3,"file":"syncSchemaFieldsOptions.builder.js","names":["id","name","description","fields","fieldTypesDestinationDir","type","label","hint","defaultValue","isPrivate","addonsLookupDir","generateFieldTypes"],"sources":["../../../src/schemas/v2020_07_22/syncSchemaFieldsOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'syncSchemaFieldsOptions',\n\tname: 'syncSchemaFieldsOptions',\n\tdescription: 'Sync schema fields so you can use schemas!',\n\tfields: {\n\t\tfieldTypesDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Field types directory',\n\t\t\thint: 'Where field types and interfaces will be generated.',\n\t\t\tdefaultValue: '#spruce/schemas',\n\t\t\tisPrivate: true,\n\t\t},\n\t\taddonsLookupDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Addons lookup directory',\n\t\t\thint: \"Where I'll look for new schema fields to be registered.\",\n\t\t\tdefaultValue: 'src/addons',\n\t\t},\n\t\tgenerateFieldTypes: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Generate field types',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I generate field types too?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,yBADsB;EAE1BC,IAAI,EAAE,yBAFoB;EAG1BC,WAAW,EAAE,4CAHa;EAI1BC,MAAM,EAAE;IACPC,wBAAwB,EAAE;MACzBC,IAAI,EAAE,MADmB;MAEzBC,KAAK,EAAE,uBAFkB;MAGzBC,IAAI,EAAE,qDAHmB;MAIzBC,YAAY,EAAE,iBAJW;MAKzBC,SAAS,EAAE;IALc,CADnB;IAQPC,eAAe,EAAE;MAChBL,IAAI,EAAE,MADU;MAEhBC,KAAK,EAAE,yBAFS;MAGhBC,IAAI,EAAE,yDAHU;MAIhBC,YAAY,EAAE;IAJE,CARV;IAcPG,kBAAkB,EAAE;MACnBN,IAAI,EAAE,SADa;MAEnBC,KAAK,EAAE,sBAFY;MAGnBG,SAAS,EAAE,IAHQ;MAInBF,IAAI,EAAE,oCAJa;MAKnBC,YAAY,EAAE;IALK;EAdb;AAJkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/syncSchemasOptions.builder.ts"],"names":["id","name","description","fields","syncSchemaFieldsBuilder","schemaTypesDestinationDirOrFile","type","label","hint","defaultValue","schemaLookupDir","moduleToImportFromWhenRemote","shouldInstallMissingDependencies","shouldEnableVersioning","isPrivate","globalSchemaNamespace","DEFAULT_GLOBAL_SCHEMA_NAMESPACE","shouldFetchRemoteSchemas","shouldFetchLocalSchemas","shouldFetchCoreSchemas","shouldGenerateCoreSchemaTypes","registerBuiltSchemas","deleteDestinationDirIfNoSchemas","deleteOrphanedSchemas","generateStandaloneTypesFile","syncingMessage"],"mappings":"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","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport { DEFAULT_GLOBAL_SCHEMA_NAMESPACE } from '@sprucelabs/spruce-skill-utils'\nimport syncSchemaFieldsBuilder from './syncSchemaFieldsOptions.builder'\n\nexport default buildSchema({\n\tid: 'syncSchemasOptions',\n\tname: 'Sync schemas action',\n\tdescription: 'Options for schema.sync.',\n\tfields: {\n\t\t...syncSchemaFieldsBuilder.fields,\n\t\tschemaTypesDestinationDirOrFile: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Schema types destination directory',\n\t\t\thint: 'Where I will generate schema types and interfaces.',\n\t\t\tdefaultValue: '#spruce/schemas',\n\t\t},\n\t\tschemaLookupDir: {\n\t\t\ttype: 'text',\n\t\t\thint: 'Where I should look for your schema builders?',\n\t\t\tdefaultValue: 'src/schemas',\n\t\t},\n\t\tmoduleToImportFromWhenRemote: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Module import',\n\t\t\thint: 'When other skills use your schemas, will they import them from a module?',\n\t\t},\n\t\tshouldInstallMissingDependencies: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Auto install missing dependencies',\n\t\t},\n\t\tshouldEnableVersioning: {\n\t\t\ttype: 'boolean',\n\t\t\tdefaultValue: true,\n\t\t\tlabel: 'Enable versioning',\n\t\t\thint: 'Should we use versioning?',\n\t\t\tisPrivate: true,\n\t\t},\n\t\tglobalSchemaNamespace: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Global namespace',\n\t\t\thint: \"The name you'll use when accessing these schemas, e.g. SpruceSchemas\",\n\t\t\tisPrivate: true,\n\t\t\tdefaultValue: DEFAULT_GLOBAL_SCHEMA_NAMESPACE,\n\t\t},\n\t\tshouldFetchRemoteSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Fetch remote schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'I will pull in schemas from other features.',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldFetchLocalSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Fetch local schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'I will look in schemaLookupDir to load local schemas.',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldFetchCoreSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Fetch core schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I pull in core schemas too?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldGenerateCoreSchemaTypes: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Generate core schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Used only for updating the @sprucelabs/spruce-core-schemas. Ensures core schemas are generated like local schemas. Also an alias for `--shouldFetchRemoteSchemas=false --shouldFetchCoreSchemas=false --generateStandaloneTypesFile.',\n\t\t},\n\t\tregisterBuiltSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Register built schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should the schemas use the SchemaRegistry for tracking?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tdeleteDestinationDirIfNoSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Delete directory if no schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I delete the schema directory if no schemas are found?',\n\t\t\tdefaultValue: false,\n\t\t},\n\t\tdeleteOrphanedSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Delete orphaned schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I delete schemas where the builders are missing?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tgenerateStandaloneTypesFile: {\n\t\t\tlabel: 'Generate standalone types file',\n\t\t\ttype: 'boolean',\n\t\t\tisPrivate: true,\n\t\t\thint: \"By default, I'll generate a types file that augments core types from @sprucelabs/spruce-core-schemas. Setting this to true will generate a stand alone types file.\",\n\t\t\tdefaultValue: false,\n\t\t},\n\t\tsyncingMessage: {\n\t\t\tlabel: ' message',\n\t\t\ttype: 'text',\n\t\t\tdefaultValue: 'Syncing schemas...',\n\t\t\tisPrivate: true,\n\t\t},\n\t},\n})\n"],"file":"syncSchemasOptions.builder.js"}
1
+ {"version":3,"file":"syncSchemasOptions.builder.js","names":["id","name","description","fields","syncSchemaFieldsBuilder","schemaTypesDestinationDirOrFile","type","label","hint","defaultValue","schemaLookupDir","moduleToImportFromWhenRemote","shouldInstallMissingDependencies","shouldEnableVersioning","isPrivate","globalSchemaNamespace","DEFAULT_GLOBAL_SCHEMA_NAMESPACE","shouldFetchRemoteSchemas","shouldFetchLocalSchemas","shouldFetchCoreSchemas","shouldGenerateCoreSchemaTypes","registerBuiltSchemas","deleteDestinationDirIfNoSchemas","deleteOrphanedSchemas","generateStandaloneTypesFile","syncingMessage"],"sources":["../../../src/schemas/v2020_07_22/syncSchemasOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport { DEFAULT_GLOBAL_SCHEMA_NAMESPACE } from '@sprucelabs/spruce-skill-utils'\nimport syncSchemaFieldsBuilder from './syncSchemaFieldsOptions.builder'\n\nexport default buildSchema({\n\tid: 'syncSchemasOptions',\n\tname: 'Sync schemas action',\n\tdescription: 'Options for schema.sync.',\n\tfields: {\n\t\t...syncSchemaFieldsBuilder.fields,\n\t\tschemaTypesDestinationDirOrFile: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Schema types destination directory',\n\t\t\thint: 'Where I will generate schema types and interfaces.',\n\t\t\tdefaultValue: '#spruce/schemas',\n\t\t},\n\t\tschemaLookupDir: {\n\t\t\ttype: 'text',\n\t\t\thint: 'Where I should look for your schema builders?',\n\t\t\tdefaultValue: 'src/schemas',\n\t\t},\n\t\tmoduleToImportFromWhenRemote: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Module import',\n\t\t\thint: 'When other skills use your schemas, will they import them from a module?',\n\t\t},\n\t\tshouldInstallMissingDependencies: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Auto install missing dependencies',\n\t\t},\n\t\tshouldEnableVersioning: {\n\t\t\ttype: 'boolean',\n\t\t\tdefaultValue: true,\n\t\t\tlabel: 'Enable versioning',\n\t\t\thint: 'Should we use versioning?',\n\t\t\tisPrivate: true,\n\t\t},\n\t\tglobalSchemaNamespace: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Global namespace',\n\t\t\thint: \"The name you'll use when accessing these schemas, e.g. SpruceSchemas\",\n\t\t\tisPrivate: true,\n\t\t\tdefaultValue: DEFAULT_GLOBAL_SCHEMA_NAMESPACE,\n\t\t},\n\t\tshouldFetchRemoteSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Fetch remote schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'I will pull in schemas from other features.',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldFetchLocalSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Fetch local schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'I will look in schemaLookupDir to load local schemas.',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldFetchCoreSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Fetch core schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I pull in core schemas too?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tshouldGenerateCoreSchemaTypes: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Generate core schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Used only for updating the @sprucelabs/spruce-core-schemas. Ensures core schemas are generated like local schemas. Also an alias for `--shouldFetchRemoteSchemas=false --shouldFetchCoreSchemas=false --generateStandaloneTypesFile.',\n\t\t},\n\t\tregisterBuiltSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Register built schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should the schemas use the SchemaRegistry for tracking?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tdeleteDestinationDirIfNoSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Delete directory if no schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I delete the schema directory if no schemas are found?',\n\t\t\tdefaultValue: false,\n\t\t},\n\t\tdeleteOrphanedSchemas: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Delete orphaned schemas',\n\t\t\tisPrivate: true,\n\t\t\thint: 'Should I delete schemas where the builders are missing?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tgenerateStandaloneTypesFile: {\n\t\t\tlabel: 'Generate standalone types file',\n\t\t\ttype: 'boolean',\n\t\t\tisPrivate: true,\n\t\t\thint: \"By default, I'll generate a types file that augments core types from @sprucelabs/spruce-core-schemas. Setting this to true will generate a stand alone types file.\",\n\t\t\tdefaultValue: false,\n\t\t},\n\t\tsyncingMessage: {\n\t\t\tlabel: ' message',\n\t\t\ttype: 'text',\n\t\t\tdefaultValue: 'Syncing schemas...',\n\t\t\tisPrivate: true,\n\t\t},\n\t},\n})\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/testOptions.builder.ts"],"names":["id","name","description","fields","shouldReportWhileRunning","type","label","hint","defaultValue","pattern","inspect","shouldHoldAtStart","shouldReturnImmediately","isPrivate","watchMode","options","choices","value"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,aADsB;AAE1BC,EAAAA,IAAI,EAAE,YAFoB;AAG1BC,EAAAA,WAAW,EAAE,qBAHa;AAI1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,wBAAwB,EAAE;AACzBC,MAAAA,IAAI,EAAE,SADmB;AAEzBC,MAAAA,KAAK,EAAE,sBAFkB;AAGzBC,MAAAA,IAAI,EAAE,0DAHmB;AAIzBC,MAAAA,YAAY,EAAE;AAJW,KADnB;AAOPC,IAAAA,OAAO,EAAE;AACRJ,MAAAA,IAAI,EAAE,MADE;AAERC,MAAAA,KAAK,EAAE,SAFC;AAGRC,MAAAA,IAAI;AAHI,KAPF;AAYPG,IAAAA,OAAO,EAAE;AACRL,MAAAA,IAAI,EAAE,QADE;AAERC,MAAAA,KAAK,EAAE,SAFC;AAGRC,MAAAA,IAAI;AAHI,KAZF;AAiBPI,IAAAA,iBAAiB,EAAE;AAClBN,MAAAA,IAAI,EAAE,SADY;AAElBC,MAAAA,KAAK,EAAE,+BAFW;AAGlBE,MAAAA,YAAY,EAAE;AAHI,KAjBZ;AAsBPI,IAAAA,uBAAuB,EAAE;AACxBP,MAAAA,IAAI,EAAE,SADkB;AAExBC,MAAAA,KAAK,EAAE,+BAFiB;AAGxBO,MAAAA,SAAS,EAAE,IAHa;AAIxBL,MAAAA,YAAY,EAAE,KAJU;AAKxBD,MAAAA,IAAI,EAAE;AALkB,KAtBlB;AA6BPO,IAAAA,SAAS,EAAE;AACVT,MAAAA,IAAI,EAAE,QADI;AAEVC,MAAAA,KAAK,EAAE,OAFG;AAGVS,MAAAA,OAAO,EAAE;AACRC,QAAAA,OAAO,EAAE,CACR;AACCC,UAAAA,KAAK,EAAE,KADR;AAECX,UAAAA,KAAK,EAAE;AAFR,SADQ,EAKR;AACCW,UAAAA,KAAK,EAAE,UADR;AAECX,UAAAA,KAAK,EAAE;AAFR,SALQ,EASR;AACCW,UAAAA,KAAK,EAAE,OADR;AAECX,UAAAA,KAAK,EAAE;AAFR,SATQ;AADD;AAHC;AA7BJ;AAJkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'testOptions',\n\tname: 'Test skill',\n\tdescription: 'Test your might! 💪',\n\tfields: {\n\t\tshouldReportWhileRunning: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Report while running',\n\t\t\thint: 'Should I output the test results while they are running?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tpattern: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Pattern',\n\t\t\thint: `I'll filter all tests that match this pattern`,\n\t\t},\n\t\tinspect: {\n\t\t\ttype: 'number',\n\t\t\tlabel: 'Inspect',\n\t\t\thint: `Pass --inspect related args to test process.`,\n\t\t},\n\t\tshouldHoldAtStart: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Should wait for manual start?',\n\t\t\tdefaultValue: false,\n\t\t},\n\t\tshouldReturnImmediately: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Wait until tests are finished',\n\t\t\tisPrivate: true,\n\t\t\tdefaultValue: false,\n\t\t\thint: 'For testing. Returns immediately after executing test so the running process can be managed programatically.',\n\t\t},\n\t\twatchMode: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Watch',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'off',\n\t\t\t\t\t\tlabel: 'Off',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'standard',\n\t\t\t\t\t\tlabel: 'Standard',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'smart',\n\t\t\t\t\t\tlabel: 'Smart',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"file":"testOptions.builder.js"}
1
+ {"version":3,"file":"testOptions.builder.js","names":["id","name","description","fields","shouldReportWhileRunning","type","label","hint","defaultValue","pattern","inspect","shouldHoldAtStart","shouldReturnImmediately","isPrivate","watchMode","options","choices","value"],"sources":["../../../src/schemas/v2020_07_22/testOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'testOptions',\n\tname: 'Test skill',\n\tdescription: 'Test your might! 💪',\n\tfields: {\n\t\tshouldReportWhileRunning: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Report while running',\n\t\t\thint: 'Should I output the test results while they are running?',\n\t\t\tdefaultValue: true,\n\t\t},\n\t\tpattern: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Pattern',\n\t\t\thint: `I'll filter all tests that match this pattern`,\n\t\t},\n\t\tinspect: {\n\t\t\ttype: 'number',\n\t\t\tlabel: 'Inspect',\n\t\t\thint: `Pass --inspect related args to test process.`,\n\t\t},\n\t\tshouldHoldAtStart: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Should wait for manual start?',\n\t\t\tdefaultValue: false,\n\t\t},\n\t\tshouldReturnImmediately: {\n\t\t\ttype: 'boolean',\n\t\t\tlabel: 'Wait until tests are finished',\n\t\t\tisPrivate: true,\n\t\t\tdefaultValue: false,\n\t\t\thint: 'For testing. Returns immediately after executing test so the running process can be managed programatically.',\n\t\t},\n\t\twatchMode: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Watch',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'off',\n\t\t\t\t\t\tlabel: 'Off',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'standard',\n\t\t\t\t\t\tlabel: 'Standard',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'smart',\n\t\t\t\t\t\tlabel: 'Smart',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,aADsB;EAE1BC,IAAI,EAAE,YAFoB;EAG1BC,WAAW,EAAE,qBAHa;EAI1BC,MAAM,EAAE;IACPC,wBAAwB,EAAE;MACzBC,IAAI,EAAE,SADmB;MAEzBC,KAAK,EAAE,sBAFkB;MAGzBC,IAAI,EAAE,0DAHmB;MAIzBC,YAAY,EAAE;IAJW,CADnB;IAOPC,OAAO,EAAE;MACRJ,IAAI,EAAE,MADE;MAERC,KAAK,EAAE,SAFC;MAGRC,IAAI;IAHI,CAPF;IAYPG,OAAO,EAAE;MACRL,IAAI,EAAE,QADE;MAERC,KAAK,EAAE,SAFC;MAGRC,IAAI;IAHI,CAZF;IAiBPI,iBAAiB,EAAE;MAClBN,IAAI,EAAE,SADY;MAElBC,KAAK,EAAE,+BAFW;MAGlBE,YAAY,EAAE;IAHI,CAjBZ;IAsBPI,uBAAuB,EAAE;MACxBP,IAAI,EAAE,SADkB;MAExBC,KAAK,EAAE,+BAFiB;MAGxBO,SAAS,EAAE,IAHa;MAIxBL,YAAY,EAAE,KAJU;MAKxBD,IAAI,EAAE;IALkB,CAtBlB;IA6BPO,SAAS,EAAE;MACVT,IAAI,EAAE,QADI;MAEVC,KAAK,EAAE,OAFG;MAGVS,OAAO,EAAE;QACRC,OAAO,EAAE,CACR;UACCC,KAAK,EAAE,KADR;UAECX,KAAK,EAAE;QAFR,CADQ,EAKR;UACCW,KAAK,EAAE,UADR;UAECX,KAAK,EAAE;QAFR,CALQ,EASR;UACCW,KAAK,EAAE,OADR;UAECX,KAAK,EAAE;QAFR,CATQ;MADD;IAHC;EA7BJ;AAJkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/upgradeSkillOptions.builder.ts"],"names":["id","name","description","fields","upgradeMode","type","label","defaultValue","options","choices","value"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,qBADsB;AAE1BC,EAAAA,IAAI,EAAE,sBAFoB;AAG1BC,EAAAA,WAAW,EAAE,+DAHa;AAI1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,WAAW,EAAE;AACZC,MAAAA,IAAI,EAAE,QADM;AAEZC,MAAAA,KAAK,EAAE,cAFK;AAGZC,MAAAA,YAAY,EAAE,eAHF;AAIZC,MAAAA,OAAO,EAAE;AACRC,QAAAA,OAAO,EAAE,CACR;AACCC,UAAAA,KAAK,EAAE,eADR;AAECJ,UAAAA,KAAK,EAAE;AAFR,SADQ,EAKR;AACCI,UAAAA,KAAK,EAAE,iBADR;AAECJ,UAAAA,KAAK,EAAE;AAFR,SALQ,EASR;AACCI,UAAAA,KAAK,EAAE,uBADR;AAECJ,UAAAA,KAAK,EAAE;AAFR,SATQ;AADD;AAJG;AADN;AAJkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'upgradeSkillOptions',\n\tname: 'Upgrade skill action',\n\tdescription: 'Upgrade. Everything. Heads up, this can take a few minutes. ⏱',\n\tfields: {\n\t\tupgradeMode: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Upgrade mode',\n\t\t\tdefaultValue: 'askForChanged',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'askForChanged',\n\t\t\t\t\t\tlabel: 'Ask for changed files',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'forceEverything',\n\t\t\t\t\t\tlabel: 'Force everything',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'forceRequiredSkipRest',\n\t\t\t\t\t\tlabel: 'Force required (skipping all non-essential)',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"file":"upgradeSkillOptions.builder.js"}
1
+ {"version":3,"file":"upgradeSkillOptions.builder.js","names":["id","name","description","fields","upgradeMode","type","label","defaultValue","options","choices","value"],"sources":["../../../src/schemas/v2020_07_22/upgradeSkillOptions.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'upgradeSkillOptions',\n\tname: 'Upgrade skill action',\n\tdescription: 'Upgrade. Everything. Heads up, this can take a few minutes. ⏱',\n\tfields: {\n\t\tupgradeMode: {\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Upgrade mode',\n\t\t\tdefaultValue: 'askForChanged',\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'askForChanged',\n\t\t\t\t\t\tlabel: 'Ask for changed files',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'forceEverything',\n\t\t\t\t\t\tlabel: 'Force everything',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'forceRequiredSkipRest',\n\t\t\t\t\t\tlabel: 'Force required (skipping all non-essential)',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;EAC1BA,EAAE,EAAE,qBADsB;EAE1BC,IAAI,EAAE,sBAFoB;EAG1BC,WAAW,EAAE,+DAHa;EAI1BC,MAAM,EAAE;IACPC,WAAW,EAAE;MACZC,IAAI,EAAE,QADM;MAEZC,KAAK,EAAE,cAFK;MAGZC,YAAY,EAAE,eAHF;MAIZC,OAAO,EAAE;QACRC,OAAO,EAAE,CACR;UACCC,KAAK,EAAE,eADR;UAECJ,KAAK,EAAE;QAFR,CADQ,EAKR;UACCI,KAAK,EAAE,iBADR;UAECJ,KAAK,EAAE;QAFR,CALQ,EASR;UACCI,KAAK,EAAE,uBADR;UAECJ,KAAK,EAAE;QAFR,CATQ;MADD;IAJG;EADN;AAJkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.ts"],"names":["fieldsSchema","id","fields","name","type","isRequired","path","description","action","options","choices","label","value","changes","isArray","schemas"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,YAAY,GAAG,yBAAY;AAChCC,EAAAA,EAAE,EAAE,qBAD4B;AAEhCC,EAAAA,MAAM,EAAE;AACPC,IAAAA,IAAI,EAAE;AACLC,MAAAA,IAAI,EAAE,MADD;AAELC,MAAAA,UAAU,EAAE;AAFP,KADC;AAKPC,IAAAA,IAAI,EAAE;AACLF,MAAAA,IAAI,EAAE,MADD;AAELC,MAAAA,UAAU,EAAE;AAFP,KALC;AASPE,IAAAA,WAAW,EAAE;AACZH,MAAAA,IAAI,EAAE;AADM,KATN;AAYPI,IAAAA,MAAM,EAAE;AACPJ,MAAAA,IAAI,EAAE,QADC;AAEPC,MAAAA,UAAU,EAAE,IAFL;AAGPI,MAAAA,OAAO,EAAE;AACRC,QAAAA,OAAO,EAAE,CACR;AACCC,UAAAA,KAAK,EAAE,SADR;AAECC,UAAAA,KAAK,EAAE;AAFR,SADQ,EAKR;AACCD,UAAAA,KAAK,EAAE,WADR;AAECC,UAAAA,KAAK,EAAE;AAFR,SALQ,EASR;AACCD,UAAAA,KAAK,EAAE,SADR;AAECC,UAAAA,KAAK,EAAE;AAFR,SATQ,EAaR;AACCD,UAAAA,KAAK,EAAE,SADR;AAECC,UAAAA,KAAK,EAAE;AAFR,SAbQ;AADD;AAHF;AAZD;AAFwB,CAAZ,CAArB;;eAyCe,yBAAY;AAC1BX,EAAAA,EAAE,EAAE,oCADsB;AAE1BE,EAAAA,IAAI,EAAE,yCAFoB;AAG1BD,EAAAA,MAAM,EAAE;AACPW,IAAAA,OAAO,EAAE;AACRT,MAAAA,IAAI,EAAE,QADE;AAERC,MAAAA,UAAU,EAAE,IAFJ;AAGRS,MAAAA,OAAO,EAAE,IAHD;AAIRL,MAAAA,OAAO,EAAE;AACRM,QAAAA,OAAO,EAAE,CACR,yBAAY;AACXd,UAAAA,EAAE,EAAE,eADO;AAEXC,UAAAA,MAAM,EAAEF,YAAY,CAACE;AAFV,SAAZ,CADQ,EAKR,yBAAY;AACXD,UAAAA,EAAE,EAAE,cADO;AAEXC,UAAAA,MAAM,EAAEF,YAAY,CAACE;AAFV,SAAZ,CALQ;AADD;AAJD;AADF;AAHkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nconst fieldsSchema = buildSchema({\n\tid: 'generatedFileFields',\n\tfields: {\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t},\n\t\tpath: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t},\n\t\tdescription: {\n\t\t\ttype: 'text',\n\t\t},\n\t\taction: {\n\t\t\ttype: 'select',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Skipped',\n\t\t\t\t\t\tvalue: 'skipped',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Generated',\n\t\t\t\t\t\tvalue: 'generated',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Updated',\n\t\t\t\t\t\tvalue: 'updated',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Deleted',\n\t\t\t\t\t\tvalue: 'deleted',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n\nexport default buildSchema({\n\tid: 'watcherDidDetectChangesEmitPayload',\n\tname: 'Watcher did detect changes emit payload',\n\tfields: {\n\t\tchanges: {\n\t\t\ttype: 'schema',\n\t\t\tisRequired: true,\n\t\t\tisArray: true,\n\t\t\toptions: {\n\t\t\t\tschemas: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'generatedFile',\n\t\t\t\t\t\tfields: fieldsSchema.fields,\n\t\t\t\t\t}),\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'generatedDir',\n\t\t\t\t\t\tfields: fieldsSchema.fields,\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"file":"watcherDidDetectChangesEmitPayload.builder.js"}
1
+ {"version":3,"file":"watcherDidDetectChangesEmitPayload.builder.js","names":["fieldsSchema","id","fields","name","type","isRequired","path","description","action","options","choices","label","value","changes","isArray","schemas"],"sources":["../../../src/schemas/v2020_07_22/watcherDidDetectChangesEmitPayload.builder.ts"],"sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nconst fieldsSchema = buildSchema({\n\tid: 'generatedFileFields',\n\tfields: {\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t},\n\t\tpath: {\n\t\t\ttype: 'text',\n\t\t\tisRequired: true,\n\t\t},\n\t\tdescription: {\n\t\t\ttype: 'text',\n\t\t},\n\t\taction: {\n\t\t\ttype: 'select',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Skipped',\n\t\t\t\t\t\tvalue: 'skipped',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Generated',\n\t\t\t\t\t\tvalue: 'generated',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Updated',\n\t\t\t\t\t\tvalue: 'updated',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: 'Deleted',\n\t\t\t\t\t\tvalue: 'deleted',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n\nexport default buildSchema({\n\tid: 'watcherDidDetectChangesEmitPayload',\n\tname: 'Watcher did detect changes emit payload',\n\tfields: {\n\t\tchanges: {\n\t\t\ttype: 'schema',\n\t\t\tisRequired: true,\n\t\t\tisArray: true,\n\t\t\toptions: {\n\t\t\t\tschemas: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'generatedFile',\n\t\t\t\t\t\tfields: fieldsSchema.fields,\n\t\t\t\t\t}),\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'generatedDir',\n\t\t\t\t\t\tfields: fieldsSchema.fields,\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n})\n"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,YAAY,GAAG,yBAAY;EAChCC,EAAE,EAAE,qBAD4B;EAEhCC,MAAM,EAAE;IACPC,IAAI,EAAE;MACLC,IAAI,EAAE,MADD;MAELC,UAAU,EAAE;IAFP,CADC;IAKPC,IAAI,EAAE;MACLF,IAAI,EAAE,MADD;MAELC,UAAU,EAAE;IAFP,CALC;IASPE,WAAW,EAAE;MACZH,IAAI,EAAE;IADM,CATN;IAYPI,MAAM,EAAE;MACPJ,IAAI,EAAE,QADC;MAEPC,UAAU,EAAE,IAFL;MAGPI,OAAO,EAAE;QACRC,OAAO,EAAE,CACR;UACCC,KAAK,EAAE,SADR;UAECC,KAAK,EAAE;QAFR,CADQ,EAKR;UACCD,KAAK,EAAE,WADR;UAECC,KAAK,EAAE;QAFR,CALQ,EASR;UACCD,KAAK,EAAE,SADR;UAECC,KAAK,EAAE;QAFR,CATQ,EAaR;UACCD,KAAK,EAAE,SADR;UAECC,KAAK,EAAE;QAFR,CAbQ;MADD;IAHF;EAZD;AAFwB,CAAZ,CAArB;;eAyCe,yBAAY;EAC1BX,EAAE,EAAE,oCADsB;EAE1BE,IAAI,EAAE,yCAFoB;EAG1BD,MAAM,EAAE;IACPW,OAAO,EAAE;MACRT,IAAI,EAAE,QADE;MAERC,UAAU,EAAE,IAFJ;MAGRS,OAAO,EAAE,IAHD;MAIRL,OAAO,EAAE;QACRM,OAAO,EAAE,CACR,yBAAY;UACXd,EAAE,EAAE,eADO;UAEXC,MAAM,EAAEF,YAAY,CAACE;QAFV,CAAZ,CADQ,EAKR,yBAAY;UACXD,EAAE,EAAE,cADO;UAEXC,MAAM,EAAEF,YAAY,CAACE;QAFV,CAAZ,CALQ;MADD;IAJD;EADF;AAHkB,CAAZ,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/BuildService.ts"],"names":["BuildService","commandService","lintService","cwd","options","shouldFixLintFirst","fix","execute","results"],"mappings":";;;;;;;;;;;;;;;;;;;IAGqBA,Y;AAYpB,wBAAmBC,cAAnB,EAAmDC,WAAnD,EAA6E;AAAA;AAAA;AAAA;AAC5E,SAAKD,cAAL,GAAsBA,cAAtB;AACA,SAAKC,WAAL,GAAmBA,WAAnB;AACA;;;;SAVD,eAAiB;AAChB,aAAO,KAAKD,cAAL,CAAoBE,GAA3B;AACA,K;SAND,aAAeA,GAAf,EAA4B;AAC3B,WAAKF,cAAL,CAAoBE,GAApB,GAA0BA,GAA1B;AACA;;;;iGAcD,iBAAmBC,OAAnB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBACK,CAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEC,kBAAT,MAAgC,KADrC;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAEQ,KAAKH,WAAL,CAAiBI,GAAjB,CAAqB,SAArB,CAFR;;AAAA;AAAA;AAAA,uBAIuB,KAAKL,cAAL,CAAoBM,OAApB,kBAJvB;;AAAA;AAIOC,gBAAAA,OAJP;AAAA,iDAKQA,OALR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O","sourcesContent":["import CommandService from './CommandService'\nimport LintService from './LintService'\n\nexport default class BuildService {\n\tpublic set cwd(cwd: string) {\n\t\tthis.commandService.cwd = cwd\n\t}\n\n\tpublic get cwd() {\n\t\treturn this.commandService.cwd\n\t}\n\n\tprivate commandService: CommandService\n\tprivate lintService: LintService\n\n\tpublic constructor(commandService: CommandService, lintService: LintService) {\n\t\tthis.commandService = commandService\n\t\tthis.lintService = lintService\n\t}\n\n\tpublic async build(options?: { shouldFixLintFirst?: boolean }) {\n\t\tif (options?.shouldFixLintFirst !== false) {\n\t\t\tawait this.lintService.fix('**/*.ts')\n\t\t}\n\t\tconst results = await this.commandService.execute(`yarn build.dev`)\n\t\treturn results\n\t}\n}\n"],"file":"BuildService.js"}
1
+ {"version":3,"file":"BuildService.js","names":["BuildService","commandService","lintService","cwd","options","shouldFixLintFirst","fix","execute","results"],"sources":["../../src/services/BuildService.ts"],"sourcesContent":["import CommandService from './CommandService'\nimport LintService from './LintService'\n\nexport default class BuildService {\n\tpublic set cwd(cwd: string) {\n\t\tthis.commandService.cwd = cwd\n\t}\n\n\tpublic get cwd() {\n\t\treturn this.commandService.cwd\n\t}\n\n\tprivate commandService: CommandService\n\tprivate lintService: LintService\n\n\tpublic constructor(commandService: CommandService, lintService: LintService) {\n\t\tthis.commandService = commandService\n\t\tthis.lintService = lintService\n\t}\n\n\tpublic async build(options?: { shouldFixLintFirst?: boolean }) {\n\t\tif (options?.shouldFixLintFirst !== false) {\n\t\t\tawait this.lintService.fix('**/*.ts')\n\t\t}\n\t\tconst results = await this.commandService.execute(`yarn build.dev`)\n\t\treturn results\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;IAGqBA,Y;EAYpB,sBAAmBC,cAAnB,EAAmDC,WAAnD,EAA6E;IAAA;IAAA;IAAA;IAC5E,KAAKD,cAAL,GAAsBA,cAAtB;IACA,KAAKC,WAAL,GAAmBA,WAAnB;EACA;;;;SAVD,eAAiB;MAChB,OAAO,KAAKD,cAAL,CAAoBE,GAA3B;IACA,C;SAND,aAAeA,GAAf,EAA4B;MAC3B,KAAKF,cAAL,CAAoBE,GAApB,GAA0BA,GAA1B;IACA;;;;iGAcD,iBAAmBC,OAAnB;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,MACK,CAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEC,kBAAT,MAAgC,KADrC;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OAEQ,KAAKH,WAAL,CAAiBI,GAAjB,CAAqB,SAArB,CAFR;;cAAA;gBAAA;gBAAA,OAIuB,KAAKL,cAAL,CAAoBM,OAApB,kBAJvB;;cAAA;gBAIOC,OAJP;gBAAA,iCAKQA,OALR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/CommandService.ts"],"names":["process","setMaxListeners","CommandService","cwd","activeChildProcess","pid","ignoreCloseErrors","cmd","options","args","executable","shift","boundKill","kill","bind","Error","getMockResponse","mockResponse","mockKey","commandsRunCapturedByMockResponses","push","callback","code","SpruceError","join","stdout","stderr","on","Promise","resolve","reject","spawnOptions","shouldStream","stdio","env","PATH","IS_CLI","FORCE_COLOR","forceColor","shell","child","outStream","pipe","addListener","data","onData","toString","onError","closeHandler","off","undefined","setTimeout","removeAllListeners","ignoreErrors","search","ERROR_DIVIDER","stderrParts","split","err","AbstractSpruceError","parse","trim","commands","mockResponses","match","find","r","command","RegExp","replace","response","unshift"],"mappings":"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","sourcesContent":["import { spawn, SpawnOptions, ChildProcess } from 'child_process'\nimport { Writable } from 'stream'\nimport AbstractSpruceError from '@sprucelabs/error'\nimport { ERROR_DIVIDER } from '@sprucelabs/spruce-skill-utils'\nimport escapeRegExp from 'lodash/escapeRegExp'\nimport stringArgv from 'string-argv'\nimport treeKill from 'tree-kill'\nimport SpruceError from '../errors/SpruceError'\n\nprocess.setMaxListeners(100)\n\ninterface MockResponse {\n\tcode: number\n\tstdout?: string\n\tstderr?: string\n\tcallback?: (executable: string, args: any[]) => void\n}\n\nexport default class CommandService {\n\tpublic cwd: string\n\tprivate activeChildProcess: ChildProcess | undefined\n\tprivate ignoreCloseErrors = false\n\tprivate static mockResponses: {\n\t\tcommand: string | RegExp\n\t\tresponse: MockResponse\n\t}[] = []\n\tprivate static commandsRunCapturedByMockResponses: string[] = []\n\n\tpublic constructor(cwd: string) {\n\t\tthis.cwd = cwd\n\t}\n\n\tpublic async execute(\n\t\tcmd: string,\n\t\toptions?: {\n\t\t\tignoreErrors?: boolean\n\t\t\targs?: string[]\n\t\t\tshouldStream?: boolean\n\t\t\toutStream?: Writable\n\t\t\tonError?: (error: string) => void\n\t\t\tonData?: (data: string) => void\n\t\t\tspawnOptions?: SpawnOptions\n\t\t\tforceColor?: boolean\n\t\t\tenv?: Record<string, any>\n\t\t}\n\t): Promise<{\n\t\tstdout: string\n\t}> {\n\t\tconst cwd = this.cwd\n\t\tconst args = options?.args || stringArgv(cmd)\n\t\tconst executable = options?.args ? cmd : args.shift()\n\t\tconst boundKill = this.kill.bind(this)\n\n\t\tif (!executable) {\n\t\t\tthrow new Error('Bad params sent to command service')\n\t\t}\n\n\t\tconst { mockResponse, mockKey } = this.getMockResponse(executable, args)\n\n\t\tif (mockResponse) {\n\t\t\tCommandService.commandsRunCapturedByMockResponses.push(mockKey)\n\t\t\tmockResponse.callback?.(executable, args)\n\n\t\t\tif (mockResponse.code !== 0) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'EXECUTING_COMMAND_FAILED',\n\t\t\t\t\tcmd: `${executable} ${args.join(' ')}`,\n\t\t\t\t\tcwd,\n\t\t\t\t\tstdout: mockResponse.stdout,\n\t\t\t\t\tstderr: mockResponse.stderr,\n\t\t\t\t})\n\t\t\t}\n\n\t\t\treturn { stdout: mockResponse.stdout ?? '' }\n\t\t}\n\n\t\tprocess.on('exit', boundKill)\n\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tlet stdout = ''\n\t\t\tlet stderr = ''\n\t\t\tconst spawnOptions: SpawnOptions = options?.shouldStream\n\t\t\t\t? {\n\t\t\t\t\t\tstdio: 'inherit',\n\t\t\t\t\t\tcwd,\n\t\t\t\t\t\tenv: {\n\t\t\t\t\t\t\tPATH: process.env.PATH,\n\t\t\t\t\t\t\tIS_CLI: 'true',\n\t\t\t\t\t\t\tFORCE_COLOR: options?.forceColor ? '1' : '0',\n\t\t\t\t\t\t\t...options?.env,\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {\n\t\t\t\t\t\tcwd,\n\t\t\t\t\t\tenv: {\n\t\t\t\t\t\t\tPATH: process.env.PATH,\n\t\t\t\t\t\t\tIS_CLI: 'true',\n\t\t\t\t\t\t\tFORCE_COLOR: options?.forceColor ? '1' : '0',\n\t\t\t\t\t\t\t...options?.env,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tshell: true,\n\t\t\t\t\t\t...options?.spawnOptions,\n\t\t\t\t }\n\n\t\t\tconst child = spawn(executable, args, spawnOptions)\n\t\t\tthis.activeChildProcess = child\n\n\t\t\tif (options?.outStream) {\n\t\t\t\tchild.stdout?.pipe(options.outStream)\n\t\t\t}\n\n\t\t\tchild.stdout?.addListener('data', (data) => {\n\t\t\t\toptions?.onData?.(data.toString())\n\t\t\t\tstdout += data\n\t\t\t})\n\n\t\t\tchild.stderr?.addListener('data', (data) => {\n\t\t\t\toptions?.onError?.(data.toString())\n\t\t\t\tstderr += data\n\t\t\t})\n\n\t\t\tconst closeHandler = (code: number) => {\n\t\t\t\tprocess.off('exit', boundKill)\n\n\t\t\t\tif (!this.activeChildProcess) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tthis.activeChildProcess = undefined\n\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tchild.stdout?.removeAllListeners()\n\t\t\t\t\tchild.stderr?.removeAllListeners()\n\t\t\t\t\tchild.removeAllListeners()\n\n\t\t\t\t\tif (code === 0 || this.ignoreCloseErrors || options?.ignoreErrors) {\n\t\t\t\t\t\tresolve({ stdout })\n\t\t\t\t\t\tthis.ignoreCloseErrors = false\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (stderr.search(escapeRegExp(ERROR_DIVIDER)) > -1) {\n\t\t\t\t\t\t\tconst stderrParts = stderr.split(ERROR_DIVIDER)\n\t\t\t\t\t\t\tconst err = AbstractSpruceError.parse(stderrParts[1], SpruceError)\n\t\t\t\t\t\t\treject(err)\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treject(\n\t\t\t\t\t\t\tnew SpruceError({\n\t\t\t\t\t\t\t\tcode: 'EXECUTING_COMMAND_FAILED',\n\t\t\t\t\t\t\t\tcmd: `${executable} ${args.join(' ')}`,\n\t\t\t\t\t\t\t\tcwd,\n\t\t\t\t\t\t\t\tstdout,\n\t\t\t\t\t\t\t\tstderr,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t}, 0)\n\t\t\t}\n\n\t\t\tchild.addListener('close', closeHandler)\n\t\t\tchild.addListener('exit', closeHandler)\n\t\t})\n\t}\n\n\tpublic kill = () => {\n\t\tif (this.activeChildProcess?.pid) {\n\t\t\tthis.ignoreCloseErrors = true\n\t\t\ttreeKill(this.activeChildProcess.pid, 'SIGTERM')\n\t\t}\n\t}\n\n\tpublic pid = () => {\n\t\treturn this.activeChildProcess?.pid\n\t}\n\n\tprivate getMockResponse(executable: string, args: string[]) {\n\t\tconst mockKey = `${executable} ${args.join(' ')}`.trim()\n\t\tconst commands = CommandService.mockResponses\n\t\tconst match = commands.find((r) =>\n\t\t\tr.command instanceof RegExp\n\t\t\t\t? mockKey.search(r.command) > -1\n\t\t\t\t: r.command.replace(/ +/gis, '') === mockKey.replace(/ +/gis, '')\n\t\t)\n\n\t\treturn { mockResponse: match?.response, mockKey }\n\t}\n\n\tpublic static fakeCommand(command: string | RegExp, response: MockResponse) {\n\t\tthis.mockResponses.unshift({\n\t\t\tcommand,\n\t\t\tresponse,\n\t\t})\n\t}\n\n\tpublic static clearMockResponses() {\n\t\tthis.mockResponses = []\n\t}\n}\n"],"file":"CommandService.js"}
1
+ {"version":3,"file":"CommandService.js","names":["process","setMaxListeners","CommandService","cwd","activeChildProcess","pid","ignoreCloseErrors","cmd","options","args","executable","shift","boundKill","kill","bind","Error","getMockResponse","mockResponse","mockKey","commandsRunCapturedByMockResponses","push","callback","code","SpruceError","join","stdout","stderr","on","Promise","resolve","reject","spawnOptions","shouldStream","stdio","env","PATH","IS_CLI","FORCE_COLOR","forceColor","shell","child","outStream","pipe","addListener","data","onData","toString","onError","closeHandler","off","undefined","setTimeout","removeAllListeners","ignoreErrors","search","ERROR_DIVIDER","stderrParts","split","err","AbstractSpruceError","parse","trim","commands","mockResponses","match","find","r","command","RegExp","replace","response","unshift"],"sources":["../../src/services/CommandService.ts"],"sourcesContent":["import { spawn, SpawnOptions, ChildProcess } from 'child_process'\nimport { Writable } from 'stream'\nimport AbstractSpruceError from '@sprucelabs/error'\nimport { ERROR_DIVIDER } from '@sprucelabs/spruce-skill-utils'\nimport escapeRegExp from 'lodash/escapeRegExp'\nimport stringArgv from 'string-argv'\nimport treeKill from 'tree-kill'\nimport SpruceError from '../errors/SpruceError'\n\nprocess.setMaxListeners(100)\n\ninterface MockResponse {\n\tcode: number\n\tstdout?: string\n\tstderr?: string\n\tcallback?: (executable: string, args: any[]) => void\n}\n\nexport default class CommandService {\n\tpublic cwd: string\n\tprivate activeChildProcess: ChildProcess | undefined\n\tprivate ignoreCloseErrors = false\n\tprivate static mockResponses: {\n\t\tcommand: string | RegExp\n\t\tresponse: MockResponse\n\t}[] = []\n\tprivate static commandsRunCapturedByMockResponses: string[] = []\n\n\tpublic constructor(cwd: string) {\n\t\tthis.cwd = cwd\n\t}\n\n\tpublic async execute(\n\t\tcmd: string,\n\t\toptions?: {\n\t\t\tignoreErrors?: boolean\n\t\t\targs?: string[]\n\t\t\tshouldStream?: boolean\n\t\t\toutStream?: Writable\n\t\t\tonError?: (error: string) => void\n\t\t\tonData?: (data: string) => void\n\t\t\tspawnOptions?: SpawnOptions\n\t\t\tforceColor?: boolean\n\t\t\tenv?: Record<string, any>\n\t\t}\n\t): Promise<{\n\t\tstdout: string\n\t}> {\n\t\tconst cwd = this.cwd\n\t\tconst args = options?.args || stringArgv(cmd)\n\t\tconst executable = options?.args ? cmd : args.shift()\n\t\tconst boundKill = this.kill.bind(this)\n\n\t\tif (!executable) {\n\t\t\tthrow new Error('Bad params sent to command service')\n\t\t}\n\n\t\tconst { mockResponse, mockKey } = this.getMockResponse(executable, args)\n\n\t\tif (mockResponse) {\n\t\t\tCommandService.commandsRunCapturedByMockResponses.push(mockKey)\n\t\t\tmockResponse.callback?.(executable, args)\n\n\t\t\tif (mockResponse.code !== 0) {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'EXECUTING_COMMAND_FAILED',\n\t\t\t\t\tcmd: `${executable} ${args.join(' ')}`,\n\t\t\t\t\tcwd,\n\t\t\t\t\tstdout: mockResponse.stdout,\n\t\t\t\t\tstderr: mockResponse.stderr,\n\t\t\t\t})\n\t\t\t}\n\n\t\t\treturn { stdout: mockResponse.stdout ?? '' }\n\t\t}\n\n\t\tprocess.on('exit', boundKill)\n\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tlet stdout = ''\n\t\t\tlet stderr = ''\n\t\t\tconst spawnOptions: SpawnOptions = options?.shouldStream\n\t\t\t\t? {\n\t\t\t\t\t\tstdio: 'inherit',\n\t\t\t\t\t\tcwd,\n\t\t\t\t\t\tenv: {\n\t\t\t\t\t\t\tPATH: process.env.PATH,\n\t\t\t\t\t\t\tIS_CLI: 'true',\n\t\t\t\t\t\t\tFORCE_COLOR: options?.forceColor ? '1' : '0',\n\t\t\t\t\t\t\t...options?.env,\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {\n\t\t\t\t\t\tcwd,\n\t\t\t\t\t\tenv: {\n\t\t\t\t\t\t\tPATH: process.env.PATH,\n\t\t\t\t\t\t\tIS_CLI: 'true',\n\t\t\t\t\t\t\tFORCE_COLOR: options?.forceColor ? '1' : '0',\n\t\t\t\t\t\t\t...options?.env,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tshell: true,\n\t\t\t\t\t\t...options?.spawnOptions,\n\t\t\t\t }\n\n\t\t\tconst child = spawn(executable, args, spawnOptions)\n\t\t\tthis.activeChildProcess = child\n\n\t\t\tif (options?.outStream) {\n\t\t\t\tchild.stdout?.pipe(options.outStream)\n\t\t\t}\n\n\t\t\tchild.stdout?.addListener('data', (data) => {\n\t\t\t\toptions?.onData?.(data.toString())\n\t\t\t\tstdout += data\n\t\t\t})\n\n\t\t\tchild.stderr?.addListener('data', (data) => {\n\t\t\t\toptions?.onError?.(data.toString())\n\t\t\t\tstderr += data\n\t\t\t})\n\n\t\t\tconst closeHandler = (code: number) => {\n\t\t\t\tprocess.off('exit', boundKill)\n\n\t\t\t\tif (!this.activeChildProcess) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tthis.activeChildProcess = undefined\n\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tchild.stdout?.removeAllListeners()\n\t\t\t\t\tchild.stderr?.removeAllListeners()\n\t\t\t\t\tchild.removeAllListeners()\n\n\t\t\t\t\tif (code === 0 || this.ignoreCloseErrors || options?.ignoreErrors) {\n\t\t\t\t\t\tresolve({ stdout })\n\t\t\t\t\t\tthis.ignoreCloseErrors = false\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (stderr.search(escapeRegExp(ERROR_DIVIDER)) > -1) {\n\t\t\t\t\t\t\tconst stderrParts = stderr.split(ERROR_DIVIDER)\n\t\t\t\t\t\t\tconst err = AbstractSpruceError.parse(stderrParts[1], SpruceError)\n\t\t\t\t\t\t\treject(err)\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treject(\n\t\t\t\t\t\t\tnew SpruceError({\n\t\t\t\t\t\t\t\tcode: 'EXECUTING_COMMAND_FAILED',\n\t\t\t\t\t\t\t\tcmd: `${executable} ${args.join(' ')}`,\n\t\t\t\t\t\t\t\tcwd,\n\t\t\t\t\t\t\t\tstdout,\n\t\t\t\t\t\t\t\tstderr,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t}, 0)\n\t\t\t}\n\n\t\t\tchild.addListener('close', closeHandler)\n\t\t\tchild.addListener('exit', closeHandler)\n\t\t})\n\t}\n\n\tpublic kill = () => {\n\t\tif (this.activeChildProcess?.pid) {\n\t\t\tthis.ignoreCloseErrors = true\n\t\t\ttreeKill(this.activeChildProcess.pid, 'SIGTERM')\n\t\t}\n\t}\n\n\tpublic pid = () => {\n\t\treturn this.activeChildProcess?.pid\n\t}\n\n\tprivate getMockResponse(executable: string, args: string[]) {\n\t\tconst mockKey = `${executable} ${args.join(' ')}`.trim()\n\t\tconst commands = CommandService.mockResponses\n\t\tconst match = commands.find((r) =>\n\t\t\tr.command instanceof RegExp\n\t\t\t\t? mockKey.search(r.command) > -1\n\t\t\t\t: r.command.replace(/ +/gis, '') === mockKey.replace(/ +/gis, '')\n\t\t)\n\n\t\treturn { mockResponse: match?.response, mockKey }\n\t}\n\n\tpublic static fakeCommand(command: string | RegExp, response: MockResponse) {\n\t\tthis.mockResponses.unshift({\n\t\t\tcommand,\n\t\t\tresponse,\n\t\t})\n\t}\n\n\tpublic static clearMockResponses() {\n\t\tthis.mockResponses = []\n\t}\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/DependencyService.ts"],"names":["DependencyService","settings","dependencies","set","dependency","assertDependencyDoesNotExist","namespace","get","push","match","find","d","SpruceError","code"],"mappings":";;;;;;;;;;;;;;;AACA;;IAOqBA,iB;AAEpB,6BAAmBC,QAAnB,EAA8C;AAAA;AAAA;AAC7C,SAAKA,QAAL,GAAgBA,QAAhB;AACA;;;;WAED,aAAWC,YAAX,EAAuC;AACtC,WAAKD,QAAL,CAAcE,GAAd,CAAkB,cAAlB,EAAkCD,YAAlC;AACA;;;WAED,aAAWE,UAAX,EAAmC;AAAA;;AAClC,WAAKC,4BAAL,CAAkCD,UAAU,CAACE,SAA7C;AAEA,UAAMJ,YAAY,yBAAG,KAAKD,QAAL,CAAcM,GAAd,CAAkB,cAAlB,CAAH,mEAAwC,EAA1D;AACAL,MAAAA,YAAY,CAACM,IAAb,CAAkBJ,UAAlB;AACA,WAAKH,QAAL,CAAcE,GAAd,CAAkB,cAAlB,EAAkCD,YAAlC;AACA;;;WACD,sCAAqCI,SAArC,EAAwD;AACvD,UAAMJ,YAAY,GAAG,KAAKK,GAAL,EAArB;AACA,UAAME,KAAK,GAAGP,YAAY,CAACQ,IAAb,CAAkB,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACL,SAAF,KAAgBA,SAAvB;AAAA,OAAlB,CAAd;;AAEA,UAAIG,KAAJ,EAAW;AACV,cAAM,IAAIG,uBAAJ,CAAgB;AACrBC,UAAAA,IAAI,EAAE,mBADe;AAErBP,UAAAA,SAAS,EAATA;AAFqB,SAAhB,CAAN;AAIA;AACD;;;WAED,eAA2B;AAAA;;AAC1B,oCAAO,KAAKL,QAAL,CAAcM,GAAd,CAAkB,cAAlB,CAAP,qEAA4C,EAA5C;AACA","sourcesContent":["import { SettingsService } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../errors/SpruceError'\n\ninterface Dependency {\n\tid: string\n\tnamespace: string\n}\n\nexport default class DependencyService {\n\tprivate settings: SettingsService<string>\n\tpublic constructor(settings: SettingsService) {\n\t\tthis.settings = settings\n\t}\n\n\tpublic set(dependencies: Dependency[]) {\n\t\tthis.settings.set('dependencies', dependencies)\n\t}\n\n\tpublic add(dependency: Dependency) {\n\t\tthis.assertDependencyDoesNotExist(dependency.namespace)\n\n\t\tconst dependencies = this.settings.get('dependencies') ?? []\n\t\tdependencies.push(dependency)\n\t\tthis.settings.set('dependencies', dependencies)\n\t}\n\tprivate assertDependencyDoesNotExist(namespace: string) {\n\t\tconst dependencies = this.get()\n\t\tconst match = dependencies.find((d) => d.namespace === namespace)\n\n\t\tif (match) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPENDENCY_EXISTS',\n\t\t\t\tnamespace,\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic get(): Dependency[] {\n\t\treturn this.settings.get('dependencies') ?? []\n\t}\n}\n"],"file":"DependencyService.js"}
1
+ {"version":3,"file":"DependencyService.js","names":["DependencyService","settings","dependencies","set","dependency","assertDependencyDoesNotExist","namespace","get","push","match","find","d","SpruceError","code"],"sources":["../../src/services/DependencyService.ts"],"sourcesContent":["import { SettingsService } from '@sprucelabs/spruce-skill-utils'\nimport SpruceError from '../errors/SpruceError'\n\ninterface Dependency {\n\tid: string\n\tnamespace: string\n}\n\nexport default class DependencyService {\n\tprivate settings: SettingsService<string>\n\tpublic constructor(settings: SettingsService) {\n\t\tthis.settings = settings\n\t}\n\n\tpublic set(dependencies: Dependency[]) {\n\t\tthis.settings.set('dependencies', dependencies)\n\t}\n\n\tpublic add(dependency: Dependency) {\n\t\tthis.assertDependencyDoesNotExist(dependency.namespace)\n\n\t\tconst dependencies = this.settings.get('dependencies') ?? []\n\t\tdependencies.push(dependency)\n\t\tthis.settings.set('dependencies', dependencies)\n\t}\n\tprivate assertDependencyDoesNotExist(namespace: string) {\n\t\tconst dependencies = this.get()\n\t\tconst match = dependencies.find((d) => d.namespace === namespace)\n\n\t\tif (match) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'DEPENDENCY_EXISTS',\n\t\t\t\tnamespace,\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic get(): Dependency[] {\n\t\treturn this.settings.get('dependencies') ?? []\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;AACA;;IAOqBA,iB;EAEpB,2BAAmBC,QAAnB,EAA8C;IAAA;IAAA;IAC7C,KAAKA,QAAL,GAAgBA,QAAhB;EACA;;;;WAED,aAAWC,YAAX,EAAuC;MACtC,KAAKD,QAAL,CAAcE,GAAd,CAAkB,cAAlB,EAAkCD,YAAlC;IACA;;;WAED,aAAWE,UAAX,EAAmC;MAAA;;MAClC,KAAKC,4BAAL,CAAkCD,UAAU,CAACE,SAA7C;MAEA,IAAMJ,YAAY,yBAAG,KAAKD,QAAL,CAAcM,GAAd,CAAkB,cAAlB,CAAH,mEAAwC,EAA1D;MACAL,YAAY,CAACM,IAAb,CAAkBJ,UAAlB;MACA,KAAKH,QAAL,CAAcE,GAAd,CAAkB,cAAlB,EAAkCD,YAAlC;IACA;;;WACD,sCAAqCI,SAArC,EAAwD;MACvD,IAAMJ,YAAY,GAAG,KAAKK,GAAL,EAArB;MACA,IAAME,KAAK,GAAGP,YAAY,CAACQ,IAAb,CAAkB,UAACC,CAAD;QAAA,OAAOA,CAAC,CAACL,SAAF,KAAgBA,SAAvB;MAAA,CAAlB,CAAd;;MAEA,IAAIG,KAAJ,EAAW;QACV,MAAM,IAAIG,uBAAJ,CAAgB;UACrBC,IAAI,EAAE,mBADe;UAErBP,SAAS,EAATA;QAFqB,CAAhB,CAAN;MAIA;IACD;;;WAED,eAA2B;MAAA;;MAC1B,8BAAO,KAAKL,QAAL,CAAcM,GAAd,CAAkB,cAAlB,CAAP,qEAA4C,EAA5C;IACA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/GameService.ts"],"names":["GameService","command","ui","cwd","diskUtil","resolvePath","__dirname","message","statusMessage","introductionSentences","sentencesToPlay","stopLoading","killed","length","next","shift","renderLine","Promise","r","setTimeout","execute","spawnOptions","stdio","process","stdin","onData","data","stdout","write","saveCursor","moveCursorTo","clearBelowCursor","restoreCursor","kill","clear"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;IAIqBA,W;AAMpB,uBAAmBC,OAAnB,EAA4CC,EAA5C,EAAmE;AAAA;AAAA;AAAA;AAAA;AAAA,qDAFlD,KAEkD;AAClE,SAAKD,OAAL,GAAeA,OAAf;AACA,SAAKC,EAAL,GAAUA,EAAV;AACA,SAAKD,OAAL,CAAaE,GAAb,GAAmBC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,QAAhC,CAAnB;AACA;;;;WAED,0BAAwBC,OAAxB,EAAyC;AACxC,WAAKC,aAAL,GAAqBD,OAArB;AACA;;;;gGAED;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkBE,gBAAAA,qBAAlB,2DAAoD,EAApD;AACOC,gBAAAA,eADP,uCAC6BD,qBAD7B;AAAA;AAAA,uBAEO,KAAKP,EAAL,CAAQS,WAAR,EAFP;;AAAA;AAGC,qBAAKC,MAAL,GAAc,KAAd;;AAHD;AAAA,sBAKQF,eAAe,CAACG,MAAhB,GAAyB,CALjC;AAAA;AAAA;AAAA;;AAMQC,gBAAAA,IANR,GAMeJ,eAAe,CAACK,KAAhB,EANf;AAOE,qBAAKb,EAAL,CAAQc,UAAR,CAAmBF,IAAnB;AAPF;AAAA,uBAQQ,IAAIG,OAAJ,CAAY,UAACC,CAAD;AAAA,yBAAOC,UAAU,CAACD,CAAD,EAAI,IAAJ,CAAjB;AAAA,iBAAZ,CARR;;AAAA;AAAA,qBASM,KAAKN,MATX;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA,uBAcO,KAAKX,OAAL,CAAamB,OAAb,CAAqB,wCAArB,EAA+D;AACpEC,kBAAAA,YAAY,EAAE;AACbC,oBAAAA,KAAK,EAAE,CAACC,OAAO,CAACC,KAAT,EAAgB,MAAhB,EAAwB,MAAxB;AADM,mBADsD;AAIpEC,kBAAAA,MAAM,EAAE,gBAACC,IAAD,EAAkB;AACzB,wBAAI,CAAC,KAAI,CAACd,MAAV,EAAkB;AAAA;;AACjB,yCAAAW,OAAO,CAACI,MAAR,oEAAgBC,KAAhB,CAAsBF,IAAtB;;AACA,0BAAI,KAAI,CAAClB,aAAT,EAAwB;AAAA;;AACvB,wBAAA,KAAI,CAACN,EAAL,CAAQ2B,UAAR;;AACA,wBAAA,KAAI,CAAC3B,EAAL,CAAQ4B,YAAR,CAAqB,CAArB,EAAwB,EAAxB;;AACA,wBAAA,KAAI,CAAC5B,EAAL,CAAQ6B,gBAAR;;AACA,4CAAAR,OAAO,CAACI,MAAR,sEAAgBC,KAAhB,CAAsB,KAAI,CAACpB,aAA3B;;AACA,wBAAA,KAAI,CAACN,EAAL,CAAQ8B,aAAR;AACA;AACD;AACD;AAfmE,iBAA/D,CAdP;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;WAiCA,gBAAc;AACb,WAAKpB,MAAL,GAAc,IAAd;AACA,WAAKX,OAAL,CAAagC,IAAb;AACA,WAAK/B,EAAL,CAAQgC,KAAR;AACA","sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport TerminalInterface from '../interfaces/TerminalInterface'\nimport CommandService from './CommandService'\n\nexport default class GameService {\n\tprivate command: CommandService\n\tprivate ui: TerminalInterface\n\tprivate statusMessage?: string\n\tprivate killed = false\n\n\tpublic constructor(command: CommandService, ui: TerminalInterface) {\n\t\tthis.command = command\n\t\tthis.ui = ui\n\t\tthis.command.cwd = diskUtil.resolvePath(__dirname, '../../')\n\t}\n\n\tpublic setStatusMessage(message: string) {\n\t\tthis.statusMessage = message\n\t}\n\n\tpublic async play(introductionSentences: string[] = []) {\n\t\tconst sentencesToPlay = [...introductionSentences]\n\t\tawait this.ui.stopLoading()\n\t\tthis.killed = false\n\n\t\twhile (sentencesToPlay.length > 0) {\n\t\t\tconst next = sentencesToPlay.shift() as string\n\t\t\tthis.ui.renderLine(next)\n\t\t\tawait new Promise((r) => setTimeout(r, 2000))\n\t\t\tif (this.killed) {\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\n\t\tawait this.command.execute('node ./node_modules/.bin/js-tetris-cli', {\n\t\t\tspawnOptions: {\n\t\t\t\tstdio: [process.stdin, 'pipe', 'pipe'],\n\t\t\t},\n\t\t\tonData: (data: string) => {\n\t\t\t\tif (!this.killed) {\n\t\t\t\t\tprocess.stdout?.write(data)\n\t\t\t\t\tif (this.statusMessage) {\n\t\t\t\t\t\tthis.ui.saveCursor()\n\t\t\t\t\t\tthis.ui.moveCursorTo(0, 25)\n\t\t\t\t\t\tthis.ui.clearBelowCursor()\n\t\t\t\t\t\tprocess.stdout?.write(this.statusMessage)\n\t\t\t\t\t\tthis.ui.restoreCursor()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t})\n\t}\n\n\tpublic kill() {\n\t\tthis.killed = true\n\t\tthis.command.kill()\n\t\tthis.ui.clear()\n\t}\n}\n"],"file":"GameService.js"}
1
+ {"version":3,"file":"GameService.js","names":["GameService","command","ui","cwd","diskUtil","resolvePath","__dirname","message","statusMessage","introductionSentences","sentencesToPlay","stopLoading","killed","length","next","shift","renderLine","Promise","r","setTimeout","execute","spawnOptions","stdio","process","stdin","onData","data","stdout","write","saveCursor","moveCursorTo","clearBelowCursor","restoreCursor","kill","clear"],"sources":["../../src/services/GameService.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport TerminalInterface from '../interfaces/TerminalInterface'\nimport CommandService from './CommandService'\n\nexport default class GameService {\n\tprivate command: CommandService\n\tprivate ui: TerminalInterface\n\tprivate statusMessage?: string\n\tprivate killed = false\n\n\tpublic constructor(command: CommandService, ui: TerminalInterface) {\n\t\tthis.command = command\n\t\tthis.ui = ui\n\t\tthis.command.cwd = diskUtil.resolvePath(__dirname, '../../')\n\t}\n\n\tpublic setStatusMessage(message: string) {\n\t\tthis.statusMessage = message\n\t}\n\n\tpublic async play(introductionSentences: string[] = []) {\n\t\tconst sentencesToPlay = [...introductionSentences]\n\t\tawait this.ui.stopLoading()\n\t\tthis.killed = false\n\n\t\twhile (sentencesToPlay.length > 0) {\n\t\t\tconst next = sentencesToPlay.shift() as string\n\t\t\tthis.ui.renderLine(next)\n\t\t\tawait new Promise((r) => setTimeout(r, 2000))\n\t\t\tif (this.killed) {\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\n\t\tawait this.command.execute('node ./node_modules/.bin/js-tetris-cli', {\n\t\t\tspawnOptions: {\n\t\t\t\tstdio: [process.stdin, 'pipe', 'pipe'],\n\t\t\t},\n\t\t\tonData: (data: string) => {\n\t\t\t\tif (!this.killed) {\n\t\t\t\t\tprocess.stdout?.write(data)\n\t\t\t\t\tif (this.statusMessage) {\n\t\t\t\t\t\tthis.ui.saveCursor()\n\t\t\t\t\t\tthis.ui.moveCursorTo(0, 25)\n\t\t\t\t\t\tthis.ui.clearBelowCursor()\n\t\t\t\t\t\tprocess.stdout?.write(this.statusMessage)\n\t\t\t\t\t\tthis.ui.restoreCursor()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t})\n\t}\n\n\tpublic kill() {\n\t\tthis.killed = true\n\t\tthis.command.kill()\n\t\tthis.ui.clear()\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;IAIqBA,W;EAMpB,qBAAmBC,OAAnB,EAA4CC,EAA5C,EAAmE;IAAA;IAAA;IAAA;IAAA;IAAA,iDAFlD,KAEkD;IAClE,KAAKD,OAAL,GAAeA,OAAf;IACA,KAAKC,EAAL,GAAUA,EAAV;IACA,KAAKD,OAAL,CAAaE,GAAb,GAAmBC,2BAASC,WAAT,CAAqBC,SAArB,EAAgC,QAAhC,CAAnB;EACA;;;;WAED,0BAAwBC,OAAxB,EAAyC;MACxC,KAAKC,aAAL,GAAqBD,OAArB;IACA;;;;gGAED;QAAA;;QAAA;QAAA;QAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAkBE,qBAAlB,2DAAoD,EAApD;gBACOC,eADP,uCAC6BD,qBAD7B;gBAAA;gBAAA,OAEO,KAAKP,EAAL,CAAQS,WAAR,EAFP;;cAAA;gBAGC,KAAKC,MAAL,GAAc,KAAd;;cAHD;gBAAA,MAKQF,eAAe,CAACG,MAAhB,GAAyB,CALjC;kBAAA;kBAAA;gBAAA;;gBAMQC,IANR,GAMeJ,eAAe,CAACK,KAAhB,EANf;gBAOE,KAAKb,EAAL,CAAQc,UAAR,CAAmBF,IAAnB;gBAPF;gBAAA,OAQQ,IAAIG,OAAJ,CAAY,UAACC,CAAD;kBAAA,OAAOC,UAAU,CAACD,CAAD,EAAI,IAAJ,CAAjB;gBAAA,CAAZ,CARR;;cAAA;gBAAA,KASM,KAAKN,MATX;kBAAA;kBAAA;gBAAA;;gBAAA;;cAAA;gBAAA;gBAAA;;cAAA;gBAAA;gBAAA,OAcO,KAAKX,OAAL,CAAamB,OAAb,CAAqB,wCAArB,EAA+D;kBACpEC,YAAY,EAAE;oBACbC,KAAK,EAAE,CAACC,OAAO,CAACC,KAAT,EAAgB,MAAhB,EAAwB,MAAxB;kBADM,CADsD;kBAIpEC,MAAM,EAAE,gBAACC,IAAD,EAAkB;oBACzB,IAAI,CAAC,KAAI,CAACd,MAAV,EAAkB;sBAAA;;sBACjB,mBAAAW,OAAO,CAACI,MAAR,oEAAgBC,KAAhB,CAAsBF,IAAtB;;sBACA,IAAI,KAAI,CAAClB,aAAT,EAAwB;wBAAA;;wBACvB,KAAI,CAACN,EAAL,CAAQ2B,UAAR;;wBACA,KAAI,CAAC3B,EAAL,CAAQ4B,YAAR,CAAqB,CAArB,EAAwB,EAAxB;;wBACA,KAAI,CAAC5B,EAAL,CAAQ6B,gBAAR;;wBACA,oBAAAR,OAAO,CAACI,MAAR,sEAAgBC,KAAhB,CAAsB,KAAI,CAACpB,aAA3B;;wBACA,KAAI,CAACN,EAAL,CAAQ8B,aAAR;sBACA;oBACD;kBACD;gBAfmE,CAA/D,CAdP;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C;;;;;;;;;;WAiCA,gBAAc;MACb,KAAKpB,MAAL,GAAc,IAAd;MACA,KAAKX,OAAL,CAAagC,IAAb;MACA,KAAK/B,EAAL,CAAQgC,KAAR;IACA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/ImportService.ts"],"names":["ImportService","options","file","isCachingEnabled","importAllUncached","pullHashAndContents","hash","fileContents","hasFileChanged","isDirty","haveImportsChanged","cachedImports","importAllCached","response","writeCacheFile","fs","existsSync","SpruceError","code","friendlyMessage","args","divider","errorDivider","search","command","execute","stdout","successParts","split","errParts","length","proxyError","buildErrorFromExecuteResponse","defaultImported","JSON","parse","originalError","importAll","imported","cwd","originalFilepath","contents","changed","importMatches","regex","exec","match","dir","pathUtil","dirname","nodeResolved","require","resolve","join","destination","resolveCacheFile","diskUtil","writeFile","stringify","cacheFile","readFile","err","Error","stack","files","filepath","resolvePath","filename","Date","getTime","imports","exports","idx","relative","replace","extname","fullPath","importDefault","results","deleteDir","resolvedFilePath","doesFileExist","cacheDir","importCacheDir","createTempDir"],"mappings":"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","sourcesContent":["import pathUtil from 'path'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport fs from 'fs-extra'\nimport md5 from 'md5'\nimport SpruceError from '../errors/SpruceError'\nimport CommandService from './CommandService'\n\nexport default class ImportService {\n\tpublic cwd: string\n\n\tprivate divider = '## SPRUCE-CLI DIVIDER ##'\n\tprivate errorDivider = '## SPRUCE-CLI ERROR DIVIDER ##'\n\n\tprivate static cachedImports: Record<string, Record<string, any>> = {}\n\tprivate static importCacheDir: string =\n\t\tdiskUtil.createTempDir('import-service')\n\tprivate command: CommandService\n\tprivate static isCachingEnabled: boolean\n\n\tpublic constructor(options: { cwd: string; command: CommandService }) {\n\t\tthis.cwd = options.cwd\n\t\tthis.command = options.command\n\t}\n\n\tpublic importAll = async <T extends Record<string, any>>(\n\t\tfile: string\n\t): Promise<T> => {\n\t\tif (!ImportService.isCachingEnabled) {\n\t\t\treturn this.importAllUncached(file)\n\t\t}\n\n\t\tconst { hash, fileContents } = this.pullHashAndContents(file)\n\n\t\tif (!this.hasFileChanged(hash)) {\n\t\t\tconst isDirty = this.haveImportsChanged(file, fileContents)\n\n\t\t\tif (!isDirty && ImportService.cachedImports[hash]) {\n\t\t\t\treturn ImportService.cachedImports[hash] as T\n\t\t\t} else if (!isDirty) {\n\t\t\t\tImportService.cachedImports[hash] = this.importAllCached(file)\n\t\t\t\treturn ImportService.cachedImports[hash] as T\n\t\t\t}\n\t\t}\n\n\t\tImportService.cachedImports[hash] = this.importAllUncached(file)\n\t\tconst response = (await ImportService.cachedImports[hash]) as T\n\t\tthis.writeCacheFile(hash, response)\n\n\t\treturn response\n\t}\n\n\tprivate haveImportsChanged(\n\t\toriginalFilepath: string,\n\t\tcontents: string\n\t): boolean {\n\t\tlet changed = false\n\t\tlet importMatches\n\n\t\t// only check files that start with dot because they are local and we can actually only check local files\n\t\tconst regex =\n\t\t\toriginalFilepath.search(/\\.js$/i) > -1\n\t\t\t\t? /require\\(['\"](\\..*?)['\"]\\)/gis\n\t\t\t\t: /import.*[\"'](\\..*?)[\"']/gis\n\n\t\twhile ((importMatches = regex.exec(contents)) !== null) {\n\t\t\ttry {\n\t\t\t\tconst match = importMatches[1]\n\t\t\t\tconst dir = pathUtil.dirname(originalFilepath)\n\t\t\t\tconst nodeResolved = require.resolve(pathUtil.join(dir, match))\n\t\t\t\tconst { hash } = this.pullHashAndContents(nodeResolved)\n\n\t\t\t\tif (this.hasFileChanged(hash)) {\n\t\t\t\t\tchanged = true\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\tchanged = true\n\t\t\t}\n\t\t}\n\n\t\treturn changed\n\t}\n\n\tprivate writeCacheFile(hash: string, contents: Record<string, any>) {\n\t\tconst destination = this.resolveCacheFile(hash)\n\t\tdiskUtil.writeFile(destination, JSON.stringify(contents))\n\t}\n\n\tprivate importAllCached(file: string) {\n\t\tconst { hash } = this.pullHashAndContents(file)\n\n\t\tconst cacheFile = this.resolveCacheFile(hash)\n\t\tconst contents = diskUtil.readFile(cacheFile)\n\n\t\treturn JSON.parse(contents)\n\t}\n\n\tprivate importAllUncached = async <T extends Record<string, any>>(\n\t\tfile: string\n\t): Promise<T> => {\n\t\tlet defaultImported: T | undefined\n\n\t\tif (!fs.existsSync(file)) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\tfile,\n\t\t\t\tfriendlyMessage: `I couldn't import ${file} because I couldn't find it!`,\n\t\t\t})\n\t\t}\n\n\t\tlet args = [\n\t\t\t'-e',\n\t\t\t`\"try { const imported = require('${file}');console.log('${this.divider}');console.log(JSON.stringify(imported)); } catch(err) { console.log('${this.errorDivider}');console.log(err.options ? err.toString() : err.stack); }\"`,\n\t\t]\n\n\t\tif (file.search(/\\.ts$/i) > -1) {\n\t\t\targs = [\n\t\t\t\t'-r',\n\t\t\t\t'ts-node/register',\n\t\t\t\t'-r',\n\t\t\t\t'tsconfig-paths/register',\n\t\t\t\t...args,\n\t\t\t]\n\t\t}\n\n\t\ttry {\n\t\t\tconst { stdout } = await this.command.execute('node', {\n\t\t\t\targs,\n\t\t\t})\n\n\t\t\tconst successParts = stdout.split(this.divider)\n\t\t\tconst errParts = stdout.split(this.errorDivider)\n\n\t\t\tif (errParts.length > 1) {\n\t\t\t\tconst proxyError = this.buildErrorFromExecuteResponse(\n\t\t\t\t\terrParts,\n\t\t\t\t\tfile,\n\t\t\t\t\tstdout\n\t\t\t\t)\n\n\t\t\t\tthrow proxyError\n\t\t\t} else {\n\t\t\t\tdefaultImported = JSON.parse(successParts[1])\n\t\t\t}\n\t\t} catch (err: any) {\n\t\t\tif (err instanceof SpruceError) {\n\t\t\t\tthrow err\n\t\t\t} else {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\t\tfile,\n\t\t\t\t\toriginalError: err,\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\treturn defaultImported as T\n\t}\n\n\tpublic importDefault = async <T extends Record<string, any>>(\n\t\tfile: string\n\t): Promise<T> => {\n\t\tconst imported: any = await this.importAll(file)\n\t\treturn imported.default as T\n\t}\n\n\tprivate buildErrorFromExecuteResponse(\n\t\terrParts: string[],\n\t\tfile: string,\n\t\tstdout: string\n\t) {\n\t\tlet err: Record<string, any> = {}\n\t\ttry {\n\t\t\terr = JSON.parse(errParts[1])\n\t\t\tif (!err.options) {\n\t\t\t\tthrow Error('Capture and reported below')\n\t\t\t}\n\t\t} catch {\n\t\t\terr = {\n\t\t\t\toptions: {\n\t\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\t\tfile,\n\t\t\t\t\tfriendlyMessage: `Unknown error from import, output was: \\n\\n\"${\n\t\t\t\t\t\terrParts[1] ?? stdout\n\t\t\t\t\t}\"`,\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\n\t\tconst proxyError = new SpruceError(err.options)\n\n\t\tif (err.stack) {\n\t\t\tproxyError.stack = err.stack\n\t\t}\n\t\treturn proxyError\n\t}\n\n\tpublic async bulkImport(files: string[]): Promise<any[]> {\n\t\tif (files.length === 0) {\n\t\t\treturn []\n\t\t}\n\t\tconst filepath = diskUtil.resolvePath(this.cwd, '.tmp')\n\t\tconst filename = 'bulk-import-' + new Date().getTime() + '.ts'\n\n\t\tlet imports = ``\n\t\tlet exports = `export default [\\n`\n\n\t\tlet idx = 0\n\t\tfor (const file of files) {\n\t\t\tconst relative = pathUtil\n\t\t\t\t.relative(filepath, file)\n\t\t\t\t.replace(pathUtil.extname(file), '')\n\n\t\t\timports += `import { default as import${idx}} from '${relative}'\\n`\n\t\t\texports += `import${idx},\\n`\n\t\t\tidx++\n\t\t}\n\n\t\texports += ']'\n\n\t\tconst contents = imports + `\\n\\n` + exports\n\t\tconst fullPath = pathUtil.join(filepath, filename)\n\t\tdiskUtil.writeFile(fullPath, contents)\n\n\t\ttry {\n\t\t\tconst results = (await this.importDefault(fullPath)) as any[]\n\n\t\t\treturn results as any\n\t\t} catch (err) {\n\t\t\t// if something failed, lets load one at a time until we find the one that failes\n\t\t\tfor (const file of files) {\n\t\t\t\tconst imported = await this.importDefault(file)\n\t\t\t\tif (!imported) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\t\t\tfile,\n\t\t\t\t\t\tfriendlyMessage: `Looks like ${file} does not export default.`,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthrow err\n\t\t} finally {\n\t\t\tdiskUtil.deleteDir(filepath)\n\t\t}\n\t}\n\n\tpublic static clearCache() {\n\t\tImportService.cachedImports = {}\n\t\tdiskUtil.deleteDir(this.cacheDir())\n\t}\n\n\tpublic static setCacheDir(cacheDir: string) {\n\t\tthis.importCacheDir = cacheDir\n\t}\n\n\tpublic static disableCache() {\n\t\tthis.isCachingEnabled = false\n\t}\n\n\tpublic static enableCaching() {\n\t\tthis.isCachingEnabled = true\n\t}\n\n\tprivate hasFileChanged(hash: string) {\n\t\tconst resolvedFilePath = this.resolveCacheFile(hash)\n\t\treturn !diskUtil.doesFileExist(resolvedFilePath)\n\t}\n\n\tprivate resolveCacheFile(hash: string) {\n\t\treturn diskUtil.resolvePath(ImportService.cacheDir(), hash + '.json')\n\t}\n\n\tprivate static cacheDir(): string {\n\t\treturn this.importCacheDir\n\t}\n\n\tprivate pullHashAndContents(file: string) {\n\t\tconst fileContents = diskUtil.readFile(file)\n\t\tconst hash = md5(fileContents)\n\t\treturn { hash, fileContents }\n\t}\n}\n"],"file":"ImportService.js"}
1
+ {"version":3,"file":"ImportService.js","names":["ImportService","options","file","isCachingEnabled","importAllUncached","pullHashAndContents","hash","fileContents","hasFileChanged","isDirty","haveImportsChanged","cachedImports","importAllCached","response","writeCacheFile","fs","existsSync","SpruceError","code","friendlyMessage","args","divider","errorDivider","search","command","execute","stdout","successParts","split","errParts","length","proxyError","buildErrorFromExecuteResponse","defaultImported","JSON","parse","originalError","importAll","imported","cwd","originalFilepath","contents","changed","importMatches","regex","exec","match","dir","pathUtil","dirname","nodeResolved","require","resolve","join","destination","resolveCacheFile","diskUtil","writeFile","stringify","cacheFile","readFile","err","Error","stack","files","filepath","resolvePath","filename","Date","getTime","imports","exports","idx","relative","replace","extname","fullPath","importDefault","results","deleteDir","resolvedFilePath","doesFileExist","cacheDir","importCacheDir","createTempDir"],"sources":["../../src/services/ImportService.ts"],"sourcesContent":["import pathUtil from 'path'\nimport { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport fs from 'fs-extra'\nimport md5 from 'md5'\nimport SpruceError from '../errors/SpruceError'\nimport CommandService from './CommandService'\n\nexport default class ImportService {\n\tpublic cwd: string\n\n\tprivate divider = '## SPRUCE-CLI DIVIDER ##'\n\tprivate errorDivider = '## SPRUCE-CLI ERROR DIVIDER ##'\n\n\tprivate static cachedImports: Record<string, Record<string, any>> = {}\n\tprivate static importCacheDir: string =\n\t\tdiskUtil.createTempDir('import-service')\n\tprivate command: CommandService\n\tprivate static isCachingEnabled: boolean\n\n\tpublic constructor(options: { cwd: string; command: CommandService }) {\n\t\tthis.cwd = options.cwd\n\t\tthis.command = options.command\n\t}\n\n\tpublic importAll = async <T extends Record<string, any>>(\n\t\tfile: string\n\t): Promise<T> => {\n\t\tif (!ImportService.isCachingEnabled) {\n\t\t\treturn this.importAllUncached(file)\n\t\t}\n\n\t\tconst { hash, fileContents } = this.pullHashAndContents(file)\n\n\t\tif (!this.hasFileChanged(hash)) {\n\t\t\tconst isDirty = this.haveImportsChanged(file, fileContents)\n\n\t\t\tif (!isDirty && ImportService.cachedImports[hash]) {\n\t\t\t\treturn ImportService.cachedImports[hash] as T\n\t\t\t} else if (!isDirty) {\n\t\t\t\tImportService.cachedImports[hash] = this.importAllCached(file)\n\t\t\t\treturn ImportService.cachedImports[hash] as T\n\t\t\t}\n\t\t}\n\n\t\tImportService.cachedImports[hash] = this.importAllUncached(file)\n\t\tconst response = (await ImportService.cachedImports[hash]) as T\n\t\tthis.writeCacheFile(hash, response)\n\n\t\treturn response\n\t}\n\n\tprivate haveImportsChanged(\n\t\toriginalFilepath: string,\n\t\tcontents: string\n\t): boolean {\n\t\tlet changed = false\n\t\tlet importMatches\n\n\t\t// only check files that start with dot because they are local and we can actually only check local files\n\t\tconst regex =\n\t\t\toriginalFilepath.search(/\\.js$/i) > -1\n\t\t\t\t? /require\\(['\"](\\..*?)['\"]\\)/gis\n\t\t\t\t: /import.*[\"'](\\..*?)[\"']/gis\n\n\t\twhile ((importMatches = regex.exec(contents)) !== null) {\n\t\t\ttry {\n\t\t\t\tconst match = importMatches[1]\n\t\t\t\tconst dir = pathUtil.dirname(originalFilepath)\n\t\t\t\tconst nodeResolved = require.resolve(pathUtil.join(dir, match))\n\t\t\t\tconst { hash } = this.pullHashAndContents(nodeResolved)\n\n\t\t\t\tif (this.hasFileChanged(hash)) {\n\t\t\t\t\tchanged = true\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\tchanged = true\n\t\t\t}\n\t\t}\n\n\t\treturn changed\n\t}\n\n\tprivate writeCacheFile(hash: string, contents: Record<string, any>) {\n\t\tconst destination = this.resolveCacheFile(hash)\n\t\tdiskUtil.writeFile(destination, JSON.stringify(contents))\n\t}\n\n\tprivate importAllCached(file: string) {\n\t\tconst { hash } = this.pullHashAndContents(file)\n\n\t\tconst cacheFile = this.resolveCacheFile(hash)\n\t\tconst contents = diskUtil.readFile(cacheFile)\n\n\t\treturn JSON.parse(contents)\n\t}\n\n\tprivate importAllUncached = async <T extends Record<string, any>>(\n\t\tfile: string\n\t): Promise<T> => {\n\t\tlet defaultImported: T | undefined\n\n\t\tif (!fs.existsSync(file)) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\tfile,\n\t\t\t\tfriendlyMessage: `I couldn't import ${file} because I couldn't find it!`,\n\t\t\t})\n\t\t}\n\n\t\tlet args = [\n\t\t\t'-e',\n\t\t\t`\"try { const imported = require('${file}');console.log('${this.divider}');console.log(JSON.stringify(imported)); } catch(err) { console.log('${this.errorDivider}');console.log(err.options ? err.toString() : err.stack); }\"`,\n\t\t]\n\n\t\tif (file.search(/\\.ts$/i) > -1) {\n\t\t\targs = [\n\t\t\t\t'-r',\n\t\t\t\t'ts-node/register',\n\t\t\t\t'-r',\n\t\t\t\t'tsconfig-paths/register',\n\t\t\t\t...args,\n\t\t\t]\n\t\t}\n\n\t\ttry {\n\t\t\tconst { stdout } = await this.command.execute('node', {\n\t\t\t\targs,\n\t\t\t})\n\n\t\t\tconst successParts = stdout.split(this.divider)\n\t\t\tconst errParts = stdout.split(this.errorDivider)\n\n\t\t\tif (errParts.length > 1) {\n\t\t\t\tconst proxyError = this.buildErrorFromExecuteResponse(\n\t\t\t\t\terrParts,\n\t\t\t\t\tfile,\n\t\t\t\t\tstdout\n\t\t\t\t)\n\n\t\t\t\tthrow proxyError\n\t\t\t} else {\n\t\t\t\tdefaultImported = JSON.parse(successParts[1])\n\t\t\t}\n\t\t} catch (err: any) {\n\t\t\tif (err instanceof SpruceError) {\n\t\t\t\tthrow err\n\t\t\t} else {\n\t\t\t\tthrow new SpruceError({\n\t\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\t\tfile,\n\t\t\t\t\toriginalError: err,\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\treturn defaultImported as T\n\t}\n\n\tpublic importDefault = async <T extends Record<string, any>>(\n\t\tfile: string\n\t): Promise<T> => {\n\t\tconst imported: any = await this.importAll(file)\n\t\treturn imported.default as T\n\t}\n\n\tprivate buildErrorFromExecuteResponse(\n\t\terrParts: string[],\n\t\tfile: string,\n\t\tstdout: string\n\t) {\n\t\tlet err: Record<string, any> = {}\n\t\ttry {\n\t\t\terr = JSON.parse(errParts[1])\n\t\t\tif (!err.options) {\n\t\t\t\tthrow Error('Capture and reported below')\n\t\t\t}\n\t\t} catch {\n\t\t\terr = {\n\t\t\t\toptions: {\n\t\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\t\tfile,\n\t\t\t\t\tfriendlyMessage: `Unknown error from import, output was: \\n\\n\"${\n\t\t\t\t\t\terrParts[1] ?? stdout\n\t\t\t\t\t}\"`,\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\n\t\tconst proxyError = new SpruceError(err.options)\n\n\t\tif (err.stack) {\n\t\t\tproxyError.stack = err.stack\n\t\t}\n\t\treturn proxyError\n\t}\n\n\tpublic async bulkImport(files: string[]): Promise<any[]> {\n\t\tif (files.length === 0) {\n\t\t\treturn []\n\t\t}\n\t\tconst filepath = diskUtil.resolvePath(this.cwd, '.tmp')\n\t\tconst filename = 'bulk-import-' + new Date().getTime() + '.ts'\n\n\t\tlet imports = ``\n\t\tlet exports = `export default [\\n`\n\n\t\tlet idx = 0\n\t\tfor (const file of files) {\n\t\t\tconst relative = pathUtil\n\t\t\t\t.relative(filepath, file)\n\t\t\t\t.replace(pathUtil.extname(file), '')\n\n\t\t\timports += `import { default as import${idx}} from '${relative}'\\n`\n\t\t\texports += `import${idx},\\n`\n\t\t\tidx++\n\t\t}\n\n\t\texports += ']'\n\n\t\tconst contents = imports + `\\n\\n` + exports\n\t\tconst fullPath = pathUtil.join(filepath, filename)\n\t\tdiskUtil.writeFile(fullPath, contents)\n\n\t\ttry {\n\t\t\tconst results = (await this.importDefault(fullPath)) as any[]\n\n\t\t\treturn results as any\n\t\t} catch (err) {\n\t\t\t// if something failed, lets load one at a time until we find the one that failes\n\t\t\tfor (const file of files) {\n\t\t\t\tconst imported = await this.importDefault(file)\n\t\t\t\tif (!imported) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'FAILED_TO_IMPORT',\n\t\t\t\t\t\tfile,\n\t\t\t\t\t\tfriendlyMessage: `Looks like ${file} does not export default.`,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthrow err\n\t\t} finally {\n\t\t\tdiskUtil.deleteDir(filepath)\n\t\t}\n\t}\n\n\tpublic static clearCache() {\n\t\tImportService.cachedImports = {}\n\t\tdiskUtil.deleteDir(this.cacheDir())\n\t}\n\n\tpublic static setCacheDir(cacheDir: string) {\n\t\tthis.importCacheDir = cacheDir\n\t}\n\n\tpublic static disableCache() {\n\t\tthis.isCachingEnabled = false\n\t}\n\n\tpublic static enableCaching() {\n\t\tthis.isCachingEnabled = true\n\t}\n\n\tprivate hasFileChanged(hash: string) {\n\t\tconst resolvedFilePath = this.resolveCacheFile(hash)\n\t\treturn !diskUtil.doesFileExist(resolvedFilePath)\n\t}\n\n\tprivate resolveCacheFile(hash: string) {\n\t\treturn diskUtil.resolvePath(ImportService.cacheDir(), hash + '.json')\n\t}\n\n\tprivate static cacheDir(): string {\n\t\treturn this.importCacheDir\n\t}\n\n\tprivate pullHashAndContents(file: string) {\n\t\tconst fileContents = diskUtil.readFile(file)\n\t\tconst hash = md5(fileContents)\n\t\treturn { hash, fileContents }\n\t}\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/LintService.ts"],"names":["LintService","cwd","commandServiceFactory","pattern","SchemaError","code","parameters","isLintingEnabled","fixedFiles","fixedPaths","script","getCommand","execute","args","stdout","JSON","parse","SpruceError","originalError","i","length","fixedFile","output","fs","writeFile","filePath","push","messages","errorCount","friendlyMessage","map","m","message","join"],"mappings":"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","sourcesContent":["import { SchemaError } from '@sprucelabs/schema'\n// import { ESLint } from 'eslint'\nimport fs from 'fs-extra'\nimport SpruceError from '../errors/SpruceError'\nimport CommandService from './CommandService'\n\nexport default class LintService {\n\tpublic cwd: string\n\tprivate getCommand: () => CommandService\n\n\tprivate static isLintingEnabled = true\n\n\tpublic static disableLinting() {\n\t\tthis.isLintingEnabled = false\n\t}\n\n\tpublic static enableLinting() {\n\t\tthis.isLintingEnabled = true\n\t}\n\n\tpublic constructor(cwd: string, commandServiceFactory: () => CommandService) {\n\t\tthis.cwd = cwd\n\t\tthis.getCommand = commandServiceFactory\n\t}\n\n\tpublic fix = async (pattern: string): Promise<string[]> => {\n\t\tif (!pattern) {\n\t\t\tthrow new SchemaError({\n\t\t\t\tcode: 'MISSING_PARAMETERS',\n\t\t\t\tparameters: ['pattern'],\n\t\t\t})\n\t\t}\n\n\t\tif (!LintService.isLintingEnabled) {\n\t\t\treturn []\n\t\t}\n\n\t\tlet fixedFiles: any = {}\n\t\tconst fixedPaths: string[] = []\n\n\t\ttry {\n\t\t\t// const cli = new ESLint({ fix: true, cwd: this.cwd, cache: true })\n\t\t\t// fixedFiles = await cli.lintFiles([pattern])\n\t\t\tconst script = `\"(async function lint() { try { const { ESLint } = require('eslint'); const cli = new ESLint({ fix: true, cwd: '${this.cwd}', }); const result = await cli.lintFiles(['${pattern}']); console.log(JSON.stringify(result)); } catch (err) { console.log(err.toString()); }})()\"`\n\n\t\t\tconst { stdout } = await this.getCommand().execute('node', {\n\t\t\t\targs: ['-e', script],\n\t\t\t})\n\n\t\t\tfixedFiles = JSON.parse(stdout)\n\t\t} catch (err: any) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'LINT_FAILED',\n\t\t\t\tpattern,\n\t\t\t\toriginalError: err,\n\t\t\t})\n\t\t}\n\n\t\tif (fixedFiles) {\n\t\t\tfor (let i = 0; i < fixedFiles.length; i += 1) {\n\t\t\t\tconst fixedFile = fixedFiles[i]\n\n\t\t\t\tif (fixedFile?.output) {\n\t\t\t\t\tawait fs.writeFile(fixedFile.filePath, fixedFile.output)\n\t\t\t\t\tfixedPaths.push(fixedFile.filePath)\n\t\t\t\t} else if (fixedFile?.messages && fixedFile?.errorCount > 0) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'LINT_FAILED',\n\t\t\t\t\t\tpattern,\n\t\t\t\t\t\tfriendlyMessage: `Lint error with '${\n\t\t\t\t\t\t\tfixedFile.filePath\n\t\t\t\t\t\t}':\\n\\n${fixedFile.messages\n\t\t\t\t\t\t\t.map((m: any) => m?.message)\n\t\t\t\t\t\t\t.join('\\n')}`,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn fixedPaths\n\t}\n}\n"],"file":"LintService.js"}
1
+ {"version":3,"file":"LintService.js","names":["LintService","cwd","commandServiceFactory","pattern","SchemaError","code","parameters","isLintingEnabled","fixedFiles","fixedPaths","script","getCommand","execute","args","stdout","JSON","parse","SpruceError","originalError","i","length","fixedFile","output","fs","writeFile","filePath","push","messages","errorCount","friendlyMessage","map","m","message","join"],"sources":["../../src/services/LintService.ts"],"sourcesContent":["import { SchemaError } from '@sprucelabs/schema'\n// import { ESLint } from 'eslint'\nimport fs from 'fs-extra'\nimport SpruceError from '../errors/SpruceError'\nimport CommandService from './CommandService'\n\nexport default class LintService {\n\tpublic cwd: string\n\tprivate getCommand: () => CommandService\n\n\tprivate static isLintingEnabled = true\n\n\tpublic static disableLinting() {\n\t\tthis.isLintingEnabled = false\n\t}\n\n\tpublic static enableLinting() {\n\t\tthis.isLintingEnabled = true\n\t}\n\n\tpublic constructor(cwd: string, commandServiceFactory: () => CommandService) {\n\t\tthis.cwd = cwd\n\t\tthis.getCommand = commandServiceFactory\n\t}\n\n\tpublic fix = async (pattern: string): Promise<string[]> => {\n\t\tif (!pattern) {\n\t\t\tthrow new SchemaError({\n\t\t\t\tcode: 'MISSING_PARAMETERS',\n\t\t\t\tparameters: ['pattern'],\n\t\t\t})\n\t\t}\n\n\t\tif (!LintService.isLintingEnabled) {\n\t\t\treturn []\n\t\t}\n\n\t\tlet fixedFiles: any = {}\n\t\tconst fixedPaths: string[] = []\n\n\t\ttry {\n\t\t\t// const cli = new ESLint({ fix: true, cwd: this.cwd, cache: true })\n\t\t\t// fixedFiles = await cli.lintFiles([pattern])\n\t\t\tconst script = `\"(async function lint() { try { const { ESLint } = require('eslint'); const cli = new ESLint({ fix: true, cwd: '${this.cwd}', }); const result = await cli.lintFiles(['${pattern}']); console.log(JSON.stringify(result)); } catch (err) { console.log(err.toString()); }})()\"`\n\n\t\t\tconst { stdout } = await this.getCommand().execute('node', {\n\t\t\t\targs: ['-e', script],\n\t\t\t})\n\n\t\t\tfixedFiles = JSON.parse(stdout)\n\t\t} catch (err: any) {\n\t\t\tthrow new SpruceError({\n\t\t\t\tcode: 'LINT_FAILED',\n\t\t\t\tpattern,\n\t\t\t\toriginalError: err,\n\t\t\t})\n\t\t}\n\n\t\tif (fixedFiles) {\n\t\t\tfor (let i = 0; i < fixedFiles.length; i += 1) {\n\t\t\t\tconst fixedFile = fixedFiles[i]\n\n\t\t\t\tif (fixedFile?.output) {\n\t\t\t\t\tawait fs.writeFile(fixedFile.filePath, fixedFile.output)\n\t\t\t\t\tfixedPaths.push(fixedFile.filePath)\n\t\t\t\t} else if (fixedFile?.messages && fixedFile?.errorCount > 0) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'LINT_FAILED',\n\t\t\t\t\t\tpattern,\n\t\t\t\t\t\tfriendlyMessage: `Lint error with '${\n\t\t\t\t\t\t\tfixedFile.filePath\n\t\t\t\t\t\t}':\\n\\n${fixedFile.messages\n\t\t\t\t\t\t\t.map((m: any) => m?.message)\n\t\t\t\t\t\t\t.join('\\n')}`,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn fixedPaths\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AAFA;IAKqBA,W;EAcpB,qBAAmBC,GAAnB,EAAgCC,qBAAhC,EAA6E;IAAA;;IAAA;IAAA;IAAA;IAAA;MAAA,yFAKhE,iBAAOC,OAAP;QAAA;;QAAA;UAAA;YAAA;cAAA;gBAAA,IACPA,OADO;kBAAA;kBAAA;gBAAA;;gBAAA,MAEL,IAAIC,mBAAJ,CAAgB;kBACrBC,IAAI,EAAE,oBADe;kBAErBC,UAAU,EAAE,CAAC,SAAD;gBAFS,CAAhB,CAFK;;cAAA;gBAAA,IAQPN,WAAW,CAACO,gBARL;kBAAA;kBAAA;gBAAA;;gBAAA,iCASJ,EATI;;cAAA;gBAYRC,UAZQ,GAYU,EAZV;gBAaNC,UAbM,GAaiB,EAbjB;gBAAA;gBAgBX;gBACA;gBACMC,MAlBK,8HAkBuH,KAAI,CAACT,GAlB5H,yDAkB8KE,OAlB9K;gBAAA;gBAAA,OAoBc,KAAI,CAACQ,UAAL,GAAkBC,OAAlB,CAA0B,MAA1B,EAAkC;kBAC1DC,IAAI,EAAE,CAAC,IAAD,EAAOH,MAAP;gBADoD,CAAlC,CApBd;;cAAA;gBAAA;gBAoBHI,MApBG,yBAoBHA,MApBG;gBAwBXN,UAAU,GAAGO,IAAI,CAACC,KAAL,CAAWF,MAAX,CAAb;gBAxBW;gBAAA;;cAAA;gBAAA;gBAAA;gBAAA,MA0BL,IAAIG,uBAAJ,CAAgB;kBACrBZ,IAAI,EAAE,aADe;kBAErBF,OAAO,EAAPA,OAFqB;kBAGrBe,aAAa;gBAHQ,CAAhB,CA1BK;;cAAA;gBAAA,KAiCRV,UAjCQ;kBAAA;kBAAA;gBAAA;;gBAkCFW,CAlCE,GAkCE,CAlCF;;cAAA;gBAAA,MAkCKA,CAAC,GAAGX,UAAU,CAACY,MAlCpB;kBAAA;kBAAA;gBAAA;;gBAmCJC,SAnCI,GAmCQb,UAAU,CAACW,CAAD,CAnClB;;gBAAA,MAqCNE,SArCM,aAqCNA,SArCM,eAqCNA,SAAS,CAAEC,MArCL;kBAAA;kBAAA;gBAAA;;gBAAA;gBAAA,OAsCHC,oBAAGC,SAAH,CAAaH,SAAS,CAACI,QAAvB,EAAiCJ,SAAS,CAACC,MAA3C,CAtCG;;cAAA;gBAuCTb,UAAU,CAACiB,IAAX,CAAgBL,SAAS,CAACI,QAA1B;gBAvCS;gBAAA;;cAAA;gBAAA,MAwCCJ,SAAS,SAAT,IAAAA,SAAS,WAAT,IAAAA,SAAS,CAAEM,QAAX,IAAuB,CAAAN,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAEO,UAAX,IAAwB,CAxChD;kBAAA;kBAAA;gBAAA;;gBAAA,MAyCH,IAAIX,uBAAJ,CAAgB;kBACrBZ,IAAI,EAAE,aADe;kBAErBF,OAAO,EAAPA,OAFqB;kBAGrB0B,eAAe,6BACdR,SAAS,CAACI,QADI,mBAENJ,SAAS,CAACM,QAAV,CACPG,GADO,CACH,UAACC,CAAD;oBAAA,OAAYA,CAAZ,aAAYA,CAAZ,uBAAYA,CAAC,CAAEC,OAAf;kBAAA,CADG,EAEPC,IAFO,CAEF,IAFE,CAFM;gBAHM,CAAhB,CAzCG;;cAAA;gBAkC4Bd,CAAC,IAAI,CAlCjC;gBAAA;gBAAA;;cAAA;gBAAA,iCAsDLV,UAtDK;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CALgE;;MAAA;QAAA;MAAA;IAAA;IAC5E,KAAKR,GAAL,GAAWA,GAAX;IACA,KAAKU,UAAL,GAAkBT,qBAAlB;EACA;;;;WAXD,0BAA+B;MAC9B,KAAKK,gBAAL,GAAwB,KAAxB;IACA;;;WAED,yBAA8B;MAC7B,KAAKA,gBAAL,GAAwB,IAAxB;IACA;;;;;;iCAZmBP,W,sBAIc,I"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/PkgService.ts"],"names":["PkgService","cwd","commandService","pkg","options","shouldCleanupLockFiles","deleteLockFile","bind","execute","args","totalInstalled","totalSkipped","packages","Array","isArray","toInstall","labsModules","thisPackage","isInstalled","shouldForceInstall","startsWith","push","stripLatest","buildCommandAndArgs","executable","diskUtil","doesDirExist","pathUtil","join","_parsedPkg","undefined","length","install","createRandomTempDir","filter","a","isDev","BasePkgService"],"mappings":"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","sourcesContent":["import pathUtil from 'path'\nimport {\n\tdiskUtil,\n\tPkgService as BasePkgService,\n} from '@sprucelabs/spruce-skill-utils'\nimport isCi from '../utilities/isCi'\nimport CommandService from './CommandService'\n\nexport interface AddOptions {\n\tisDev?: boolean\n\tshouldForceInstall?: boolean\n\tshouldCleanupLockFiles?: boolean\n}\n\nexport default class PkgService extends BasePkgService {\n\tprivate commandService: CommandService\n\n\tpublic constructor(cwd: string, commandService: CommandService) {\n\t\tsuper(cwd)\n\t\tthis.commandService = commandService\n\t}\n\n\tpublic async install(pkg?: string[] | string, options?: AddOptions) {\n\t\tconst shouldCleanupLockFiles = options?.shouldCleanupLockFiles !== false\n\t\tconst deleteLockFile = shouldCleanupLockFiles\n\t\t\t? this.deleteLockFile.bind(this)\n\t\t\t: () => {}\n\n\t\tif (!pkg) {\n\t\t\tawait this.commandService.execute('yarn', { args: ['install'] })\n\t\t\tdeleteLockFile()\n\t\t\treturn { totalInstalled: -1, totalSkipped: -1 }\n\t\t}\n\n\t\tdeleteLockFile()\n\n\t\tconst packages = Array.isArray(pkg) ? pkg : [pkg]\n\t\tconst toInstall = []\n\t\tconst labsModules: string[] = []\n\n\t\tlet totalInstalled = 0\n\t\tlet totalSkipped = 0\n\n\t\tfor (const thisPackage of packages) {\n\t\t\tconst isInstalled =\n\t\t\t\t!options?.shouldForceInstall && this.isInstalled(thisPackage)\n\t\t\tif (thisPackage.startsWith('@sprucelabs/') || !isInstalled) {\n\t\t\t\ttoInstall.push(this.stripLatest(thisPackage))\n\t\t\t\ttotalInstalled++\n\t\t\t} else {\n\t\t\t\ttotalSkipped++\n\t\t\t}\n\t\t}\n\n\t\tif (totalInstalled > 0) {\n\t\t\tconst { executable, args } = PkgService.buildCommandAndArgs(\n\t\t\t\ttoInstall,\n\t\t\t\toptions\n\t\t\t)\n\n\t\t\tawait this.commandService.execute(executable, {\n\t\t\t\targs,\n\t\t\t})\n\t\t} else if (\n\t\t\t!diskUtil.doesDirExist(pathUtil.join(this.cwd, 'node_modules'))\n\t\t) {\n\t\t\tawait this.commandService.execute('yarn', { args: ['install'] })\n\t\t}\n\n\t\tdeleteLockFile()\n\n\t\tthis._parsedPkg = undefined\n\n\t\treturn { totalInstalled: totalInstalled + labsModules.length, totalSkipped }\n\t}\n\n\tpublic static buildCommandAndArgs(\n\t\ttoInstall: string[],\n\t\toptions: AddOptions | undefined\n\t) {\n\t\tconst args: any[] = [\n\t\t\tisCi() && '--cache-folder',\n\t\t\tisCi() && diskUtil.createRandomTempDir(),\n\t\t\t'add',\n\t\t\t...toInstall,\n\t\t].filter((a) => !!a)\n\n\t\tif (options?.isDev) {\n\t\t\targs.push('-D')\n\t\t}\n\n\t\tconst executable = 'yarn'\n\t\treturn { executable, args }\n\t}\n\n\tpublic async uninstall(pkg: string[] | string) {\n\t\tconst packages = Array.isArray(pkg) ? pkg : [pkg]\n\t\tconst args: string[] = ['uninstall', ...packages]\n\t\tawait this.commandService.execute('npm', {\n\t\t\targs,\n\t\t})\n\n\t\tthis._parsedPkg = undefined\n\n\t\tawait this.install()\n\t}\n}\n"],"file":"PkgService.js"}
1
+ {"version":3,"file":"PkgService.js","names":["PkgService","cwd","commandService","pkg","options","shouldCleanupLockFiles","deleteLockFile","bind","execute","args","totalInstalled","totalSkipped","packages","Array","isArray","toInstall","labsModules","thisPackage","isInstalled","shouldForceInstall","startsWith","push","stripLatest","buildCommandAndArgs","executable","diskUtil","doesDirExist","pathUtil","join","_parsedPkg","undefined","length","install","createRandomTempDir","filter","a","isDev","BasePkgService"],"sources":["../../src/services/PkgService.ts"],"sourcesContent":["import pathUtil from 'path'\nimport {\n\tdiskUtil,\n\tPkgService as BasePkgService,\n} from '@sprucelabs/spruce-skill-utils'\nimport isCi from '../utilities/isCi'\nimport CommandService from './CommandService'\n\nexport interface AddOptions {\n\tisDev?: boolean\n\tshouldForceInstall?: boolean\n\tshouldCleanupLockFiles?: boolean\n}\n\nexport default class PkgService extends BasePkgService {\n\tprivate commandService: CommandService\n\n\tpublic constructor(cwd: string, commandService: CommandService) {\n\t\tsuper(cwd)\n\t\tthis.commandService = commandService\n\t}\n\n\tpublic async install(pkg?: string[] | string, options?: AddOptions) {\n\t\tconst shouldCleanupLockFiles = options?.shouldCleanupLockFiles !== false\n\t\tconst deleteLockFile = shouldCleanupLockFiles\n\t\t\t? this.deleteLockFile.bind(this)\n\t\t\t: () => {}\n\n\t\tif (!pkg) {\n\t\t\tawait this.commandService.execute('yarn', { args: ['install'] })\n\t\t\tdeleteLockFile()\n\t\t\treturn { totalInstalled: -1, totalSkipped: -1 }\n\t\t}\n\n\t\tdeleteLockFile()\n\n\t\tconst packages = Array.isArray(pkg) ? pkg : [pkg]\n\t\tconst toInstall = []\n\t\tconst labsModules: string[] = []\n\n\t\tlet totalInstalled = 0\n\t\tlet totalSkipped = 0\n\n\t\tfor (const thisPackage of packages) {\n\t\t\tconst isInstalled =\n\t\t\t\t!options?.shouldForceInstall && this.isInstalled(thisPackage)\n\t\t\tif (thisPackage.startsWith('@sprucelabs/') || !isInstalled) {\n\t\t\t\ttoInstall.push(this.stripLatest(thisPackage))\n\t\t\t\ttotalInstalled++\n\t\t\t} else {\n\t\t\t\ttotalSkipped++\n\t\t\t}\n\t\t}\n\n\t\tif (totalInstalled > 0) {\n\t\t\tconst { executable, args } = PkgService.buildCommandAndArgs(\n\t\t\t\ttoInstall,\n\t\t\t\toptions\n\t\t\t)\n\n\t\t\tawait this.commandService.execute(executable, {\n\t\t\t\targs,\n\t\t\t})\n\t\t} else if (\n\t\t\t!diskUtil.doesDirExist(pathUtil.join(this.cwd, 'node_modules'))\n\t\t) {\n\t\t\tawait this.commandService.execute('yarn', { args: ['install'] })\n\t\t}\n\n\t\tdeleteLockFile()\n\n\t\tthis._parsedPkg = undefined\n\n\t\treturn { totalInstalled: totalInstalled + labsModules.length, totalSkipped }\n\t}\n\n\tpublic static buildCommandAndArgs(\n\t\ttoInstall: string[],\n\t\toptions: AddOptions | undefined\n\t) {\n\t\tconst args: any[] = [\n\t\t\tisCi() && '--cache-folder',\n\t\t\tisCi() && diskUtil.createRandomTempDir(),\n\t\t\t'add',\n\t\t\t...toInstall,\n\t\t].filter((a) => !!a)\n\n\t\tif (options?.isDev) {\n\t\t\targs.push('-D')\n\t\t}\n\n\t\tconst executable = 'yarn'\n\t\treturn { executable, args }\n\t}\n\n\tpublic async uninstall(pkg: string[] | string) {\n\t\tconst packages = Array.isArray(pkg) ? pkg : [pkg]\n\t\tconst args: string[] = ['uninstall', ...packages]\n\t\tawait this.commandService.execute('npm', {\n\t\t\targs,\n\t\t})\n\n\t\tthis._parsedPkg = undefined\n\n\t\tawait this.install()\n\t}\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/ServiceFactory.ts"],"names":["ServiceFactory","cwd","type","AuthService","Auth","PkgService","Service","EnvService","VsCodeService","SchemaService","command","CommandService","LintService","RemoteService","TypeCheckerService","buildImportService","SettingsService","DependencyService","commandService","BuildService","EventSettingsService","Error","ImportService"],"mappings":";;;;;;;;;;;;;AAAA;;AAKA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;IAwBqBA,c;;;;;;;;;;;;;;;;;MACpB,UAAkCC,GAAlC,EAA+CC,IAA/C,EAAuE;AAAA;;AACtE,cAAQA,IAAR;AACC,aAAK,MAAL;AACC,iBAAOC,8BAAYC,IAAZ,CAAiBH,GAAjB,CAAP;;AACD,aAAK,KAAL;AACC,iBAAO,IAAII,sBAAJ,CACNJ,GADM,EAEN,KAAKK,OAAL,CAAaL,GAAb,EAAkB,SAAlB,CAFM,CAAP;;AAID,aAAK,KAAL;AACC,iBAAO,IAAIM,4BAAJ,CAAeN,GAAf,CAAP;;AACD,aAAK,QAAL;AACC,iBAAO,IAAIO,yBAAJ,CAAkBP,GAAlB,CAAP;;AACD,aAAK,QAAL;AACC,iBAAO,IAAIQ,yBAAJ,CAAkB;AACxBR,YAAAA,GAAG,EAAHA,GADwB;AAExBS,YAAAA,OAAO,EAAE,IAAIC,0BAAJ,CAAmBV,GAAnB;AAFe,WAAlB,CAAP;;AAID,aAAK,MAAL;AACC,iBAAO,IAAIW,uBAAJ,CAAgBX,GAAhB,EAAqB;AAAA,mBAC3B,KAAI,CAACK,OAAL,CAAaL,GAAb,EAAkB,SAAlB,CAD2B;AAAA,WAArB,CAAP;;AAGD,aAAK,SAAL;AAAgB;AACf,mBAAO,IAAIU,0BAAJ,CAAmBV,GAAnB,CAAP;AACA;;AACD,aAAK,QAAL;AACC,iBAAO,IAAIY,yBAAJ,CAAkB,IAAIN,4BAAJ,CAAeN,GAAf,CAAlB,CAAP;;AACD,aAAK,aAAL;AACC,iBAAO,IAAIa,8BAAJ,CACN,KAAKC,kBAAL,CAAwBd,GAAxB,CADM,CAAP;;AAGD,aAAK,UAAL;AACC,iBAAO,IAAIe,iCAAJ,CAAiCf,GAAjC,CAAP;;AACD,aAAK,YAAL;AACC,iBAAO,IAAIgB,6BAAJ,CACN,IAAID,iCAAJ,CAAiCf,GAAjC,CADM,CAAP;;AAGD,aAAK,QAAL;AACC,iBAAO,KAAKc,kBAAL,CAAwBd,GAAxB,CAAP;;AACD,aAAK,OAAL;AAAc;AACb,gBAAMiB,cAAc,GAAG,IAAIP,0BAAJ,CAAmBV,GAAnB,CAAvB;AACA,mBAAO,IAAIkB,wBAAJ,CACND,cADM,EAEN,IAAIN,uBAAJ,CAAgBX,GAAhB,EAAqB;AAAA,qBAAM,KAAI,CAACK,OAAL,CAAaL,GAAb,EAAkB,SAAlB,CAAN;AAAA,aAArB,CAFM,CAAP;AAIA;;AACD,aAAK,eAAL;AACC,iBAAO,IAAImB,gCAAJ,CACN,IAAIJ,iCAAJ,CAAoBf,GAApB,CADM,CAAP;;AAGD;AACC,gBAAM,IAAIoB,KAAJ,qBAAsBnB,IAAtB,kBAAN;AAlDF;AAoDA,K;;;WAED,4BAA2BD,GAA3B,EAAuD;AACtD,aAAO,IAAIqB,yBAAJ,CAAkB;AACxBrB,QAAAA,GAAG,EAAHA,GADwB;AAExBS,QAAAA,OAAO,EAAE,IAAIC,0BAAJ,CAAmBV,GAAnB;AAFe,OAAlB,CAAP;AAIA","sourcesContent":["import {\n\tSettingsService,\n\tEnvService,\n\tAuthService,\n} from '@sprucelabs/spruce-skill-utils'\nimport EventSettingsService from '../features/event/services/EventSettingsService'\nimport RemoteService from '../features/event/services/RemoteService'\nimport { FeatureCode } from '../features/features.types'\nimport SchemaService from '../features/schema/services/SchemaService'\nimport VsCodeService from '../features/vscode/services/VsCodeService'\nimport BuildService from './BuildService'\nimport CommandService from './CommandService'\nimport DependencyService from './DependencyService'\nimport ImportService from './ImportService'\nimport LintService from './LintService'\nimport PkgService from './PkgService'\nimport TypeCheckerService from './TypeCheckerService'\n\nexport interface ServiceMap {\n\tpkg: PkgService\n\tvsCode: VsCodeService\n\tschema: SchemaService\n\tlint: LintService\n\tcommand: CommandService\n\ttypeChecker: TypeCheckerService\n\timport: ImportService\n\tbuild: BuildService\n\tsettings: SettingsService\n\tenv: EnvService\n\tauth: AuthService\n\tremote: RemoteService\n\teventSettings: EventSettingsService\n\tdependency: DependencyService\n}\n\nexport type Service = keyof ServiceMap\n\nexport interface ServiceProvider {\n\tService<S extends Service>(type: S, cwd?: string): ServiceMap[S]\n}\nexport default class ServiceFactory {\n\tpublic Service<S extends Service>(cwd: string, type: S): ServiceMap[S] {\n\t\tswitch (type) {\n\t\t\tcase 'auth':\n\t\t\t\treturn AuthService.Auth(cwd) as ServiceMap[S]\n\t\t\tcase 'pkg':\n\t\t\t\treturn new PkgService(\n\t\t\t\t\tcwd,\n\t\t\t\t\tthis.Service(cwd, 'command')\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'env':\n\t\t\t\treturn new EnvService(cwd) as ServiceMap[S]\n\t\t\tcase 'vsCode':\n\t\t\t\treturn new VsCodeService(cwd) as ServiceMap[S]\n\t\t\tcase 'schema':\n\t\t\t\treturn new SchemaService({\n\t\t\t\t\tcwd,\n\t\t\t\t\tcommand: new CommandService(cwd),\n\t\t\t\t}) as ServiceMap[S]\n\t\t\tcase 'lint':\n\t\t\t\treturn new LintService(cwd, () =>\n\t\t\t\t\tthis.Service(cwd, 'command')\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'command': {\n\t\t\t\treturn new CommandService(cwd) as ServiceMap[S]\n\t\t\t}\n\t\t\tcase 'remote':\n\t\t\t\treturn new RemoteService(new EnvService(cwd)) as ServiceMap[S]\n\t\t\tcase 'typeChecker':\n\t\t\t\treturn new TypeCheckerService(\n\t\t\t\t\tthis.buildImportService(cwd)\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'settings':\n\t\t\t\treturn new SettingsService<FeatureCode>(cwd) as ServiceMap[S]\n\t\t\tcase 'dependency':\n\t\t\t\treturn new DependencyService(\n\t\t\t\t\tnew SettingsService<FeatureCode>(cwd)\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'import':\n\t\t\t\treturn this.buildImportService(cwd) as ServiceMap[S]\n\t\t\tcase 'build': {\n\t\t\t\tconst commandService = new CommandService(cwd)\n\t\t\t\treturn new BuildService(\n\t\t\t\t\tcommandService,\n\t\t\t\t\tnew LintService(cwd, () => this.Service(cwd, 'command'))\n\t\t\t\t) as ServiceMap[S]\n\t\t\t}\n\t\t\tcase 'eventSettings':\n\t\t\t\treturn new EventSettingsService(\n\t\t\t\t\tnew SettingsService(cwd)\n\t\t\t\t) as ServiceMap[S]\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Service \"${type}\" not found`)\n\t\t}\n\t}\n\n\tprivate buildImportService(cwd: string): ImportService {\n\t\treturn new ImportService({\n\t\t\tcwd,\n\t\t\tcommand: new CommandService(cwd),\n\t\t})\n\t}\n}\n"],"file":"ServiceFactory.js"}
1
+ {"version":3,"file":"ServiceFactory.js","names":["ServiceFactory","cwd","type","AuthService","Auth","PkgService","Service","EnvService","VsCodeService","SchemaService","command","CommandService","LintService","RemoteService","TypeCheckerService","buildImportService","SettingsService","DependencyService","commandService","BuildService","EventSettingsService","Error","ImportService"],"sources":["../../src/services/ServiceFactory.ts"],"sourcesContent":["import {\n\tSettingsService,\n\tEnvService,\n\tAuthService,\n} from '@sprucelabs/spruce-skill-utils'\nimport EventSettingsService from '../features/event/services/EventSettingsService'\nimport RemoteService from '../features/event/services/RemoteService'\nimport { FeatureCode } from '../features/features.types'\nimport SchemaService from '../features/schema/services/SchemaService'\nimport VsCodeService from '../features/vscode/services/VsCodeService'\nimport BuildService from './BuildService'\nimport CommandService from './CommandService'\nimport DependencyService from './DependencyService'\nimport ImportService from './ImportService'\nimport LintService from './LintService'\nimport PkgService from './PkgService'\nimport TypeCheckerService from './TypeCheckerService'\n\nexport interface ServiceMap {\n\tpkg: PkgService\n\tvsCode: VsCodeService\n\tschema: SchemaService\n\tlint: LintService\n\tcommand: CommandService\n\ttypeChecker: TypeCheckerService\n\timport: ImportService\n\tbuild: BuildService\n\tsettings: SettingsService\n\tenv: EnvService\n\tauth: AuthService\n\tremote: RemoteService\n\teventSettings: EventSettingsService\n\tdependency: DependencyService\n}\n\nexport type Service = keyof ServiceMap\n\nexport interface ServiceProvider {\n\tService<S extends Service>(type: S, cwd?: string): ServiceMap[S]\n}\nexport default class ServiceFactory {\n\tpublic Service<S extends Service>(cwd: string, type: S): ServiceMap[S] {\n\t\tswitch (type) {\n\t\t\tcase 'auth':\n\t\t\t\treturn AuthService.Auth(cwd) as ServiceMap[S]\n\t\t\tcase 'pkg':\n\t\t\t\treturn new PkgService(\n\t\t\t\t\tcwd,\n\t\t\t\t\tthis.Service(cwd, 'command')\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'env':\n\t\t\t\treturn new EnvService(cwd) as ServiceMap[S]\n\t\t\tcase 'vsCode':\n\t\t\t\treturn new VsCodeService(cwd) as ServiceMap[S]\n\t\t\tcase 'schema':\n\t\t\t\treturn new SchemaService({\n\t\t\t\t\tcwd,\n\t\t\t\t\tcommand: new CommandService(cwd),\n\t\t\t\t}) as ServiceMap[S]\n\t\t\tcase 'lint':\n\t\t\t\treturn new LintService(cwd, () =>\n\t\t\t\t\tthis.Service(cwd, 'command')\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'command': {\n\t\t\t\treturn new CommandService(cwd) as ServiceMap[S]\n\t\t\t}\n\t\t\tcase 'remote':\n\t\t\t\treturn new RemoteService(new EnvService(cwd)) as ServiceMap[S]\n\t\t\tcase 'typeChecker':\n\t\t\t\treturn new TypeCheckerService(\n\t\t\t\t\tthis.buildImportService(cwd)\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'settings':\n\t\t\t\treturn new SettingsService<FeatureCode>(cwd) as ServiceMap[S]\n\t\t\tcase 'dependency':\n\t\t\t\treturn new DependencyService(\n\t\t\t\t\tnew SettingsService<FeatureCode>(cwd)\n\t\t\t\t) as ServiceMap[S]\n\t\t\tcase 'import':\n\t\t\t\treturn this.buildImportService(cwd) as ServiceMap[S]\n\t\t\tcase 'build': {\n\t\t\t\tconst commandService = new CommandService(cwd)\n\t\t\t\treturn new BuildService(\n\t\t\t\t\tcommandService,\n\t\t\t\t\tnew LintService(cwd, () => this.Service(cwd, 'command'))\n\t\t\t\t) as ServiceMap[S]\n\t\t\t}\n\t\t\tcase 'eventSettings':\n\t\t\t\treturn new EventSettingsService(\n\t\t\t\t\tnew SettingsService(cwd)\n\t\t\t\t) as ServiceMap[S]\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Service \"${type}\" not found`)\n\t\t}\n\t}\n\n\tprivate buildImportService(cwd: string): ImportService {\n\t\treturn new ImportService({\n\t\t\tcwd,\n\t\t\tcommand: new CommandService(cwd),\n\t\t})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAKA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;IAwBqBA,c;;;;;;;;;;;;;;;;;MACpB,UAAkCC,GAAlC,EAA+CC,IAA/C,EAAuE;MAAA;;MACtE,QAAQA,IAAR;QACC,KAAK,MAAL;UACC,OAAOC,8BAAYC,IAAZ,CAAiBH,GAAjB,CAAP;;QACD,KAAK,KAAL;UACC,OAAO,IAAII,sBAAJ,CACNJ,GADM,EAEN,KAAKK,OAAL,CAAaL,GAAb,EAAkB,SAAlB,CAFM,CAAP;;QAID,KAAK,KAAL;UACC,OAAO,IAAIM,4BAAJ,CAAeN,GAAf,CAAP;;QACD,KAAK,QAAL;UACC,OAAO,IAAIO,yBAAJ,CAAkBP,GAAlB,CAAP;;QACD,KAAK,QAAL;UACC,OAAO,IAAIQ,yBAAJ,CAAkB;YACxBR,GAAG,EAAHA,GADwB;YAExBS,OAAO,EAAE,IAAIC,0BAAJ,CAAmBV,GAAnB;UAFe,CAAlB,CAAP;;QAID,KAAK,MAAL;UACC,OAAO,IAAIW,uBAAJ,CAAgBX,GAAhB,EAAqB;YAAA,OAC3B,KAAI,CAACK,OAAL,CAAaL,GAAb,EAAkB,SAAlB,CAD2B;UAAA,CAArB,CAAP;;QAGD,KAAK,SAAL;UAAgB;YACf,OAAO,IAAIU,0BAAJ,CAAmBV,GAAnB,CAAP;UACA;;QACD,KAAK,QAAL;UACC,OAAO,IAAIY,yBAAJ,CAAkB,IAAIN,4BAAJ,CAAeN,GAAf,CAAlB,CAAP;;QACD,KAAK,aAAL;UACC,OAAO,IAAIa,8BAAJ,CACN,KAAKC,kBAAL,CAAwBd,GAAxB,CADM,CAAP;;QAGD,KAAK,UAAL;UACC,OAAO,IAAIe,iCAAJ,CAAiCf,GAAjC,CAAP;;QACD,KAAK,YAAL;UACC,OAAO,IAAIgB,6BAAJ,CACN,IAAID,iCAAJ,CAAiCf,GAAjC,CADM,CAAP;;QAGD,KAAK,QAAL;UACC,OAAO,KAAKc,kBAAL,CAAwBd,GAAxB,CAAP;;QACD,KAAK,OAAL;UAAc;YACb,IAAMiB,cAAc,GAAG,IAAIP,0BAAJ,CAAmBV,GAAnB,CAAvB;YACA,OAAO,IAAIkB,wBAAJ,CACND,cADM,EAEN,IAAIN,uBAAJ,CAAgBX,GAAhB,EAAqB;cAAA,OAAM,KAAI,CAACK,OAAL,CAAaL,GAAb,EAAkB,SAAlB,CAAN;YAAA,CAArB,CAFM,CAAP;UAIA;;QACD,KAAK,eAAL;UACC,OAAO,IAAImB,gCAAJ,CACN,IAAIJ,iCAAJ,CAAoBf,GAApB,CADM,CAAP;;QAGD;UACC,MAAM,IAAIoB,KAAJ,qBAAsBnB,IAAtB,kBAAN;MAlDF;IAoDA,C;;;WAED,4BAA2BD,GAA3B,EAAuD;MACtD,OAAO,IAAIqB,yBAAJ,CAAkB;QACxBrB,GAAG,EAAHA,GADwB;QAExBS,OAAO,EAAE,IAAIC,0BAAJ,CAAmBV,GAAnB;MAFe,CAAlB,CAAP;IAIA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/TypeCheckerService.ts"],"names":["TypeCheckerService","importer","tsFile","importAll"],"mappings":";;;;;;;;;;;;;;;;;;;IAEqBA,kB,8CAEpB,4BAAmBC,QAAnB,EAA4C;AAAA;;AAAA;AAAA;AAAA;AAAA,6FAG7B,iBAAOC,MAAP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBACR,KAAI,CAACD,QAAL,CAAcE,SAAd,CAAwBD,MAAxB,CADQ;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAH6B;;AAAA;AAAA;AAAA;AAAA;AAC3C,OAAKD,QAAL,GAAgBA,QAAhB;AACA,C","sourcesContent":["import ImportService from './ImportService'\n\nexport default class TypeCheckerService {\n\tprivate importer: ImportService\n\tpublic constructor(importer: ImportService) {\n\t\tthis.importer = importer\n\t}\n\tpublic check = async (tsFile: string) => {\n\t\tawait this.importer.importAll(tsFile)\n\t}\n}\n"],"file":"TypeCheckerService.js"}
1
+ {"version":3,"file":"TypeCheckerService.js","names":["TypeCheckerService","importer","tsFile","importAll"],"sources":["../../src/services/TypeCheckerService.ts"],"sourcesContent":["import ImportService from './ImportService'\n\nexport default class TypeCheckerService {\n\tprivate importer: ImportService\n\tpublic constructor(importer: ImportService) {\n\t\tthis.importer = importer\n\t}\n\tpublic check = async (tsFile: string) => {\n\t\tawait this.importer.importAll(tsFile)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;IAEqBA,kB,8CAEpB,4BAAmBC,QAAnB,EAA4C;EAAA;;EAAA;EAAA;EAAA;IAAA,yFAG7B,iBAAOC,MAAP;MAAA;QAAA;UAAA;YAAA;cAAA;cAAA,OACR,KAAI,CAACD,QAAL,CAAcE,SAAd,CAAwBD,MAAxB,CADQ;;YAAA;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA,CAH6B;;IAAA;MAAA;IAAA;EAAA;EAC3C,KAAKD,QAAL,GAAgBA,QAAhB;AACA,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/stores/AbstractLocalStore.ts"],"names":["AbstractLocalStore","options","Service","key","value","writeValues","values","settings","readSettings","set","readValues","get","AbstractStore"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;IAK8BA,kB;;;;;AAG7B,8BAAmBC,OAAnB,EAA0C;AAAA;AAAA,6BACnCA,OADmC;AAEzC;;;;SAED,eAAuB;AACtB,aAAO,KAAKC,OAAL,CAAa,UAAb,CAAP;AACA;;;WAED,oBAA+CC,GAA/C,EAAuDC,KAAvD,EAA2E;AAC1E,WAAKC,WAAL,sCAAoBF,GAApB,EAA0BC,KAA1B;AACA;AACA;;;WAED,qBAAqDE,MAArD,EAAgE;AAC/D,UAAMC,QAAQ,mCAAQ,KAAKC,YAAL,EAAR,GAAgCF,MAAhC,CAAd;;AACA,WAAKC,QAAL,CAAcE,GAAd,CAAkB,QAAlB,EAA4BF,QAA5B;AAEA,aAAO,IAAP;AACA;;;WAED,mBAA8CJ,GAA9C,EAAsD;AACrD,UAAMI,QAAQ,GAAG,KAAKG,UAAL,EAAjB;AACA,aAAOH,QAAQ,CAACJ,GAAD,CAAf;AACA;;;WAED,sBAAuD;AACtD,UAAMG,MAAM,GAAG,KAAKE,YAAL,EAAf;AACA,aAAOF,MAAP;AACA;;;WAED,wBAAuB;AAAA;;AACtB,mCAAO,KAAKC,QAAL,CAAcI,GAAd,CAAkB,QAAlB,CAAP,mEAAsC,EAAtC;AACA;;;EAjCQC,0B","sourcesContent":["import AbstractStore from './AbstractStore'\nimport { StoreOptions } from './AbstractStore'\n\nexport interface LocalStoreSettings {}\n\nexport default abstract class AbstractLocalStore<\n\tSettings extends LocalStoreSettings\n> extends AbstractStore {\n\tpublic constructor(options: StoreOptions) {\n\t\tsuper(options)\n\t}\n\n\tprivate get settings() {\n\t\treturn this.Service('settings')\n\t}\n\n\tprotected writeValue<F extends keyof Settings>(key: F, value: Settings[F]) {\n\t\tthis.writeValues({ [key]: value })\n\t\treturn\n\t}\n\n\tprotected writeValues<T extends Record<string, any>>(values: T) {\n\t\tconst settings = { ...this.readSettings(), ...values }\n\t\tthis.settings.set('stores', settings)\n\n\t\treturn this\n\t}\n\n\tprotected readValue<F extends keyof Settings>(key: F) {\n\t\tconst settings = this.readValues()\n\t\treturn settings[key]\n\t}\n\n\tprotected readValues<T extends Settings>(): Partial<T> {\n\t\tconst values = this.readSettings()\n\t\treturn values\n\t}\n\n\tprivate readSettings() {\n\t\treturn this.settings.get('stores') ?? {}\n\t}\n}\n"],"file":"AbstractLocalStore.js"}
1
+ {"version":3,"file":"AbstractLocalStore.js","names":["AbstractLocalStore","options","Service","key","value","writeValues","values","settings","readSettings","set","readValues","get","AbstractStore"],"sources":["../../src/stores/AbstractLocalStore.ts"],"sourcesContent":["import AbstractStore from './AbstractStore'\nimport { StoreOptions } from './AbstractStore'\n\nexport interface LocalStoreSettings {}\n\nexport default abstract class AbstractLocalStore<\n\tSettings extends LocalStoreSettings\n> extends AbstractStore {\n\tpublic constructor(options: StoreOptions) {\n\t\tsuper(options)\n\t}\n\n\tprivate get settings() {\n\t\treturn this.Service('settings')\n\t}\n\n\tprotected writeValue<F extends keyof Settings>(key: F, value: Settings[F]) {\n\t\tthis.writeValues({ [key]: value })\n\t\treturn\n\t}\n\n\tprotected writeValues<T extends Record<string, any>>(values: T) {\n\t\tconst settings = { ...this.readSettings(), ...values }\n\t\tthis.settings.set('stores', settings)\n\n\t\treturn this\n\t}\n\n\tprotected readValue<F extends keyof Settings>(key: F) {\n\t\tconst settings = this.readValues()\n\t\treturn settings[key]\n\t}\n\n\tprotected readValues<T extends Settings>(): Partial<T> {\n\t\tconst values = this.readSettings()\n\t\treturn values\n\t}\n\n\tprivate readSettings() {\n\t\treturn this.settings.get('stores') ?? {}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;IAK8BA,kB;;;;;EAG7B,4BAAmBC,OAAnB,EAA0C;IAAA;IAAA,yBACnCA,OADmC;EAEzC;;;;SAED,eAAuB;MACtB,OAAO,KAAKC,OAAL,CAAa,UAAb,CAAP;IACA;;;WAED,oBAA+CC,GAA/C,EAAuDC,KAAvD,EAA2E;MAC1E,KAAKC,WAAL,sCAAoBF,GAApB,EAA0BC,KAA1B;MACA;IACA;;;WAED,qBAAqDE,MAArD,EAAgE;MAC/D,IAAMC,QAAQ,mCAAQ,KAAKC,YAAL,EAAR,GAAgCF,MAAhC,CAAd;;MACA,KAAKC,QAAL,CAAcE,GAAd,CAAkB,QAAlB,EAA4BF,QAA5B;MAEA,OAAO,IAAP;IACA;;;WAED,mBAA8CJ,GAA9C,EAAsD;MACrD,IAAMI,QAAQ,GAAG,KAAKG,UAAL,EAAjB;MACA,OAAOH,QAAQ,CAACJ,GAAD,CAAf;IACA;;;WAED,sBAAuD;MACtD,IAAMG,MAAM,GAAG,KAAKE,YAAL,EAAf;MACA,OAAOF,MAAP;IACA;;;WAED,wBAAuB;MAAA;;MACtB,6BAAO,KAAKC,QAAL,CAAcI,GAAd,CAAkB,QAAlB,CAAP,mEAAsC,EAAtC;IACA;;;EAjCQC,0B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/stores/AbstractStore.ts"],"names":["AbstractStore","options","cwd","serviceFactory","homeDir","apiClientFactory","emitter","type","Service"],"mappings":";;;;;;;;;;;;;;;;;;;IAoB8BA,a;AAU7B,yBAAmBC,OAAnB,EAA0C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACzC,SAAKC,GAAL,GAAWD,OAAO,CAACC,GAAnB;AACA,SAAKC,cAAL,GAAsBF,OAAO,CAACE,cAA9B;AACA,SAAKC,OAAL,GAAeH,OAAO,CAACG,OAAvB;AACA,SAAKC,gBAAL,GAAwBJ,OAAO,CAACI,gBAAhC;AACA,SAAKC,OAAL,GAAeL,OAAO,CAACK,OAAvB;AACA;;;;;;;;;;;;;;MAED,UAAkCC,IAAlC,EAA2CL,GAA3C,EAAwE;AACvE,aAAO,KAAKC,cAAL,CAAoBK,OAApB,CAA4BN,GAA5B,aAA4BA,GAA5B,cAA4BA,GAA5B,GAAmC,KAAKA,GAAxC,EAA6CK,IAA7C,CAAP;AACA,K;;;;wGAED,iBACCN,OADD;AAAA;AAAA;AAAA;AAAA;AAAA,iDAGQ,KAAKI,gBAAL,CAAsBJ,OAAtB,CAHR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O","sourcesContent":["import { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory, {\n\tServiceProvider,\n\tService,\n\tServiceMap,\n} from '../services/ServiceFactory'\nimport {\n\tApiClientFactory,\n\tApiClient,\n\tApiClientFactoryOptions,\n} from '../types/apiClient.types'\n\nexport interface StoreOptions {\n\tserviceFactory: ServiceFactory\n\tcwd: string\n\thomeDir: string\n\tapiClientFactory: ApiClientFactory\n\temitter: GlobalEmitter\n}\n\nexport default abstract class AbstractStore implements ServiceProvider {\n\tprotected cwd: string\n\tprotected homeDir: string\n\tprotected apiClientFactory: ApiClientFactory\n\tprotected emitter: GlobalEmitter\n\n\tpublic abstract name: string\n\n\tprivate serviceFactory: ServiceFactory\n\n\tpublic constructor(options: StoreOptions) {\n\t\tthis.cwd = options.cwd\n\t\tthis.serviceFactory = options.serviceFactory\n\t\tthis.homeDir = options.homeDir\n\t\tthis.apiClientFactory = options.apiClientFactory\n\t\tthis.emitter = options.emitter\n\t}\n\n\tpublic Service<S extends Service>(type: S, cwd?: string): ServiceMap[S] {\n\t\treturn this.serviceFactory.Service(cwd ?? this.cwd, type)\n\t}\n\n\tprotected async connectToApi(\n\t\toptions?: ApiClientFactoryOptions\n\t): Promise<ApiClient> {\n\t\treturn this.apiClientFactory(options)\n\t}\n}\n"],"file":"AbstractStore.js"}
1
+ {"version":3,"file":"AbstractStore.js","names":["AbstractStore","options","cwd","serviceFactory","homeDir","apiClientFactory","emitter","type","Service"],"sources":["../../src/stores/AbstractStore.ts"],"sourcesContent":["import { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory, {\n\tServiceProvider,\n\tService,\n\tServiceMap,\n} from '../services/ServiceFactory'\nimport {\n\tApiClientFactory,\n\tApiClient,\n\tApiClientFactoryOptions,\n} from '../types/apiClient.types'\n\nexport interface StoreOptions {\n\tserviceFactory: ServiceFactory\n\tcwd: string\n\thomeDir: string\n\tapiClientFactory: ApiClientFactory\n\temitter: GlobalEmitter\n}\n\nexport default abstract class AbstractStore implements ServiceProvider {\n\tprotected cwd: string\n\tprotected homeDir: string\n\tprotected apiClientFactory: ApiClientFactory\n\tprotected emitter: GlobalEmitter\n\n\tpublic abstract name: string\n\n\tprivate serviceFactory: ServiceFactory\n\n\tpublic constructor(options: StoreOptions) {\n\t\tthis.cwd = options.cwd\n\t\tthis.serviceFactory = options.serviceFactory\n\t\tthis.homeDir = options.homeDir\n\t\tthis.apiClientFactory = options.apiClientFactory\n\t\tthis.emitter = options.emitter\n\t}\n\n\tpublic Service<S extends Service>(type: S, cwd?: string): ServiceMap[S] {\n\t\treturn this.serviceFactory.Service(cwd ?? this.cwd, type)\n\t}\n\n\tprotected async connectToApi(\n\t\toptions?: ApiClientFactoryOptions\n\t): Promise<ApiClient> {\n\t\treturn this.apiClientFactory(options)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;IAoB8BA,a;EAU7B,uBAAmBC,OAAnB,EAA0C;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IACzC,KAAKC,GAAL,GAAWD,OAAO,CAACC,GAAnB;IACA,KAAKC,cAAL,GAAsBF,OAAO,CAACE,cAA9B;IACA,KAAKC,OAAL,GAAeH,OAAO,CAACG,OAAvB;IACA,KAAKC,gBAAL,GAAwBJ,OAAO,CAACI,gBAAhC;IACA,KAAKC,OAAL,GAAeL,OAAO,CAACK,OAAvB;EACA;;;;;;;;;;;;;;MAED,UAAkCC,IAAlC,EAA2CL,GAA3C,EAAwE;MACvE,OAAO,KAAKC,cAAL,CAAoBK,OAApB,CAA4BN,GAA5B,aAA4BA,GAA5B,cAA4BA,GAA5B,GAAmC,KAAKA,GAAxC,EAA6CK,IAA7C,CAAP;IACA,C;;;;wGAED,iBACCN,OADD;QAAA;UAAA;YAAA;cAAA;gBAAA,iCAGQ,KAAKI,gBAAL,CAAsBJ,OAAtB,CAHR;;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/stores/StoreFactory.ts"],"names":["storeMap","onboarding","OnboardingStore","schema","SchemaStore","event","EventStore","skill","SkillStore","organization","OrganizationStore","conversation","ConversationStore","store","StoreStore","view","ViewStore","listener","ListenerStore","StoreFactory","options","cwd","serviceFactory","homeDir","apiClientFactory","emitter","code","storeOptions","Error"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAoBA,IAAMA,QAAQ,GAAG;AAChBC,EAAAA,UAAU,EAAEC,2BADI;AAEhBC,EAAAA,MAAM,EAAEC,uBAFQ;AAGhBC,EAAAA,KAAK,EAAEC,sBAHS;AAIhBC,EAAAA,KAAK,EAAEC,sBAJS;AAKhBC,EAAAA,YAAY,EAAEC,6BALE;AAMhBC,EAAAA,YAAY,EAAEC,6BANE;AAOhBC,EAAAA,KAAK,EAAEC,sBAPS;AAQhBC,EAAAA,IAAI,EAAEC,qBARU;AAShBC,EAAAA,QAAQ,EAAEC;AATM,CAAjB;;IAyBqBC,Y;AAOpB,wBAAmBC,OAAnB,EAAiD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAChD,QAAQC,GAAR,GAAoED,OAApE,CAAQC,GAAR;AAAA,QAAaC,cAAb,GAAoEF,OAApE,CAAaE,cAAb;AAAA,QAA6BC,OAA7B,GAAoEH,OAApE,CAA6BG,OAA7B;AAAA,QAAsCC,gBAAtC,GAAoEJ,OAApE,CAAsCI,gBAAtC;AAAA,QAAwDC,OAAxD,GAAoEL,OAApE,CAAwDK,OAAxD;AAEA,SAAKJ,GAAL,GAAWA,GAAX;AACA,SAAKC,cAAL,GAAsBA,cAAtB;AACA,SAAKC,OAAL,GAAeA,OAAf;AACA,SAAKC,gBAAL,GAAwBA,gBAAxB;AACA,SAAKC,OAAL,GAAeA,OAAf;AACA;;;;WAED,eACCC,IADD,EAECN,OAFD,EAGe;AAAA;;AACd,UAAMO,YAA0B,GAAG;AAClCN,QAAAA,GAAG,kBAAED,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEC,GAAX,uDAAkB,KAAKA,GADQ;AAElCC,QAAAA,cAAc,EAAE,KAAKA,cAFa;AAGlCC,QAAAA,OAAO,EAAE,KAAKA,OAHoB;AAIlCC,QAAAA,gBAAgB,2BAAEJ,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEI,gBAAX,yEAA+B,KAAKA,gBAJlB;AAKlCC,QAAAA,OAAO,EAAE,KAAKA;AALoB,OAAnC;;AAQA,UAAI,CAACzB,QAAQ,CAAC0B,IAAD,CAAb,EAAqB;AACpB,cAAM,IAAIE,KAAJ,2CAA6CF,IAA7C,QAAN;AACA;;AAED,UAAMb,KAAK,GAAG,IAAIb,QAAQ,CAAC0B,IAAD,CAAZ,CAAmBC,YAAnB,CAAd;AAEA,aAAOd,KAAP;AACA","sourcesContent":["import ConversationStore from '../features/conversation/stores/ConversationStore'\nimport EventStore from '../features/event/stores/EventStore'\nimport ListenerStore from '../features/event/stores/ListenerStore'\nimport OnboardingStore from '../features/onboard/stores/OnboardingStore'\nimport OrganizationStore from '../features/organization/stores/OrganizationStore'\nimport SchemaStore from '../features/schema/stores/SchemaStore'\nimport SkillStore from '../features/skill/stores/SkillStore'\nimport StoreStore from '../features/store/stores/StoreStore'\nimport ViewStore from '../features/view/stores/ViewStore'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory from '../services/ServiceFactory'\nimport { ApiClientFactory } from '../types/apiClient.types'\nimport { StoreOptions } from './AbstractStore'\n\nexport interface StoreMap {\n\tonboarding: OnboardingStore\n\tschema: SchemaStore\n\tevent: EventStore\n\tskill: SkillStore\n\torganization: OrganizationStore\n\tconversation: ConversationStore\n\tstore: StoreStore\n\tview: ViewStore\n\tlistener: ListenerStore\n}\n\nexport type StoreCode = keyof StoreMap\n\nconst storeMap = {\n\tonboarding: OnboardingStore,\n\tschema: SchemaStore,\n\tevent: EventStore,\n\tskill: SkillStore,\n\torganization: OrganizationStore,\n\tconversation: ConversationStore,\n\tstore: StoreStore,\n\tview: ViewStore,\n\tlistener: ListenerStore,\n}\n\nexport interface StoreFactoryMethodOptions {\n\tcwd?: string\n\tapiClientFactory?: ApiClientFactory\n}\n\nexport interface StoreFactoryOptions {\n\tcwd: string\n\tserviceFactory: ServiceFactory\n\thomeDir: string\n\tapiClientFactory: ApiClientFactory\n\temitter: GlobalEmitter\n}\n\nexport default class StoreFactory {\n\tprivate serviceFactory: ServiceFactory\n\tprivate cwd: string\n\tprivate homeDir: string\n\tprivate apiClientFactory: ApiClientFactory\n\tprivate emitter: GlobalEmitter\n\n\tpublic constructor(options: StoreFactoryOptions) {\n\t\tconst { cwd, serviceFactory, homeDir, apiClientFactory, emitter } = options\n\n\t\tthis.cwd = cwd\n\t\tthis.serviceFactory = serviceFactory\n\t\tthis.homeDir = homeDir\n\t\tthis.apiClientFactory = apiClientFactory\n\t\tthis.emitter = emitter\n\t}\n\n\tpublic Store<C extends StoreCode>(\n\t\tcode: C,\n\t\toptions?: StoreFactoryMethodOptions\n\t): StoreMap[C] {\n\t\tconst storeOptions: StoreOptions = {\n\t\t\tcwd: options?.cwd ?? this.cwd,\n\t\t\tserviceFactory: this.serviceFactory,\n\t\t\thomeDir: this.homeDir,\n\t\t\tapiClientFactory: options?.apiClientFactory ?? this.apiClientFactory,\n\t\t\temitter: this.emitter,\n\t\t}\n\n\t\tif (!storeMap[code]) {\n\t\t\tthrow new Error(`Could not find store with code '${code}'.`)\n\t\t}\n\n\t\tconst store = new storeMap[code](storeOptions)\n\n\t\treturn store as StoreMap[C]\n\t}\n}\n"],"file":"StoreFactory.js"}
1
+ {"version":3,"file":"StoreFactory.js","names":["storeMap","onboarding","OnboardingStore","schema","SchemaStore","event","EventStore","skill","SkillStore","organization","OrganizationStore","conversation","ConversationStore","store","StoreStore","view","ViewStore","listener","ListenerStore","StoreFactory","options","cwd","serviceFactory","homeDir","apiClientFactory","emitter","code","storeOptions","Error"],"sources":["../../src/stores/StoreFactory.ts"],"sourcesContent":["import ConversationStore from '../features/conversation/stores/ConversationStore'\nimport EventStore from '../features/event/stores/EventStore'\nimport ListenerStore from '../features/event/stores/ListenerStore'\nimport OnboardingStore from '../features/onboard/stores/OnboardingStore'\nimport OrganizationStore from '../features/organization/stores/OrganizationStore'\nimport SchemaStore from '../features/schema/stores/SchemaStore'\nimport SkillStore from '../features/skill/stores/SkillStore'\nimport StoreStore from '../features/store/stores/StoreStore'\nimport ViewStore from '../features/view/stores/ViewStore'\nimport { GlobalEmitter } from '../GlobalEmitter'\nimport ServiceFactory from '../services/ServiceFactory'\nimport { ApiClientFactory } from '../types/apiClient.types'\nimport { StoreOptions } from './AbstractStore'\n\nexport interface StoreMap {\n\tonboarding: OnboardingStore\n\tschema: SchemaStore\n\tevent: EventStore\n\tskill: SkillStore\n\torganization: OrganizationStore\n\tconversation: ConversationStore\n\tstore: StoreStore\n\tview: ViewStore\n\tlistener: ListenerStore\n}\n\nexport type StoreCode = keyof StoreMap\n\nconst storeMap = {\n\tonboarding: OnboardingStore,\n\tschema: SchemaStore,\n\tevent: EventStore,\n\tskill: SkillStore,\n\torganization: OrganizationStore,\n\tconversation: ConversationStore,\n\tstore: StoreStore,\n\tview: ViewStore,\n\tlistener: ListenerStore,\n}\n\nexport interface StoreFactoryMethodOptions {\n\tcwd?: string\n\tapiClientFactory?: ApiClientFactory\n}\n\nexport interface StoreFactoryOptions {\n\tcwd: string\n\tserviceFactory: ServiceFactory\n\thomeDir: string\n\tapiClientFactory: ApiClientFactory\n\temitter: GlobalEmitter\n}\n\nexport default class StoreFactory {\n\tprivate serviceFactory: ServiceFactory\n\tprivate cwd: string\n\tprivate homeDir: string\n\tprivate apiClientFactory: ApiClientFactory\n\tprivate emitter: GlobalEmitter\n\n\tpublic constructor(options: StoreFactoryOptions) {\n\t\tconst { cwd, serviceFactory, homeDir, apiClientFactory, emitter } = options\n\n\t\tthis.cwd = cwd\n\t\tthis.serviceFactory = serviceFactory\n\t\tthis.homeDir = homeDir\n\t\tthis.apiClientFactory = apiClientFactory\n\t\tthis.emitter = emitter\n\t}\n\n\tpublic Store<C extends StoreCode>(\n\t\tcode: C,\n\t\toptions?: StoreFactoryMethodOptions\n\t): StoreMap[C] {\n\t\tconst storeOptions: StoreOptions = {\n\t\t\tcwd: options?.cwd ?? this.cwd,\n\t\t\tserviceFactory: this.serviceFactory,\n\t\t\thomeDir: this.homeDir,\n\t\t\tapiClientFactory: options?.apiClientFactory ?? this.apiClientFactory,\n\t\t\temitter: this.emitter,\n\t\t}\n\n\t\tif (!storeMap[code]) {\n\t\t\tthrow new Error(`Could not find store with code '${code}'.`)\n\t\t}\n\n\t\tconst store = new storeMap[code](storeOptions)\n\n\t\treturn store as StoreMap[C]\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAoBA,IAAMA,QAAQ,GAAG;EAChBC,UAAU,EAAEC,2BADI;EAEhBC,MAAM,EAAEC,uBAFQ;EAGhBC,KAAK,EAAEC,sBAHS;EAIhBC,KAAK,EAAEC,sBAJS;EAKhBC,YAAY,EAAEC,6BALE;EAMhBC,YAAY,EAAEC,6BANE;EAOhBC,KAAK,EAAEC,sBAPS;EAQhBC,IAAI,EAAEC,qBARU;EAShBC,QAAQ,EAAEC;AATM,CAAjB;;IAyBqBC,Y;EAOpB,sBAAmBC,OAAnB,EAAiD;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAChD,IAAQC,GAAR,GAAoED,OAApE,CAAQC,GAAR;IAAA,IAAaC,cAAb,GAAoEF,OAApE,CAAaE,cAAb;IAAA,IAA6BC,OAA7B,GAAoEH,OAApE,CAA6BG,OAA7B;IAAA,IAAsCC,gBAAtC,GAAoEJ,OAApE,CAAsCI,gBAAtC;IAAA,IAAwDC,OAAxD,GAAoEL,OAApE,CAAwDK,OAAxD;IAEA,KAAKJ,GAAL,GAAWA,GAAX;IACA,KAAKC,cAAL,GAAsBA,cAAtB;IACA,KAAKC,OAAL,GAAeA,OAAf;IACA,KAAKC,gBAAL,GAAwBA,gBAAxB;IACA,KAAKC,OAAL,GAAeA,OAAf;EACA;;;;WAED,eACCC,IADD,EAECN,OAFD,EAGe;MAAA;;MACd,IAAMO,YAA0B,GAAG;QAClCN,GAAG,kBAAED,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEC,GAAX,uDAAkB,KAAKA,GADQ;QAElCC,cAAc,EAAE,KAAKA,cAFa;QAGlCC,OAAO,EAAE,KAAKA,OAHoB;QAIlCC,gBAAgB,2BAAEJ,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEI,gBAAX,yEAA+B,KAAKA,gBAJlB;QAKlCC,OAAO,EAAE,KAAKA;MALoB,CAAnC;;MAQA,IAAI,CAACzB,QAAQ,CAAC0B,IAAD,CAAb,EAAqB;QACpB,MAAM,IAAIE,KAAJ,2CAA6CF,IAA7C,QAAN;MACA;;MAED,IAAMb,KAAK,GAAG,IAAIb,QAAQ,CAAC0B,IAAD,CAAZ,CAAmBC,YAAnB,CAAd;MAEA,OAAOd,KAAP;IACA"}